*{margin:0;padding:0;box-sizing:border-box}
:root{
  --cream:#FFFFFF; --cream2:#F7F7F8; --card:#FFFFFF;
  --ink:#181307; --ink70:rgba(24,19,7,.70); --ink50:rgba(24,19,7,.50); --ink30:rgba(24,19,7,.30);
  --line:rgba(24,19,7,.13);
  --w:#fff; --w80:rgba(255,255,255,.80); --w55:rgba(255,255,255,.55); --w32:rgba(255,255,255,.32);
  --dline:rgba(255,255,255,.10);
  --gold:#C9AB67; --gold-lt:#DDC989; --gold-dp:#A5843D; --gold-dim:rgba(201,171,103,.14);
  --gline:rgba(201,171,103,.38);
  --max:1400px;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold-dp);outline-offset:3px;border-radius:4px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:2000;background:var(--ink);color:#fff;
  padding:12px 20px;border-radius:0 0 8px 0;font-weight:700;font-size:13px}
.skip-link:focus{left:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{display:block}
::selection{background:var(--gold);color:#17130A}

.hd{position:fixed;top:0;left:0;right:0;z-index:1000;padding:20px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:.35s;border-bottom:1px solid transparent}
.hd-logo{font-family:'Playfair Display',serif;font-weight:900;font-size:22px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink)}
.hd-logo em{font-style:normal;color:var(--gold-dp)}
.hd-logo img{height:62px;width:auto}
@media(max-width:768px){.hd-logo img{height:50px}}
.wordmark img{width:clamp(200px,26vw,400px);height:auto}
.wordmark{background:none;align-self:stretch;max-width:616px;display:flex;justify-content:center}
.uni-name .uni-logo{height:60px;width:auto}
.ft-brand img{height:64px;width:auto}
.ft-ymg{width:150px;height:auto;margin-top:18px}
.uni-c:nth-child(3) .uni-media img{object-position:center 62%}
.hd-nav{display:flex;gap:4px}
.hd-nav a{font-size:12px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink50);padding:10px 14px;border-radius:6px;transition:.25s}
.hd-nav a:hover{color:var(--ink);background:rgba(24,19,7,.06)}
.hd-nav a.act{color:var(--gold-dp)}
.hd-cta{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--cream);font-weight:900;font-size:11.5px;letter-spacing:1.4px;text-transform:uppercase;padding:12px 22px;border-radius:999px;transition:.25s;white-space:nowrap}
.hd-cta:hover{background:var(--gold-dp);transform:translateY(-1px)}
.burger{display:none;background:none;border:0;color:var(--ink);font-size:22px;cursor:pointer;z-index:1001}
.hd.on{background:rgba(255,255,255,.93);backdrop-filter:blur(18px);padding:12px 40px;border-bottom-color:var(--line)}
@media(max-width:1150px){
  .hd-nav{position:fixed;inset:0 0 auto 0;flex-direction:column;background:rgba(255,255,255,.985);backdrop-filter:blur(20px);padding:88px 24px 30px;gap:2px;transform:translateY(-102%);transition:transform .45s cubic-bezier(.4,0,.2,1);border-bottom:1px solid var(--line)}
  .hd-nav.open{transform:none}
  .hd-nav a{width:100%;text-align:center;font-size:15px;padding:15px}
  .hd{padding:14px 20px}.hd.on{padding:12px 20px}.hd-cta{display:none}.burger{display:block}
}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;
  font-size:11.5px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;transition:.25s;border:none;cursor:pointer;font-family:inherit;text-align:center}
.btn-g{background:var(--ink);color:var(--cream)}
.btn-g:hover{background:var(--gold-dp);transform:translateY(-2px)}
.btn-o{background:transparent;color:var(--ink);border:1px solid rgba(24,19,7,.24)}
.btn-o:hover{border-color:var(--ink);background:rgba(24,19,7,.05)}
.btn-sm{padding:12px 22px;font-size:10.5px}
.on-dark .btn-g{background:var(--gold);color:#17130A}
.on-dark .btn-g:hover{background:var(--gold-lt)}
.on-dark .btn-o{color:#fff;border-color:rgba(255,255,255,.28)}
.on-dark .btn-o:hover{border-color:var(--gold);color:var(--gold-lt);background:rgba(255,255,255,.05)}

.hero{position:relative;min-height:100svh;display:grid;grid-template-columns:46% 1fr;
  background:#FFFFFF;color:var(--ink)}
.hero-media{position:relative;overflow:hidden;background:var(--cream2)}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.hero-media::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,transparent 58%,rgba(255,255,255,.35) 82%,var(--cream) 100%),
             linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.55) 48%,transparent 100%) top/100% 128px no-repeat}
