/* =========================================================
   SENSUEL JEWELS — Haute Joaillerie · cinematic build
   ========================================================= */
:root{
  --noir:#0c0a07; --ink:#14110c; --ink-2:#1b1610;
  --cream:#f3ecdd; --cream-soft:#e7ddc9; --muted:#a89a82;
  --line:rgba(201,164,92,.16);
  --gold-1:#b8893f; --gold-2:#e7c982; --gold-3:#f6ecc8; --emerald:#2f9e6e;
  --gold-grad:linear-gradient(120deg,#9c722f 0%,#e3c47b 30%,#f8eecb 48%,#d8ad55 66%,#a9803a 100%);
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:"Jost","Helvetica Neue",Arial,sans-serif;
  --ease:cubic-bezier(.19,1,.22,1); --maxw:1320px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--sans);background:var(--noir);color:var(--cream);font-weight:300;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;cursor:none}
@media (hover:none){body{cursor:auto}}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
em{font-style:italic}
strong{font-weight:500;color:var(--gold-3)}
button{font-family:inherit}

/* GRAIN + VIGNETTE */
.grain{position:fixed;inset:0;pointer-events:none;z-index:9000;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:8000;background:radial-gradient(120% 90% at 50% 0%,transparent 55%,rgba(0,0,0,.5) 100%)}

/* CURSOR */
.cursor,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:10000;border-radius:50%;transform:translate(-50%,-50%)}
.cursor{width:6px;height:6px;background:var(--gold-3);transition:width .25s,height .25s}
.cursor-ring{width:34px;height:34px;border:1px solid rgba(231,201,130,.5);transition:width .3s var(--ease),height .3s var(--ease),border-color .3s,background .3s}
.cursor-ring.hover{width:66px;height:66px;border-color:rgba(231,201,130,.9)}
.cursor-ring.label{width:86px;height:86px;background:rgba(231,201,130,.08);border-color:transparent}
.cursor-ring::after{content:attr(data-label);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:8.5px;letter-spacing:.18em;color:var(--gold-3);text-transform:uppercase;opacity:0;transition:opacity .2s}
.cursor-ring.label::after{opacity:1}
@media (hover:none){.cursor,.cursor-ring{display:none}}

/* PRELOADER + CURTAIN */
.preloader{position:fixed;inset:0;z-index:9500;background:transparent;display:flex;align-items:center;justify-content:center;pointer-events:none}
.preloader.done .preloader-inner{opacity:0;transition:opacity .5s}
.curtain{position:absolute;left:0;width:100%;height:50%;background:var(--noir);transition:transform 1s var(--ease) .35s}
.curtain-t{top:0}.curtain-b{bottom:0}
.preloader.done .curtain-t{transform:translateY(-100%)}
.preloader.done .curtain-b{transform:translateY(100%)}
.preloader-inner{position:relative;z-index:2;text-align:center}
.pre-mark{font-size:26px;color:var(--gold-2);margin-bottom:22px;opacity:0;animation:fadeUp .9s var(--ease) .1s forwards}
.pre-word{display:flex;gap:.18em;justify-content:center;font-family:var(--serif);font-size:clamp(34px,7vw,68px);letter-spacing:.12em;color:var(--cream)}
.pre-word span{opacity:0;transform:translateY(120%);display:inline-block;animation:letterUp .9s var(--ease) forwards}
.pre-word span:nth-child(1){animation-delay:.15s}.pre-word span:nth-child(2){animation-delay:.22s}.pre-word span:nth-child(3){animation-delay:.29s}.pre-word span:nth-child(4){animation-delay:.36s}.pre-word span:nth-child(5){animation-delay:.43s}.pre-word span:nth-child(6){animation-delay:.50s}.pre-word span:nth-child(7){animation-delay:.57s}
.pre-sub{margin-top:14px;font-size:10px;letter-spacing:.5em;color:var(--muted);opacity:0;animation:fadeUp .9s var(--ease) .8s forwards;padding-left:.5em}
.pre-bar{margin:30px auto 0;width:160px;height:1px;background:rgba(255,255,255,.08);overflow:hidden}
.pre-bar i{display:block;height:100%;width:0;background:var(--gold-grad);animation:bar 1.6s var(--ease) .3s forwards}
@keyframes letterUp{to{opacity:1;transform:translateY(0)}}
@keyframes bar{to{width:100%}}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

