:root{--black:#0a0a0a;--ink:#121212;--panel:#171717;--line:#2a2620;--gold:#c9a24a;--gold-2:#e6c77a;--text:#e9e4d8;--muted:#a59f92;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Helvetica,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.75}
a{color:var(--gold-2);text-decoration:none}a:hover{color:var(--gold)}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin:0 auto}
h1,h2,h3{font-family:var(--serif);font-weight:500;color:#fff;line-height:1.15}
h1{font-size:clamp(2.6rem,6vw,4.6rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.6rem}
.eyebrow{font-size:.75rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);display:inline-block;margin-bottom:1rem}
.gold{color:var(--gold-2)}
.rule{width:64px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:1.4rem 0}
/* header */
.topbar{border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.topbar .container{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;flex-wrap:wrap}
header.site{position:sticky;top:0;z-index:50;background:rgba(10,10,10,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.site .container{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0}
.brand{font-family:var(--serif);font-size:1.45rem;color:#fff;letter-spacing:.02em}
.brand span{color:var(--gold)}
nav.main a{color:var(--text);margin-left:2rem;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase}
nav.main a:hover,nav.main a.active{color:var(--gold)}
.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--gold);padding:.4rem .7rem;font-size:1.1rem;cursor:pointer}
/* buttons */
.btn{display:inline-block;padding:1rem 2.1rem;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--gold);transition:.3s;cursor:pointer;font-family:var(--sans)}
.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:var(--black)}
.btn-gold:hover{color:var(--black);filter:brightness(1.1)}
.btn-ghost{color:var(--gold-2);background:transparent}.btn-ghost:hover{background:var(--gold);color:var(--black)}
/* hero */
.hero{position:relative;min-height:88vh;display:flex;align-items:center;background:url(../img/hero.jpg) center/cover}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.95) 0%,rgba(5,5,5,.75) 50%,rgba(5,5,5,.35) 100%)}
.hero .container{position:relative}
.hero p.lead{max-width:600px;font-size:1.15rem;color:#d6d0c2;margin:1.5rem 0 2.5rem}
.hero .actions{display:flex;gap:1rem;flex-wrap:wrap}
.page-hero{padding:6rem 0 4rem;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at top right,rgba(201,162,74,.12),transparent 60%)}
.page-hero p{color:var(--muted);max-width:700px;margin-top:1rem}
/* sections */
section{padding:6rem 0}
.alt{background:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.frame{position:relative}.frame img{width:100%;aspect-ratio:4/3;object-fit:cover}
.frame:after{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--gold);z-index:-1}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem}
.card{background:var(--panel);border:1px solid var(--line);padding:2.4rem;transition:.3s}
.card:hover{border-color:var(--gold);transform:translateY(-4px)}
.card .num{font-family:var(--serif);font-size:2.4rem;color:var(--gold)}
.card h3{margin:.6rem 0 .8rem}.card p{color:var(--muted);font-size:.95rem}
.center{text-align:center}.center .rule{margin:1.4rem auto}
.muted{color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}
.stats div{padding:2rem;text-align:center;border-right:1px solid var(--line)}.stats div:last-child{border:none}
.stats strong{display:block;font-family:var(--serif);font-size:2.2rem;color:var(--gold-2);font-weight:500}
.stats span{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.cta{text-align:center;background:linear-gradient(135deg,#15120b,#0a0a0a);border-top:1px solid var(--gold);border-bottom:1px solid var(--line)}
.cta p{color:var(--muted);max-width:620px;margin:1rem auto 2rem}
/* legal */
.legal{max-width:860px}
.legal h2{font-size:1.8rem;margin:2.6rem 0 .8rem;color:var(--gold-2)}
.legal h3{font-size:1.3rem;margin:1.6rem 0 .5rem}
.legal p,.legal li{color:#cfc9bc;margin-bottom:.8rem}
.legal ul{padding-left:1.4rem}
.legal .updated{font-size:.85rem;color:var(--muted)}
table.info{width:100%;border-collapse:collapse;margin:1.5rem 0}
table.info td{border:1px solid var(--line);padding:.9rem 1.1rem;vertical-align:top}
table.info td:first-child{color:var(--gold);width:38%;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
/* faq */
details{border:1px solid var(--line);background:var(--panel);margin-bottom:1rem}
summary{cursor:pointer;padding:1.3rem 1.6rem;font-family:var(--serif);font-size:1.3rem;color:#fff;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:1.5rem;color:var(--gold)}
details[open] summary:after{content:"–"}
details>div{padding:0 1.6rem 1.4rem;color:var(--muted)}
/* form */
.form{background:var(--panel);border:1px solid var(--line);padding:2.6rem}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.form label{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem}
.form input,.form textarea,.form select{width:100%;background:var(--black);border:1px solid var(--line);color:var(--text);padding:.9rem 1rem;font-family:var(--sans);font-size:.95rem;margin-bottom:1.2rem}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--gold)}
.form .check{display:flex;gap:.7rem;align-items:flex-start;font-size:.85rem;color:var(--muted);margin-bottom:1.4rem}
.form .check input{width:auto;margin:.35rem 0 0}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.notice{padding:1rem 1.3rem;margin-bottom:1.5rem;border:1px solid var(--gold);background:rgba(201,162,74,.08)}
.notice.err{border-color:#b5523b;background:rgba(181,82,59,.1)}
.contact-list p{margin-bottom:1.2rem}.contact-list strong{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
/* footer */
footer.site{background:#060606;border-top:1px solid var(--line);padding:4.5rem 0 1.5rem;font-size:.9rem}
.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2.5rem}
footer h4{font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem;font-weight:600}
footer ul{list-style:none}footer li{margin-bottom:.55rem}footer li a{color:var(--muted)}footer li a:hover{color:var(--gold-2)}
footer p{color:var(--muted)}
.legalbar{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.2rem 0;margin:3rem 0 1.5rem}
.legalbar a{font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-2)}
.copy{text-align:center;font-size:.8rem;color:#777}
/* cookie banner */
#cookie{position:fixed;bottom:1.2rem;left:1.2rem;right:1.2rem;max-width:560px;background:var(--panel);border:1px solid var(--gold);padding:1.4rem;z-index:99;display:none;font-size:.88rem}
#cookie p{color:var(--muted);margin-bottom:1rem}#cookie .btn{padding:.7rem 1.4rem}
@media(max-width:900px){
.split,.fgrid{grid-template-columns:1fr;gap:2.5rem}.grid3,.grid4{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}
.form .row{grid-template-columns:1fr}.menu-toggle{display:block}
nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--black);border-bottom:1px solid var(--line);padding:1rem 4%}
nav.main.open{display:block}nav.main a{display:block;margin:.8rem 0}
section{padding:4rem 0}.frame:after{display:none}}
