*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
  --orange:    #e07020;
  --orange-dk: #b85510;
  --amber:     #c8900a;
  --cream:     #faf5ef;
  --cream-mid: #f0e5d0;
  --brown:     #1a0d00;
  --brown-mid: #5a3a18;
  --brown-lt:  #7a5230;
  --text:      #2a1a08;
  --muted:     #6b4c2c;
  --border:    rgba(180,100,20,0.14);
  --white:     #ffffff;
  /* fixed chrome height = marquee + header */
  --chrome:    96px;
}

html { scroll-behavior:smooth; }
body { font-family:'Outfit',sans-serif; background:var(--cream); color:var(--text); overflow-x:hidden; }
a { text-decoration:none; color:inherit; }
*:focus-visible { outline:2px solid var(--orange); outline-offset:3px; }
img { max-width:100%; display:block; }

/* ── MARQUEE ── */
.marquee-bar {
  position:fixed; top:0; left:0; width:100%; height:32px; z-index:2000;
  background:var(--brown); display:flex; align-items:center; overflow:hidden;
}
.marquee-track {
  display:flex; align-items:center; gap:40px; white-space:nowrap;
  min-width:max-content; padding-left:100%;
  animation:scrollx 34s linear infinite;
}
.mi { font-size:11px; letter-spacing:1.2px; color:#c8a870; font-weight:500; }
.ms { color:var(--orange); }
@keyframes scrollx { to { transform:translateX(-50%); } }

/* ── HEADER ── */
header {
  position:fixed; top:32px; left:0; width:100%; height:64px; z-index:1900;
  background:rgba(250,245,239,0.98); border-bottom:1px solid var(--border);
  backdrop-filter:blur(12px);
}
.nav {
  max-width:1220px; margin:auto; height:100%;
  display:flex; align-items:center; justify-content:space-between; padding:0 28px;
}
.nav-logo img { height:40px; width:auto; }
.nav-links { display:flex; gap:22px; list-style:none; }
.nav-links a { font-size:13px; font-weight:500; color:var(--brown-mid); transition:color .2s; }
.nav-links a:hover, .nav-links a.active { color:var(--orange); }
.nav-end { display:flex; align-items:center; gap:10px; }
.btn-cta {
  background:var(--orange); color:#fff; border:none;
  padding:9px 20px; border-radius:6px;
  font-family:'Outfit',sans-serif; font-size:12.5px; font-weight:600;
  cursor:pointer; transition:background .2s; display:inline-block;
}
.btn-cta:hover { background:var(--orange-dk); }

/* burger — hidden on desktop */
.burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.burger span { width:22px; height:2px; background:var(--brown-mid); border-radius:2px; transition:.3s; }
.burger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.burger.open span:nth-child(2) { opacity:0; }
.burger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* mobile nav */
.mobile-nav {
  display:none; position:fixed; top:var(--chrome); left:0; right:0; z-index:1800;
  background:var(--cream); border-bottom:1px solid var(--border);
  padding:14px 28px 22px; flex-direction:column;
}
.mobile-nav.open { display:flex; }
.mobile-nav a { padding:11px 0; font-size:15px; font-weight:500; color:var(--brown-mid); border-bottom:1px solid var(--border); }
.mobile-nav a:hover { color:var(--orange); }
.mobile-nav .mob-cta { margin-top:16px; text-align:center; padding:12px; border-radius:6px; border:none; }

/* ── SIDEBAR (no floating toggle — opened via burger or JS) ── */
.sb-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.35); z-index:2000; }
.sb-overlay.open { display:block; }
.sidebar {
  position:fixed; right:-300px; top:0; width:300px; height:100vh;
  z-index:2100; background:var(--white); border-left:1px solid var(--border);
  transition:right .28s ease; display:flex; flex-direction:column; overflow:hidden;
}
.sidebar.open { right:0; }
.sb-head {
  padding:18px 22px 16px; border-bottom:1px solid var(--border);
  display:flex; align-items:center; justify-content:space-between; flex-shrink:0;
}
.sb-head span { font-size:10.5px; letter-spacing:2px; font-weight:700; color:var(--muted); }
.sb-close {
  background:none; border:1px solid var(--border); border-radius:4px;
  width:28px; height:28px; cursor:pointer; display:flex; align-items:center; justify-content:center;
  color:var(--muted); transition:background .2s;
}
.sb-close:hover { background:var(--cream); }
.sb-body { padding:16px 22px; flex:1; overflow-y:auto; }
.sb-nav { list-style:none; display:flex; flex-direction:column; gap:1px; }
.sb-nav li a { display:block; padding:9px 10px; border-radius:5px; font-size:13.5px; font-weight:500; color:var(--brown-mid); transition:all .15s; }
.sb-nav li a:hover { background:var(--cream); color:var(--orange); }
.sb-divider { height:1px; background:var(--border); margin:13px 0; }
.sb-cta-btn {
  display:block; width:100%; background:var(--orange); color:#fff; border:none;
  padding:10px; border-radius:6px; font-family:'Outfit',sans-serif;
  font-size:13px; font-weight:600; cursor:pointer; text-align:center; transition:background .2s;
}
.sb-cta-btn:hover { background:var(--orange-dk); }
.sb-contacts { display:flex; flex-direction:column; gap:6px; }
.sb-c { display:flex; align-items:center; gap:9px; padding:9px 10px; background:var(--cream); border-radius:5px; font-size:12.5px; color:var(--muted); }