/* NAV */
.nav{position:fixed;top:0;left:0;width:100%;z-index:7000;display:flex;align-items:center;justify-content:space-between;padding:26px clamp(20px,5vw,60px);transition:padding .5s var(--ease),background .5s,border-color .5s;border-bottom:1px solid transparent}
.nav.scrolled{padding:15px clamp(20px,5vw,60px);background:rgba(10,8,6,.72);backdrop-filter:blur(14px);border-color:var(--line)}
.brand{display:flex;align-items:center;gap:11px}
.brand-mark{color:var(--gold-2);font-size:15px;transition:transform .6s var(--ease)}
.brand:hover .brand-mark{transform:rotate(180deg)}
.brand-name{font-family:var(--serif);font-size:19px;letter-spacing:.22em;line-height:1;display:flex;flex-direction:column}
.brand-name i{font-style:normal;font-size:8px;letter-spacing:.42em;color:var(--gold-2);font-family:var(--sans);margin-top:3px}
.nav-links{display:flex;gap:32px}
.nav-links a{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-soft);position:relative;padding:4px 0;transition:color .3s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold-grad);transition:width .4s var(--ease)}
.nav-links a:hover{color:#fff}.nav-links a:hover::after{width:100%}
.nav-cta{font-size:10px;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line);padding:11px 20px;border-radius:40px;color:var(--cream);transition:.4s var(--ease)}
.nav-cta:hover{background:var(--gold-grad);color:#1a1306;border-color:transparent}
.burger{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:6px}
.burger span{width:26px;height:1.5px;background:var(--cream);transition:.4s var(--ease)}
.burger.open span:nth-child(1){transform:translateY(3.7px) rotate(45deg)}
.burger.open span:nth-child(2){transform:translateY(-3.7px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:6900;background:var(--noir);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;visibility:hidden;transition:.5s var(--ease)}
.mobile-menu.open{opacity:1;visibility:visible}
.mobile-menu a{font-family:var(--serif);font-size:30px;letter-spacing:.04em;color:var(--cream)}
.mobile-menu .mm-cta{font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--gold-2);padding:14px 28px;border-radius:40px;color:var(--gold-2);margin-top:10px}

/* CINEMATIC HERO */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 20px 90px;overflow:hidden;background:var(--noir)}
.hero-stage{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:0;transform:scale(1.08);transition:opacity 1.8s var(--ease)}
.hero-slide{filter:contrast(1.08) saturate(1.04) brightness(.82)}
.hero-slide.is-active{opacity:1;animation:kenburns 9s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.14)}to{transform:scale(1)}}
.hero-veil{position:absolute;inset:0;z-index:1;background:
  radial-gradient(120% 100% at 50% 35%,rgba(12,10,7,.30) 0%,rgba(12,10,7,.72) 70%,rgba(12,10,7,.95) 100%),
  linear-gradient(to bottom,rgba(12,10,7,.6) 0%,transparent 30%,transparent 55%,rgba(12,10,7,.85) 100%)}
