
:root{color-scheme:dark;--page:#090909;--page-text:#f5f3ef;--card:#141312;--card-line:rgba(255,255,255,.12);--page-mute:#a6a19b;--orange:#cc5500;--ember:#ff9a51}
.segment-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.segment-card{display:flex;flex-direction:column;text-decoration:none;background:#171411;border:1px solid #ffffff16;border-radius:20px;overflow:hidden;transition:border-color .25s,transform .25s}
.segment-card:hover{border-color:#ff9a5170;transform:translateY(-4px)}
.segment-art{height:300px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 80%,#6a3826,#1c1410 75%);display:flex;justify-content:center;gap:1rem;align-items:flex-start;padding:2rem 2rem 0}
.segment-art img{width:42%;height:auto;box-shadow:0 10px 30px #0008;border-radius:7px;transform:rotate(-9deg)}
.segment-art img+img{transform:translateY(35px) rotate(9deg)}
.reel-segment-art{padding:0;background:#241a14}
.reel-segment-art img{width:100%;height:100%;object-fit:cover;object-position:50% 33%;transform:none;border-radius:0;opacity:.75}
.segment-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;display:grid;place-items:center;background:#f5e6dbe8;color:#352011;border-radius:50%}
.segment-copy{padding:1.7rem 2rem 2rem;flex:1}
.segment-index{color:var(--ember);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.segment-copy h3{font-size:2rem;letter-spacing:-.04em;margin:.7rem 0}
.segment-copy p{color:var(--page-mute);font-size:.9rem;max-width:40ch}
.segment-link{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.8rem;font-weight:600}
.segment-link>span,.segment-switch{color:var(--ember)}
.segment-switch{font-size:.82rem;text-decoration:none}
.aesthetic-store{border-top:1px solid #ffffff16;background:linear-gradient(180deg,#19130f,#090909 40%)}
.reel-price-lockup{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap}
.reel-price-lockup strong{font-size:clamp(3rem,6vw,5rem);line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.reel-price-lockup span{font-size:.8rem;color:var(--ember);margin-top:.7rem}
.reel-store-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-top:1px solid var(--line);padding:1rem 0 1.5rem;font-size:.8rem}
.reel-store-toolbar p{margin:0}.reel-store-toolbar p span{color:var(--page-mute)}
.reel-store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.25rem}
.reel-product-cover{display:block;position:relative;padding:0;width:100%;aspect-ratio:9/16;border:0;border-radius:14px;overflow:hidden;background:#241d16}
.reel-product-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.reel-product-cover:hover img{transform:scale(1.04)}
.reel-product-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(#0004,transparent 30%,#0008)}
.reel-preview-tag,.reel-duration{position:absolute;z-index:1;color:#fff;font-size:.65rem;background:#090909b8;padding:.4rem .6rem;border-radius:5px}
.reel-preview-tag{top:10px;left:10px}.reel-duration{bottom:10px;right:10px;font-variant-numeric:tabular-nums}
.reel-product-play{position:absolute;inset:0;margin:auto;z-index:1;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#25160c;background:#fff2dfed;transition:transform .2s}
.reel-product-cover:hover .reel-product-play{transform:scale(1.1)}
.reel-product-copy h3{font-size:1rem;line-height:1.3;margin:.4rem 0;min-height:2.6em}
.reel-product-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:1rem}
.reel-product-actions .price{font-size:1.2rem}.reel-product-actions small{font-size:.6rem;color:var(--page-mute)}
.reel-product[data-selected="true"] .reel-product-cover{outline:2px solid var(--ember);outline-offset:3px}
.reel-delivery-note{display:flex;justify-content:space-between;gap:2rem;align-items:baseline;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--page-mute)}
.reel-delivery-note p{max-width:60ch;margin:0}.reel-delivery-note a{color:var(--ember);text-decoration:none}
.reel-video-view{position:relative;background:#090909;border-radius:12px;overflow:hidden;max-width:350px;margin:auto}
.reel-video-view video{display:block;width:100%;max-height:65svh;aspect-ratio:9/16}
.reel-video-view .sample-stamp{bottom:65px;pointer-events:none}
@media(max-width:1000px){.reel-store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.segment-art{height:250px}}
@media(max-width:760px){.segment-grid{grid-template-columns:1fr}.segment-art{height:280px}.segment-copy{padding:1.5rem}.reel-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem .9rem}.reel-price-lockup{align-items:flex-start}.aesthetic-store .head{align-items:flex-start}.reel-store-toolbar{align-items:flex-start;flex-direction:column}.reel-delivery-note{flex-direction:column;gap:1rem}.reel-product-actions{flex-wrap:wrap}.reel-product-actions .pick{font-size:.7rem}.reel-preview-tag{font-size:.55rem}.reel-product-copy h3{font-size:.95rem}.segment-link{font-size:.75rem}.segment-link>span{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.segment-card,.reel-product-cover img,.reel-product-play{transition:none}.segment-card:hover,.reel-product-cover:hover img{transform:none}}
[hidden]{display:none!important}
/* clip avoids creating a body scroll container that breaks sticky panels in Safari. */
body{overflow-x:clip;overflow-y:visible}
a,button{-webkit-tap-highlight-color:transparent}
button:disabled{opacity:.35;cursor:default}
.skip{position:fixed;top:8px;left:8px;z-index:200;background:#fff;color:#000;padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}
.nav{background:rgba(9,9,9,.45);backdrop-filter:blur(18px)}
.nav-in{height:66px}
.nav-links{align-items:center;gap:1.4rem}
.nav-links .active{color:var(--ember);opacity:1}
.nav-tools{display:flex;gap:.5rem;align-items:center}
.nav-cart,.menu-toggle{border:1px solid var(--line);background:rgba(0,0,0,.25);padding:.45rem .85rem;border-radius:100px;font-size:.8rem;white-space:nowrap}
.menu-toggle{display:none}
.mobile-menu{position:absolute;top:66px;left:0;right:0;background:#171411;padding:1.25rem;box-shadow:0 20px 35px #0007}
.mobile-menu a{display:block;padding:.9rem;text-decoration:none}
.hero{height:auto;min-height:92svh;min-height:max(640px,92svh);background:#090909}
.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.74;transform:scale(1.02)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#09090966,transparent 40%,#090909);pointer-events:none}
.hero-copy{z-index:2;width:100%;padding:8rem 1.25rem 6rem}
.hero h1{font-size:clamp(3.7rem,8.7vw,7.1rem);text-wrap:balance}
.eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);font-weight:600;margin:0 0 1.3rem}
.hero p:not(.eyebrow){max-width:39ch;color:#d4ccc5;font-size:clamp(1rem,1.8vw,1.22rem)}
.hero-cta{margin-top:1.7rem}
.hero-meta{display:flex;gap:1.5rem;justify-content:center;margin:2rem 0 0;color:#c1b7ad;font-size:.78rem;flex-wrap:wrap}
.hero-meta span+span::before{content:"/";margin-right:1.5rem;color:#786050}
.hero-note{position:relative;z-index:2;text-align:center;margin-top:-3.5rem;padding-bottom:2rem;font-size:.76rem;color:#ac9e91}
.hero-note a{text-decoration:none}
.block{padding:clamp(4.5rem,9vw,7rem) 0}
.zoom{height:220svh;background:#090909}
.zoom-stick{height:100svh}
.zoom-window{position:absolute;inset:0;clip-path:circle(var(--aperture,22%) at 50% 45%);will-change:clip-path}
.zoom-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;will-change:transform,opacity;transform:scale(1.02)}
.zoom-frame:first-child{opacity:1}
.zoom-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0008,transparent 30%,#0004 55%,#000e)}
.zoom-hud{position:absolute;top:100px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;z-index:3;padding:0 4vw}
.zoom-hud p{margin:0;font-size:.8rem;color:#d0b6a4}
.zoom-hud a{font-size:.76rem;color:#e6d9cc;text-underline-offset:5px}
.zoom-copy{position:absolute;bottom:15%;text-align:left;left:max(1.25rem,calc((100vw - 1120px)/2));right:1.25rem;z-index:4;padding:0;max-width:600px}
.mag{font-size:clamp(3.5rem,7vw,6rem);letter-spacing:-.07em;margin-bottom:1rem}
.zoom-title{font-size:clamp(1.8rem,4vw,3rem);line-height:1.1;margin:0;letter-spacing:-.035em}
.zoom-description{color:#cbbcae;font-size:1rem;max-width:36ch}
.zoom-end{margin-top:1rem;opacity:0;pointer-events:none;transition:opacity .3s}
.zoom-end.visible{opacity:1;pointer-events:auto}
.zoom-track{position:absolute;bottom:3rem;left:max(1.25rem,calc((100vw - 1120px)/2));right:max(1.25rem,calc((100vw - 1120px)/2));z-index:4}
.zoom-line{height:2px;background:#ffffff30;margin-bottom:1rem}.zoom-line span{display:block;height:100%;background:var(--ember);transform:scaleX(0);transform-origin:left}
.zoom-stops{display:flex;justify-content:space-between}
.zoom-stop{border:0;background:none;font-size:.75rem;letter-spacing:.08em;color:#908279;padding:.4rem 0}
.zoom-stop[aria-pressed="true"]{color:#fff}
.zoom-footnote{position:absolute;right:4vw;bottom:12%;color:#8f8275;font-size:.65rem;z-index:4;max-width:150px;text-align:right}
.collection-meta{display:flex;gap:1rem;font-size:.78rem;color:var(--page-mute);align-items:center}
.head h2{max-width:20ch;font-size:clamp(2.4rem,5vw,4rem)}
.catalog-controls{display:flex;gap:1rem;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}
.search-wrap{position:relative;flex:1;max-width:420px;min-width:200px}
.search-wrap span{position:absolute;left:1rem;top:.7rem;color:var(--page-mute)}
input[type="search"],input[type="text"],input[type="email"],textarea,select{width:100%;border:1px solid #ffffff26;color:var(--text);background:#191715;border-radius:12px;padding:.8rem 1rem;font:inherit}
input[type="search"]{padding-left:2.5rem}input::placeholder,textarea::placeholder{color:#9a928b}
.sort{display:flex;align-items:center;gap:.6rem;font-size:.8rem;color:var(--page-mute)}.sort select{width:auto;font-size:.85rem}
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.filter{border:1px solid #ffffff20;border-radius:100px;background:none;color:#b8b2ab;padding:.55rem 1rem;font-size:.78rem}
.filter[aria-pressed="true"]{background:#eee4d8;color:#21170e;border-color:#eee4d8}
.catalog-summary{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem;font-size:.78rem;color:var(--page-mute)}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}
.item{border-radius:17px;background:transparent;box-shadow:none}
.item:hover .product-cover img{transform:scale(1.035)}
.product-cover{display:block;border:0;padding:0;width:100%;position:relative;border-radius:16px;overflow:hidden;background:#241d16;aspect-ratio:4/5;text-align:left}
.product-cover img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease)}
.preview-label{position:absolute;bottom:12px;right:12px;background:#080706db;border:1px solid #ffffff30;color:#fff;padding:.35rem .6rem;font-size:.65rem;border-radius:6px;opacity:0;transition:opacity .2s}
.product-cover:hover .preview-label,.product-cover:focus-visible .preview-label{opacity:1}
.item[data-selected="true"] .product-cover{outline:2px solid var(--ember);outline-offset:3px}
.product-category{font-size:.68rem;color:#bb8a61;margin:.9rem 0 .3rem}
.item h3{font-size:.98rem;letter-spacing:-.018em;font-weight:600;line-height:1.3;margin:0;min-height:2.6em}
.product-meta{color:var(--page-mute);font-size:.72rem;margin:.45rem 0 0}
.item-body{padding:.65rem 0 .7rem;margin:0}
.pick{font-size:.76rem;padding:.45rem .85rem;border:1px solid #ffffff26;background:transparent}
.pick[aria-pressed="true"]{border-color:var(--orange)}
.load-more{display:block;margin:2rem auto 0}
.empty-results{padding:4rem 1rem;text-align:center;border:1px solid var(--line);border-radius:18px;color:var(--page-mute)}
.deals{gap:1rem;margin-top:3rem}
.deal{border-radius:18px;padding:1.6rem}.deal p{font-size:.85rem}
.deal .big{font-size:2.3rem}
.deal-action{margin-top:1rem;border:0;background:none;color:var(--ember);padding:0;font-size:.84rem;font-weight:600}
.deal.best{background:linear-gradient(145deg,#321b0b,#15100b);box-shadow:inset 0 0 0 1px #dd78294d}
.cart{position:fixed;bottom:1.2rem;left:50%;transform:translateX(-50%);width:min(900px,calc(100% - 2rem));margin:0;border-radius:22px;z-index:45}
.cart.empty{display:none}.cart-sum small{font-size:.78rem}
.cart-actions .switch{font-size:.78rem}
.has-cart main{padding-bottom:5rem}
.portfolio-head{align-items:flex-start}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.reel-card{text-decoration:none;display:block}
.reel-art{position:relative;aspect-ratio:9/12;border-radius:16px;overflow:hidden;background:#201910}
.reel-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.reel-card:hover img{transform:scale(1.035)}
.reel-art::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,#000c)}
.reel-watch{position:absolute;bottom:1rem;left:1rem;right:1rem;display:flex;justify-content:space-between;align-items:center;z-index:1;font-size:.8rem}
.play{width:38px;height:38px;background:#f3e7dbe8;color:#261406;border-radius:50%;display:grid;place-items:center}
.reel-card h3{margin:.9rem 0 .25rem;font-size:1.15rem}
.reel-card p{margin:0;font-size:.76rem;color:var(--page-mute)}
.instagram-link{text-decoration:none;color:var(--ember);font-size:.9rem}
.social-strip{display:flex;align-items:center;gap:2rem;padding:1.5rem 0;margin-top:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap}
.social-strip strong{font-size:1.5rem;letter-spacing:-.04em}
.social-strip span{font-size:.75rem;color:var(--page-mute)}
.social-strip small{margin-left:auto;font-size:.67rem;color:#8d857e}
.custom-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.custom-layout h2{font-size:clamp(2.5rem,4.5vw,4rem)}
.custom-layout .lede{font-size:1.08rem}
.steps{display:block;margin-top:2rem}
.steps li{display:grid;grid-template-columns:30px 1fr;gap:0 1rem;padding:1rem 0;background:none;box-shadow:none;border-bottom:1px solid var(--line);border-radius:0}
.steps li::before{grid-row:1/3;margin-bottom:0;background:#3b2414;color:var(--ember)}
.steps p{font-size:.8rem}
.brief-form{padding:2rem;background:#171411;border:1px solid #ffffff12;border-radius:20px}
.brief-form h3{font-size:1.4rem;margin:0 0 .5rem}
.brief-form>p{font-size:.83rem;color:var(--page-mute);margin:0 0 1.4rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field{display:block;margin-bottom:1rem;font-size:.8rem;color:#c2b7ad}.field input,.field select,.field textarea{display:block;margin-top:.4rem;font-size:.88rem}
.field textarea{min-height:110px;resize:vertical}
.form-note{font-size:.7rem;color:#9d9186;margin:1rem 0 0}
.form-result{padding:1rem;border:1px solid #ad7238;border-radius:12px;font-size:.85rem;margin-top:1rem}
.form-result p{margin:0 0 .7rem}.form-result a{color:var(--ember)}
.pkgs{grid-template-columns:1.25fr 1fr}.pkg{background:#171411;border-radius:20px}
.pkg .big{color:#e9d3bd}
.faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem}
.faq-list article{border-top:1px solid var(--line);padding:1.3rem 0}
.faq-list h3{font-size:1rem;margin:0 0 .55rem}
.faq-list p{font-size:.9rem;color:var(--page-mute);margin:0;max-width:62ch}
footer{background:#070707;padding-bottom:5rem}
.footer-top{display:flex;align-items:end;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.footer-top h2{font-size:clamp(2.5rem,6vw,4.8rem);max-width:16ch}
.foot-links{font-size:.9rem}.foot-links a{text-decoration:none;color:#d9c9ba}
.footer-bottom{margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;color:#8a8179;font-size:.7rem}
.footer-bottom button{border:0;background:none;padding:0;color:inherit;text-decoration:underline}
dialog{border:1px solid #ffffff24;background:#141210;color:#f5f3ef;border-radius:20px;padding:0;width:min(950px,calc(100% - 2rem));max-height:90svh;overflow:auto}
dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}
.dialog-head{position:sticky;top:0;z-index:2;background:#141210;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}
.dialog-head h2{font-size:1rem;margin:0;max-width:85%}
.close{width:34px;height:34px;border:1px solid var(--line);background:none;border-radius:50%;font-size:1.3rem}
.dialog-body{padding:1.5rem}
.preview-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:start}
.slide-view{position:relative;background:#080808;border-radius:12px;overflow:hidden}
.slide-view img{width:100%;aspect-ratio:4/5;object-fit:contain}
.sample-stamp{position:absolute;bottom:12px;right:12px;font-size:.62rem;letter-spacing:.1em;padding:.35rem .6rem;background:#000b;color:#fff;border:1px solid #fff4}
.slide-controls{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.7rem}
.slide-controls button{width:35px;height:35px;font-size:1.2rem;background:#26201a;border:1px solid var(--line);border-radius:50%}
.slide-count{font-size:.76rem;color:var(--page-mute)}
.product-detail h3{font-size:1.8rem;line-height:1.15;margin:.6rem 0 1rem;letter-spacing:-.04em}
.detail-price{font-size:2rem;margin:.8rem 0}
.detail-list{margin:1rem 0 1.5rem;padding:0;list-style:none;color:#b4a89c;font-size:.8rem}
.detail-list li{padding:.6rem 0;border-bottom:1px solid var(--line)}
.product-detail .btn{width:100%}
.product-detail .note{font-size:.72rem}
.preview-thumbs{display:flex;gap:.5rem;overflow-x:auto;margin-top:1rem;padding-bottom:.5rem}
.preview-thumbs button{padding:0;border:1px solid transparent;min-width:42px;width:42px;background:none;border-radius:4px;overflow:hidden}
.preview-thumbs button[aria-pressed="true"]{border-color:var(--ember)}
.preview-thumbs img{width:42px;height:53px;object-fit:cover}
.order-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem}
.order-items{list-style:none;padding:0;margin:0}
.order-items li{display:flex;align-items:center;gap:.8rem;padding:.8rem 0;border-bottom:1px solid var(--line)}
.order-items img{width:42px;height:53px;object-fit:cover;border-radius:5px}
.order-items span{font-size:.78rem;flex:1}
.order-items button{padding:.3rem .5rem;border:0;background:none;color:#d6a97e;font-size:.7rem}
.order-price-row{display:flex;justify-content:space-between;gap:1rem;font-size:.8rem;color:#b8aea3;margin:.8rem 0}
.order-price-row.total{font-size:1.25rem;color:#fff;padding-top:1rem;border-top:1px solid var(--line)}
.order-form .btn{width:100%}
.helper-actions{display:flex;gap:1rem;margin-top:1rem}
.helper-actions button{border:0;background:none;padding:0;color:var(--ember);font-size:.75rem}
.toast{position:fixed;bottom:7rem;left:50%;transform:translateX(-50%);z-index:150;background:#f2e4d4;color:#27180c;box-shadow:0 8px 25px #0006;padding:.7rem 1rem;border-radius:12px;font-size:.8rem;max-width:calc(100% - 2rem)}
.error-banner{padding:1rem;background:#412316;color:#ffcea1;border-radius:12px}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-links{gap:.9rem;font-size:.76rem}.custom-layout{gap:2rem}.zoom-footnote{bottom:10%}.zoom-copy{bottom:18%}}
@media(max-width:760px){.nav-links{display:none}.menu-toggle{display:block}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem .8rem}.head{margin-bottom:1.8rem;gap:1rem}.custom-layout,.faq-layout{grid-template-columns:1fr}.portfolio-grid{gap:.75rem}.reel-art{aspect-ratio:9/15}.reel-watch{left:.6rem;right:.6rem;font-size:.65rem}.reel-card h3{font-size:.85rem}.play{width:28px;height:28px}.reel-watch .watch-text{display:none}.zoom{height:190svh}.zoom-hud{top:90px}.zoom-copy{bottom:22%}.zoom-footnote{bottom:11%;max-width:none}.zoom-track{bottom:2rem}.zoom-stop{font-size:.65rem}.zoom-title{max-width:16ch}.hero-copy{padding:7rem 1.2rem 5.5rem}.hero h1{font-size:clamp(3.8rem,11vw,5.7rem)}.hero-meta{gap:1rem}.hero-meta span+span::before{margin-right:1rem}.preview-layout,.order-layout{grid-template-columns:1fr}.slide-view{max-width:400px;margin:auto}.preview-layout .product-detail{padding-bottom:1rem}.deals,.pkgs{grid-template-columns:1fr}.social-strip{gap:1.3rem}.social-strip small{margin-left:0;width:100%}.brief-form{padding:1.5rem}}
@media(max-width:420px){.wrap{width:calc(100% - 2rem)}.hero h1{font-size:3.8rem}.hero-cta{gap:.8rem}.hero-cta .btn{font-size:.85rem;padding:.75rem 1rem}.hero-meta{font-size:.65rem}.form-grid{grid-template-columns:1fr;gap:0}.catalog-controls{gap:.7rem}.sort{width:100%}.search-wrap{max-width:none}.item h3{font-size:.88rem}.item-body{gap:.3rem}.pick{padding:.4rem .65rem}.product-meta{font-size:.66rem}.cart{padding:.8rem;gap:.7rem}.cart-actions{width:100%;justify-content:space-between}.cart-actions .btn{font-size:.8rem;padding:.6rem .9rem}.toast{bottom:9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.zoom{height:auto}.zoom-stick{height:90svh;min-height:650px;position:relative;padding:0}.zoom-window{clip-path:none!important}.zoom-frame{will-change:auto;transform:none!important}.zoom-frame:first-child{opacity:0}.zoom-frame:last-of-type{opacity:1}.zoom-end{opacity:1;pointer-events:auto}.hero-art{transform:none}.item img,.reel-art img{transition:none}.zoom-line span{transform:scaleX(1)}}
.hero .eyebrow{font-size:.7rem;line-height:1.5;color:var(--ember);max-width:none;margin:0 0 1.3rem}
:root[data-theme="dark"]{--page:#090909;--page-text:#f5f3ef;--card:#141312;--card-line:rgba(255,255,255,.12);--page-mute:#a6a19b}
.zoom-footnote{bottom:8rem}

.payment-panel{padding:1rem;margin:1rem 0;border:1px solid #ffc43940;background:#201c14;border-radius:12px}.payment-provider{display:block;font-weight:700;font-size:1rem;color:#f9d87c;margin-bottom:.7rem}.paypal-checkout{background:#ffc439;color:#172c55;border:0;font-weight:700}.paypal-checkout:disabled{opacity:.55;cursor:not-allowed}.payment-result{padding:1rem;overflow-wrap:anywhere}.payment-result h3{font-size:1.7rem}.payment-result .btn{margin-top:1rem}

/* ==========================================================
   Micro3DX motion layer (added 2026-10-06)
   Everything animated is scoped under html.m-on, which store.js
   only sets when the visitor has NOT asked for reduced motion.
   ========================================================== */
:root{--m-ease:cubic-bezier(.22,1,.36,1)}
.m-split .m-line{display:block}

/* ---- Hero: slow push-in, staggered copy, drifting motes ---- */
.m-on .hero-art{transform:none;scale:1.02;animation:m-push 26s var(--m-ease) forwards;will-change:scale,translate}
@keyframes m-push{from{scale:1.02}to{scale:1.1}}
.m-on .hero-copy>*{opacity:0;translate:0 20px;animation:m-rise 1.1s var(--m-ease) forwards}
.m-on .hero-copy>:nth-child(1){animation-delay:.15s}
.m-on .hero-copy>:nth-child(2){animation-delay:.3s}
.m-on .hero-copy>:nth-child(3){animation-delay:.5s}
.m-on .hero-copy>:nth-child(4){animation-delay:.65s}
.m-on .hero-copy>:nth-child(5){animation-delay:.8s}
@keyframes m-rise{to{opacity:1;translate:0 0}}
.m-motes{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.m-on .hero-note a{display:inline-block;animation:m-float 2.6s ease-in-out infinite}
@keyframes m-float{50%{translate:0 5px}}

/* ---- Scroll reveals ---- */
.m-on .m-reveal{opacity:0;translate:0 28px;transition:opacity .9s var(--m-ease),translate .9s var(--m-ease);transition-delay:var(--m-d,0ms)}
.m-on .m-reveal.in{opacity:1;translate:0 0}
.m-on .m-split .m-line{overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}
.m-on .m-split .m-line>span{display:inline-block;translate:0 110%;transition:translate 1.05s var(--m-ease);transition-delay:calc(var(--m-i,0)*110ms)}
.m-on .m-split.in .m-line>span{translate:0 0}
.m-count{font-variant-numeric:tabular-nums}

/* ---- Zoom journey: microscope readout, scale bar, focus pull ---- */
.m-on .zoom-window{filter:blur(var(--m-blur,0px))}
.m-scope{position:absolute;top:150px;right:4vw;z-index:4;font:500 .68rem/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;color:#e6d4c3;text-align:right;text-shadow:0 1px 10px #000;pointer-events:none}
.m-scope-row{display:flex;gap:1rem;justify-content:flex-end}
.m-scope-row b{color:var(--ember);font-weight:600}
.m-focus-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ember);margin-right:.4rem;vertical-align:1px;box-shadow:0 0 8px var(--ember);transition:background .3s,box-shadow .3s}
.m-scope.hunting .m-focus-dot{background:#7d6a5b;box-shadow:none}
.m-on .m-scope.hunting .m-focus-dot{animation:m-blink .6s steps(2) infinite}
@keyframes m-blink{50%{opacity:.25}}
.m-scalebar{margin-top:.8rem;display:inline-flex;flex-direction:column;align-items:flex-end;gap:.35rem}
.m-scalebar i{display:block;height:7px;width:var(--m-bar,100px);border:1.5px solid #f3e6d8;border-top:0}
.m-on .m-scalebar i{transition:width .3s var(--m-ease)}

/* ---- Catalog: staggered cards, Instagram-style slide peek, add-to-cart ---- */
.m-on .item.m-card{opacity:0;translate:0 24px;transition:opacity .7s var(--m-ease),translate .7s var(--m-ease),box-shadow .25s;transition-delay:var(--m-d,0ms)}
.m-on .item.m-card.in{opacity:1;translate:0 0}
.m-peek{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .35s var(--m-ease),transform .5s var(--m-ease);pointer-events:none}
.m-peek.show{opacity:1}
.item:hover .m-peek{transform:scale(1.035)}
.m-peek.flip{animation:m-flip .45s var(--m-ease)}
@keyframes m-flip{from{opacity:.35;translate:7% 0}}
.m-peek-bars{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:4px;z-index:2;pointer-events:none}
.m-peek-bars i{flex:1;height:2px;border-radius:2px;background:#ffffff45;overflow:hidden;box-shadow:0 0 4px #0008}
.m-peek-bars i::after{content:"";display:block;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}
.m-peek-bars i.done::after{transform:scaleX(1)}
.m-peek-bars i.run::after{transform:scaleX(1);transition:transform var(--m-dur,1100ms) linear}
.m-fly{position:fixed;left:0;top:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffd9b8,var(--ember) 45%,var(--orange));box-shadow:0 0 18px 4px #ff7a1f88;z-index:300;pointer-events:none}
.m-bump{animation:m-bump .5s var(--m-ease)}
@keyframes m-bump{30%{scale:1.18;box-shadow:0 0 0 6px #ff7a1f33}100%{scale:1}}
.m-on .pick[aria-pressed="true"]{animation:m-pop .35s var(--m-ease)}
@keyframes m-pop{40%{scale:1.08}}
.m-on .cart:not([hidden]){animation:m-cart-in .55s var(--m-ease)}
@keyframes m-cart-in{from{opacity:0;translate:0 30px}}

/* ---- Reels: living posters, play ring, optional video loops ---- */
.reel-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.m-on .reel-card.in .reel-art img{animation:m-kb 16s ease-in-out infinite alternate;animation-delay:var(--m-kb-delay,0s)}
.m-on .reel-card:nth-child(2n).in .reel-art img{animation-name:m-kb2}
@keyframes m-kb{from{scale:1.03;translate:0 0}to{scale:1.13;translate:-2% -3%}}
@keyframes m-kb2{from{scale:1.12;translate:2% -2%}to{scale:1.03;translate:0 1%}}
.m-on .play{position:relative}
.m-on .reel-card.in .play::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1.5px solid #f3e7db;animation:m-ring 2.4s var(--m-ease) infinite}
@keyframes m-ring{from{opacity:.8;scale:1}to{opacity:0;scale:1.9}}

/* ---- Process: timeline draws as you scroll ---- */
.m-on .steps{position:relative}
.m-on .steps::before,.m-on .steps::after{content:"";position:absolute;left:14px;width:2px;top:var(--m-top,0px);height:var(--m-h,0px);border-radius:2px}
.m-on .steps::before{background:#ffffff14}
.m-on .steps::after{background:linear-gradient(var(--ember),var(--orange));transform-origin:top;transform:scaleY(var(--m-p,0))}
.m-on .steps li{position:relative;z-index:1}
.m-on .steps li::before{transition:background .45s var(--m-ease),color .45s,box-shadow .45s,scale .45s var(--m-ease)}
.m-on .steps li h3,.m-on .steps li p{transition:opacity .45s}
.m-on .steps li:not(.lit) h3,.m-on .steps li:not(.lit) p{opacity:.45}
.m-on .steps li.lit::before{background:var(--orange);color:#fff;box-shadow:0 0 0 5px #cc550026,0 0 22px #ff7a1f66;scale:1.06}

/* ---- Buttons and cards: quiet hover feedback ---- */
.m-on .btn-primary{transition:transform .1s ease-out,background .2s,box-shadow .3s var(--m-ease),translate .3s var(--m-ease)}
.m-on .deal,.m-on .pkg{transition:translate .35s var(--m-ease)}
@media (hover:hover){
 .m-on .btn-primary:hover{translate:0 -2px;box-shadow:0 14px 30px -12px #ff6a0099}
 .m-on .deal:hover,.m-on .pkg:hover{translate:0 -4px}
}

/* ---- Mobile: keep the sticky cart from covering the last content ---- */
@media (max-width:760px){
 .m-scope{top:132px;right:1.25rem;font-size:.58rem}
 .m-scope-row{gap:.6rem}
 .has-cart footer{padding-bottom:9rem}
}
@media (max-width:420px){
 .has-cart main{padding-bottom:7rem}
 .has-cart footer{padding-bottom:11rem}
}

/* Keep touch controls usable and avoid a filtered clipping layer on iOS. */
@media(max-width:760px){
 .zoom-stop{min-height:44px;min-width:44px;touch-action:manipulation}
 .m-on .zoom-window{filter:none}
}
