/* ============================================================
   VIRIL WOOD - MAIN STYLESHEET (LIGHT / CLINICAL THEME)
   Palette: White + Warm Gray + Vitality Orange + Champion Gold
============================================================ */

:root{
  --primary:#e84a27;
  --primary-dark:#c73d1e;
  --primary-light:#ff6a48;
  --primary-soft:#fef2ef;
  --gold:#c8931a;
  --gold-soft:#d4a53a;
  --gold-bg:#fff8e6;
  --dark:#ffffff;
  --dark-2:#f7f8fa;
  --dark-3:#eef0f4;
  --card-bg:#ffffff;
  --border:#e5e7eb;
  --border-strong:#d1d5db;
  --text:#1f2937;
  --text-dim:#4b5563;
  --text-mute:#6b7280;
  --footer-bg:#0e0e10;
  --footer-text:#b8bcc4;
  --success:#059669;
  --danger:#dc2626;
  --radius:14px;
  --radius-sm:8px;
  --shadow:0 8px 30px rgba(0,0,0,.08);
  --shadow-sm:0 2px 8px rgba(0,0,0,.06);
  --shadow-lg:0 20px 50px rgba(0,0,0,.12);
  --max:1180px;
  --tr:.2s ease;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#1f2937;background:#ffffff;line-height:1.65;font-size:16px;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:#e84a27;text-decoration:none;transition:color .2s ease}
a:hover{color:#c73d1e}
h1,h2,h3,h4{font-family:'Poppins',sans-serif;font-weight:800;line-height:1.2;color:#111827}
h2{font-size:clamp(1.65rem,3.4vw,2.35rem);margin-bottom:.65em;letter-spacing:-.01em}
h3{font-size:clamp(1.15rem,2vw,1.35rem);margin-bottom:.5em;color:#111827}
p{margin-bottom:1em;color:#4b5563}
em{color:#e84a27;font-style:normal;font-weight:700}
.container{max-width:1180px;margin:0 auto;padding:0 22px}

.announce{background:linear-gradient(90deg,#c73d1e,#e84a27,#c73d1e);color:#fff;text-align:center;font-size:.9rem;font-weight:600;padding:9px 16px;letter-spacing:.02em}
.announce a{color:#fff;text-decoration:underline;font-weight:700}

.hdr{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb;padding:14px 0;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.hdr-inner{display:flex;justify-content:space-between;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-weight:800;font-size:1.4rem;color:#111827;letter-spacing:-.02em;text-decoration:none}
.logo:hover{color:#111827}
.logo-mark{width:36px;height:36px;background:#e84a27;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1.1rem}
.nav{display:flex;gap:26px;align-items:center}
.nav a{color:#4b5563;font-weight:500;font-size:.95rem;text-decoration:none}
.nav a:hover{color:#e84a27}
.hdr-cta{background:#e84a27;color:#fff!important;padding:10px 22px;border-radius:8px;font-weight:700;font-size:.9rem;box-shadow:0 4px 14px rgba(232,74,39,.28);transition:all .2s ease;text-decoration:none}
.hdr-cta:hover{background:#c73d1e;transform:translateY(-1px);color:#fff!important}
.mobile-toggle{display:none;background:#fff;border:1px solid #e5e7eb;color:#111827;font-size:1.4rem;cursor:pointer;padding:6px 10px;border-radius:6px}

.btn{display:inline-block;padding:15px 34px;background:#e84a27;color:#fff!important;font-weight:700;text-align:center;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease;letter-spacing:.02em;text-decoration:none;box-shadow:0 6px 20px rgba(232,74,39,.28);font-size:1rem}
.btn:hover{background:#c73d1e;transform:translateY(-2px);box-shadow:0 10px 28px rgba(232,74,39,.4);color:#fff!important}
.btn-lg{padding:18px 46px;font-size:1.1rem;border-radius:12px}
.btn-gold{background:linear-gradient(135deg,#c8931a,#d4a53a);color:#191919!important;box-shadow:0 6px 20px rgba(200,147,26,.32)}
.btn-gold:hover{background:linear-gradient(135deg,#d4a53a,#c8931a);color:#191919!important}
.btn-outline{background:transparent;border:2px solid #e84a27;color:#e84a27!important;box-shadow:none}
.btn-outline:hover{background:#e84a27;color:#fff!important}

section{padding:70px 0;position:relative}
.section-alt{background:#f7f8fa}
.section-dark{background:linear-gradient(135deg,#fef2ef,#fff8e6)}
.eyebrow{display:inline-block;color:#e84a27;font-size:.82rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;margin-bottom:14px}
.section-head{text-align:center;max-width:780px;margin:0 auto 46px}
.section-head p{font-size:1.05rem;color:#4b5563}

.trust-strip{background:#fff;padding:26px 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}
.trust-row{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;align-items:center;text-align:center}
.trust-item{display:flex;flex-direction:column;align-items:center;gap:8px;color:#1f2937;font-size:.88rem;font-weight:600}
.trust-icon{width:44px;height:44px;background:#fef2ef;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e84a27;font-size:1.2rem}

.card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:28px;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.card:hover{border-color:#e84a27;transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.08)}
.card h3{color:#111827}
.card p{color:#4b5563}

.ai-block{background:linear-gradient(135deg,#fef2ef,#fff8e6);border-left:4px solid #e84a27;border-radius:14px;padding:22px 26px;margin:26px 0;position:relative;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.ai-block::before{content:"AI ANSWER";position:absolute;top:-9px;left:20px;background:#e84a27;color:#fff;font-size:.65rem;font-weight:700;padding:2px 10px;border-radius:4px;letter-spacing:.15em}
.ai-block h4{color:#c73d1e;font-size:1.05rem;margin-bottom:8px;font-weight:700}
.ai-block p{margin-bottom:0;color:#1f2937;font-size:.98rem}

.check-list{list-style:none;padding:0}
.check-list li{display:flex;gap:12px;padding:8px 0;color:#1f2937}
.check-list li::before{content:"";flex-shrink:0;width:22px;height:22px;margin-top:3px;background:#c8931a;border-radius:50%;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:14px;background-position:center;background-repeat:no-repeat}

.faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:14px;overflow:hidden;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.faq-item.open{border-color:#e84a27;box-shadow:0 8px 30px rgba(0,0,0,.08)}
.faq-q{padding:20px 24px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700;font-size:1.02rem;color:#111827}
.faq-q:hover{color:#e84a27}
.faq-toggle{width:26px;height:26px;background:#e84a27;border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease;font-size:1.2rem;line-height:1}
.faq-item.open .faq-toggle{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding:0 24px;color:#4b5563}
.faq-item.open .faq-a{max-height:800px;padding:0 24px 22px}
.faq-a p{color:#4b5563;margin-bottom:0}

.footer{background:#0e0e10;color:#b8bcc4;padding:60px 0 24px;border-top:4px solid #e84a27}
.footer .logo{color:#fff}
.footer .logo:hover{color:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:44px;margin-bottom:44px}
.footer h4{color:#fff;font-size:1rem;margin-bottom:18px;letter-spacing:.05em;text-transform:uppercase}
.footer ul{list-style:none;padding:0}
.footer ul li{margin-bottom:10px}
.footer p{color:#b8bcc4}
.footer a{color:#b8bcc4;font-size:.92rem;text-decoration:none}
.footer a:hover{color:#ff6a48}
.footer-disclaimer{font-size:.82rem;color:#8b8f97;line-height:1.6;padding-top:24px;border-top:1px solid #2c2c34}
.footer-disclaimer p{color:#8b8f97}
.footer-bottom{text-align:center;font-size:.82rem;color:#8b8f97;margin-top:20px}

.sp-popup{position:fixed;bottom:24px;left:24px;z-index:200;background:#fff;border:1px solid #e5e7eb;border-left:4px solid #e84a27;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.15);padding:14px 18px 14px 14px;max-width:320px;display:flex;gap:12px;align-items:center;transform:translateX(-140%);transition:transform .5s cubic-bezier(.34,1.56,.64,1);font-size:.85rem}
.sp-popup.show{transform:translateX(0)}
.sp-icon{width:38px;height:38px;background:#fef2ef;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e84a27;flex-shrink:0;font-size:1.1rem}
.sp-text{color:#1f2937;line-height:1.4}
.sp-text strong{color:#111827}
.sp-text small{display:block;color:#6b7280;font-size:.75rem;margin-top:2px}
.sp-close{position:absolute;top:6px;right:8px;background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.1rem;padding:0;line-height:1}

.m-sticky{display:none;position:fixed;bottom:0;left:0;right:0;z-index:150;background:#fff;border-top:1px solid #e5e7eb;padding:10px 14px;box-shadow:0 -6px 24px rgba(0,0,0,.1)}
.m-sticky .btn{width:100%;padding:14px;font-size:.98rem}

.page-hero{background:linear-gradient(135deg,#fef2ef,#fff8e6);padding:60px 0 40px;text-align:center;border-bottom:1px solid #e5e7eb}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:10px;color:#111827}
.page-hero p{color:#4b5563}
.page-content{padding:60px 0;max-width:820px;margin:0 auto}
.page-content h2{margin-top:38px;color:#111827}
.page-content h3{margin-top:28px;color:#c73d1e}
.page-content p,.page-content li{color:#4b5563}
.page-content ul,.page-content ol{margin:14px 0 20px 24px}
.page-content li{margin-bottom:8px}
.page-content a{color:#e84a27;text-decoration:underline}
.page-content a:hover{color:#c73d1e}

@media (max-width:900px){
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:14px;border-bottom:1px solid #e5e7eb;box-shadow:0 6px 24px rgba(0,0,0,.1)}
  .nav.open{display:flex}
  .nav a{width:100%;text-align:center;padding:8px 0}
  .hdr-cta{display:none}
  .nav .hdr-cta{display:inline-block;width:auto;padding:12px 26px;color:#fff!important}
  .mobile-toggle{display:block}
  .trust-row{grid-template-columns:repeat(3,1fr);gap:14px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .m-sticky{display:block}
  body{padding-bottom:70px}
  .sp-popup{left:14px;right:14px;max-width:calc(100vw - 28px)}
  section{padding:50px 0}
}
@media (max-width:560px){
  .container{padding:0 16px}
  .trust-row{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr}
  .btn-lg{padding:16px 30px;font-size:1rem}
  .card{padding:22px}
  .ai-block{padding:18px 20px}
}