.hero-badge{position:absolute;left:26px;bottom:26px;z-index:3;display:inline-flex;align-items:center;gap:9px;
  padding:11px 20px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);
  border:1px solid var(--gline);font-size:10.5px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink)}
.dotlive{width:7px;height:7px;border-radius:50%;background:var(--gold-dp);box-shadow:0 0 0 0 rgba(165,132,61,.45);animation:pl 2.2s infinite}
@keyframes pl{70%{box-shadow:0 0 0 11px rgba(165,132,61,0)}100%{box-shadow:0 0 0 0 rgba(165,132,61,0)}}

.hero-in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  padding:140px 5vw 80px 4vw;max-width:none}
.wordmark{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(40px,6.1vw,92px);line-height:.94;text-transform:uppercase;letter-spacing:.5px;
  background:linear-gradient(180deg,var(--ink) 4%,#7A6230 42%,var(--gold-dp) 78%,var(--gold) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero-punch{margin-top:24px;font-family:'Playfair Display',serif;font-style:italic;font-weight:700;
  font-size:clamp(20px,2.3vw,30px);line-height:1.28;color:var(--ink);max-width:28ch}
.hero-line{margin-top:16px;font-size:15px;line-height:1.75;color:var(--ink70);max-width:60ch}
.hero-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px}
.ha-path{display:flex;flex-direction:column;align-items:center;gap:7px}
.ha-label{font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink30)}
.hero-stats{display:flex;gap:40px;margin-top:44px;flex-wrap:wrap;width:100%;max-width:640px}
.hs-n{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(25px,2.2vw,32px);color:var(--gold-dp);line-height:1}
.hs-l{font-size:9.5px;font-weight:900;letter-spacing:2.2px;text-transform:uppercase;color:var(--ink30);margin-top:7px}
.hs-meta{font-size:8.5px;font-weight:600;letter-spacing:.6px;color:var(--ink20,rgba(24,19,7,.2));margin-top:4px}

@media(max-width:1150px){.hero{grid-template-columns:42% 1fr}.hero-in{padding:130px 5vw 70px 4vw}}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-media{height:52svh;min-height:320px}
  .hero-media::after{background:linear-gradient(0deg,var(--cream) 0%,rgba(255,255,255,.3) 22%,transparent 55%)}
  .hero-in{padding:34px 20px 64px;align-items:center;text-align:center;max-width:none}
  .hero-punch,.hero-line{max-width:38ch}
  .wordmark{margin:0 auto}
  .hero-actions{justify-content:center;width:100%}
  .ha-path{align-items:center;width:100%}
  .ha-path .btn{width:100%}
  .hero-stats{justify-content:center;gap:26px;max-width:none}
  .hd:not(.on){background:rgba(255,255,255,.82);backdrop-filter:blur(14px)}
}

.sec{padding:110px 40px;max-width:var(--max);margin:0 auto}
.sec-alt{background:var(--cream2);max-width:none}
.sec-in{max-width:var(--max);margin:0 auto;padding:0 40px}
.head{margin-bottom:46px}
.head.ctr{text-align:center;margin-left:auto;margin-right:auto;max-width:760px}
.kick{display:block;font-size:12.5px;font-weight:700;letter-spacing:.2px;color:var(--gold-dp);margin-bottom:12px}
.ttl{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(28px,3.9vw,54px);line-height:1.08;letter-spacing:-.4px;margin-bottom:16px;color:var(--ink)}
.ttl em{font-style:italic;color:var(--gold-dp);letter-spacing:-.4px}
.sub{font-size:16px;line-height:1.8;color:var(--ink50);max-width:640px}
.head.ctr .sub{margin:0 auto}
@media(max-width:768px){.sec{padding:74px 20px}.sec-in{padding:0 20px}}

.uni{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.uni-c{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);
  border-radius:18px;overflow:hidden;transition:.4s cubic-bezier(.2,.8,.2,1)}
