*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#07101E;--card:#0D1829;--card2:#0A1422;--border:#1A2E4A;
  --blue:#4E9FFF;--blue-dim:rgba(78,159,255,.1);--blue-b:rgba(78,159,255,.25);
  --gold:#F5A623;--gold-dim:rgba(245,166,35,.12);--gold-b:rgba(245,166,35,.28);
  --purple:#A78BFA;--purple-dim:rgba(167,139,250,.1);--purple-b:rgba(167,139,250,.25);
  --text:#E8EDF5;--muted:#647499;--green:#22C55E;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;line-height:1.6}
a{text-decoration:none}
.container{max-width:1080px;margin:0 auto;padding:0 24px}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{0%{left:-100%}100%{left:200%}}
.au{opacity:0;animation:fadeUp .65s ease forwards}
.au1{animation-delay:.1s}.au2{animation-delay:.2s}.au3{animation-delay:.3s}.au4{animation-delay:.4s}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  border-bottom:1px solid rgba(26,46,74,.9);
  background:rgba(7,16,30,.92);backdrop-filter:blur(18px);
}
.nav-inner{
  max-width:1080px;margin:0 auto;padding:0 24px;
  height:62px;display:flex;align-items:center;justify-content:space-between;
}
.nav-logo{font-family:'Playfair Display',serif;font-size:19px;font-weight:900;letter-spacing:-.02em;color:var(--text)}
.nav-logo span{color:var(--blue);font-style:italic}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-link{color:var(--text);font-size:13px;font-weight:600;opacity:.7;transition:opacity .2s}
.nav-link:hover{opacity:1}
.nav-link.active{color:var(--gold);opacity:1}
.nav-cta{
  background:var(--gold);color:#000;border:none;border-radius:8px;
  padding:9px 20px;font-size:13px;font-weight:700;cursor:pointer;
  font-family:'DM Sans',sans-serif;transition:opacity .2s;
  display:inline-block;position:relative;overflow:hidden;
}
.nav-cta:hover{opacity:.88}
.nav-cta::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 3s infinite}
.svc-dropdown{position:relative}
.svc-btn{background:none;border:none;color:var(--text);font-size:13px;font-weight:600;opacity:.7;cursor:pointer;font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:4px;transition:opacity .2s;padding:0}
.svc-btn:hover{opacity:1}
.svc-arrow{font-size:9px;transition:transform .2s}
.svc-dropdown.open .svc-arrow{transform:rotate(180deg)}
.svc-menu{display:none;position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px;min-width:240px;z-index:200}
.svc-dropdown.open .svc-menu{display:block}
.svc-menu a{display:block;padding:10px 14px;color:var(--text);font-size:13px;font-weight:500;border-radius:8px;transition:background .15s}
.svc-menu a:hover{background:rgba(255,255,255,.06)}
@media(max-width:900px){.nav-links .nav-link:not(.keep),.svc-dropdown{display:none}}

/* ── HERO ── */
.about-hero{
  padding:120px 24px 72px;
  text-align:center;
  position:relative;overflow:hidden;
}
.hero-glow{
  position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:700px;height:350px;
  background:radial-gradient(ellipse,rgba(78,159,255,.08) 0%,transparent 65%);
  pointer-events:none;
}
.hero-inner{max-width:700px;margin:0 auto;position:relative;z-index:1}
.about-eyebrow{
  display:inline-block;
  background:var(--blue-dim);border:1px solid var(--blue-b);
  color:var(--blue);font-size:11px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;
  padding:4px 14px;border-radius:20px;margin-bottom:20px;
}
.about-hero h1{
  font-family:'Playfair Display',serif;
  font-size:clamp(34px,5vw,58px);
  font-weight:900;line-height:1.1;
  color:var(--text);margin-bottom:20px;
  letter-spacing:-.025em;
}
.about-hero h1 em{color:var(--gold);font-style:italic}
.about-hero-sub{
  font-size:18px;color:var(--muted);
  line-height:1.75;max-width:560px;margin:0 auto;
}

