@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,600;0,700;1,300;1,600&family=Syne:wght@400;600;700;800&family=JetBrains+Mono:wght@300;400&display=swap');

:root{
  --gold:#C9A84C;--gl:#E8C97A;--gd:#8B6914;
  --gg:rgba(201,168,76,.22);--gf:rgba(201,168,76,.07);
  --n0:#06060C;--n1:#0D0D18;--n2:#141420;--n3:#1C1C2A;--n4:#24243A;
  --w:#F5F0E8;--w2:rgba(245,240,232,.55);--w3:rgba(245,240,232,.12);
  --ok:#52C98A;--er:#E05252;
  --fd:'Cormorant Garamond',Georgia,serif;
  --fu:'Syne',sans-serif;--fm:'JetBrains Mono',monospace;
  --ease:cubic-bezier(.23,1,.32,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{background:var(--n0);color:var(--w);font-family:var(--fu);overflow-x:hidden;cursor:none;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:var(--n1);}::-webkit-scrollbar-thumb{background:var(--gd);border-radius:2px;}

/* CURSOR */
#cur{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:99999;mix-blend-mode:difference;}
#curR{position:fixed;width:34px;height:34px;border:1px solid rgba(201,168,76,.4);border-radius:50%;pointer-events:none;z-index:99998;transition:width .3s,height .3s,border-color .3s;}
#curR.h{width:52px;height:52px;border-color:var(--gold);}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:18px 60px;display:flex;align-items:center;justify-content:space-between;background:rgba(6,6,12,.88);backdrop-filter:blur(20px);border-bottom:1px solid rgba(201,168,76,.07);transition:all .4s;}
nav.sc{padding:13px 60px;background:rgba(6,6,12,.97);}
.logo{font-family:var(--fd);font-size:22px;font-weight:700;color:var(--w);text-decoration:none;}
.logo em{color:var(--gold);font-style:italic;}
.nlinks{display:flex;gap:30px;align-items:center;}
.nlinks a{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--w2);text-decoration:none;transition:color .3s;font-weight:600;position:relative;}
.nlinks a::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s;}
.nlinks a:hover,.nlinks a.on{color:var(--gold);}
.nlinks a:hover::after,.nlinks a.on::after{width:100%;}
.nbtn{padding:9px 22px;background:linear-gradient(135deg,var(--gd),var(--gold));color:var(--n0);border:none;border-radius:6px;font-family:var(--fu);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s;text-decoration:none;display:inline-block;}
.nbtn:hover{box-shadow:0 8px 22px var(--gg);transform:translateY(-1px);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none;}
.burger span{width:22px;height:1.5px;background:var(--gold);display:block;transition:all .3s;}

/* MOBILE NAV */
.mnav{position:fixed;inset:0;background:var(--n1);z-index:990;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform .5s var(--ease);}
.mnav.on{transform:translateX(0);}
.mnav a{font-family:var(--fd);font-size:30px;font-weight:600;color:var(--w);text-decoration:none;transition:color .2s;}
.mnav a:hover{color:var(--gold);}
.mnav-x{position:absolute;top:22px;right:26px;background:none;border:none;color:var(--w2);font-size:24px;cursor:pointer;}

