/* ERD v2 — typography, composition and motion. Self-hosted fonts; no third-party requests. */
@font-face{font-family:ERD Space;font-style:normal;font-display:swap;font-weight:300 700;src:url(fonts/space-grotesk-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:ERD Space;font-style:normal;font-display:swap;font-weight:300 700;src:url(fonts/space-grotesk-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#090b0a;--dark:#111513;--yellow:#edff36;--paper:#f1f2ec;--muted:#979f98;--max:1376px;--motion-ease:cubic-bezier(.16,1,.3,1)}
body{font-family:ERD Space,Arial,sans-serif;background:var(--ink);color:#f1f4ec}h1,h2,h3{font-weight:500;letter-spacing:-.055em}h2{font-size:clamp(36px,4.6vw,66px);line-height:1.04}.section{padding:115px 0}.wrap{width:min(var(--max),calc(100% - 96px))}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:500;margin-bottom:25px}.eyebrow:before{width:5px;height:5px;transform:rotate(45deg)}.light .eyebrow{color:#62695d}.muted-word{color:#67726c}.soft-word{color:#858d7d}.ink-highlight{position:relative;display:inline-block;isolation:isolate}.ink-highlight:after{content:'';position:absolute;left:-5px;right:-9px;bottom:0;height:44%;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.btn{border-radius:100px;padding:17px 25px;min-height:58px;font-size:12px;font-weight:500;letter-spacing:-.01em;gap:24px;position:relative;isolation:isolate;overflow:hidden;transition:background .25s,box-shadow .35s,transform .5s var(--motion-ease)}.btn:before{content:'';position:absolute;z-index:-1;inset:0;background:#fff;transform:translateY(105%);transition:transform .5s var(--motion-ease);border-radius:inherit}.btn:hover:before{transform:translateY(0)}.btn:hover{background:var(--yellow);box-shadow:0 0 35px #edff3617}.btn-ghost:before{background:#ffffff0b}.btn-ghost:hover{background:transparent}.btn svg{transition:transform .45s var(--motion-ease)}.btn:hover svg{transform:rotate(45deg)}.text-link{gap:28px;font-size:12px;font-weight:500}.text-link svg{transition:transform .45s var(--motion-ease)}.text-link:hover svg{transform:rotate(45deg)}.section-head{margin-bottom:56px}.section-summary{max-width:330px}.section-summary>p{font-size:13px;line-height:1.9;margin-bottom:10px}
/* Floating masthead */
.topbar{background:#090b0a;border-bottom:0;font-size:10px}.topbar .wrap{min-height:32px;color:#7e8b80}.topbar a{color:#b3bead}.site-header{background:none;border:0;backdrop-filter:none;padding:9px 0 12px;top:0;transition:padding .4s var(--motion-ease)}.header-inner{height:78px;padding:0 24px;background:#141815eb;border:1px solid #ffffff12;border-radius:100px;box-shadow:0 16px 45px #0002;backdrop-filter:blur(24px);gap:30px;transition:height .4s var(--motion-ease),border-color .3s,background .3s}.site-header.is-scrolled .header-inner{height:68px;background:#141815f5;border-color:#ffffff20}.brand img{width:117px;height:38px}.brand-copy strong{font-size:10px;font-weight:500;letter-spacing:.16em}.brand-copy span{font-size:8px;letter-spacing:.12em}.desktop-nav{font-size:11px;font-weight:400;gap:27px}.desktop-nav>a{position:relative}.desktop-nav>a:after{content:'';position:absolute;width:4px;height:4px;background:var(--yellow);border-radius:50%;left:50%;bottom:16px;transform:translate(-50%,6px);opacity:0;transition:opacity .25s,transform .25s}.desktop-nav>a:hover:after,.desktop-nav>a[aria-current=page]:after{opacity:1;transform:translate(-50%,0)}.header-actions{display:flex;gap:12px;align-items:center;flex-shrink:0}.header-cta{min-height:44px;padding:12px 19px;font-size:11px;gap:22px;margin:0}.motion-toggle{width:36px;height:36px;color:#acb9a2;display:grid;place-items:center;border:1px solid #ffffff15;border-radius:50%;transition:background .3s,color .3s}.motion-toggle:hover{background:#edff3614;color:var(--yellow)}.motion-toggle svg{width:18px;height:18px;animation:slow-spin 18s linear infinite}.motion-toggle[aria-pressed=true] svg{animation-play-state:paused}.motion-toggle[aria-pressed=true]{color:#71816a}.mega{top:calc(100% + 0px);left:48px;right:48px;max-width:1376px;margin-inline:auto;border:1px solid #ffffff16;border-radius:24px;padding:28px 0;background:#171d19f8;backdrop-filter:blur(30px);box-shadow:0 40px 90px #0007;animation:mega-in .45s var(--motion-ease)}.mega>.wrap{width:calc(100% - 64px)}.mega-top{padding-bottom:18px;margin-bottom:27px}.mega-top span{font-size:9px;letter-spacing:.12em}.mega-layout{gap:23px}.mega-group h3{font-size:11px;font-weight:500;letter-spacing:-.01em}.mega-group a{font-size:11px;transition:color .2s,transform .3s}.mega-group a:hover{transform:translateX(5px)}.mega-aside{border-radius:14px;position:relative;overflow:hidden}.mega-aside:after{content:'';position:absolute;width:100px;height:100px;border:1px solid #12190c20;border-radius:50%;bottom:-30px;right:-30px;pointer-events:none}.mega-aside strong{font-weight:500;line-height:1.12}.menu-shade{inset:0;background:#0008;backdrop-filter:blur(8px)}.mobile-dialog{background:#0d120e;padding:27px;border-left:1px solid #ffffff12}.mobile-dialog[open]{animation:drawer-in .5s var(--motion-ease)}.mobile-dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.mobile-links>a,.mobile-links summary{font-weight:400;letter-spacing:-.04em;font-size:29px}.mobile-sub a{font-size:13px}.mobile-sub strong{font-weight:500}.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:99;pointer-events:none}.reading-progress>span{display:block;height:100%;width:100%;transform:scaleX(var(--page-progress,0));transform-origin:0 50%;background:var(--yellow);box-shadow:0 0 10px #edff3670}
/* Cinematic hero */
.hero{position:relative;background:#090b0a;isolation:isolate;overflow:hidden}.hero>.wrap{position:relative;z-index:2}.hero-grid{position:absolute;inset:0;z-index:0;opacity:.2;background-image:linear-gradient(#adbf8b13 1px,transparent 1px),linear-gradient(90deg,#adbf8b13 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(90deg,transparent 2%,#000 70%,transparent)}.hero-glow{position:absolute;width:60vw;height:60vw;max-width:900px;max-height:900px;right:-5vw;top:-15%;border-radius:50%;background:radial-gradient(ellipse,#bdde1f0b,transparent 65%);animation:breathe 12s ease-in-out infinite}.hero-network{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.8}.hero-stage{display:grid;position:relative}.hero-slide{grid-area:1/1;grid-template-columns:1fr 1.1fr;gap:0;min-height:620px;animation:none;isolation:isolate;position:relative;min-width:0}.hero-copy{padding:42px 0 40px;position:relative;z-index:4;min-width:0}.hero-eyebrow{font-size:9px;letter-spacing:.14em;color:#bcc8af;display:flex;align-items:center;gap:10px;margin-bottom:25px;font-weight:400}.status-dot{width:6px;height:6px;background:var(--yellow);border-radius:50%;box-shadow:0 0 12px #edff3640;position:relative}.status-dot:after{content:'';position:absolute;inset:-4px;border:1px solid #edff3645;border-radius:50%;animation:status-pulse 3s ease-out infinite}.hero-edition{font-size:8px;letter-spacing:.08em;margin-left:15px;color:#626e65}.hero h1,.hero h2{font-size:clamp(70px,7.4vw,110px);font-weight:500;line-height:.98;letter-spacing:-.065em;max-width:none;margin-left:-5px}.title-line{display:block;overflow:clip;padding-bottom:.08em;margin-bottom:-.08em}.title-line>span{display:inline-block;transform-origin:left bottom;animation:title-in 1.1s var(--motion-ease) both}.title-line.line-2>span{color:#c1cbb5;animation-delay:.1s}.title-line.line-3>span{color:var(--yellow);animation-delay:.2s}.hero-desc{font-size:13px;line-height:1.9;max-width:390px;margin-top:27px;color:#99a696}.hero-copy .actions{gap:8px;margin-top:27px;animation:fade-up .9s .25s var(--motion-ease) both}.hero-copy .btn{min-height:52px;padding:15px 23px;font-size:11px}.hero-copy .btn-ghost{padding-left:20px;gap:18px}.hero-signature{display:flex;align-items:center;gap:13px;margin-top:30px;max-width:352px}.hero-signature>span:nth-child(2){font-size:8px;letter-spacing:.12em;line-height:1.8;color:#71806d}.signature-line{width:33px;height:1px;background:#edff3660}.scroll-cue{margin-left:auto;display:grid;place-items:center;width:30px;height:42px;border:1px solid #ffffff22;border-radius:30px;transition:border-color .3s}.scroll-cue svg{width:14px;height:14px;transform:rotate(90deg);animation:scroll-nudge 2.5s ease-in-out infinite}.scroll-cue:hover{border-color:var(--yellow)}.hero-visual{align-self:stretch;position:relative;display:block;perspective:1200px;min-width:0;z-index:1}.device-scene{position:absolute;inset:11% -13% 9% -12%;z-index:2;display:flex;align-items:center;justify-content:center;transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0);transition:transform 1.2s var(--motion-ease);pointer-events:none}.device-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#090b0a 0%,transparent 16%,transparent 89%,#090b0a 100%)}.device-scene>img{width:100%;height:100%;max-width:none;object-fit:cover;mix-blend-mode:lighten;mask-image:radial-gradient(ellipse at 57% 55%,#000 48%,transparent 78%);animation:device-in 1.5s .1s var(--motion-ease) both}.orbital-scene{position:absolute;inset:0;pointer-events:none;z-index:0}.orbit{position:absolute;width:90%;aspect-ratio:1;left:5%;top:2%;border:1px solid #d1ed3520;border-radius:50%;transform:rotateX(64deg) rotate(-35deg);animation:orbit-sway 22s ease-in-out infinite alternate}.orbit-a:before{content:'';position:absolute;inset:7%;border:1px dashed #e0f44d16;border-radius:50%}.orbit-b{width:100%;left:0;top:3%;transform:rotateX(25deg) rotateY(65deg);animation:orbit-sway-b 26s ease-in-out infinite alternate}.orbit-c{width:72%;left:15%;top:15%;border-style:dashed;border-color:#b5c57917;transform:rotateX(35deg) rotateY(-20deg);animation:slow-spin 45s linear infinite}.orbit-point{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--yellow);box-shadow:0 0 18px #edff36b0;animation:breathe 5s ease-in-out infinite}.point-a{right:8%;top:22%}.point-b{left:12%;bottom:23%;width:3px;height:3px;opacity:.5;animation-delay:2s}.scene-coordinate{position:absolute;top:40px;right:0;color:#5f705e;font-family:monospace;font-size:8px;line-height:2;letter-spacing:.14em;z-index:3}.scene-coordinate span{color:#b8c6a5}.scene-index{position:absolute;right:20px;top:12px;font-weight:300;font-size:205px;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px #c9de5910;line-height:1;z-index:1;pointer-events:none}.hero-note{z-index:4;bottom:67px;right:0;min-width:285px;gap:13px;padding:16px 20px;border:1px solid #9dab7d2e;background:linear-gradient(120deg,#232d1eb3,#101a0eeb);border-radius:16px;box-shadow:0 18px 50px #0005;animation:float-note 7s ease-in-out infinite;backdrop-filter:blur(25px)}.hero-note .note-icon{width:42px;height:42px;border-radius:11px;box-shadow:0 0 25px #edff3614}.hero-note strong{font-size:11px;font-weight:500;letter-spacing:-.02em}.hero-note small{font-size:9px;color:#839178}.hero-note>svg{margin-left:auto;color:#d1e1bb;width:18px;height:18px;transition:transform .4s}.hero-note:hover>svg{transform:translate(3px,-3px)}.scene-label{position:absolute;bottom:34px;right:0;font-family:monospace;font-size:7px;letter-spacing:.2em;color:#4b5d43;z-index:3}.hero-controls{border-top:1px solid #c9db9b20;margin-top:10px;gap:0}.hero-tabs{gap:27px}.hero-tab{padding:27px 0;color:#7d8d75;gap:17px}.hero-tab b{font-size:9px;color:#5f7256}.hero-tab strong{font-size:11px;font-weight:400}.hero-tab small{font-size:8px;letter-spacing:.01em;color:#596d50}.hero-tab>svg{width:15px;height:15px;margin-left:auto;margin-right:0;color:#70865f}.hero-tab:before{right:0;background:#3d492d;transform:scaleX(0);transform-origin:left;opacity:0;height:2px;transition:opacity .3s}.hero-tab[aria-selected=true]:before{background:var(--yellow);transform:scaleX(1);opacity:1}.hero.is-running .hero-tab[aria-selected=true]:before{animation:slide-progress 9s linear forwards}.hero-controls>.slider-pause{width:30px;height:30px;margin-left:26px;border-color:#ffffff20;color:#9da98f}.slider-pause svg{width:10px;height:10px}.benefit-strip{background:#10170f;border-top:1px solid #ffffff08;border-bottom:1px solid #ffffff0b}.benefit-grid>div{padding:26px 18px 26px 0;font-size:10px;gap:12px;color:#a2ae96}.benefit-grid svg{width:18px;height:18px;stroke-width:1.3}
/* Composed service bento */
.home-services{background:#0a0e0a;padding-bottom:106px}.home-services .service-grid{grid-template-columns:1.08fr 1fr 1fr;gap:18px;perspective:1500px}.home-services .service-card{background:#121912;border:1px solid #b6ca981a;border-radius:22px;color:#eef4e5;isolation:isolate;transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .65s var(--motion-ease),border-color .4s,box-shadow .4s;overflow:hidden;min-width:0}.home-services .service-card:hover{border-color:#edff3665;box-shadow:0 22px 60px #0004}.card-aura{position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,50%),#bfe74713,transparent 65%);transition:opacity .5s;pointer-events:none}.service-card:hover .card-aura{opacity:1}.service-card-top{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 0;position:relative;z-index:2}.service-card-top .service-num{font-size:9px;letter-spacing:.14em;color:#718568;font-family:monospace}.service-card-icon{width:31px;height:31px;display:grid;place-items:center;color:var(--yellow);border:1px solid #ffffff10;border-radius:50%}.service-card-icon svg{width:15px;height:15px}.home-services .service-thumb{height:155px;background:transparent;position:relative;z-index:0}.home-services .service-thumb>img{height:100%;width:100%;object-fit:cover;mask-image:linear-gradient(transparent,#000 15%,#000 77%,transparent);opacity:.9;transition:transform .9s var(--motion-ease),opacity .6s}.home-services .service-card:hover .service-thumb>img{transform:scale(1.07);opacity:1}.home-services .service-text{padding:22px 26px 27px;position:relative;z-index:2}.home-services .service-card h3{font-size:29px;font-weight:400;letter-spacing:-.045em;margin-bottom:13px}.home-services .service-card p{font-size:12px;line-height:1.85;color:#7e9272;margin-bottom:21px;max-width:280px}.home-services .service-links a{color:#b5c6a6;border-top:1px solid #b6c5a617;font-size:10px;line-height:1.5;padding:12px 0;font-weight:400;gap:15px;transition:color .3s,padding .4s}.home-services .service-links a:hover{color:var(--yellow);padding-left:5px}.home-services .service-links svg{opacity:.8;width:14px;height:14px}.home-services .service-card-1{grid-row:span 2;display:flex;flex-direction:column}.home-services .service-card-1 .service-thumb{height:285px;flex:1;min-height:250px}.home-services .service-card-1 .service-text{padding-top:12px}.home-services .service-card-1 h3{font-size:39px}.home-services .service-card-1 .service-links a{font-size:11px;padding:14px 0}.home-services .service-card-2,.home-services .service-card-3{min-height:390px}.home-services .service-card-2 .service-thumb,.home-services .service-card-3 .service-thumb{height:105px}.home-services .trade-visual{background:none}.home-services .trade-visual>svg{width:120px;height:80px;stroke-width:.7;transform:rotate(-10deg)}.home-services .trade-visual>span{background:#14200e;border-color:#869e4f4d;width:40px;height:40px;margin-left:-22px;box-shadow:0 10px 30px #0005}.home-services .trade-visual>span svg{width:19px;height:19px}.home-services .service-card-4{grid-column:2 / span 2;display:grid;grid-template-columns:1.15fr .85fr;min-height:260px;align-items:end}.home-services .service-card-4 .service-card-top{position:absolute;left:0;right:0;top:0}.home-services .service-card-4 .service-thumb{grid-column:2;grid-row:1;height:100%;min-height:260px;opacity:.8;margin-left:-50px;margin-right:-25px}.home-services .service-card-4 .service-text{grid-column:1;grid-row:1;padding-top:70px;padding-bottom:25px}.home-services .service-card-4 h3{font-size:33px}.home-services .service-card-4 p{font-size:11px;margin-bottom:15px}.home-services .service-card-4 .service-links a{font-size:10px;padding-block:10px}.tech-marquee{background:#0a0e0a;border-top:1px solid #cce1a713;border-bottom:1px solid #cce1a713;padding:26px 0;overflow:hidden;pointer-events:none}.marquee-track{display:flex;width:max-content;animation:marquee-run 38s linear infinite}.marquee-track>div{display:flex;align-items:center;gap:38px;padding-right:38px;flex-shrink:0}.marquee-track span{font-size:60px;font-weight:400;line-height:1;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px #a5ba8d42;white-space:nowrap}.marquee-track i{font-style:normal;font-size:42px;line-height:1;color:var(--yellow);animation:slow-spin 18s linear infinite}
/* Brand story and process */
.home-about{padding:125px 0}.about-block{gap:90px;grid-template-columns:1fr 1fr}.about-art{height:540px;min-height:480px;border-radius:28px;background:radial-gradient(ellipse at 45% 40%,#32421c88,#10180c 62%);border:1px solid #a9c68b28;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .8s var(--motion-ease);isolation:isolate}.about-art:before{width:350px;height:350px;border-color:#dae9a21c;transform:rotate(45deg);animation:brand-diamond 24s ease-in-out infinite alternate}.about-art:after{width:250px;height:250px;border-color:#d9f13222;transform:rotate(45deg);animation:brand-diamond 18s ease-in-out infinite alternate-reverse}.about-art>img{width:78%;filter:drop-shadow(0 20px 35px #0009);animation:brand-float 8s ease-in-out infinite;z-index:3}.brand-orbit{position:absolute;inset:12%;border:1px solid #c4dd6923;border-radius:50%;transform:rotateX(65deg) rotate(20deg);z-index:0}.brand-orbit:before{content:'';position:absolute;inset:-25px;border:1px dashed #aac87220;border-radius:50%;animation:slow-spin 70s linear infinite}.art-corner{position:absolute;width:28px;height:28px;border-color:#d4ea5b54;border-style:solid;z-index:2}.corner-tl{top:26px;left:26px;border-width:1px 0 0 1px}.corner-br{bottom:26px;right:26px;border-width:0 1px 1px 0}.art-label{bottom:30px;left:30px;right:30px;font-size:8px;color:#7c9364}.art-top-label{position:absolute;top:32px;right:28px;font-size:7px;letter-spacing:.16em;color:#66814b}.about-text h2{font-size:clamp(37px,4.2vw,61px);line-height:1.05;margin-bottom:30px}.about-text>p{font-size:13px;line-height:1.9;margin-bottom:18px}.about-points{gap:13px 22px;margin-top:25px;border-top:1px solid #ccd3bf;padding-top:24px}.about-points span{font-size:10px;color:#515e43}.about-points svg{color:#708127;width:13px;height:13px}.about-text>.text-link{margin-top:20px}.home-process{background:#090d09}.home-process .section-head>p{font-size:13px;color:#829576}.home-process .steps{gap:24px;counter-reset:step}.home-process .step{padding:36px 29px 32px;border:1px solid #afc58c24;border-radius:20px;background:linear-gradient(145deg,#18201170,#0a0f08);transition:background .4s,border-color .4s,transform .5s var(--motion-ease);overflow:hidden;position:relative}.home-process .step:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#edff3680,transparent);transform:scaleX(0);transition:transform .7s var(--motion-ease)}.home-process .step:hover:after,.home-process .step.is-visible:after{transform:scaleX(1)}.home-process .step:hover{border-color:#b5d64a55;transform:translateY(-5px)}.home-process .step-number{background:none;border:1px solid #a6c97044;border-radius:50%;width:56px;height:56px;color:var(--yellow);font-size:14px;font-weight:300;margin-bottom:35px;position:relative}.home-process .step-number:after{content:'';position:absolute;inset:-7px;border:1px dashed #b7d95d22;border-radius:50%;animation:slow-spin 22s linear infinite}.home-process .step h3{font-size:25px;font-weight:400;margin-bottom:15px;letter-spacing:-.04em}.home-process .step p{font-size:12px;line-height:1.95;color:#879d76}.home-process .step>svg{top:45px;right:29px;color:#91ac70;width:20px;height:20px}.region-section{background:#090d09;padding-top:0}.region-panel{padding:65px 70px;border:1px solid #abc58324;border-radius:30px;background:radial-gradient(ellipse at 0 100%,#52771f29,transparent 60%),#141d0e;position:relative;overflow:hidden}.region-panel:before{content:'';position:absolute;width:550px;height:550px;border:1px solid #b8d36e12;border-radius:50%;left:-250px;bottom:-400px;box-shadow:0 0 0 55px #b8d36e05,0 0 0 110px #b8d36e04;pointer-events:none}.region-grid{gap:75px;grid-template-columns:.9fr 1.1fr;position:relative}.region-copy h2{font-size:70px;line-height:1;letter-spacing:-.065em}.region-copy>p{font-size:12px;line-height:1.95;margin-top:24px;color:#839a70;max-width:330px}.region-copy>.text-link{margin-top:13px;color:#c1d3aa;font-size:11px}.district-mark{font-size:115px;font-weight:300;color:transparent;-webkit-text-stroke:1px #edff364f;letter-spacing:-.08em;margin:30px 0 0;gap:17px}.district-mark span{-webkit-text-stroke:0;font-size:8px;font-weight:400;color:#7b9660;letter-spacing:.14em;padding-bottom:8px}.districts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.districts a{padding:15px 13px;border-radius:7px;background:#111a0c;color:#9eb38b;border-color:#acc97c24;font-size:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;transition:color .3s,background .3s,border-color .3s,transform .4s var(--motion-ease)}.districts a span svg{width:10px;height:10px;opacity:.4;transition:transform .4s}.districts a:hover{background:var(--yellow);border-color:var(--yellow);transform:translateY(-3px);color:#15220a}.districts a:hover span svg{opacity:1;transform:rotate(45deg)}.districts a:nth-child(-n+4){color:#d1debd;border-color:#bfda832e}.districts a:nth-child(-n+4):hover{color:#15220a}.region-aside>p{font-size:10px;line-height:1.95;color:#6b8555;margin-top:22px;max-width:none}
/* Editorial cards and closing sections */
.home-blog .blog-grid{gap:30px}.blog-image{border-radius:18px;isolation:isolate;margin-bottom:23px}.blog-image:after{content:'';position:absolute;inset:0;border:1px solid #ffffff1c;border-radius:inherit;pointer-events:none}.blog-image>img{transition:transform 1s var(--motion-ease),filter .8s}.blog-image:hover>img{transform:scale(1.08);filter:brightness(1.15)}.blog-image>span{bottom:15px;right:15px;background:var(--yellow);width:40px;height:40px;transition:transform .5s var(--motion-ease),background .3s}.blog-image:hover>span{transform:rotate(45deg);background:#fff}.blog-meta{font-size:8px;letter-spacing:.09em;color:#778965}.blog-card h3{font-size:25px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin-bottom:15px}.blog-card>p{font-size:12px;line-height:1.9}.home-faq{background:#0b100a}.faq-grid{grid-template-columns:.8fr 1.2fr;gap:100px}.faq-intro h2{font-size:clamp(45px,5.3vw,76px);line-height:1.02}.faq-intro>p{font-size:12px;line-height:1.9;color:#7d9270;max-width:270px}.faq-intro .text-link{margin-top:15px;font-size:11px;color:#becfaf}.faq-list details{border-color:#b2c59125;transition:background .3s,padding .3s}.faq-list summary{font-size:13px;font-weight:400;padding:25px 0;gap:25px}.faq-list summary:after{font-size:19px;width:29px;height:29px;border:1px solid #aec4872b;border-radius:50%;display:grid;place-items:center;flex-shrink:0;line-height:1;transition:background .3s,transform .4s,color .3s}.faq-list details[open] summary:after{background:var(--yellow);color:#14210b;transform:rotate(180deg)}.faq-list details>p{font-size:12px;line-height:1.9;color:#879c77;animation:fade-up .5s var(--motion-ease);max-width:100%;padding-bottom:24px}.light .faq-list details>p{color:#5d6e4c}.light .faq-list summary:after{border-color:#c5d2b3;color:#647a41}.light .faq-list details[open] summary:after{color:#14210b}.cta-band{padding:82px 0 75px;position:relative;isolation:isolate;overflow:hidden;background:var(--yellow)}.cta-grid{position:absolute;inset:0;background-image:linear-gradient(#15220a0a 1px,transparent 1px),linear-gradient(90deg,#15220a0a 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent,#000);z-index:-1}.cta-band:after{content:'';position:absolute;right:-150px;top:-250px;width:800px;height:800px;border:1px solid #15220a12;border-radius:50%;z-index:-1;box-shadow:0 0 0 80px #15220a04,0 0 0 160px #15220a03;animation:breathe 15s ease-in-out infinite}.cta-inner{align-items:center;gap:70px}.cta-inner h2{font-size:clamp(65px,9vw,132px);font-weight:500;line-height:.9;letter-spacing:-.075em;max-width:none}.cta-inner h2 span{color:#15220a85}.cta-inner>.eyebrow,.cta-inner .eyebrow{color:#354a17;margin-bottom:30px}.cta-inner .eyebrow:before{background:#304313}.cta-inner p{font-size:12px;color:#60713b;margin-top:30px;max-width:390px}.cta-inner>div:last-child{flex-shrink:0;padding-right:45px;position:relative}.cta-inner>div:last-child:before{content:'↗';position:relative;display:grid;place-items:center;width:125px;height:125px;border:1px solid #14210b36;border-radius:50%;font-size:64px;font-weight:300;color:#14210b;margin:0 auto 30px;animation:arrow-drift 8s ease-in-out infinite}.cta-inner .btn{font-size:17px;min-width:252px;min-height:65px;background:#111c0b;border-color:#111c0b;letter-spacing:-.02em}.cta-inner .btn:before{background:#223d0e}.cta-inner small{font-size:10px;color:#566b2f;margin-top:17px}.cta-text{text-decoration:underline;text-underline-offset:4px}.cta-text>svg{display:none}.site-footer{background:#090e07;padding-top:80px;position:relative;isolation:isolate}.footer-main{grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:65px;padding-bottom:35px}.footer-brand img{width:133px;margin-bottom:27px}.footer-brand p{font-size:11px;color:#758c64;line-height:1.9}.footer-brand .footer-location{font-size:10px;color:#acbf98}.footer-col h3{font-weight:400;font-size:9px;letter-spacing:.12em;color:#b9cba7;margin-bottom:24px}.footer-col a{font-size:10px;color:#778f65;padding-block:7px;transition:color .3s,transform .3s}.footer-col a:hover{transform:translateX(3px);color:var(--yellow)}.footer-col .footer-phone{font-size:21px;font-weight:400;color:#dce7ce;letter-spacing:-.05em}.footer-col p{font-size:10px;color:#586f45;line-height:1.9}.footer-wordmark{height:260px;overflow:hidden;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #93b36c1b;margin-top:25px;pointer-events:none}.footer-wordmark>span{font-size:350px;line-height:1;font-weight:500;letter-spacing:-.11em;color:transparent;-webkit-text-stroke:1px #a5bf7330;margin-left:-15px}.footer-wordmark>i{font-size:200px;line-height:1;font-style:normal;color:#edff3629;animation:slow-spin 40s linear infinite;margin-right:30px}.footer-bottom{border-color:#93b36c1b;font-size:8px;color:#536f3b;padding-block:24px}.footer-bottom div{gap:25px}.floating-contact{width:52px;height:52px;background:var(--yellow);color:#14210b;border-color:#f7ffb445;box-shadow:0 8px 35px #0006;isolation:isolate}.floating-contact:before{content:'';position:absolute;inset:-6px;border:1px solid #c4e64b40;border-radius:50%;z-index:-1;animation:contact-pulse 4s ease-out infinite;pointer-events:none}.floating-contact svg{width:24px;height:24px}.back-top{background:#15220d;border-color:#a6c37232;color:#b9cda3}
/* The same visual system on every service, article and utility page. */
.page-intro,.article-hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 90% 20%,#50632312,transparent 50%),#090d09;border-bottom:1px solid #c4d79a19;overflow:hidden}.page-intro:before,.article-hero:before{content:'';position:absolute;right:-160px;top:-180px;width:550px;height:550px;border:1px solid #b7d56a16;border-radius:50%;z-index:-1;box-shadow:0 0 0 80px #b7d56a05;animation:orbit-sway-b 35s ease-in-out infinite alternate}.page-intro{padding:40px 0 90px}.page-intro h1{font-weight:500;font-size:clamp(42px,5.5vw,80px);line-height:1.05;letter-spacing:-.065em;max-width:1020px}.page-intro .intro-lead{font-size:16px;line-height:1.9;color:#8c9f7d;max-width:650px;margin-top:28px}.intro-grid{grid-template-columns:1.15fr .85fr;gap:70px}.intro-grid h1{font-size:clamp(40px,4.7vw,68px)}.intro-grid .intro-lead{font-size:14px}.intro-image{border-radius:22px;aspect-ratio:1.15;border:1px solid #c2d89520;box-shadow:0 30px 80px #0005;transform:perspective(1000px) rotateY(-5deg);transition:transform 1s var(--motion-ease)}.intro-image:hover{transform:perspective(1000px) rotateY(0)}.intro-image img{height:100%;object-fit:cover;transition:transform 1.2s var(--motion-ease)}.intro-image:hover img{transform:scale(1.05)}.breadcrumb{font-size:9px;color:#5d7650;margin-bottom:42px}.breadcrumb svg{width:10px;height:10px}.breadcrumb span{color:#7d926c}.feature-strip{gap:28px;border-color:#d0d8c4;padding-top:0;margin-bottom:65px}.feature-strip div{font-weight:400;font-size:12px;gap:12px}.feature-strip svg{color:#6e8434}.content-layout{grid-template-columns:minmax(0,1fr) 320px;gap:95px}.prose h2{font-size:31px;font-weight:500;line-height:1.2;letter-spacing:-.04em;margin-bottom:23px}.prose p{font-size:14px;line-height:2}.prose>section{margin-bottom:44px}.prose .callout{background:#e5ebd9;border-color:#a2b564;border-radius:0 15px 15px 0;padding:26px 30px}.callout p{font-size:12px}.prose li{font-size:13px}.sidebar-box{border-radius:19px;background:#111c0c;border:1px solid #3d512c;color:#e4eed9;padding:29px}.sidebar-box h3{font-weight:400;font-size:24px;letter-spacing:-.04em}.sidebar-box p{font-size:12px;color:#8ea27b;line-height:1.9}.sidebar-box .sidebar-phone{font-weight:400;font-size:24px;letter-spacing:-.05em;color:#eff7e3}.sidebar-box .btn{font-size:11px;min-height:49px;padding:12px 17px;gap:18px}.sidebar-links a{border-color:#849e5f24;color:#a6bb91;font-size:11px;transition:padding .3s,color .3s}.sidebar-links a:hover{padding-left:4px;color:var(--yellow)}.sidebar-box .text-link{color:#cadcb6;font-size:11px}.toc a{color:#92a77e;font-size:11px;line-height:1.7;padding:9px 0;border-bottom:1px solid #879c6620;transition:color .2s}.toc a:hover{color:var(--yellow);text-decoration:none}.toc a:last-child{border-bottom:0}.service-detail-list{gap:20px}.detail-card{background:#fbfcf7;border-radius:21px;border-color:#d7dfc9;padding:34px;transition:border-color .4s,box-shadow .4s,transform .6s var(--motion-ease);position:relative;overflow:hidden}.detail-card:after{content:'';position:absolute;width:150px;height:150px;background:radial-gradient(ellipse,#c8e36320,transparent 70%);top:-65px;right:-60px;pointer-events:none}.detail-card:hover{transform:translateY(-5px);border-color:#9eb357;box-shadow:0 20px 45px #2636080b}.detail-card .icon-tile{width:49px;height:49px;background:#eaf0de;border-radius:13px;color:#4f6e2b;transition:background .3s,transform .5s}.detail-card:hover .icon-tile{background:var(--yellow);transform:rotate(-6deg)}.detail-card h3{font-size:26px;font-weight:400;letter-spacing:-.04em}.detail-card p{font-size:12px;line-height:1.9}.detail-card .text-link{font-size:11px}.inline-group-title{font-size:10px;font-weight:400;letter-spacing:.15em;color:#718858}.value-card h3{font-weight:400;font-size:25px}.value-card p{font-size:13px}.district-card{border-radius:19px;background:#fafcf5;border-color:#d0dcc0;padding:29px;transition:transform .5s var(--motion-ease),border-color .4s,background .4s}.district-card:hover{transform:translateY(-4px);border-color:#a9bd6d;background:#f8fce9}.district-card h2{font-size:31px;font-weight:400}.district-card p{font-size:12px;line-height:1.95}.district-card .text-link{font-size:11px}.filter-btn{font-size:10px;padding:12px 17px;border-radius:100px;font-weight:400;transition:background .3s,color .3s,border-color .3s,transform .4s}.filter-btn:hover{transform:translateY(-2px)}.filter-btn[aria-pressed=true]{background:#18280d;color:#f2f9e8;border-color:#18280d}.blog-search input{border-radius:100px;padding:13px 38px 13px 19px;min-height:44px;font-size:11px;background:#fafcf5;transition:box-shadow .3s,border-color .3s}.blog-search input:focus{outline:0;border-color:#9bad57;box-shadow:0 0 0 4px #bbd57820}.blog-search svg{top:15px}.filter-status{font-size:10px}.blog-all{row-gap:48px}.empty-state{border-radius:20px;background:#eaf0df}.article-hero{padding:40px 0 75px}.article-hero h1{font-size:clamp(38px,5.2vw,72px);font-weight:500;line-height:1.1;letter-spacing:-.055em;max-width:1080px}.article-hero .intro-lead{font-size:15px;line-height:2;color:#92a57f;max-width:840px}.article-hero .blog-meta{font-size:8px;color:#b5c5a4;margin-top:32px;gap:14px}.article-cover{border-radius:25px;aspect-ratio:2.5;margin-top:40px;border:1px solid #bfda8f1b}.article-cover img{transition:transform 1.8s var(--motion-ease)}.article-cover:hover img{transform:scale(1.025)}.article-tools a,.article-tools button{border-radius:100px;font-size:10px;padding:11px 15px;transition:background .3s,border-color .3s}.article-tools a:hover,.article-tools button:hover{background:var(--yellow);border-color:#bdce64}.article-tools span{font-size:10px}.contact-grid{gap:90px;grid-template-columns:.8fr 1.2fr}.contact-info h2{font-size:45px;font-weight:500;line-height:1.07;letter-spacing:-.05em}.contact-info>p{font-size:13px;line-height:2}.contact-item{border-color:#cdd8bd;padding:30px 0}.contact-item a,.contact-item strong{font-weight:400;font-size:27px;letter-spacing:-.05em}.contact-item small{font-size:9px;letter-spacing:.14em}.contact-item p{font-size:11px;line-height:1.9}.contact-form{background:radial-gradient(ellipse at 100% 0,#33491b40,transparent 50%),#111b0c;color:#e9f2e0;border:1px solid #344e24;border-radius:26px;padding:44px;box-shadow:0 30px 75px #1c310c10;isolation:isolate}.contact-form .eyebrow{color:#a3bc7b}.contact-form .eyebrow:before{background:var(--yellow)}.contact-form h2{font-size:35px;font-weight:400;line-height:1.14;letter-spacing:-.045em}.contact-form>p{font-size:12px;color:#8ca378;line-height:1.95}.field label{font-weight:400;font-size:10px;color:#b1c49e;letter-spacing:.02em;margin-bottom:10px}.field input,.field select,.field textarea{background:#0b1507;border-color:#6c88483b;border-radius:10px;color:#dbeace;font-size:12px;min-height:49px;padding:14px;transition:box-shadow .3s,border-color .3s,background .3s}.field select option{background:#111c0b;color:#e3efda}.field input::placeholder,.field textarea::placeholder{color:#4d693a}.field input:focus,.field select:focus,.field textarea:focus{background:#102008;border-color:#b7d555;outline:0;box-shadow:0 0 0 3px #b7d55512}.field small{font-size:9px;color:#67884c;line-height:1.7}.contact-form .form-note{color:#68894d;font-size:9px;line-height:1.9}.contact-form .form-note a{color:#9fbe7c}.contact-form .btn{color:#17290a}.contact-message{background:#203311;border-color:#9bb85a40;border-radius:13px;padding:21px}.contact-message p{color:#b5cd9d;font-size:11px}.contact-message .btn{font-size:11px}.notice{background:#e4ebd6;border:1px solid #ccd9b7;border-radius:16px;font-size:11px;color:#647b4e}.legal h2{font-size:29px}.not-found .code{font-size:145px;font-weight:300;letter-spacing:-.07em}.not-found h1{font-weight:500}.not-found p{font-size:13px}
/* Motion is opt-in through enhancement: content is always available without JavaScript. */
.motion-ready .reveal{transition:opacity .9s var(--motion-ease),translate 1.1s var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal:not(.is-visible){opacity:0;translate:0 35px}.motion-ready .reveal.is-visible{opacity:1;translate:0 0}.motion-off *, .motion-off *:before,.motion-off *:after{animation-play-state:paused!important}.motion-off .reveal{opacity:1!important;translate:0 0!important;transition:none!important}.motion-off .title-line>span,.motion-off .device-scene>img,.motion-off .hero-copy .actions{animation:none!important;opacity:1;transform:none}.motion-off .device-scene{transform:none!important}.motion-off .btn,.motion-off .service-card,.motion-off .about-art{transform:none!important}.motion-off .hero-network{opacity:0}.motion-off .hero-tab:before{animation:none!important}.motion-off .orbit,.motion-off .brand-orbit{opacity:.7}
@keyframes title-in{from{transform:translateY(115%) rotate(3deg);opacity:.3}to{transform:translateY(0) rotate(0);opacity:1}}@keyframes device-in{from{opacity:0;transform:translate(45px,25px) scale(1.08)}to{opacity:1;transform:translate(0,0) scale(1)}}@keyframes fade-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes mega-in{from{opacity:0;transform:translateY(-12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes drawer-in{from{opacity:0;transform:translateX(35px)}to{opacity:1;transform:translateX(0)}}@keyframes slow-spin{to{rotate:360deg}}@keyframes breathe{0%,100%{opacity:.4;scale:.96}50%{opacity:1;scale:1.04}}@keyframes status-pulse{0%{scale:.7;opacity:0}20%{opacity:.7}100%{scale:1.7;opacity:0}}@keyframes orbit-sway{from{transform:rotateX(64deg) rotate(-35deg)}to{transform:rotateX(70deg) rotate(-5deg)}}@keyframes orbit-sway-b{from{transform:rotateX(25deg) rotateY(65deg) rotate(-5deg)}to{transform:rotateX(45deg) rotateY(45deg) rotate(15deg)}}@keyframes float-note{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes scroll-nudge{0%,100%{translate:0 -2px}50%{translate:0 4px}}@keyframes slide-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes marquee-run{to{transform:translateX(-50%)}}@keyframes brand-diamond{from{transform:rotate(35deg) scale(.97)}to{transform:rotate(55deg) scale(1.03)}}@keyframes brand-float{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes arrow-drift{0%,100%{transform:rotate(0)}50%{transform:rotate(12deg)}}@keyframes contact-pulse{0%,100%{scale:.95;opacity:0}35%{opacity:.6}75%{scale:1.14;opacity:0}}
.motion-off{scroll-behavior:auto!important}.page-intro>.wrap,.article-hero>.wrap{animation:fade-up .9s var(--motion-ease) both}
/* Responsive art direction */
@media(min-width:1600px){.hero-slide{min-height:720px}.hero h1,.hero h2{font-size:126px}.hero-desc{font-size:15px;max-width:430px}.hero-copy .btn{font-size:12px;min-height:56px}.hero-note{bottom:83px}.scene-index{font-size:240px}.device-scene{inset:10% -14% 6% -15%}}
@media(max-width:1250px){.wrap{width:calc(100% - 64px)}.header-inner{padding-inline:20px;gap:20px}.desktop-nav{gap:21px}.brand-copy{display:none}.hero h1,.hero h2{font-size:91px}.hero-slide{min-height:620px;grid-template-columns:1fr 1.08fr}.hero-note{right:-3px;min-width:255px;padding:14px;gap:11px}.hero-note strong{font-size:10px}.hero-note small{font-size:8px}.hero-note .note-icon{width:35px;height:35px}.scene-label{font-size:6px}.hero-desc{max-width:350px}.home-services .service-card h3{font-size:26px}.home-services .service-card-1 h3{font-size:35px}.home-services .service-card-top{padding-inline:22px}.home-services .service-text{padding-inline:22px}.home-services .service-card-4 h3{font-size:30px}.home-services .service-card-1 .service-thumb{min-height:230px}.about-block{gap:60px}.about-art{height:500px;min-height:460px}.region-panel{padding:55px 50px}.region-grid{gap:45px}.region-copy h2{font-size:64px}.districts a{font-size:9px;padding:14px 10px;gap:5px}.districts a span{display:none}.content-layout{gap:55px;grid-template-columns:minmax(0,1fr) 295px}.contact-grid{gap:55px}.contact-form{padding:35px}.footer-main{gap:42px}.mega{left:32px;right:32px}.mega>.wrap{width:calc(100% - 50px)}.mega-layout{gap:18px}}
@media(max-width:980px){.header-inner{height:74px}.site-header.is-scrolled .header-inner{height:68px}.brand-copy{display:block}.header-actions{gap:12px}.header-cta{margin:0}.desktop-nav{display:none}.hero h1,.hero h2{font-size:77px}.hero-slide{min-height:580px;grid-template-columns:1fr 1fr}.hero-copy{padding:35px 0}.hero-desc{font-size:12px;max-width:330px}.hero-copy .btn{font-size:10px;padding-inline:18px;gap:16px;min-height:48px}.hero-copy .btn-ghost{padding-left:12px}.hero-note{right:-5px;min-width:230px;bottom:60px;padding:12px;gap:10px}.hero-note .note-icon{display:none}.hero-note strong{font-size:10px}.hero-note small{font-size:8px}.scene-index{font-size:150px;top:50px}.scene-coordinate{top:30px}.device-scene{inset:10% -18% 7% -25%}.hero-signature{max-width:315px}.hero-tabs{gap:20px}.hero-tab{gap:12px;padding-block:24px}.hero-tab strong{font-size:10px}.hero-tab small{font-size:7px}.hero-controls>.slider-pause{margin-left:17px}.benefit-grid>div{font-size:10px;padding:18px 12px 18px 0}.section{padding:88px 0}.section-head{margin-bottom:40px}.section-summary>p{font-size:12px}.home-services .service-grid{grid-template-columns:1fr 1fr;gap:18px}.home-services .service-card-1{grid-row:span 2}.home-services .service-card-4{grid-column:1 / -1;min-height:240px;grid-template-columns:1fr 1fr}.home-services .service-card-1 .service-thumb{flex:1;min-height:290px}.home-services .service-card-1 h3{font-size:39px}.home-services .service-card-2,.home-services .service-card-3{min-height:290px}.home-services .service-card-2 .service-thumb,.home-services .service-card-3 .service-thumb{position:absolute;right:-20px;top:50px;width:145px;height:130px;opacity:.25;z-index:-1}.home-services .service-card-2 .service-text,.home-services .service-card-3 .service-text{padding-top:27px}.home-services .service-card-4 .service-thumb{min-height:240px}.home-services .service-card p{max-width:250px}.marquee-track span{font-size:48px}.marquee-track i{font-size:34px}.tech-marquee{padding:23px 0}.about-block{gap:45px}.about-art{min-height:420px;height:465px}.about-text h2{font-size:44px}.about-text>p{font-size:12px}.about-points{grid-template-columns:1fr;gap:11px;padding-top:20px;margin-top:20px}.about-points span{font-size:10px}.home-process .steps{gap:15px}.home-process .step{padding:30px 23px}.home-process .step h3{font-size:23px;line-height:1.12}.home-process .step p{font-size:11px}.home-process .step>svg{right:23px;top:39px;width:17px;height:17px}.region-section{padding-top:0}.region-panel{padding:45px 35px}.region-copy h2{font-size:58px}.region-grid{gap:40px;grid-template-columns:.9fr 1.1fr}.districts{grid-template-columns:repeat(2,1fr);gap:8px}.districts a{font-size:10px;padding:13px}.district-mark{font-size:105px}.home-blog .blog-grid{gap:20px}.blog-card h3{font-size:22px}.blog-card>p{font-size:11px}.faq-grid{gap:55px}.faq-list summary{font-size:12px;padding:23px 0}.faq-list details>p{font-size:11px}.cta-band{padding:70px 0}.cta-inner h2{font-size:93px}.cta-inner>div:last-child{padding-right:0}.cta-inner>div:last-child:before{width:100px;height:100px;font-size:52px}.cta-inner .btn{min-width:220px;min-height:59px;font-size:15px}.footer-main{grid-template-columns:1.3fr 1fr;gap:45px}.footer-wordmark{height:200px}.footer-wordmark>span{font-size:275px}.footer-wordmark>i{font-size:150px}.intro-grid{gap:40px}.intro-grid h1{font-size:47px}.intro-grid .intro-lead{font-size:13px}.page-intro h1{font-size:57px}.page-intro .intro-lead{font-size:15px}.content-layout{gap:40px;grid-template-columns:minmax(0,1fr) 265px}.prose h2{font-size:28px}.prose p{font-size:13px}.sidebar-box{padding:24px}.sidebar-box h3{font-size:22px}.sidebar-box .sidebar-phone{font-size:22px}.detail-card{padding:27px;gap:19px}.detail-card h3{font-size:25px}.contact-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.contact-info h2{font-size:37px}.contact-form{padding:29px}.contact-form h2{font-size:30px}.contact-item a,.contact-item strong{font-size:24px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.section{padding:72px 0}h2{font-size:39px}.topbar .wrap{min-height:29px;font-size:8px}.site-header{padding:5px 0 8px}.header-inner{height:64px;padding:0 14px;gap:12px;border-radius:100px}.site-header.is-scrolled .header-inner{height:60px}.brand img{width:93px;height:30px}.brand-copy{display:none}.header-actions{gap:9px}.header-cta{font-size:9px;min-height:36px;padding:10px 14px;gap:11px}.header-cta svg{width:13px;height:13px}.motion-toggle{width:29px;height:29px}.motion-toggle svg{width:14px;height:14px}.menu-toggle{padding:5px}.menu-toggle svg{width:22px;height:22px}.hero-stage{display:grid}.hero-slide{display:flex;flex-direction:column;min-height:0;gap:0;align-items:stretch}.hero-copy{padding:35px 0 0;width:100%}.hero-eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:23px;gap:9px}.hero-edition{font-size:7px;margin-left:14px}.hero h1,.hero h2{font-size:clamp(69px,13vw,99px);line-height:.96;letter-spacing:-.065em;margin-left:-3px}.hero-desc{font-size:12px;line-height:1.9;max-width:430px;margin-top:23px}.hero-copy .actions{margin-top:23px;gap:8px}.hero-copy .btn{font-size:10px;min-height:47px;padding:13px 20px;gap:18px}.hero-copy .btn-ghost{padding-left:13px}.hero-signature{margin-top:24px;max-width:350px}.hero-signature>span:nth-child(2){font-size:7px}.signature-line{width:28px}.scroll-cue{height:35px;width:26px}.hero-visual{width:100%;height:315px;min-height:0;align-self:auto;margin-top:0;overflow:visible;perspective:none}.device-scene{inset:-5% -10% 0 -12%;transform:none;transition:none}.device-scene>img{height:100%;object-fit:cover;mask-image:radial-gradient(ellipse at 50% 52%,#000 47%,transparent 76%)}.device-scene:after{background:linear-gradient(90deg,#090b0a,transparent 8%,transparent 92%,#090b0a)}.orbital-scene{inset:0 8%}.orbit{width:90%;top:-15%;left:4%}.orbit-b{width:85%;top:-18%;left:7%}.orbit-c{width:70%;top:-2%;left:15%}.scene-coordinate{top:14px;right:4px;font-size:6px;line-height:1.9}.scene-index{top:1px;right:3px;font-size:100px}.scene-label{display:none}.hero-note{right:1px;bottom:18px;min-width:0;padding:13px 15px;gap:12px;border-radius:13px}.hero-note .note-icon{display:grid;width:31px;height:31px;border-radius:8px}.hero-note .note-icon svg{width:17px;height:17px}.hero-note strong{font-size:10px}.hero-note small{font-size:8px}.hero-note>svg{width:14px;height:14px;margin-left:5px}.hero-controls{margin-top:0}.hero-tab{padding:20px 0;gap:8px;align-items:flex-start}.hero-tab b{font-size:7px;margin-top:2px}.hero-tab strong{font-size:9px;line-height:1.45}.hero-tab small{display:none}.hero-tab>svg{display:none}.hero-tabs{gap:15px}.hero-controls>.slider-pause{width:24px;height:24px;margin-left:12px}.hero-controls>.slider-pause svg{width:8px;height:8px}.benefit-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid>div{font-size:8px;padding:18px 10px 18px 0;gap:10px}.benefit-grid svg{width:16px;height:16px}.section-head{display:block;margin-bottom:36px}.section-summary{margin-top:25px;max-width:none}.section-summary>p{font-size:12px;line-height:1.9}.section-summary .text-link{margin-top:5px}.eyebrow{font-size:8px;margin-bottom:22px}.home-services{padding-bottom:64px}.home-services h2{font-size:40px}.home-services .service-grid{grid-template-columns:1fr 1fr;gap:14px}.home-services .service-card{border-radius:18px}.home-services .service-card-1{grid-column:1 / -1;grid-row:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:end;min-height:360px}.home-services .service-card-top{padding:22px 22px 0}.home-services .service-card-1 .service-card-top{position:absolute;left:0;right:0;top:0}.home-services .service-card-1 .service-thumb{grid-column:2;grid-row:1;height:100%;min-height:360px;opacity:.55;overflow:visible;margin-left:-35px;margin-right:-30px}.home-services .service-card-1 .service-thumb>img{object-fit:cover;mask-image:linear-gradient(transparent,#000 10%,#000 70%,transparent)}.home-services .service-card-1 .service-text{grid-column:1;grid-row:1;padding-top:70px;padding-bottom:25px;min-width:0}.home-services .service-card-1 h3{font-size:35px}.home-services .service-text{padding:22px}.home-services .service-card h3{font-size:26px}.home-services .service-card p{font-size:10px;line-height:1.9;max-width:none;margin-bottom:20px}.home-services .service-links a,.home-services .service-card-1 .service-links a{font-size:9px;padding:11px 0;gap:11px}.home-services .service-links svg{width:12px;height:12px}.home-services .service-card-top .service-num{font-size:8px;letter-spacing:.1em}.home-services .service-card-icon{width:27px;height:27px}.home-services .service-card-icon svg{width:13px;height:13px}.home-services .service-card-2,.home-services .service-card-3{min-height:310px}.home-services .service-card-2 .service-text,.home-services .service-card-3 .service-text{padding-top:24px}.home-services .service-card-2 .service-thumb,.home-services .service-card-3 .service-thumb{opacity:.13;width:120px;right:-15px;top:50px;height:90px}.home-services .service-card-4{min-height:265px;grid-template-columns:1.05fr .95fr}.home-services .service-card-4 .service-text{padding-top:72px;padding-bottom:23px}.home-services .service-card-4 h3{font-size:30px}.home-services .service-card-4 p{font-size:10px}.home-services .service-card-4 .service-links a{font-size:9px;padding:10px 0}.home-services .service-card-4 .service-thumb{min-height:260px;opacity:.6;margin-left:-20px;margin-right:-40px}.marquee-track span{font-size:38px}.marquee-track i{font-size:26px}.marquee-track>div{gap:25px;padding-right:25px}.tech-marquee{padding-block:22px}.about-block{grid-template-columns:1fr;gap:40px}.about-art{order:2;min-height:370px;height:370px;border-radius:22px}.about-art>img{width:67%}.about-art:before{width:270px;height:270px}.about-art:after{width:200px;height:200px}.about-text h2{font-size:46px;max-width:100%;line-height:1.02}.about-text>p{font-size:12px;max-width:100%}.about-points{grid-template-columns:1fr 1fr;gap:14px 15px;margin-top:25px;padding-top:25px}.about-points span{font-size:9px}.about-text>.text-link{margin-top:20px}.art-label{font-size:7px;bottom:26px;left:26px;right:26px}.home-process .steps{grid-template-columns:1fr;gap:15px}.home-process .step{padding:27px 25px;display:grid;grid-template-columns:46px 1fr;column-gap:23px;border-radius:18px}.home-process .step-number{width:44px;height:44px;font-size:12px;margin:0;grid-column:1;grid-row:1 / 3}.home-process .step-number:after{inset:-5px}.home-process .step h3{font-size:25px;grid-column:2;margin-bottom:13px;max-width:none;padding-right:12px}.home-process .step p{font-size:11px;grid-column:2;max-width:100%}.home-process .step>svg{right:22px;top:29px;width:16px;height:16px}.region-section{padding-top:0}.region-panel{border-radius:23px;padding:35px 28px}.region-grid{grid-template-columns:1fr;gap:35px}.region-copy h2{font-size:60px}.region-copy>p{font-size:11px;line-height:1.95;margin-top:22px;max-width:none}.region-copy>.text-link{margin-top:12px;font-size:10px}.district-mark{position:absolute;top:15px;right:-3px;font-size:95px;margin:0;opacity:.4}.district-mark span{display:none}.region-copy{padding-right:0}.region-copy h2{position:relative;z-index:1}.districts{grid-template-columns:repeat(3,1fr);gap:7px}.districts a{font-size:9px;padding:13px 10px;min-height:42px}.region-aside>p{font-size:9px;line-height:2;margin-top:19px}.home-blog .blog-grid{grid-template-columns:1fr;gap:38px}.blog-grid{gap:38px}.blog-image{border-radius:16px;aspect-ratio:1.8;margin-bottom:20px}.blog-card h3{font-size:26px;line-height:1.24}.blog-card>p{font-size:12px}.blog-meta{font-size:8px;margin-bottom:12px}.home-faq .faq-grid{grid-template-columns:1fr;gap:33px}.faq-grid{gap:35px}.faq-intro h2{font-size:51px}.faq-intro>p{font-size:12px;max-width:100%}.faq-intro .text-link{font-size:11px;margin-top:12px}.faq-list summary{font-size:12px;padding:23px 0;gap:20px}.faq-list details>p{font-size:11px;padding-right:15px;line-height:2}.faq-list summary:after{width:26px;height:26px;font-size:17px}.cta-band{padding:61px 0 55px}.cta-inner{display:block}.cta-inner h2{font-size:90px;line-height:.92;letter-spacing:-.075em}.cta-inner .eyebrow{font-size:8px;margin-bottom:27px}.cta-inner p{font-size:11px;line-height:1.9;max-width:320px;margin-top:25px}.cta-inner>div:last-child{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-start;margin-top:30px;gap:17px}.cta-inner>div:last-child:before{display:none}.cta-inner .btn{font-size:15px;min-width:230px;min-height:57px}.cta-inner small{font-size:9px;margin:0}.site-footer{padding-top:55px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 25px;padding-bottom:20px}.footer-brand{grid-column:1 / -1}.footer-brand p{font-size:11px;max-width:330px}.footer-brand img{width:128px;margin-bottom:22px}.footer-col h3{font-size:9px;margin-bottom:17px}.footer-col a{font-size:10px;padding:6px 0}.footer-col .footer-phone{font-size:20px}.footer-col p{font-size:9px}.footer-wordmark{height:135px;margin-top:28px}.footer-wordmark>span{font-size:180px;margin-left:-7px}.footer-wordmark>i{font-size:100px;margin-right:0}.footer-bottom{font-size:8px;gap:14px;padding:23px 0}.footer-bottom div{gap:19px}.floating-contact{width:47px;height:47px;right:17px;bottom:20px}.floating-contact svg{width:22px;height:22px}.back-top{bottom:79px;right:20px;width:40px;height:40px}.page-intro{padding:30px 0 56px}.page-intro h1{font-size:44px;line-height:1.07;letter-spacing:-.055em}.page-intro .intro-lead{font-size:13px;line-height:1.9;margin-top:25px}.intro-grid{grid-template-columns:1fr;gap:35px}.intro-grid h1{font-size:43px}.intro-image{border-radius:18px;aspect-ratio:1.7;max-height:300px;transform:none}.intro-grid .intro-lead{font-size:13px}.breadcrumb{font-size:8px;margin-bottom:32px;gap:7px}.breadcrumb svg{width:9px;height:9px}.feature-strip{margin-bottom:40px;gap:22px;padding-bottom:32px}.feature-strip div{font-size:11px;font-weight:400;line-height:1.7}.feature-strip svg{width:16px;height:16px}.content-layout{display:flex;gap:37px;flex-direction:column}.prose h2{font-size:28px;line-height:1.23}.prose p{font-size:13px;line-height:2}.prose>section{margin-bottom:34px}.prose .callout{padding:23px;border-radius:0 13px 13px 0}.callout p{font-size:12px}.prose li{font-size:12px}.sidebar-box{padding:29px;border-radius:18px}.sidebar-box h3{font-size:26px}.sidebar-box p{font-size:12px}.sidebar-box .sidebar-phone{font-size:26px}.sidebar-links a{font-size:12px;padding-block:15px}.sidebar-box .btn{font-size:12px}.service-detail-list{grid-template-columns:1fr}.detail-card{padding:27px;border-radius:18px;gap:19px}.detail-card h3{font-size:26px}.detail-card p{font-size:12px}.detail-card .icon-tile{width:45px;height:45px;border-radius:12px}.detail-card .icon-tile svg{width:21px;height:21px}.detail-card .text-link{font-size:11px}.inline-group-title{font-size:9px}.value-card h3{font-size:26px}.value-card p{font-size:12px}.region-list{gap:13px}.district-card{padding:24px;border-radius:17px}.district-card h2{font-size:29px}.district-card p{font-size:11px}.district-card .text-link{font-size:10px;gap:17px}.filter-btn{font-size:9px;padding:11px 15px;min-height:39px}.blog-search input{font-size:11px;padding:14px 38px 14px 19px}.article-hero{padding:30px 0 45px}.article-hero h1{font-size:40px;line-height:1.12}.article-hero .intro-lead{font-size:13px;line-height:2;margin-top:26px}.article-hero .blog-meta{font-size:8px;gap:11px;line-height:1.7;margin-top:27px}.article-cover{aspect-ratio:1.65;border-radius:18px;margin-top:32px}.article-cover figcaption{font-size:7px}.article-tools{gap:12px;padding-top:24px}.article-tools span{font-size:9px}.article-tools a,.article-tools button{font-size:9px;padding:10px 13px}.toc a{font-size:12px;padding:12px 0}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-info h2{font-size:40px}.contact-info>p{font-size:13px;line-height:2;max-width:none}.contact-item{padding:28px 0}.contact-item a,.contact-item strong{font-size:27px}.contact-item small{font-size:9px}.contact-item p{font-size:11px}.contact-form{padding:29px 25px;border-radius:21px}.contact-form h2{font-size:32px}.contact-form>p{font-size:12px}.field label{font-size:10px}.field input,.field select,.field textarea{font-size:12px;padding:14px;min-height:49px}.field textarea{min-height:150px}.field small{font-size:9px}.contact-form .btn{min-height:52px;font-size:11px}.contact-form .form-note{font-size:9px}.legal h2{font-size:27px}.notice{padding:22px;font-size:10px;line-height:2}.not-found .code{font-size:115px}.not-found h1{font-size:35px}.not-found p{font-size:12px}}
@media(max-width:420px){.wrap{width:calc(100% - 32px)}.header-inner{padding-inline:12px;gap:9px}.brand img{width:83px;height:27px}.header-actions{gap:6px}.motion-toggle{width:25px;height:25px}.motion-toggle svg{width:13px;height:13px}.header-cta{font-size:8px;gap:9px;min-height:34px;padding:9px 12px}.menu-toggle{padding:4px}.menu-toggle svg{width:21px;height:21px}.hero h1,.hero h2{font-size:72px;letter-spacing:-.065em}.hero-copy{padding-top:29px}.hero-desc{font-size:11px;max-width:315px}.hero-eyebrow{font-size:7px;margin-bottom:23px}.hero-copy .btn{font-size:9px;padding-inline:17px;gap:15px;min-height:45px}.hero-copy .btn-ghost{padding-inline:12px}.hero-signature{max-width:310px;margin-top:22px}.hero-visual{height:275px;margin-top:2px}.device-scene{inset:-5% -12% 0 -12%}.hero-note{bottom:17px;right:0;padding:12px 13px;gap:10px}.hero-note .note-icon{width:29px;height:29px}.hero-note strong{font-size:9px}.hero-note small{font-size:7px}.hero-note>svg{width:13px;height:13px}.scene-coordinate{top:8px;right:0;font-size:5px}.hero-tabs{gap:13px}.hero-tab b{display:none}.hero-tab strong{font-size:8px}.hero-tab{padding-block:19px}.hero-controls>.slider-pause{width:23px;height:23px;margin-left:9px}.benefit-grid>div{font-size:7px;gap:8px;padding:16px 9px 16px 0}.benefit-grid svg{width:15px;height:15px}.section{padding-block:65px}h2,.home-services h2{font-size:36px}.home-services .service-grid{grid-template-columns:1fr;gap:15px}.home-services .service-card-1{grid-column:auto;display:flex;min-height:0}.home-services .service-card-1 .service-card-top{position:relative}.home-services .service-card-1 .service-thumb{height:190px;min-height:190px;flex:none;opacity:.9;margin:-5px 0 -20px}.home-services .service-card-1 .service-text{padding:20px 25px 26px}.home-services .service-card-1 h3{font-size:37px}.home-services .service-card p{font-size:11px;max-width:280px}.home-services .service-links a,.home-services .service-card-1 .service-links a{font-size:10px;padding-block:12px}.home-services .service-card-2,.home-services .service-card-3{min-height:255px}.home-services .service-card-2 .service-thumb,.home-services .service-card-3 .service-thumb{opacity:.27;width:170px;height:125px;top:30px;right:-20px}.home-services .service-card h3{font-size:31px}.home-services .service-card-4{grid-column:auto;min-height:280px;grid-template-columns:1.15fr .85fr}.home-services .service-card-4 h3{font-size:31px}.home-services .service-card-4 p{font-size:10px}.home-services .service-card-4 .service-links a{font-size:9px}.about-text h2{font-size:41px}.about-points{grid-template-columns:1fr;gap:12px}.about-points span{font-size:10px}.about-art{min-height:310px;height:310px}.about-art>img{width:77%}.about-art:before{width:230px;height:230px}.about-art:after{width:160px;height:160px}.home-process .step{padding:25px 22px;gap:19px;grid-template-columns:42px 1fr}.home-process .step-number{width:40px;height:40px;font-size:11px}.home-process .step h3{font-size:23px;padding-right:5px;line-height:1.15}.home-process .step>svg{right:18px;top:28px;width:14px;height:14px}.home-process .step p{font-size:11px}.region-section{padding-top:0}.region-panel{padding:32px 23px;border-radius:21px}.region-copy h2{font-size:54px}.district-mark{font-size:75px;top:28px;right:-5px;opacity:.25}.districts{grid-template-columns:repeat(2,1fr)}.districts a{font-size:10px;padding:13px 12px}.region-aside>p{font-size:9px}.blog-card h3{font-size:25px}.home-faq .faq-intro h2{font-size:49px}.faq-list summary{font-size:12px}.cta-inner h2{font-size:80px}.cta-inner .btn{min-width:220px;font-size:15px}.footer-wordmark{height:110px}.footer-wordmark>span{font-size:152px}.footer-wordmark>i{font-size:83px;margin-right:0}.footer-col a{font-size:9px}.footer-col .footer-phone{font-size:19px}.footer-main{gap:32px 22px}.footer-bottom div{gap:15px}.page-intro h1,.intro-grid h1{font-size:39px}.page-intro .intro-lead{font-size:12px}.feature-strip{grid-template-columns:1fr;gap:19px}.feature-strip div{font-size:11px}.prose h2{font-size:27px}.detail-card{padding:24px;gap:17px}.detail-card h3{font-size:25px}.detail-card p{font-size:11px}.detail-card .icon-tile{width:39px;height:39px}.detail-card .icon-tile svg{width:19px;height:19px}.region-list{grid-template-columns:1fr}.district-card{padding:26px}.district-card p{font-size:12px}.district-card .text-link{font-size:11px}.article-hero h1{font-size:35px}.article-hero .intro-lead{font-size:12px}.contact-info h2{font-size:37px}.contact-form{padding:27px 23px}.contact-form h2{font-size:30px}.form-row{grid-template-columns:1fr;gap:0}.field label{font-size:10px}.field input,.field select,.field textarea{font-size:12px}}
@media(max-width:760px){.faq-grid{grid-template-columns:minmax(0,1fr)}.faq-intro,.faq-list{min-width:0}}
@media(max-width:350px){.wrap{width:calc(100% - 30px)}.hero h1,.hero h2{font-size:62px}.header-inner{padding-inline:11px}.brand img{width:75px}.motion-toggle{width:23px;height:23px}.header-actions{gap:5px}.header-cta{font-size:8px;min-height:32px;padding:8px 10px;gap:7px}.header-cta svg{width:11px;height:11px}.menu-toggle svg{width:19px;height:19px}.hero-copy .btn{font-size:8px;padding:13px 15px;gap:12px}.hero-copy .btn-ghost{padding-left:9px}.hero-visual{height:245px}.hero-note .note-icon{display:none}.hero-note strong{font-size:9px}.hero-tab strong{font-size:8px;line-height:1.5}.hero-tabs{gap:10px}.benefit-grid>div{font-size:7px;gap:7px}.benefit-grid svg{width:13px;height:13px}.home-services h2,h2{font-size:33px}.about-text h2{font-size:37px}.region-copy h2{font-size:48px}.region-panel{padding-inline:21px}.districts a{font-size:9px}.footer-wordmark>span{font-size:132px}.footer-wordmark>i{font-size:70px}.footer-col .footer-phone{font-size:17px}.page-intro h1,.intro-grid h1{font-size:35px}.article-hero h1{font-size:32px}.contact-form h2{font-size:28px}.contact-form{padding:25px 21px}.cta-inner h2{font-size:74px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1!important;translate:0 0!important}.title-line>span,.device-scene>img,.hero-copy .actions{opacity:1!important;transform:none!important}.device-scene,.about-art,.service-card,.btn{transform:none!important}.hero-network{display:none}.hero-tab:before{animation:none!important}}


/* ERD v2.1: readable contrast, fluid layouts and full-frame photography. */
:root { --muted: #bdc9b4; }
main, .wrap, .header-inner, .intro-grid > *, .content-layout > *, .contact-grid > *,
.section-head > *, .service-grid > *, .service-detail-list > *, .region-list > *,
.blog-grid > *, .footer-main > *, .form-row > * { min-width: 0; }
.wrap { width: min(var(--max), calc(100% - clamp(32px, 6vw, 96px))); margin-inline: auto; }
.section { padding-block: clamp(64px, 7vw, 112px); }
main h1, main h2, main h3, p, li, summary, .text-link, .btn,
.sidebar-phone, .contact-item a, .footer-col a { overflow-wrap: break-word; }
.prose a, .source-note a { overflow-wrap: anywhere; }
.prose table { display: block; max-width: 100%; overflow-x: auto; }
.prose iframe, .prose video { max-width: 100%; }
.muted-word, .soft-word { color: #b4c2a9; }
.light .muted-word, .light .soft-word { color: #4b5940; }
.light p { color: #3f4b39; }
.light .eyebrow, .inline-group-title { color: #4c603b; }
.light .prose a:not(.btn) { color: #344b1c; }
.light .faq-intro .text-link { color: #344b1c; }
.light .faq-list details > p { color: #3f4b39; }
.light .faq-list summary { color: #162110; }
.topbar, .topbar .wrap { font-size: 12px; color: #bac8b0; }
.topbar a { color: #e2ecd9; }
.brand-copy strong { font-size: 11px; }
.brand-copy span { font-size: 10px; color: #bdcbb3; letter-spacing: .08em; }
.desktop-nav { font-size: 13px; gap: clamp(16px, 1.8vw, 27px); }
.desktop-nav > a, .nav-trigger { color: #d4dfca; }
.header-cta { font-size: 13px; }
.motion-toggle { color: #d0dec4; }
.mega-top span { font-size: 12px; color: #c8d6bc; }
.mega-group h3, .mega-group a { font-size: 13px; }
.mega-group a { color: #d0ddc4; line-height: 1.65; }
.mega-aside a { font-size: 13px; }
.mobile-head button { width: 44px; min-width: 44px; height: 44px; display: grid; place-items: center; padding: 10px; }
.mobile-head button svg { width: 24px; height: 24px; display: block; }
.mobile-sub a { font-size: 15px; color: #cddbc0; }
.hero-desc { font-size: 16px; line-height: 1.85; color: #c2cfb7; max-width: 440px; }
.hero-eyebrow { font-size: 11px; color: #d1dfc4; }
.hero-edition { font-size: 10px; color: #b5c4a9; }
.hero-signature > span:nth-child(2) { font-size: 10px; color: #b8c8ab; }
.hero-copy .btn { font-size: 13px; }
.hero-note strong { font-size: 13px; }
.hero-note small { font-size: 11px; color: #c1d1b3; }
.scene-coordinate, .scene-label { color: #afc29c; }
.hero-tab { color: #bdcdb1; }
.hero-tab b, .hero-tab small { color: #b6c7a9; font-size: 11px; }
.hero-tab strong { font-size: 13px; line-height: 1.5; }
.hero-tab[aria-selected=true] { color: #f4f8ef; }
.benefit-grid > div { font-size: 12px; color: #c8d7bc; }
.service-card-top .service-num { color: #b4c8a1; font-size: 11px; }
.home-services .service-card p { color: #c0d1b2; font-size: 14px; line-height: 1.85; }
.home-services .service-links a, .home-services .service-card-1 .service-links a { font-size: 13px; color: #d4e1c9; }
.home-services .service-card-4 .service-links a { font-size: 13px; }
.home-services .service-text { min-width: 0; }
.section-summary > p, .about-text > p, .value-card p, .detail-card p, .district-card p { font-size: 15px; line-height: 1.9; }
.text-link { font-size: 14px; line-height: 1.6; }
.about-points span { font-size: 13px; color: #3b4e2b; line-height: 1.6; }
.art-label { font-size: 11px; color: #bdcea9; }
.home-process .section-head > p, .home-process .step p, .region-copy > p,
.region-aside > p, .faq-intro > p { color: #b9cdaa; font-size: 15px; line-height: 1.9; }
.home-about .about-text > p { color: #3f4b39; }
.region-copy > .text-link { font-size: 14px; color: #d3e3c2; }
.district-mark span { color: #c1d4ac; font-size: 11px; }
.districts a { color: #c3d6b2; font-size: 13px; min-height: 46px; }
.districts a:nth-child(-n+4) { color: #e1ecd5; }
.districts a:hover, .districts a:nth-child(-n+4):hover { color: #15220a; }
.faq-list summary { font-size: 16px; line-height: 1.65; }
.faq-list details > p { color: #c1d1b4; font-size: 15px; line-height: 1.9; }
.faq-intro .text-link { font-size: 14px; }
.blog-meta { font-size: 12px; line-height: 1.6; color: #4a6038; letter-spacing: .04em; flex-wrap: wrap; }
.blog-card > p { font-size: 15px; line-height: 1.9; }
.blog-card h3 { font-size: clamp(24px, 2.2vw, 29px); }
.filter-btn, .filter-status, .blog-search input { font-size: 14px; }
.filter-btn { min-height: 44px; color: #3f542e; }
.filter-status { color: #445737; }
.blog-search input { min-height: 48px; }
.article-hero .blog-meta { font-size: 12px; color: #c8d7bc; }
.article-hero .intro-lead, .page-intro .intro-lead { font-size: 17px; line-height: 1.9; color: #c3d1b7; }
.breadcrumb { color: #b9caaa; font-size: 12px; line-height: 1.6; }
.breadcrumb span { color: #d0dec4; }
.breadcrumb a:hover { color: #f1ff83; }
.intro-image { position: relative; width: 100%; aspect-ratio: 4 / 3; min-height: 0; max-height: none; transform: none; }
.intro-image:hover { transform: none; }
.intro-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.intro-image:hover img { transform: scale(1.025); }
.feature-strip div { font-size: 14px; line-height: 1.7; }
.prose p, .prose li { font-size: 16px; line-height: 1.95; }
.prose .callout p, .source-note p, .source-note { font-size: 14px; }
.sidebar-box, .light .sidebar-box { color: #edf5e6; }
.sidebar-box p, .light .sidebar-box p { color: #c0d0b1; font-size: 14px; line-height: 1.9; }
.sidebar-links a, .toc a, .sidebar-box .text-link { color: #cbddb9; font-size: 14px; line-height: 1.7; }
.sidebar-box .btn { font-size: 13px; }
.sidebar-box .sidebar-phone { font-size: clamp(21px, 2vw, 26px); }
.inline-group-title { font-size: 13px; }
.district-card .text-link, .detail-card .text-link { font-size: 13px; }
.contact-info > p, .contact-item p { font-size: 15px; line-height: 1.9; }
.contact-item small { font-size: 12px; color: #415732; }
.contact-form > p, .light .contact-form > p { color: #c1d2b3; font-size: 14px; }
.contact-form .eyebrow, .light .contact-form .eyebrow { color: #cee6ac; font-size: 12px; }
.field label { color: #e0ecd4; font-size: 14px; line-height: 1.6; }
.field input, .field select, .field textarea { font-size: 16px; color: #eff6e9; max-width: 100%; min-height: 50px; }
.field input::placeholder, .field textarea::placeholder { color: #a6bc94; opacity: 1; }
.field small, .contact-form .form-note, .light .contact-form .form-note { font-size: 13px; color: #bed3aa; line-height: 1.85; }
.contact-form .form-note a { color: #e1efca; }
.contact-message p, .light .contact-message p { color: #deebd3; font-size: 14px; }
.contact-form .btn { font-size: 14px; min-height: 52px; }
.article-tools span, .article-tools a, .article-tools button { font-size: 13px; }
.notice, .empty-state p { color: #40562c; font-size: 14px; }
.cta-inner p { color: #344618; font-size: 15px; line-height: 1.85; }
.cta-inner small { color: #344618; font-size: 13px; }
.cta-inner .eyebrow { font-size: 12px; }
.footer-brand p, .footer-col p { font-size: 14px; line-height: 1.9; color: #c2d0b6; }
.footer-brand .footer-location { font-size: 13px; color: #d0dec3; }
.footer-col h3 { font-size: 12px; color: #e3eed8; }
.footer-col a { font-size: 13px; color: #c1d2b2; line-height: 1.7; }
.footer-col .footer-phone { font-size: clamp(17px, 2vw, 25px); color: #eff7e7; line-height: 1.5; white-space: normal; }
.footer-bottom { font-size: 12px; line-height: 1.8; color: #c1d0b4; flex-wrap: wrap; }
.footer-bottom div { flex-wrap: wrap; gap: 12px 24px; }
.footer-bottom a { color: #d6e4ca; }
.footer-bottom span { overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  .header-inner { gap: 16px; padding-inline: 20px; }
  .mega { left: 24px; right: 24px; }
  .mega-layout { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .mega-aside { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .wrap { width: calc(100% - 32px); }
  .topbar .wrap { font-size: 11px; }
  .header-inner { height: 68px; padding-inline: 12px; gap: 8px; }
  .header-actions { gap: 6px; }
  .brand img { width: 88px; height: 30px; }
  .motion-toggle { width: 32px; height: 32px; }
  .header-cta { font-size: 11px; min-height: 40px; padding: 10px 13px; gap: 8px; }
  .menu-toggle { padding: 6px; }
  .menu-toggle svg { width: 23px; height: 23px; }
  .hero h1, .hero h2 { font-size: clamp(48px, 18vw, 80px); margin-left: 0; }
  .hero-eyebrow { font-size: 10px; letter-spacing: .1em; }
  .hero-edition { font-size: 9px; margin-left: 5px; }
  .hero-desc, .page-intro .intro-lead, .article-hero .intro-lead { font-size: 15px; line-height: 1.85; }
  .hero-copy .btn { font-size: 12px; padding-inline: 17px; }
  .hero-copy .btn-ghost { padding-inline: 10px; }
  .hero-note { min-width: 0; max-width: 100%; padding: 13px; }
  .hero-note strong { font-size: 11px; }
  .hero-note small { font-size: 10px; }
  .hero-signature > span:nth-child(2) { font-size: 9px; }
  .hero-tab strong { font-size: 11px; line-height: 1.5; }
  .hero-tab { min-width: 0; }
  .benefit-grid > div { font-size: 11px; line-height: 1.7; }
  .home-services .service-card p, .home-services .service-card-4 p { font-size: 14px; }
  .home-services .service-links a, .home-services .service-card-1 .service-links a,
  .home-services .service-card-4 .service-links a { font-size: 12px; }
  .home-process .step p, .region-copy > p, .region-aside > p, .faq-intro > p,
  .about-text > p, .value-card p, .detail-card p, .district-card p { font-size: 14px; }
  .districts a { font-size: 12px; }
  .blog-card > p, .prose p, .prose li { font-size: 15px; }
  .faq-list summary { font-size: 15px; }
  .faq-list details > p { font-size: 14px; }
  .breadcrumb, .blog-meta, .article-hero .blog-meta { font-size: 11px; }
  .intro-image { aspect-ratio: 4 / 3; max-height: none; }
  .content-layout, .contact-grid, .intro-grid { grid-template-columns: minmax(0, 1fr); }
  .feature-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-strip div { font-size: 13px; }
  .filter-btn { font-size: 12px; }
  .filter-status { font-size: 13px; }
  .blog-search input { font-size: 16px; }
  .contact-form { padding: 28px 23px; }
  .contact-form h2 { font-size: clamp(27px, 7vw, 33px); }
  .contact-info h2 { font-size: clamp(32px, 8vw, 40px); }
  .field label { font-size: 13px; }
  .field input, .field select, .field textarea { font-size: 16px; }
  .footer-brand p, .footer-col p { font-size: 13px; }
  .footer-col a { font-size: 12px; }
  .footer-col h3 { font-size: 11px; }
  .footer-bottom { font-size: 11px; }
  .cta-inner p { font-size: 14px; }
  .cta-inner small { font-size: 12px; }
}
@media (max-width: 600px) {
  .home-services .service-grid, .service-grid, .service-detail-list { grid-template-columns: minmax(0, 1fr); }
  .home-services .service-card-1, .home-services .service-card-4 { grid-column: auto; }
  .home-services .service-card-1 { display: flex; min-height: 0; }
  .home-services .service-card-1 .service-card-top { position: relative; }
  .home-services .service-card-1 .service-thumb { height: 200px; min-height: 200px; flex: none; }
  .home-services .service-card-1 .service-text { padding: 24px; }
  .home-services .service-card-4 { min-height: 310px; }
  .form-row, .feature-strip { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .feature-strip { gap: 18px; }
  .article-tools { flex-wrap: wrap; }
  .region-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 420px) {
  .brand img { width: 76px; height: 27px; }
  .header-cta { font-size: 10px; padding-inline: 12px; }
  .header-cta svg { display: none; }
  .menu-toggle { padding: 5px; }
  .menu-toggle svg { width: 21px; height: 21px; }
  .hero-copy .actions { gap: 3px; flex-wrap: wrap; }
  .hero-copy .btn { font-size: 11px; padding-inline: 15px; gap: 12px; }
  .hero-note .note-icon { display: none; }
  .hero-tab strong { font-size: 10px; }
  .districts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .districts a { font-size: 11px; padding-inline: 10px; }
  .footer-main { gap: 32px 20px; }
  .footer-col .footer-phone { font-size: 17px; }
  .sidebar-box { padding: 26px; }
}

.about-art { background-color: #10180c; }
.light .faq-intro > p { color: #3f4b39; }
.article-tools span { color: #3f4b39; }


/* ERD v2.2: continuous sizing from small phones to 4K and ultrawide screens. */
:root {
  --max: clamp(1376px, calc(50vw + 656px), 2640px);
  --page-gutter: clamp(16px, 3vw, 112px);
  --body-size: clamp(16px, calc(13.6px + .167vw), 20px);
  --small-size: clamp(14px, calc(11.6px + .167vw), 18px);
  --label-size: clamp(12px, calc(9.6px + .167vw), 16px);
  --layout-gap: clamp(32px, 4vw, 112px);
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { min-width: 0; }
.wrap {
  width: min(var(--max), calc(100% - var(--page-gutter) * 2));
  margin-inline: auto;
}
.section { padding-block: clamp(64px, calc(38px + 4.5vw), 176px); }
.section-head, .about-block, .region-grid, .faq-grid, .contact-grid,
.intro-grid { gap: var(--layout-gap); }
.hero-stage, .hero-slide > *, .hero-controls > *, .hero-tab > *,
.steps > *, .about-block > *, .about-points > *, .region-grid > *,
.faq-grid > *, .value-grid > *, .districts > *, .sidebar, .prose,
.blog-toolbar > *, .contact-form, .field, .footer-bottom > * { min-width: 0; }
.hero-tab { white-space: normal; text-align: left; }
.hero-tab strong, .hero-tab small, .hero-note strong { overflow-wrap: break-word; }
.service-detail-list, .blog-grid, .region-list, .feature-strip,
.value-grid, .steps { grid-auto-rows: auto; }
.prose { max-width: 78ch; }
.prose p, .prose li { font-size: var(--body-size); }
.prose pre { max-width: 100%; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; }
.prose img, .prose video, .prose iframe { max-width: 100%; }
.breadcrumb { flex-wrap: wrap; }
.btn, .text-link, .filter-btn, .article-tools a, .article-tools button { max-width: 100%; }
.field input, .field select, .field textarea { width: 100%; min-width: 0; }
.field textarea { resize: vertical; }
.sidebar { align-self: start; }
.mega {
  max-width: var(--max);
  left: var(--page-gutter); right: var(--page-gutter);
  max-height: calc(100dvh - 150px);
  overflow-y: auto; overscroll-behavior: contain;
}
.mobile-dialog {
  width: min(480px, 100%); height: 100dvh; max-height: 100dvh;
  padding-top: max(24px, env(safe-area-inset-top));
  padding-right: max(24px, env(safe-area-inset-right));
  padding-bottom: max(24px, env(safe-area-inset-bottom));
  padding-left: max(24px, env(safe-area-inset-left));
  overscroll-behavior: contain;
}
.mobile-sub a { min-height: 44px; display: flex; align-items: center; }
.mobile-head button, .menu-toggle, .motion-toggle { flex-shrink: 0; }
.float-wa {
  right: max(20px, env(safe-area-inset-right));
  bottom: max(20px, env(safe-area-inset-bottom));
}
@media (min-width: 1441px) {
  .topbar .wrap { min-height: clamp(32px, 2.25vw, 48px); }
  .topbar, .topbar .wrap, .breadcrumb, .blog-meta, .article-hero .blog-meta,
  .footer-bottom, .footer-col h3, .contact-item small { font-size: var(--label-size); }
  .header-inner { height: clamp(78px, 5vw, 112px); padding-inline: clamp(24px, 2vw, 56px); }
  .site-header.is-scrolled .header-inner { height: clamp(68px, 4.5vw, 96px); }
  .brand img { width: clamp(117px, 8vw, 184px); height: auto; max-height: 64px; }
  .brand-copy strong { font-size: clamp(11px, .75vw, 16px); }
  .brand-copy span { font-size: clamp(10px, .65vw, 14px); }
  .desktop-nav { gap: clamp(27px, 2vw, 64px); font-size: clamp(13px, .9vw, 20px); }
  .header-actions { gap: clamp(12px, 1vw, 28px); }
  .header-cta, .mega-group h3, .mega-group a, .mega-aside a { font-size: var(--small-size); }
  .header-cta { min-height: clamp(44px, 3vw, 64px); padding-inline: clamp(19px, 1.4vw, 36px); }
  .motion-toggle { width: clamp(36px, 2.7vw, 56px); height: clamp(36px, 2.7vw, 56px); }
  .motion-toggle svg { width: 50%; height: 50%; }
  .mega-layout { gap: clamp(24px, 2vw, 56px); }
  .mega-top span, .hero-edition, .hero-signature > span:nth-child(2),
  .hero-tab b, .hero-tab small, .service-card-top .service-num, .art-label { font-size: var(--label-size); }
  .mega-aside strong { font-size: clamp(24px, 1.7vw, 40px); }
  .hero-slide { min-height: clamp(680px, 43vw, 1200px); }
  .hero-copy { padding-block: clamp(48px, 4vw, 112px); }
  .hero h1, .hero h2 { font-size: clamp(110px, 7.3vw, 200px); }
  .hero-desc { font-size: clamp(16px, 1.1vw, 24px); max-width: 31em; }
  .hero-eyebrow { font-size: var(--small-size); }
  .hero-copy .btn, .hero-note strong, .hero-tab strong, .benefit-grid > div,
  .home-services .service-links a, .home-services .service-card-1 .service-links a,
  .home-services .service-card-4 .service-links a, .about-points span,
  .districts a, .feature-strip div { font-size: var(--small-size); }
  .hero-copy .btn { min-height: clamp(54px, 3.5vw, 76px); padding: 1em 1.5em; }
  .hero-copy .actions, .hero-signature { margin-top: clamp(30px, 2vw, 56px); }
  .hero-signature { max-width: 490px; }
  .hero-note { padding: clamp(18px, 1.2vw, 30px); bottom: clamp(80px, 5vw, 150px); }
  .hero-note small { font-size: var(--label-size); }
  .hero-note .note-icon { width: clamp(42px, 3vw, 64px); height: clamp(42px, 3vw, 64px); }
  .hero-tab { padding-block: clamp(28px, 2vw, 48px); }
  .scene-coordinate, .scene-label { font-size: clamp(10px, .65vw, 14px); }
  .scene-index { font-size: clamp(240px, 16vw, 440px); }
  h2, .home-services h2 { font-size: clamp(54px, 3.75vw, 86px); }
  .section-head h2 { max-width: 16em; }
  .section-summary { max-width: 27em; }
  .section-head > p { max-width: 26em; }
  .eyebrow { font-size: var(--label-size); }
  .section-summary > p, .section-head > p, .about-text > p, .value-card p,
  .detail-card p, .district-card p, .home-process .section-head > p,
  .home-process .step p, .region-copy > p, .region-aside > p, .faq-intro > p,
  .blog-card > p, .faq-list details > p, .contact-info > p, .contact-item p,
  .cta-inner p, .home-services .service-card p { font-size: var(--body-size); }
  .text-link, .region-copy > .text-link, .faq-intro .text-link,
  .detail-card .text-link, .district-card .text-link { font-size: var(--small-size); }
  .home-services .service-grid, .blog-grid, .service-detail-list, .region-list,
  .home-process .steps { gap: clamp(24px, 1.8vw, 48px); }
  .home-services .service-card h3, .detail-card h3, .value-card h3,
  .home-process .step h3, .blog-card h3 { font-size: clamp(29px, 2vw, 44px); }
  .home-services .service-card-1 h3 { font-size: clamp(39px, 2.8vw, 62px); }
  .home-services .service-card-4 h3 { font-size: clamp(35px, 2.5vw, 56px); }
  .home-services .service-card p { max-width: 30em; }
  .home-services .service-text, .home-services .service-card-top,
  .detail-card, .district-card { padding-inline: clamp(30px, 2vw, 56px); }
  .home-services .service-card-2, .home-services .service-card-3 { min-height: clamp(300px, 20vw, 480px); }
  .home-services .service-card-1 .service-thumb { min-height: clamp(290px, 22vw, 580px); }
  .home-services .service-card-4 { min-height: clamp(280px, 20vw, 480px); }
  .about-art { height: clamp(540px, 37vw, 900px); }
  .about-text h2 { font-size: clamp(58px, 4vw, 90px); }
  .home-process .step { padding: clamp(36px, 2.5vw, 64px); }
  .region-panel { padding: clamp(60px, 4vw, 112px); }
  .region-copy h2 { font-size: clamp(74px, 5vw, 120px); }
  .districts a { padding: 1.1em; }
  .district-card h2 { font-size: clamp(31px, 2.2vw, 48px); }
  .home-faq .faq-intro h2 { font-size: clamp(62px, 4.3vw, 98px); }
  .faq-list summary { font-size: clamp(16px, 1.1vw, 23px); padding-block: 1.5em; }
  .page-intro, .article-hero { padding-top: clamp(44px, 3vw, 80px); padding-bottom: clamp(90px, 6vw, 160px); }
  .page-intro h1 { font-size: clamp(80px, 5.5vw, 120px); max-width: 18em; }
  .intro-grid h1 { font-size: clamp(68px, 4.7vw, 110px); }
  .page-intro .intro-lead, .article-hero .intro-lead { font-size: clamp(17px, 1.15vw, 24px); max-width: 50ch; }
  .intro-grid .intro-lead { max-width: 50ch; }
  .intro-image { max-width: 1000px; justify-self: end; }
  .content-layout {
    max-width: clamp(1376px, calc(30vw + 944px), 1900px);
    grid-template-columns: minmax(0, 1fr) clamp(320px, 20vw, 440px);
    gap: clamp(64px, 5vw, 140px);
  }
  .prose h2 { font-size: clamp(31px, 2.15vw, 46px); }
  .prose h3 { font-size: clamp(25px, 1.7vw, 36px); }
  .sidebar-box { padding: clamp(30px, 2vw, 48px); }
  .sidebar-box h3 { font-size: clamp(24px, 1.65vw, 34px); }
  .sidebar-box p, .light .sidebar-box p, .sidebar-links a, .toc a,
  .sidebar-box .text-link, .sidebar-box .btn, .prose .callout p, .source-note,
  .source-note p { font-size: var(--small-size); }
  .sidebar-box .sidebar-phone { font-size: clamp(26px, 1.8vw, 34px); }
  .article-hero h1 { font-size: clamp(72px, 5vw, 112px); max-width: 20em; }
  .article-cover { max-height: 800px; }
  .article-tools span, .article-tools a, .article-tools button, .filter-btn,
  .filter-status, .blog-search input, .inline-group-title { font-size: var(--small-size); }
  .blog-search { min-width: 300px; max-width: 100%; }
  .contact-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .contact-info h2 { font-size: clamp(45px, 3.2vw, 72px); }
  .contact-item a, .contact-item strong { font-size: clamp(27px, 2.2vw, 46px); }
  .contact-form { padding: clamp(44px, 3vw, 80px); }
  .contact-form h2 { font-size: clamp(35px, 2.5vw, 54px); }
  .contact-form > p, .light .contact-form > p, .field label, .contact-form .btn,
  .field small, .contact-form .form-note, .light .contact-form .form-note { font-size: var(--small-size); }
  .field input, .field select, .field textarea { font-size: var(--body-size); padding: 1em; }
  .field textarea { min-height: 10em; }
  .cta-band { padding-block: clamp(80px, 5vw, 144px); }
  .cta-inner h2 { font-size: clamp(120px, 8vw, 210px); }
  .cta-inner .btn { font-size: clamp(19px, 1.4vw, 28px); padding: 1em 1.5em; }
  .cta-inner small, .cta-inner .eyebrow { font-size: var(--small-size); }
  .footer-main { gap: clamp(64px, 4vw, 112px); }
  .footer-brand p, .footer-col p, .footer-col a, .footer-brand .footer-location { font-size: var(--small-size); }
  .footer-brand p { max-width: 30em; }
  .footer-col .footer-phone { font-size: clamp(25px, 1.75vw, 38px); }
  .footer-wordmark { height: clamp(260px, 19vw, 480px); }
  .footer-wordmark > span { font-size: clamp(350px, 26vw, 640px); }
  .footer-wordmark > i { font-size: clamp(200px, 15vw, 360px); }
  .float-wa { width: clamp(56px, 3vw, 76px); height: clamp(56px, 3vw, 76px); }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .content-layout { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .prose { max-width: 78ch; }
  .sidebar { position: static; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)); gap: 24px; }
  .sidebar-box { margin: 0; }
  .feature-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
  .desktop-nav { display: none; }
  .menu-toggle { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .intro-grid, .about-block, .contact-grid, .faq-grid { grid-template-columns: minmax(0, 1fr); }
  .intro-image { width: 100%; max-width: 760px; margin-inline: auto; }
  .about-art { width: 100%; max-width: 760px; margin-inline: auto; }
  .about-text h2 { max-width: 16em; }
  .home-process .steps { grid-template-columns: minmax(0, 1fr); }
  .home-process .step { min-height: 0; }
  .blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-blog .blog-card:last-child { grid-column: 1 / -1; max-width: 520px; }
}
@media (max-width: 760px) {
  :root { --body-size: 16px; --small-size: 14px; --label-size: 12px; --layout-gap: 36px; }
  .wrap { width: calc(100% - max(16px, env(safe-area-inset-left)) - max(16px, env(safe-area-inset-right))); }
  .hero-visual { height: clamp(245px, 66vw, 450px); }
  .intro-image { width: 100%; max-width: 100%; }
  .motion-toggle { width: 36px; height: 36px; }
  .menu-toggle { width: 44px; height: 44px; padding: 10px; }
  .menu-toggle svg { width: 23px; height: 23px; }
  .header-cta { min-height: 44px; }
  .hero-copy .btn { min-height: 48px; }
  .hero-controls > .slider-pause { width: 44px; height: 44px; min-width: 44px; margin-left: 8px; }
  .hero-controls > .slider-pause svg { width: 13px; height: 13px; }
  .hero h1, .hero h2 { font-size: clamp(48px, 17vw, 96px); }
  .page-intro h1, .intro-grid h1 { font-size: clamp(35px, 7.2vw, 54px); }
  .article-hero h1 { font-size: clamp(32px, 6.7vw, 50px); }
  .contact-item a, .contact-item strong { font-size: clamp(23px, 5.7vw, 32px); }
  .contact-form { width: 100%; }
  .prose p, .prose li, .field input, .field select, .field textarea { font-size: 16px; }
  .blog-toolbar { align-items: stretch; }
  .blog-search { width: 100%; max-width: 100%; }
  .filters { flex-wrap: wrap; }
  .footer-bottom { padding-bottom: 76px; }
}
@media (max-width: 600px) {
  .home-services .service-card-4 { display: flex; flex-direction: column; align-items: stretch; min-height: 0; }
  .home-services .service-card-4 .service-text { padding: 24px; }
  .home-services .service-card-4 .service-thumb { width: 100%; height: 180px; min-height: 180px; flex: none; }
  .home-services .service-card-4 .service-thumb img { width: 100%; height: 100%; object-fit: cover; }
  .home-services .service-card-4 h3 { font-size: 34px; }
  .home-services .service-card-4 p { max-width: 100%; }
  .blog-grid, .value-grid, .steps { grid-template-columns: minmax(0, 1fr); }
  .home-blog .blog-card:last-child { grid-column: auto; max-width: none; }
}
@media (max-width: 380px) {
  .header-actions .motion-toggle { display: none; }
  .header-inner { gap: 6px; padding-inline: 10px; }
  .header-actions { gap: 4px; }
  .hero-edition { display: none; }
  .hero-tab strong { font-size: 10px; }
  .hero-tabs { gap: 8px; }
}
@media (max-height: 540px) and (orientation: landscape) {
  .site-header { padding-block: 4px; }
  .header-inner, .site-header.is-scrolled .header-inner { height: 60px; }
  .mega { max-height: calc(100dvh - 90px); }
  .mobile-head { margin-bottom: 12px; }
  .mobile-links > a, .mobile-links summary { font-size: 24px; padding-block: 11px; }
  .hero-slide { min-height: 0; }
}
/* A scaled desktop operating system and browser zoom naturally use these same CSS breakpoints. */
