@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap');

:root{
  --bg:#f7f1ea; --fg:#171419; --card:#ffffff; --muted:#665e58;
  --primary:#a96d50; --primary-glow:#c69374; --primary-fg:#fffaf5;
  --border:#ddd1c5; --secondary:#efe7de;
  --gradient-gold:linear-gradient(135deg,#8e5a40,#c69374);
  --gradient-overlay:linear-gradient(180deg,rgba(247,241,234,.2) 0%,rgba(247,241,234,.96) 100%);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg); color:var(--fg);
  font-family:'Inter',sans-serif; line-height:1.6;
  background-image: radial-gradient(circle at 0% 0%, rgba(169,109,80,.07), transparent 35%), radial-gradient(circle at 100% 20%, rgba(169,109,80,.06), transparent 30%);
  min-height:100vh; display:flex; flex-direction:column;
}
main{flex:1}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}

h1,h2,h3,h4,h5,h6{font-family:'Cormorant Garamond',serif; font-weight:500; letter-spacing:-.01em; line-height:1.15}

.container{max-width:1280px; margin:0 auto; padding:0 24px}
@media(min-width:768px){.container{padding:0 40px}}

.eyebrow{text-transform:uppercase; letter-spacing:.3em; font-size:12px; color:var(--primary); font-weight:500}
.gold-text{background:var(--gradient-gold); -webkit-background-clip:text; background-clip:text; color:transparent}
.gold-divider{height:1px; width:64px; background:rgba(201,161,62,.7); margin:24px 0}
.section-title{font-size:clamp(2rem,4vw,3rem); font-weight:500; letter-spacing:-.01em}
.italic{font-style:italic}

/* Header */
.header{position:sticky; top:0; z-index:50; background:rgba(13,13,13,.85); backdrop-filter:blur(10px); border-bottom:1px solid rgba(61,51,34,.6)}
.nav-wrap{display:flex; align-items:center; justify-content:space-between; height:80px}
.logo-link{display:flex; align-items:center; gap:12px}
.logo-link img{height:40px; width:40px; object-fit:contain}
.logo-text{font-family:'Cormorant Garamond',serif; font-size:24px}
.logo-sub{font-size:10px; text-transform:uppercase; letter-spacing:.25em; color:var(--muted)}

.nav{display:none; align-items:center; gap:32px; font-size:14px}
@media(min-width:1024px){.nav{display:flex}}
.nav a{transition:color .2s}
.nav a:hover, .nav a.active{color:var(--primary)}

.dropdown{position:relative}
.dropdown-btn{background:none; border:none; color:inherit; cursor:pointer; font:inherit; display:flex; align-items:center; gap:4px; padding:0}
.dropdown-btn:hover{color:var(--primary)}
.dropdown-menu{position:absolute; left:0; top:100%; margin-top:8px; background:var(--card); border:1px solid var(--border); min-width:260px; box-shadow:0 20px 40px rgba(0,0,0,.5); opacity:0; visibility:hidden; transition:.2s; z-index:60}
.dropdown:hover .dropdown-menu{opacity:1; visibility:visible}
.dropdown-menu a{display:block; padding:12px 20px; font-size:14px; transition:.2s}
.dropdown-menu a:hover{background:var(--secondary); color:var(--primary)}
.dropdown-menu a.heading{color:var(--primary); border-bottom:1px solid rgba(61,51,34,.6)}

.btn{display:inline-flex; align-items:center; gap:8px; padding:14px 28px; transition:.2s; cursor:pointer; font:inherit; border:none}
.btn-gold{background:var(--gradient-gold); color:var(--primary-fg); font-weight:500}
.btn-gold:hover{opacity:.9}
.btn-outline{border:1px solid rgba(201,161,62,.6); color:var(--fg); background:transparent}
.btn-outline:hover{background:rgba(201,161,62,.1)}
.btn-sm{padding:10px 20px; font-size:14px}

.menu-btn{display:block; background:none; border:none; color:var(--fg); cursor:pointer; padding:8px}
@media(min-width:1024px){.menu-btn{display:none}}
.menu-btn svg{width:24px; height:24px}

.mobile-nav{display:none; border-top:1px solid var(--border); background:var(--card); max-height:80vh; overflow-y:auto}
.mobile-nav.open{display:block}
.mobile-nav-inner{display:flex; flex-direction:column; padding:24px; gap:12px; font-size:14px}
.mobile-nav a{padding:6px 0}
.mobile-nav .sub{padding-left:16px; color:var(--muted)}
.mobile-nav .heading{color:var(--primary); margin-top:8px}

