
:root{--ink:#17191a;--ink-2:#232627;--charcoal:#373c3e;--muted:#717778;--line:#e5e6e3;--paper:#f7f7f4;--white:#fff;--yellow:#f5c21b;--yellow-dark:#dfa900;--green:#244a40;--font:'DM Sans',Arial,sans-serif;--display:'Manrope','DM Sans',Arial,sans-serif;--wrap:1200px;--header:80px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}::selection{background:var(--yellow);color:var(--ink)}.container{width:min(var(--wrap),calc(100% - 52px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;background:var(--yellow);color:var(--ink);padding:10px 14px}.skip-link:focus{top:12px}.eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 17px;color:#b08a03;text-transform:uppercase;letter-spacing:.14em;font-size:11px;line-height:1.4;font-weight:700}.eyebrow:before{content:"";width:28px;height:2px;background:var(--yellow)}.eyebrow-light{color:#e4bd36}.display{font:800 clamp(2.6rem,5.3vw,4.5rem)/1.05 var(--display);letter-spacing:-.055em;margin:0}.section-heading{max-width:700px;margin-bottom:38px}.section-heading h2{font:800 clamp(2rem,3.6vw,3.2rem)/1.1 var(--display);letter-spacing:-.05em;margin:0 0 15px}.section-heading>p:last-child{color:var(--muted);max-width:590px;margin:0}.utility-bar{background:#111314;color:#c6c8c5;font-size:11px;letter-spacing:.035em}.utility-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:15px}.top-call{margin-left:18px;padding:0;border:0;background:none;color:var(--yellow);font:600 11px var(--font);cursor:pointer}.call-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:var(--yellow);margin-right:6px}.site-header{height:var(--header);position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(20,22,23,.07);backdrop-filter:blur(12px)}.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:11px;flex:none}.brand-mark{height:39px;min-width:48px;padding:0 6px;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font:800 17px var(--display);letter-spacing:-.08em}.brand-name{font:800 14px/1 var(--display);letter-spacing:.075em}.brand-name span{display:block;margin-top:6px;font:600 8px/1 var(--font);letter-spacing:.24em;color:#767b7c}.main-nav{display:flex;align-items:center;gap:27px}.main-nav a{font-size:12px;font-weight:600;color:#404546;transition:color .2s}.main-nav a:hover,.main-nav a[aria-current=page]{color:#b28b00}.main-nav .nav-quote{background:var(--ink);color:#fff;padding:13px 16px}.nav-quote span{color:var(--yellow);margin-left:9px;font-size:15px}.menu-toggle{display:none;border:0;background:none;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;background:var(--ink);margin:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:53px;padding:0 20px;border:1px solid transparent;font-size:12px;font-weight:700;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:var(--ink)}.button-yellow:hover{background:#ffd335}.button-outline{border-color:rgba(255,255,255,.55);color:white;background:rgba(0,0,0,.1)}.button-outline:hover{background:white;color:var(--ink)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#353a3b}.button-light{background:white;color:var(--ink);border-color:var(--line)}.text-link{display:inline-flex;align-items:center;gap:11px;font-size:12px;font-weight:700}.text-link span{color:#ad8700;font-size:17px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}
.hero{position:relative;min-height:640px;display:flex;align-items:center;color:white;background:#25292a url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=2200&q=88') center 48%/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,14,15,.87) 0%,rgba(12,14,15,.68) 42%,rgba(12,14,15,.16) 100%),linear-gradient(0deg,rgba(12,14,15,.32),transparent 40%)}.hero-content{position:relative;padding-block:90px 105px;max-width:720px}.hero h1{font:800 clamp(3.2rem,7.3vw,6.4rem)/.98 var(--display);letter-spacing:-.07em;margin:0 0 24px}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-copy{max-width:560px;color:rgba(255,255,255,.82);font-size:17px;line-height:1.7;margin:0 0 30px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:52px;color:rgba(255,255,255,.74);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.hero-proof:before{content:"";width:38px;height:2px;background:var(--yellow)}.hero-note{position:absolute;bottom:22px;right:26px;color:rgba(255,255,255,.65);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.intro-strip{background:var(--yellow);padding:18px 0}.intro-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px}.intro-strip strong{font:700 15px var(--display)}.intro-strip span{font-size:12px}.intro-strip a{font-size:12px;font-weight:700}.section{padding:96px 0}.section-soft{background:var(--paper)}.section-dark{background:var(--ink);color:white}.section-dark .section-heading>p:last-child{color:#aeb2b1}.section-kicker{margin-top:10px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{min-height:205px;padding:25px 23px;background:#fff;position:relative;transition:background .2s}.service-card:hover{background:#fcfbf5}.service-num{font:700 11px var(--display);color:#b08a03;letter-spacing:.1em}.service-card h3{font:700 18px/1.25 var(--display);letter-spacing:-.025em;margin:28px 0 8px}.service-card p{font-size:12px;color:var(--muted);margin:0 0 20px}.service-card .card-arrow{position:absolute;bottom:21px;right:21px;color:#b28b00;font-size:19px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px}.split-photo{position:relative;min-height:470px;background:#d7d6cf url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1200&q=82') center/cover no-repeat}.photo-caption{position:absolute;right:-16px;bottom:24px;padding:16px 20px;background:var(--yellow);font-size:11px;font-weight:700;letter-spacing:.04em}.split-copy h2{font:800 clamp(2.2rem,4vw,3.5rem)/1.05 var(--display);letter-spacing:-.055em;margin:0 0 20px}.split-copy>p{color:var(--muted);margin:0 0 25px}.ticks{list-style:none;padding:0;margin:23px 0 31px;display:grid;gap:13px}.ticks li{display:flex;align-items:flex-start;gap:12px;font-size:13px}.ticks li:before{content:"✓";display:grid;place-items:center;width:19px;height:19px;flex:none;background:var(--yellow);font-size:11px;font-weight:800}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.project-card{background:white;border:1px solid var(--line);overflow:hidden}.project-image{height:255px;position:relative;overflow:hidden;background:#d5d4ce}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.04)}.image-tag{position:absolute;left:14px;bottom:14px;background:rgba(20,22,22,.82);color:white;padding:7px 10px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.project-info{padding:21px}.project-info .eyebrow{font-size:9px;margin-bottom:9px}.project-info h3{font:700 19px var(--display);margin:0 0 9px}.project-info p{font-size:12px;color:var(--muted);margin:0 0 15px}.project-meta{display:flex;justify-content:space-between;padding-top:13px;border-top:1px solid var(--line);font-size:10px;color:#676c6d}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.why-item{border-top:1px solid #555b5c;padding-top:23px}.why-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--yellow);font:700 15px var(--display);color:var(--ink)}.why-item h3{font:700 17px var(--display);margin:20px 0 8px}.why-item p{color:#b0b5b4;font-size:12px;margin:0}.quote-panel{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--yellow);margin-top:10px}.quote-panel-copy{padding:43px}.quote-panel-copy h2{font:800 32px/1.08 var(--display);letter-spacing:-.045em;margin:0 0 16px}.quote-panel-copy p{font-size:13px;max-width:330px;margin:0 0 20px}.quote-panel-form{padding:36px;background:#f7f7f4}.quote-panel-form .button{width:100%}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.testimonial-card{min-height:195px;padding:25px;border:1px dashed #cfcfca;background:rgba(255,255,255,.64)}.testimonial-card .quote-mark{font:700 37px/1 Georgia;color:#c29910}.testimonial-card p{font-size:14px;font-weight:600;margin:15px 0 21px}.testimonial-card small{color:var(--muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.cta-band{padding:67px 0;background:var(--yellow)}.cta-band-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-band h2{font:800 clamp(2rem,4vw,3.4rem)/1.05 var(--display);letter-spacing:-.05em;margin:0 0 8px}.cta-band p{margin:0;color:#42370e;font-size:14px}.page-hero{padding:86px 0 78px;background:var(--ink);color:white;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:520px;height:520px;right:-100px;top:-230px;border:1px solid rgba(245,194,27,.25);border-radius:50%;box-shadow:0 0 0 45px rgba(245,194,27,.035),0 0 0 90px rgba(245,194,27,.025)}.page-hero .container{position:relative;z-index:1}.page-hero h1{font:800 clamp(2.8rem,6vw,5rem)/1 var(--display);letter-spacing:-.065em;margin:0 0 19px;max-width:820px}.page-hero p{max-width:620px;color:#c3c7c6;font-size:15px;margin:0}.breadcrumbs{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#d0ae36;margin-bottom:25px}.breadcrumbs a{color:#fff}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-detail{border:1px solid var(--line);padding:28px;display:grid;grid-template-columns:48px 1fr;gap:20px;background:white}.service-detail:nth-child(even){background:var(--paper)}.service-icon{width:43px;height:43px;display:grid;place-items:center;background:var(--yellow);font:800 13px var(--display)}.service-detail h2{font:700 21px var(--display);margin:0 0 9px}.service-detail p{color:var(--muted);font-size:13px;margin:0 0 15px}.service-detail .text-link{font-size:11px}.filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin:-6px 0 28px}.filter-bar button{padding:9px 15px;border:1px solid var(--line);background:white;font-size:11px;font-weight:600;cursor:pointer}.filter-bar button.is-active,.filter-bar button:hover{background:var(--ink);border-color:var(--ink);color:white}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:2px}.ba-frame{position:relative;height:300px;background:#d0d0ca}.ba-frame img{width:100%;height:100%;object-fit:cover}.ba-label{position:absolute;left:15px;top:15px;background:rgba(20,22,22,.83);color:white;padding:7px 11px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.note-box{padding:17px 20px;border-left:3px solid var(--yellow);background:var(--paper);font-size:12px;color:#555b5c}.about-photo{min-height:520px;background:#d4d3cd url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1200&q=82') center/cover no-repeat;position:relative}.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.value-item{padding:28px;background:white}.value-item span{color:#ac8500;font-size:10px;font-weight:700;letter-spacing:.1em}.value-item h3{font:700 18px var(--display);margin:12px 0 7px}.value-item p{font-size:12px;color:var(--muted);margin:0}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}.contact-aside{position:sticky;top:130px}.contact-aside h2{font:800 33px/1.1 var(--display);letter-spacing:-.045em;margin:0 0 14px}.contact-aside>p{font-size:13px;color:var(--muted)}.contact-methods{margin:27px 0;display:grid;gap:15px}.contact-method{border-top:1px solid var(--line);padding-top:13px}.contact-method span{display:block;color:#9a7a0a;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.contact-method a,.contact-method button{display:inline-block;margin-top:5px;font-size:14px;font-weight:600}.contact-method button{border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.contact-form{padding:34px;background:var(--paper);border:1px solid var(--line)}.contact-form h2{font:800 27px var(--display);letter-spacing:-.04em;margin:0 0 7px}.contact-form>p{font-size:12px;color:var(--muted);margin:0 0 25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:grid;gap:6px}.field-wide{grid-column:1/-1}.field label{font-size:11px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #d5d7d4;background:white;padding:12px;font-size:12px;outline:0;border-radius:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:#b38b00;box-shadow:0 0 0 2px rgba(245,194,27,.2)}.field textarea{min-height:126px;resize:vertical}.field-hint{font-size:10px;color:#858a89}.consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;font-size:10px;color:#626868}.consent input{margin-top:4px;accent-color:#d8aa08}.contact-form .button{width:100%}.privacy-note{font-size:10px;color:#777e7d;margin:14px 0 0}.form-status{min-height:18px;margin:12px 0 0;font-size:11px;color:var(--green)}.partnership-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.partner-card{padding:24px;background:#242829;color:white;min-height:185px}.partner-card span{font-size:10px;color:var(--yellow);font-weight:700;letter-spacing:.12em}.partner-card h3{font:700 17px var(--display);margin:21px 0 8px}.partner-card p{font-size:11px;color:#b6bbba;margin:0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.process-item{padding:25px;border-top:2px solid var(--yellow);background:#fff}.process-item strong{font:800 11px var(--display);color:#af8700;letter-spacing:.1em}.process-item h3{font:700 18px var(--display);margin:15px 0 8px}.process-item p{font-size:12px;color:var(--muted);margin:0}.legal-copy{max-width:800px}.legal-copy h2{font:700 22px var(--display);margin:32px 0 9px}.legal-copy p,.legal-copy li{font-size:13px;color:#545a5b}.legal-copy ul{padding-left:20px}.site-footer{background:#141617;color:white}.footer-main{padding:63px 0 48px;display:grid;grid-template-columns:1.25fr .75fr .95fr 1fr;gap:35px}.footer-brand>p{max-width:255px;color:#a9afae;font-size:12px;margin:22px 0 15px}.footer-area{font-size:10px;color:#8f9695}.footer-col h2{font:700 12px var(--display);margin:5px 0 18px;color:white}.footer-col a,.footer-contact{display:block;margin:0 0 11px;color:#aab0af;font:400 11px var(--font);background:none;border:0;padding:0;cursor:pointer;text-align:left}.footer-col a:hover,.footer-contact:hover{color:var(--yellow)}.footer-cta{padding:22px;background:#232829;align-self:start}.footer-cta .eyebrow{font-size:9px}.footer-cta h2{font:700 22px/1.1 var(--display);margin:0 0 20px}.footer-cta .button{min-height:43px;font-size:10px}.footer-bottom{min-height:62px;border-top:1px solid #303536;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#878e8d;font-size:9px}.footer-legal{display:flex;gap:19px}.footer-legal a:hover{color:white}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:100;background:var(--ink);color:white;padding:12px 18px;max-width:min(560px,calc(100% - 32px));font-size:12px;box-shadow:0 8px 30px #0003;transition:all .25s}.toast.is-visible{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}.has-motion .reveal{opacity:0;transform:translateY(15px);transition:opacity .65s ease,transform .65s ease}.has-motion .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1000px){.main-nav{gap:17px}.main-nav a{font-size:11px}.service-grid{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1fr 1fr}.contact-layout{gap:35px}.partnership-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:740px){:root{--header:70px}.container{width:min(var(--wrap),calc(100% - 36px))}.utility-inner{min-height:34px;font-size:9px}.utility-inner>span:last-child{display:none}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:var(--header);left:0;right:0;padding:14px 18px 20px;background:white;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0001;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav a{padding:13px 8px;border-bottom:1px solid #f0f0ed;font-size:13px}.main-nav .nav-quote{text-align:center;margin-top:12px;border:0;padding:13px}.hero{min-height:620px;background-position:58% center}.hero:before{background:linear-gradient(90deg,rgba(12,14,15,.83),rgba(12,14,15,.47)),linear-gradient(0deg,rgba(12,14,15,.35),transparent 55%)}.hero-content{padding-block:80px}.hero h1{font-size:clamp(3rem,13vw,5.2rem)}.hero-copy{font-size:15px}.hero-proof{margin-top:38px}.hero-note{right:17px;font-size:8px}.intro-strip .container{align-items:flex-start;flex-direction:column;gap:6px}.section{padding:69px 0}.section-heading{margin-bottom:28px}.split{grid-template-columns:1fr;gap:35px}.split-photo{min-height:340px;margin-right:14px}.photo-caption{right:-14px}.split-copy{order:2}.project-grid{grid-template-columns:1fr}.project-image{height:255px}.project-info{padding:19px}.why-grid{gap:23px 18px}.why-item{padding-top:17px}.quote-panel{grid-template-columns:1fr}.quote-panel-copy{padding:30px}.quote-panel-form{padding:22px}.testimonial-grid{grid-template-columns:1fr}.testimonial-card{min-height:150px}.cta-band{padding:48px 0}.cta-band-inner{align-items:flex-start;flex-direction:column}.cta-band .button{width:100%}.page-hero{padding:65px 0 57px}.page-hero h1{font-size:clamp(2.8rem,12vw,4rem)}.service-list{grid-template-columns:1fr}.service-detail{padding:23px 18px;gap:15px}.before-after{grid-template-columns:1fr}.ba-frame{height:235px}.about-photo{min-height:350px}.values-grid{grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-aside{position:static}.contact-form{padding:23px 17px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.process-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr;gap:28px 19px;padding:45px 0 34px}.footer-brand{grid-column:1/-1}.footer-brand>p{max-width:360px}.footer-cta{grid-column:1/-1}.footer-bottom{padding:16px 0;min-height:0;align-items:flex-start;flex-direction:column;gap:8px}.footer-legal{order:3}.page-hero:after{right:-310px}.contact-form .button{min-height:50px}}
@media(max-width:390px){.service-grid{grid-template-columns:1fr}.service-card{min-height:175px}.why-grid{grid-template-columns:1fr}.partner-card{min-height:165px}.partnership-cards{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-brand,.footer-cta{grid-column:auto}.hero-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

/* Clean, lighter visual system */
:root{--ink:#202321;--ink-2:#292d2a;--charcoal:#454b47;--muted:#707772;--line:#e5e7e3;--paper:#f6f7f4;--white:#fff;--yellow:#d9ad20;--yellow-dark:#ad8610;--green:#244a40;--wrap:1160px;--header:76px}
body{color:var(--ink);background:#fff;font-family:Arial,'DM Sans',sans-serif;line-height:1.65}
.utility-bar{background:var(--paper);color:#68706a;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.035em}
.utility-inner{min-height:30px}.top-call{color:var(--ink);font-size:10px;font-weight:600}
.site-header{height:var(--header);background:#fff;border-bottom:1px solid var(--line);box-shadow:none}
.brand{gap:11px;flex:none}.brand-mark{height:39px;min-width:48px;padding:0 6px;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font:800 17px var(--display);letter-spacing:-.08em}
.brand-name{font-size:14px;letter-spacing:.075em}.brand-name span{display:block;margin-top:6px;color:#7d847f;letter-spacing:.24em;font-size:8px;line-height:1}
.main-nav{gap:25px}.main-nav a{font-size:12px;color:#515853}.main-nav a:hover,.main-nav a[aria-current=page]{color:#987509}
.main-nav .nav-quote{padding:10px 14px;border:1px solid #d8dad6;background:#fff;color:var(--ink);font-weight:600}.main-nav .nav-quote:hover{background:var(--paper)}.nav-quote span{color:var(--yellow-dark)}
.hero{min-height:0;padding:75px 0 80px;background:#f7f8f5;color:var(--ink)}.hero:before{display:none}.hero-layout{display:block}
.hero-content{max-width:760px;padding:0}.hero .eyebrow{color:#7c6415;margin-bottom:19px}.hero h1{font:700 clamp(2.9rem,5.3vw,4.35rem)/1.06 var(--display);letter-spacing:-.055em;margin:0 0 24px}.hero h1 em{color:#a78312}.hero-copy{max-width:480px;color:#666e68;font-size:15px;line-height:1.75;margin:0 0 25px}
.hero-actions{gap:20px}.hero-actions .button{min-height:47px;padding:0 17px}.hero-actions .text-link{font-size:12px}.hero-proof{margin-top:35px;color:#68706a;font-size:10px;letter-spacing:.04em;text-transform:none}.hero-proof:before{width:23px;height:1px;background:#b99825}
.hero-visual{position:relative;min-width:0}.hero-visual img{width:100%;height:445px;object-fit:cover}.hero-image-label{position:absolute;right:14px;bottom:14px;padding:8px 11px;background:rgba(255,255,255,.94);color:#4c534e;font-size:9px;letter-spacing:.03em}
.button{min-height:47px;padding:0 17px;font-size:11px;font-weight:600}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#3b403d}.button-yellow{background:#dfba42;color:#202321}.button-yellow:hover{background:#e8ca70}.button-outline{border-color:#d5d8d3;background:#fff;color:var(--ink)}.button-outline:hover{background:var(--paper);color:var(--ink)}
.intro-strip{padding:14px 0;background:#f1f0e9;color:var(--ink)}.intro-strip strong{font:600 13px var(--display)}.intro-strip span,.intro-strip a{font-size:11px}.intro-strip a{color:#675210}
.section{padding:78px 0}.section-heading{margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:.12em}.section-heading h2,.split-copy h2{font-weight:700;letter-spacing:-.045em}.section-heading>p:last-child{font-size:13px;line-height:1.75}
.service-grid{grid-template-columns:repeat(4,1fr);gap:0 22px;background:transparent;border:0}.service-card{min-height:170px;padding:16px 0 25px;background:transparent;border-top:1px solid var(--line);transition:color .2s}.service-card:hover{background:transparent;color:#826a1b}.service-num{font-size:9px;color:#8c741e}.service-card h3{font-size:16px;margin:17px 0 6px}.service-card p{font-size:11px;max-width:235px;margin-bottom:15px}.service-card .card-arrow{right:3px;bottom:20px;font-size:15px}.text-link{font-size:11px}.text-link span{color:#9f7d11}
.section-soft{background:#f7f8f5}.split{gap:63px}.split-photo{min-height:420px}.photo-caption{right:-10px;bottom:19px;padding:12px 14px;background:#fff;color:#535a55;font-size:9px;box-shadow:0 4px 16px #0000000d}
.split-copy h2{font-size:clamp(2.1rem,3.4vw,3rem);line-height:1.12;margin:0 0 17px}.split-copy>p{font-size:13px;line-height:1.75}.ticks{gap:10px;margin:19px 0 25px}.ticks li{font-size:12px}.ticks li:before{width:17px;height:17px;background:#ece4c7;font-size:10px}
.project-grid{gap:24px}.project-card{border:0;background:transparent}.project-image{height:230px}.project-image img{transition:transform .35s}.image-tag{left:10px;bottom:10px;padding:6px 8px;background:rgba(255,255,255,.94);color:#515853;font-size:8px;letter-spacing:.06em}.project-info{padding:16px 0 0}.project-info .eyebrow{font-size:8px}.project-info h3{font-size:17px}.project-info p{font-size:11px;line-height:1.65}.project-meta{padding-top:10px;font-size:9px}
.section-dark{background:#f2f3f0;color:var(--ink)}.section-dark .section-heading>p:last-child{color:#68706a}.section-dark .eyebrow{color:#806718}.why-grid{gap:24px}.why-item{border-top:1px solid #dfe1dc;padding-top:17px}.why-icon{width:auto;height:auto;display:inline;color:#97780e;background:transparent;font-size:10px}.why-item h3{font-size:15px;margin:12px 0 6px}.why-item p{color:#68706a;font-size:11px;line-height:1.7}
.testimonial-grid{gap:20px}.testimonial-card{min-height:155px;padding:18px 0;border:0;border-top:1px solid #dfe1dc;background:transparent}.testimonial-card .quote-mark{font-size:30px;color:#a58a31}.testimonial-card p{font-size:12px;font-weight:500;margin:12px 0 14px}.testimonial-card small{font-size:8px}
.cta-band{padding:47px 0;background:#f2f0e7}.cta-band h2{font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:700}.cta-band p{font-size:12px;color:#626960}
.page-hero{padding:61px 0 56px;background:#f6f7f4;color:var(--ink)}.page-hero:after{display:none}.page-hero .eyebrow{color:#806718}.page-hero h1{font-size:clamp(2.65rem,5vw,4.2rem);font-weight:700;letter-spacing:-.055em;margin-bottom:14px}.page-hero p{color:#646b65;font-size:14px}.breadcrumbs{color:#818781;font-size:9px;margin-bottom:18px}.breadcrumbs a{color:#454c47}
.service-list{gap:0 30px}.service-detail,.service-detail:nth-child(even){padding:23px 0;border:0;border-top:1px solid var(--line);background:transparent}.service-icon{width:30px;height:30px;background:#f0ead6;color:#7e6718;font-size:10px}.service-detail h2{font-size:18px}.service-detail p{font-size:12px;line-height:1.7}.filter-bar{gap:7px}.filter-bar button{padding:7px 12px;border-color:#e0e2de;background:#fff;color:#555c56;font-size:10px}.filter-bar button.is-active,.filter-bar button:hover{background:#252a26;border-color:#252a26;color:#fff}
.before-after{gap:12px}.ba-frame{height:270px}.ba-label{left:10px;top:10px;background:rgba(255,255,255,.94);color:#4f5650;font-size:8px}.note-box{border-left:2px solid #d9b943;background:#f7f8f5;font-size:11px}
.about-photo{min-height:440px}.values-grid{gap:0 28px;background:transparent;border:0}.value-item{padding:20px 0;border-top:1px solid var(--line);background:transparent}.value-item span{color:#806718;font-size:9px}.value-item h3{font-size:16px}.value-item p{font-size:11px}
.contact-layout{gap:55px}.contact-aside h2{font-size:29px}.contact-aside>p{font-size:12px}.contact-method{border-color:var(--line)}.contact-method span{color:#806718;font-size:8px}.contact-method a,.contact-method button{font-size:12px}.contact-form{padding:29px;background:#f7f8f5;border:0}.contact-form h2{font-size:23px}.contact-form>p{font-size:11px}.field label{font-size:10px}.field input,.field select,.field textarea{padding:10px;border-color:#dfe2dc;font-size:11px}.field textarea{min-height:116px}.consent,.privacy-note{font-size:9px}.form-status{font-size:10px}
.partnership-cards{gap:12px}.partner-card{min-height:150px;padding:19px;background:#f5f6f3;color:var(--ink)}.partner-card span{color:#806718;font-size:8px}.partner-card h3{font-size:15px;margin:16px 0 6px}.partner-card p{color:#69716b;font-size:10px}
.process-grid{gap:20px}.process-item{padding:20px 0;border-top:1px solid var(--line);background:transparent}.process-item strong{font-size:9px;color:#806718}.process-item h3{font-size:16px}.process-item p{font-size:11px}
.site-footer{background:#fff;color:var(--ink);border-top:1px solid var(--line)}.footer-main{padding:48px 0 35px;gap:28px}.footer-brand>p{color:#69716b;font-size:11px}.footer-area{font-size:9px;color:#737b75}.footer-col h2{font-size:11px;color:var(--ink)}.footer-col a,.footer-contact{color:#69716b;font-size:10px}.footer-col a:hover,.footer-contact:hover{color:#8b6d0a}.footer-cta{padding:19px;background:#f6f7f4}.footer-cta .eyebrow{font-size:8px}.footer-cta h2{font-size:19px}.footer-cta .button{min-height:39px}.footer-bottom{min-height:50px;border-top:1px solid var(--line);color:#7b827d;font-size:8px}.footer-legal a:hover{color:var(--ink)}
@media(max-width:1000px){.hero-layout{gap:35px}.hero-visual img{height:390px}.main-nav{gap:16px}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1fr 1fr}}
.hero{padding:75px 0 80px}.hero-layout{display:block}.hero-content{max-width:760px}
@media(max-width:740px){:root{--header:66px}.hero{padding:58px 0 62px}.hero-layout{display:block}.hero-content{max-width:560px}.hero h1{font-size:clamp(2.8rem,10vw,4rem)}.hero-copy{font-size:14px}.hero-proof{margin-top:23px}.intro-strip .container{gap:5px}.section{padding:60px 0}.section-heading{margin-bottom:24px}.service-grid{gap:0 18px}.service-card{min-height:158px}.split{gap:30px}.split-photo{min-height:310px}.split-copy{order:2}.project-grid{gap:23px}.project-image{height:225px}.page-hero{padding:47px 0 43px}.page-hero h1{font-size:clamp(2.55rem,10vw,3.7rem)}.service-detail{padding:19px 0}.about-photo{min-height:310px}.contact-layout{gap:28px}.contact-form{padding:22px 16px}.footer-main{grid-template-columns:1fr 1fr;gap:24px 16px;padding:40px 0 28px}.footer-brand{grid-column:1/-1}.footer-cta{grid-column:1/-1}.footer-bottom{padding:14px 0}.before-after{grid-template-columns:1fr}.ba-frame{height:230px}}
@media(max-width:390px){.service-grid{grid-template-columns:1fr}.service-card{min-height:142px}.why-grid{grid-template-columns:1fr}.partnership-cards{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-brand,.footer-cta{grid-column:auto}.hero-actions{gap:14px}.hero-actions .button{width:auto}}

/* Mobile layout pass: compact rhythm, readable copy, and comfortable touch targets */
@media(max-width:740px){
  html{scroll-padding-top:74px}
  body{font-size:15px;line-height:1.55}
  .container{width:min(var(--wrap),calc(100% - 32px))}
  .site-header{height:60px}
  .nav-inner{gap:12px}
  .brand-name{font-size:14px}
  .menu-toggle{width:44px;height:44px;padding:8px}
  .menu-toggle span{width:22px;margin:4px auto}
  .main-nav{top:60px;max-height:calc(100dvh - 60px);overflow-y:auto;padding:8px 16px 18px}
  .main-nav a{min-height:44px;display:flex;align-items:center;padding:10px 8px;font-size:13px}
  .main-nav .nav-quote{justify-content:center;margin-top:9px}
  .hero{padding:37px 0 39px}
  .hero .eyebrow{margin-bottom:13px;font-size:9px}
  .hero h1{font-size:clamp(2.05rem,8.8vw,3.15rem);line-height:1.06;margin-bottom:19px;letter-spacing:-.045em}
  .hero-actions{align-items:flex-start;gap:8px 14px}
  .hero-actions .button{min-height:48px}
  .hero-actions .text-link{min-height:44px}
  .hero-proof{margin-top:18px;font-size:10px}
  .section{padding:45px 0}
  .section-heading{margin-bottom:21px}
  .section-heading h2{font-size:clamp(1.55rem,6.8vw,2.15rem);line-height:1.13;letter-spacing:-.04em}
  .section-heading>p:last-child{font-size:13px;line-height:1.6}
  .service-grid{gap:0 16px}
  .service-card{min-height:0;padding:15px 28px 17px 0}
  .service-card h3{font-size:15px;margin:13px 0 5px}
  .service-card p{font-size:12px;line-height:1.55;margin-bottom:5px}
  .service-card .card-arrow{right:2px;bottom:16px}
  .split{gap:23px}
  .split-photo,.about-photo{min-height:255px}
  .split-photo{order:2}
  .split-copy{order:1}
  .split-copy h2{font-size:clamp(1.8rem,7.2vw,2.35rem)}
  .split-copy>p{font-size:13px;line-height:1.6}
  .ticks{gap:9px;margin:16px 0 21px}
  .ticks li{font-size:12px;line-height:1.5}
  .project-grid{gap:20px}
  .project-image{height:195px}
  .project-info{padding-top:13px}
  .project-info h3{font-size:16px;line-height:1.3}
  .project-info p{font-size:12px;line-height:1.55}
  .project-meta{font-size:9px}
  .why-grid{gap:16px}
  .why-item{padding-top:13px}
  .why-item h3{font-size:15px;margin:9px 0 5px}
  .why-item p{font-size:12px;line-height:1.55}
  .cta-band{padding:34px 0}
  .cta-band h2{font-size:clamp(1.8rem,7vw,2.35rem);line-height:1.1}
  .cta-band p{font-size:12px;line-height:1.55}
  .cta-band .button{min-height:48px}
  .page-hero{padding:30px 0 31px}
  .breadcrumbs{font-size:8px;letter-spacing:.09em;margin-bottom:14px}
  .page-hero .eyebrow{font-size:9px;margin-bottom:12px}
  .page-hero h1{font-size:clamp(2rem,8.4vw,3rem);line-height:1.07;letter-spacing:-.045em;margin-bottom:11px}
  .page-hero p{font-size:13px;line-height:1.58}
  .service-list{gap:0}
  .service-detail{grid-template-columns:30px minmax(0,1fr);gap:13px;padding:16px 0}
  .service-icon{width:27px;height:27px;font-size:9px}
  .service-detail h2{font-size:16px;line-height:1.3;margin:0 0 6px}
  .service-detail p{font-size:12px;line-height:1.58;margin-bottom:10px}
  .service-detail .text-link{min-height:38px}
  .filter-bar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:0 0 5px;margin:0 0 20px}
  .filter-bar::-webkit-scrollbar{display:none}
  .filter-bar button{flex:0 0 auto;min-height:42px;padding:8px 12px;font-size:10px}
  .before-after{gap:9px}
  .ba-frame{height:205px}
  .note-box{font-size:11px;line-height:1.55;padding:13px 14px}
  .values-grid{gap:0 18px}
  .value-item{padding:15px 0}
  .value-item h3{font-size:15px;margin:9px 0 5px}
  .value-item p{font-size:12px;line-height:1.55}
  .contact-layout{display:flex;flex-direction:column;gap:22px}
  .contact-aside{top:auto}
  .contact-aside{order:2}
  .contact-form{order:1;width:100%}
  .contact-aside h2{font-size:25px;line-height:1.12}
  .contact-aside>p{font-size:12px;line-height:1.58}
  .contact-methods{gap:10px;margin:19px 0}
  .contact-method{padding-top:10px}
  .contact-method a,.contact-method button{min-height:34px;font-size:13px;overflow-wrap:anywhere}
  .contact-form{padding:20px 15px}
  .contact-form h2{font-size:22px;line-height:1.2}
  .contact-form>p{font-size:11px;line-height:1.5;margin-bottom:18px}
  .form-grid{gap:13px}
  .field{min-width:0}
  .field label{font-size:12px}
  .field input,.field select,.field textarea{min-height:46px;padding:11px 10px;font-size:16px;line-height:1.4}
  .field textarea{min-height:112px}
  .field-hint{font-size:10px;line-height:1.5}
  .consent{font-size:10px;line-height:1.5;margin:16px 0}
  .consent input{width:18px;height:18px;flex:none}
  .contact-form .button{min-height:48px}
  .privacy-note{font-size:10px;line-height:1.5}
  .partnership-cards{gap:9px}
  .partner-card{min-height:0;padding:16px}
  .partner-card h3{font-size:15px;margin:11px 0 5px}
  .partner-card p{font-size:12px;line-height:1.55}
  .process-grid{gap:10px}
  .process-item{padding:15px 0}
  .process-item h3{font-size:15px;margin:9px 0 5px}
  .process-item p{font-size:12px;line-height:1.55}
  .legal-copy p,.legal-copy li{font-size:13px;line-height:1.65}
  .legal-copy h2{font-size:19px;margin:24px 0 7px}
  .footer-main{padding:34px 0 25px;gap:20px 14px}
  .footer-brand{grid-column:1/-1}
  .footer-brand .footer-area{display:block;margin-top:13px}
  .footer-col h2{margin:2px 0 12px}
  .footer-col a,.footer-contact{font-size:10px;line-height:1.45;overflow-wrap:anywhere}
  .footer-cta{grid-column:1/-1;padding:16px}
  .footer-cta h2{font-size:18px;margin-bottom:14px}
  .footer-bottom{gap:7px;padding:13px 0;line-height:1.45}
  .toast{bottom:max(16px,env(safe-area-inset-bottom));font-size:11px}
  .page-hero + .section{padding-top:29px}
  .has-motion .reveal,.has-motion .reveal.is-visible{opacity:1;transform:none;transition:none}
  .page-partnership{display:flex;flex-direction:column}
  .page-partnership > #discuss{order:1}
  .page-partnership > section:nth-of-type(2){order:2}
  .page-partnership > section:nth-of-type(3){order:3}
}
@media(max-width:390px){
  .container{width:calc(100% - 30px)}
  .hero{padding:32px 0 34px}
  .hero h1{font-size:clamp(2rem,8.7vw,2.6rem)}
  .hero-actions{flex-direction:column;align-items:stretch;gap:4px}
  .hero-actions .button{width:100%}
  .hero-actions .text-link{align-self:flex-start}
  .hero-proof{margin-top:13px}
  .page-hero{padding:26px 0 27px}
  .page-hero h1{font-size:clamp(1.95rem,8vw,2.45rem)}
  .section{padding:39px 0}
  .section-heading{margin-bottom:18px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
  .service-card{min-height:104px;padding:14px 19px 22px 0}
  .service-card h3{font-size:13px;line-height:1.25;margin:12px 0 0}
  .service-card .card-arrow{right:0;bottom:8px}
  .project-image{height:180px}
  .footer-main{grid-template-columns:1fr 1fr}
  .footer-brand,.footer-cta{grid-column:1/-1}
}

/* Keep supplied before-and-after composites uncropped, including on narrow screens. */
.project-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}
.project-story{min-width:0}
.project-story-image{display:grid;place-items:center;background:#f0f0ec;border:1px solid var(--line);overflow:hidden}
.project-story-image img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;object-position:center}
.project-story-info{padding:15px 0 0}
.project-story-info .eyebrow{font-size:9px;margin-bottom:9px}
.project-story-info h3{font:700 19px/1.25 var(--display);margin:0 0 7px}
.project-story-info>p:last-child{color:var(--muted);font-size:12px;line-height:1.6;margin:0;max-width:460px}
@media(max-width:740px){.project-story-grid{grid-template-columns:1fr;gap:28px}.project-story-image img{max-height:540px}}
.cookie-settings{padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.cookie-consent{position:fixed;z-index:1001;inset:auto 18px 18px;max-width:820px;margin-inline:auto;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#fff;border:1px solid #dfe2dc;box-shadow:0 10px 38px #1113;color:var(--ink)}
.cookie-consent[hidden]{display:none}
.cookie-consent-copy{max-width:510px}.cookie-consent-copy strong{font:700 14px var(--display)}
.cookie-consent-copy p{margin:7px 0 0;color:#626960;font-size:11px;line-height:1.55}.cookie-consent-copy a{color:#806718;text-decoration:underline}
.cookie-consent-actions{display:flex;gap:8px;flex-shrink:0}.cookie-consent-actions .button{min-height:40px;padding:0 12px;font-size:10px}
@media(max-width:680px){.cookie-consent{inset:auto 10px 10px;padding:16px;display:block}.cookie-consent-copy strong{font-size:13px}.cookie-consent-copy p{font-size:11px}.cookie-consent-actions{margin-top:13px;display:grid;grid-template-columns:1fr 1fr}.cookie-consent-actions .button{min-height:42px;padding:0 8px;font-size:10px}}

/* Compact quote form for mobile and paid-social landing traffic. */
#quote-form .quote-submit{width:100%;min-height:56px;font-size:14px}
#quote-form .quote-submit:disabled{cursor:wait;opacity:.72;transform:none}
#quote-form .form-status[data-state="error"]{color:#a33228}
#quote-form .form-status[data-state="success"]{color:var(--green)}
@media(max-width:740px){#quote-form .quote-submit{min-height:54px;font-size:15px}}
