@font-face{font-family:Figtree;src:url('/assets/fonts/figtree-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Figtree;src:url('/assets/fonts/figtree-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Figtree;src:url('/assets/fonts/figtree-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Barlow Condensed;src:url('/assets/fonts/barlow-condensed-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--aubergine:#2b1237;--plum:#4b1d4f;--apricot:#ff9868;--orange:#a8441f;--mint:#bdebd4;--cream:#fff9ef;--paper:#f4eee2;--ink:#271b27;--muted:#6c606a;--white:#fff;--line:rgba(43,18,55,.16);--shadow:0 22px 60px rgba(43,18,55,.17);--display:'Barlow Condensed',sans-serif;--body:Figtree,sans-serif;--shell:min(1180px,calc(100% - 44px));--radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.65 var(--body);text-rendering:optimizeLegibility}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}p,li{max-width:72ch}.shell{width:var(--shell);margin-inline:auto}.narrow{max-width:800px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}::selection{background:var(--apricot);color:var(--aubergine)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:var(--plum);border:3px solid var(--paper);border-radius:999px}.skip-link{position:fixed;left:18px;top:-90px;z-index:1000;background:var(--mint);color:var(--aubergine);padding:12px 18px;border-radius:10px;font-weight:700}.skip-link:focus{top:18px}.utility{background:var(--aubergine);color:#f8eefa;font-size:13px}.utility .shell{display:flex;justify-content:space-between;align-items:center;min-height:36px}.utility a{color:var(--mint);font-weight:700}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,249,239,.95);border-bottom:1px solid var(--line)}.nav-shell{min-height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--aubergine)}.brand-mark{width:46px;height:46px;background:var(--apricot);border-radius:13px;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;padding:8px;transform:rotate(-2deg)}.brand-mark i{display:block;background:var(--aubergine);height:48%;border-radius:3px 3px 1px 1px}.brand-mark i:nth-child(2){height:100%}.brand-mark i:nth-child(3){height:72%}.brand span:last-child{display:grid;line-height:1}.brand b{font:700 25px/.9 var(--display);text-transform:uppercase;letter-spacing:.02em}.brand small{text-transform:uppercase;font-size:9px;letter-spacing:.18em;margin-top:5px;font-weight:700}.site-nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.site-nav>a:not(.button),.nav-group>a{padding:28px 0;position:relative}.site-nav>a:not(.button):hover,.nav-group>a:hover{color:var(--orange)}.nav-group{position:relative;display:flex;align-items:center;gap:4px}.submenu-toggle{width:28px;height:28px;border:0;background:transparent;border-radius:50%;cursor:pointer;font-weight:700;color:var(--aubergine)}.submenu{position:absolute;top:68px;left:-18px;width:278px;padding:10px;background:var(--white);border-radius:14px;box-shadow:var(--shadow);display:grid;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s ease-out}.submenu a{padding:10px 12px;border-radius:9px}.submenu a:hover,.submenu a:focus-visible{background:var(--mint)}.nav-group:hover .submenu,.nav-group:focus-within .submenu,.nav-group.open .submenu{opacity:1;visibility:visible;transform:none}.menu-toggle{display:none;width:46px;height:46px;padding:12px;border:0;background:transparent}.menu-toggle>span:not(.sr-only){display:block;height:2px;background:var(--aubergine);margin:5px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 23px;background:var(--aubergine);color:var(--white);border:2px solid var(--aubergine);border-radius:12px;font-weight:700;transition:transform .18s ease-out,box-shadow .18s ease-out,background .18s ease-out}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(43,18,55,.23);background:var(--plum)}.button-light{background:var(--mint);border-color:var(--mint);color:var(--aubergine)}.text-link{font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.light{color:var(--white)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.home-hero{padding:52px 0 72px;overflow:hidden}.home-hero .shell{display:grid;grid-template-columns:.84fr 1.16fr;gap:62px;align-items:center}.route-label,.meta{margin:0 0 13px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;color:var(--orange)}.hero-copy h1,.page-intro h1,.service-hero h1,.article-header h1{font:700 clamp(54px,7.2vw,96px)/.87 var(--display);text-transform:uppercase;letter-spacing:-.025em;margin:0 0 25px;max-width:760px;text-wrap:balance}.hero-copy h1 span{color:var(--orange)}.hero-copy>p:not(.route-label){font-size:20px;color:var(--muted);max-width:560px}.hero-copy .actions{margin-top:30px}.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:45px 0 0;padding-top:22px;border-top:1px solid var(--line)}.hero-facts div{display:grid}.hero-facts dt{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--muted);font-weight:700}.hero-facts dd{margin:4px 0 0;font-weight:700}.hero-visual{position:relative;min-height:620px}.hero-main{position:absolute;inset:0 0 60px 70px;width:calc(100% - 70px);height:560px;object-fit:cover;clip-path:polygon(0 7%,100% 0,94% 91%,9% 100%);box-shadow:var(--shadow)}.hero-detail{position:absolute;left:-12px;bottom:0;width:245px;height:190px;object-fit:cover;border:10px solid var(--cream);border-radius:var(--radius);box-shadow:var(--shadow)}.photo-tag{position:absolute;right:6px;bottom:28px;background:var(--mint);color:var(--aubergine);padding:13px 18px;border-radius:999px;font-weight:700;transform:rotate(-2deg)}.route-line{position:absolute;z-index:-1;inset:30px -70px -30px 20px;border:3px dashed var(--apricot);border-radius:52% 48% 46% 54%;transform:rotate(4deg)}.marquee{overflow:hidden;background:var(--apricot);color:var(--aubergine);border-block:2px solid var(--aubergine)}.marquee div{white-space:nowrap;font:700 29px/1 var(--display);text-transform:uppercase;letter-spacing:.04em;padding:17px 0;transform:translateX(-12px)}.marquee i{display:inline-block;width:10px;height:10px;margin:0 24px;background:var(--aubergine);border-radius:50%}.section{padding:96px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-head h2,.process-title h2,.facts-split h2,.scope h2,.prep-band h2,.guide-link h2,.faq-section h2,.article-next h2,.closing h2{font:700 clamp(39px,5vw,64px)/.92 var(--display);text-transform:uppercase;letter-spacing:-.02em;margin:0;text-wrap:balance;max-width:700px}.section-head p{max-width:440px;color:var(--muted)}.services-stage{background:var(--paper)}.service-poster-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.service-poster-grid>a{grid-column:span 4;min-height:285px;padding:26px;background:var(--cream);border-radius:var(--radius);display:flex;flex-direction:column;transition:transform .18s ease-out,background .18s ease-out}.service-poster-grid>a:nth-child(1),.service-poster-grid>a:nth-child(6){grid-column:span 8;background:var(--mint)}.service-poster-grid>a:nth-child(3){background:var(--apricot)}.service-poster-grid>a:hover{transform:translateY(-5px);background:var(--white)}.service-poster-grid span{font:700 18px var(--display);color:var(--orange)}.service-poster-grid h3{font:700 36px/.95 var(--display);text-transform:uppercase;margin:34px 0 10px}.service-poster-grid p{font-size:15px;color:var(--muted)}.service-poster-grid b{margin-top:auto;font-size:14px}.process{background:var(--aubergine);color:var(--white)}.process .shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.process-title p{color:#dccde0}.process ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.15)}.process li{padding:28px;background:var(--aubergine);min-height:230px}.process li b{color:var(--apricot);font:700 20px var(--display)}.process li h3{font:700 29px/1 var(--display);text-transform:uppercase;margin:35px 0 10px}.process li p{font-size:15px;color:#dccde0}.facts-split .shell,.location-layout .shell,.scope .shell{display:grid;grid-template-columns:1fr .82fr;gap:74px;align-items:start}.facts-split aside,.scope aside,.location-layout aside{background:var(--mint);padding:34px;border-radius:var(--radius);box-shadow:12px 14px 0 var(--aubergine)}.facts-split aside strong,.location-layout aside strong{font:700 31px var(--display);text-transform:uppercase}.facts-split li{margin:9px 0}.area-stage{background:var(--apricot)}.area-stage .section-head p{color:#56384f}.area-chips{display:flex;flex-wrap:wrap;gap:12px}.area-chips a{background:var(--cream);border:2px solid var(--aubergine);border-radius:999px;padding:13px 18px;font-weight:700}.area-chips span{font-weight:400;margin-left:8px;color:var(--muted)}.closing{background:var(--plum);color:var(--white);padding:72px 0}.closing .shell{display:flex;align-items:center;justify-content:space-between;gap:50px}.closing p{color:#e9dae9}.page-intro{background:var(--paper);padding:68px 0}.page-intro .shell{display:grid;grid-template-columns:1fr .82fr;gap:58px;align-items:center}.page-intro h1{font-size:clamp(52px,6.2vw,82px)}.page-intro p,.service-hero p,.article-header>div>p{font-size:20px;color:var(--muted)}.page-intro img{height:360px;object-fit:cover;clip-path:polygon(5% 0,100% 8%,94% 100%,0 91%)}.service-list{display:grid;gap:48px}.service-list article{display:grid;grid-template-columns:.75fr 1.25fr;gap:44px;align-items:center}.service-list article:nth-child(even) img{order:2}.service-list img{height:290px;object-fit:cover;border-radius:var(--radius)}.service-list h2{font:700 47px/1 var(--display);text-transform:uppercase;margin:0 0 13px}.area-list{display:grid;grid-template-columns:1fr 1fr}.area-list a{padding:23px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:3px 20px}.area-list strong{font:700 28px var(--display);text-transform:uppercase}.area-list span{font-size:14px;color:var(--muted)}.area-list span:last-child{grid-row:1/3;grid-column:2;align-self:center;color:var(--orange);font-weight:700}.article-index{display:grid;gap:38px}.article-index article{display:grid;grid-template-columns:360px 1fr;gap:38px;align-items:center}.article-index img{height:240px;object-fit:cover;border-radius:var(--radius)}.article-index h2{font:700 39px/1 var(--display);text-transform:uppercase;margin:0 0 12px}.service-hero{padding:70px 0 90px;background:var(--paper);overflow:hidden}.service-hero .shell{display:grid;grid-template-columns:.86fr 1.14fr;gap:60px;align-items:center}.back-link{display:inline-block;margin-bottom:22px;font-weight:700;color:var(--orange)}.service-hero h1{font-size:clamp(52px,6.5vw,88px)}.service-hero .actions{margin-top:28px}.service-photo-stack{position:relative;min-height:520px}.service-photo-stack img:first-child{position:absolute;right:0;top:0;width:86%;height:390px;object-fit:cover;clip-path:polygon(6% 0,100% 6%,95% 100%,0 93%)}.service-photo-stack img:last-child{position:absolute;left:0;bottom:0;width:54%;height:250px;object-fit:cover;border:10px solid var(--paper);border-radius:var(--radius)}.tick-list{list-style:none;padding:0;margin:28px 0;display:grid;gap:13px}.tick-list li{display:flex;gap:12px;align-items:flex-start}.tick-list li:before{content:'✓';flex:0 0 28px;width:28px;height:28px;display:grid;place-items:center;background:var(--apricot);border-radius:50%;font-weight:700}.scope aside h3{font:700 34px/1 var(--display);text-transform:uppercase;margin:0 0 12px}.estimate-factors{background:var(--paper)}.factor-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--aubergine)}.factor-list div{padding:25px 20px;border-bottom:1px solid var(--line)}.factor-list span{font:700 17px var(--display);color:var(--orange)}.factor-list p{font-weight:700;font-size:18px}.prep-band{background:var(--apricot)}.prep-band .shell{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px;align-items:start}.prep-band p{font-size:23px;margin:0}.guide-link .shell{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:center}.guide-link img{height:340px;object-fit:cover;clip-path:polygon(0 5%,95% 0,100% 92%,7% 100%)}.faq-section{background:var(--paper)}.faq-section h2{margin-bottom:30px}.faq-list{display:grid;gap:12px}.faq-list details{background:var(--white);border-radius:12px;padding:19px 22px}.faq-list summary{cursor:pointer;font-weight:700;list-style:none}.faq-list summary:after{content:'+';float:right;font-size:22px;color:var(--orange)}.faq-list details[open] summary:after{content:'–'}.faq-list p{color:var(--muted);margin-bottom:4px}.location-layout h2,.prose h2,.article-body h2{font:700 39px/1.03 var(--display);text-transform:uppercase;margin:46px 0 14px}.location-layout aside{position:sticky;top:120px}.location-layout aside .button{margin-top:18px}.prose>h2:first-child{margin-top:0}.prose a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.prose li{margin:9px 0}.contact-panel{background:var(--aubergine);color:var(--white);padding:34px;border-radius:var(--radius);display:grid;gap:8px;margin:0 0 45px}.contact-panel h2{margin:0 0 15px}.contact-line{font:700 clamp(28px,5vw,45px)/1 var(--display);text-transform:uppercase;color:var(--mint)}.article-header{background:var(--paper);padding:66px 0 0}.article-header h1{font-size:clamp(52px,6.2vw,82px)}.byline{display:flex;gap:22px;flex-wrap:wrap;margin:25px 0 36px;font-size:14px;font-weight:700}.article-image img{max-height:620px;object-fit:cover;border-radius:var(--radius)}.article-body{padding:70px 0 90px}.article-body .lead{font-size:22px}.article-body section{scroll-margin-top:110px}.article-body li{margin:9px 0}.article-next{margin-top:58px;background:var(--mint);padding:34px;border-radius:var(--radius)}.article-next h2{font-size:42px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr 1fr;gap:50px}.site-footer{background:#1d0c25;color:#e6dce8;padding:70px 0 24px}.footer-brand{color:var(--white);margin-bottom:22px}.site-footer h2{font:700 18px var(--display);text-transform:uppercase;color:var(--apricot);margin:0 0 16px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:14px}.footer-grid>div:first-child p{color:#bdaec0;max-width:350px}.footer-phone{font:700 29px var(--display);color:var(--mint)}.footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:42px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);font-size:12px;color:#a99aac}
@media(max-width:980px){.menu-toggle{display:block}.site-nav{position:absolute;top:82px;left:22px;right:22px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav>a:not(.button),.nav-group>a{padding:12px}.nav-group{display:grid;grid-template-columns:1fr 46px}.submenu-toggle{width:46px;height:46px}.submenu{position:static;grid-column:1/-1;width:auto;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;background:var(--paper);margin-bottom:8px}.nav-group.open .submenu{display:grid}.nav-group:hover .submenu:not(.open){opacity:1}.home-hero .shell,.page-intro .shell,.service-hero .shell{grid-template-columns:1fr}.hero-visual{min-height:560px}.hero-main{left:80px;width:calc(100% - 80px);height:500px}.process .shell{grid-template-columns:1fr;gap:45px}.service-poster-grid>a{grid-column:span 6}.service-poster-grid>a:nth-child(1),.service-poster-grid>a:nth-child(6){grid-column:span 6}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.article-index article{grid-template-columns:300px 1fr}}
@media(max-width:700px){:root{--shell:min(100% - 28px,1180px)}body{font-size:16px}.utility .shell span{display:none}.utility .shell{justify-content:center}.nav-shell{min-height:72px}.site-nav{top:72px;left:14px;right:14px}.brand b{font-size:22px}.brand-mark{width:42px;height:42px}.home-hero{padding:38px 0 60px}.hero-copy h1,.page-intro h1,.service-hero h1,.article-header h1{font-size:clamp(48px,15vw,68px)}.hero-copy>p:not(.route-label),.page-intro p,.service-hero p,.article-header>div>p{font-size:18px}.hero-facts{grid-template-columns:1fr 1fr}.hero-visual{min-height:390px}.hero-main{left:20px;width:calc(100% - 20px);height:360px}.hero-detail{width:155px;height:125px;border-width:6px}.photo-tag{display:none}.marquee div{font-size:23px}.section{padding:67px 0}.section-head,.closing .shell{align-items:flex-start;flex-direction:column}.service-poster-grid{display:grid;grid-template-columns:1fr}.service-poster-grid>a,.service-poster-grid>a:nth-child(1),.service-poster-grid>a:nth-child(6){grid-column:1;min-height:245px}.process ol{grid-template-columns:1fr}.process li{min-height:190px}.facts-split .shell,.location-layout .shell,.scope .shell,.prep-band .shell,.guide-link .shell{grid-template-columns:1fr;gap:38px}.location-layout aside{position:static}.area-chips{display:grid}.area-chips a{display:flex;justify-content:space-between}.page-intro{padding:50px 0}.page-intro img{height:270px}.service-list article,.article-index article{grid-template-columns:1fr;gap:20px}.service-list article:nth-child(even) img{order:initial}.service-list img{height:230px}.area-list{grid-template-columns:1fr}.service-photo-stack{min-height:390px}.service-photo-stack img:first-child{height:300px}.service-photo-stack img:last-child{width:52%;height:160px;border-width:6px}.factor-list{grid-template-columns:1fr 1fr}.guide-link img{height:270px}.article-image{width:100%}.article-image img{border-radius:0}.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.contact-line{word-break:break-word}}
@media(max-width:430px){.hero-facts,.factor-list,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:auto}.actions{align-items:stretch;flex-direction:column}.actions .button{width:100%}.hero-visual{min-height:330px}.hero-main{height:300px}.hero-detail{width:135px;height:110px}.service-photo-stack{min-height:340px}.service-photo-stack img:first-child{height:260px}.service-photo-stack img:last-child{height:140px}}

/* Final interface refinement */
.submenu-toggle svg,.inline-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.submenu-toggle svg{display:block;margin:auto}
.inline-icon{width:1.05em;height:1.05em;vertical-align:-.16em}
.icon-link,.service-poster-grid b,.area-list span:last-child{display:inline-flex;align-items:center;gap:.35em}
.article-meta{margin:14px 0;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700;color:var(--orange)}
.facts-split aside,.scope aside,.location-layout aside{box-shadow:0 18px 42px rgba(43,18,55,.16)}
.tick-list li:before{content:'';background:var(--apricot) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='%232b1237' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px 18px no-repeat}
.contact-email{font:700 clamp(18px,3vw,24px)/1.25 var(--body);text-transform:none;overflow-wrap:anywhere}
.service-poster-grid>a:nth-child(3) span{color:var(--aubergine)}
.service-poster-grid>a:nth-child(3) p{color:var(--ink)}
@keyframes heroRouteSettle{from{clip-path:polygon(0 10%,100% 2%,92% 89%,11% 100%);filter:saturate(.9) brightness(.98);transform:translateY(8px)}to{clip-path:polygon(0 7%,100% 0,94% 91%,9% 100%);filter:none;transform:none}}
@media(prefers-reduced-motion:no-preference){.hero-main{animation:heroRouteSettle .75s cubic-bezier(.22,1,.36,1) both}}
@media(max-width:700px){.contact-line{word-break:normal}.contact-email{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