.uni-c:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(24,19,7,.13)}
.uni-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--cream2);border-bottom:2px solid var(--gold)}
.uni-media img{width:100%;height:100%;object-fit:cover;object-position:center 16%;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.uni-c:first-child .uni-media img{object-position:center 42%}
.uni-c:hover .uni-media img{transform:scale(1.06)}
.uni-body{padding:28px 26px 30px;display:flex;flex-direction:column;flex:1}
.uni-tag{font-size:10px;font-weight:900;letter-spacing:2.4px;text-transform:uppercase;color:var(--gold-dp);margin-bottom:10px}
.uni-name{font-family:'Playfair Display',serif;font-weight:900;font-size:27px;line-height:1.08;margin-bottom:6px}
.uni-name span{display:block;color:var(--gold-dp)}
.uni-for{font-size:11.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink30);margin-bottom:14px}
.uni-txt{font-size:14px;line-height:1.7;color:var(--ink70);margin-bottom:22px;flex:1}
@media(max-width:980px){.uni{grid-template-columns:1fr;max-width:460px;margin:0 auto}}

.audit{position:relative;background:var(--ink);border-radius:24px;overflow:hidden;
  display:grid;grid-template-columns:repeat(4,1fr);padding:52px 28px;margin-bottom:18px}
.audit::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 120% at 50% -10%,rgba(201,171,103,.30) 0%,transparent 62%)}
.audit div{position:relative;z-index:2;text-align:center;padding:6px 16px}
.audit b{display:block;font-family:'Playfair Display',serif;font-weight:900;
  font-size:clamp(34px,4.4vw,58px);line-height:.95;
  background:linear-gradient(180deg,#fff 12%,var(--gold-lt) 58%,var(--gold) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.audit span{display:block;font-size:10px;font-weight:900;letter-spacing:2.4px;text-transform:uppercase;
  color:rgba(255,255,255,.42);margin-top:12px}
.audit small{display:block;font-size:8.5px;font-weight:600;letter-spacing:.5px;color:rgba(255,255,255,.22);margin-top:5px;text-transform:none}
@media(max-width:860px){.audit{grid-template-columns:repeat(2,1fr);padding:36px 18px;gap:30px 0}}

.plats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:52px}
.plat{position:relative;overflow:hidden;background:var(--ink);border-radius:20px;
  padding:32px 28px 28px;display:flex;flex-direction:column;transition:.4s cubic-bezier(.2,.8,.2,1);
  border:1px solid rgba(255,255,255,.08);text-decoration:none}
.plat::after{content:'';position:absolute;top:-40%;left:50%;width:120%;height:80%;
  background:radial-gradient(ellipse at center,var(--brand-soft) 0%,transparent 70%);
  transform:translateX(-50%);opacity:0;transition:opacity .5s;z-index:0;pointer-events:none}
.plat:hover{transform:translateY(-6px) scale(1.02);border-color:rgba(255,255,255,.15);
  box-shadow:0 0 40px var(--brand-soft),0 20px 50px rgba(0,0,0,.35)}
.plat:hover::after{opacity:1}
.plat>*{position:relative;z-index:2}
.plat-ico{width:48px;height:48px;margin-bottom:22px;color:var(--brand);
  filter:drop-shadow(0 0 8px var(--brand-soft));transition:all .4s}
.plat:hover .plat-ico{transform:scale(1.12);filter:drop-shadow(0 0 16px var(--brand))}
.plat-n{font-family:'DM Sans',sans-serif;font-weight:900;font-size:20px;letter-spacing:.3px;color:#fff}
.plat-h{font-size:13px;color:rgba(255,255,255,.40);font-weight:600;margin-top:4px;font-family:'DM Sans',sans-serif}
.plat-s{margin-top:22px;display:flex;align-items:baseline;gap:10px}
.plat-s b{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(34px,3.5vw,46px);line-height:1;
  color:#fff;transition:all .4s;text-shadow:0 0 20px var(--brand-soft)}
.plat:hover .plat-s b{color:var(--brand);text-shadow:0 0 30px var(--brand-soft)}
.plat-s span{font-size:10px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.30)}
.plats-total{margin:-34px 0 52px;font-size:13px;color:var(--ink50)}
.plats-total b{color:var(--gold-dp);font-weight:800}
.plat-m{margin-top:auto;padding-top:22px;
  font-size:11px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.30);
  display:flex;align-items:center;justify-content:space-between;gap:10px;transition:color .4s}