/* WA FLOAT */
.waf{position:fixed;bottom:86px;right:24px;width:52px;height:52px;background:linear-gradient(135deg,#25D366,#128C7E);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 6px 20px rgba(37,211,102,.4);cursor:pointer;z-index:500;text-decoration:none;transition:transform .3s;animation:wap 2.5s infinite;}
.waf:hover{transform:scale(1.1);}
@keyframes wap{0%,100%{box-shadow:0 6px 20px rgba(37,211,102,.4);}50%{box-shadow:0 6px 32px rgba(37,211,102,.7),0 0 0 8px rgba(37,211,102,.07);}}

/* COOKIE */
.ckb{position:fixed;bottom:0;left:0;right:0;background:var(--n3);border-top:1px solid rgba(201,168,76,.16);padding:15px 48px;display:flex;align-items:center;justify-content:space-between;gap:14px;z-index:4000;transform:translateY(100%);transition:transform .5s var(--ease);flex-wrap:wrap;}
.ckb.on{transform:translateY(0);}
.ckb p{font-size:12px;color:var(--w2);line-height:1.55;max-width:640px;}
.ckb p a{color:var(--gold);text-decoration:none;}
.ckbtns{display:flex;gap:9px;flex-shrink:0;}
.ck{padding:8px 20px;border-radius:5px;font-family:var(--fu);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s;}
.cky{background:var(--gold);color:var(--n0);border:none;}.cky:hover{background:var(--gl);}
.ckn{background:transparent;color:var(--w2);border:1px solid rgba(245,240,232,.18);}.ckn:hover{border-color:var(--gold);color:var(--gold);}

/* MODALS */
.mov{position:fixed;inset:0;background:rgba(6,6,12,.92);backdrop-filter:blur(12px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:40px;opacity:0;pointer-events:none;transition:opacity .3s;}
.mov.on{opacity:1;pointer-events:all;}
.mbox{background:var(--n3);border:1px solid rgba(201,168,76,.2);border-radius:18px;padding:48px;max-width:660px;width:100%;max-height:85vh;overflow-y:auto;transform:scale(.96);transition:transform .4s var(--ease);position:relative;}
.mov.on .mbox{transform:scale(1);}
.mbox::-webkit-scrollbar{width:3px;}.mbox::-webkit-scrollbar-thumb{background:var(--gold);}
.mcl{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--w2);font-size:20px;cursor:pointer;}.mcl:hover{color:var(--gold);}
.mh{font-family:var(--fd);font-size:34px;font-weight:600;margin-bottom:20px;}
.mh em{font-style:italic;color:var(--gold);}
.mcon p{font-size:13px;color:var(--w2);line-height:1.8;margin-bottom:8px;}
.mcon h4{font-size:12px;font-weight:700;color:var(--gold);margin:16px 0 5px;letter-spacing:1px;text-transform:uppercase;}

/* POPUP */
.pov{position:fixed;inset:0;background:rgba(6,6,12,.9);backdrop-filter:blur(10px);z-index:8000;display:flex;align-items:flex-start;justify-content:center;padding-top:80px;opacity:0;pointer-events:none;transition:opacity .4s;}
.pov.on{opacity:1;pointer-events:all;}
.pbox{background:var(--n3);border:1px solid rgba(201,168,76,.22);border-radius:20px;padding:48px;max-width:480px;width:90%;transform:translateY(-22px);transition:transform .45s var(--ease);position:relative;}
.pov.on .pbox{transform:translateY(0);}
.px{position:absolute;top:14px;right:16px;background:none;border:none;color:var(--w2);font-size:20px;cursor:pointer;}.px:hover{color:var(--gold);}

/* BTN */
.btn{padding:14px 40px;border-radius:8px;font-family:var(--fu);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:all .4s;text-decoration:none;display:inline-block;border:none;}
.btn-g{background:linear-gradient(135deg,var(--gd) 0%,var(--gold) 50%,var(--gl) 100%);background-size:200% 100%;background-position:100%;color:var(--n0);box-shadow:0 8px 24px var(--gg);}
.btn-g:hover{background-position:0%;box-shadow:0 14px 36px rgba(201,168,76,.5);transform:translateY(-3px);}
.btn-o{background:transparent;color:var(--w);border:1px solid rgba(245,240,232,.2);}
.btn-o:hover{border-color:var(--gold);color:var(--gold);}

/* SEC */
.sec{padding:120px 60px;}
.lbl{font-family:var(--fm);font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;display:block;margin-bottom:12px;}
.ht{font-family:var(--fd);font-size:clamp(36px,5.5vw,70px);font-weight:300;line-height:.96;letter-spacing:-2px;color:var(--w);margin-bottom:16px;}
.ht em{font-style:italic;color:var(--gold);}
.sub{font-size:14px;color:var(--w2);line-height:1.85;max-width:520px;}
.gbg{position:relative;overflow:hidden;}
.gbg::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.03) 1px,transparent 1px);background-size:80px 80px;pointer-events:none;z-index:0;}
.gbg > *{position:relative;z-index:1;}

/* REVEAL */
.rv{opacity:0;transform:translateY(30px);transition:opacity .85s var(--ease),transform .85s var(--ease);}
.rv.v{opacity:1;transform:translateY(0);}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}.d4{transition-delay:.4s;}.d5{transition-delay:.5s;}

