@import url('./assets/fonts.css');

:root{--paper:#fcfcf8;--white:#ffffff;--ink:#16372c;--muted:#5b685f;--line:#d7dfd4;--accent:#cb4f32;--forest:#173f33;--pale:#edf2e5;--lime:#dce66b;--serif:'DM Sans',Arial,sans-serif;--sans:'DM Sans',Arial,sans-serif;--gutter:clamp(22px,4.4vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}figure{margin:0}h1,h2,h3,p{margin:0}button{background:none;border:0}::selection{background:#dcc3a3;color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;background:var(--paper);padding:12px}.skip-link:focus{top:10px}.container{max-width:1600px;margin:auto;padding-inline:var(--gutter)}.serif{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.035em}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:600;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow::before{content:'';width:22px;height:1px;background:currentColor;opacity:.65}.accent{color:var(--accent)}.arrow{display:inline-block;transition:transform .25s}.text-link{display:inline-flex;align-items:center;gap:24px;padding-block:10px;border-bottom:1px solid currentColor;font-size:12px;font-weight:500}.text-link:hover .arrow{transform:translate(4px,-3px)}.pill-button{display:inline-flex;gap:24px;align-items:center;justify-content:center;padding:14px 25px;border:1px solid currentColor;border-radius:2px;font-size:12px;font-weight:500;line-height:1.4;min-height:48px;transition:background .25s,color .25s}.pill-button:hover{background:var(--ink);color:var(--paper)}.pill-button.filled{background:var(--forest);border-color:var(--forest);color:var(--paper)}.pill-button.filled:hover{background:#172a20}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px}.section-heading h2{font-size:clamp(48px,5.3vw,78px);margin-top:24px}.section-heading>p{max-width:330px;color:var(--muted);font-size:13px;line-height:1.8}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:30;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;gap:10px;align-items:center;flex-shrink:0}.brand-symbol{height:49px;width:54px;overflow:hidden;position:relative;mix-blend-mode:multiply}.brand-symbol img{position:absolute;max-width:none;width:90px;left:-17px;top:-1px}.brand-name{font-size:23px;font-weight:500;letter-spacing:-.065em;line-height:1.1}.brand-name small{display:block;font-size:7.7px;text-transform:uppercase;font-weight:500;letter-spacing:.2em;margin-top:7px}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto}.desktop-nav a{font-size:11px;font-weight:500;position:relative;padding:14px 0}.desktop-nav a::after{content:'';height:1px;width:0;position:absolute;bottom:9px;left:0;background:var(--accent);transition:width .25s}.desktop-nav a:hover::after,.desktop-nav a.active::after{width:100%}.header-cta{font-size:11px;padding:11px 20px;min-height:41px;gap:25px;margin-left:24px}.menu-toggle{display:none;width:45px;height:45px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{display:block;width:22px;height:1px;background:currentColor;transition:transform .2s}.mobile-nav{display:none}.hero{padding-top:42px;padding-bottom:37px;position:relative}.hero-grid{display:grid;grid-template-columns:.89fr 1.11fr;min-height:660px;gap:20px}.hero-copy{padding:35px 35px 50px 0;display:flex;flex-direction:column;align-items:flex-start;position:relative;z-index:1}.hero h1{font-size:clamp(68px,7.8vw,116px);margin:38px 0 26px;line-height:.96;max-width:600px}.hero h1 em{font-weight:400;color:var(--accent)}.hero-copy>p{max-width:325px;font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:29px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.hero-actions .text-link{font-size:11px;border-bottom-color:var(--line);gap:15px}.hero-note{margin-top:auto;padding-top:42px;display:flex;align-items:center;gap:11px;color:var(--muted);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.hero-note .dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.hero-image{height:660px;position:relative;overflow:hidden;background:var(--pale)}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:51% 52%;filter:saturate(.86)}.photo-label{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;padding:38px 26px 22px;color:white;background:linear-gradient(transparent,rgba(17,33,23,.58));font-size:10px;letter-spacing:.03em}.photo-label small{font-size:9px;opacity:.85}.photo-label>span:first-child{display:grid;gap:2px}.photo-label .round-arrow{width:35px;height:35px;border:1px solid #fff9;border-radius:50%;display:grid;place-items:center;font-size:16px;transition:background .2s}.hero-image:hover .round-arrow{background:#fff;color:var(--ink)}.hero-image .image-index{position:absolute;top:20px;left:22px;color:white;font-size:10px;letter-spacing:.1em}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:29px;padding-top:24px;border-top:1px solid var(--line)}.hero-bottom p{font-family:var(--serif);font-size:25px;letter-spacing:-.02em}.hero-bottom>span{font-size:9px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.intro{padding-top:92px;padding-bottom:100px;display:grid;grid-template-columns:1fr 2fr;gap:60px;border-bottom:1px solid var(--line)}.intro>.eyebrow{align-self:start;margin-top:10px}.intro-copy>p{font-size:clamp(33px,3.3vw,50px);max-width:850px;line-height:1.18;letter-spacing:-.025em}.intro-copy>p em{font-weight:400;color:var(--accent)}.intro-meta{display:flex;justify-content:space-between;gap:30px;margin-top:35px;align-items:flex-end}.intro-meta p{font-size:12px;color:var(--muted);max-width:450px;line-height:1.9}.intro-meta span{font-size:9px;white-space:nowrap;letter-spacing:.07em;text-transform:uppercase}.projects-section{padding-top:98px;padding-bottom:110px}.projects-section .section-heading .text-link{white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:46px 36px}.project-card{display:block;grid-column:span 6;min-width:0}.project-card:nth-child(4n+1){grid-column:span 7}.project-card:nth-child(4n+2){grid-column:span 5}.project-card:nth-child(4n+3){grid-column:span 5}.project-card:nth-child(4n+4){grid-column:span 7}.project-visual{position:relative;overflow:hidden;background:var(--pale);height:420px}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.6,.3,1);filter:saturate(.86)}.project-card:hover img{transform:scale(1.035)}.project-visual.contain img{object-fit:contain;background:#e9eadf}.project-visual .tag{position:absolute;top:16px;left:16px;background:var(--paper);padding:5px 10px;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.project-open{position:absolute;right:18px;bottom:18px;background:var(--paper);border-radius:50%;width:41px;height:41px;display:grid;place-items:center;font-size:21px;transition:background .2s,color .2s}.project-card:hover .project-open{color:var(--paper);background:var(--accent)}.project-info{display:flex;justify-content:space-between;gap:16px;padding-top:17px}.project-info h3{font-family:var(--serif);font-weight:400;font-size:31px;letter-spacing:-.02em;line-height:1.2}.project-info p{font-size:10px;color:var(--muted);margin-top:5px}.project-num{font-size:9px;color:var(--muted);padding-top:6px;letter-spacing:.06em}.approach-section{background:var(--forest);color:var(--paper);padding-top:92px;padding-bottom:96px}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.approach-image{height:620px;position:relative}.approach-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:saturate(.75)}.image-caption{font-size:9px;letter-spacing:.08em;margin-top:14px;text-transform:uppercase;opacity:.7}.approach-copy h2{font-size:clamp(48px,5.4vw,78px);max-width:550px;margin:28px 0 26px;line-height:1.05}.approach-copy h2 em{color:#ccac7d;font-weight:400}.approach-copy>p{font-size:13px;color:#d2d9ce;max-width:410px;line-height:1.9}.values{margin-top:36px;border-top:1px solid #ffffff32;max-width:420px}.value-row{display:flex;gap:25px;padding-block:19px;border-bottom:1px solid #ffffff32}.value-row>span{font-size:9px;color:#b5bfae;padding-top:4px}.value-row h3{font-weight:500;font-size:13px}.value-row p{font-size:11px;color:#bac6b8;margin-top:4px;line-height:1.7}.services-section{padding-top:105px;padding-bottom:106px}.services-layout{display:grid;grid-template-columns:1fr 1.55fr;gap:90px}.services-intro h2{font-size:clamp(48px,5.2vw,76px);margin-top:25px;max-width:400px}.services-intro>p{max-width:300px;font-size:12px;line-height:1.9;color:var(--muted);margin-top:28px}.services-intro .text-link{margin-top:26px}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service-list summary{padding:26px 0;display:grid;grid-template-columns:35px 1fr 24px;gap:16px;align-items:center}.service-list summary>span:first-child{font-size:9px;color:var(--accent)}.service-list h3{font-family:var(--serif);font-weight:400;font-size:35px;letter-spacing:-.025em;line-height:1.2}.expand{font-size:23px;font-weight:400;line-height:1}.service-list details[open] .expand{transform:rotate(45deg)}.service-body{padding:0 40px 26px 51px;color:var(--muted);font-size:12px;line-height:1.9}.service-body ul{padding-left:16px;margin:14px 0 0}.service-body li{padding-left:4px;margin-top:4px}.process-section{border-top:1px solid var(--line);padding-top:68px;padding-bottom:83px}.process-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:47px;gap:25px}.process-heading h2{font-size:41px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.process-step{border-top:1px solid var(--line);padding-top:19px}.process-step .step-num{font-size:9px;color:var(--accent)}.process-step h3{font-family:var(--serif);font-weight:400;font-size:30px;margin-top:14px}.process-step p{font-size:11px;color:var(--muted);max-width:235px;line-height:1.85;margin-top:10px}.studio-section{background:#e6e7dc;padding-block:90px}.studio-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:95px;align-items:center}.studio-photo{max-width:350px;margin:auto;position:relative}.studio-photo img{width:100%;aspect-ratio:4/4.5;object-fit:cover;object-position:50% 38%;filter:saturate(.65)}.studio-photo figcaption{font-size:9px;margin-top:12px;line-height:1.7}.studio-copy h2{font-size:clamp(48px,5vw,72px);margin:24px 0;max-width:660px}.studio-copy>p{max-width:530px;font-size:12px;line-height:1.9;color:var(--muted)}.studio-copy>p+p{margin-top:16px}.studio-copy>.text-link{margin-top:24px}.workshop-section{padding-block:95px;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center;border-bottom:1px solid var(--line)}.workshop-image img{width:100%;aspect-ratio:1.55;object-fit:cover;filter:saturate(.72)}.workshop-copy h2{font-size:clamp(47px,4.7vw,67px);margin:24px 0}.workshop-copy p{font-size:12px;line-height:1.9;color:var(--muted);max-width:350px}.workshop-copy .text-link{margin-top:24px}.faq-section{display:grid;grid-template-columns:1fr 1.55fr;gap:90px;padding-block:80px}.faq-section h2{font-size:42px;margin-top:20px}.faq-list{border-top:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;font-weight:500;padding:23px 0}.faq-list summary span{font-size:21px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:12px;color:var(--muted);line-height:1.9;padding:0 35px 24px 0}.contact-section{background:var(--forest);color:var(--paper);padding-top:91px;padding-bottom:78px}.contact-head{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:start}.contact-head h2{font-size:clamp(64px,7.8vw,112px);margin-top:27px;max-width:700px}.contact-head h2 em{font-weight:400;color:#c5ad83}.contact-info{padding-top:42px}.contact-info>p{font-size:12px;color:#ccd4c9;max-width:340px;line-height:1.9;margin-bottom:25px}.contact-direct{display:flex;flex-direction:column;gap:13px;font-size:13px;align-items:flex-start}.contact-direct a{border-bottom:1px solid #ffffff4d;padding-bottom:3px;overflow-wrap:anywhere}.contact-direct a:hover{border-color:var(--paper)}.contact-direct small{margin-top:10px;font-size:10px;color:#bac6b8}.project-form{margin-top:55px;padding-top:35px;border-top:1px solid #ffffff3d}.form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:27px}.form-field{display:flex;flex-direction:column;gap:10px;min-width:0}.form-field label{font-size:9px;letter-spacing:.05em;color:#d3dccf}.form-field input,.form-field select,.form-field textarea{width:100%;border:0;border-bottom:1px solid #ffffff6b;background:transparent;border-radius:0;color:var(--paper);padding:10px 0 13px;font-size:12px;outline-offset:6px;min-height:46px}.form-field input::placeholder,.form-field textarea::placeholder{color:#9fab9a}.form-field select option{color:var(--ink);background:var(--paper)}.form-field textarea{resize:vertical;min-height:89px}.form-full{grid-column:1/-1}.form-bottom{margin-top:25px;display:flex;justify-content:space-between;gap:25px;align-items:center}.form-bottom p{max-width:460px;font-size:10px;line-height:1.8;color:#c1cdbd}.form-bottom .pill-button{background:var(--paper);border-color:var(--paper);color:var(--forest);min-width:205px}.form-bottom .pill-button:hover{background:#dbdccc}.form-result{margin-top:20px;padding:15px 20px;border:1px solid #ffffff55;font-size:12px;line-height:1.8}.form-result a{text-decoration:underline}.form-result button{font-size:11px;border-bottom:1px solid currentColor;padding:2px;margin-left:12px}.site-footer{padding-top:36px;padding-bottom:28px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-bottom:33px}.footer-social{display:flex;gap:27px;font-size:11px}.footer-social a:hover{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:9px}.footer-bottom>div{display:flex;gap:25px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.to-top{font-size:9px;white-space:nowrap}.page-intro{padding-top:70px;padding-bottom:50px}.page-intro h1{font-size:clamp(68px,8vw,115px);margin-top:30px}.page-intro>p{font-size:13px;color:var(--muted);line-height:1.9;max-width:560px;margin-top:24px}.portfolio-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:36px}.filter-button{font-size:11px;border:1px solid var(--line);padding:9px 17px;border-radius:25px;min-height:40px;transition:background .2s}.filter-button[aria-pressed=true]{color:var(--paper);background:var(--forest);border-color:var(--forest)}.filter-button:hover{border-color:var(--forest)}.portfolio-count{margin-left:auto;font-size:10px;color:var(--muted)}.portfolio-page{padding-bottom:110px}.portfolio-page .project-grid{grid-template-columns:1fr 1fr;gap:48px 35px}.portfolio-page .project-card{grid-column:auto}.portfolio-page .project-visual{height:auto;aspect-ratio:1.43}.project-card[hidden]{display:none}.small-cta{background:var(--pale);padding-block:65px;display:flex;justify-content:space-between;align-items:center;gap:40px}.small-cta h2{font-size:clamp(39px,4.5vw,61px);max-width:800px}.case-breadcrumb{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted);padding-top:42px}.case-breadcrumb a:hover{color:var(--accent)}.case-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;padding-top:44px;padding-bottom:48px;align-items:end}.case-heading h1{font-size:clamp(64px,7.5vw,107px);margin-top:23px}.case-heading>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:390px}.case-hero{height:clamp(390px,53vw,720px);background:var(--pale);position:relative}.case-hero img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.case-hero.contain img{object-fit:contain}.image-button{width:100%;height:100%;display:block;padding:0;text-align:left}.case-hero .image-zoom{position:absolute;right:25px;bottom:25px;color:var(--ink);background:var(--paper);border-radius:50%;width:43px;height:43px;display:grid;place-items:center;pointer-events:none;font-size:22px}.case-body{display:grid;grid-template-columns:.7fr 1.3fr;gap:110px;padding-top:60px;padding-bottom:65px}.case-facts{margin:0;border-top:1px solid var(--line)}.case-facts>div{padding-block:17px;border-bottom:1px solid var(--line)}.case-facts dt{font-size:9px;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.07em}.case-facts dd{font-size:12px;margin:0}.case-story h2{font-size:49px;margin-bottom:25px}.case-story p{font-size:13px;color:var(--muted);line-height:1.95;max-width:660px}.case-story p+p{margin-top:19px}.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:85px}.gallery-figure .image-button{height:390px;overflow:hidden;background:var(--pale)}.gallery-figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transition:transform .45s}.gallery-figure button:hover img{transform:scale(1.025)}.gallery-figure figcaption{font-size:10px;margin-top:11px;color:var(--muted)}.gallery-figure.only{grid-column:1/-1}.gallery-figure.only .image-button{height:520px}.case-next{border-top:1px solid var(--line);padding-block:50px;display:flex;justify-content:space-between;align-items:center;gap:30px}.case-next p{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.case-next a{font-family:var(--serif);font-size:43px;line-height:1.15}.case-next a:hover{color:var(--accent)}.lightbox{border:0;padding:0;background:#142019f5;width:100vw;height:100dvh;max-width:none;max-height:none;color:white;margin:0;position:fixed;inset:0}.lightbox::backdrop{background:#142019f5}.lightbox-content{height:100%;display:grid;grid-template-rows:1fr auto;gap:14px;padding:65px 70px 30px}.lightbox-image{width:100%;height:100%;object-fit:contain;min-height:0}.lightbox-caption{text-align:center;font-size:12px;color:#dbe0d6}.lightbox-close{position:absolute;right:20px;top:15px;color:white;font-size:32px;width:45px;height:45px;z-index:2}.lightbox-prev,.lightbox-next{position:absolute;top:48%;font-size:31px;color:white;width:50px;height:55px;background:#142019b0;border-radius:50%}.lightbox-prev{left:10px}.lightbox-next{right:10px}.legal-content{max-width:800px;padding-block:65px 95px}.legal-content h1{font-size:68px;margin-bottom:35px}.legal-content h2{font-size:26px;font-family:var(--serif);font-weight:400;margin:30px 0 13px}.legal-content p{font-size:13px;color:var(--muted);line-height:1.9}.legal-content a{text-decoration:underline;overflow-wrap:anywhere}.noscript{background:#e9ddbd;font-size:12px;padding:12px 20px;text-align:center}.footer-note{font-size:9px;color:var(--muted);margin-top:8px}
@media(min-width:1700px){.hero-grid{grid-template-columns:1fr 1.05fr}.hero h1{font-size:120px}}
@media(max-width:1150px){.desktop-nav{gap:22px}.header-cta{margin-left:0}.hero-grid{min-height:590px}.hero-image{height:600px}.hero-copy{padding-right:15px;padding-top:20px}.hero h1{font-size:clamp(70px,8.5vw,98px)}.hero-actions{gap:17px}.hero-actions .pill-button{padding-inline:18px}.approach-grid{gap:60px}.approach-image{height:550px}.services-layout,.faq-section{gap:60px}.studio-grid{gap:65px}.workshop-section{gap:45px}.contact-head{gap:45px}.project-visual{height:350px}.case-body{gap:70px}}
@media(max-width:900px){.desktop-nav{gap:18px}.desktop-nav a{font-size:10px}.header-cta{display:none}.hero h1{font-size:74px}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy{padding-right:15px}.hero-image{height:570px}.hero-copy>p{font-size:12px;max-width:270px}.hero-actions{gap:11px;flex-direction:column;align-items:flex-start}.hero-note{font-size:8px;padding-top:25px}.intro{gap:35px;grid-template-columns:1fr 2.3fr}.intro-meta{flex-direction:column;align-items:flex-start}.project-visual{height:310px}.approach-grid{gap:42px}.approach-image{height:520px}.approach-copy h2{font-size:55px}.services-layout{grid-template-columns:.85fr 1.15fr;gap:40px}.service-list h3{font-size:30px}.service-list summary{gap:5px}.service-body{padding-left:40px;padding-right:10px}.process-grid{gap:22px}.studio-grid{grid-template-columns:.8fr 1.2fr;gap:40px}.workshop-section{grid-template-columns:1fr 1fr}.workshop-copy h2{font-size:49px}.contact-head{grid-template-columns:1.05fr .95fr;gap:35px}.contact-head h2{font-size:82px}.contact-direct{font-size:11px}.case-body{gap:45px}.case-heading{gap:35px}.case-heading h1{font-size:78px}.case-gallery .image-button{height:310px}.section-heading>p{max-width:260px}}
@media(max-width:700px){html{scroll-padding-top:85px}.site-header{height:84px;position:sticky;top:0}.brand-symbol{height:43px;width:47px}.brand-symbol img{width:79px;left:-15px}.brand-name{font-size:22px}.brand-name small{font-size:7px}.desktop-nav{display:none}.menu-toggle{display:flex}.mobile-nav{position:fixed;top:84px;left:0;right:0;z-index:29;background:var(--paper);border-bottom:1px solid var(--line);padding:20px var(--gutter) 30px;box-shadow:0 15px 25px #1c322317}.mobile-nav.open{display:flex;flex-direction:column;gap:8px}.mobile-nav a{font-size:20px;font-family:var(--serif);padding:9px 0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{padding-top:28px;padding-bottom:20px}.hero-grid{display:flex;flex-direction:column;gap:30px;min-height:0}.hero-copy{padding:10px 0 0}.hero .eyebrow{font-size:8.5px}.hero h1{font-size:clamp(68px,14.3vw,102px);margin-top:28px;margin-bottom:24px;max-width:100%}.hero-copy>p{max-width:355px;font-size:12px;margin-bottom:23px}.hero-actions{flex-direction:row;align-items:center;gap:22px}.hero-actions .pill-button{font-size:11px;padding-inline:20px}.hero-note{margin-top:0;padding-top:27px;gap:8px;font-size:8px}.hero-image{height:470px}.photo-label{padding-inline:20px}.hero-bottom{margin-top:22px;padding-top:20px;gap:20px}.hero-bottom p{font-size:22px;max-width:250px}.hero-bottom>span{font-size:8px;max-width:96px;text-align:right}.intro{padding-top:62px;padding-bottom:65px;display:block}.intro-copy{margin-top:26px}.intro-copy>p{font-size:36px;max-width:550px}.intro-meta{margin-top:23px;gap:20px}.intro-meta p{font-size:11px}.intro-meta span{font-size:8px}.projects-section{padding-top:65px;padding-bottom:68px}.section-heading{align-items:flex-start;gap:22px;flex-direction:column;margin-bottom:30px}.section-heading h2{font-size:54px;margin-top:20px}.section-heading .text-link{margin-top:0}.section-heading>p{max-width:400px;font-size:12px}.project-grid{grid-template-columns:1fr;gap:31px}.project-card,.project-card:nth-child(n){grid-column:auto}.project-visual{height:auto;aspect-ratio:1.26}.project-info h3{font-size:31px}.project-info{padding-top:13px}.project-info p{font-size:9px}.project-visual .tag{top:13px;left:13px}.approach-section{padding-top:56px;padding-bottom:58px}.approach-grid{display:flex;flex-direction:column-reverse;gap:38px;align-items:stretch}.approach-copy h2{font-size:57px;margin:24px 0 21px;max-width:500px}.approach-copy>p{font-size:12px;max-width:100%}.values{max-width:100%;margin-top:26px}.approach-image{height:460px}.image-caption{font-size:8px}.services-section{padding-top:64px;padding-bottom:65px}.services-layout{grid-template-columns:1fr;gap:33px}.services-intro h2{font-size:57px;max-width:500px;margin-top:21px}.services-intro>p{font-size:11px;max-width:380px;margin-top:22px}.services-intro .text-link{margin-top:15px}.service-list summary{padding-block:23px;grid-template-columns:27px 1fr 24px;gap:9px}.service-list h3{font-size:31px}.service-body{padding-left:36px;padding-right:15px;font-size:11px}.process-section{padding-block:46px 57px}.process-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:28px}.process-heading h2{font-size:38px}.process-grid{grid-template-columns:1fr 1fr;gap:26px}.process-step h3{font-size:29px;margin-top:10px}.process-step p{font-size:10px;line-height:1.8}.studio-section{padding-block:56px}.studio-grid{display:flex;flex-direction:column-reverse;gap:34px}.studio-copy h2{font-size:56px;margin-block:22px}.studio-copy>p{font-size:12px}.studio-photo{max-width:100%;width:100%}.studio-photo img{aspect-ratio:1.2;object-position:center 29%}.workshop-section{padding-block:56px;display:flex;flex-direction:column;align-items:stretch;gap:27px}.workshop-image img{aspect-ratio:1.3}.workshop-copy h2{font-size:52px;margin-block:21px}.workshop-copy p{font-size:11px;max-width:100%}.faq-section{grid-template-columns:1fr;gap:30px;padding-block:54px}.faq-section h2{font-size:42px}.faq-list summary{font-size:11px;padding-block:20px}.faq-list details p{font-size:11px;padding-right:10px}.contact-section{padding-top:57px;padding-bottom:55px}.contact-head{grid-template-columns:1fr;gap:0}.contact-head h2{font-size:clamp(67px,14vw,95px);margin-top:24px;max-width:500px}.contact-info{padding-top:29px}.contact-info>p{max-width:100%;font-size:12px;margin-bottom:20px}.contact-direct{font-size:12px;gap:11px}.contact-direct small{font-size:9px;margin-top:4px}.project-form{margin-top:33px;padding-top:28px}.form-grid{grid-template-columns:1fr;gap:20px}.form-field label{font-size:9px}.form-field input,.form-field select,.form-field textarea{font-size:12px}.form-bottom{flex-direction:column-reverse;align-items:flex-start;gap:18px}.form-bottom .pill-button{width:100%;justify-content:space-between;font-size:11px}.form-bottom p{font-size:9px}.form-result button{display:block;margin:10px 0 0}.site-footer{padding-top:29px}.footer-top{align-items:flex-start;gap:28px;flex-direction:column;padding-bottom:27px}.footer-social{font-size:10px;gap:25px}.footer-bottom{flex-direction:column;gap:12px;font-size:8px}.footer-bottom>div{justify-content:space-between;gap:15px}.footer-note{font-size:8px}.page-intro{padding-top:43px;padding-bottom:32px}.page-intro h1{font-size:76px;margin-top:24px}.page-intro>p{font-size:12px;margin-top:20px}.portfolio-controls{gap:8px;margin-bottom:28px;padding-bottom:22px}.filter-button{font-size:10px;padding:8px 13px}.portfolio-count{width:100%;margin-top:8px}.portfolio-page{padding-bottom:60px}.portfolio-page .project-grid{grid-template-columns:1fr;gap:32px}.portfolio-page .project-visual{aspect-ratio:1.3}.small-cta{padding-block:42px;flex-direction:column;align-items:flex-start;gap:25px}.small-cta h2{font-size:45px}.case-breadcrumb{padding-top:27px;font-size:9px;gap:8px}.case-heading{grid-template-columns:1fr;gap:24px;padding-top:32px;padding-bottom:30px}.case-heading h1{font-size:74px;margin-top:20px}.case-heading>p{font-size:12px;max-width:100%}.case-hero{height:auto;aspect-ratio:1.1}.case-body{grid-template-columns:1fr;gap:38px;padding-top:35px;padding-bottom:37px}.case-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.case-facts dt{font-size:8px}.case-facts dd{font-size:10px}.case-story h2{font-size:43px;margin-bottom:20px}.case-story p{font-size:12px}.case-gallery{grid-template-columns:1fr;gap:25px;padding-bottom:45px}.gallery-figure .image-button,.gallery-figure.only .image-button{height:auto;aspect-ratio:1.2}.gallery-figure figcaption{font-size:9px}.case-next{padding-block:33px;align-items:flex-end;gap:20px}.case-next a{font-size:32px}.case-next p{font-size:8px}.case-next .text-link{font-family:var(--sans);font-size:9px;gap:10px}.lightbox-content{padding:75px 15px 35px}.lightbox-caption{font-size:10px;padding-inline:24px}.lightbox-prev,.lightbox-next{width:36px;height:43px;font-size:27px}.lightbox-prev{left:4px}.lightbox-next{right:4px}.legal-content{padding-block:45px 60px}.legal-content h1{font-size:55px}.legal-content p{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Contemporary direction: flat color, clear typography, full-color project imagery. */
.serif{font-weight:600;letter-spacing:-.06em;line-height:1.04}h1 em,h2 em,.intro-copy em{font-style:normal;font-weight:600}.pill-button{border-radius:0;font-weight:600}.site-header{background:var(--white);height:96px}.brand-name{font-size:26px;font-weight:700;letter-spacing:-.06em}.brand-name small{font-size:7px;font-weight:600;letter-spacing:.15em}.brand-symbol{filter:grayscale(1)}.desktop-nav a{font-size:12px}.header-cta{border-color:var(--ink);font-size:11px}.hero{padding-top:28px;padding-bottom:0}.hero-grid{grid-template-columns:.9fr 1.1fr;gap:0;min-height:650px}.hero-copy{background:var(--forest);color:var(--paper);padding:45px 38px 35px}.hero h1{font-size:clamp(57px,6.05vw,86px);line-height:1.01;letter-spacing:-.068em;margin:39px 0 27px}.hero h1 em{color:var(--lime)}.hero-copy .eyebrow{font-size:8px;letter-spacing:.14em}.hero-copy>p{color:#e1e8df;font-size:13px;max-width:360px;line-height:1.8}.hero-actions{gap:20px}.hero-actions .pill-button{background:var(--lime);border-color:var(--lime);color:var(--ink);padding-inline:19px;font-size:11px}.hero-actions .pill-button:hover{background:white;border-color:white}.hero-actions .text-link{color:white;border-bottom-color:#91a89b;font-size:11px;gap:13px}.hero-note{color:#d0ddcd;font-size:8px;padding-top:39px;letter-spacing:.025em}.hero-note .dot{background:var(--lime)}.hero-image{height:650px;background:var(--forest)}.hero-image>img{object-position:53% 50%}.hero-image .image-index{background:var(--lime);color:var(--ink);padding:7px 10px;left:20px;top:20px;font-size:8px;font-weight:600;letter-spacing:.07em}.photo-label{background:var(--ink);padding:15px 22px;gap:20px;font-size:11px;min-height:72px}.photo-label small{font-size:9px}.photo-label .round-arrow{border-radius:0;border-color:#91a89b}.hero-bottom{background:var(--lime);padding:20px 24px;border:0;margin:0}.hero-bottom p{font-family:var(--sans);font-size:16px;letter-spacing:-.035em;font-weight:600}.hero-bottom>span{color:var(--ink);font-size:8px;letter-spacing:.1em}.intro{padding-top:80px;padding-bottom:80px}.intro-copy>p{font-size:clamp(28px,3vw,44px);line-height:1.25;letter-spacing:-.045em;font-weight:500}.intro-copy>p em{font-weight:500}.section-heading h2{font-size:clamp(46px,5vw,72px);line-height:1.04}.project-visual{background:#e8eee2}.project-visual img,.hero-image>img,.approach-image img,.studio-photo img,.workshop-image img,.case-hero img,.gallery-figure img{filter:none}.project-open{border-radius:0;background:var(--lime);color:var(--ink)}.project-visual .tag{background:var(--white);color:var(--ink);font-weight:600}.project-info h3{font-family:var(--sans);font-weight:500;font-size:27px;letter-spacing:-.05em}.project-info p{font-size:10px}.approach-section{background:#15342b}.approach-copy h2{font-size:clamp(44px,4.4vw,64px);line-height:1.06}.approach-copy h2 em{color:var(--lime)}.services-section{background:var(--pale);padding-top:85px;padding-bottom:85px}.services-intro h2{font-size:clamp(44px,4.3vw,65px)}.service-list h3{font-family:var(--sans);font-size:26px;letter-spacing:-.05em;font-weight:500}.service-list{border-color:#bdcdb9}.service-list details{border-color:#bdcdb9}.process-heading h2{font-size:35px}.process-step h3{font-family:var(--sans);font-size:25px;font-weight:500;letter-spacing:-.04em}.studio-section{background:var(--lime);color:var(--ink)}.studio-copy h2{font-size:clamp(42px,4.35vw,64px)}.studio-copy>p{color:#304c38}.workshop-copy h2{font-size:clamp(45px,4.4vw,65px)}.workshop-copy h2 em{color:var(--accent)}.faq-section h2{font-size:36px}.contact-section{background:var(--forest)}.contact-head h2{font-size:clamp(57px,6.4vw,92px)}.contact-head h2 em{color:var(--lime)}.form-bottom .pill-button{background:var(--lime);border-color:var(--lime);color:var(--ink)}.form-bottom .pill-button:hover{background:white;border-color:white}.site-footer{background:#112d24;color:white}.site-footer .brand-symbol{background:var(--paper);mix-blend-mode:normal}.footer-bottom{border-color:#536e5d;color:#c1cebf}.footer-note{color:#c1cebf}.filter-button{border-radius:0;font-weight:500}.page-intro h1{font-size:clamp(60px,7vw,100px)}.page-intro h1 em{color:var(--accent)}.small-cta{background:var(--lime)}.small-cta h2{font-size:clamp(34px,3.8vw,55px)}.case-heading h1{font-size:clamp(54px,6.8vw,91px)}.case-story h2{font-size:41px;letter-spacing:-.05em;line-height:1.12}.case-next a{font-family:var(--sans);font-size:33px;letter-spacing:-.05em;font-weight:500}.case-next .text-link{font-size:12px;letter-spacing:normal}.legal-content h1{font-size:60px}.legal-content h2{font-family:var(--sans);font-size:23px;letter-spacing:-.04em;font-weight:500}.project-visual.portrait-source img{object-position:50% 0}.source-note{color:var(--muted);font-size:10px;max-width:650px;padding-top:12px;line-height:1.75}
@media(max-width:1150px){.hero-copy{padding-inline:30px}.hero h1{font-size:clamp(56px,6.1vw,76px)}.hero-actions{flex-direction:column;align-items:flex-start;gap:13px}.hero-copy>p{font-size:12px}.hero-grid{min-height:625px}.hero-image{height:625px}.hero-note{font-size:7px}.project-info h3{font-size:25px}}
@media(max-width:900px){.hero-copy{padding-inline:25px}.hero h1{font-size:59px}.hero-image{height:600px}.hero-grid{min-height:600px}.hero-copy .eyebrow{font-size:7px;letter-spacing:.08em}.hero-note{font-size:6px;gap:6px}.approach-copy h2{font-size:44px}.service-list h3{font-size:24px}.services-intro h2{font-size:46px}.studio-copy h2{font-size:43px}.contact-head h2{font-size:67px}.hero-bottom p{font-size:14px}.case-heading h1{font-size:65px}}
@media(max-width:700px){html{scroll-padding-top:85px}.site-header{height:84px}.mobile-nav{background:white}.brand-name{font-size:24px}.brand-name small{font-size:6.5px}.hero{padding-top:18px}.hero-grid{display:flex;flex-direction:column;gap:0;min-height:0}.hero-copy{padding:35px 25px 29px;min-height:0}.hero-copy .eyebrow{font-size:7.4px;letter-spacing:.1em}.hero h1{font-size:clamp(51px,12.3vw,77px);margin:30px 0 24px;line-height:1.02}.hero-copy>p{font-size:12px;max-width:390px}.hero-actions{flex-direction:row;gap:20px;align-items:center}.hero-actions .pill-button{font-size:9px;gap:15px;padding:14px 13px;min-height:46px}.hero-actions .text-link{font-size:10px;gap:10px}.hero-note{font-size:6.9px;padding-top:29px;gap:7px}.hero-image{height:auto;aspect-ratio:1.3}.hero-image>img{object-position:50% 47%;height:100%}.hero-image .image-index{font-size:6.5px;left:12px;top:12px;padding:6px 8px}.photo-label{min-height:58px;padding:11px 15px;font-size:10px}.photo-label small{font-size:8px}.photo-label .round-arrow{width:30px;height:30px}.hero-bottom{padding:17px 18px;gap:22px}.hero-bottom p{font-size:12px;max-width:230px}.hero-bottom>span{font-size:6px;max-width:75px}.intro{padding-block:57px}.intro-copy>p{font-size:29px;line-height:1.25}.section-heading h2{font-size:45px;letter-spacing:-.06em}.project-info h3{font-size:24px;line-height:1.16}.project-info p{font-size:9px}.approach-copy h2{font-size:43px;line-height:1.08}.services-section{padding-block:56px}.services-intro h2{font-size:44px;line-height:1.08}.service-list h3{font-size:23px}.process-heading h2{font-size:29px;letter-spacing:-.05em}.process-step h3{font-size:23px}.studio-copy h2{font-size:40px;line-height:1.12}.workshop-copy h2{font-size:42px;line-height:1.08}.faq-section h2{font-size:34px;line-height:1.15}.contact-head h2{font-size:clamp(50px,11.6vw,76px);line-height:1.04}.contact-direct{font-size:11px}.page-intro h1{font-size:56px;line-height:1.07}.small-cta h2{font-size:33px;line-height:1.14}.case-heading h1{font-size:53px;line-height:1.06}.case-story h2{font-size:32px;line-height:1.2}.case-next a{font-size:25px;line-height:1.2}.case-next .text-link{font-size:9px}.legal-content h1{font-size:49px;line-height:1.08}.legal-content h2{font-size:21px;line-height:1.2}.source-note{font-size:9px}.portfolio-controls{gap:7px}.filter-button{font-size:9px;padding:8px 11px}}

/* Current Vernáculo identity: supplied wooden emblem, preserved in color. */
.brand-symbol{width:74px;height:60px;filter:none;mix-blend-mode:normal;background:transparent}
.brand-symbol img{width:74px;height:74px;left:0;top:0;object-fit:contain}
.brand{gap:12px}
.brand-name{font-size:21px;font-weight:600;letter-spacing:.14em;line-height:1.15}
.brand-name small{font-size:8px;font-weight:500;letter-spacing:.11em;line-height:1.4;margin-top:8px}
.studio-photo img,.workshop-image img{height:auto}
.site-footer .brand-symbol{background:transparent;width:98px;height:78px}
.site-footer .brand-symbol img{width:98px;height:98px}
.image-journal{background:var(--pale);padding-top:78px;padding-bottom:82px}
.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.journal-card{position:relative;background:white;min-width:0}
.journal-photo{height:290px;overflow:hidden;background:#dce4d5}
.journal-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.journal-card:hover img{transform:scale(1.035)}
.journal-info{display:flex;gap:20px;justify-content:space-between;padding:17px 18px;font-size:12px;font-weight:500;line-height:1.5}
.journal-info small{display:block;margin-top:5px;font-size:9px;color:var(--muted);font-weight:400}
.journal-info>span:last-child{font-size:20px;color:var(--accent)}
@media(max-width:900px){.brand-symbol{width:61px;height:49px}.brand-symbol img{width:61px;height:61px}.brand{gap:9px}.journal-photo{height:235px}.journal-info{font-size:11px}}
@media(max-width:700px){.brand-symbol{width:61px;height:49px}.brand-symbol img{width:61px;height:61px}.brand-name{font-size:18px;letter-spacing:.1em}.brand-name small{font-size:7.4px;letter-spacing:.08em;margin-top:6px}.image-journal{padding-block:55px}.journal-grid{grid-template-columns:1fr 1fr;gap:15px}.journal-photo{height:210px}.journal-info{padding:12px;font-size:10px;gap:10px}.journal-info small{font-size:8px}.journal-card:first-child{grid-column:1/-1}.journal-card:first-child .journal-photo{height:280px}}

/* The supplied logo is displayed whole, with its original lettering and ratio. */
.workshop-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;width:100%;margin-top:2px}
.workshop-gallery-card{display:block;background:var(--pale);overflow:hidden}
.workshop-gallery-card img{display:block;width:100%;height:210px;object-fit:cover;transition:transform .35s}
.workshop-gallery-card:hover img{transform:scale(1.025)}
.workshop-gallery-card figcaption{padding:15px 16px;line-height:1.6}
.workshop-gallery-card strong{font-weight:500;font-size:12px;display:block}
.workshop-gallery-card figcaption span{font-size:10px;color:var(--muted);display:block;margin-top:5px}
@media(max-width:900px){.workshop-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.workshop-gallery-card img{height:220px}}
@media(max-width:700px){.workshop-gallery{gap:14px;margin-top:6px}.workshop-gallery-card img{height:155px}.workshop-gallery-card figcaption{padding:12px}.workshop-gallery-card strong{font-size:11px}.workshop-gallery-card figcaption span{font-size:9px}}
.site-header{height:150px}
.brand-complete{display:block;width:130px;height:130px;object-fit:contain;filter:none;mix-blend-mode:normal}
.site-footer .brand-complete{width:176px;height:176px}
@media(max-width:700px){html{scroll-padding-top:136px}.site-header{height:124px}.brand-complete{width:108px;height:108px}.mobile-nav{top:124px}.site-footer .brand-complete{width:165px;height:165px}}

.villa-nury-gallery{grid-template-columns:minmax(0,1fr)}.villa-nury-gallery .image-button{height:auto;aspect-ratio:auto}.villa-nury-gallery img{width:100%;height:auto;object-fit:contain}

.classification-selection{padding-block:45px 65px;border-top:1px solid var(--line)}
.classification-selection[hidden]{display:none}
.classification-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.classification-photo-grid .image-button{display:block;background:var(--paper)}
.classification-photo-grid img{width:100%;height:auto}
.classification-photo-grid figcaption{padding-top:12px;font-size:13px}
@media(max-width:700px){.classification-photo-grid{grid-template-columns:1fr;gap:28px}.classification-selection{padding-block:30px 40px}}