.hero-content{position:relative;z-index:2;max-width:880px}
.hero-eyebrow{font-size:11px;letter-spacing:.42em;color:var(--gold-2);text-transform:uppercase;margin-bottom:30px;padding-left:.42em}
.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(48px,9vw,122px);line-height:.98;letter-spacing:-.01em;margin-bottom:30px;text-shadow:0 2px 40px rgba(0,0,0,.5)}
.hero-title .line{display:block;opacity:0;transform:translateY(40px);animation:heroLine 1.1s var(--ease) forwards}
.hero-title .line:nth-child(1){animation-delay:1.7s}
.hero-title .line:nth-child(2){animation-delay:1.85s}
@keyframes heroLine{to{opacity:1;transform:none}}
.hero-title em{font-style:italic;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-lede{max-width:560px;margin:0 auto 42px;color:var(--cream-soft);font-size:clamp(15px,1.6vw,18px)}
.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.hero-now{position:absolute;bottom:36px;left:clamp(20px,5vw,60px);z-index:2;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream-soft)}
.hn-dot{width:6px;height:6px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 10px var(--gold-2)}
.hero-scroll{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:9px;letter-spacing:.32em;color:var(--muted)}
.hero-scroll i{width:1px;height:42px;background:linear-gradient(var(--gold-2),transparent);position:relative;overflow:hidden}
.hero-scroll i::after{content:"";position:absolute;top:-50%;left:0;width:100%;height:50%;background:var(--gold-3);animation:scrolldot 2s ease-in-out infinite}
@keyframes scrolldot{0%{top:-50%}100%{top:100%}}
.hero-side{position:absolute;bottom:64px;font-size:9px;letter-spacing:.26em;color:var(--muted);z-index:2;writing-mode:vertical-rl}
.hero-side-l{left:28px;transform:rotate(180deg)}.hero-side-r{right:28px}
@media (max-width:1000px){.hero-side{display:none}.hero-now{display:none}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:16px 30px;border-radius:40px;transition:.45s var(--ease);position:relative;overflow:hidden;will-change:transform;cursor:none;border:none}
@media (hover:none){.btn{cursor:pointer}}
.btn-gold{background:var(--gold-grad);color:#1a1306;font-weight:500;background-size:200% 100%;background-position:0 0}
.btn-gold:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 16px 40px -16px rgba(231,201,130,.6)}
.btn-ghost{border:1px solid var(--line);color:var(--cream)}
.btn-ghost:hover{border-color:var(--gold-2);color:#fff;transform:translateY(-2px)}

/* MARQUEE */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;overflow:hidden;background:var(--ink)}
.marquee-track{display:flex;align-items:center;gap:26px;white-space:nowrap;width:max-content;animation:marq 38s linear infinite}
.marquee-track span{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--cream-soft);letter-spacing:.03em}
.marquee-track i{color:var(--gold-2);font-size:12px;font-style:normal}
@keyframes marq{to{transform:translateX(-50%)}}

/* SECTION HEADINGS */
.eyebrow{font-size:11px;letter-spacing:.34em;color:var(--gold-2);text-transform:uppercase;margin-bottom:22px;padding-left:.34em}
.eyebrow.center{text-align:center}
.section-head{max-width:var(--maxw);margin:0 auto 64px;padding:0 clamp(20px,5vw,60px);text-align:center}
.section-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5.5vw,72px);line-height:1.02;margin-bottom:20px}
h2 em{font-style:italic;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.section-head p{max-width:480px;margin:0 auto;color:var(--muted);font-size:15px}

/* IMAGE FRAMES */
.frame,.coll-img,.video-frame,.detail-card,.ig-tile,.frame-portrait{position:relative;overflow:hidden;background:#15110b;border:1px solid var(--line)}
.frame img,.coll-img img,.video-frame img,.detail-card img,.ig-tile img,.frame-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.4s var(--ease);
  filter:contrast(1.08) saturate(1.05) brightness(.9) sepia(.05);transform:scale(1.06)}
/* vignette mask — melts the studio background into noir so the jewel floats */
.frame::before,.coll-img::before,.detail-card::before,.ig-tile::before,.frame-portrait::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(118% 86% at 50% 40%,transparent 38%,rgba(12,10,7,.42) 74%,rgba(9,7,4,.94) 100%)}
.frame::after,.coll-img::after{content:"◈";position:absolute;top:14px;right:16px;color:rgba(246,236,200,.55);font-size:12px;z-index:2;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.frame-tag{position:absolute;left:16px;bottom:16px;font-size:9px;letter-spacing:.2em;color:var(--gold-3);text-transform:uppercase;z-index:2;text-shadow:0 1px 8px rgba(0,0,0,.8)}

/* THE HOUSE */
.house{max-width:var(--maxw);margin:0 auto;padding:clamp(90px,12vw,150px) clamp(20px,5vw,60px)}
.house-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,90px);align-items:center}
.frame-tall{aspect-ratio:3/4;border-radius:3px}
.frame-tall:hover img{transform:scale(1.12)}
.house-text h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.4vw,56px);line-height:1.06;margin-bottom:26px}
.house-text p{color:var(--cream-soft);margin-bottom:20px;max-width:520px}
.house-stats{display:flex;gap:32px;margin-top:38px;flex-wrap:wrap}
.stat{display:flex;flex-direction:column;gap:5px}
.stat b{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--gold-3)}
.stat span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

