@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');

:root{--ink:#102a2d;--ink-soft:#466065;--cream:#f6f3ec;--paper:#fffdf8;--line:#d7d6cd;--copper:#b67455;--mint:#d9e6df;--teal:#28524e;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--wrap:1280px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
::selection{background:var(--copper);color:white}
.wrap{width:min(calc(100% - 72px),var(--wrap));margin-inline:auto}
.narrow{max-width:760px}
.skip-link{position:absolute;top:-100px;left:20px;z-index:200;background:white;color:var(--ink);padding:12px 16px}
.skip-link:focus{top:14px}
:focus-visible{outline:3px solid var(--copper);outline-offset:4px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(246,243,236,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(16,42,45,.09)}
.header-inner{min-height:92px;display:flex;align-items:center;gap:34px}
.brand{display:flex;align-items:center;gap:13px;min-width:265px}
.brand-mark{width:44px;height:44px;border:1.5px solid var(--ink);position:relative;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:25px;letter-spacing:-.13em;padding-right:4px;transform:rotate(-2deg)}
.brand-mark:after{content:'';position:absolute;inset:4px;border:1px solid rgba(16,42,45,.25)}
.brand-mark span:last-child{font-style:italic;margin-left:-3px;margin-top:6px}
.brand-name{font-weight:700;font-size:13px;line-height:1.08;letter-spacing:.01em;text-transform:uppercase}
.brand-llc{font-size:10px;font-weight:500}
.desktop-nav{display:flex;align-items:center;gap:27px;margin-left:auto}
.desktop-nav a{font-size:13px;font-weight:600;white-space:nowrap;position:relative;padding:14px 0}
.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:7px;height:1px;background:var(--copper);transition:right .25s}
.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}
.header-actions{display:flex;align-items:center;margin-left:23px}
.header-contact{display:flex;align-items:center;gap:12px;border:1px solid var(--ink);padding:13px 17px;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;white-space:nowrap;transition:background .25s,color .25s}
.header-contact svg{width:17px;height:17px}
.header-contact:hover{background:var(--ink);color:white}
.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--ink);background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span{height:1.5px;width:19px;background:var(--ink);transition:transform .25s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.mobile-nav{padding:0 36px 24px;background:var(--cream);border-top:1px solid var(--line)}
.mobile-nav:not([hidden]){animation:nav-reveal .24s ease-out both}
.mobile-nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-size:19px;font-family:var(--serif)}
@keyframes nav-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-weight:700;font-size:11px;line-height:1.4;margin:0 0 30px;color:var(--copper)}
.eyebrow--light{color:#d6a58a}
h1,h2,h3,p{margin-top:0}
h1,h2{font-weight:400;letter-spacing:-.035em}
h1 em,h2 em,.section-title em,.statement-inner em{font-family:var(--serif);font-weight:400}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:0 19px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;transition:transform .25s,background .25s,color .25s,border-color .25s}
.button:hover{transform:translateY(-3px)}
.button:disabled{opacity:.7;cursor:wait;transform:none}
.button svg{width:18px;height:18px}
.button--dark{color:white;background:var(--ink);border:1px solid var(--ink)}
.button--dark:hover{background:var(--teal);border-color:var(--teal)}
.button--outline{border:1px solid var(--ink);color:var(--ink);background:transparent}
.button--outline:hover{background:var(--ink);color:white}
.button--light{background:var(--cream);color:var(--ink);border:1px solid var(--cream)}
.button--light:hover{background:white}
.text-link{display:inline-flex;gap:12px;align-items:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--copper);padding-bottom:9px;transition:gap .25s}
.text-link:hover{gap:18px}
.text-link svg{width:18px;height:18px}
.hero{min-height:720px;display:grid;grid-template-columns:51% 49%;background:var(--paper)}
.hero-copy{display:flex;justify-content:flex-end;padding:93px 7vw 26px max(36px,calc((100vw - var(--wrap))/2));position:relative}
.hero-copy-inner{max-width:660px;display:flex;flex-direction:column;width:100%}
.hero h1{font-size:clamp(66px,6.25vw,115px);line-height:.96;margin-bottom:35px;letter-spacing:-.058em}
.hero h1 em{display:inline-block;color:var(--copper);font-size:1.03em;line-height:.84}
.hero-lead{max-width:490px;color:var(--ink-soft);font-size:17px;line-height:1.65;margin-bottom:36px}
.hero-buttons{display:flex;gap:11px;flex-wrap:wrap}
.hero-bottom{margin-top:auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:19px;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-soft)}
.hero-visual{position:relative;overflow:hidden;background:#184144;min-height:660px}
.hero-visual:before{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(10,32,34,.14),transparent 44%,rgba(10,32,34,.25));pointer-events:none}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-visual-caption{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;display:flex;justify-content:space-between;gap:15px;color:white;font-size:10px;letter-spacing:.19em;font-weight:700}
.section{padding:125px 0}
.section-title{font-size:clamp(50px,5vw,78px);line-height:1.05;margin:0 0 28px;max-width:850px}
.section-title em{color:var(--copper)}
.large-copy{font-size:19px;color:var(--ink-soft);line-height:1.7;max-width:760px}
.intro-section{background:var(--cream)}
.intro-grid{display:grid;grid-template-columns:28% 72%;align-items:start}
.intro-grid .eyebrow{padding-top:15px}
.intro-grid .text-link{margin-top:17px}
.projects-section{background:#e7ebe5}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}
.section-heading .eyebrow{margin-bottom:20px}
.section-heading .section-title{margin-bottom:0}
.section-heading .text-link{margin-bottom:12px;white-space:nowrap}
.projects-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
.project-card{background:var(--paper);min-width:0}
.project-art{position:relative;overflow:hidden;height:340px;background:var(--teal);isolation:isolate}
.project-card--large .project-art{height:440px}
.project-art--front{background:linear-gradient(130deg,#163f43,#417269 48%,#a6b7aa)}
.project-art--randolph{background:linear-gradient(120deg,#b8785d,#c79e79 52%,#e6c7a2)}
.project-art--portfolio{background:linear-gradient(130deg,#334d48,#739282 58%,#9cad9b)}
.project-number{position:absolute;z-index:2;top:20px;left:23px;color:white;font-family:var(--serif);font-size:38px;line-height:1}
.project-art-label{position:absolute;z-index:2;bottom:22px;left:23px;color:white;font-size:10px;letter-spacing:.19em;text-transform:uppercase;font-weight:700}
.project-art--photo{background:#234743}
.project-art--photo:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,31,33,.28),transparent 34%,transparent 55%,rgba(7,31,33,.58));pointer-events:none}
.project-art--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.project-art--front img{object-position:50% 45%}
.project-art--randolph img{object-position:48% 50%}
.project-art--portfolio img{object-position:50% 58%}
.project-info{padding:31px 32px 38px}
.project-meta{display:flex;justify-content:space-between;gap:14px;color:var(--copper);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-bottom:22px}
.project-meta span:last-child{text-align:right;color:var(--ink-soft)}
.project-info h3{font-family:var(--serif);font-weight:400;font-size:41px;line-height:1.05;margin-bottom:6px}
.project-address{font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--ink-soft);margin-bottom:16px}
.project-info p:not(.project-address){max-width:520px;color:var(--ink-soft);font-size:14px;line-height:1.7;margin-bottom:25px}
.statement-section{background:var(--ink);color:white;padding:100px 0}
.statement-inner{display:flex;align-items:center;gap:26px;position:relative}
.statement-quote{font-family:var(--serif);font-size:170px;line-height:.5;color:#7ca399;align-self:flex-start;margin-top:42px}
.statement-inner p{font-size:clamp(44px,5vw,77px);font-weight:400;line-height:1.05;letter-spacing:-.035em;max-width:920px;margin:0}
.statement-inner em{color:#c99a7e}
.statement-side{writing-mode:vertical-rl;margin-left:auto;font-size:10px;font-weight:700;letter-spacing:.18em;white-space:nowrap;color:#a6c1b9}
.approach-preview{background:var(--paper)}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.approach-grid .button{margin-top:15px}
.principle-list{border-top:1px solid var(--line)}
.principle-list>div{display:grid;grid-template-columns:55px 1fr;column-gap:20px;padding:27px 0;border-bottom:1px solid var(--line)}
.principle-list span{font-family:var(--serif);font-size:27px;color:var(--copper);grid-row:span 2}
.principle-list h3{font-family:var(--serif);font-size:31px;font-weight:400;margin-bottom:4px;line-height:1.1}
.principle-list p{color:var(--ink-soft);font-size:14px;margin:0}
.page-hero{background:var(--paper);padding:108px 0 98px;border-bottom:1px solid var(--line)}
.page-hero-inner{display:flex;justify-content:space-between;align-items:end;gap:40px}
.page-hero h1{font-size:clamp(66px,7.2vw,112px);line-height:.98;margin:0 0 25px;max-width:1080px}
.page-hero h1 em{color:var(--copper)}
.page-hero .lead{font-size:18px;line-height:1.65;color:var(--ink-soft);max-width:700px;margin:0}
.page-index{font-family:var(--serif);font-size:35px;color:var(--copper);white-space:nowrap}
.about-intro{background:var(--cream)}
.about-intro-grid{display:grid;grid-template-columns:28% 72%;gap:0}
.about-side{display:flex;align-items:flex-start;gap:24px;padding-top:15px}
.vertical-rule{width:1px;height:145px;background:var(--copper)}
.about-side p{font-size:10px;line-height:2;letter-spacing:.18em;font-weight:700;color:var(--copper)}
.about-intro-grid>div:last-child>p:not(.large-copy){font-size:16px;color:var(--ink-soft);max-width:700px;line-height:1.75}
.about-visual{padding-top:0;background:var(--cream)}
.about-visual-panel{min-height:500px;background:var(--ink);position:relative;display:grid;grid-template-columns:51% 49%;overflow:hidden}
.about-visual-panel>img{width:100%;height:100%;object-fit:cover;object-position:left}
.about-visual-panel>div{padding:66px 70px;color:white;display:flex;flex-direction:column;justify-content:center}
.about-visual-panel h2{font-size:clamp(50px,4vw,70px);line-height:1.08;margin-bottom:26px}
.about-visual-panel h2 em{color:#d1a486}
.about-visual-panel p:last-child{color:#c6d6d0;max-width:430px}
.values-section{background:var(--paper)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.values-grid article{border-top:1px solid var(--ink);padding:27px 0 20px}
.values-grid span{color:var(--copper);font-family:var(--serif);font-size:30px}
.values-grid h3{font-family:var(--serif);font-size:36px;font-weight:400;margin:36px 0 13px}
.values-grid p{color:var(--ink-soft);max-width:340px}
.founders-section{background:var(--mint)}
.founders-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.founder-card{background:var(--paper);display:grid;grid-template-columns:115px 1fr;min-height:270px}
.founder-initials{background:var(--teal);color:white;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:55px}
.founder-text{padding:30px}
.founder-text .eyebrow{margin-bottom:12px}
.founder-text h3{font-family:var(--serif);font-size:38px;font-weight:400;margin:0}
.founder-title{color:var(--copper);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.founder-text p:last-child{color:var(--ink-soft);font-size:14px}
.about-close{background:var(--cream)}
.split-cta{display:flex;justify-content:space-between;align-items:center;gap:30px}
.split-cta .section-title{margin:0}
.split-cta .button{white-space:nowrap}
.work-intro{padding:25px 0;background:var(--ink);color:#d2e2db}
.work-intro-inner{display:flex;justify-content:space-between;gap:15px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}
.work-intro-inner p{margin:0}
.work-detail{background:var(--cream);border-bottom:1px solid var(--line)}
.work-detail,.form-panel{scroll-margin-top:112px}
.work-detail:nth-of-type(2n){background:var(--paper)}
.work-detail-grid{display:grid;grid-template-columns:50% 50%;gap:0;min-height:520px}
.work-detail-art{height:auto;min-height:520px}
.work-detail-copy{padding:45px 0 45px 12%;align-self:center}
.work-detail-copy h2{font-size:clamp(56px,5.5vw,84px);line-height:1.02;margin-bottom:12px}
.work-detail-copy .eyebrow{margin-bottom:22px}
.work-address{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:32px}
.work-fact{font-family:var(--serif);font-size:29px;color:var(--copper);margin-bottom:22px}
.work-detail-copy>p:not(.eyebrow):not(.work-address):not(.work-fact){color:var(--ink-soft);line-height:1.75;max-width:540px}
.work-status{display:flex;justify-content:space-between;gap:15px;max-width:490px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin:29px 0;color:var(--ink-soft);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.work-status strong{color:var(--ink)}
.work-detail-copy>.text-link{margin-top:15px}
.work-disclaimer{padding:42px 0;background:var(--paper)}
.work-disclaimer p{max-width:850px;color:var(--ink-soft);font-size:13px;margin:0}
.approach-story{background:var(--cream)}
.approach-story-grid{display:grid;grid-template-columns:52% 42%;justify-content:space-between;gap:5%}
.approach-story-grid>div:last-child{padding-top:53px;color:var(--ink-soft)}
.approach-photo{padding:0 0 115px;background:var(--cream)}
.approach-photo figure{margin:0;position:relative;overflow:hidden;background:var(--ink);height:min(58vw,630px)}
.approach-photo img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.approach-photo figcaption{position:absolute;bottom:21px;left:24px;color:white;background:rgba(16,42,45,.78);padding:8px 12px;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.process-section{background:var(--mint)}
.process-list{border-top:1px solid var(--ink)}
.process-list article{display:grid;grid-template-columns:110px 1fr 60px;align-items:center;gap:20px;padding:37px 0;border-bottom:1px solid rgba(16,42,45,.25)}
.process-index{font-family:var(--serif);font-size:43px;color:var(--copper)}
.process-list h3{font-size:clamp(32px,3.5vw,49px);font-weight:400;margin:0 0 7px;letter-spacing:-.035em}
.process-list p{margin:0;color:var(--ink-soft);max-width:620px}
.process-icon{font-size:34px;color:var(--copper);font-family:var(--serif);justify-self:end}
.faq-section{background:var(--paper)}
.faq-grid{display:grid;grid-template-columns:40% 55%;justify-content:space-between;gap:5%}
.faq-list{border-top:1px solid var(--ink)}
.faq-list details{border-bottom:1px solid var(--line);padding:25px 0}
.faq-list summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-family:var(--serif);font-size:29px;line-height:1.15}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{font-family:var(--sans);font-size:26px;color:var(--copper);transition:transform .25s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list p{color:var(--ink-soft);margin:18px 0 0;max-width:550px}
.faq-list details[open] p{animation:faq-reveal .25s ease-out both}
@keyframes faq-reveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.contact-section{background:var(--cream)}
.contact-grid{display:grid;grid-template-columns:42% 52%;justify-content:space-between;gap:6%}
.contact-copy h2{font-size:clamp(55px,5vw,76px);line-height:1.04;margin-bottom:26px}
.contact-copy h2 em{color:var(--copper)}
.contact-copy>p:not(.eyebrow){color:var(--ink-soft);font-size:17px;max-width:440px}
.contact-info{margin-top:60px;border-top:1px solid var(--line)}
.contact-info>div{display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--line);padding:20px 0}
.contact-info span{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--copper)}
.contact-info strong{font-weight:500}
.contact-info a{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:700}
.contact-info svg{width:16px;height:16px}
.form-panel{padding:44px;background:var(--paper);border:1px solid var(--line)}
.form-panel .eyebrow{margin-bottom:15px}
.form-panel h3{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;margin-bottom:35px}
.form-panel form{display:flex;flex-direction:column;gap:18px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.form-panel label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;display:flex;flex-direction:column;gap:8px}
.form-panel label span{color:var(--ink-soft);font-weight:500;text-transform:none;letter-spacing:0}
.form-panel label .field-label{color:var(--ink);font-weight:700;text-transform:uppercase;letter-spacing:.09em;white-space:nowrap}
.form-panel label .field-optional{color:var(--ink-soft);font-weight:500;text-transform:none;letter-spacing:0}
.form-panel input,.form-panel select,.form-panel textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--cream);color:var(--ink);min-height:46px;padding:11px 12px;outline:none;font-size:14px;font-weight:400;letter-spacing:0;text-transform:none}
.form-panel textarea{resize:vertical;min-height:135px}
.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{border-color:var(--copper);box-shadow:0 0 0 2px rgba(182,116,85,.18)}
.form-panel .button{width:fit-content;margin-top:6px}
.form-note{font-size:12px;color:var(--ink-soft);margin:-2px 0 0}
.form-feedback{font-size:13px;color:var(--ink);margin:0;min-height:20px}
.form-feedback.error{color:#9c3d28}
.honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.privacy-content{background:var(--cream)}
.privacy-content .narrow{margin-inline:auto}
.privacy-date{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--copper);font-weight:700;margin-bottom:45px}
.privacy-content h2{font-family:var(--serif);font-size:39px;margin:46px 0 12px}
.privacy-content p:not(.privacy-date){color:var(--ink-soft);line-height:1.8}
.privacy-content a{text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:3px}
.not-found{min-height:620px;display:flex;align-items:center}
.not-found .page-hero-inner{width:100%}
.not-found-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.site-footer{background:var(--ink);color:white}
.footer-top{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:108px 0 102px;border-bottom:1px solid rgba(255,255,255,.2)}
.footer-top h2{font-size:clamp(55px,6vw,92px);line-height:1;margin:0}
.footer-top h2 em{color:#cda383}
.footer-action{padding-bottom:7px}
.footer-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;padding:36px 0 42px;color:#b8ccc5}
.footer-brand{display:flex;align-items:start;gap:18px;font-size:12px;line-height:1.5}
.footer-mark{font-family:var(--serif);font-size:45px;line-height:1;color:#d2a184}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:12px}
.footer-links a:hover{color:white}
.footer-meta{display:flex;flex-direction:column;gap:12px;align-items:end;text-align:right;font-size:11px}
@media(max-width:1180px){.desktop-nav{gap:18px}.brand{min-width:230px}.header-actions{margin-left:5px}.header-contact{padding:12px;font-size:10px}}
@media(max-width:920px){.wrap{width:min(calc(100% - 48px),var(--wrap))}.header-inner{min-height:76px}.desktop-nav,.header-contact{display:none}.header-actions{margin-left:auto}.menu-toggle{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 24px 30px;min-height:600px;justify-content:center}.hero-copy-inner{max-width:760px}.hero-visual{min-height:440px;max-height:550px}.intro-grid,.about-intro-grid{grid-template-columns:1fr;gap:30px}.about-side{display:none}.section{padding:92px 0}.projects-grid,.approach-grid,.work-detail-grid,.approach-story-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.project-card--large .project-art,.project-art{height:350px}.work-detail-art{min-height:420px}.work-detail-copy{padding:12px 0 10px}.about-visual-panel{grid-template-columns:1fr}.about-visual-panel>img{height:340px}.about-visual-panel>div{padding:50px}.values-grid{gap:20px}.page-hero{padding:85px 0}.page-index{display:none}.footer-bottom{grid-template-columns:1fr 1fr}.footer-meta{align-items:start;text-align:left}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:68px}.brand{min-width:0}.brand-mark{width:38px;height:38px;font-size:21px}.brand-name{font-size:11px}.hero-copy{padding:65px 18px 26px;min-height:600px}.hero h1{font-size:clamp(55px,14vw,82px)}.hero-lead{font-size:16px}.hero-buttons{display:flex;flex-direction:column;align-items:flex-start}.hero-bottom{font-size:8px}.hero-visual{min-height:360px}.hero-visual-caption{left:18px;right:18px;bottom:18px;font-size:8px}.section{padding:73px 0}.section-title{font-size:clamp(47px,11.2vw,65px)}.large-copy{font-size:17px}.section-heading{align-items:start;flex-direction:column;gap:20px}.section-heading .text-link{margin:0}.project-art,.project-card--large .project-art{height:300px}.project-info{padding:27px 25px}.project-meta{font-size:9px}.project-info h3{font-size:37px}.statement-section{padding:75px 0}.statement-inner{gap:7px}.statement-quote{font-size:90px;margin-top:25px}.statement-inner p{font-size:43px}.statement-side{display:none}.page-hero{padding:68px 0 75px}.page-hero h1{font-size:clamp(55px,13vw,76px)}.page-hero .lead{font-size:16px}.about-visual-panel>img{height:290px}.about-visual-panel>div{padding:36px 27px}.about-visual-panel h2{font-size:55px}.values-grid{grid-template-columns:1fr;gap:12px}.values-grid article{padding:20px 0}.values-grid h3{margin:18px 0 8px}.founder-card{grid-template-columns:80px 1fr}.founder-initials{font-size:42px}.founder-text{padding:22px}.split-cta{align-items:start;flex-direction:column}.work-intro-inner{flex-direction:column;gap:3px}.work-detail-art{min-height:310px}.work-detail-copy h2{font-size:61px}.process-list article{grid-template-columns:58px 1fr 22px;gap:10px;padding:24px 0}.process-index{font-size:31px}.process-list h3{font-size:30px}.process-list p{font-size:13px}.process-icon{font-size:22px}.faq-list summary{font-size:25px}.contact-info{margin-top:35px}.form-panel{padding:30px 22px}.form-panel h3{font-size:36px}.form-row{grid-template-columns:1fr}.footer-top{align-items:start;flex-direction:column;padding:75px 0 70px}.footer-top h2{font-size:65px}.footer-bottom{grid-template-columns:1fr;gap:30px}.footer-meta{gap:4px}}
@media(max-width:920px){.approach-photo{padding:0 0 92px}}
@media(max-width:920px){.work-detail,.form-panel{scroll-margin-top:94px}}
@media(max-width:600px){.approach-photo{padding:0 0 73px}.approach-photo figure{height:330px}.approach-photo figcaption{left:12px;bottom:12px;max-width:calc(100% - 24px);font-size:8px}}
@media(max-width:600px){.work-detail,.form-panel{scroll-margin-top:82px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
