:root{
  --noir:#0a0a0a;--noir2:#111111;--rouge:#c0392b;--rouge-light:#e74c3c;
  --or:#d4af37;--or-light:#f0d060;--blanc:#f5f0e8;--gris:#8a8a8a;
  --gris-light:#c5c0b8;--border:rgba(212,175,55,0.2);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  background:var(--noir);color:var(--blanc);line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--or);text-decoration:none;transition:color .2s}
a:hover{color:var(--or-light)}
img{display:block;max-width:100%;height:auto}
.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}

/* NAV */
.nav{
  position:sticky;top:0;z-index:100;background:rgba(10,10,10,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--border);
}
.nav-inner{display:flex;justify-content:space-between;align-items:center;height:64px}
.nav-logo{font-family:'Playfair Display',serif;font-size:1.3rem;color:var(--blanc);font-weight:600}
.nav-logo span{color:var(--or)}
.nav-links{display:flex;gap:1.8rem;align-items:center;font-size:.88rem}
.nav-links a{color:var(--gris-light)}
.nav-links a:hover{color:var(--or)}
.nav-cta{
  padding:.6rem 1.2rem;background:var(--rouge);color:var(--blanc)!important;
  border-radius:2px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;
}
.nav-cta:hover{background:var(--rouge-light);color:var(--blanc)!important}
@media(max-width:720px){.nav-links a:not(.nav-cta){display:none}}

/* HERO */
.lp-hero{
  padding:4.5rem 0 3.5rem;text-align:center;position:relative;
  background:
    radial-gradient(circle at 50% 20%, rgba(192,57,43,.18), transparent 55%),
    linear-gradient(180deg, var(--noir) 0%, var(--noir2) 100%);
  border-bottom:1px solid var(--border);
}
.lp-hero .eyebrow{
  display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.25em;
  text-transform:uppercase;color:var(--or);margin-bottom:1rem;
}
.lp-hero h1{
  font-family:'Playfair Display',serif;font-weight:700;line-height:1.15;
  font-size:clamp(2rem,5vw,3.4rem);margin:0 auto 1rem;max-width:900px;
}
.lp-hero h1 span{color:var(--or)}
.lp-hero .lede{
  font-size:clamp(1.02rem,1.8vw,1.18rem);color:var(--gris-light);
  max-width:720px;margin:0 auto 2rem;font-weight:300;
}
.lp-hero .cta-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btn-primary,.btn-outline{
  display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.8rem;
  font-weight:600;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;
  border-radius:2px;transition:all .25s;border:1px solid transparent;
}
.btn-primary{background:var(--rouge);color:var(--blanc)!important}
.btn-primary:hover{background:var(--rouge-light);transform:translateY(-2px)}
.btn-outline{border-color:var(--or);color:var(--or)!important}
.btn-outline:hover{background:rgba(212,175,55,.08);transform:translateY(-2px)}

/* CONTENT */
.lp-main{padding:3.5rem 0}
.lp-main section{margin-bottom:3rem}
.lp-main h2{
  font-family:'Playfair Display',serif;font-weight:600;font-size:clamp(1.5rem,3vw,2.1rem);
  color:var(--blanc);margin-bottom:1rem;line-height:1.2;
}
.lp-main h2 span{color:var(--or)}
.lp-main h3{
  font-family:'Playfair Display',serif;font-size:1.25rem;color:var(--or);
  margin:1.4rem 0 .6rem;font-weight:600;
}
.lp-main p{color:var(--gris-light);margin-bottom:1rem;max-width:70ch}
.lp-main p strong{color:var(--blanc);font-weight:600}
.lp-main ul{margin:1rem 0 1.2rem 1.2rem;color:var(--gris-light)}
.lp-main ul li{margin-bottom:.5rem}
.divider{
  width:60px;height:2px;margin:1rem 0 1.5rem;
  background:linear-gradient(90deg,var(--rouge),var(--or));
}

/* INFO GRID */
.info-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1.2rem;margin:1.5rem 0 2rem;
}
.info-card{
  padding:1.4rem;border:1px solid var(--border);border-radius:4px;
  background:rgba(255,255,255,.02);
}
.info-card strong{display:block;color:var(--or);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.4rem}
.info-card span{color:var(--blanc);font-family:'Playfair Display',serif;font-size:1.05rem}

/* CTA BLOCK */
.cta-block{
  margin:2.5rem 0 1rem;padding:2rem;text-align:center;border-radius:4px;
  border:1px solid var(--border);
  background:linear-gradient(180deg,rgba(192,57,43,.08),rgba(212,175,55,.04));
}
.cta-block h2{color:var(--blanc);font-size:clamp(1.4rem,2.5vw,1.8rem);margin-bottom:.6rem}
.cta-block p{color:var(--gris-light);margin:0 auto 1.4rem;max-width:560px}

/* BREADCRUMB */
.crumbs{font-size:.8rem;color:var(--gris);margin:1.5rem 0}
.crumbs a{color:var(--gris-light)}
.crumbs a:hover{color:var(--or)}
.crumbs span[aria-current]{color:var(--or)}

/* FAQ */
.faq details{
  padding:1rem 1.2rem;border:1px solid var(--border);border-radius:4px;
  margin-bottom:.7rem;background:rgba(255,255,255,.02);
}
.faq summary{
  cursor:pointer;color:var(--blanc);font-weight:600;font-family:'Playfair Display',serif;
  font-size:1.05rem;list-style:none;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';float:right;color:var(--or);font-size:1.3rem;line-height:1;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin-top:.7rem}

/* FOOTER */
footer{
  border-top:1px solid var(--border);padding:2.5rem 0 2rem;margin-top:3rem;
  background:var(--noir2);
}
.footer-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:1.8rem;margin-bottom:1.5rem;
}
.footer-grid h4{
  font-family:'Playfair Display',serif;color:var(--or);font-size:.95rem;
  margin-bottom:.8rem;letter-spacing:.08em;
}
.footer-grid p,.footer-grid li{color:var(--gris-light);font-size:.88rem;margin-bottom:.4rem;list-style:none}
.footer-grid a{color:var(--gris-light)}
.footer-grid a:hover{color:var(--or)}
.footer-bottom{
  border-top:1px solid var(--border);padding-top:1.2rem;
  text-align:center;color:var(--gris);font-size:.78rem;
}

/* RELATED */
.related{margin:3rem 0 1rem;padding:1.8rem;border:1px dashed var(--border);border-radius:4px}
.related h3{color:var(--or);margin-top:0;font-family:'Playfair Display',serif;font-size:1.1rem}
.related ul{margin:.8rem 0 0;padding:0;list-style:none}
.related li{margin-bottom:.4rem}
.related a{color:var(--blanc)}
.related a:hover{color:var(--or)}