.plat:hover .plat-m{color:var(--brand)}
.plat-m i{font-style:normal;font-size:15px;transition:transform .3s}
.plat:hover .plat-m i{transform:translate(3px,-3px)}
@media(max-width:780px){.plats{grid-template-columns:1fr;max-width:400px;margin-left:auto;margin-right:auto}}

.partners{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:var(--card);
  border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:14px}
.partner{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  padding:40px 18px;min-height:150px;text-align:center;transition:background .35s}
.partner+.partner{border-left:1px solid var(--line)}
.partner:hover{background:rgba(201,171,103,.07)}
.partner-n{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(19px,1.8vw,25px);line-height:1.15;color:var(--ink);transition:color .35s}
.partner:hover .partner-n{color:var(--gold-dp)}
.partner-logo{max-height:70px;max-width:140px;object-fit:contain;filter:grayscale(.3);transition:filter .35s,transform .35s}
.partner:hover .partner-logo{filter:grayscale(0);transform:scale(1.06)}
.partner-t{font-size:9.5px;text-align:center;font-weight:900;letter-spacing:2.2px;text-transform:uppercase;color:var(--ink30)}
.partners-note{font-size:12.5px;color:var(--ink30);margin-bottom:52px}
@media(max-width:860px){.partners{grid-template-columns:repeat(2,1fr)}
  .partner:nth-child(3){border-left:0}.partner:nth-child(n+3){border-top:1px solid var(--line)}
  .partner:nth-child(5){border-left:0;grid-column:1/-1}}
.press{display:flex;flex-direction:column;gap:9px;background:var(--card);border:1px solid var(--line);
  border-radius:16px;padding:28px 26px;min-height:190px;justify-content:center;transition:.3s}
.press:hover{border-color:var(--gline);transform:translateY(-4px);box-shadow:0 16px 34px rgba(24,19,7,.11)}
.press-src{font-size:10px;font-weight:900;letter-spacing:2.2px;text-transform:uppercase;color:var(--gold-dp)}
.press-t{font-family:'Playfair Display',serif;font-weight:900;font-size:19px;line-height:1.28;color:var(--ink)}
.press-m{font-size:12.5px;color:var(--ink30);font-weight:600}
.press-l{margin-top:6px;font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-dp)}
.press:hover .press-l{color:var(--ink)}
.press-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.subhead{font-family:'DM Sans',sans-serif;font-weight:900;font-size:14px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink);
  margin:0 0 18px;display:flex;align-items:baseline;gap:12px}
.subhead small{font-family:'DM Sans',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.4px;text-transform:none;color:var(--ink30)}

.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:34px;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{flex-shrink:0;padding:11px 20px;border-radius:999px;background:transparent;border:1px solid var(--line);
  font-family:inherit;font-size:11.5px;font-weight:900;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink50);cursor:pointer;transition:.25s}
.tab:hover{color:var(--ink);border-color:rgba(24,19,7,.3)}
.tab.act{background:var(--ink);border-color:var(--ink);color:var(--cream)}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:34px 22px}
.vcard{display:block;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.vcard:hover{transform:translateY(-6px)}
.vthumb{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#F2F2F3;box-shadow:0 2px 6px rgba(24,19,7,.07);transition:.35s}
.vcard:hover .vthumb{box-shadow:0 16px 34px rgba(24,19,7,.16)}
.vthumb img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.vcard:hover .vthumb img{transform:scale(1.06)}
.vplay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.82);z-index:2;width:56px;height:56px;border-radius:50%;
  background:rgba(201,171,103,.96);display:flex;align-items:center;justify-content:center;opacity:0;transition:.32s;box-shadow:0 6px 22px rgba(0,0,0,.3)}