/* Hero */
.hero{position:relative; min-height:640px; height:100vh; display:flex; align-items:center; overflow:hidden}
.hero-img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.hero-overlay{position:absolute; inset:0; background:var(--gradient-overlay)}
.hero-overlay-2{position:absolute; inset:0; background:rgba(13,13,13,.4)}
.hero-content{position:relative; z-index:1; max-width:768px; animation:fadeUp .7s ease-out both}
.hero h1{font-size:clamp(3rem,7vw,6rem); line-height:1.05; margin:24px 0}
.hero-sub{font-size:clamp(1rem,1.4vw,1.25rem); color:var(--muted); margin-bottom:40px; max-width:640px}
.hero-actions{display:flex; flex-wrap:wrap; gap:16px}
.scroll-hint{position:absolute; bottom:40px; left:50%; transform:translateX(-50%); font-size:11px; text-transform:uppercase; letter-spacing:.4em; color:var(--muted); animation:pulse 2s infinite}

@keyframes fadeUp{from{opacity:0; transform:translateY(20px)} to{opacity:1; transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:.5} 50%{opacity:1}}

/* Sections */
.section{padding:96px 0}
@media(min-width:768px){.section{padding:128px 0}}
.section-alt{background:rgba(28,28,28,.4); border-top:1px solid var(--border); border-bottom:1px solid var(--border)}

.stats{border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:rgba(18,18,18,.5)}
.stats-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:32px; padding:48px 0; text-align:center}
@media(min-width:768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}
.stat-num{font-family:'Cormorant Garamond',serif; font-size:clamp(2.25rem,4vw,3rem)}
.stat-label{font-size:11px; text-transform:uppercase; letter-spacing:.2em; color:var(--muted); margin-top:8px}

.grid-2{display:grid; grid-template-columns:1fr; gap:64px; align-items:center}
@media(min-width:768px){.grid-2{grid-template-columns:1fr 1fr}}

.grid-3{display:grid; grid-template-columns:1fr; gap:24px}
@media(min-width:768px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}}

.card{border:1px solid var(--border); background:rgba(18,18,18,.6); transition:.3s; overflow:hidden; display:block}
.card:hover{border-color:rgba(201,161,62,.6); box-shadow:0 10px 40px -15px rgba(201,161,62,.4)}
.card-img{aspect-ratio:4/3; overflow:hidden}
.card-img img{width:100%; height:100%; object-fit:cover; transition:transform .7s}
.card:hover .card-img img{transform:scale(1.05)}
.card-body{padding:24px}
.card-body h3{font-size:1.5rem; margin-bottom:8px; transition:color .2s}
.card:hover h3{color:var(--primary)}
.card-body p{font-size:14px; color:var(--muted); line-height:1.6}
.card-link{margin-top:16px; font-size:11px; text-transform:uppercase; letter-spacing:.2em; color:var(--primary); display:flex; align-items:center; gap:8px}

.card-pad{padding:32px}

.intro-img{width:100%; height:520px; object-fit:cover}
.intro-quote{position:absolute; bottom:-32px; left:-32px; background:var(--card); border:1px solid rgba(201,161,62,.4); padding:32px; max-width:300px; display:none}
@media(min-width:768px){.intro-quote{display:block}}
.intro-quote p{font-family:'Cormorant Garamond',serif; font-size:1.25rem}

.banner{position:relative; height:480px; display:flex; align-items:center; overflow:hidden}
.banner img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.banner-overlay{position:absolute; inset:0; background:rgba(13,13,13,.7)}
.banner-content{position:relative; z-index:1; max-width:640px}
.banner-content h2{font-size:clamp(2rem,4vw,3rem); margin:16px 0 20px}

.list-bullets{list-style:none; padding:0}
.list-bullets li{display:flex; gap:12px; padding:8px 0; color:var(--muted)}
.list-bullets li::before{content:"◆"; color:var(--primary); margin-top:2px}

.cta{border:1px solid rgba(201,161,62,.4); padding:48px 24px; text-align:center; background:rgba(18,18,18,.4); position:relative; overflow:hidden}
@media(min-width:768px){.cta{padding:80px}}
.cta-bg{position:absolute; inset:0; background:var(--gradient-gold); opacity:.05}
.cta > *{position:relative}
.cta h2{font-size:clamp(2rem,5vw,4rem); margin:24px 0; max-width:768px; margin-left:auto; margin-right:auto; line-height:1.1}
.cta p{color:var(--muted); max-width:560px; margin:0 auto 40px}

/* Page hero */
.page-hero{padding:96px 0 64px; border-bottom:1px solid var(--border); text-align:center}
.page-hero h1{font-size:clamp(2.5rem,6vw,4.5rem); margin:16px 0}
.page-hero p{color:var(--muted); max-width:640px; margin:0 auto; font-size:1.1rem}

