:root {
  --bg: #050505;
  --bg2: #0a0a0a;
  --bg3: #121212;
  --bg4: #1a1a1a;
  
  --t1: #F5F5F0;
  --t2: #a0a0a0;
  --t3: #555555;
  --t4: #333333;
  
  --ac: #C5A059;
  --ach: #D4AF37;
  
  --acs: rgba(197, 160, 89, 0.08);
  --bd: rgba(255, 255, 255, 0.04);
  --bd2: rgba(255, 255, 255, 0.08);
  
  --f-head: 'Playfair Display', serif;
  --f-body: 'Montserrat', system-ui, -apple-system, sans-serif;
  
  --sec: clamp(120px, 16vw, 240px);
  --p: clamp(24px, 5vw, 80px);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}
body{font-family:var(--f-body);font-weight:300;line-height:1.7;color:var(--t1);background:var(--bg);overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:var(--f-head);font-weight:400;line-height:1.2;letter-spacing:-0.02em}
::selection{background:var(--ac);color:#000}
*:focus-visible{outline:1px solid var(--ac);outline-offset:4px}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding-left:var(--p);padding-right:var(--p);position:relative;z-index:1}
.dv{display:flex;align-items:center;gap:2rem;margin-bottom:clamp(3rem,6vw,5rem)}
.dv::before,.dv::after{content:'';flex:1;height:1px;background:var(--bd)}
.dv span{font-family:var(--f-body);font-size:0.65rem;font-weight:500;letter-spacing:0.25em;text-transform:uppercase;color:var(--t3);white-space:nowrap}
.btn-m{display:inline-flex;align-items:center;gap:0.75rem;font-family:var(--f-body);font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:500;padding:1.125rem 2.5rem;background:transparent;color:var(--t1);border:1px solid var(--bd2);cursor:pointer;transition:all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);border-radius:2px}
.btn-m:hover{background:var(--t1);color:#000;border-color:var(--t1)}
.btn-g{background:var(--ac);color:#000;border:none}
.btn-g:hover{background:var(--ach);color:#000;transform:translateY(-2px);box-shadow:0 10px 30px rgba(197, 160, 89, 0.15)}

/* Motion that whispers */
.rv{opacity:0;transform:translateY(30px);transition:opacity 1.2s cubic-bezier(0.215, 0.610, 0.355, 1), transform 1.2s cubic-bezier(0.215, 0.610, 0.355, 1)}
.rv.vis{opacity:1;transform:translateY(0)}
.rv-d1{transition-delay:0.1s}.rv-d2{transition-delay:0.2s}.rv-d3{transition-delay:0.3s}
.img-rv{clip-path:inset(100% 0 0 0);transition:clip-path 1.6s cubic-bezier(0.77, 0, 0.175, 1)}
.img-rv.vis{clip-path:inset(0 0 0 0)}

/* Shared Hero */
.sd-hero { padding: 200px 0 100px; background: var(--bg2); border-bottom: 1px solid var(--bd); text-align: center; }
.hero-eyebrow { font-family: var(--f-body); font-size: 0.75rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ac); display: block; margin-bottom: 1.5rem; }
.hero-title { font-family: var(--f-head); font-size: clamp(3rem, 8vw, 6rem); line-height: 1.1; color: var(--t1); margin-bottom: 1.5rem; }
.a-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;padding:var(--sec) 0}
.a-img{aspect-ratio:3/4;background:var(--bg2);position:relative;overflow:hidden}
.a-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(80%) contrast(1.2);transition:filter 1s}
.a-img:hover img{filter:grayscale(0) contrast(1.1)}
.a-content h2{font-size:clamp(2.5rem, 5vw, 4rem);margin-bottom:2rem;line-height:1.1}
.a-content p{font-size:1rem;color:var(--t2);margin-bottom:1.5rem;line-height:1.8}
.a-stats{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem;padding-top:3rem;border-top:1px solid var(--bd)}
.as-num{font-family:var(--f-head);font-size:3rem;color:var(--t1);margin-bottom:0.5rem;line-height:1}
.as-lbl{font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--t3)}
@media (max-width: 768px) {
  .a-grid { grid-template-columns: 1fr; gap: 3rem; }
}


/* LIGHT THEME VARIABLES */
body.light-theme {
  --bg: #F8F9FA;
  --bg2: #FFFFFF;
  --bg3: #F0F2F5;
  --bg4: #E9ECEF;
  
  --t1: #1A1A1A;
  --t2: #4A4A4A;
  --t3: #6C757D;
  --t4: #ADB5BD;
  
  --bd: rgba(0, 0, 0, 0.08);
  --bd2: rgba(0, 0, 0, 0.12);
  
  --acs: rgba(197, 160, 89, 0.15);
}

/* Specific overrides for light theme */
body.light-theme .premium-card {
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
body.light-theme .bw-form {
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}
body.light-theme .pay-modal-content {
  box-shadow: 0 20px 50px rgba(0,0,0,0.15);
}
body.light-theme .chatbot-container {
  box-shadow: 0 5px 25px rgba(0,0,0,0.1);
}
body.light-theme .msg.bot {
  background: var(--bg3);
  color: var(--t1);
}
body.light-theme .msg.user {
  color: #fff; /* Keep user text white on gold bg */
}

/* Theme Toggle Button Style */
.theme-toggle {
  background: none;
  border: none;
  color: var(--t1);
  font-size: 1.2rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  transition: all 0.3s ease;
  margin-left: 1rem;
}
.theme-toggle:hover {
  background: var(--bd);
  color: var(--ac);
}
@media (max-width: 768px) {
  .theme-toggle {
    margin-left: auto;
    margin-right: 1rem;
  }
}