.vplay::after{content:'';border-left:16px solid #17130A;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}
.vcard:hover .vplay{opacity:1;transform:translate(-50%,-50%) scale(1)}
.vdur{position:absolute;right:10px;bottom:10px;z-index:2;background:rgba(12,10,5,.85);color:#fff;padding:3px 9px;border-radius:5px;font-size:11px;font-weight:800}
.vnew{position:absolute;left:10px;top:10px;z-index:2;background:var(--gold);color:#17130A;padding:4px 10px;border-radius:5px;font-size:9.5px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}
.vinfo{padding:15px 2px 0}
.vcat{font-size:9.5px;font-weight:900;letter-spacing:2.2px;text-transform:uppercase;color:var(--gold-dp);margin-bottom:8px}
.vttl{font-size:16px;font-weight:800;line-height:1.35;margin-bottom:6px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vcard:hover .vttl{color:var(--gold-dp)}
.vguest{font-size:13px;color:var(--ink50);font-weight:600}
.empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--ink30);font-size:14px}

.tal{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(min-width:981px){.tal{grid-template-columns:repeat(6,1fr)}.tal-c{grid-column:span 2}.tal-c:nth-child(4){grid-column:2/4;margin-left:0}.tal-c:nth-child(5){grid-column:4/6}}
.tal-c{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:.4s cubic-bezier(.2,.8,.2,1)}
.tal-c:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(24,19,7,.13)}
.tal-ph{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--cream2);border-bottom:2px solid var(--gold)}
.tal-ph img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.tal-c:hover .tal-ph img{transform:scale(1.05)}
.tal-b{padding:26px 24px 28px;display:flex;flex-direction:column;flex:1}
.tal-n{font-family:'Playfair Display',serif;font-weight:900;font-size:27px;line-height:1.1;margin-bottom:8px}
.tal-r{font-size:11.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-dp);margin-bottom:14px}
.tal-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.tal-tag{padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--ink50)}
.tal-d{font-size:13.5px;line-height:1.7;color:var(--ink70);margin-bottom:18px;flex:1}
@media(max-width:980px){.tal{grid-template-columns:1fr;max-width:420px;margin:0 auto}}

.offs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.off{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px 30px;display:flex;flex-direction:column;
  transition:.35s;box-shadow:0 1px 3px rgba(24,19,7,.05)}
.off:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(24,19,7,.12)}
.off.dark{background:var(--ink);border-color:var(--ink);color:#fff}
.off-t{font-size:10.5px;font-weight:900;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold-dp);margin-bottom:11px}
.off.dark .off-t{color:var(--gold-lt)}
.off-n{font-family:'Playfair Display',serif;font-weight:900;font-size:30px;margin-bottom:10px;line-height:1.08}
.off-d{font-size:13.5px;color:var(--ink50);line-height:1.7;margin-bottom:26px}
.off.dark .off-d{color:var(--w55)}
.axes{list-style:none;margin-bottom:28px;flex:1;display:flex;flex-direction:column;gap:16px}
.axes li{display:flex;flex-direction:column;gap:5px}
.axes .ax{font-size:9.5px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--gold-dp)}
.off.dark .axes .ax{color:var(--gold-lt)}
.axes .vl{font-size:13.5px;line-height:1.6;color:var(--ink70)}
.off.dark .axes .vl{color:var(--w80)}
.axes .vl.off-none{color:var(--ink30)}
.off.dark .axes .vl.off-none{color:var(--w32)}
.off .btn{width:100%}
@media(max-width:980px){.offs{grid-template-columns:1fr;max-width:440px;margin:0 auto}}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:46px}
.step{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 22px;position:relative}
.step-n{font-family:'DM Sans',sans-serif;font-weight:900;font-size:12px;letter-spacing:2px;color:var(--gold-dp);margin-bottom:12px}
.step h4{font-size:15px;font-weight:800;margin-bottom:6px}
.step p{font-size:13px;color:var(--ink50);line-height:1.6}
@media(max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}