/* Forms */
.form-grid{display:grid; gap:20px; max-width:640px}
.form-grid input, .form-grid textarea{
  background:#1c1c1c; border:1px solid var(--border); padding:14px 16px;
  color:var(--fg); font:inherit; border-radius:4px; width:100%;
}
.form-grid input:focus, .form-grid textarea:focus{outline:none; border-color:var(--primary)}
.form-grid textarea{min-height:140px; resize:vertical}
.form-grid label{font-size:13px; color:var(--muted); margin-bottom:6px; display:block; text-transform:uppercase; letter-spacing:.15em}

/* FAQ */
.faq-item{border-bottom:1px solid var(--border); padding:24px 0}
.faq-q{font-family:'Cormorant Garamond',serif; font-size:1.5rem; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px; user-select:none}
.faq-q::after{content:"+"; color:var(--primary); font-size:1.5rem; transition:transform .2s}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{display:none; color:var(--muted); margin-top:16px; line-height:1.7}
.faq-item.open .faq-a{display:block}

/* Disclaimer */
.disclaimer{border:1px solid rgba(201,161,62,.5); background:rgba(201,161,62,.05); padding:24px; margin:32px 0; border-radius:4px}
.disclaimer strong{color:var(--primary); display:block; margin-bottom:8px; text-transform:uppercase; letter-spacing:.15em; font-size:13px}

/* Footer */
.footer{border-top:1px solid var(--border); background:rgba(18,18,18,.7); padding:64px 0 32px; margin-top:64px}
.footer-grid{display:grid; gap:40px; grid-template-columns:1fr}
@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}
.footer h4{font-family:'Cormorant Garamond',serif; font-size:1.25rem; color:var(--primary); margin-bottom:16px}
.footer ul{list-style:none}
.footer li{padding:6px 0; font-size:14px; color:var(--muted)}
.footer li a:hover{color:var(--primary)}
.footer-bottom{border-top:1px solid var(--border); margin-top:48px; padding-top:24px; text-align:center; font-size:13px; color:var(--muted)}

/* Article */
.article{max-width:768px; margin:0 auto; padding:64px 24px}
.article h1{font-size:clamp(2rem,5vw,3.5rem); margin-bottom:24px}
.article .meta{color:var(--muted); font-size:13px; text-transform:uppercase; letter-spacing:.2em; margin-bottom:32px}
.article p{margin-bottom:20px; color:var(--fg); line-height:1.8}
.article h2{font-size:2rem; margin:48px 0 16px; color:var(--primary)}

.text-center{text-align:center}
.mb-4{margin-bottom:16px} .mb-6{margin-bottom:24px} .mb-8{margin-bottom:32px}
.mt-4{margin-top:16px} .mt-8{margin-top:32px}
.relative{position:relative}


/* V2 refresh */
body{
  background-image:
    radial-gradient(circle at 10% 0%, rgba(181,109,88,.12), transparent 45%),
    radial-gradient(circle at 85% 100%, rgba(230,176,141,.08), transparent 45%),
    linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0));
}
.header{background:rgba(11,11,16,.88); border-bottom:1px solid rgba(70,52,58,.75)}
.card, .cta, .dropdown-menu{border-radius:18px}
.btn{border-radius:999px}
.hero{min-height:700px}
.hero-content{max-width:820px}
.hero h1{max-width:820px}
.hero-tag{
  display:inline-flex; align-items:center; gap:10px; padding:10px 16px;
  border:1px solid rgba(230,176,141,.35); background:rgba(255,255,255,.04);
  border-radius:999px; color:var(--fg); font-size:13px; margin-top:18px;
}
.hero-disclaimer{
  margin-top:24px; max-width:760px; padding:14px 16px; font-size:14px;
  border-left:3px solid var(--primary); background:rgba(255,255,255,.04); border-radius:12px;
}
.feature-highlight{
  display:grid; grid-template-columns:1.1fr .9fr; gap:42px; align-items:center;
}
@media(max-width:900px){.feature-highlight{grid-template-columns:1fr}}
.feature-box{padding:30px; border:1px solid var(--border); background:rgba(19,19,26,.75); border-radius:22px}


