*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0d2045;
  --navy-mid:#162e5e;
  --paper:#f8f7f3;
  --paper-warm:#f2efe8;
  --white:#ffffff;
  --gold:#c8922a;
  --gold-light:#f7edd6;
  --gold-mid:#e8a830;
  --sky:#2574b8;
  --sky-light:#3a8fd4;
  --green:#2e5e3a;
  --green-light:#e6f0e8;
  --rule:rgba(13,32,69,0.10);
  --ink:#0d1e35;
  --ink-muted:#3a4a5e;
  --ink-faint:#6a7a8e;
}
html{scroll-behavior:smooth}
body{font-family:"Outfit",sans-serif;font-weight:400;color:var(--ink);background:var(--paper);line-height:1.75;font-size:16px;overflow-x:hidden}
h1,h2,h3,h4{font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;line-height:1.15;letter-spacing:-0.01em}
p,li,label,input,select,textarea,button{font-weight:400}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;height:72px;background:rgba(13,32,69,0.98);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,0.06)}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav-logo img{width:46px;height:46px;object-fit:contain}
.nav-logo-text{font-family:"Outfit",sans-serif;font-size:15px;font-weight:600;color:var(--white);letter-spacing:0.01em;line-height:1.25}
.nav-logo-text span{display:block;font-size:10px;font-weight:400;color:rgba(255,255,255,0.45);letter-spacing:0.14em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:32px;list-style:none}
.nav-links a{font-size:13px;font-weight:500;color:rgba(255,255,255,0.7);text-decoration:none;letter-spacing:0.04em;transition:color 0.2s}
.nav-links a:hover{color:var(--white)}
.nav-cta{background:var(--gold)!important;color:var(--navy)!important;font-weight:600!important;padding:9px 20px!important;border-radius:4px!important;transition:background 0.2s!important}
.nav-cta:hover{background:var(--gold-mid)!important}

/* HERO */
.hero{min-height:100vh;background:var(--navy);display:flex;flex-direction:column;justify-content:center;padding:72px 5vw 0;position:relative;overflow:hidden}
.hero-pattern{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 79px,rgba(255,255,255,0.02) 79px,rgba(255,255,255,0.02) 80px),repeating-linear-gradient(90deg,transparent,transparent 79px,rgba(255,255,255,0.02) 79px,rgba(255,255,255,0.02) 80px);pointer-events:none}
.hero-glow{position:absolute;top:-200px;right:-100px;width:700px;height:700px;background:radial-gradient(circle,rgba(37,116,184,0.18) 0%,transparent 65%);pointer-events:none}
.hero-content{position:relative;z-index:1;max-width:860px;padding:80px 0 60px;animation:rise 0.9s cubic-bezier(0.16,1,0.3,1) both}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px}
.hero-badge-line{width:36px;height:1px;background:var(--gold)}
.hero-badge span{font-size:11px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold)}
.hero h1{font-size:clamp(42px,6.5vw,82px);color:var(--white);margin-bottom:24px;font-weight:500;line-height:1.07}
.hero h1 strong{font-weight:700;font-style:italic;color:var(--gold-mid)}
.hero-sub{font-size:17px;font-weight:400;color:rgba(255,255,255,0.65);max-width:500px;line-height:1.75;margin-bottom:44px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn-gold{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy);padding:13px 28px;border-radius:4px;font-size:14px;font-weight:600;text-decoration:none;letter-spacing:0.04em;transition:background 0.2s,transform 0.15s}
.btn-gold:hover{background:var(--gold-mid);transform:translateY(-1px)}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:rgba(255,255,255,0.75);padding:13px 28px;border-radius:4px;font-size:14px;font-weight:500;text-decoration:none;border:1px solid rgba(255,255,255,0.25);transition:all 0.2s}
.btn-ghost:hover{border-color:rgba(255,255,255,0.55);color:white}
.hero-footer{position:relative;z-index:1;display:flex;align-items:center;gap:36px;flex-wrap:wrap;padding:28px 0 56px;border-top:1px solid rgba(255,255,255,0.1);margin-top:auto;animation:rise 0.9s 0.2s cubic-bezier(0.16,1,0.3,1) both}
.hero-trust{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:500;color:rgba(255,255,255,0.5);letter-spacing:0.04em}
.hero-trust::before{content:"";display:block;width:5px;height:5px;background:var(--gold);border-radius:50%;opacity:0.8}

