/* Homepage only: preserve the existing utility and reference surfaces. */
.atlas-home { --atlas-ease:cubic-bezier(.2,.75,.25,1); --body:"Bricolage Grotesque",sans-serif; font-optical-sizing:auto; }
.atlas-home .site-header { background:var(--paper); backdrop-filter:none; }
.atlas-home .header-inner { width:calc(100% - 80px); }
.atlas-home .brand img { width:62px; }
.atlas-home .header-download { border-radius:2px; }
.atlas-hero { --hero-height:clamp(750px,calc(100svh - 72px),1050px); position:relative; height:var(--hero-height); color:var(--paper); background:#173c2e; overflow:clip; isolation:isolate; }
/* The picture and ambient details use one uncropped 3:2 coordinate plane. */
.atlas-landscape { position:absolute; width:min(100%,calc(var(--hero-height)*1.5)); aspect-ratio:3/2; mask-image:linear-gradient(90deg,transparent,#000 24%); right:0; top:50%; translate:0 -50%; z-index:-2; }
.atlas-landscape picture,.atlas-landscape img { display:block; width:100%; height:100%; }
.atlas-landscape img { object-fit:contain; }
.atlas-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#173c2e 0%,#173c2e88 25%,transparent 55%); z-index:-1; pointer-events:none; }
.atlas-hero-copy { padding:clamp(52px,7vh,88px) 0 0 clamp(24px,5.5vw,140px); width:47%; }
.atlas-kicker { display:flex; gap:15px; align-items:center; margin:0 0 24px; font-size:15px; letter-spacing:.02em; }
.atlas-hero h1 { font-family:var(--display); font-size:clamp(110px,12.2vw,176px); line-height:.9; font-weight:650; letter-spacing:-.035em; margin:0 0 30px -.035em; }
.title-arrow { width:24px; height:24px; vertical-align:top; display:inline-block; margin:10px 0 0 12px; color:var(--sun); fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.atlas-store-link { display:inline-block; margin:0 13px 13px 0; line-height:0; }
.atlas-store-link img { display:block; width:auto; height:52px; }
.atlas-store-link:focus-visible { outline:2px solid var(--sun); outline-offset:6px; border-radius:6px; }
.atlas-promise { margin:0; font-weight:500; font-size:clamp(30px,3vw,48px); line-height:1.1; letter-spacing:-.03em; }
.atlas-intro { margin:26px 0; font-size:18px; line-height:1.5; color:#e1e9dd; }
.atlas-hero-bottom { position:absolute; bottom:0; left:5.5%; right:5.5%; min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid #f5f0e64a; }
.atlas-scroll { display:inline-flex; align-items:center; gap:22px; min-height:64px; font-size:17px; text-decoration:none; }
.scroll-arrow { width:28px; height:44px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; color:var(--sun); animation:step-down 2.8s ease-in-out infinite; }
.street-atmosphere { position:absolute; inset:0; pointer-events:none; }
.chimney-wisp { position:absolute; width:1.1%; height:5%; left:47.4%; top:17%; border-radius:50%; background:radial-gradient(ellipse,#ebeadb55,transparent 70%); opacity:0; transform-origin:center bottom; animation:chimney-air 7s ease-out infinite; }
.wisp-two { left:64%; top:5%; animation-delay:-3.5s; }
.window-glow { position:absolute; width:1.3%; height:3%; border-radius:40%; background:radial-gradient(ellipse,#ffd28988,transparent 75%); mix-blend-mode:screen; animation:window-warmth 8s ease-in-out infinite alternate; }
.glow-one { left:43%; top:35%; }.glow-two {left:83%;top:29%;animation-delay:-4s;}
.atlas-home .product-section { padding:100px 0; background:var(--paper); }
.atlas-home .product-inner { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:7vw; align-items:center; }
.atlas-home .product-copy h2 { font-size:clamp(42px,5.3vw,76px); line-height:1.04; letter-spacing:-.045em; margin-bottom:24px; }
.atlas-home .product-intro { max-width:410px; font-size:20px; line-height:1.5; }
.atlas-home .plain-steps { display:block; margin-top:36px; }
.atlas-home .plain-steps li { grid-template-columns:36px minmax(0,1fr); border-top:1px solid var(--line); padding:18px 0; gap:20px; }
.atlas-home .plain-steps li>span { background:transparent; color:var(--forest); border:1px solid var(--line); }
.atlas-home .plain-steps p { font-size:17px; line-height:1.5; }
.atlas-home .product-proof { position:relative; top:auto; display:flex; flex-direction:column; align-items:center; margin:0; padding:20px 0; background:none; border:0; }
.atlas-home .product-phone { width:300px; max-width:90%; padding:0; background:#071710; border:7px solid #11291f; border-radius:42px; overflow:hidden; box-shadow:0 18px 34px -24px #07171080; }
.atlas-home .product-phone img { display:block; width:100%; height:auto; border:0; border-radius:0; object-fit:contain; background:white; }
.atlas-home .product-proof figcaption { align-self:center; margin-top:22px; font-size:13px; line-height:1.5; text-align:center; }
.atlas-home .social-radius-story { --story-bg:#173c2e; --story-ink:#f5f0e6; --story-signal:#f5ca4f; }
.atlas-home .social-radius-story[data-active-chapter="02"] { --story-bg:#e4bc99; --story-ink:#35251c; --story-signal:#844224; }
.atlas-home .social-radius-story[data-active-chapter="03"] { --story-bg:#d9e4c7; --story-ink:#21382b; --story-signal:#3b6545; }
.atlas-home .story-layout { grid-template-columns:minmax(0,58fr) minmax(0,42fr); }
.atlas-home .story-stage { top:var(--header-h); height:calc(100svh - var(--header-h)); min-height:600px; background:var(--story-bg); transition:background-color .65s ease; }
.atlas-home .story-scene { display:flex; align-items:center; transform:none; transition:opacity .6s ease; }
.atlas-home .story-scene img { width:100%; height:auto; max-height:calc(100% - 180px); object-fit:contain; object-position:center; }
.atlas-home .story-scene::after { display:none; }
.atlas-home .story-content { background:var(--story-bg); color:var(--story-ink); }
.chapter-progress { position:sticky; top:var(--header-h); z-index:8; display:flex; margin:0; padding:20px 32px; gap:24px; list-style:none; background:var(--story-bg); color:var(--story-ink); transition:background-color .65s ease,color .65s ease; }
.chapter-progress li { flex:1; min-width:0; padding:10px 0; border-top:2px solid currentColor; opacity:.75; font-size:14px; font-weight:500; white-space:nowrap; transition:opacity .35s; }
.chapter-progress li span { margin-right:8px; font-size:12px; }
.chapter-progress li.is-active { opacity:1; border-top-width:4px; padding-top:8px; }
.atlas-home .story-chapter { min-height:90svh; padding:0; border:0; }
.atlas-home .story-chapter-copy { max-width:620px; padding:64px 48px; }
.atlas-home .story-chapter h2 { font-size:clamp(40px,4.3vw,64px); line-height:1.06; letter-spacing:-.04em; }
.atlas-home .story-chapter p:not(.eyebrow) { font-size:20px; line-height:1.55; color:inherit; }
.atlas-home .story-chapter .eyebrow { color:inherit; opacity:.8; }
.atlas-home [data-chapter="01"] { background:#173c2e; color:#f5f0e6; }
.atlas-home [data-chapter="02"] { background:#e4bc99; color:#35251c; }
.atlas-home [data-chapter="03"] { background:#d9e4c7; color:#21382b; }
.story-example { margin:32px 0 0; padding:18px 0 0; border-top:1px solid currentColor; font-size:22px; line-height:1.35; font-weight:500; }
.atlas-home .radius-signature { width:80px; height:80px; left:32px; right:auto; bottom:22px; color:var(--story-ink); }
.atlas-home .radius-signature p { left:calc(100% + 20px); right:auto; bottom:16px; margin:0; width:180px; text-align:left; }
.atlas-home .radius-signature strong { font-size:28px; }
.atlas-home .radius-ring { inset:0; border:1px solid currentColor; animation:radius-spread 4.8s ease-out infinite; }
.atlas-home .radius-ring-two { animation-delay:-2.4s; }
.atlas-home .radius-core { width:10px; height:10px; background:var(--story-signal); box-shadow:0 0 0 6px #ffffff15; }
.atlas-home .trust-section { grid-template-columns:minmax(0,1fr) minmax(0,1fr); background:#e9e5d9; color:var(--ink); align-items:center; }
.atlas-home .trust-media { min-height:0; height:auto; aspect-ratio:auto; width:100%; }
.atlas-home .trust-media img { display:block; width:100%; height:auto; object-fit:contain; }
.atlas-home .trust-content { padding:70px 7vw 70px 5vw; }
.atlas-home .trust-content h2 { font-size:clamp(40px,4.1vw,60px); line-height:1.06; letter-spacing:-.04em; }
.atlas-home .trust-intro,.atlas-home .trust-evidence dd { color:#46574a; font-size:18px; }
.atlas-home .trust-content .eyebrow,.atlas-home .trust-evidence dt,.atlas-home .trust-content .inline-links a { color:var(--forest); }
.atlas-home .trust-evidence,.atlas-home .trust-evidence div { border-color:var(--line); }
.atlas-home .final-campaign { min-height:640px; }
.atlas-home .final-campaign h2 { font-size:clamp(56px,6vw,86px); line-height:1.02; overflow-wrap:anywhere; hyphens:auto; }
.atlas-home .site-footer { background:var(--paper); color:var(--forest); }
@keyframes step-down { 0%,100% {transform:translateY(-3px);} 50% {transform:translateY(5px);} }
@keyframes chimney-air { 0% {transform:translate(0,8px) scale(.6);opacity:0;} 25% {opacity:.5;} 100% {transform:translate(10px,-28px) scale(2);opacity:0;} }
@keyframes window-warmth { from {opacity:.25;} to {opacity:.85;} }
@keyframes radius-spread { 0% {transform:scale(.2);opacity:0;} 15% {opacity:.7;} 100% {transform:scale(1);opacity:0;} }
@media(min-width:761px) and (max-width:1100px) {
 .atlas-hero-copy {width:60%;}.atlas-hero::after {background:linear-gradient(90deg,#173c2ef0,#173c2e99 40%,transparent 85%);}
 .atlas-hero h1 {font-size:120px;}.atlas-promise {font-size:36px;}
}
@media(max-width:1040px) {
 .atlas-home .product-inner {grid-template-columns:minmax(0,1fr);gap:40px;}
 .atlas-home .product-copy,.atlas-home .product-proof {width:100%;max-width:740px;margin-inline:auto;}
 .atlas-home .story-layout {display:block;}.atlas-home .story-stage {display:none;}
 .atlas-home .story-chapter {display:block;min-height:0;}
 .atlas-home .chapter-mobile-media {display:block;height:auto;aspect-ratio:auto;}
 .atlas-home .chapter-mobile-media img {display:block;width:100%;height:auto;object-fit:contain;}
 .atlas-home .story-chapter-copy {padding:48px 40px 64px;max-width:760px;width:100%;}
 .atlas-home .story-chapter h2 {max-width:640px;font-size:52px;}
 .atlas-home .trust-section {display:flex;flex-direction:column;}
 .atlas-home .trust-content {padding:54px 40px;align-self:stretch;}
 .chapter-progress {padding-inline:40px;}
}
@media(max-width:760px) {
 .atlas-home .header-inner {width:calc(100% - 36px);}
 .atlas-hero {display:flex;flex-direction:column;height:auto;min-height:0;}
 .atlas-hero-copy {order:-1;width:100%;padding:32px 24px 12px;}
 .atlas-hero h1 {font-size:100px;margin-bottom:22px;overflow-wrap:anywhere;}
 .title-arrow {width:20px;height:20px;}.atlas-kicker {font-size:14px;margin-bottom:22px;}
 .atlas-promise {font-size:31px;}.atlas-intro {font-size:17px;margin:20px 0;}
 .atlas-landscape {position:relative;inset:auto;translate:none;width:100%;aspect-ratio:3/2;mask-image:none;z-index:0;}
 .atlas-hero::after {display:none;}
 .atlas-hero-bottom {position:relative;inset:auto;margin:0 24px;flex-wrap:wrap;gap:0;padding:8px 0;}
 .atlas-scroll {font-size:15px;gap:16px;}.scroll-arrow {width:24px;height:38px;}
 .atlas-home .product-section {padding:60px 0;}
 .atlas-home .product-copy h2 {font-size:46px;}.atlas-home .product-intro {font-size:19px;}
 .atlas-home .plain-steps {margin-top:28px;}.atlas-home .plain-steps p {font-size:17px;}
 .atlas-home .product-phone {width:280px;}.atlas-home .product-proof {padding:0;}
 .chapter-progress {padding:16px 24px;gap:16px;}.chapter-progress li {font-size:13px;}.chapter-progress li span {margin-right:4px;}
 .atlas-home .story-chapter-copy {padding:36px 24px 54px;}
 .atlas-home .story-chapter h2 {font-size:42px;}.atlas-home .story-chapter p:not(.eyebrow) {font-size:18px;}
 .story-example {font-size:20px;}
 .atlas-home .trust-content {padding:44px 24px;}.atlas-home .trust-content h2 {font-size:42px;}
 .atlas-home .final-campaign {min-height:620px;}.atlas-home .final-campaign h2 {font-size:56px;}
}
/* Decoration never competes with OS preferences or hidden tabs. */
[data-ambient]:not(.ambient-visible) *,[data-ambient]:not(.ambient-visible) *::after,
.atlas-home[data-page-hidden] *, .atlas-home[data-page-hidden] *::after,
.atlas-home[data-motion-paused] *, .atlas-home[data-motion-paused] *::before, .atlas-home[data-motion-paused] *::after {animation-play-state:paused!important;}
.atlas-home[data-motion-paused] * {transition:none!important;scroll-behavior:auto;}
@media(prefers-reduced-motion:reduce) {
 .atlas-home *, .atlas-home *::before,.atlas-home *::after {scroll-behavior:auto!important;animation:none!important;transition:none!important;}
}

html:not(.js) .atlas-home .chapter-progress {display:none;}