/* ── ORIGIN STORY ── */
.story-section{padding:72px 0;border-top:1px solid var(--border)}
.story-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:64px;align-items:center;
}
.story-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--gold);margin-bottom:14px;
}
.story-text h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.5vw,38px);
  font-weight:900;line-height:1.2;
  color:var(--text);margin-bottom:20px;
  letter-spacing:-.02em;
}
.story-text h2 em{color:var(--gold);font-style:italic}
.story-text p{
  font-size:16px;color:var(--muted);
  line-height:1.85;margin-bottom:18px;
}
.story-text p:last-child{margin-bottom:0}
.story-text p strong{color:var(--text);font-weight:600}

.story-visual{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:20px;
  padding:36px 32px;
  position:relative;overflow:hidden;
}
.story-visual::before{
  content:'';position:absolute;top:-40px;right:-40px;
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(245,166,35,.08) 0%,transparent 70%);
  pointer-events:none;
}
.location-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--gold-dim);border:1px solid var(--gold-b);
  border-radius:20px;padding:5px 14px;
  font-size:12px;font-weight:700;color:var(--gold);
  margin-bottom:24px;
}
.story-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.story-stat{
  background:var(--bg);border:1px solid var(--border);
  border-radius:12px;padding:18px 16px;text-align:center;
}
.stat-number{
  font-family:'Playfair Display',serif;
  font-size:32px;font-weight:900;
  color:var(--blue);line-height:1;margin-bottom:6px;
}
.stat-number.gold{color:var(--gold)}
.stat-number.purple{color:var(--purple)}
.stat-number.green{color:var(--green)}
.stat-label{font-size:12px;color:var(--muted);line-height:1.4}

.story-quote{
  margin-top:24px;
  padding:18px 20px;
  background:var(--bg);
  border-left:3px solid var(--gold);
  border-radius:0 8px 8px 0;
}
.story-quote p{
  font-family:'Playfair Display',serif;
  font-size:15px;font-style:italic;
  color:var(--text);line-height:1.65;margin:0;
}

@media(max-width:800px){
  .story-grid{grid-template-columns:1fr;gap:40px}
}

/* ── BELIEFS ── */
.beliefs-section{padding:72px 0;border-top:1px solid var(--border)}
.beliefs-header{text-align:center;margin-bottom:52px}
.beliefs-eyebrow{
  display:inline-block;
  background:var(--purple-dim);border:1px solid var(--purple-b);
  color:var(--purple);font-size:11px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;
  padding:4px 14px;border-radius:20px;margin-bottom:16px;
}
.beliefs-header h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,4vw,40px);font-weight:900;
  line-height:1.15;color:var(--text);
}
.beliefs-header h2 em{color:var(--purple);font-style:italic}
.beliefs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.belief-card{
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:28px 24px;
  transition:border-color .2s,transform .2s;
}
.belief-card:hover{border-color:rgba(167,139,250,.3);transform:translateY(-3px)}
.belief-icon{font-size:28px;margin-bottom:14px}
.belief-card h3{
  font-size:16px;font-weight:700;
  color:var(--text);margin-bottom:10px;
  line-height:1.3;
}
.belief-card p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}
@media(max-width:768px){.beliefs-grid{grid-template-columns:1fr}}

/* ── WHY IT WORKS ── */
.how-section{padding:72px 0;border-top:1px solid var(--border)}
.how-header{text-align:center;margin-bottom:52px}
.how-eyebrow{
  display:inline-block;
  background:var(--blue-dim);border:1px solid var(--blue-b);
  color:var(--blue);font-size:11px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;
  padding:4px 14px;border-radius:20px;margin-bottom:16px;
}
.how-header h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,4vw,40px);font-weight:900;
  line-height:1.15;color:var(--text);margin-bottom:12px;
}
.how-header h2 em{color:var(--blue);font-style:italic}
.how-header p{font-size:16px;color:var(--muted);line-height:1.7;max-width:560px;margin:0 auto}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.how-step{
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:28px 24px;position:relative;
}
.step-num{
  width:32px;height:32px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;color:#000;
  margin-bottom:16px;
}
.num-blue{background:var(--blue)}
.num-gold{background:var(--gold)}
.num-purple{background:var(--purple)}
.num-green{background:var(--green)}
.how-step h3{font-size:15px;font-weight:700;color:var(--text);margin-bottom:8px}
.how-step p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}
@media(max-width:768px){.how-steps{grid-template-columns:1fr}}