/* SECTIONS */
section{padding:96px 5vw}
.label{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--sky);margin-bottom:16px}
.label::before{content:"";display:block;width:24px;height:1px;background:currentColor}
.section-h{font-size:clamp(28px,3.8vw,50px);color:var(--navy);margin-bottom:16px;font-weight:700}
.section-p{font-size:16px;font-weight:400;color:var(--ink-muted);max-width:540px;line-height:1.8}

/* HOW IT WORKS */
#how{background:var(--white)}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:10px;overflow:hidden;margin-top:52px}
.how-cell{background:var(--white);padding:44px 40px;transition:background 0.2s}
.how-cell:hover{background:var(--paper)}
.how-cell.wide{grid-column:span 2}
.how-num{font-family:"Cormorant Garamond",serif;font-size:44px;font-weight:700;color:rgba(13,32,69,0.10);line-height:1;margin-bottom:12px}
.how-icon{font-size:24px;margin-bottom:10px}
.how-cell h3{font-size:22px;font-weight:700;color:var(--navy);margin-bottom:10px}
.how-cell p{font-size:15px;font-weight:400;color:var(--ink-muted);line-height:1.75}

/* SELECTIVE */
#selective{background:var(--navy);position:relative;overflow:hidden}
#selective::before{content:"";position:absolute;top:-160px;right:-160px;width:550px;height:550px;background:radial-gradient(circle,rgba(37,116,184,0.22) 0%,transparent 70%);pointer-events:none}
.selective-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.selective-body{font-size:16px;font-weight:400;color:rgba(255,255,255,0.65);line-height:1.8;max-width:none}
.selective-body em{color:rgba(255,255,255,0.9);font-style:italic;font-weight:500}
.criteria-list{list-style:none;margin-top:0}
.criteria-item{padding:24px 0;border-bottom:1px solid rgba(255,255,255,0.08)}
.criteria-item:first-child{border-top:1px solid rgba(255,255,255,0.08)}
.criteria-tag{font-size:10px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);margin-bottom:7px}
.criteria-item h4{font-size:17px;font-weight:700;color:var(--white);margin-bottom:7px}
.criteria-item p{font-size:13px;font-weight:400;color:rgba(255,255,255,0.52);line-height:1.7}
.size-note{display:inline-flex;align-items:center;gap:9px;background:rgba(200,146,42,0.14);border:1px solid rgba(200,146,42,0.28);border-radius:6px;padding:11px 16px;margin-top:28px;font-size:13px;font-weight:500;color:rgba(255,255,255,0.75)}
.size-note::before{content:"";display:block;width:7px;height:7px;background:var(--gold);border-radius:50%;flex-shrink:0}

