@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202420;--soft:#6c726c;--accent:#ed6a2a;--paper:#f5f5f0;--line:#d9ddd5;--night:#18211c;--wrap:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3,h4,button,.brand{font-family:Manrope,Arial,sans-serif}h1,h2,h3,h4,p{margin-top:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button,input,select,textarea,summary{outline-offset:6px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}img{display:block;max-width:100%}button{border-radius:0}::selection{background:var(--accent);color:#fff}[hidden]{display:none!important}.wrap{width:min(var(--wrap),calc(100% - 112px));margin:auto}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:14px}.eyebrow:before{content:'';display:block;width:22px;height:2px;background:var(--accent)}.eyebrow b{font-weight:400;opacity:.55;margin-left:12px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;line-height:1;font-weight:800;letter-spacing:-.8px}.brand img{width:64px;height:40px;object-fit:contain}.brand small{display:block;letter-spacing:3.2px;font-size:9px;font-weight:500;margin-top:10px}.site-header{height:104px;position:absolute;top:0;left:0;right:0;z-index:30;color:#fff;border-bottom:1px solid #ffffff30}.site-header.solid{position:relative;color:var(--ink);border-color:var(--line)}.site-header .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.navigation{display:flex;align-items:center;gap:30px;font-size:14px}.navigation>a{position:relative}.navigation>a:not(.nav-cta):after{content:'';height:1px;width:0;background:currentColor;position:absolute;left:0;bottom:-8px;transition:width .3s}.navigation>a:hover:after,.navigation>a[aria-current=page]:after{width:100%}.nav-cta{margin-left:10px;border:1px solid #ffffff75;padding:14px 20px;display:flex;align-items:center;gap:25px}.solid .nav-cta{border-color:var(--line)}.nav-cta:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.menu{display:none;background:none;border:1px solid #ffffff60;color:inherit;padding:10px 14px}.solid .menu{border-color:var(--line)}.hero-new{position:relative;min-height:780px;height:min(920px,100svh);background:#202d23;color:#fff;isolation:isolate}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;z-index:-3}.hero-new:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,19,15,.79) 0%,rgba(8,19,15,.4) 52%,rgba(8,19,15,.08)),linear-gradient(0deg,rgba(5,19,12,.7),transparent 44%,rgba(10,20,13,.25));z-index:-2}.hero-content{padding-top:210px;padding-bottom:145px}.hero-new h1{font-size:clamp(64px,7.4vw,112px);line-height:1.06;letter-spacing:-5px;font-weight:400;margin:30px 0 30px}.hero-new h1 em,.display-title em{font-family:Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-4px}.hero-description{max-width:400px;color:#e3e7df;font-size:16px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;gap:35px;border:1px solid var(--accent);background:var(--accent);color:#202420;padding:17px 25px;font-size:14px;font-weight:600;min-height:54px;transition:background .2s,transform .2s}.button:hover{background:#fa8345;transform:translateY(-2px)}.button.dark{background:var(--night);color:#fff;border-color:var(--night)}.button.white{background:#fff;border-color:#fff}.button.ghost{background:transparent;color:inherit;border-color:var(--line)}.link-line{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-flex;gap:24px;align-items:center}.hero-bottom{position:absolute;bottom:0;left:0;width:100%;padding:25px 0}.hero-bottom .wrap{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid #ffffff35;padding-top:23px;gap:30px}.hero-bottom p{margin:0;font-size:13px;color:#e0e5df}.hero-tag{display:flex;gap:18px;align-items:center;font-size:13px}.hero-tag span:first-child{font-size:32px;font-family:Georgia,serif;font-style:italic}.hero-tag strong{display:block;font-size:14px;font-weight:500}.hero-tag small{color:#c8d1c7}.scroll-link{display:flex;gap:14px;align-items:center;font-size:12px}.round-arrow{display:inline-flex;width:45px;height:45px;border:1px solid #ffffff60;border-radius:50%;align-items:center;justify-content:center;font-size:20px}.intro-strip{padding:28px 0;border-bottom:1px solid var(--line)}.intro-strip .wrap{display:flex;justify-content:space-between;gap:28px;color:#626e61;font-size:13px}.intro-strip strong{color:var(--ink);font-weight:500}.section{padding:112px 0}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:54px}.display-title{font-size:clamp(40px,4.3vw,67px);line-height:1.12;font-weight:400;letter-spacing:-2.8px;margin:22px 0 0}.display-title em{letter-spacing:-1.8px}.section-title p{max-width:335px;color:var(--soft);margin:0;line-height:1.75}.section-title .link-line{white-space:nowrap}.introduction{display:grid;grid-template-columns:.7fr 1.7fr;gap:80px;padding:94px 0}.introduction h2{font-size:clamp(28px,3vw,43px);font-weight:400;letter-spacing:-1.4px;line-height:1.4;margin:0}.introduction h2 span{color:#8b9389}.intro-under{display:flex;justify-content:space-between;gap:50px;margin-top:30px;align-items:flex-start}.intro-under p{color:var(--soft);font-size:15px;max-width:410px;margin:0}.project-featured-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:68px 42px}.project-featured-grid .project-card:nth-child(even){padding-top:110px}.image-wrap{overflow:hidden;background:#dfe3da;position:relative}.image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.6,.3,1)}.project-card:hover .image-wrap img,.service-tile:hover img{transform:scale(1.035)}.project-card .image-wrap{height:470px}.project-featured-grid .project-card:nth-child(even) .image-wrap{height:380px}.project-image-tag{position:absolute;top:20px;left:20px;background:#fff;padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:1.2px}.project-go{position:absolute;right:20px;bottom:20px;width:52px;height:52px;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;font-size:25px;transition:background .2s}.project-card:hover .project-go{background:var(--accent)}.project-description{display:flex;justify-content:space-between;align-items:flex-start;padding-top:24px;gap:20px}.project-description small{color:#7e897d;font-size:12px;text-transform:uppercase;letter-spacing:1.4px}.project-description h3{font-size:27px;font-weight:500;letter-spacing:-.8px;margin:7px 0 0;line-height:1.2}.project-description>span{font-size:15px;border-left:1px solid var(--line);padding-left:20px;margin-top:7px;white-space:nowrap}.projects-section{background:#fff}.services-section{background:#e9ede6}.service-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:start}.service-photo{position:sticky;top:40px}.service-photo img{height:620px;width:100%;object-fit:cover}.service-photo figcaption{font-size:12px;margin-top:14px;display:flex;justify-content:space-between;color:var(--soft)}.service-photo figure{margin:0}.service-list{border-top:1px solid #bac5b9}.service-row{padding:26px 0;border-bottom:1px solid #bac5b9;display:grid;grid-template-columns:30px 1fr 24px;gap:16px;align-items:start}.service-row>span{font-size:12px;color:#71816e;margin-top:7px}.service-row h3{font-size:25px;letter-spacing:-.6px;font-weight:500;line-height:1.3;margin:0}.service-row p{color:var(--soft);font-size:14px;line-height:1.6;margin:10px 0 0;max-width:330px}.service-row>i{font-size:24px;font-style:normal}.service-row:hover h3{color:#b34919}.philosophy{background:var(--night);color:white;position:relative;overflow:hidden}.philosophy-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}.philosophy .display-title{font-size:clamp(38px,4vw,61px)}.philosophy p{color:#b8c6b7;font-size:16px;max-width:490px;margin:28px 0}.philosophy img{width:100%;height:620px;object-fit:cover}.philosophy .link-line{color:#ecf0e8}.numbered-points{display:flex;gap:40px;border-top:1px solid #ffffff25;margin-top:34px;padding-top:24px}.numbered-points strong{display:block;font-size:19px;font-weight:500}.numbered-points small{display:block;color:#aebeaa;margin-top:8px;font-size:13px}.philosophy .caption{font-size:12px;margin-top:12px;color:#aebeaa}.process-layout{display:grid;grid-template-columns:.9fr 1.2fr;gap:100px}.process-intro{position:sticky;top:40px;align-self:start}.process-intro>p{color:var(--soft);margin:25px 0;max-width:320px}.process-step{padding:30px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:60px 1fr;gap:25px}.process-step>span{font-size:32px;font-family:Georgia,serif;font-style:italic;color:#a7b0a2}.process-step h3{font-size:24px;font-weight:500;letter-spacing:-.5px;margin-bottom:12px}.process-step p{color:var(--soft);font-size:15px;margin:0;max-width:460px}.catalog-band{padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#ecefe8}.catalog-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.catalog-band h2{font-size:31px;font-weight:400;letter-spacing:-1px;margin:0}.catalog-band p{color:var(--soft);margin:8px 0 0;font-size:14px}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.faq-grid>div>p{color:var(--soft);max-width:300px;margin:24px 0}.faq details{padding:22px 0;border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:22px;font-weight:500;font-size:16px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:var(--soft);font-size:25px;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--soft);font-size:15px;padding-right:25px;margin:18px 0 0}.contact-banner{background:var(--accent);padding:80px 0}.contact-banner .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}.contact-banner h2{font-size:clamp(40px,5vw,72px);letter-spacing:-3px;font-weight:400;line-height:1.1;margin:0}.contact-banner h2 em{font-family:Georgia,serif;font-weight:400}.contact-banner p{font-size:15px;margin:22px 0 0}.big-circle{display:flex;align-items:center;justify-content:center;width:104px;height:104px;flex-shrink:0;border:1px solid #20242080;border-radius:50%;font-size:45px;transition:background .25s}.big-circle:hover{background:var(--ink);color:#fff}.footer{padding:70px 0 25px;background:var(--night);color:#e9eee4}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:60px}.footer h3{font-size:12px;letter-spacing:1.7px;text-transform:uppercase;font-weight:500;color:#9ba994;margin-bottom:22px}.footer p{color:#9fac97;font-size:14px;max-width:330px}.footer .brand{margin-bottom:25px;font-size:24px}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px}.footer-links a:hover{color:var(--accent)}.footer-phone{font-size:26px;letter-spacing:-1px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:26px;margin-top:58px;border-top:1px solid #ffffff20;font-size:12px;color:#adb9a8}.footer-bottom div{display:flex;gap:25px}.page-heading{padding:65px 0 70px}.breadcrumb{font-size:12px;color:#7d8977;display:flex;gap:12px;margin-bottom:45px}.page-heading .display-title{font-size:clamp(48px,6vw,88px);max-width:1000px;font-weight:400;letter-spacing:-4px}.page-heading p{max-width:510px;color:var(--soft);margin:24px 0 0}.page-heading .wrap{position:relative}.all-projects{display:grid;grid-template-columns:1fr 1fr;gap:70px 36px}.all-projects .project-card .image-wrap{height:460px}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;padding-top:25px;border-top:1px solid var(--line)}.filter-btn{border:1px solid var(--line);background:transparent;padding:10px 18px;font-size:13px;border-radius:30px;color:var(--soft)}.filter-btn[aria-pressed=true]{background:var(--night);color:white;border-color:var(--night)}.filter-btn:hover{border-color:var(--ink)}.count-label{font-size:13px;margin-left:auto;align-self:center;color:var(--soft)}.project-cover{height:650px;position:relative}.project-cover>img{height:100%;width:100%;object-fit:cover}.project-cover .cover-button{position:absolute;bottom:30px;right:30px;background:white}.project-facts{border-bottom:1px solid var(--line);padding:35px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.project-facts small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--soft);margin-bottom:8px}.project-facts strong{font-size:19px;font-weight:500}.story-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px}.story-layout .display-title{font-size:48px}.story-copy>p{font-size:19px;color:#63715e;line-height:1.85}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;margin:35px 0;padding:0;list-style:none}.feature-list li{border-top:1px solid var(--line);padding:17px 0;font-size:14px}.feature-list li:before{content:'+';color:#b04e23;margin-right:12px}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.gallery-grid button{border:0;background:transparent;padding:0;position:relative;overflow:hidden}.gallery-grid button img{width:100%;height:440px;object-fit:cover;transition:transform .5s}.gallery-grid button:hover img{transform:scale(1.025)}.gallery-grid button:after{content:'';position:absolute;bottom:20px;right:20px;background:white;border-radius:50%;width:43px;height:43px;display:grid;place-items:center;font-size:23px}.gallery-grid button:first-child:nth-last-child(odd){grid-column:1/-1}.gallery-grid button:first-child:nth-last-child(odd) img{height:560px}.gallery-label{font-size:13px;color:var(--soft);margin-top:16px}.spec-details{border-top:1px solid var(--line);padding:22px 0}.spec-details summary{font-size:17px;font-weight:600;cursor:pointer}.spec-details p{font-size:15px;color:var(--soft);line-height:1.8}.lightbox{border:0;background:#101710;color:#fff;padding:0;width:96vw;max-width:1600px;height:92vh;max-height:96vh}.lightbox::backdrop{background:#000c}.lightbox-frame{height:100%;display:grid;grid-template-rows:65px minmax(0,1fr) 65px}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;padding:12px 25px;gap:20px;font-size:14px}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{background:transparent;color:white;border:1px solid #ffffff50;padding:7px 15px;min-width:42px;font-size:20px}.lightbox-nav{display:flex;gap:12px}.service-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 30px}.service-tile .image-wrap{height:350px}.service-tile h2{font-size:27px;font-weight:500;letter-spacing:-.8px;margin:20px 0 12px}.service-tile p{font-size:15px;color:var(--soft);margin:0}.service-tile .number{font-size:12px;letter-spacing:1.5px;color:var(--soft);display:block;margin-top:20px}.about-cover{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:end}.about-cover img:first-child{width:100%;height:590px;object-fit:cover}.about-cover img:last-child{width:100%;height:440px;object-fit:cover}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.value-item{border-top:1px solid var(--line);padding-top:25px}.value-item>span{font-family:Georgia;font-style:italic;font-size:32px;color:#9da993}.value-item h3{font-size:23px;font-weight:500;margin:15px 0}.value-item p{font-size:15px;color:var(--soft)}.contact-layout{display:grid;grid-template-columns:.75fr 1.3fr;gap:95px}.contact-info{align-self:start;position:sticky;top:30px}.contact-info h2{font-size:34px;font-weight:400;letter-spacing:-1px;line-height:1.25}.contact-block{padding:24px 0;border-bottom:1px solid var(--line)}.contact-block small{display:block;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--soft);margin-bottom:10px}.contact-block a{font-size:23px;letter-spacing:-.5px}.contact-block p{font-size:15px;line-height:1.7;margin:0;color:var(--soft)}.quote-shell{background:#fff;padding:40px;border:1px solid var(--line)}.quote-progress{display:flex;justify-content:space-between;gap:12px;margin-bottom:40px}.progress-item{border-top:2px solid #e3e7df;padding-top:12px;flex:1;font-size:12px;color:#8c9684}.progress-item.active{border-color:var(--accent);color:var(--ink)}.quote-shell h2{font-size:31px;line-height:1.3;letter-spacing:-1px;font-weight:500;margin-bottom:12px}.quote-shell .hint{color:var(--soft);font-size:14px;margin-bottom:24px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{position:relative;cursor:pointer;padding:20px;border:1px solid var(--line);display:flex;gap:15px;align-items:center;font-size:14px;font-weight:500;min-height:95px}.choice:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#fff8f1}.choice input{width:17px;height:17px;accent-color:var(--accent);flex-shrink:0}.choice span{display:block}.choice small{display:block;font-size:12px;font-weight:400;color:var(--soft);margin-top:5px}.quote-shell label:not(.choice){display:block;font-size:13px;margin:20px 0 7px;font-weight:500}.quote-shell input:not([type=radio]):not([type=checkbox]),.quote-shell select,.quote-shell textarea{border:1px solid var(--line);background:#fafbf8;border-radius:0;width:100%;padding:14px;color:var(--ink);font-size:15px}.quote-shell textarea{min-height:110px;resize:vertical}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:28px;margin-top:32px}.back-btn{border:0;background:none;color:var(--soft);font-size:14px;padding:12px 0}.quote-actions .button{margin-left:auto}.quote-recap{background:var(--paper);padding:18px 20px;font-size:13px;display:flex;justify-content:space-between;gap:20px}.quote-recap span{color:var(--soft)}.consent{display:flex!important;align-items:flex-start;gap:12px;font-size:12px!important;font-weight:400!important;color:var(--soft)}.consent input{margin-top:5px;accent-color:var(--accent)}.quote-error{color:#a52d14;font-size:14px;margin:16px 0}.quote-success{text-align:center;padding:35px 0}.success-symbol{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#edf1e8;color:#315b2e;font-size:32px;margin:0 auto 25px}.quote-success p{color:var(--soft)}.quote-reference{font-size:13px;padding:12px;background:var(--paper);display:inline-block;margin:10px 0 30px}.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.legal{max-width:800px;margin:auto}.legal h2{font-size:25px;font-weight:500;margin:32px 0 15px}.legal p{color:var(--soft)}.skip{position:fixed;top:-70px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.reveal{animation:rise .7s both}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.hero-content{padding-top:230px}.hero-new h1{font-size:118px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.navigation{gap:20px}.nav-cta{padding:12px 16px;margin-left:0}.hero-new h1{font-size:86px}.hero-content{padding-top:200px}.section{padding:85px 0}.service-layout,.philosophy-grid,.process-layout,.faq-grid,.contact-layout{gap:50px}.project-card .image-wrap{height:400px}.project-featured-grid .project-card:nth-child(even) .image-wrap{height:340px}.project-featured-grid{gap:45px 28px}.story-layout{gap:65px}.project-cover{height:520px}.service-tiles{gap:40px 24px}.service-tile .image-wrap{height:280px}.footer-phone{font-size:22px}.quote-shell{padding:28px}.all-projects .project-card .image-wrap{height:350px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.site-header{height:84px}.menu{display:block}.navigation{display:none;position:absolute;top:84px;left:0;width:100%;background:var(--night);padding:30px 24px;color:#fff;flex-direction:column;align-items:stretch;gap:24px;border-bottom:1px solid #ffffff30}.navigation.open{display:flex}.navigation .nav-cta{width:max-content;margin-top:5px}.brand{font-size:17px}.brand img{width:53px}.brand small{font-size:8px;letter-spacing:2.9px}.hero-new{min-height:780px;height:94svh;max-height:980px}.hero-image{object-position:61% center}.hero-new:after{background:linear-gradient(90deg,#0d2016b8,#0e211662),linear-gradient(0deg,#0b1a13a8,transparent 70%)}.hero-content{padding-top:180px;padding-bottom:170px}.hero-new h1{font-size:clamp(62px,11vw,84px);letter-spacing:-3px;line-height:1.08}.hero-new h1 em{letter-spacing:-2.6px}.hero-description{font-size:15px;max-width:310px}.hero-actions{gap:24px}.hero-bottom .wrap{gap:15px}.hero-bottom .hero-tag{display:none}.hero-bottom p{font-size:11px;max-width:180px}.scroll-link{font-size:11px;gap:10px}.intro-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px}.introduction{grid-template-columns:1fr;gap:30px;padding:65px 0}.introduction h2{font-size:31px;line-height:1.4}.intro-under{gap:25px;flex-direction:column}.section{padding:65px 0}.section-title{margin-bottom:35px;gap:25px}.section-title p{font-size:14px;max-width:240px}.display-title{font-size:43px;letter-spacing:-1.8px}.section-title>.link-line{font-size:12px}.project-featured-grid{gap:35px 22px}.project-card .image-wrap{height:360px}.project-featured-grid .project-card:nth-child(even){padding-top:75px}.project-featured-grid .project-card:nth-child(even) .image-wrap{height:285px}.project-description{display:block;padding-top:18px}.project-description h3{font-size:23px}.project-description>span{display:block;border:0;padding:0;font-size:13px;margin-top:10px}.project-description small{font-size:10px}.service-layout{grid-template-columns:1fr;gap:35px}.service-photo{position:static}.service-photo img{height:420px}.service-row h3{font-size:24px}.service-row p{max-width:100%}.philosophy-grid{grid-template-columns:1fr;gap:40px}.philosophy img{height:450px}.philosophy .display-title{font-size:43px}.process-layout,.faq-grid,.story-layout,.contact-layout{grid-template-columns:1fr;gap:35px}.process-intro,.contact-info{position:static}.process-intro>p{max-width:100%}.process-step{gap:10px;grid-template-columns:50px 1fr}.catalog-band h2{font-size:26px}.catalog-band .wrap{gap:25px}.catalog-band .button{white-space:nowrap}.contact-banner h2{font-size:49px;letter-spacing:-2px}.big-circle{width:80px;height:80px;font-size:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:11px}.page-heading{padding:40px 0 50px}.breadcrumb{margin-bottom:30px}.page-heading .display-title{font-size:53px;letter-spacing:-2px}.all-projects{gap:40px 22px}.all-projects .project-card .image-wrap{height:300px}.project-cover{height:420px}.project-facts{grid-template-columns:1fr 1fr;gap:25px;padding:25px 0}.story-layout .display-title{font-size:39px}.story-copy>p{font-size:17px}.gallery-grid{gap:16px}.gallery-grid button img{height:280px}.gallery-grid button:first-child:nth-last-child(odd) img{height:400px}.service-tiles{grid-template-columns:1fr 1fr}.service-tile .image-wrap{height:300px}.about-cover{gap:20px}.about-cover img:first-child{height:400px}.about-cover img:last-child{height:300px}.value-grid{gap:25px}.value-item h3{font-size:20px}.contact-info h2{font-size:30px}}
@media(max-width:520px){.hero-new{height:820px;min-height:780px}.hero-content{padding-top:170px}.hero-new h1{font-size:65px}.hero-new .eyebrow{font-size:10px;letter-spacing:1.5px}.hero-description{max-width:295px}.hero-actions{flex-direction:column;align-items:flex-start;gap:25px}.hero-actions .button{padding:15px 22px}.hero-bottom{padding-bottom:22px}.section-title{display:block}.section-title>p,.section-title>.link-line{margin-top:25px}.section-title>p{max-width:100%}.display-title{font-size:40px}.project-featured-grid,.all-projects{grid-template-columns:1fr;gap:38px}.project-featured-grid .project-card:nth-child(even){padding-top:0}.project-card .image-wrap,.project-featured-grid .project-card:nth-child(even) .image-wrap,.all-projects .project-card .image-wrap{height:350px}.project-description{display:flex}.project-description>span{border-left:1px solid var(--line);padding-left:14px}.project-description h3{font-size:23px}.service-photo img{height:390px}.service-row{padding:23px 0;gap:10px;grid-template-columns:25px 1fr 20px}.service-row h3{font-size:22px}.philosophy img{height:420px}.numbered-points{gap:28px}.philosophy .display-title{font-size:39px}.catalog-band .wrap{display:block}.catalog-band .button{margin-top:24px}.contact-banner .wrap{align-items:flex-start}.contact-banner h2{font-size:40px;letter-spacing:-1.8px}.contact-banner p{max-width:250px;font-size:13px}.big-circle{width:57px;height:57px;font-size:27px}.contact-banner{padding:58px 0}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:first-child{grid-column:auto}.footer .brand{font-size:21px}.footer-bottom div{gap:20px;flex-wrap:wrap}.page-heading .display-title{font-size:47px}.count-label{margin-left:0;width:100%}.project-cover{height:360px}.project-cover .cover-button{bottom:16px;right:16px;padding:12px 16px}.project-facts strong{font-size:16px}.feature-list{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-grid button img,.gallery-grid button:first-child:nth-last-child(odd) img{height:330px}.service-tiles{grid-template-columns:1fr}.service-tile .image-wrap{height:360px}.about-cover{grid-template-columns:1fr}.about-cover img:first-child{height:390px}.about-cover img:last-child{height:300px}.value-grid{grid-template-columns:1fr;gap:30px}.quote-shell{padding:25px 18px}.choice-grid{gap:10px}.choice{padding:15px 12px;font-size:13px;gap:10px;min-height:100px}.choice small{font-size:11px}.quote-shell h2{font-size:26px}.progress-item{font-size:10px}.form-columns{grid-template-columns:1fr;gap:0}.quote-actions .button{gap:20px}.lightbox{width:100vw;height:92vh;max-width:100vw}.lightbox-top,.lightbox-bottom{padding:12px 15px}.contact-info .contact-block a{font-size:22px}}
.home-catalog{background:#e9ede6;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.catalog-cover{display:block;position:relative;background:white;box-shadow:0 18px 48px #18211c1c;transition:transform .3s}.catalog-cover:hover{transform:translateY(-4px)}.catalog-cover img{width:100%;height:auto}.catalog-cover-link{display:flex;justify-content:space-between;padding:16px 22px;background:var(--night);color:white;font-size:13px}.catalog-copy .display-title{font-size:clamp(36px,3.6vw,56px)}.catalog-copy p{color:var(--soft);max-width:430px;margin:25px 0 20px;font-size:16px}.catalog-meta{font-size:12px;letter-spacing:1px;color:var(--soft);display:flex;gap:13px}.catalog-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.catalog-actions .link-line{white-space:nowrap}@media(max-width:1000px){.catalog-feature{gap:38px}.catalog-actions{flex-wrap:wrap;gap:22px}}@media(max-width:700px){.catalog-feature{grid-template-columns:1fr;gap:36px}.catalog-copy .display-title{font-size:39px}.catalog-cover{max-width:540px;width:100%;margin:auto}.catalog-actions .button{padding:15px 20px}.catalog-actions{gap:24px}}
.site-header,.site-header.solid{position:fixed;transition:height .25s ease,background-color .25s ease,color .25s ease,box-shadow .25s ease}.site-header.solid{background:var(--paper)}.site-header.solid+main{padding-top:104px}.site-header.is-scrolled{height:76px;background:var(--night);color:white;border-color:#ffffff30;box-shadow:0 4px 24px #00000012}.site-header.is-scrolled .nav-cta,.site-header.is-scrolled .menu{border-color:#ffffff60}.service-photo,.process-intro,.contact-info{top:105px}.lightbox img{touch-action:pan-y pinch-zoom;user-select:none}.progress-item{transition:color .25s ease,background-color .25s ease}.lightbox[open]{animation:rise .22s ease both}
@media(max-width:800px){.site-header.solid+main{padding-top:84px}.site-header.is-scrolled{height:68px}.navigation{top:100%;max-height:calc(100dvh - 84px);overflow-y:auto}.site-header.is-scrolled .navigation{max-height:calc(100dvh - 68px)}}
.email-contact{max-width:980px;padding:64px;background:#e9ede6;border:1px solid var(--line)}.email-contact .display-title{margin:20px 0 32px}.email-address{display:inline-block;font-size:clamp(22px,3.4vw,46px);font-family:Manrope,Arial,sans-serif;letter-spacing:-1px;border-bottom:1px solid var(--ink);overflow-wrap:anywhere;max-width:100%;line-height:1.4}.email-contact>p{max-width:540px;color:var(--soft);margin:28px 0}.email-contact .email-note{font-size:14px;margin-bottom:0;max-width:490px}@media(max-width:800px){.email-contact{padding:32px 24px}.email-address{letter-spacing:-.5px}}
.whatsapp-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:20;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:58px;padding:14px 21px;border-radius:40px;background:#087c44;color:#fff;box-shadow:0 6px 24px #18211c30;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.whatsapp-float:hover{background:#066638;transform:translateY(-2px)}.whatsapp-float:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.footer{padding-bottom:100px}@media(max-width:800px){.whatsapp-float{right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:58px;height:58px;padding:0}.whatsapp-float span{display:none}}@media print{.whatsapp-float{display:none}}
.contact-hub{padding:0 0 90px;scroll-margin-top:100px}.contact-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}.contact-method{padding:34px;display:flex;flex-direction:column;min-width:0;background:#fff}.contact-method+.contact-method{border-left:1px solid var(--line)}.contact-method-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:30px}.contact-method-top>span:last-child{font-size:12px;color:var(--soft)}.contact-method h2{font-size:24px;font-weight:500;letter-spacing:-.7px;line-height:1.3;margin-bottom:16px}.contact-method p{color:var(--soft);font-size:15px;max-width:320px;margin-bottom:30px}.contact-detail{font-size:clamp(20px,2.1vw,30px);font-family:Manrope,Arial,sans-serif;letter-spacing:-.8px;overflow-wrap:anywhere;line-height:1.4;margin-top:auto}.contact-email{font-size:clamp(17px,1.65vw,25px)}.contact-method .link-line{align-self:flex-start;margin-top:22px}.contact-method-featured{background:#e9ede6}.contact-location{display:grid;grid-template-columns:.8fr 1.2fr;margin-top:70px;background:var(--night);color:#fff}.office-details{padding:50px}.office-details .display-title{font-size:clamp(38px,4vw,56px);margin-bottom:30px}.office-details address{font-style:normal;font-size:19px;line-height:1.7}.office-details address span{display:block;color:#b9c4b8;font-size:12px;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:10px}.office-details>p{font-size:14px;max-width:300px;color:#c9d2c8;margin:24px 0}.office-map{min-width:0;display:flex;flex-direction:column;background:#e9ede6;color:var(--ink)}.office-map iframe{display:block;width:100%;flex:1;min-height:430px;border:0}.map-caption{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:20px 24px;font-size:12px;flex-wrap:wrap}.map-caption a{text-decoration:underline;text-underline-offset:4px}.contact-preparation{display:grid;grid-template-columns:1fr 2fr;gap:36px;padding-top:40px}.contact-preparation p{margin:0;color:var(--soft);max-width:720px}.contact-preparation .eyebrow{align-self:start;margin-top:5px}@media(max-width:1100px){.contact-method{padding:26px}.contact-method h2{font-size:21px}.office-details{padding:36px}}@media(max-width:800px){.contact-methods{grid-template-columns:1fr}.contact-method+.contact-method{border-left:0;border-top:1px solid var(--line)}.contact-method{padding:28px}.contact-method-top{margin-bottom:20px}.contact-method p{max-width:100%;margin-bottom:22px}.contact-detail{font-size:27px}.contact-email{font-size:23px}.contact-location{grid-template-columns:1fr;margin-top:40px}.office-details{padding:32px}.office-map iframe{min-height:350px}.contact-preparation{grid-template-columns:1fr;gap:18px}.contact-hub{padding-bottom:60px}}@media(max-width:380px){.contact-method,.office-details{padding:22px}.contact-email{font-size:20px}.map-caption{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Vector arrows stay consistent across desktop and mobile fonts. */
.arrow-icon{display:inline-block;width:1.2em;height:1.2em;flex-shrink:0;vertical-align:-.2em}
.gallery-grid button:after{background:#fff url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23202420%27 stroke-width=%271.7%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M6 18 18 6M6 6h12v12%27/%3E%3C/svg%3E") center/24px 24px no-repeat}
