:root{--ink:#30251f;--paper:#f5f0e8}html{scroll-padding-top:150px;scrollbar-color:#8d7662 #eee5d8}::selection{background:#604934;color:#fff8ee}body{caret-color:#604934}button,a,input,summary{touch-action:manipulation}button:disabled{opacity:.45;cursor:not-allowed}.skip-link{position:fixed;z-index:100;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:12px 20px}.skip-link:focus{top:12px}header{padding-top:max(16px,env(safe-area-inset-top))}.plain,.bag-button,.return-link,.crumbs a,.close,.remove,summary{min-height:44px;display:inline-flex;align-items:center}.chapters a{min-height:44px;display:flex;align-items:center;font-size:12px;opacity:1}.chapter-dots a{width:44px;height:44px;border:0;position:relative;border-radius:0}.chapter-dots a:before{content:'';position:absolute;width:7px;height:7px;border:1px solid var(--ink);border-radius:50%;inset:18px}.chapter-dots a[aria-current=true]{background:none}.chapter-dots a[aria-current=true]:before{background:var(--ink)}.copy h1,.copy h2{letter-spacing:-.035em;font-size:clamp(62px,6vw,96px);text-wrap:balance}.intro{font-size:16px;line-height:1.6;max-width:290px}.routine-link{font-size:14px;min-height:44px;align-items:center}.routine-top{font-size:12px;letter-spacing:.04em}.routine-top span:last-child{opacity:1}.product strong{font-size:15px;line-height:1.35}.product small{font-size:10px;opacity:1;letter-spacing:.04em}.product .price{font-size:14px;opacity:1;font-variant-numeric:tabular-nums}.product{min-height:122px}.bottom-line{font-size:10px;letter-spacing:0}.chapter-label{display:none}.description,details p,dialog p{font-size:16px;line-height:1.7}.demo-note,.image-caption,footer small{font-size:12px;color:#645649;opacity:1}.price-row{font-variant-numeric:tabular-nums}.size,.specs dd{font-size:14px}.specs dt{font-size:12px;opacity:1}.quantity button{width:44px}.quantity{flex-basis:140px}.quantity input{font-size:16px}.primary{font-size:14px}.related-card p,.related-card .arrow{font-size:14px}.related-heading a,.return-link,.crumbs{font-size:13px}.related .eyebrow{font-size:11px}.bag-item h3{font-size:15px}.bag-item p,.remove{font-size:13px}summary{width:100%;font-size:16px;justify-content:space-between}dialog{padding-bottom:max(30px,env(safe-area-inset-bottom))}.product-layout{max-width:1560px;margin-inline:auto;padding-inline:5vw}.related-grid{max-width:1400px}.motto,.edition{font-size:11px}.pack,.large-pack,.related-pack,.bag-pack{background-image:url('assets/products.webp')}
@media(min-width:1101px) and (min-height:741px){.copy{top:24%;max-width:340px}.routine{bottom:44px}.intro{max-width:260px}.products{gap:16px}.product{padding-right:14px}.pack{width:74px;height:86px}.stage{min-height:0}.journey{height:400svh}.copy h1,.copy h2{font-size:clamp(60px,5.8vw,92px)}.product .plus{display:none}}
@media(max-width:1100px),(max-height:740px){
 .journey{height:auto!important}.stage{position:static;height:auto;min-height:0;overflow:visible}.waypoint{display:none}.scene{position:relative;inset:auto;opacity:1!important;pointer-events:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:430px 6vw 35px;background:#eee5d8;overflow:hidden}.portrait{height:580px;object-fit:cover;object-position:62% 30%;mask-image:linear-gradient(#000 65%,transparent)}.veil{background:linear-gradient(0deg,#eee5d8 5%,transparent 65%);pointer-events:none}.copy{position:relative;left:auto;top:auto;right:auto;max-width:600px;z-index:1}.copy h1,.copy h2{font-size:clamp(48px,7vw,76px);margin-bottom:16px}.intro{max-width:420px;font-size:16px}.routine{position:relative;left:auto;right:auto;bottom:auto;margin-top:26px;width:100%}.routine-top{gap:14px;align-items:flex-start}.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product{padding:14px;display:flex;flex-direction:column;align-items:flex-start;min-height:205px;gap:8px}.pack{width:100px;height:90px;align-self:center}.product-text{width:100%}.product strong{font-size:15px}.product small{font-size:10px}.plus{display:none}.bottom-line{position:relative;bottom:auto;left:auto;right:auto;gap:15px;flex-wrap:wrap;margin-top:22px;font-size:11px;z-index:1}.chapter-dots{display:none}.chapters{top:77px;left:6vw;right:6vw;justify-content:space-around;gap:8px;padding:0 10px;background:#f5f0e8f5;border-bottom:1px solid var(--line);backdrop-filter:none}.chapters a{font-size:12px;padding:8px 0;letter-spacing:0}.header-right>span,.edition{display:none}.header-right{font-size:12px}.plain{font-size:12px}.brand{font-size:27px}.scene:first-child{padding-top:460px}.product-layout{display:block;padding-inline:6vw}.gallery{position:static}.product-visual{height:420px}.large-pack{width:300px;max-width:80%}.info{padding-top:28px}.related-grid{grid-template-columns:1fr 1fr}.related-card{grid-template-columns:90px 1fr}.related-pack{width:85px;height:90px}.related-card h3{font-size:26px}.crumbs{padding-top:12px;padding-bottom:12px}.info h1{font-size:clamp(44px,7vw,64px)}
}
@media(max-width:600px){.products{grid-template-columns:1fr}.product{flex-direction:row;align-items:center;min-height:100px;padding:12px 16px;gap:18px}.pack{width:70px;height:75px}.product small{font-size:11px}.product strong{font-size:16px}.product .price{font-size:14px}.routine-top span:last-child{display:none}.scene,.scene:first-child{padding-top:380px}.portrait{height:470px}.copy h1,.copy h2{font-size:54px}.copy{max-width:100%}.intro{max-width:100%;font-size:16px}.bottom-line span:last-child{display:none}.related-grid{grid-template-columns:1fr}.motto{display:none}.purchase{flex-wrap:wrap}.purchase .primary{min-width:180px}.product-layout{margin-bottom:40px}.related-heading{display:block}.related-heading a{margin-top:15px;display:inline-block}.product-visual{height:340px}.headline{font-size:23px}.image-caption{font-size:12px}.crumbs{gap:8px}.specs{gap:16px}footer{gap:18px}}
@media(orientation:landscape) and (max-height:600px){.scene,.scene:first-child{padding:170px 5vw 30px;min-height:800px}.portrait{height:540px;width:75%;right:0;object-position:60% center;mask-image:linear-gradient(90deg,transparent,#000 30%),linear-gradient(#000 70%,transparent)}.copy{max-width:45%}.copy h1,.copy h2{font-size:52px}.intro{font-size:16px}.routine{margin-top:36px}.products{grid-template-columns:repeat(3,minmax(0,1fr))}.product{min-height:145px}.product-visual{height:300px}.gallery{max-width:500px;margin:auto}.chapters{top:69px}.scene .veil{background:linear-gradient(90deg,#eee5d8 5%,#eee5d860 50%,transparent),linear-gradient(0deg,#eee5d8,transparent 70%)}header{padding-block:12px}.related-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Final review: anchor portraits to their section, not the flex static position. */
.portrait{top:0;left:0}dialog .tag{font-size:11px;letter-spacing:.08em}
@media(orientation:landscape) and (max-height:600px){.portrait{left:auto;right:0}}

/* Pointer return keeps reading position without a persistent keyboard ring. */
html[data-input-mode="pointer"] .product:focus-visible{outline:none}
@media(hover:hover) and (pointer:fine){
 .product:hover,html[data-input-mode="pointer"] .product:hover{outline:2px solid #74523b;outline-offset:5px}
}