/* PRICING */
#pricing{background:var(--paper)}
.pricing-intro{max-width:580px;margin-bottom:52px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--rule);border-radius:10px;overflow:hidden}
.tier{padding:40px 32px;background:var(--white);border-right:1px solid var(--rule);display:flex;flex-direction:column;transition:background 0.2s}
.tier:hover{background:var(--paper-warm)}
.tier:last-child{border-right:none}
.tier.featured{background:var(--navy);border-color:var(--navy)}
.tier.featured:hover{background:var(--navy-mid)}
.tier-label{font-size:10px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--sky);background:rgba(37,116,184,0.09);padding:4px 10px;border-radius:3px;margin-bottom:20px;align-self:flex-start}
.tier.featured .tier-label{color:var(--gold);background:rgba(200,146,42,0.18)}
.tier-name{font-size:24px;font-weight:700;color:var(--navy);margin-bottom:4px}
.tier.featured .tier-name{color:var(--white)}
.tier-ideal{font-size:13px;font-weight:400;color:var(--ink-faint);margin-bottom:20px}
.tier.featured .tier-ideal{color:rgba(255,255,255,0.42)}
.tier-visits{display:flex;align-items:baseline;gap:6px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--rule)}
.tier.featured .tier-visits{border-bottom-color:rgba(255,255,255,0.12)}
.tier-visits-num{font-family:"Cormorant Garamond",serif;font-size:54px;font-weight:700;color:var(--navy);line-height:1}
.tier.featured .tier-visits-num{color:var(--white)}
.tier-visits-label{font-size:13px;font-weight:400;color:var(--ink-muted);line-height:1.4}
.tier.featured .tier-visits-label{color:rgba(255,255,255,0.45)}
.tier-for{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.1em;color:var(--ink-faint);margin-bottom:12px}
.tier.featured .tier-for{color:rgba(255,255,255,0.32)}
.fit-list{list-style:none;flex:1;margin-bottom:28px}
.fit-list li{font-size:14px;font-weight:400;color:var(--ink-muted);padding:7px 0;border-bottom:1px solid var(--rule);display:flex;align-items:baseline;gap:10px}
.tier.featured .fit-list li{color:rgba(255,255,255,0.65);border-bottom-color:rgba(255,255,255,0.08)}
.fit-list li::before{content:"\2014";font-size:10px;color:var(--ink-faint);flex-shrink:0}
.tier.featured .fit-list li::before{color:rgba(255,255,255,0.25)}
.tier-note{font-size:12px;font-weight:400;color:var(--ink-faint);line-height:1.6;margin-bottom:24px;font-style:italic}
.tier.featured .tier-note{color:rgba(255,255,255,0.32)}
.btn-tier{display:block;text-align:center;padding:12px 20px;border-radius:4px;font-size:13px;font-weight:600;text-decoration:none;letter-spacing:0.04em;transition:all 0.2s;border:1.5px solid var(--navy);color:var(--navy);background:transparent}
.btn-tier:hover{background:var(--navy);color:var(--white)}
.tier.featured .btn-tier{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.tier.featured .btn-tier:hover{background:var(--gold-mid)}

/* QUALIFY */
#qualify{background:var(--paper-warm);border-top:1px solid var(--rule)}
.qualify-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:start}
.qualify-form-wrap{background:var(--white);border:1px solid var(--rule);border-radius:10px;padding:40px}
.form-h{font-size:24px;font-weight:700;color:var(--navy);margin-bottom:5px}
.form-sub{font-size:14px;font-weight:400;color:var(--ink-faint);margin-bottom:28px}
.form-field{margin-bottom:16px}
label{display:block;font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px}
input,select,textarea{width:100%;padding:10px 13px;border:1.5px solid var(--rule);border-radius:4px;font-size:14px;font-weight:400;font-family:"Outfit",sans-serif;color:var(--ink);background:var(--paper);outline:none;transition:border-color 0.2s,box-shadow 0.2s;appearance:none}
input:focus,select:focus,textarea:focus{border-color:var(--sky);box-shadow:0 0 0 3px rgba(37,116,184,0.1)}
textarea{resize:vertical;min-height:88px}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.btn-submit{width:100%;padding:14px;background:var(--navy);color:var(--white);border:none;border-radius:4px;font-size:15px;font-weight:600;font-family:"Outfit",sans-serif;letter-spacing:0.04em;cursor:pointer;margin-top:6px;transition:background 0.2s,transform 0.15s}
.btn-submit:hover{background:var(--navy-mid);transform:translateY(-1px)}
.form-caveat{font-size:12px;font-weight:400;color:var(--ink-faint);text-align:center;margin-top:10px;line-height:1.6}
.qualify-info .section-h{margin-bottom:16px}
.qualify-body{font-size:15px;font-weight:400;color:var(--ink-muted);line-height:1.8;margin-bottom:32px}
.qualify-criteria{list-style:none}
.qualify-criteria li{display:flex;align-items:flex-start;gap:13px;padding:18px 0;border-bottom:1px solid var(--rule)}
.qualify-criteria li:first-child{border-top:1px solid var(--rule)}
.qc-icon{width:36px;height:36px;flex-shrink:0;background:var(--green-light);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:15px}
.qc-title{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:3px}
.qc-desc{font-size:13px;font-weight:400;color:var(--ink-faint);line-height:1.6}

