@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--cream:#f6f5ee;--green:#183e31;--muted:#5d6d60;--line:#d8ddcf;--sage:#e5e9dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--cream);color:var(--green);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #55764b;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.09;letter-spacing:-.055em}h1{font-size:clamp(48px,5.5vw,83px);margin-bottom:27px}h2{font-size:clamp(35px,3.8vw,56px);margin-bottom:24px}h3{font-size:29px;letter-spacing:-.04em}em{font-family:Georgia,serif;font-weight:normal}p{color:var(--muted)}.concept{background:var(--green);color:#f8f8ed;text-align:center;font-size:11px;letter-spacing:.06em;padding:8px 16px;line-height:1.4}header{display:flex;align-items:center;justify-content:space-between;padding:25px 4.5%;border-bottom:1px solid var(--line);gap:24px;background:var(--cream);position:relative;z-index:10}.brand{display:flex;gap:12px;align-items:center}.brand svg{width:33px;height:42px}.brand span{font-size:13px;font-weight:800;letter-spacing:.055em;line-height:1.4}.brand small{display:block;font-size:10px;letter-spacing:.2em;font-weight:500}nav{display:flex;gap:27px}nav a{font-size:13px;color:#526052}nav a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:8px}.header-call{border:1px solid #b4c1ab;border-radius:40px;padding:11px 20px;font-size:13px}.header-call span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:690px;padding:28px 28px 28px 6%;gap:4%}.hero-copy{align-self:center;padding:36px 0}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.17em;color:var(--green);margin-bottom:24px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#66825b;margin-right:9px;vertical-align:middle}.hero h1 em{font-size:.84em}.hero-description{max-width:430px;font-size:15px;line-height:1.85}.actions{display:flex;gap:27px;align-items:center;margin-top:32px}.button{display:inline-flex;gap:36px;justify-content:space-between;align-items:center;border:0;background:var(--green);color:#f6f5ee;border-radius:40px;padding:16px 26px;font-size:13px;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#315b40;transform:translateY(-2px)}.button.light{background:#e7eadc;color:var(--green)}.text-link{font-size:13px;border-bottom:1px solid #9cae97;padding-bottom:6px}.small-note{font-size:10px;max-width:430px;margin:23px 0 0}.hero-art{background:#dce5d3;border-radius:4px;position:relative;overflow:hidden;display:flex;align-items:center}.hero-art img{width:112%;max-width:none;display:block;margin-left:-6%;height:100%;object-fit:cover}.art-caption{position:absolute;top:27px;left:27px;right:27px;display:flex;justify-content:space-between;z-index:1;font-size:8px;letter-spacing:.14em}.art-bottom{position:absolute;bottom:27px;left:27px;right:27px;display:flex;justify-content:space-between;align-items:end;font-size:20px;font-family:Georgia,serif;font-style:italic;line-height:1.2}.round-arrow{border:1px solid #5b7857;border-radius:50%;width:47px;height:47px;display:grid;place-items:center;font-style:normal}.intro-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:23px 6%;gap:20px}.intro-bar span,.intro-bar a{font-size:10px;letter-spacing:.09em}.intro-bar p{font-family:Georgia,serif;font-style:italic;font-size:20px;color:var(--green);margin:0}.section{padding:95px 6%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading>p{max-width:320px;font-size:13px}.section-heading h2{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--line);padding:30px;background:#eeefe6;position:relative;transition:background .25s,transform .25s}.service-card:hover{background:#e4e9dc;transform:translateY(-5px)}.card-number{font-size:11px}.branch-icon{font-family:Georgia,serif;font-size:70px;font-weight:normal;line-height:1.3;margin:15px 0 25px}.service-card p{font-size:13px;min-height:88px}.card-link{display:flex;justify-content:space-between;font-size:11px;border-top:1px solid #ccd4c5;padding-top:21px;margin-top:28px}.story{height:260vh;position:relative;background:#e4e9dc}.story-sticky{position:sticky;top:0;padding:40px 6%;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.story-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.story-top .eyebrow{margin-bottom:15px}.motion-tools{display:flex;align-items:end;flex-direction:column;gap:10px}.motion-tools>span{font-size:8px;letter-spacing:.1em}.motion-tools button{background:transparent;border:1px solid #a0b295;border-radius:30px;font-size:10px;padding:7px 13px;color:var(--green)}.story-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:6%;align-items:center}.scene-wrap{position:relative;overflow:hidden;border-radius:3px}.scene-wrap svg{width:100%;height:auto;max-height:62vh;display:block;background:#dbe5d0}.scene-stamp{position:absolute;bottom:15px;left:18px;font-size:8px;line-height:1.5;color:#28472f}.story-copy h3{font-size:40px}.story-copy>p:not(.eyebrow){font-size:14px;max-width:340px}.progress-track{height:2px;background:#bdcbb2;margin:35px 0 20px}.progress-track span{display:block;height:100%;width:0;background:var(--green)}.stage-controls{display:flex;gap:10px;margin-bottom:20px}.stage-controls button{border:1px solid #a8b69b;border-radius:50%;background:transparent;width:37px;height:37px;color:var(--green);font-size:11px}.stage-controls button[aria-pressed=true]{background:var(--green);color:white}.scroll-note{font-size:8px;letter-spacing:.1em}.promise{display:grid;grid-template-columns:1.5fr 1fr;gap:0 8%}.promise .eyebrow{grid-column:1/-1}.promise>div{padding-top:10px}.promise p{font-size:15px}.promise .button{margin-top:15px}footer{background:var(--green);padding:66px 6% 25px;color:var(--cream)}footer h2{font-size:43px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:35px}.footer-top .eyebrow{color:#bbcfb2}.footer-bottom{border-top:1px solid #41604a;padding-top:24px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#c6d3bc}.page-hero{padding:90px 6% 65px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at top right,#e5eada,transparent 70%)}.page-hero h1{max-width:1000px}.page-hero>p:last-child{max-width:620px;font-size:16px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:8%}.paper-card{background:var(--sage);padding:42px}.two-column p{font-size:14px}.transparency{list-style:none;padding:0}.transparency li{font-size:13px;color:var(--muted);padding:18px 0;border-bottom:1px solid var(--line)}.transparency strong{display:block;font-size:15px;color:var(--green);margin-bottom:5px}.service-details{padding-top:20px;padding-bottom:20px}.service-detail{display:grid;grid-template-columns:.2fr 1fr 1fr;gap:5%;border-bottom:1px solid var(--line);padding:65px 0}.detail-number{font-family:Georgia,serif;font-size:40px;color:#8b9f80}.service-detail h2{font-size:36px}.service-detail p,.service-detail li{font-size:14px}.service-detail ul{padding-left:19px;color:var(--muted)}.faq{max-width:1000px;margin:auto}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-size:18px}.faq details p{margin:18px 0 0;font-size:14px}.faq .button{margin-top:30px}.map-section{padding-top:45px}.map-container{position:relative;min-height:440px;display:grid;place-items:center;overflow:hidden}.map-container>svg{position:absolute;width:100%;height:100%;object-fit:cover}.map-prompt{position:relative;text-align:center;background:#f6f5eeed;border:1px solid #d4dbca;padding:35px 50px;box-shadow:0 10px 60px #1b3d3010}.map-prompt h2{font-size:33px;margin:10px 0}.map-prompt p{font-size:12px}.map-pin{font-size:28px}.map-container iframe{width:100%;height:500px;border:0;position:relative}.map-meta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:20px}.map-meta span{font-size:9px;letter-spacing:.1em}.map-meta p{font-size:12px;margin:0}.contact-card{background:var(--green);color:var(--cream);padding:40px}.contact-card .eyebrow,.contact-card p{color:#c6d4bd}.contact-card h2{font-size:35px}.phone{display:block;font-size:clamp(25px,3vw,43px);letter-spacing:-.06em;margin:28px 0 8px}.contact-card .contact-caveat{font-size:11px;margin:30px 0 0}.checklist{list-style:none;padding:0}.checklist li{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.checklist li>span{font-size:12px;color:#71866a}.checklist h3{font-size:22px;margin-bottom:9px}.checklist p{margin:0}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.review-list{display:grid;gap:20px}.review-card{padding:30px;background:var(--sage);border:1px solid var(--line)}blockquote{font-family:Georgia,serif;font-size:26px;line-height:1.35;margin:15px 0 25px}.review-card .review-meta{font-size:11px}.review-card p{font-size:12px}.review-card .text-link{font-size:11px}.source-links{padding-left:20px}.source-links li{margin-bottom:12px}.source-links a{font-size:13px;text-decoration:underline}.no-motion .story{height:auto}.no-motion .story-sticky{position:relative;min-height:0;padding-top:60px;padding-bottom:60px}
.photo-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px}.photo-gallery a{background:var(--sage);display:block}.photo-gallery img{width:100%;height:210px;object-fit:cover;display:block}.photo-gallery span{display:block;padding:12px;font-size:10px}.gallery-section>p:not(.eyebrow){max-width:760px;font-size:13px}.source-section{padding-top:0}.source-section>p{font-size:12px;max-width:700px}@media(max-width:700px){.photo-gallery{grid-template-columns:repeat(2,1fr);gap:12px}.photo-gallery img{height:160px}.photo-gallery span{font-size:9px}}
@media(min-width:1600px){header,.hero,.intro-bar,.section,.story-sticky,.page-hero,footer{padding-left:max(6%,calc((100vw - 1450px)/2));padding-right:max(6%,calc((100vw - 1450px)/2))}.hero-art img{object-fit:contain}}
@media(max-width:950px){header{padding:20px 5%;gap:14px}.header-call{display:none}nav{gap:19px}.hero{padding:25px 5%;gap:25px;min-height:580px}h1{font-size:53px}.hero-description{font-size:14px}.actions{gap:16px;flex-wrap:wrap}.button{padding:14px 20px}.hero-art img{width:140%;margin-left:-20%}.art-caption{left:15px;right:15px;font-size:6px}.service-card{padding:23px}.service-card h3{font-size:24px}.service-card p{min-height:130px}.story-copy h3{font-size:32px}.story-layout{gap:4%}.section{padding:70px 5%}.contact-card{padding:28px}.two-column{gap:5%}.page-hero{padding:65px 5%}.footer-bottom{flex-wrap:wrap}}
@media(max-width:650px){.concept{font-size:9px;padding:9px 11px;letter-spacing:.015em}header{padding:17px 6%;flex-wrap:wrap}.brand svg{width:26px;height:34px}.brand span{font-size:10px}.brand small{font-size:8px}.menu-toggle{display:flex;gap:13px;align-items:center;background:transparent;border:1px solid #bcc8b5;border-radius:30px;padding:8px 12px;color:var(--green);font-size:11px}nav{display:none;width:100%;padding:10px 0;flex-direction:column;gap:0}nav.open{display:flex}nav a{padding:12px 0;border-bottom:1px solid var(--line)}.hero{display:flex;flex-direction:column;padding:0 6% 22px;gap:20px}.hero-copy{padding:42px 0 10px;align-self:stretch}.eyebrow{font-size:9px;margin-bottom:20px}h1{font-size:clamp(42px,11vw,64px);letter-spacing:-.055em}.hero h1{margin-bottom:22px}.hero-description{max-width:460px;font-size:13px;line-height:1.8}.actions{gap:22px;margin-top:25px}.actions .text-link{font-size:11px}.button{font-size:12px;gap:22px}.small-note{font-size:9px;margin-top:18px}.hero-art{height:350px;min-height:0}.hero-art img{width:100%;margin:0;object-fit:cover}.art-caption{top:18px;font-size:7px;left:18px;right:18px}.art-bottom{font-size:19px;bottom:20px;left:20px;right:20px}.round-arrow{width:36px;height:36px}.intro-bar{padding:20px 6%;flex-wrap:wrap;gap:9px}.intro-bar span{font-size:8px}.intro-bar p{font-size:17px}.intro-bar a{width:100%;font-size:9px}.section{padding:58px 6%}.section-heading{display:block;margin-bottom:26px}.section-heading>p{margin:20px 0 0;font-size:12px;max-width:100%}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{padding:25px}.branch-icon{position:absolute;top:15px;right:27px;font-size:49px;margin:0}.service-card h3{font-size:28px;margin:28px 0 15px}.service-card p{min-height:0;font-size:13px}.card-link{margin-top:23px;padding-top:17px}.story{height:270vh}.story-sticky{padding:26px 6%;min-height:100svh}.story-top{align-items:start;gap:10px}.story-top h2{font-size:31px;margin-bottom:15px}.story-top .eyebrow{font-size:7px;margin-bottom:10px}.motion-tools{max-width:116px;gap:9px}.motion-tools>span{font-size:6px;text-align:right}.motion-tools button{font-size:8px;padding:5px 9px}.story-layout{grid-template-columns:1fr;gap:22px}.scene-wrap svg{max-height:40svh;min-height:210px}.scene-stamp{font-size:6px;bottom:8px;left:10px}.story-copy .eyebrow{font-size:8px;margin-bottom:10px}.story-copy h3{font-size:29px;margin-bottom:12px}.story-copy>p:not(.eyebrow){font-size:12px;margin-bottom:10px;max-width:none}.progress-track{margin:17px 0 13px}.stage-controls{gap:9px;margin-bottom:10px}.stage-controls button{width:32px;height:32px;font-size:10px}.scroll-note{font-size:7px}.promise{display:block}.promise h2{font-size:40px}.promise p{font-size:13px}.footer-top{display:block}.footer-top h2{font-size:35px}.footer-top .button{margin-top:5px}footer{padding:45px 6% 25px}.footer-bottom{display:flex;flex-direction:column;gap:20px;font-size:9px}.page-hero{padding:50px 6% 40px}.page-hero>p:last-child{font-size:14px}.two-column{grid-template-columns:1fr;gap:40px}.paper-card{padding:25px}.service-detail{grid-template-columns:1fr;padding:35px 0;gap:15px}.detail-number{font-size:25px}.service-detail h2{font-size:30px}.service-detail p{margin-bottom:0}.service-detail .eyebrow{margin-top:8px}.service-details{padding-top:0;padding-bottom:0}.faq summary{font-size:16px}.map-container{min-height:400px}.map-prompt{padding:28px 20px;width:88%}.map-meta{flex-direction:column;align-items:start;gap:10px}.contact-card{padding:28px}.contact-card h2{font-size:31px}.phone{font-size:33px}blockquote{font-size:23px}.review-card{padding:24px}}
/* Wide cinematic diorama; existing SVG remains the no-WebGL fallback. */
.story{background:#122d26;color:#edf1e6;height:300vh}.story-sticky{padding:28px 4%;}.story-top .eyebrow,.story-copy .eyebrow{color:#b8cbb5}.story-top h2{font-size:clamp(30px,3.2vw,48px)}.story-layout{grid-template-columns:minmax(0,3fr) minmax(235px,1fr);gap:3%}.scene-wrap{height:65vh;min-height:360px;background:#c6d4ce;border-radius:6px;box-shadow:0 25px 65px #0004}.scene-wrap>svg{height:100%;max-height:none;object-fit:contain}.cinematic-canvas{position:absolute;inset:0;width:100%;height:100%;display:none}.scene-wrap[data-renderer=webgl] .cinematic-canvas{display:block}.scene-wrap[data-renderer=webgl]>svg{visibility:hidden}.scene-stamp{z-index:2;background:#eff3e6dd;padding:9px 12px;border-radius:3px;font-size:9px;color:#183e31}.story-copy>p:not(.eyebrow){color:#c4d0c1;font-size:13px}.story .motion-tools{color:#c4d0c1}.story .motion-tools button{color:#e9eee4;border-color:#81957c}.story .stage-controls button{color:#dae7d5;border-color:#81957c}.story .stage-controls button[aria-pressed=true]{background:#e2eacb;color:#183e31}.story .scroll-note{color:#adbfab}.story .progress-track{background:#365044}.story #story-progress{background:#d2deaf}
@media(max-width:950px){.story-layout{grid-template-columns:minmax(0,2fr) minmax(220px,1fr)}.scene-wrap{height:58vh;min-height:310px}}
@media(max-width:650px){.story{height:290vh}.story-sticky{padding:23px 6%;justify-content:center}.story-layout{grid-template-columns:1fr;gap:18px}.scene-wrap{height:38svh;min-height:260px}.story-top h2{font-size:27px;max-width:230px}.story .motion-tools span{max-width:110px;line-height:1.5}.scene-stamp{font-size:7px;padding:5px 8px}.story-copy h3{font-size:27px}.story-copy>p:not(.eyebrow){font-size:12px}.story-top{gap:8px}.story .stage-controls button{width:44px;height:44px}.story .motion-tools button{min-height:44px;font-size:10px}.story .scroll-note{font-size:8px}.scene-stamp{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.story{height:auto}.story-sticky{position:relative;min-height:0;padding-top:45px;padding-bottom:45px}}

.home-page .stage-controls,.home-page #time-of-day,.home-page .progress-track{display:none!important}
@media(max-width:650px){header nav.open{position:absolute;top:100%;left:4%;right:4%;width:auto;max-height:calc(100svh - 140px);overflow-y:auto;padding:8px 18px 12px;background:#f6f5ee;border:1px solid #d8ddcf;border-radius:0 0 12px 12px;box-shadow:0 12px 24px #10251c22;box-sizing:border-box}header nav.open a{display:block;padding:12px 4px;min-height:44px;box-sizing:border-box}header nav.open a:last-child{border-bottom:0}}
/* Minimal animation overlay: company name and controls only. */
.home-page .story-top .eyebrow,.home-page .hero-service-link,.home-page .motion-tools>span,.home-page #stage-number,.home-page #stage-title,.home-page #stage-description,.home-page .scroll-note,.home-page .scene-stamp{display:none!important}
/* Full-bleed first-screen scene. Only the homepage uses overlay navigation. */
.home-page>.concept{position:absolute;inset:0 0 auto;z-index:21;padding:5px 10px;background:#102d27e8;font-size:10px}
.home-page>header{position:absolute;inset:24px 0 auto;z-index:20;padding:12px 4%;background:#f6f5eeed;border:0;backdrop-filter:blur(12px)}
.home-page .brand svg{height:32px}.home-page .header-call{padding:7px 16px}
.home-page .story{height:320vh;background:#182b21}
.home-page .story-sticky{height:100dvh;min-height:100dvh;padding:0;display:block;overflow:hidden}
.home-page .story-layout{display:block}.home-page .scene-wrap{position:absolute;inset:0;width:100%;height:100%;min-height:0;border-radius:0;box-shadow:none}
.home-page .scene-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#10251c80,transparent 55%),linear-gradient(0deg,#10251ce8,transparent 48%)}
.home-page .story-top{position:absolute;top:125px;left:4%;right:4%;z-index:3;align-items:flex-start;pointer-events:none}
.home-page .story-top a,.home-page .motion-tools{pointer-events:auto}
.home-page .story-top h1{font-size:clamp(38px,4.8vw,70px);color:#fffdf1;text-shadow:0 2px 25px #13261c55;margin:0 0 14px;max-width:640px}
.home-page .story-top .eyebrow{color:#fff6da;font-size:9px;margin-bottom:12px}
.hero-service-link{font-size:12px;color:#fff9e7;border-bottom:1px solid #e7e7c9;padding-bottom:5px}
.home-page .story-copy{position:absolute;z-index:3;bottom:30px;left:4%;width:360px;max-width:92%;padding:0}
.home-page .story-copy h3{font-size:30px;margin-bottom:10px;color:#fff9e7}
.home-page .story-copy .eyebrow{margin-bottom:10px;font-size:9px}
.home-page .story-copy>p:not(.eyebrow){font-size:12px;line-height:1.5;margin-bottom:14px;color:#e0e9da}
.home-page .progress-track{margin:14px 0}.home-page .stage-controls{margin-bottom:8px}
.home-page .scene-stamp{left:auto;right:4%;bottom:30px;background:transparent;color:#e2e9d9;z-index:3;padding:0}
.home-page .motion-tools span{color:#fff9e7;background:#173729d9;padding:5px 8px;border-radius:3px}.home-page .motion-tools button{background:#183e31de;min-height:44px}
@media(max-width:650px){.home-page>.concept{font-size:8px;line-height:16px;padding:3px 4px}.home-page>header{top:22px;padding:10px 5%}.home-page .story-top{top:105px;left:5%;right:5%;display:block}.home-page .story-top h1{font-size:36px;max-width:320px}.home-page .story-top .eyebrow{font-size:7px}.home-page .motion-tools{position:absolute;top:145px;right:0}.home-page .motion-tools span{display:none}.home-page .story-copy{bottom:32px;left:5%;width:90%}.home-page .story-copy h3{font-size:24px}.home-page .story-copy>p:not(.eyebrow){font-size:11px;max-width:340px}.home-page .stage-controls button{width:44px;height:44px}.home-page .scene-stamp{bottom:9px;right:5%;font-size:7px}.home-page nav.open{background:var(--cream)}.home-page .story-copy .eyebrow{margin-bottom:6px}.home-page .scroll-note{font-size:7px}}
/* Five-stage removal story: compact controls leave the garden in view. */
.home-page .story{height:450vh}.home-page .stage-controls{display:flex;gap:8px}.home-page .stage-controls button{flex:0 0 44px}
/* Compact overlays leave the scene, not a text panel, as the first screen. */
.home-page .story-top h1{font-size:clamp(28px,3vw,44px);max-width:400px;margin-bottom:10px}
.home-page .story-copy{width:320px;bottom:22px}
.home-page .story-copy>p:not(.eyebrow){font-size:11px;margin-bottom:8px}
.home-page .story-copy h3{font-size:24px;margin-bottom:6px}
.home-page .scene-wrap:after{background:linear-gradient(90deg,#10251c66,transparent 45%),linear-gradient(0deg,#10251cd9,transparent 30%)}
@media(max-width:650px){.home-page .story-top{top:100px}.home-page .story-top h1{font-size:27px;line-height:1.08;max-width:280px}.home-page .story-top .eyebrow{margin-bottom:7px}.home-page .hero-service-link{font-size:10px}.home-page .motion-tools{top:95px}.home-page .story-copy{bottom:29px;width:90%}.home-page .story-copy h3{font-size:20px}.home-page .story-copy>p:not(.eyebrow){font-size:10px;line-height:1.4;max-width:310px}.home-page .progress-track{margin:8px 0}.home-page .stage-controls{margin-bottom:3px}.home-page .scene-wrap:after{background:linear-gradient(180deg,#10251c60,transparent 30%),linear-gradient(0deg,#10251ced,transparent 28%)}}
@media(prefers-reduced-motion:reduce){.home-page .story{height:100svh}.home-page .story-sticky{position:relative;height:100svh;min-height:100svh}}
/* Compact service context: short, local backing rather than a scene-wide veil. */
.service-intro{position:absolute;z-index:4;left:4%;top:108px;max-width:340px;padding:10px 14px;background:#fffdf5;border-radius:8px;color:#183e31;line-height:1.4}.service-intro strong{display:block;font-size:20px}.service-intro span{display:block;font-size:11px;margin:4px 0}.service-intro a{display:inline-block;text-decoration:underline;font-weight:700;font-size:13px;padding:6px 0}.service-intro[hidden]{display:none!important}
@media(max-width:650px){.service-intro{top:auto;bottom:86px;left:50%;transform:translateX(-50%);width:270px;max-width:90%;padding:8px 12px;text-align:center}.service-intro strong{font-size:17px}.service-intro span{font-size:10px}.service-intro a{padding:5px 0}.inner-page .footer-top{padding-top:24px;padding-bottom:24px}.inner-page .footer-top h2{font-size:28px}}
/* Compact in-scene call button yields to the larger end card. */
.scene-call{position:absolute;z-index:4;left:50%;bottom:max(22px,env(safe-area-inset-bottom));transform:translateX(-50%);padding:11px 28px;min-height:48px;line-height:24px;border:1px solid #183e31;border-radius:30px;background:#fbd35a;color:#172b20;font-size:15px;font-weight:800;box-shadow:0 3px 12px #183e3129;white-space:nowrap}.scene-call:hover{background:#ffe99b}.scene-call[hidden],#motion-toggle[hidden]{display:none!important}
/* Sunset end card: absent from the work sequence and keyboard order until complete. */
.finale-card{position:absolute;z-index:4;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(420px,90%);padding:24px;text-align:center;border:1px solid #fffdf5;border-radius:12px;background:rgba(255,253,245,.94);box-shadow:0 8px 30px #183e3126;color:#183e31}
.finale-card[hidden]{display:none}.finale-card h2{font-size:30px;letter-spacing:-.04em;margin:0 0 20px;line-height:1.15}.finale-card h2 span{display:block;font-family:Georgia,serif;font-style:italic;font-size:23px;font-weight:400;margin-top:5px}.finale-call{display:block;background:#fbd35a;border:1px solid #183e31;border-radius:8px;color:#172b20;font-weight:800;font-size:16px;line-height:24px;padding:13px 10px;min-height:48px}.finale-call:hover{background:#ffe99b}
@media(max-width:650px){.finale-card{padding:19px 16px;bottom:max(20px,env(safe-area-inset-bottom))}.finale-card h2{font-size:26px;margin-bottom:16px}.finale-card h2 span{font-size:21px}}
/* A non-interactive invitation, isolated from the scene choreography. */
.scroll-start-cue{position:absolute;z-index:4;left:50%;bottom:90px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 17px;border:1px solid #22384b30;border-radius:30px;background:#fffdf5f2;color:#20364a;box-shadow:0 3px 16px #14273718;font-size:13px;font-weight:700;line-height:1.3;white-space:nowrap;pointer-events:none;user-select:none;opacity:1;visibility:visible;transition:opacity .24s ease,visibility .24s ease}
.scroll-start-cue *{pointer-events:none}.scroll-start-cue svg{width:25px;height:36px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.scroll-start-cue .cue-touch,.scroll-start-cue .cue-touch-label{display:none}.cue-wheel{animation:cue-scroll 1.8s ease-in-out infinite}.cue-hand{animation:cue-swipe 2s ease-in-out infinite}.scroll-start-cue.is-dismissed{opacity:0;visibility:hidden}.scroll-start-cue.is-dismissed *{animation-play-state:paused}
@keyframes cue-scroll{0%,100%{transform:translateY(0);opacity:.5}45%{transform:translateY(5px);opacity:1}75%{transform:translateY(5px);opacity:0}}
@keyframes cue-swipe{0%,100%{transform:translateY(3px)}55%,75%{transform:translateY(-3px)}}
@media(pointer:coarse){.scroll-start-cue .cue-mouse,.scroll-start-cue .cue-desktop-label{display:none}.scroll-start-cue .cue-touch,.scroll-start-cue .cue-touch-label{display:block}}
@media(max-width:650px){.scroll-start-cue{bottom:222px;padding:8px 15px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.scroll-start-cue,.scroll-start-cue *{animation:none!important;transition:none!important}}
/* Stationary navigation and a dedicated call row on small screens. */
body>.concept,.home-page>.concept{position:fixed;inset:0 0 auto;height:24px;padding:5px 8px;line-height:14px;font-size:10px;z-index:31;white-space:nowrap;letter-spacing:0}
body>header,.home-page>header{position:fixed;inset:24px 0 auto;height:70px;padding:12px 4%;z-index:30;background:#fffdf5;border-bottom:1px solid #d8ddcf;transform:none!important;animation:none!important;transition:none!important;backdrop-filter:blur(8px)}
.home-page>header{background:rgba(255,253,245,.78)}
.inner-page main{padding-top:94px}
.header-call,.home-page .header-call{display:block;background:#fbd35a;color:#172b20;border:1px solid #172b20;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 3px 0 #172b20}
.header-call span{margin-left:8px}.header-call:hover{background:#ffe99b}
.home-page .scene-wrap:after{background:linear-gradient(180deg,#fffdf51c,transparent 24%);pointer-events:none}
.home-page .story-top{top:106px;display:flex;justify-content:flex-end}.home-page .story-top>div:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;white-space:nowrap}.home-page .story-top h1{color:#193b2c;text-shadow:none}
.home-page .motion-tools button{background:#fffdf5;color:#183e31;border-color:#183e31}
@media(min-width:651px) and (max-width:950px){body>header,.home-page>header{gap:12px;padding:12px 3%}nav{gap:12px}.header-call,.home-page .header-call{padding:10px;font-size:12px}.brand span{font-size:11px}.brand svg{width:25px}}
@media(max-width:650px){body>.concept,.home-page>.concept{height:22px;padding:4px 2px;font-size:8px;line-height:14px}body>header,.home-page>header{top:22px;height:112px;padding:10px 5%;display:grid;grid-template-columns:1fr auto;grid-template-rows:34px 44px;gap:9px 8px;align-content:start}.header-call,.home-page .header-call{grid-column:1/-1;text-align:center;padding:8px 12px;font-size:14px;line-height:24px;min-height:44px;box-shadow:none}.home-page .story-top{top:151px}.home-page .story-top h1{font-size:26px;max-width:280px}.home-page .motion-tools{position:static;top:auto;right:auto}.inner-page main{padding-top:134px}header nav.open{max-height:calc(100svh - 150px)}.home-page .scene-wrap:after{background:linear-gradient(180deg,#fffdf51c,transparent 26%)}}


/* Short timeline captions; never intercept the scene controls. */
.animation-caption{position:absolute;z-index:4;bottom:94px;left:50%;transform:translateX(-50%);width:max-content;max-width:min(90%,560px);padding:12px 20px;border-radius:12px;background:rgba(255,253,245,.94);color:#183e31;text-align:center;pointer-events:none;box-shadow:0 4px 24px #183e3120;line-height:1.4}
.animation-caption[hidden]{display:none!important}.animation-caption .caption-label{display:block;font-size:9px;font-weight:700;letter-spacing:.15em;opacity:.7}.animation-caption p{margin:4px 0 0;font-size:18px;font-weight:700;line-height:1.4}
@media(max-width:650px){.animation-caption{bottom:92px;width:90%;padding:10px 14px}.animation-caption p{font-size:15px}.animation-caption.caption-intro{bottom:280px}}
