:root{--ink: #0a1020;--ink-2: #0e1628;--ivory: #f5f0e8;--gold: #c4a265;--gold-light: #d9c39a;--stone: #8b8d8e;--line: rgba(245, 240, 232, .12);--display: "Playfair Display", "Noto Serif SC", serif;--han: "Noto Serif SC", "Playfair Display", serif;--sans: "Inter", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--ivory);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}::-moz-selection{background:var(--gold);color:var(--ink)}::selection{background:var(--gold);color:var(--ink)}.grain:after{content:"";position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(2rem,6vw,6rem);overflow:hidden}.hero__bg{position:absolute;inset:0;background:url(/images/hero-preview/forbidden-reflection.jpg) center 42% / cover no-repeat;transform:scale(1.08);animation:drift 24s ease-out forwards}@keyframes drift{to{transform:scale(1)}}.hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,16,32,.55) 0%,rgba(10,16,32,.1) 32%,rgba(10,16,32,.7) 78%,var(--ink) 100%)}.hero__inner{position:relative;z-index:2;max-width:64rem}.brandmark{display:inline-flex;align-items:center;gap:.85rem;font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold-light);margin-bottom:clamp(1.4rem,3vw,2.4rem);opacity:0;animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) forwards}.brandmark:before{content:"";width:2.6rem;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}.hero h1{font-family:var(--display);font-weight:500;line-height:1.04;letter-spacing:-.01em;font-size:clamp(2.6rem,7.4vw,6.4rem);text-wrap:balance}.hero h1 .han{font-family:var(--han);font-weight:500}.hero h1 em{font-style:italic;color:var(--gold-light)}.hero h1 .line{display:block;opacity:0;transform:translateY(28px);animation:rise 1s cubic-bezier(.2,.7,.2,1) forwards}.hero h1 .line:nth-child(1){animation-delay:.32s}.hero h1 .line:nth-child(2){animation-delay:.46s}.hero__sub{margin-top:clamp(1.4rem,3vw,2.2rem);max-width:34rem;font-family:var(--han);font-weight:300;font-size:clamp(.98rem,1.5vw,1.18rem);line-height:1.85;color:#f5f0e8d1;opacity:0;animation:rise 1s .7s cubic-bezier(.2,.7,.2,1) forwards}.scrollcue{position:absolute;left:50%;bottom:1.6rem;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:.55rem;font-size:.6rem;letter-spacing:.32em;text-transform:uppercase;color:var(--stone);opacity:0;animation:rise 1s 1.1s forwards}.scrollcue span{width:1px;height:2.6rem;background:linear-gradient(180deg,var(--gold-light),transparent);animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}@keyframes rise{to{opacity:1;transform:none}}.strip{text-align:center;padding:clamp(4.5rem,11vw,9rem) clamp(1.5rem,6vw,6rem) clamp(2.5rem,6vw,4rem);max-width:56rem;margin:0 auto}.strip .kicker{font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:1.6rem}.strip p{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,3.6vw,2.7rem);line-height:1.4;letter-spacing:-.005em;color:var(--ivory);text-wrap:balance}.strip p .han{font-family:var(--han);font-weight:400}.strip p em{font-style:italic;color:var(--gold-light)}.rail-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:0 clamp(1.5rem,6vw,6rem);margin-bottom:1.6rem;flex-wrap:wrap}.rail-head h2{font-family:var(--han);font-weight:500;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:.02em}.rail-head h2 em{font-family:var(--display);font-style:italic;color:var(--gold-light)}.rail-hint{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone)}.rail{display:flex;gap:clamp(.9rem,1.6vw,1.4rem);padding:0 clamp(1.5rem,6vw,6rem) clamp(3rem,6vw,5rem);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.card{position:relative;flex:0 0 auto;width:clamp(17rem,31vw,24rem);aspect-ratio:3 / 4.35;border-radius:1.5rem;overflow:hidden;scroll-snap-align:start;background:var(--ink-2);isolation:isolate;box-shadow:0 24px 60px -28px #000c}.card__img{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.02);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter 1.2s ease;filter:saturate(.96) contrast(1.02)}.card:hover .card__img{transform:scale(1.09)}.card__shade{position:absolute;inset:0;background:linear-gradient(180deg,#080c189e,#080c180d 36%,#080c18c7)}.card__body{position:absolute;inset:0;z-index:2;padding:clamp(1.4rem,2.4vw,2.1rem);display:flex;flex-direction:column}.card__eyebrow{font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-light);margin-bottom:.85rem}.card__title{font-family:var(--han);font-weight:600;font-size:clamp(1.45rem,2.5vw,1.95rem);line-height:1.28;letter-spacing:.01em;white-space:pre-line;text-shadow:0 2px 24px rgba(0,0,0,.4)}.card__n{margin-top:auto;font-family:var(--display);font-style:italic;font-size:1rem;color:#f5f0e88c}.card__foot{margin-top:1rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.card__text{font-family:var(--han);font-weight:300;font-size:.82rem;line-height:1.7;color:#f5f0e8c7;max-width:16rem;opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease}.card:hover .card__text{opacity:1;transform:none}.plus{flex:0 0 auto;width:2.5rem;height:2.5rem;border-radius:50%;border:none;background:var(--ivory);color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:transform .4s cubic-bezier(.2,.7,.2,1),background .3s ease}.plus:hover{transform:rotate(90deg) scale(1.06);background:var(--gold-light)}.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.closing{text-align:center;padding:clamp(4rem,10vw,8rem) 1.5rem clamp(5rem,12vw,10rem);border-top:1px solid var(--line)}.closing .sig{font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.5em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem}.closing p{font-family:var(--display);font-style:italic;font-size:clamp(1.2rem,2.6vw,1.7rem);color:#f5f0e8b8}