/* STORYTELLING INTERLUDE */
.interlude{position:relative;min-height:74svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:80px 24px}
.interlude-bg{position:absolute;inset:-10%;background-size:cover;background-position:center 30%;filter:brightness(.32) contrast(1.05) saturate(1.02) blur(2px);z-index:0;will-change:transform}
.interlude::after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(110% 90% at 50% 50%,rgba(12,10,7,.55) 0%,rgba(10,8,5,.9) 100%)}
.interlude-line{position:relative;z-index:2;font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(30px,5.4vw,68px);line-height:1.18;letter-spacing:.005em;color:var(--cream);max-width:16ch;text-shadow:0 2px 40px rgba(0,0,0,.6)}
.interlude-line em{font-style:italic;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.interlude-mark{position:relative;z-index:2;display:block;color:var(--gold-2);font-size:16px;margin-bottom:26px;opacity:.8}

/* THE RAREST OBJECT */
.object{position:relative;min-height:92svh;display:flex;align-items:center;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.object-bg{position:absolute;inset:-8% -8% -8% -8%;background-size:cover;background-position:center 28%;z-index:0;will-change:transform;filter:contrast(1.08) saturate(1.05) brightness(.78)}
.object-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,6,4,.94) 0%,rgba(8,6,4,.82) 38%,rgba(8,6,4,.35) 72%,rgba(8,6,4,.55) 100%)}
.object-inner{position:relative;z-index:2;max-width:600px;margin-left:clamp(20px,8vw,140px);margin-right:20px;padding:clamp(70px,10vw,120px) 0}
.object-eyebrow{font-size:11px;letter-spacing:.34em;color:var(--gold-2);text-transform:uppercase;margin-bottom:24px}
.object h2{font-family:var(--serif);font-weight:300;font-size:clamp(36px,5.5vw,74px);line-height:1.02;margin-bottom:24px}
.object p{color:var(--cream-soft);font-size:16px;max-width:46ch;margin-bottom:34px}
.object-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:40px}
.object-spec{display:flex;gap:40px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:26px}
.object-spec div{display:flex;flex-direction:column;gap:4px}
.object-spec b{font-family:var(--serif);font-size:30px;color:var(--gold-3);font-weight:500}
.object-spec span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* COLLECTIONS */
.collections{padding:clamp(80px,11vw,140px) 0}
.coll-grid{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,60px);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.coll-card{position:relative}
.coll-wide{grid-column:span 3}
.coll-img{aspect-ratio:4/5;border-radius:3px}
.coll-wide .coll-img{aspect-ratio:21/9}
.coll-wide .coll-img img{object-position:center 22%}
.coll-card:hover .coll-img img{transform:scale(1.13)}
.coll-meta{padding:22px 4px 8px}
.coll-no{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--gold-2)}
.coll-meta h3{font-family:var(--serif);font-weight:400;font-size:27px;margin:6px 0 10px}
.coll-meta p{font-size:13.5px;color:var(--muted);max-width:46ch;margin-bottom:14px}
.coll-cta{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);transition:letter-spacing .4s var(--ease)}
.coll-card:hover .coll-cta{letter-spacing:.26em}

/* THE MAKING */
.making{background:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(80px,11vw,150px) clamp(20px,5vw,60px)}
.making-head{max-width:760px;margin:0 auto 64px;text-align:center}
.making-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5.5vw,72px);line-height:1.02;margin-bottom:20px}
.making-head p{color:var(--cream-soft)}
.making-stage{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,5vw,70px);align-items:center}
.video-frame{aspect-ratio:16/11;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.video-frame img{filter:contrast(1.08) saturate(1.04) brightness(.55)}
.play-btn{position:relative;width:84px;height:84px;border-radius:50%;border:1px solid rgba(231,201,130,.6);background:rgba(12,10,7,.35);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;color:var(--gold-3);cursor:pointer;z-index:3;transition:.4s var(--ease)}
.play-btn:hover{background:var(--gold-grad);color:#1a1306;border-color:transparent;transform:scale(1.06)}
.play-ring{position:absolute;inset:-1px;border-radius:50%;border:1px solid rgba(231,201,130,.4);animation:ring 2.4s ease-out infinite}
@keyframes ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.5);opacity:0}}
.video-cap{position:absolute;left:18px;bottom:16px;font-size:9px;letter-spacing:.2em;color:var(--gold-3);text-transform:uppercase;z-index:3}
.process{list-style:none;display:flex;flex-direction:column}
.process li{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.process li:first-child{padding-top:0}.process li:last-child{border-bottom:none}
.p-no{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--gold-2);min-width:34px;line-height:1.2}
.process h4{font-family:var(--serif);font-weight:500;font-size:21px;margin-bottom:4px}
.process p{font-size:13.5px;color:var(--muted);max-width:42ch}
.making-detail{max-width:var(--maxw);margin:70px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.detail-card{aspect-ratio:1;border-radius:3px;display:flex;align-items:flex-end}
.detail-card img{filter:contrast(1.08) saturate(1.04) brightness(.82)}
.detail-card:hover img{transform:scale(1.13)}
.detail-card span{position:relative;z-index:2;padding:16px;font-size:9px;letter-spacing:.2em;color:var(--gold-3);text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.8)}