/* ── PROMISE ── */
.promise-section{padding:72px 0;border-top:1px solid var(--border)}
.promise-box{
  background:linear-gradient(135deg,var(--card2) 0%,#0D1829 100%);
  border:1px solid var(--border);border-radius:20px;
  padding:52px 48px;text-align:center;
  position:relative;overflow:hidden;
}
.promise-glow{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:500px;height:300px;
  background:radial-gradient(ellipse,rgba(78,159,255,.06) 0%,transparent 65%);
  pointer-events:none;
}
.promise-inner{position:relative;z-index:1}
.promise-eyebrow{
  display:inline-block;
  background:var(--gold-dim);border:1px solid var(--gold-b);
  color:var(--gold);font-size:11px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;
  padding:4px 14px;border-radius:20px;margin-bottom:18px;
}
.promise-box h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,4vw,42px);font-weight:900;
  line-height:1.15;color:var(--text);margin-bottom:16px;
}
.promise-box h2 em{color:var(--gold);font-style:italic}
.promise-box p{
  font-size:16px;color:var(--muted);
  line-height:1.8;max-width:600px;margin:0 auto 28px;
}
.promise-pills{
  display:flex;gap:12px;justify-content:center;flex-wrap:wrap;
  margin-bottom:32px;
}
.promise-pill{
  display:flex;align-items:center;gap:7px;
  background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2);
  border-radius:20px;padding:7px 16px;
  font-size:13px;font-weight:600;color:var(--text);
}
.promise-pill span{color:var(--green);font-size:15px}
@media(max-width:600px){.promise-box{padding:36px 24px}}

/* ── CTA ── */
.about-cta-section{padding:72px 0;border-top:1px solid var(--border)}
.about-cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.about-cta-card{
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:28px 24px;
  transition:border-color .2s,transform .2s;display:block;
}
.about-cta-card:hover{transform:translateY(-3px)}
.about-cta-card.blue:hover{border-color:rgba(78,159,255,.4)}
.about-cta-card.gold:hover{border-color:rgba(245,166,35,.4)}
.about-cta-card.purple:hover{border-color:rgba(167,139,250,.4)}
.cta-card-tag{
  font-size:10px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;padding:3px 10px;border-radius:20px;
  margin-bottom:12px;display:inline-block;
}
.tag-blue{background:var(--blue-dim);color:var(--blue);border:1px solid var(--blue-b)}
.tag-gold{background:var(--gold-dim);color:var(--gold);border:1px solid var(--gold-b)}
.tag-purple{background:var(--purple-dim);color:var(--purple);border:1px solid var(--purple-b)}
.about-cta-card h3{font-size:16px;font-weight:700;color:var(--text);margin-bottom:8px;line-height:1.3}
.about-cta-card p{font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:16px}
.cta-card-link{font-size:13px;font-weight:700;display:flex;align-items:center;gap:5px}
.cta-card-link.blue{color:var(--blue)}
.cta-card-link.gold{color:var(--gold)}
.cta-card-link.purple{color:var(--purple)}
.about-cta-header{text-align:center;margin-bottom:40px}
.about-cta-header h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,3.5vw,36px);font-weight:900;
  color:var(--text);margin-bottom:10px;
}
.about-cta-header h2 em{color:var(--gold);font-style:italic}
.about-cta-header p{font-size:15px;color:var(--muted)}
@media(max-width:768px){.about-cta-grid{grid-template-columns:1fr}}

/* ── FOOTER ── */
footer{border-top:1px solid var(--border);padding:44px 24px;text-align:center}
.footer-logo{font-family:'Playfair Display',serif;font-size:21px;font-weight:900;margin-bottom:10px}
.footer-logo span{color:var(--blue);font-style:italic}
.footer-links-row{margin-bottom:8px}
.footer-links-row a{color:var(--muted);font-size:13px;margin:0 10px;transition:color .2s}
.footer-links-row a:hover{color:var(--text)}
footer p.copy{color:var(--muted);font-size:12px;margin-top:10px}