/* FOOTER */
footer{background:var(--navy);padding:52px 5vw 28px}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,0.08);margin-bottom:24px}
.footer-logo{display:flex;align-items:center;gap:11px;margin-bottom:14px;text-decoration:none}
.footer-logo img{width:42px;height:42px;object-fit:contain}
.footer-logo-name{font-family:"Outfit",sans-serif;font-size:15px;font-weight:600;color:var(--white)}
.footer-tagline{font-size:13px;font-weight:400;color:rgba(255,255,255,0.38);margin-bottom:14px;line-height:1.65;max-width:230px}
.footer-contact{font-size:13px;font-weight:400;color:rgba(255,255,255,0.45);line-height:1.9}
.footer-col-title{font-size:10px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.28);margin-bottom:13px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:8px}
.footer-links a{font-size:13px;font-weight:400;color:rgba(255,255,255,0.48);text-decoration:none;transition:color 0.2s}
.footer-links a:hover{color:rgba(255,255,255,0.85)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:11px;font-weight:400;color:rgba(255,255,255,0.22);letter-spacing:0.04em}

/* SUCCESS */
.form-success{display:none;text-align:center;padding:44px 16px}
.success-check{width:54px;height:54px;background:var(--green-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 18px;color:var(--green);font-weight:700}
.success-h{font-size:22px;font-weight:700;color:var(--navy);margin-bottom:9px}
.success-p{font-size:14px;font-weight:400;color:var(--ink-muted);max-width:300px;margin:0 auto;line-height:1.7}

/* RESPONSIVE */

.hero-sub strong{display:block;margin-top:14px;color:rgba(255,255,255,0.92);font-weight:600}
.visit-system{background:var(--white);border-top:1px solid var(--rule)}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:48px}
.visit-card{background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:34px 30px}
.visit-card h3{font-size:24px;color:var(--navy);margin-bottom:10px}
.visit-kicker{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--sky);margin-bottom:8px}
.visit-card p{font-size:15px;color:var(--ink-muted);line-height:1.75}
.visit-list{list-style:none;margin:18px 0}
.visit-list li{font-size:14px;color:var(--ink-muted);padding:7px 0;border-bottom:1px solid var(--rule);display:flex;gap:10px;align-items:flex-start}
.visit-list li::before{content:"•";color:var(--sky);font-weight:700;line-height:1}
.visit-outcome{margin-top:18px;font-size:14px;color:var(--navy);font-weight:600}
.visit-why{margin-top:28px;background:var(--paper-warm);border:1px solid var(--rule);border-radius:10px;padding:28px 30px}
.visit-why h3{font-size:26px;color:var(--navy);margin-bottom:10px}
.visit-why p{font-size:15px;color:var(--ink-muted);line-height:1.8;margin-bottom:14px}
.visit-why-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}
.visit-why-list li{font-size:14px;color:var(--ink-muted);display:flex;gap:10px;align-items:flex-start}
.visit-why-list li::before{content:"•";color:var(--gold);font-weight:700;line-height:1}
@media(max-width:860px){
  .visit-grid{grid-template-columns:1fr}
  .visit-why-list{grid-template-columns:1fr}
}

@media(max-width:860px){
  .how-grid{grid-template-columns:1fr}
  .how-cell.wide{grid-column:span 1}
  .selective-layout{grid-template-columns:1fr;gap:44px}
  .tiers{grid-template-columns:1fr}
  .tier{border-right:none;border-bottom:1px solid var(--rule)}
  .tier:last-child{border-bottom:none}
  .qualify-layout{grid-template-columns:1fr;gap:44px}
  .footer-top{flex-direction:column;gap:28px}
}
@media(max-width:600px){
  .nav-links{display:none}
  .form-row-2{grid-template-columns:1fr}
  .hero h1{font-size:38px}
}