/* PHOTO SLOT */
.ph-slot{background:var(--n3);border:1px dashed rgba(201,168,76,.2);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;cursor:pointer;overflow:hidden;position:relative;transition:border-color .3s;}
.ph-slot:hover{border-color:rgba(201,168,76,.45);}
.ph-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.ph-slot input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.phi{font-size:22px;opacity:.28;}.pht{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--w2);opacity:.45;}

/* MARQUEE */
.mq{background:linear-gradient(90deg,var(--gd),var(--gold),var(--gl),var(--gold));background-size:300%;animation:mqbg 7s linear infinite;padding:12px 0;overflow:hidden;}
@keyframes mqbg{0%{background-position:0%}100%{background-position:300%}}
.mq-in{display:flex;gap:40px;white-space:nowrap;animation:mqm 22s linear infinite;}
.mqi{font-family:var(--fm);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--n0);font-weight:700;flex-shrink:0;}
.mqi::before{content:"✦  ";}
@keyframes mqm{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* FOOTER */
footer{background:var(--n0);border-top:1px solid rgba(201,168,76,.09);padding:60px;}
.fg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;}
.fb-name{font-family:var(--fd);font-size:24px;font-weight:600;}
.fb-name em{font-style:italic;color:var(--gold);}
.fb-tag{font-size:10px;color:var(--w2);margin-top:5px;letter-spacing:2px;text-transform:uppercase;font-family:var(--fu);}
.fb-desc{font-size:13px;color:var(--w2);line-height:1.8;margin-top:12px;}
.fc h5{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-family:var(--fm);margin-bottom:16px;}
.fc a{display:block;font-size:13px;color:var(--w2);text-decoration:none;margin-bottom:9px;transition:color .2s;cursor:pointer;}
.fc a:hover{color:var(--gold);}
.fb-bot{border-top:1px solid rgba(201,168,76,.06);margin-top:44px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.fc-copy{font-size:11px;color:rgba(245,240,232,.18);letter-spacing:1px;}

/* CARDS */
.card{background:var(--n3);border:1px solid rgba(201,168,76,.08);border-radius:14px;transition:all .4s var(--ease);position:relative;overflow:hidden;}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .3s;}
.card:hover{border-color:rgba(201,168,76,.28);transform:translateY(-6px);box-shadow:0 24px 50px rgba(0,0,0,.4);}
.card:hover::before{opacity:1;}

/* ACCORDION */
.aci{background:var(--n3);border:1px solid rgba(201,168,76,.08);border-radius:12px;overflow:hidden;margin-bottom:9px;transition:all .4s var(--ease);cursor:pointer;}
.aci:hover{border-color:rgba(201,168,76,.26);transform:translateY(-2px);}
.aci.on{border-color:rgba(201,168,76,.36);box-shadow:0 16px 40px rgba(201,168,76,.08);}
.ach{display:flex;align-items:center;gap:14px;padding:19px 20px;user-select:none;}
.ac-ico{width:40px;height:40px;border-radius:9px;background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.14);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;transition:all .3s;}
.aci.on .ac-ico{background:linear-gradient(135deg,var(--gd),var(--gold));box-shadow:0 5px 16px rgba(201,168,76,.26);}
.act{flex:1;}
.act-t{font-size:14px;font-weight:700;color:var(--w);}
.act-s{font-size:11px;color:var(--w2);margin-top:1px;}
.ac-arr{color:var(--gold);font-size:11px;transition:transform .4s;flex-shrink:0;}
.aci.on .ac-arr{transform:rotate(180deg);}
.acb{max-height:0;overflow:hidden;transition:max-height .5s var(--ease);}
.aci.on .acb{max-height:200px;}
.acc{margin:0 20px 20px;padding-top:14px;border-top:1px solid rgba(201,168,76,.07);font-size:13px;color:var(--w2);line-height:1.8;}

@media(max-width:1024px){nav{padding:15px 22px;}nav.sc{padding:12px 22px;}.sec{padding:80px 22px;}footer{padding:44px 22px;}.fg{grid-template-columns:1fr 1fr;gap:30px;}}
@media(max-width:768px){.nlinks,.nbtn{display:none;}.burger{display:flex;}.sec{padding:68px 18px;}footer{padding:38px 18px;}.fg{grid-template-columns:1fr;}.fb-bot{flex-direction:column;text-align:center;}}