/* ===== Editorial V2 homepage ===== */
body.editorial-home .header{background:rgba(247,241,234,.86); border-bottom:1px solid rgba(169,109,80,.18); color:var(--fg)}
body.editorial-home .nav a:hover, body.editorial-home .nav a.active, body.editorial-home .dropdown-btn:hover{color:var(--primary)}
body.editorial-home .dropdown-menu{background:#fffaf6; border:1px solid var(--border)}
body.editorial-home .dropdown-menu a:hover{background:#f4ece4}
body.editorial-home .btn-outline{border-color:#bdaea1; color:var(--fg)}
body.editorial-home .btn-outline:hover{background:#f0e6dc}
.editorial-hero{padding:64px 0 32px}
.editororial-home .section{padding:88px 0}
.editorial-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center}
.editorial-copy h1{font-size:clamp(3rem,6vw,5.9rem); line-height:.95; margin:18px 0 24px; letter-spacing:-.03em}
.editorial-copy .lead{font-size:1.13rem; color:#403834; max-width:720px}
.editorial-note,.micro-disclaimer{font-size:.95rem; color:#554c46}
.editorial-note{background:#f2e8df; border-left:3px solid var(--primary); border-radius:14px; padding:14px 16px; margin:22px 0}
.micro-disclaimer{margin-top:18px; max-width:670px}
.editorial-visual{position:relative; padding:40px 0 0 24px}
.hero-figure{overflow:hidden; border-radius:28px; box-shadow:0 24px 60px rgba(28,20,17,.12); background:#fff}
.hero-figure.tall img{width:100%; aspect-ratio:0.88; object-fit:cover}
.floating-card{position:absolute; left:-10px; bottom:30px; max-width:300px; background:rgba(255,250,245,.97); border:1px solid var(--border); box-shadow:0 18px 40px rgba(25,20,18,.08); border-radius:22px; padding:22px}
.floating-card h3{font-size:1.8rem; margin:8px 0 10px}
.editorial-stats{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; padding:22px 0 8px; border-top:1px solid rgba(169,109,80,.18)}
.editorial-stats > div{padding-top:18px; border-top:2px solid rgba(169,109,80,.34)}
.stat-num{display:block; font-family:'Cormorant Garamond',serif; font-size:2rem; color:var(--primary)}
.stat-label{display:block; font-size:.92rem; color:var(--muted)}
.feature-grid{display:grid; grid-template-columns:.95fr 1.05fr; gap:54px; align-items:center}
.feature-media img,.casino-media img{width:100%; border-radius:28px; aspect-ratio:1/1.08; object-fit:cover; box-shadow:0 20px 50px rgba(25,20,18,.08)}
.feature-copy p,.casino-copy p,.section-side{color:#504843; margin:0 0 16px}
.text-link{color:var(--primary); font-weight:600}
.section-head{display:grid; grid-template-columns:1.2fr .8fr; gap:40px; align-items:end; margin-bottom:30px}
.magazine-grid{display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:24px}
.mag-card{background:#fffaf6; border:1px solid var(--border); border-radius:24px; overflow:hidden; box-shadow:0 8px 30px rgba(25,20,18,.04)}
.mag-card.large{grid-row:span 2}
.mag-card img{width:100%; aspect-ratio:1/1; object-fit:cover}
.mag-card.large img{aspect-ratio:1/1.3}
.mag-card-body{padding:22px}
.mag-card h3{font-size:2rem; margin:8px 0 10px}
.mag-card p{color:#5f5750; margin-bottom:12px}
.casino-grid{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center}
.caption-box{margin-top:12px; color:#5e5550; font-size:.95rem}
.columns-grid{display:grid; grid-template-columns:.95fr 1.05fr; gap:48px; align-items:start}
.column-list{display:grid; gap:14px}
.column-list a{display:flex; gap:16px; align-items:flex-start; padding:16px 0; border-top:1px solid rgba(169,109,80,.18); font-size:1.05rem}
.column-list span{font-family:'Cormorant Garamond',serif; font-size:1.7rem; color:var(--primary); line-height:1}
.cta-editorial-box{display:grid; grid-template-columns:1fr 1fr; gap:36px; padding:42px; background:#1d1717; color:#f8f2eb; border-radius:32px}
.cta-editorial-box p{color:#d8cdc3; margin-bottom:20px}
.footer{background:#1b1717; color:#f7f1ea}
.footer .logo-sub,.footer p,.footer li,.footer a{color:#d4c5ba}
.footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08); color:#d4c5ba}
@media(max-width:1100px){
  .editorial-grid,.feature-grid,.casino-grid,.columns-grid,.section-head,.cta-editorial-box{grid-template-columns:1fr}
  .magazine-grid{grid-template-columns:1fr 1fr}
  .editorial-stats{grid-template-columns:1fr 1fr}
  .floating-card{position:relative; left:auto; bottom:auto; margin-top:-20px}
}
@media(max-width:720px){
  .editorial-hero{padding-top:36px}
  .editorial-copy h1{font-size:clamp(2.6rem,13vw,4rem)}
  .magazine-grid,.editorial-stats{grid-template-columns:1fr}
  .editorial-visual{padding-left:0}
  .cta-editorial-box{padding:26px}
}
