/* Astra: interaction, accessibility and compact-screen refinements. */
[hidden]{display:none!important} [inert]{pointer-events:none}
:focus-visible{outline:3px solid #087e89;outline-offset:4px}
html{scroll-padding-top:100px}.wrap>*{min-width:0}
.panel:not(.is-open){visibility:hidden}.panel.is-open{visibility:visible}
.panel__body{overscroll-behavior:contain}.panel__foot{padding-bottom:max(20px,env(safe-area-inset-bottom))}
.qty button,.x,.burger,.cart-btn{min-width:44px;min-height:44px}.cart-line__rm{min-height:36px}
.sum-line>*{min-width:0;overflow-wrap:anywhere}.sum-line b{text-align:right}
.cart-line{grid-template-columns:52px minmax(0,1fr) auto;gap:10px}.cart-line img{width:52px}.cart-line__info strong{font-size:13px}.cart-line__right{font-size:13px}
.toast{max-width:calc(100% - 32px);width:max-content;text-align:center;border-radius:12px}
.co-form fieldset{min-width:0}.co-form input{min-height:48px}.co-side{min-width:0}
.checkout h1{overflow-wrap:anywhere}.success__card{min-width:0;max-width:100%}.success__card [data-order-number]{white-space:normal;overflow-wrap:anywhere}
.nav:not(.is-open){visibility:visible}.reading-nav{padding:24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:3}.reading-wrap{max-width:760px;margin:auto;padding:48px 24px}.reading h1{font-size:clamp(30px,5vw,52px);margin-bottom:32px}.reading p{white-space:pre-line;line-height:1.8;margin:20px 0}.reading .btn{margin-top:24px}
.compare tbody td{vertical-align:top}
@media(max-width:1100px){.header__row{gap:12px}.nav{gap:12px;font-size:12px}.logo img{width:116px}}
@media(max-width:900px){.nav:not(.is-open){visibility:hidden}.nav.is-open{visibility:visible}.nav{height:calc(100dvh - 66px);font-size:20px}.nav a{min-height:48px}.burger{display:flex}.header__row{height:66px}.hero__grid{gap:32px}}
@media(max-width:600px){.panel__head,.panel__body,.panel__foot{padding-inline:16px}.sum-line{font-size:13px;gap:10px}.sum-line--total b{font-size:18px}.co-form fieldset,.co-side{padding:20px}.calc__match{flex-direction:column;align-items:flex-start}.calc__match>div{min-width:0}.calc__match img{height:80px}.btn{white-space:normal;min-height:44px}.hero__cta .btn{flex:1}.success__card{padding:20px}.success__card h1{font-size:26px}.table-wrap{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
@media(max-width:900px){.nav[inert]{display:none}}

/* Storm to Calm / Astra: an illustrated night, told in four accessible chapters. */
.story{height:340vh}.stage{background:#101e29}.sky--storm{background:radial-gradient(ellipse at 78% 38%,#304951 0,transparent 42%),linear-gradient(120deg,#0e1e2a,#192c39)}.sky--dusk{background:radial-gradient(ellipse at 77% 42%,#b48761 0,transparent 45%),linear-gradient(120deg,#172a31,#47505a);opacity:clamp(0,(var(--p) - .35) / .3,1)}.sky--dawn{background:linear-gradient(110deg,#f3e5d2,#d5b696);opacity:clamp(0,(var(--p) - .68) / .25,1)}.flash{display:none}.clouds i{filter:blur(40px);opacity:.12}.rain{left:57%;right:9%;top:18%;bottom:27%;border-radius:200px 200px 0 0;inset-block-start:18%;background-image:repeating-linear-gradient(108deg,transparent 0 27px,#c6dbe233 28px 29px,transparent 30px 65px);background-size:260px 200%;animation-duration:2.5s;mask-image:linear-gradient(180deg,#000,transparent)}.window{right:9%;top:17%;height:57%;width:34%;border:1px solid #c5d5d733;border-radius:260px 260px 4px 4px;box-shadow:inset 0 0 0 14px #dbe5df06,0 0 0 12px #ffffff03;background:linear-gradient(140deg,#8da8a111,#ffffff03);aspect-ratio:auto}.window i{background:#c5d5d722}.window i:first-child{width:1px;margin:0}.window i:last-child{height:1px;margin:0;top:64%}.window i:nth-child(3){display:none}.story-orbit{position:absolute;right:15%;top:26%;width:18%;aspect-ratio:1;border-radius:50%;border:1px solid #d0c09f25;box-shadow:0 0 70px #f9d59d0a,inset 0 0 80px #f9d59d0a}.dog{right:9%;bottom:19%;width:min(34vw,480px);filter:drop-shadow(0 20px 15px #0005)}.dog--anxious{animation:none}.dog svg g[fill="#8a6a4a"]{fill:#b18a64}.dog--calm .zz{fill:#6f573d}.story-rug{position:absolute;right:7%;bottom:15%;width:39%;height:10%;border-radius:50%;background:radial-gradient(ellipse,#d6b79730,#ad967f20 50%,transparent 70%);border-bottom:1px solid #d4b18b20}.floor{height:24%;background:linear-gradient(0deg,#071723aa,transparent)}.lamp{left:77%;bottom:10%;width:50%;height:60%}.caps{padding-inline:max(32px,calc((100% - 1180px)/2));align-items:center;padding-bottom:40px}.cap{max-width:560px}.cap h1{font-size:clamp(44px,5.8vw,82px);line-height:1.07;letter-spacing:-.05em;text-shadow:none}.cap h1 em{color:#ebc697;font-size:.82em}.cap h2{font-size:clamp(36px,4.4vw,62px);letter-spacing:-.045em;line-height:1.12}.cap .eyebrow{font-size:10px;letter-spacing:.2em;color:#dfba91;margin-bottom:28px}.cap p{font-size:15px;line-height:1.8;max-width:430px;color:#d4dfdf}.cap .story-intro{margin-top:24px;font-size:14px;line-height:1.9}.cap .hint{font-size:8px;letter-spacing:.12em;margin-top:28px;animation:none;color:#bdcdce}.cap__cta{margin-top:25px}.cap__cta .btn{padding:13px 25px;font-size:12px}.cap__cta .btn--light{border-color:#d4ba9660;background:#d8b78310;color:#f4e6d0}.cap:not(.is-on){visibility:hidden}.story.is-calm .cap{max-width:540px}.story-chapters{position:absolute;bottom:28px;left:max(32px,calc((100% - 1180px)/2));width:490px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.story-chapters button{display:flex;align-items:center;gap:10px;padding:14px 0;background:none;border:0;border-top:1px solid #e1d4bd30;color:#c4d1d2;font-size:11px;text-align:left;min-height:44px}.story-chapters button span{font-size:9px;color:#e4c097}.story-chapters button[aria-current]{border-color:#e8c298;color:#fff}.story-skip{position:absolute;right:max(32px,calc((100% - 1180px)/2));bottom:45px;font-size:10px;color:#d4dbd4;text-underline-offset:6px}.story.is-calm .story-chapters button,.story.is-calm .story-skip{color:#635247;border-color:#77635040}.story.is-calm .story-chapters button[aria-current]{color:#743b25;border-color:#743b25}.story.is-calm .story-chapters button span{color:#743b25}.pack{right:35%;bottom:18%;width:130px;border-radius:80px 80px 10px 10px;padding:8px;box-shadow:0 20px 30px #0003}.story .btn:focus-visible,.story-chapters button:focus-visible{outline-color:#f0d8af}.header{background:#0e1f2933;backdrop-filter:blur(10px)}.card__media img{height:270px;object-fit:contain}.card{border-radius:18px}.card__name{font-size:23px}.story-static .fine{font-size:11px;max-width:900px;margin:auto}.progress{height:2px}
/* A complete, static reading experience when motion is reduced. */
body.rm .stage{padding:110px max(24px,calc((100% - 1180px)/2)) 36px;background:linear-gradient(120deg,#f7ead7,#ead7be);display:flex;flex-direction:column}body.rm .caps{padding:0;display:grid;grid-template-columns:1fr 1fr;gap:30px;order:0}body.rm .cap{visibility:visible;max-width:none;padding:24px 0;border-bottom:1px solid #a1856650}body.rm .cap h1{font-size:54px}body.rm .cap h2{font-size:36px}body.rm .cap:first-child{grid-column:1/-1;max-width:600px}body.rm .cap p{font-size:14px}body.rm .cap h1 em,body.rm .cap .eyebrow{color:#8a482d}body.rm .dog{display:none}body.rm .story-rug,body.rm .story-orbit,body.rm .story-chapters,body.rm .story-skip{display:none}body.rm .cap__cta .btn--light{color:#743b25;border-color:#743b25;background:transparent}body.rm .cap--final h2 em{color:#8a482d}
@media(max-width:1000px){.cap{max-width:48%}.cap h1{font-size:62px}.caps{padding-inline:32px}.story-chapters{left:32px;width:440px}.story-skip{right:32px}.pack{right:35%;left:auto;width:100px}}
@media(max-width:900px){.nav{top:66px}.header__row{height:66px}.cap{max-width:48%}.cap h1{font-size:52px}.cap h2{font-size:40px}.story-skip{bottom:98px;right:28px}.story-chapters{width:calc(100% - 64px)}.pack{width:90px}.logo{height:36px}.logo img{width:116px}}
@media(max-width:600px){.story{height:300vh}.stage{height:100svh;min-height:720px}.caps{padding:105px 24px 0;align-items:start}.cap,.story.is-calm .cap{max-width:100%}.cap h1{font-size:49px;line-height:1.08}.cap h1 em{font-size:.88em}.cap h2{font-size:38px}.cap .eyebrow{font-size:8px;margin-bottom:22px}.cap .story-intro{font-size:12px;margin-top:20px}.cap p{font-size:13px;line-height:1.7;max-width:320px}.cap .hint{font-size:7px;margin-top:20px}.cap__cta{margin-top:20px}.cap__cta .btn{font-size:11px;padding:12px 18px}.window{display:block;top:auto;bottom:14%;height:30%;width:48%;right:9%;border-width:1px}.rain{left:43%;right:9%;top:55%;bottom:14%;border-radius:100px 100px 0 0}.dog{width:57%;right:7%;bottom:13%}.story-rug{right:4%;bottom:11%;width:68%;height:7%}.story-orbit{width:28%;right:18%;top:auto;bottom:27%}.pack{width:76px;left:9%;right:auto;bottom:16%}.story-chapters{bottom:12px;left:24px;width:calc(100% - 48px);gap:12px}.story-chapters button{font-size:9px;gap:5px;padding-top:12px}.story-chapters button span{font-size:8px}.story-skip{bottom:72px;left:24px;right:auto;font-size:8px}.floor{height:25%}.lamp{bottom:10%;height:35%;width:70%}.cap--final h2{font-size:42px}.cap--final .cap__cta{gap:8px}.cap--final .cap__cta .btn{padding:12px 14px;font-size:10px}body.rm .stage{padding:90px 24px 24px;min-height:0}body.rm .caps{grid-template-columns:1fr;gap:8px}body.rm .cap:first-child{grid-column:auto}body.rm .cap h1{font-size:44px}body.rm .cap h2{font-size:32px}.card__actions{flex-direction:row}.card__actions .btn{font-size:12px}}
.stage::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0f202a 0%,#0f202ae8 28%,transparent 65%);z-index:1;pointer-events:none}.caps{z-index:2}.story-chapters,.story-skip{z-index:3}.story.is-calm .stage::before{background:linear-gradient(90deg,#f3e5d2 0%,#f3e5d2dd 30%,transparent 68%)}body.rm .stage::before{display:none}@media(max-width:600px){.stage::before{background:linear-gradient(180deg,#10232b 0%,#10232be8 45%,transparent 67%)}.story.is-calm .stage::before{background:linear-gradient(180deg,#f3e5d2 0%,#f3e5d2ee 45%,transparent 65%)}}