/* GEMMARIUM */
.gems{padding:clamp(80px,11vw,140px) clamp(20px,5vw,60px)}
.gem-row{max-width:var(--maxw);margin:0 auto;display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.gem-chip{cursor:none;border:1px solid var(--line);background:transparent;color:var(--cream);border-radius:50px;padding:16px 26px 16px 22px;display:flex;align-items:center;gap:13px;transition:.5s var(--ease);overflow:hidden}
@media (hover:none){.gem-chip{cursor:pointer}}
.gem-chip .gem-dot{width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--c2),var(--c1));box-shadow:0 0 14px -2px var(--c2);flex-shrink:0}
.gem-chip b{font-weight:400;font-family:var(--serif);font-size:20px}
.gem-chip i{font-style:italic;font-family:var(--serif);font-size:0;opacity:0;color:var(--muted);transition:.5s var(--ease);max-width:0;white-space:nowrap}
.gem-chip:hover{border-color:transparent;background:rgba(255,255,255,.03);padding-right:30px}
.gem-chip:hover i{font-size:16px;opacity:1;max-width:300px;margin-left:2px}
.gem-chip:hover .gem-dot{box-shadow:0 0 22px 0 var(--c2)}

/* FOUNDER */
.founder{max-width:var(--maxw);margin:0 auto;padding:clamp(80px,11vw,150px) clamp(20px,5vw,60px)}
.founder-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,6vw,90px);align-items:center}
.founder-role{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin:14px 0 30px}
.founder-text h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,6vw,84px);line-height:1}
.founder blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.5vw,28px);line-height:1.4;color:var(--cream);border-left:1px solid var(--gold-2);padding-left:26px;margin:0 0 30px;max-width:30ch}
.founder-text p{color:var(--cream-soft);margin-bottom:18px;max-width:50ch}
.founder-text .btn{margin-top:14px}
.frame-portrait{aspect-ratio:4/5;border-radius:3px}
.frame-portrait:hover img{transform:scale(1.12)}

/* PRESS */
.press{text-align:center;padding:clamp(50px,7vw,80px) 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.press-row{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:8px}
.press-row span{font-family:var(--serif);font-size:clamp(16px,2.4vw,26px);letter-spacing:.16em;color:var(--cream-soft);opacity:.8}
.press-row i{color:var(--gold-2);font-style:normal}

/* JOURNAL */
.journal{padding:clamp(80px,11vw,140px) clamp(20px,5vw,60px)}
.ig-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,22px)}
.ig-tile{aspect-ratio:1;border-radius:3px;transition:transform .8s var(--ease)}
.ig-tile:hover{transform:translateY(-6px)}
.ig-tile:hover img{transform:scale(1.14)}
.journal-cta{text-align:center;margin-top:48px}

