.snow{position:fixed;inset:0;z-index:310;pointer-events:none;opacity:1;transition:opacity 1.8s ease}
.snow.is-out{opacity:0}
.loader{background:radial-gradient(120% 90% at 50% 20%,#1a1a1d 0%,#0b0b0c 60%,#050505 100%)}
.loader__tag{position:absolute;top:calc(50% + clamp(56px,9vw,110px));left:0;right:0;text-align:center;font-size:10.5px;letter-spacing:.42em;text-transform:uppercase;color:rgba(243,238,230,.7);opacity:0;animation:fadeup 1.2s .7s cubic-bezier(.2,.7,.1,1) forwards}
.loader__mark{text-shadow:0 0 60px rgba(255,255,255,.18)}
@keyframes fadeup{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.bf-bar{display:flex;align-items:center;justify-content:center;gap:14px;background:#000;color:#f3eee6;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:9px var(--gutter);position:relative;z-index:61;overflow:hidden;white-space:nowrap}
.bf-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.12) 50%,transparent 70%);transform:translateX(-100%);animation:sheen 5s ease-in-out infinite;pointer-events:none}
@keyframes sheen{60%,100%{transform:translateX(100%)}}
.bf-bar__tag{border:1px solid rgba(243,238,230,.5);padding:3px 7px;font-weight:600}
.bf-bar__time b{font-variant-numeric:tabular-nums;font-weight:600}
@media (max-width:749px){.bf-bar__msg{display:none}.bf-bar__lbl{opacity:.7}}
.bf{background:#000;color:#f3eee6;--fg:#f3eee6;--bg:#000;--line:rgba(243,238,230,.18);--muted:rgba(243,238,230,.6);--accent:#f3eee6;overflow:hidden;position:relative;padding-bottom:clamp(40px,6vw,80px)}
.bf::before{content:"";position:absolute;inset:-20% -10% auto;height:70%;background:radial-gradient(50% 60% at 70% 30%,rgba(255,255,255,.08),transparent 70%);pointer-events:none}
.bf__marquee{border-bottom:1px solid var(--line);padding:14px 0;white-space:nowrap;overflow:hidden}
.bf__track{display:inline-flex;gap:36px;animation:marq 30s linear infinite;padding-left:36px;font-size:11px;letter-spacing:.32em;text-transform:uppercase}
.bf__track i{font-style:normal;opacity:.5}
.bf__in{display:grid;gap:clamp(36px,5vw,72px);padding-top:clamp(56px,8vw,120px);padding-bottom:clamp(32px,5vw,64px);position:relative}
.bf__head{display:grid;gap:24px;align-content:start;min-width:0}
.bf__kicker{color:var(--muted)}
.bf__title{font-family:var(--f-display);font-weight:400;font-size:clamp(84px,17vw,260px);line-height:.82;letter-spacing:-.035em;margin:0;display:grid}
.bf__l1{color:transparent;-webkit-text-stroke:1px rgba(243,238,230,.9);background:linear-gradient(90deg,#f3eee6 50%,transparent 50%);background-size:200% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;transition:background-position 2.2s cubic-bezier(.7,0,.2,1)}
.bf.is-in .bf__l1{background-position:0 0}
.bf__l2 em{display:inline-block;transform:translateY(30%);opacity:0;transition:transform 1.4s cubic-bezier(.2,.7,.1,1) .3s,opacity 1.2s .3s}
.bf.is-in .bf__l2 em{transform:none;opacity:1}
.bf__offer{font-family:var(--f-display);font-size:clamp(24px,3vw,40px);line-height:1.15;max-width:18em}
.bf__clock{display:flex;align-items:flex-start;gap:clamp(8px,2vw,22px)}
.bf__clock div{display:grid;gap:8px;justify-items:center;min-width:clamp(64px,8vw,104px);border:1px solid var(--line);padding:16px 8px 12px}
.bf__clock b{font-family:var(--f-display);font-weight:400;font-size:clamp(40px,5vw,72px);line-height:1;font-variant-numeric:tabular-nums}
.bf__clock b.tick{animation:tick .5s cubic-bezier(.2,.7,.1,1)}
@keyframes tick{from{opacity:.25;transform:translateY(-8px)}}
.bf__clock i{font-style:normal;font-family:var(--f-display);font-size:clamp(32px,4vw,56px);padding-top:14px;opacity:.5}
.bf__clock .label{color:var(--muted);font-size:9.5px}
.bf__note{color:var(--muted)}
.bf__ctas{display:flex;gap:10px;flex-wrap:wrap}
.bf__drops{position:relative;aspect-ratio:3/4;max-height:86vh}
.bf__drop{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s;display:block}
.bf__drop.is-active{opacity:1;visibility:visible}
.bf__img{position:absolute;inset:0;overflow:hidden;background:#111}
.bf__img img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform 2s cubic-bezier(.2,.7,.1,1)}
.bf__drop:hover .bf__img img{transform:scale(1.04)}
.bf__cap{position:absolute;left:0;right:0;bottom:0;padding:clamp(18px,3vw,32px);display:grid;gap:10px;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent);color:#f3eee6}
.bf__pt{font-size:clamp(28px,3vw,44px);line-height:1}
.bf__meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.bf__chip{background:#000;color:#f3eee6;border:1px solid rgba(243,238,230,.6);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 8px}
.bf__fine{font-size:11px;color:var(--muted);max-width:760px;position:relative}
@media (min-width:990px){.bf__in{grid-template-columns:1.15fr .85fr;align-items:center}}
.bf-ribbon{position:absolute;left:0;right:0;bottom:0;z-index:2;background:#000;color:#f3eee6;font-size:9.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:9px 6px;line-height:1.3;pointer-events:none}
.bf-ribbon::before{content:"✦ ";opacity:.7}
.bf-ribbon--w{background:rgba(0,0,0,.82);backdrop-filter:blur(4px);border-top:1px solid rgba(243,238,230,.25)}
@media (hover:hover) and (min-width:990px){.card:hover .bf-ribbon{opacity:0;transition:opacity .3s}}
.bf-label{display:inline-block;justify-self:start;background:#000;color:#f3eee6;font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;padding:6px 10px}
.mood-winter .bf-label{background:#f3eee6;color:#0d0c0b}
.bf-note{display:flex;gap:12px;align-items:flex-start;background:#000;color:#f3eee6;padding:14px 16px;font-size:12px;line-height:1.5;margin-bottom:8px}
.bf-note b{display:block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:2px}
.bf-note span:first-child{font-family:var(--f-display);font-size:22px;line-height:1}
.mood-winter .bf-note{background:#f3eee6;color:#0d0c0b}
.cat-chips{display:flex;gap:8px;flex-wrap:wrap;padding:16px var(--gutter) 0}
.np{position:fixed;inset:0;z-index:150;display:grid;place-items:center;visibility:hidden;pointer-events:none}
.np.is-open{visibility:visible;pointer-events:auto}
.np .overlay{z-index:0;background:rgba(0,0,0,.6)}
.np__card{position:relative;z-index:1;width:min(460px,calc(100% - 28px));max-height:calc(100svh - 28px);overflow:auto;background:#000;color:#f3eee6;--fg:#f3eee6;--bg:#000;--line:rgba(243,238,230,.22);padding:clamp(28px,5vw,44px);border:1px solid rgba(243,238,230,.14);opacity:0;transform:translateY(24px) scale(.98);transition:opacity .7s cubic-bezier(.2,.7,.1,1),transform .9s cubic-bezier(.2,.7,.1,1)}
.np.is-open .np__card{opacity:1;transform:none}
.np__x{position:absolute;top:8px;right:8px;color:#f3eee6}
.np__mark{font-family:var(--f-display);font-size:30px;letter-spacing:.08em;margin-bottom:22px}
.np__form{display:grid;gap:14px}
.np__eyebrow{color:rgba(243,238,230,.6)}
.np__title{font-size:clamp(40px,9vw,58px);line-height:.95;margin:2px 0 4px}
.np__sub{font-size:13.5px;line-height:1.6;color:rgba(243,238,230,.8);margin-bottom:8px}
.np__field{display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(243,238,230,.45);transition:border-color .3s}
.np__field:focus-within{border-color:#f3eee6}
.np__field input{flex:1;min-width:0;background:transparent;border:0;outline:none;color:#f3eee6;padding:14px 0;font-size:16px}
.np__field input::placeholder{color:rgba(243,238,230,.45)}
.np__cc{font-size:14px;color:rgba(243,238,230,.7)}
.np__consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.55;color:rgba(243,238,230,.7);cursor:pointer;margin-top:6px}
.np__consent input{accent-color:#f3eee6;margin-top:2px;flex:none}
.np__err{font-size:12px;color:#f0a58f}
.np__err:empty{display:none}
.np__skip{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(243,238,230,.55);justify-self:center;padding:6px}
.np__done{display:grid;gap:14px}
@media (prefers-reduced-motion:reduce){.snow{display:none}.bf__l1{background-position:0 0}.bf__l2 em{opacity:1;transform:none}}
