/* A distinct architecture-led art direction. */
:root{--ink:#17201f;--paper:#f3f2ed;--line:#c9cdca;--olive:#9a4a2b;--muted:#58615e;--white:#fff;--serif:'Arial',sans-serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--accent:#ed6a3c}
body{font-family:var(--sans);background:var(--paper);color:var(--ink)}
.wrap{width:min(1320px,calc(100% - 112px))}
h1,h2,h3,h4{font-family:var(--sans);font-weight:500;letter-spacing:-.055em}
h2{font-size:clamp(44px,5.3vw,77px);line-height:1.01}
p{line-height:1.7}
.notice{background:#e3e5df;color:#3e4743;text-align:left;padding:7px 56px;font-size:10px;letter-spacing:.015em}
.notice a{float:right;text-decoration:none}
.header{background:var(--ink);color:var(--paper);height:108px;border:0}
.header .wrap{width:calc(100% - 112px);max-width:none}
.brand{gap:16px}
.brand-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;padding:0;background:var(--accent);color:#17201f;font-size:31px;font-weight:700;letter-spacing:-.14em;line-height:1}
.brand-name{font-family:var(--sans);font-size:23px;font-weight:600;letter-spacing:-.045em;line-height:1}
.brand-name small{font-size:8px;letter-spacing:.15em;font-weight:400;margin-top:9px}
.nav{gap:34px;font-size:12px;letter-spacing:-.015em}
.nav .nav-cta{padding:14px 20px;border-color:#ffffff50;background:none}
.nav .nav-cta:hover{background:var(--paper);color:var(--ink);text-decoration:none}
.menu{color:var(--paper);border-color:#ffffff50}
.eyebrow{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.13em;margin-bottom:25px}
.eyebrow::before{height:6px;width:6px;background:var(--accent);margin-right:13px;vertical-align:2px}
.hero{padding:0;background:var(--ink);color:var(--paper)}
.hero>.wrap{max-width:none;width:100%;margin:0}
.hero-grid{display:block;position:relative;min-height:736px;isolation:isolate;overflow:hidden}
.hero-visual{position:absolute;inset:0;z-index:-2;margin:0;background:#23332d}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:50% 57%;filter:saturate(.75)}
.hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,23,21,.86),rgba(12,23,21,.52) 45%,rgba(12,23,21,.03) 82%)}
.hero-copy{position:relative;z-index:1;margin:auto;max-width:1432px;padding:76px 56px 62px}
.hero .eyebrow{font-size:10px;color:#e7e9e1;margin-bottom:35px}
.hero h1{max-width:900px;width:75%;font-family:var(--sans);font-size:clamp(92px,10.4vw,154px);font-weight:500;line-height:.91;letter-spacing:-.075em;margin:0 0 32px;text-wrap:balance}
.hero .intro{font-size:14px;line-height:1.75;max-width:385px;color:#e1e5df;margin-bottom:0}
.hero-actions{gap:28px;margin-top:28px}
.button{font-size:11px;letter-spacing:0;min-height:50px;padding:14px 20px;background:var(--ink);border-color:var(--ink);border-radius:0;gap:45px;font-weight:500}
.button span{font-size:19px;line-height:1}
.hero .button{background:var(--accent);border-color:var(--accent);color:#17201f}
.hero .button:hover{background:#ff875e}
.hero .text-link{color:var(--paper);font-size:11px}
.hero-note{border:0;margin-top:40px;padding:0;font-size:9px;color:#cbd2ca;letter-spacing:.01em}
.hero-note span:first-child{background:var(--accent);width:4px;height:4px;border-radius:0}
.hero-index{top:34px;left:auto;right:56px;background:none;padding:0;color:#f4f6ee;letter-spacing:.15em;font-size:9px}
.hero-visual figcaption{position:absolute;bottom:24px;right:56px;padding:0;color:#edf0e6;font-size:8px;max-width:290px;text-align:right;z-index:2}
.quick{margin:0;padding:0 56px;background:var(--ink);border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;grid-template-columns:repeat(3,1fr)}
.quick a{font-size:11px;padding:28px 26px 28px 0;color:#f2f4ed}
.quick a:not(:last-child){border-color:#ffffff30;padding-right:26px;margin-right:26px}
.quick small{color:#a3ada6;font-size:9px}
.quick a>span:last-child{color:var(--accent);font-size:20px}
.section{padding:112px 0}
.section-head{grid-template-columns:1.3fr .7fr;gap:110px;margin-bottom:58px;align-items:end}
.section-head h2{font-size:clamp(44px,5.2vw,75px);max-width:780px;line-height:1.01}
.section-head p{max-width:340px;font-size:13px;padding-bottom:3px;line-height:1.8}
.cards{grid-template-columns:1.35fr 1fr;gap:38px 60px}
.card:first-child{grid-row:span 2}
.card .image{background:#d2d4ca}
.card img{height:225px;filter:saturate(.75);transition:transform .6s}
.card:first-child img{height:660px}
.card .num{background:none;color:white;font-size:11px;bottom:18px;left:20px;border:1px solid #ffffff80;padding:6px 9px}
.card h3{font-family:var(--sans);font-weight:500;font-size:29px;letter-spacing:-.045em;line-height:1.1;border:0;padding:20px 0 0;margin:0 0 11px}
.card:first-child h3{font-size:41px}
.card h3 span{font-size:25px;font-weight:400;color:var(--olive)}
.card p{font-size:12px;line-height:1.7;max-width:530px;margin:0}
.service-lines{margin-top:58px;gap:40px}
.service-lines a{font-size:13px;letter-spacing:-.02em;padding-top:21px}
.service-lines a span{color:var(--olive)}
.dark{background:var(--ink);color:var(--paper)}
.dark p,.dark .section-head p{color:#bfc8c1}
.dark .button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.dark .button.light:hover{background:var(--accent);border-color:var(--accent)}
.section.dark:has(.split){padding:0}
.dark .split{max-width:none;width:100%;grid-template-columns:1.1fr 1fr;gap:0;align-items:stretch}
.dark .split>figure{position:relative;min-height:780px}
.dark .split>figure img{position:absolute;inset:0;width:100%;height:100%;filter:saturate(.65)}
.dark .split>figure figcaption{position:absolute;left:30px;bottom:15px;color:#fff;font-size:8px;text-shadow:0 1px 5px #000}
.dark .split>div{padding:80px 56px}
.dark .split h2{font-size:clamp(42px,4.8vw,69px);line-height:1.02;margin-bottom:30px;max-width:530px}
.split{gap:100px}
.split h2{font-size:clamp(44px,5vw,72px);line-height:1.01;max-width:600px}
.split p{font-size:13px;line-height:1.85;max-width:510px}
.split img{height:600px;filter:saturate(.65)}
.number-list{margin:30px 0 35px}
.number-list li{grid-template-columns:35px 1fr;padding:17px 0;border-color:#ffffff25}
.number-list span{color:var(--accent);font-size:9px}
.number-list strong{font-size:13px;font-weight:400;letter-spacing:-.02em}
.number-list p{font-size:11px;line-height:1.65}
.planning{background:#e4e6df}
.three-col{gap:55px}
.three-col>div{border-top:1px solid var(--line);padding-top:22px}
.three-col h3{font-family:var(--sans);font-size:32px;line-height:1.1;letter-spacing:-.05em;margin:23px 0 20px}
.three-col p{font-size:12px;line-height:1.85}
.dark .three-col>div{border-color:#ffffff30}
.dark .three-col h3{font-size:30px;color:var(--paper)}
.text-link{font-size:11px;font-weight:400;letter-spacing:-.01em}
.tag{font-size:9px;font-weight:400;letter-spacing:.1em;color:var(--muted)}
.local-grid{grid-template-columns:1fr 1fr;gap:0 75px}
.local-item{display:grid;grid-template-columns:1fr 1fr;column-gap:26px;padding:32px 0 38px;border-top:1px solid var(--line);align-items:start}
.local-item .area-label{font-size:8px;letter-spacing:.1em;grid-column:1/-1;margin-bottom:24px;color:var(--olive)}
.local-item h3{font-family:var(--sans);font-size:34px;line-height:1.04;letter-spacing:-.055em;margin:0;max-width:240px}
.local-item p{font-size:12px;line-height:1.75;margin:0 0 15px}
.local-item>a{grid-column:2;font-size:10px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:6px;justify-self:start}
.local-foot{font-size:10px;line-height:1.8;margin-top:28px}
.budget{grid-template-columns:1.1fr 1fr;gap:110px;align-items:start}
.budget h2{font-size:clamp(44px,4.9vw,68px);line-height:1.04;max-width:590px}
.budget p{font-size:13px;line-height:1.85}
.budget-panel{background:#e4e6df;border-top:3px solid var(--ink);padding:38px}
.budget-panel .eyebrow{font-size:9px;margin-bottom:30px}
.budget-panel label{font-size:10px;color:var(--muted)}
.budget-panel input{font-size:30px;letter-spacing:-.05em;color:var(--ink);border-color:#9fa89e;padding:13px 0}
.budget-panel button{margin-top:22px;min-width:100%}
.total output{font:500 63px/.98 var(--sans);letter-spacing:-.065em;margin:15px 0 20px}
.budget-panel .hint{font-size:10px;line-height:1.75}
.guide-list{grid-template-columns:1fr 1fr;gap:0 70px}
.guide-row{grid-template-columns:32px 1fr 24px;gap:18px;padding:30px 0}
.guide-row h3{font-family:var(--sans);font-size:27px;line-height:1.1;font-weight:500;letter-spacing:-.045em;margin:0 0 13px;max-width:350px}
.guide-row p{font-size:11px;line-height:1.8;max-width:350px}
.guide-row>span:last-child{color:var(--olive);font-size:21px}
.faq-layout{grid-template-columns:1fr 1.05fr;gap:120px}
.faq-layout h2{font-size:clamp(44px,4.8vw,67px);max-width:550px;line-height:1.04}
.faq-layout p{font-size:13px;max-width:360px}
summary{font-size:13px;font-weight:500;letter-spacing:-.015em;padding:26px 35px 26px 0}
summary::after{top:20px;color:var(--olive);font-weight:300}
details p{font-size:12px!important;max-width:none!important;line-height:1.8}
.resource-grid{gap:0 65px}
.resource-grid a{font-size:12px;line-height:1.65;padding:22px 0}
.resource-grid a>span{color:var(--olive);font-size:20px}
.experiment{background:var(--accent);color:var(--ink);padding:85px 0}
.experiment .wrap{grid-template-columns:1.1fr .9fr;gap:100px}
.experiment .eyebrow::before{background:var(--ink)}
.experiment h2{font-family:var(--sans);font-size:clamp(42px,4.8vw,66px);line-height:1.02;letter-spacing:-.055em}
.experiment p{color:#263b30;font-size:12px;line-height:1.85}
.footer{background:var(--ink);padding:0 0 25px;color:var(--paper)}
.footer-masthead{font-family:var(--sans);font-size:clamp(65px,13.2vw,190px);font-weight:500;line-height:.9;letter-spacing:-.075em;padding:75px 0 70px;border-bottom:1px solid #ffffff25;margin-bottom:55px;color:#e5e8df}
.footer-top{grid-template-columns:1.3fr 1fr 1fr;gap:80px}
.footer .brand-mark{background:none;padding:0;width:auto;color:var(--accent);font-size:35px;justify-content:start}
.footer .brand-name{font-size:22px}
.footer p{color:#a1b0a4;line-height:1.85;font-size:11px}
.footer h3{font-family:var(--sans);font-size:9px;font-weight:400;color:#c0c9bf;letter-spacing:.12em}
.footer li{font-size:11px;margin-bottom:10px}
.footer-bottom{font-size:9px;color:#a1b0a4}
.page-hero{padding:42px 0 70px}
.breadcrumbs{font-size:10px;margin-bottom:55px}
.page-hero h1{font-family:var(--sans);font-size:clamp(60px,7.2vw,104px);font-weight:500;letter-spacing:-.07em;line-height:.96;max-width:1100px;margin-bottom:32px}
.page-hero .standfirst{font-size:17px;line-height:1.75;max-width:700px}
.page-meta{font-size:9px;letter-spacing:.02em;margin-top:32px}
.page-image img{height:540px;filter:saturate(.7)}
.page-image figcaption{font-size:9px;padding-top:14px}
.article-layout{grid-template-columns:235px 1fr;gap:100px;padding-top:80px}
.article h2{font-size:40px;font-weight:500;letter-spacing:-.045em;line-height:1.08;margin-top:55px}
.article h3{font-size:27px;font-family:var(--sans);line-height:1.15}
.article p,.article li{font-size:14px;line-height:1.9}
.article .sources h2{font-family:var(--sans);font-size:24px}
.article .sources p,.article .sources li{font-size:11px}
.article .callout{background:#e4e6df;border-left:3px solid var(--accent)}
.toc{top:25px}
.toc strong{font-size:9px;color:var(--olive)}
.toc a{font-size:11px;line-height:1.6;padding:9px 0}
.related{background:#e4e6df;padding:75px 0}
.related h2{font-size:45px}
.related .guide-row h3{font-size:24px}
@media(min-width:1600px){.hero-grid{min-height:850px}.hero-copy{padding-top:90px}.hero h1{max-width:1050px}.hero .intro{font-size:16px;max-width:430px}.hero-actions{margin-top:38px}}
@media(max-width:1100px){.wrap{width:calc(100% - 80px)}.header .wrap{width:calc(100% - 80px)}.header{height:98px}.nav{gap:23px;font-size:11px}.notice{padding-left:40px;padding-right:40px;font-size:9px}.hero-copy{padding-left:40px;padding-right:40px}.hero-grid{min-height:690px}.hero h1{font-size:108px;width:88%;max-width:760px}.hero-index{right:40px}.hero-visual figcaption{right:40px}.quick{padding:0 40px}.section{padding:85px 0}.section-head{gap:60px}.cards{gap:30px 40px}.card:first-child img{height:590px}.card img{height:190px}.card h3{font-size:25px}.card:first-child h3{font-size:35px}.card p{font-size:11px}.dark .split>div{padding:65px 40px}.dark .split>figure{min-height:770px}.dark .split h2{font-size:52px}.split{gap:60px}.split img{height:550px}.budget{gap:60px}.local-grid{gap:0 45px}.local-item{grid-template-columns:1fr}.local-item h3{max-width:none;margin-bottom:20px}.local-item>a{grid-column:1}.faq-layout{gap:65px}.experiment .wrap{gap:70px}.footer-top{gap:45px}.article-layout{gap:60px;grid-template-columns:185px 1fr}.hero .intro{font-size:13px}}
@media(max-width:740px){.wrap{width:calc(100% - 40px)}.notice{padding:9px 20px;font-size:8px;text-align:left;line-height:1.7}.notice a{float:none;margin-left:6px;white-space:nowrap}.header{height:82px}.header .wrap{width:calc(100% - 40px)}.brand{gap:12px}.brand-mark{width:38px;height:38px;font-size:25px}.brand-name{font-size:19px}.brand-name small{font-size:6px;letter-spacing:.12em;margin-top:7px}.nav{top:82px;background:var(--ink);color:var(--paper);padding:22px 20px;gap:12px;font-size:13px}.nav a{padding:10px 0}.nav .nav-cta{padding:14px 18px}.menu{padding:10px 12px;font-size:10px}.hero-grid{min-height:700px}.hero-copy{padding:72px 24px 38px}.hero .eyebrow{font-size:8px;letter-spacing:.09em;margin-bottom:36px}.hero h1{width:100%;max-width:560px;font-size:clamp(65px,13vw,96px);line-height:.94;letter-spacing:-.07em;margin-bottom:31px;text-wrap:balance}.hero .intro{font-size:12px;line-height:1.8;max-width:310px}.hero-actions{align-items:start;gap:24px;margin-top:29px;flex-direction:column}.hero .button{min-height:49px;font-size:10px;gap:38px}.hero .text-link{font-size:10px}.hero-note{font-size:8px;max-width:270px;line-height:1.6;margin-top:28px}.hero-visual img{height:100%;object-position:56% center}.hero-visual::after{background:linear-gradient(90deg,rgba(12,23,21,.84),rgba(12,23,21,.45) 68%,rgba(12,23,21,.2))}.hero-index{top:25px;right:24px;font-size:7px}.hero-visual figcaption{right:24px;bottom:16px;font-size:7px;max-width:225px}.quick{padding:0 24px;display:grid;grid-template-columns:1fr}.quick a{font-size:10px;padding:15px 0!important;margin:0!important;border-right:0!important;border-color:#ffffff25!important}.quick small{font-size:8px}.quick a>span:last-child{font-size:17px}.section{padding:68px 0}.eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:25px}.eyebrow::before{width:5px;height:5px;vertical-align:1px}.section-head{display:block;margin-bottom:36px}.section-head h2{font-size:46px;line-height:1.02;margin-bottom:25px}.section-head p{font-size:12px;max-width:none;line-height:1.85}.cards{display:block}.card{margin-bottom:36px}.card:first-child img{height:420px}.card img{height:290px}.card h3,.card:first-child h3{font-size:31px;padding-top:18px}.card p{font-size:12px;line-height:1.8}.card .num{font-size:9px;bottom:16px;left:16px}.service-lines{grid-template-columns:1fr;margin-top:35px;gap:19px}.service-lines a{font-size:12px;padding-top:18px}.dark .split{display:flex;flex-direction:column}.dark .split>figure{min-height:390px}.dark .split>figure img{position:absolute;height:100%}.dark .split>figure figcaption{left:20px;font-size:7px;max-width:240px}.dark .split>div{padding:55px 24px 60px}.dark .split h2{font-size:47px;line-height:1.02;max-width:none}.split{gap:32px;display:flex}.split h2{font-size:46px;line-height:1.02}.split img{height:430px}.split p{font-size:12px;line-height:1.85}.number-list li{padding:16px 0}.number-list strong{font-size:12px}.number-list p{font-size:10px}.number-list span{font-size:8px}.button{font-size:10px;gap:25px;padding:13px 17px}.three-col{gap:22px;grid-template-columns:1fr}.three-col>div{padding-top:20px}.three-col h3{font-size:31px;margin-top:19px}.three-col p{font-size:12px}.tag{font-size:8px}.local-grid{display:block}.local-item{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;padding:28px 0}.local-item .area-label{font-size:7px;margin-bottom:20px}.local-item h3{font-size:28px;line-height:1.05;margin:0;max-width:170px}.local-item p{font-size:11px;line-height:1.8}.local-item>a{grid-column:2;font-size:9px;line-height:1.7}.local-foot{font-size:9px;line-height:1.9}.budget{display:block}.budget h2{font-size:46px;line-height:1.04}.budget p{font-size:12px}.budget-panel{margin-top:35px;padding:27px 24px}.budget-panel label{font-size:9px}.budget-panel input{font-size:28px}.budget-panel .eyebrow{font-size:8px}.total output{font-size:55px}.budget-panel .hint{font-size:9px}.guide-list{display:block}.guide-row{grid-template-columns:25px 1fr 18px;padding:25px 0;gap:10px}.guide-row h3{font-size:27px;line-height:1.08}.guide-row p{font-size:11px}.guide-row .index{font-size:8px}.faq-layout{display:block}.faq-layout h2{font-size:46px;line-height:1.04}.faq-layout p{font-size:12px}.faq-layout>div:first-child{margin-bottom:35px}summary{font-size:12px;line-height:1.6;padding:23px 30px 23px 0}summary::after{top:20px}details p{font-size:11px!important;line-height:1.85}.resource-grid{display:block}.resource-grid a{font-size:11px;padding:20px 0;gap:20px}.experiment{padding:60px 0}.experiment .wrap{display:block}.experiment h2{font-size:45px;line-height:1.02;margin-bottom:30px}.experiment p{font-size:12px}.footer-masthead{font-size:65px;line-height:.92;padding:50px 0 40px;margin-bottom:35px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 25px}.footer .brand-name{font-size:20px}.footer .brand-mark{font-size:30px}.footer p{font-size:10px}.footer h3{font-size:8px}.footer li{font-size:10px}.footer-bottom{font-size:8px;line-height:1.8}.page-hero{padding:28px 0 42px}.breadcrumbs{font-size:8px;margin-bottom:40px;line-height:1.8}.page-hero h1{font-size:51px;line-height:1;letter-spacing:-.065em}.page-hero .standfirst{font-size:15px;line-height:1.7}.page-meta{font-size:8px;line-height:1.8}.page-image img{height:330px}.page-image figcaption{font-size:8px}.article-layout{display:block;padding-top:35px}.toc{margin-bottom:40px}.toc a{font-size:10px;display:inline-block;padding:7px 0;margin-right:13px}.article h2{font-size:33px;line-height:1.12;margin-top:45px}.article p,.article li{font-size:13px;line-height:1.9}.article .sources h2{font-size:23px}.article .sources p,.article .sources li{font-size:10px}.related{padding:50px 0}.related h2{font-size:38px}.related .guide-list{display:block}.related .guide-row h3{font-size:25px}}
@media(max-width:380px){.hero h1{font-size:65px}.hero-copy{padding-left:20px;padding-right:20px}.hero-grid{min-height:710px}.section-head h2,.split h2,.budget h2,.faq-layout h2{font-size:41px}.local-item{grid-template-columns:1fr}.local-item h3{max-width:none;margin-bottom:18px}.local-item>a{grid-column:1}.footer-masthead{font-size:57px}}
@media print{.footer-masthead{display:none}.hero-visual{display:none}.hero-copy{padding:30px 0}.hero{background:white;color:black}.hero .intro{color:black}.article-layout{display:block}.article p,.article li{color:black}.page-hero h1{font-size:45px}}

.card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}

/* Explicit surface colours prevent surrounding preview styles overriding contrast. */
h1,h2,h3,h4{color:var(--ink)}
.header,.header .brand,.header .brand-name,.header .brand-name small,.header .nav a,.header .menu{color:#f3f2ed}
.hero h1,.hero h2,.hero h3,.hero .eyebrow,.hero .text-link{color:#f3f2ed!important}
.hero h1{text-shadow:0 2px 26px rgba(0,0,0,.2)}
.hero .intro{color:#e3e8e2!important}
.hero .hero-note,.hero .hero-note span{color:#d5ddd4}
.hero .hero-note span:first-child{background:#ed6a3c}
.quick a,.quick a>span:first-child{color:#f3f2ed!important}
.quick small{color:#bcc8be}
.dark h1,.dark h2,.dark h3,.dark h4,.dark strong,.dark .eyebrow,.dark .number-list strong{color:#f3f2ed!important}
.dark p,.dark .section-head p,.dark .number-list p{color:#cbd5cb!important}
.dark .number-list>li>span{color:#ed6a3c}
.dark .tag{color:#cbd5cb}
.footer .brand,.footer .brand-name,.footer .brand-name small,.footer a,.footer h3{color:#e9eee5!important}
.footer p,.footer-bottom,.footer-bottom span{color:#b8c6b9!important}
.footer .brand-mark{color:#ed6a3c!important}
.button{color:#f3f2ed!important}
.hero .button,.button.light,.dark .button.light{color:#17201f!important}
.header .nav .nav-cta:hover{color:#17201f}
@media(max-width:740px){.hero .intro{font-size:14px}.notice{font-size:10px}.hero-note{font-size:10px}.hero .eyebrow{font-size:10px}.brand-name small{font-size:8px}.hero-visual figcaption{font-size:9px}.dark .split p{font-size:14px}.dark .number-list strong{font-size:13px}.dark .number-list p{font-size:12px}.footer p,.footer li{font-size:12px}.footer h3{font-size:10px}}
/* Alder & Ash: compact compositions and measured motion. */
:root{--accent:#d0b18a;--olive:#866544;--ink:#172322;--paper:#f6f4ef}
.header{height:88px}.header .brand-mark{background:transparent;color:#d0b18a;border:1px solid #d0b18a77;font-size:18px;letter-spacing:-.1em;width:47px;height:47px;gap:1px}.brand-mark span{font-size:12px;font-weight:400}.brand-name{font-size:23px;letter-spacing:.015em;font-weight:500}.brand-name small{font-size:8px;letter-spacing:.19em}.notice{font-size:10px;padding-top:6px;padding-bottom:6px}.hero-grid{min-height:660px}.hero-copy{padding-top:60px;padding-bottom:45px}.hero h1{font-size:clamp(90px,9.2vw,132px);letter-spacing:-.07em;max-width:820px}.hero .intro{font-size:14px;max-width:410px}.hero-note{margin-top:28px;font-size:10px}.hero .button{background:#d0b18a;border-color:#d0b18a}.hero .button:hover{background:#e1c5a1}.quick a{padding-top:22px;padding-bottom:22px}.section{padding:76px 0}.section-head{margin-bottom:35px;gap:70px}.section-head h2{font-size:clamp(44px,4.3vw,62px)}.section-head p{font-size:14px}.cards{gap:25px 38px;grid-template-columns:1.2fr 1fr}.card:first-child img{height:510px}.card img{height:165px}.card h3{font-size:26px;padding-top:15px}.card:first-child h3{font-size:34px}.card p{font-size:13px}.service-lines{margin-top:32px}.dark .split>figure{min-height:650px}.dark .split>div{padding:57px 48px}.dark .split h2{font-size:clamp(42px,4.2vw,60px)}.split{gap:65px}.split img{height:490px}.split h2{font-size:clamp(42px,4.5vw,62px)}.split p{font-size:14px}.three-col{gap:35px}.three-col p{font-size:13px}.three-col h3{font-size:29px;margin-top:18px}.local-grid{gap:0 45px}.local-item{padding:25px 0;grid-template-columns:1fr 1.3fr}.local-item .area-label{margin-bottom:18px}.local-item h3{font-size:29px}.local-item p{font-size:13px}.local-item>a{font-size:11px}.budget{gap:65px}.budget h2,.faq-layout h2{font-size:clamp(42px,4.3vw,60px)}.budget-panel{padding:29px}.budget p{font-size:14px}.guide-list{gap:0 45px}.guide-row{padding:24px 0}.guide-row h3{font-size:25px}.guide-row p{font-size:12px}.faq-layout{gap:70px}summary{font-size:14px;padding-top:22px;padding-bottom:22px}.experiment{padding:58px 0;background:#d0b18a}.experiment h2{font-size:clamp(42px,4.3vw,60px)}.experiment p{font-size:14px}.footer-masthead{font-size:clamp(65px,10.5vw,150px);padding:55px 0 45px;margin-bottom:0}.footer-masthead span{color:#d0b18a}.contact-strip{display:flex;flex-wrap:wrap;gap:25px 45px;align-items:center;padding:28px 0;border-bottom:1px solid #ffffff25;margin-bottom:42px}.contact-strip a{font-size:21px;letter-spacing:-.03em}.contact-strip>span{font-size:10px;color:#bdc7bc}.footer p,.footer li{font-size:12px}.concept-contact{padding:30px;background:#172322;margin:0 0 30px}.concept-contact>a{display:block;font-size:clamp(23px,3vw,38px);line-height:1.4;letter-spacing:-.04em;color:#f6f4ef!important;word-break:break-word}.concept-contact p{font-size:12px;color:#cbd5cb;margin-top:20px}.concept-contact .eyebrow{color:#d0b18a}.button,.card,.nav a,.service-lines a,.guide-row,.resource-grid a{transition:background .25s,color .25s,transform .35s,border-color .25s}.button:hover{transform:translateY(-2px)}.card:hover h3>span,.guide-row:hover>span:last-child,.resource-grid a:hover>span{transform:translate(3px,-3px)}.card h3>span,.guide-row>span:last-child,.resource-grid a>span{display:inline-block;transition:transform .3s}.service-lines a:hover{color:#866544}.card:hover img{transform:scale(1.045)}.hero h1{animation:aa-enter 900ms cubic-bezier(.16,1,.3,1) both}.hero .intro{animation:aa-enter 900ms 100ms cubic-bezier(.16,1,.3,1) both}.hero-actions{animation:aa-enter 900ms 200ms cubic-bezier(.16,1,.3,1) both}.hero-visual img{animation:aa-image 1600ms cubic-bezier(.2,.65,.25,1) both}.aa-reveal{transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.aa-motion .aa-reveal:not(.aa-visible){opacity:0;transform:translateY(24px)}.aa-motion .aa-reveal.aa-visible{opacity:1;transform:translateY(0)}
@keyframes aa-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes aa-image{from{transform:scale(1.055)}to{transform:scale(1)}}
@media(max-width:1100px){.hero-grid{min-height:625px}.hero h1{font-size:100px}.section{padding:65px 0}.dark .split>div{padding:48px 35px}.card:first-child img{height:490px}.card img{height:155px}.card p{font-size:12px}.local-item{grid-template-columns:1fr}.local-item h3{margin-bottom:15px}.local-item>a{grid-column:1}.contact-strip a{font-size:19px}}
@media(max-width:740px){.header{height:78px}.nav{top:78px}.brand-name{font-size:19px}.brand-name small{font-size:7px}.header .brand-mark{height:38px;width:38px;font-size:16px}.hero-grid{min-height:650px}.hero-copy{padding:55px 24px 35px}.hero h1{font-size:clamp(65px,13vw,96px)}.hero .eyebrow{font-size:9px;margin-bottom:30px}.hero .intro{font-size:14px}.hero-actions{gap:20px}.section{padding:50px 0}.section-head h2{font-size:41px}.section-head p{font-size:13px}.cards{display:block}.card:first-child img{height:340px}.card img{height:250px}.card{margin-bottom:30px}.card p{font-size:13px}.card h3,.card:first-child h3{font-size:29px}.service-lines{margin-top:25px}.dark .split>figure{min-height:320px}.dark .split>div{padding:42px 24px}.dark .split h2{font-size:43px}.split img{height:360px}.split h2{font-size:41px}.split p,.three-col p,.budget p{font-size:13px}.local-item{grid-template-columns:1fr}.local-item h3{max-width:none;font-size:30px;margin-bottom:15px}.local-item p{font-size:13px}.local-item>a{grid-column:1;font-size:11px}.local-item .area-label{font-size:9px}.local-foot{font-size:11px}.budget h2,.faq-layout h2{font-size:41px}.guide-row h3{font-size:26px}.guide-row p{font-size:12px}summary{font-size:13px}.experiment{padding:45px 0}.experiment h2{font-size:41px}.experiment p{font-size:13px}.footer-masthead{font-size:62px;padding:40px 0}.contact-strip{display:block;padding:22px 0;margin-bottom:32px}.contact-strip a{display:block;font-size:22px;margin-bottom:8px}.contact-strip>span{font-size:10px}.concept-contact{padding:22px}.footer p,.footer li{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero .intro,.hero-actions,.hero-visual img{animation:none!important}.aa-motion .aa-reveal:not(.aa-visible){opacity:1;transform:none}.aa-reveal{transition:none!important}}

.footer .brand-mark{color:#d0b18a!important}.hero .hero-note span:first-child{background:#d0b18a}.header-phone{font-variant-numeric:tabular-nums}.nav{gap:24px}@media(max-width:1100px){.nav{gap:15px;font-size:10px}}@media(max-width:740px){.nav{font-size:13px;gap:12px}}

summary h3{display:inline;font:inherit;letter-spacing:inherit;color:inherit!important;margin:0;line-height:inherit}.local-item h3{font-size:27px;line-height:1.1}@media(max-width:740px){.local-item h3{font-size:29px}}
/* Audit: readable small copy, narrow-screen identity, print and contact wrapping. */
.notice{font-size:11px}.contact-strip a{overflow-wrap:anywhere}.page-meta,.page-image figcaption{font-size:11px}.toc a{font-size:12px}.footer-bottom{font-size:11px}.article .sources p,.article .sources li{font-size:12px}.hero-note{font-size:11px}.hero-visual figcaption{font-size:10px}.footer h3{font-size:11px}.tag,.local-item .area-label{font-size:10px}
@media(max-width:1100px){.nav{font-size:11px;gap:14px}}
@media(max-width:740px){.notice{font-size:11px}.toc a{font-size:12px}.page-meta,.page-image figcaption{font-size:11px}.footer-bottom{font-size:11px}.hero-note{font-size:11px}.nav{font-size:14px}.header .wrap{gap:12px}.brand-name{font-size:18px}.brand-name small{font-size:7px}.hero-visual figcaption{font-size:10px}}
@media(max-width:380px){.brand-name{font-size:15px}.header .brand-mark{width:33px;height:33px;font-size:14px}.brand{gap:8px}.brand-name small{font-size:6px}.contact-strip a{font-size:19px}}
@media print{.aa-reveal{opacity:1!important;transform:none!important}.hero h1,.hero h2,.hero p,.hero a{color:#172322!important}.hero-grid{min-height:0}.hero-visual{display:none}.hero-copy{padding:25px 0}.hero .eyebrow{color:#172322!important}.concept-contact{background:#f6f4ef}.concept-contact a,.concept-contact p{color:#172322!important}}
/* Audit: prevent nested guide grids expanding the tablet article column. */
.article-layout>*{min-width:0}.article .guide-list{grid-template-columns:1fr}.guide-row>div{min-width:0}.card .num{background:#172322e8;color:#f6f4ef;font-size:11px;border:0}

/* Four existing core topics receive equal visual weight, preserving the card design. */
@media(min-width:1101px){.cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:741px) and (max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cards .card:first-child{grid-row:auto}
.cards .card .image{aspect-ratio:4/3;overflow:hidden}
.cards .card .image img,.cards .card:first-child .image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.cards .card h3,.cards .card:first-child h3{font-size:clamp(24px,2vw,31px)}