/* BESPOKE */
.bespoke{padding:clamp(90px,13vw,170px) clamp(20px,5vw,60px);text-align:center;background:radial-gradient(120% 100% at 50% 40%,#1d160d 0%,#0c0a07 65%)}
.bespoke-inner{max-width:680px;margin:0 auto}
.bespoke-mark{font-size:28px;color:var(--gold-2);margin-bottom:22px}
.bespoke h2{font-family:var(--serif);font-weight:300;font-size:clamp(38px,6.5vw,86px);line-height:1.02;margin-bottom:22px}
.bespoke p{color:var(--cream-soft);max-width:48ch;margin:0 auto 38px}
.bespoke-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.bespoke-note{margin-top:28px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}

/* FOOTER */
.footer{background:var(--ink);border-top:1px solid var(--line);padding:clamp(60px,8vw,90px) clamp(20px,5vw,60px) 36px}
.footer-top{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:50px;padding-bottom:50px;border-bottom:1px solid var(--line)}
.footer-brand{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.footer-brand .brand-name{font-family:var(--serif);font-size:20px;letter-spacing:.18em;display:flex;align-items:baseline;gap:8px}
.footer-brand .brand-name i{font-style:normal;font-size:9px;letter-spacing:.4em;color:var(--gold-2)}
.footer-brand p{color:var(--muted);font-size:13.5px;max-width:34ch}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.fcol h5{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin-bottom:18px;font-weight:400}
.fcol a{display:block;font-size:13.5px;color:var(--cream-soft);margin-bottom:11px;transition:color .3s,padding-left .3s}
.fcol a:hover{color:#fff;padding-left:5px}
.footer-bottom{max-width:var(--maxw);margin:26px auto 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:11px;letter-spacing:.1em;color:var(--muted)}

/* LIGHTBOX */
.lightbox{position:fixed;inset:0;z-index:9800;background:rgba(6,5,3,.96);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s}
.lightbox.open{opacity:1;visibility:visible}
.lb-stage{display:flex;gap:clamp(20px,4vw,60px);align-items:center;max-width:1100px;width:92%;max-height:88svh}
.lb-stage img{max-height:80svh;max-width:60%;object-fit:contain;border:1px solid var(--line);border-radius:3px;box-shadow:0 40px 120px -30px rgba(0,0,0,.9);transform:scale(.96);transition:transform .6s var(--ease)}
.lightbox.open .lb-stage img{transform:scale(1)}
.lb-cap{max-width:330px}
.lb-eyebrow{font-size:10px;letter-spacing:.3em;color:var(--gold-2);text-transform:uppercase}
.lb-cap h3{font-family:var(--serif);font-weight:400;font-size:clamp(28px,4vw,44px);line-height:1.05;margin:14px 0 14px}
.lb-cap p{color:var(--cream-soft);font-size:15px;margin-bottom:28px}
.lb-close{position:absolute;top:26px;right:30px;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--cream);font-size:16px;cursor:pointer;transition:.3s;z-index:2}
.lb-close:hover{background:var(--gold-grad);color:#1a1306;border-color:transparent}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;border:1px solid var(--line);background:rgba(12,10,7,.4);color:var(--cream);font-size:24px;cursor:pointer;transition:.3s;z-index:2;line-height:1}
.lb-prev{left:24px}.lb-next{right:24px}
.lb-nav:hover{border-color:var(--gold-2);color:var(--gold-3)}
@media (max-width:820px){
  .lb-stage{flex-direction:column;gap:22px;overflow-y:auto}
  .lb-stage img{max-width:88%;max-height:54svh}
  .lb-cap{max-width:88%;text-align:center}
  .lb-nav{display:none}
}

/* REVEAL */
.reveal{opacity:0;transform:translateY(34px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal,.hero-title .line{opacity:1;transform:none;animation:none;transition:none}}

/* RESPONSIVE */
@media (max-width:1024px){
  .nav-links,.nav-cta{display:none}
  .burger{display:flex}
  .coll-grid{grid-template-columns:repeat(2,1fr)}
  .coll-wide{grid-column:span 2}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .house-grid,.making-stage,.founder-grid{grid-template-columns:1fr}
  .house-visual{max-width:420px}
  .founder-visual{order:-1;max-width:440px;margin:0 auto}
  .object-veil{background:linear-gradient(to bottom,rgba(8,6,4,.55) 0%,rgba(8,6,4,.9) 100%)}
  .object-inner{margin:0 auto;text-align:center}
  .object p{margin-left:auto;margin-right:auto}
  .object-actions,.object-spec{justify-content:center}
  .footer-top{grid-template-columns:1fr;gap:40px}
}
@media (max-width:600px){
  .coll-grid{grid-template-columns:1fr}
  .coll-wide{grid-column:span 1}
  .making-detail{grid-template-columns:1fr}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
  .footer-cols{grid-template-columns:1fr 1fr}
  .hero-actions .btn,.bespoke-actions .btn,.object-actions .btn{flex:1 1 auto;justify-content:center}
}