.story{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.story-img{border-radius:18px;overflow:hidden;aspect-ratio:3/4;box-shadow:0 18px 44px rgba(24,19,7,.15)}
.story-img img{width:100%;height:100%;object-fit:cover;object-position:center 12%}
.story-txt p{font-size:15.5px;line-height:1.85;color:var(--ink70);margin-bottom:16px}
.story-txt p b{color:var(--gold-dp);font-weight:700}
.story-sign{margin-top:28px}
.story-sign b{display:block;font-family:'Playfair Display',serif;font-weight:900;font-size:22px}
.story-sign span{font-size:11.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-dp)}
.ig-card{margin-top:18px;display:inline-flex;align-items:center;gap:14px;padding:10px 12px 10px 10px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 28px -14px rgba(24,19,7,.25);transition:.3s}
.ig-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px -14px rgba(24,19,7,.32)}
.ig-av{width:52px;height:52px;border-radius:50%;padding:2.5px;background:conic-gradient(from 200deg,#F58529,#DD2A7B,#8134AF,#515BD4,#F58529);flex:none}
.ig-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 18%;border:2.5px solid var(--card)}
.ig-id{display:flex;flex-direction:column;line-height:1.2}
.ig-net{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink50)}
.ig-id b{font-size:16px;font-weight:800;color:var(--ink)}
.ig-follow{margin-left:10px;padding:10px 20px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff;background:linear-gradient(90deg,#F58529,#DD2A7B,#8134AF)}
.ig-card+.ig-card{margin-top:12px}
.story-sign .ig-card{display:flex;width:max-content;max-width:100%}
.ig-av-logo img{object-fit:contain;padding:7px;background:#17130A}
.story-sign .ig-card span{font-size:inherit;letter-spacing:normal;text-transform:none;color:inherit;font-weight:inherit}
.story-sign .ig-card .ig-net{font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink50)}
.story-sign .ig-card .ig-id b{display:block;font-family:'DM Sans',sans-serif;font-size:16px;font-weight:800;color:var(--ink);text-transform:none}
.story-sign .ig-card .ig-follow{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff}
@media(max-width:900px){.story{grid-template-columns:1fr;gap:32px}.story-img{max-width:380px}}

.igb{position:relative;border-radius:20px;overflow:hidden;background:var(--ink);color:#fff;padding:66px 40px;text-align:center;display:flex;flex-direction:column;align-items:center}
.igb::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(201,171,103,.24) 0%,transparent 64%)}
.igb>*{position:relative;z-index:2}
.ig-txt{font-size:15px;line-height:1.75;color:var(--w55);max-width:470px;margin:16px 0 28px}
.ig-socials{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.ig-brands{display:grid;grid-template-columns:1fr 1fr;gap:28px;width:100%;max-width:760px}
.ig-brand{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:22px;padding:26px 18px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.03)}
.ig-logo{height:96px;width:auto}
.ig-logo-ymg{height:130px}
@media(max-width:640px){.ig-brands{grid-template-columns:1fr}.ig-logo{height:76px}.ig-logo-ymg{height:110px}}

.nl-box{position:relative;border-radius:20px;overflow:hidden;background:var(--ink);color:#fff;
  padding:60px 56px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.nl-box::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 100% at 0% 50%,rgba(201,171,103,.18) 0%,transparent 62%)}
.nl-box>*{position:relative;z-index:2}
.nl-h{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(26px,3vw,38px);line-height:1.12;margin-bottom:12px}
.nl-p{font-size:14.5px;line-height:1.7;color:var(--w55);max-width:400px}
.nl-form{display:flex;flex-direction:column;gap:12px}
.nl-row{display:flex;gap:10px}
.nl-inp{flex:1;background:var(--cream2,#F7F7F8);border:1px solid var(--line);border-radius:999px;
  padding:16px 22px;font-size:14px;color:var(--ink);font-family:inherit;outline:none;transition:.25s}
.nl-inp::placeholder{color:rgba(24,19,7,.3)}
.nl-inp:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,171,103,.2)}
.nl-btn{white-space:nowrap;border-radius:999px}
.on-dark .nl-btn{background:var(--gold);color:#17130A}
.on-dark .nl-btn:hover{background:var(--gold-lt)}
.nl-legal{font-size:11px;color:rgba(24,19,7,.2);margin-top:2px}
@media(max-width:768px){.nl-box{grid-template-columns:1fr;padding:44px 28px;gap:28px;text-align:center}
  .nl-p{margin:0 auto}.nl-row{flex-direction:column}.nl-btn{width:100%}}

.nl-overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}
.nl-overlay.nl-show{opacity:1;pointer-events:auto}
.nl-popup{position:relative;background:var(--cream);color:var(--ink);border:1.5px solid var(--line);border-radius:22px;padding:48px 44px;
  max-width:460px;width:90vw;text-align:center;overflow:hidden;box-shadow:0 24px 64px rgba(24,19,7,.18);
  transform:translateY(24px) scale(.96);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.nl-overlay.nl-show .nl-popup{transform:none}
.nl-popup::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 70% at 50% -10%,rgba(201,171,103,.10) 0%,transparent 62%)}
.nl-popup>*{position:relative;z-index:2}
.nl-close{position:absolute;top:16px;right:18px;z-index:3;background:none;border:none;color:rgba(24,19,7,.3);
  font-size:28px;line-height:1;cursor:pointer;transition:color .2s;padding:4px 8px}