/* ── ALL FIRST ELEMENTS NEED TO CLEAR THE FIXED CHROME ── */
/* hero on home page */
.hero { margin-top:var(--chrome); }
/* page banner on inner pages */
.page-banner { margin-top:var(--chrome); }

/* ── HERO ── */
.hero {
  background:var(--brown); min-height:calc(100vh - var(--chrome));
  display:grid; grid-template-columns:1fr 1fr; align-items:stretch; overflow:hidden;
}
.hero-left {
  padding:90px 60px 90px 68px;
  display:flex; flex-direction:column; justify-content:center;
}
.hero-eyebrow { font-size:10.5px; letter-spacing:3px; font-weight:600; color:var(--amber); margin-bottom:18px; display:block; }
.hero-title { font-family:'Lora',serif; font-size:clamp(44px,5vw,72px); font-weight:600; color:#fff; line-height:1.05; margin-bottom:8px; }
.hero-org { font-family:'Lora',serif; font-size:clamp(16px,2vw,22px); font-style:italic; color:rgba(200,155,70,0.65); margin-bottom:28px; }
.hero-rule { width:48px; height:2px; background:var(--orange); margin-bottom:28px; }
.hero-desc { font-family:'Lora',serif; font-style:italic; font-size:17px; color:rgba(235,210,175,0.7); line-height:1.85; max-width:440px; margin-bottom:42px; }
.hero-btns { display:flex; gap:12px; flex-wrap:wrap; }
.hero-stats {
  display:flex; gap:40px; margin-top:52px;
  padding-top:32px; border-top:1px solid rgba(255,255,255,0.08);
}
.hero-stat-num { font-family:'Lora',serif; font-size:28px; font-weight:600; color:#fff; display:block; }
.hero-stat-lbl { font-size:11px; letter-spacing:1.5px; color:rgba(200,155,70,0.55); font-weight:500; margin-top:2px; display:block; }
.hero-right { position:relative; overflow:hidden; }
.hero-img {
  position:absolute; inset:0; background:#200e00;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
}
.img-ph-lbl { font-size:10.5px; letter-spacing:2px; font-weight:600; color:rgba(200,155,70,0.28); }

/* ── PAGE BANNER ── */
.page-banner {
  background:var(--brown); padding:92px 28px 86px; text-align:center;
  position:relative; overflow:hidden;
}
.page-banner::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 50% 100%, rgba(224,112,32,0.12) 0%, transparent 65%);
  pointer-events:none;
}
.page-banner .sec-label { color:var(--amber); position:relative; z-index:1; }
.page-banner .sec-title { color:#fff; margin-bottom:14px; position:relative; z-index:1; }
.page-banner .sec-desc  { color:rgba(220,185,130,0.65); margin:0 auto; position:relative; z-index:1; }

/* ── SECTIONS ── */
.sec { padding:108px 28px; }
.sec-inner { max-width:1180px; margin:auto; }
.sec-label { font-size:10.5px; letter-spacing:3px; font-weight:700; color:var(--orange); display:block; margin-bottom:10px; }
.sec-title { font-family:'Lora',serif; font-size:clamp(32px,3.8vw,52px); font-weight:600; color:var(--brown); line-height:1.15; margin-bottom:16px; }
.sec-desc { font-size:15px; color:var(--muted); line-height:1.85; max-width:600px; }
.sec-head { margin-bottom:52px; }

/* dark section overrides */
.sec-dark { background:var(--brown); }
.sec-dark .sec-label { color:var(--amber); }
.sec-dark .sec-title { color:#fff; }
.sec-dark .sec-desc  { color:rgba(220,185,130,0.65); }

/* ── BUTTONS ── */
.btn-primary { background:var(--orange); color:#fff; border:none; padding:13px 28px; border-radius:6px; font-family:'Outfit',sans-serif; font-size:13.5px; font-weight:600; cursor:pointer; transition:background .2s; display:inline-block; }
.btn-primary:hover { background:var(--orange-dk); }
.btn-ghost { background:transparent; color:rgba(255,255,255,0.75); border:1px solid rgba(255,255,255,0.22); padding:13px 28px; border-radius:6px; font-family:'Outfit',sans-serif; font-size:13.5px; font-weight:500; cursor:pointer; transition:all .2s; display:inline-block; }
.btn-ghost:hover { border-color:rgba(255,255,255,0.55); color:#fff; }
.btn-outline { background:transparent; border:1px solid var(--orange); color:var(--orange); padding:10px 22px; border-radius:6px; font-family:'Outfit',sans-serif; font-size:13px; font-weight:600; cursor:pointer; transition:all .2s; display:inline-block; }
.btn-outline:hover { background:var(--orange); color:#fff; }

/* ── IMAGE PLACEHOLDER ── */
.img-block { background:var(--cream-mid); border:1px dashed rgba(180,100,20,0.22); border-radius:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; }
.img-block svg { color:rgba(180,100,20,0.2); }
.img-block span { font-size:10px; letter-spacing:2px; font-weight:600; color:rgba(180,100,20,0.28); }

/* ── FORMS ── */
.form-box { background:var(--cream-mid); border:1px solid var(--border); border-radius:10px; padding:28px; }
.form-box h4 { font-family:'Lora',serif; font-size:17px; color:var(--brown); margin-bottom:20px; font-weight:600; }
.f-row { display:grid; grid-template-columns:1fr 1fr; gap:11px; margin-bottom:11px; }
.f-row.full { grid-template-columns:1fr; }
.f-field { display:flex; flex-direction:column; gap:4px; }
.f-field label { font-size:10px; letter-spacing:1.2px; color:var(--muted); font-weight:600; }
.f-field input, .f-field select, .f-field textarea {
  background:var(--white); border:1px solid var(--border); border-radius:6px;
  padding:10px 13px; font-family:'Outfit',sans-serif; font-size:13.5px;
  color:var(--text); transition:border-color .2s; appearance:none; -webkit-appearance:none;
}
.f-field input:focus, .f-field select:focus, .f-field textarea:focus { border-color:var(--orange); outline:none; }
.f-field textarea { resize:vertical; min-height:88px; }
.f-submit { width:100%; margin-top:14px; background:var(--orange); color:#fff; border:none; padding:12px; border-radius:6px; font-family:'Outfit',sans-serif; font-size:13.5px; font-weight:600; cursor:pointer; transition:background .2s; }
.f-submit:hover { background:var(--orange-dk); }

/* dark form */
.dark-form { background:rgba(255,255,255,0.05); border:1px solid rgba(200,155,70,0.16); border-radius:10px; padding:30px; }
.dark-form h3 { font-family:'Lora',serif; font-size:20px; color:#fff; margin-bottom:6px; font-weight:600; }
.dark-form > p { font-size:13.5px; color:rgba(220,185,130,0.6); margin-bottom:20px; line-height:1.7; }
.dark-form .f-field label { color:rgba(200,165,100,0.6); }
.dark-form .f-field input, .dark-form .f-field select, .dark-form .f-field textarea { background:rgba(255,255,255,0.07); border:1px solid rgba(200,155,70,0.22); color:#fff; }
.dark-form .f-field input::placeholder, .dark-form .f-field textarea::placeholder { color:rgba(255,255,255,0.25); }
.dark-form .f-field select option { background:#1a0d00; }

/* ── CARD ── */
.card { background:var(--white); border:1px solid var(--border); border-radius:10px; padding:28px 26px; transition:transform .22s, box-shadow .22s; }
.card:hover { transform:translateY(-4px); box-shadow:0 12px 32px rgba(150,70,10,0.1); }
.card-num { font-size:10px; letter-spacing:3px; color:var(--orange); font-weight:700; margin-bottom:10px; }
.card h3 { font-family:'Lora',serif; font-size:18px; color:var(--brown); margin-bottom:9px; font-weight:600; }
.card p { font-size:13.5px; color:var(--muted); line-height:1.8; }

/* ── CHECKLIST ── */
.check-list { list-style:none; display:flex; flex-direction:column; gap:9px; }
.check-list li { display:flex; align-items:flex-start; gap:10px; font-size:14px; color:var(--muted); line-height:1.65; }
.check-list li svg { flex-shrink:0; margin-top:3px; color:var(--orange); }

/* ── STAT ROW ── */
.stat-row { display:flex; gap:0; border:1px solid var(--border); border-radius:10px; overflow:hidden; }
.stat-item { flex:1; padding:28px 24px; text-align:center; border-right:1px solid var(--border); }
.stat-item:last-child { border-right:none; }
.stat-num { font-family:'Lora',serif; font-size:36px; font-weight:600; color:var(--orange); display:block; }
.stat-lbl { font-size:12px; letter-spacing:1px; color:var(--muted); margin-top:4px; font-weight:500; }

/* ── QUOTE BLOCK ── */
.quote-block { border-left:3px solid var(--orange); padding:18px 22px; background:var(--cream-mid); border-radius:0 8px 8px 0; }
.quote-block p { font-family:'Lora',serif; font-style:italic; font-size:18px; color:var(--brown); line-height:1.7; }
.quote-block cite { font-size:10.5px; letter-spacing:1.5px; font-weight:700; color:var(--orange); display:block; margin-top:10px; font-style:normal; }

/* ── HIGHLIGHT BAND ── */
.highlight-band { background:var(--orange); padding:52px 28px; text-align:center; }
.highlight-band h2 { font-family:'Lora',serif; font-size:clamp(22px,3vw,34px); color:#fff; font-weight:600; margin-bottom:12px; }
.highlight-band p { font-size:15px; color:rgba(255,255,255,0.8); max-width:580px; margin:0 auto 26px; line-height:1.8; }

/* ── FOOTER ── */
footer { background:var(--brown); padding:60px 28px 26px; }
.footer-inner { max-width:1180px; margin:auto; display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr; gap:48px; margin-bottom:44px; }
.footer-brand img { height:36px; width:auto; filter:brightness(0) invert(1); opacity:.7; margin-bottom:14px; }
.footer-brand p { font-size:13px; color:rgba(200,160,100,0.5); line-height:1.85; max-width:265px; }
.footer-col h4 { font-size:10px; letter-spacing:2px; color:rgba(255,255,255,0.4); font-weight:700; margin-bottom:14px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:9px; }
.footer-col ul li a { font-size:13px; color:rgba(200,160,100,0.5); transition:color .2s; }
.footer-col ul li a:hover { color:var(--amber); }
.footer-bottom { max-width:1180px; margin:auto; display:flex; align-items:center; justify-content:space-between; padding-top:22px; border-top:1px solid rgba(255,255,255,0.07); flex-wrap:wrap; gap:8px; }
.footer-bottom p { font-size:11.5px; color:rgba(200,160,100,0.3); }
.footer-dharma { font-family:'Lora',serif; font-style:italic; font-size:12.5px; color:rgba(200,160,100,0.38); }

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  .footer-inner { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  .burger { display:flex; }
  .nav-links { display:none !important; }
  .nav-end .btn-cta { display:none; }
  .hero { grid-template-columns:1fr; min-height:auto; }
  .hero-right { display:none; }
  .hero-left { padding:52px 22px 60px; }
  .hero-stats { gap:24px; flex-wrap:wrap; }
  .sec { padding:56px 20px; }
  .f-row { grid-template-columns:1fr; }
  .two-col, .two-col-r { grid-template-columns:1fr !important; gap:32px !important; }
  .three-col { grid-template-columns:1fr !important; }
  .stat-row { flex-direction:column; }
  .stat-item { border-right:none; border-bottom:1px solid var(--border); }
  .stat-item:last-child { border-bottom:none; }
}
@media (max-width:480px) {
  .footer-inner { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; text-align:center; }
}

/* ── SCROLL ANIMATIONS (Correction 1) ── */
@keyframes fadeUp   { from { opacity:0; transform:translateY(32px); } to { opacity:1; transform:translateY(0); } }
@keyframes fadeIn   { from { opacity:0; } to { opacity:1; } }
@keyframes slideInLeft  { from { opacity:0; transform:translateX(-36px); } to { opacity:1; transform:translateX(0); } }
@keyframes slideInRight { from { opacity:0; transform:translateX(36px); } to { opacity:1; transform:translateX(0); } }
@keyframes scaleUp  { from { opacity:0; transform:scale(0.93); } to { opacity:1; transform:scale(1); } }

.anim-ready { opacity:0; }
.anim-fadeup        { animation: fadeUp       0.7s cubic-bezier(.22,.82,.26,1) forwards; }
.anim-fadein        { animation: fadeIn       0.65s ease forwards; }
.anim-left          { animation: slideInLeft  0.7s cubic-bezier(.22,.82,.26,1) forwards; }
.anim-right         { animation: slideInRight 0.7s cubic-bezier(.22,.82,.26,1) forwards; }
.anim-scale         { animation: scaleUp      0.6s cubic-bezier(.22,.82,.26,1) forwards; }

.anim-d1 { animation-delay:.05s; }
.anim-d2 { animation-delay:.18s; }
.anim-d3 { animation-delay:.31s; }
.anim-d4 { animation-delay:.44s; }
.anim-d5 { animation-delay:.57s; }
.anim-d6 { animation-delay:.70s; }