.nl-close:hover{color:var(--ink)}
.nl-h{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(24px,3vw,34px);line-height:1.12;margin-bottom:12px}
.nl-p{font-size:14px;line-height:1.7;color:var(--w55,rgba(255,255,255,.55));max-width:360px;margin:0 auto 24px}
.nl-form{display:flex;flex-direction:column;gap:12px;align-items:center}
.nl-row{display:flex;gap:10px;width:100%}
.nl-inp{flex:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:999px;
  padding:16px 22px;font-size:14px;color:#fff;font-family:inherit;outline:none;transition:.25s}
.nl-inp::placeholder{color:rgba(255,255,255,.35)}
.nl-inp:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,171,103,.2)}
.nl-btn{white-space:nowrap;border-radius:999px}
.nl-legal{font-size:11px;color:rgba(255,255,255,.28);margin-top:2px}

.nl-popup .nl-p{color:rgba(24,19,7,.5)}
.nl-popup .nl-inp{background:var(--cream2,#F7F7F8);border:1px solid var(--line);color:var(--ink)}
.nl-popup .nl-inp::placeholder{color:rgba(24,19,7,.3)}
.nl-popup .nl-inp:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,171,103,.15)}
.nl-popup .nl-btn{background:var(--gold);color:#17130A}
.nl-popup .nl-btn:hover{background:var(--gold-lt)}
.nl-popup .nl-legal{color:rgba(24,19,7,.25)}
@media(max-width:500px){.nl-popup{padding:36px 24px}.nl-row{flex-direction:column}.nl-btn{width:100%}}

.mq{overflow:hidden;padding:20px 0;background:var(--ink);color:var(--gold-lt)}
.mq-tr{display:flex;gap:48px;white-space:nowrap;animation:sl 30s linear infinite}
.mq-tr span{font-family:'DM Sans',sans-serif;font-weight:900;font-size:16px;text-transform:uppercase;letter-spacing:2px}
@keyframes sl{to{transform:translateX(-50%)}}

.cw{max-width:660px;margin:0 auto}
.frm{display:flex;flex-direction:column;gap:12px}
.inp{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:16px 18px;font-size:15px;color:var(--ink);font-family:inherit;outline:none;transition:.25s}
.inp:focus{border-color:var(--gold-dp);box-shadow:0 0 0 3px rgba(201,171,103,.18)}
.inp::placeholder{color:var(--ink30)}
textarea.inp{resize:vertical;min-height:130px}

.ft-w{padding:60px 40px 30px;background:var(--ink);color:#fff}
.ft-in{max-width:var(--max);margin:0 auto;display:flex;justify-content:space-between;gap:34px;flex-wrap:wrap}
.ft-brand{font-family:'Playfair Display',serif;font-weight:900;font-size:29px;text-transform:uppercase;letter-spacing:1.2px}
.ft-brand em{font-style:normal;color:var(--gold-lt)}
.ft-tag{font-size:13px;color:var(--w32);margin-top:10px;max-width:270px;line-height:1.65}
.ft-c h5{font-size:10.5px;font-weight:900;letter-spacing:2.2px;text-transform:uppercase;color:var(--gold-lt);margin-bottom:14px}
.ft-c a{display:block;font-size:13.5px;color:var(--w55);padding:5px 0;transition:.2s}
.ft-c a:hover{color:#fff}
.ft-b{max-width:var(--max);margin:40px auto 0;padding-top:22px;border-top:1px solid var(--dline);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--w32)}
.ft-b a{color:var(--w55);transition:.2s}.ft-b a:hover{color:#fff}
.frm-legal{font-size:12px;line-height:1.6;color:var(--ink50);margin-top:2px}
.frm-legal a,.nl-legal a{color:inherit;text-decoration:underline}
@media(max-width:768px){.ft-w{padding:46px 20px 28px}}

.rv{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}
.rv.on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.mq-tr{animation:none}}

/* ---------- Correctifs mobile ---------- */
.frm-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.frm .inp{min-width:0;width:100%}
@media(max-width:560px){.frm-row{grid-template-columns:1fr}}
@media(max-width:900px){
  .hd:not(.on){background:#fff;backdrop-filter:none}
  .hero{padding-top:78px}
  .hero-media img{object-position:center 18%}
}

/* ---------- Newsletter (Brevo) ---------- */
.nl-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.nl-msg{font-weight:700;font-size:15px;line-height:1.5;color:var(--gold-dp);padding:14px 0}
.on-dark .nl-msg,#newsletter .nl-msg{color:var(--gold-lt)}

.sts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.st{display:flex;flex-direction:column;text-align:left;font-family:inherit;color:var(--ink);background:var(--card);
  border:1px solid var(--line);border-radius:18px;overflow:hidden;padding:0;cursor:pointer;transition:.4s cubic-bezier(.2,.8,.2,1)}
.st:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(24,19,7,.13)}
.st-dk{background:var(--ink);border-color:var(--ink);color:#fff}
.st-ph{display:block;aspect-ratio:4/3;overflow:hidden;background:#17130A}
.st-ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.st:hover .st-ph img{transform:scale(1.05)}
.st-b{display:flex;flex-direction:column;padding:24px 24px 26px;flex:1}
.st-k{font-size:10.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink50)}
.st-dk .st-k{color:var(--w55)}
.st-n{font-family:'Playfair Display',serif;font-weight:900;font-size:30px;line-height:1.1;margin-top:10px;text-transform:uppercase}
.st-s{font-family:'Playfair Display',serif;font-style:italic;font-size:15px;color:var(--gold-dp);margin-top:4px}
.st-dk .st-s{color:var(--gold-lt)}
.st-f{display:flex;align-items:baseline;gap:6px;margin-top:22px;font-size:11px;font-weight:800;color:var(--ink50)}
.st-f b{font-family:'Playfair Display',serif;font-weight:900;font-size:26px;color:var(--ink)}
.st-dk .st-f{color:var(--w55)}.st-dk .st-f b{color:#fff}
.st-f i{font-style:normal;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-dp)}
.st-dk .st-f i{color:var(--gold-lt)}
.st-note{text-align:center;margin-top:30px;font-size:13.5px;line-height:1.7;color:var(--ink50)}
.st-note b{color:var(--gold-dp)}
.sts-2{grid-template-columns:repeat(2,1fr);max-width:calc((100% - 44px) * 2 / 3 + 22px);margin:0 auto}
.st-city{margin-top:44px}.head+.st-city{margin-top:0}
@media(max-width:980px){.sts{grid-template-columns:1fr;max-width:440px;margin:0 auto}.sts-2{max-width:440px}}

.stm{border:0;padding:0;border-radius:20px;max-width:520px;width:calc(100% - 32px);max-height:calc(100svh - 32px);
  margin:auto;background:var(--card);color:var(--ink);box-shadow:0 24px 64px rgba(24,19,7,.3)}
.stm::backdrop{background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}
.stm-x{position:absolute;top:12px;right:12px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;cursor:pointer;
  background:rgba(255,255,255,.92);color:var(--ink);font-size:24px;line-height:1}
.stm-ph{width:100%;aspect-ratio:16/9;object-fit:cover}
.stm-b{padding:26px 30px 30px;display:flex;flex-direction:column}
.stm-n{font-family:'Playfair Display',serif;font-weight:900;font-size:34px;line-height:1.1;margin-top:10px;text-transform:uppercase}
.stm-d{margin-top:12px;font-size:14px;line-height:1.7;color:var(--ink70)}
.stm-l{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:8px}
.stm-l li{position:relative;padding-left:18px;font-size:14px;line-height:1.5}
.stm-l li::before{content:'';position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.stm-i{margin-top:18px;font-size:12.5px;line-height:1.6;color:var(--ink50)}
.stm-q{margin:8px 0 22px;font-family:'Playfair Display',serif;font-style:italic;font-size:15px}
@media(max-width:500px){.stm-b{padding:22px 20px 24px}}
