
:root{
  --bg:#050d18;
  --bg2:#081426;
  --panel:#0d1b2e;
  --panel2:#101f34;
  --line:#263f60;
  --text:#f8fbff;
  --muted:#b7c2d4;
  --gold:#d9ad4a;
  --gold2:#f5d98c;
  --danger:#ffb4a8;
  --success:#c4f3d2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:radial-gradient(circle at top right,#132b48,#050d18 42%,#02060d);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{text-decoration:none;color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid var(--gold2);
  outline-offset:4px;
}
.container{width:min(1180px,92%);margin:auto}
.nav{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(5,13,24,.9);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-inner{min-height:80px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.logo{width:225px;max-width:50vw;display:block}
.nav-links{display:flex;align-items:center;gap:26px;color:var(--muted);font-weight:750;font-size:.96rem}
.nav-links a{transition:.2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:white}
.menu{display:none}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:14px;
  padding:14px 21px;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  color:#06101c!important;
  font-weight:950;
  border:none;
  cursor:pointer;
  min-height:46px;
}
.btn:hover{filter:brightness(1.05)}
.btn.small{padding:10px 15px;min-height:38px}
.btn.ghost{background:transparent;color:white!important;border:1px solid rgba(217,173,74,.65)}
.btn.full{width:100%;margin-top:10px}
.btn.big{font-size:1.05rem;padding:18px 26px}
.text-link{color:var(--gold2);font-weight:900;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.hero,.section{padding:86px 0;border-top:1px solid rgba(255,255,255,.08)}
.hero{border-top:0;padding-top:96px}
.hero-grid,.split,.form-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.kicker{color:var(--gold);font-size:.78rem;font-weight:950;letter-spacing:3px;text-transform:uppercase;margin-bottom:10px}
h1{font-size:clamp(3rem,7vw,6.35rem);line-height:.92;margin:12px 0 20px;letter-spacing:-.06em}
h2{font-size:clamp(2.1rem,4.2vw,3.6rem);line-height:1.04;margin:8px 0 18px;letter-spacing:-.04em}
h3{font-size:1.25rem;margin:0 0 10px}
p,li,small,.note{color:var(--muted);line-height:1.75}
strong{color:white}
.lead{font-size:1.18rem;max-width:760px}
.hero-panel,.panel,.price-card,.form-card,.builder-main,.summary-card,article,details{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
  border:1px solid var(--line);
  border-radius:28px;
  padding:28px;
  box-shadow:0 24px 90px rgba(0,0,0,.24);
}
.actions,.badges{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.actions.center,.center{justify-content:center;text-align:center}
.badges span{
  padding:9px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#dce6f5;
  font-weight:800;
}
.section-head{text-align:center;max-width:880px;margin:0 auto 42px}
.cards,.pricing,.faq-grid,.estimate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cards.two{grid-template-columns:repeat(2,1fr)}
.cards article span{color:var(--gold);font-weight:950}
.price{font-size:2.45rem;color:white;font-weight:950}
.featured{border-color:rgba(217,173,74,.72)!important}
.band{background:linear-gradient(90deg,rgba(217,173,74,.12),rgba(255,255,255,.02))}
input,select,textarea,.search{
  width:100%;
  padding:16px;
  border-radius:15px;
  border:1px solid #375374;
  background:#101f34;
  color:white;
  font:inherit;
}
textarea{min-height:145px;resize:vertical}
label{display:block;color:#e7edf7;font-weight:850;margin-bottom:8px}
.field{display:flex;flex-direction:column}
.consent{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-weight:700;line-height:1.6}
.consent input{width:auto;margin-top:6px}
.faq-grid{grid-template-columns:repeat(2,1fr);margin-top:24px}
summary{font-weight:900;cursor:pointer}
.site-footer{padding:46px 0 22px;color:var(--muted);border-top:1px solid var(--line);background:rgba(2,6,13,.55)}
.footer-grid{display:grid;grid-template-columns:1.4fr .75fr .75fr 1fr;gap:34px}
.footer-grid a{display:block;color:var(--muted);margin:10px 0}
.footer-grid a:hover{color:white}
.footer-logo{width:215px;margin-bottom:10px}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid rgba(255,255,255,.08);margin-top:26px;padding-top:18px}
.mini-list{display:grid;gap:12px;margin-top:20px}
.mini-list div{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.mini-list div:last-child{border-bottom:0}
.mini-list strong{display:block;margin-bottom:3px}
.mini-list span{color:var(--muted);line-height:1.6}
.check-list{padding-left:22px}
.check-list li{margin:10px 0}
.builder{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:24px;align-items:start}
.summary-card{position:sticky;top:102px}
.tabs{display:flex;border:1px solid var(--line);border-radius:18px;padding:6px;background:#0a1728;margin-bottom:26px}
.tab{flex:1;border:none;border-radius:14px;padding:14px;background:transparent;color:var(--muted);font-weight:950;cursor:pointer}
.tab.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#06101c}
.option-grid,.addon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:14px 0 28px}
.choice,.service-choice,.addon{
  border:1px solid var(--line);
  background:#0e1c30;
  border-radius:18px;
  padding:18px;
  cursor:pointer;
  display:block;
  transition:.2s;
  position:relative;
}
.choice:hover,.service-choice:hover,.addon:hover{transform:translateY(-2px);border-color:rgba(217,173,74,.5)}
.choice.active,.service-choice.active{border-color:var(--gold);box-shadow:0 0 0 1px rgba(217,173,74,.28)}
.choice input,.service-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.choice strong,.service-choice strong{display:block;color:white;margin-bottom:7px}
.choice span,.service-choice span{display:block;color:var(--muted);line-height:1.55}
.choice em{display:block;color:var(--gold2);font-style:normal;font-weight:900;margin:8px 0}
.service-list{display:grid;gap:12px;margin:14px 0 28px}
.service-choice{display:flex;justify-content:space-between;align-items:center;gap:16px}
.service-choice b{color:var(--gold2);white-space:nowrap}
.clean-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.clean-form .wide,.clean-form textarea,.clean-form button,.contact-form .wide{grid-column:1/-1}
.clean-form h2{margin-top:18px;margin-bottom:2px}
.line{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.09);color:var(--muted)}
.line strong{color:white;text-align:right}
.total-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:18px;gap:15px}
.total-row strong{font-size:2rem;color:var(--gold2)}
.hidden{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.estimate-hero{text-align:center;max-width:880px;margin:0 auto 35px}
.estimate-total{font-size:4rem;font-weight:950;color:var(--gold2)}
.estimate-grid{grid-template-columns:1fr 1fr}
.wide{grid-column:1/-1}
table{width:100%;border-collapse:collapse}
td,th{padding:14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:white}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:24px;align-items:start}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.steps-grid span{color:var(--gold);font-weight:950}
.policy-stack{display:grid;gap:18px;max-width:940px;margin:0 auto}
.toast{position:fixed;right:24px;bottom:24px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#06101c;font-weight:950;padding:16px 20px;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35);z-index:1000;max-width:min(420px,90vw)}
.toast.error{background:linear-gradient(135deg,var(--danger),#ffd3cd)}
.back-top{position:fixed;right:20px;bottom:20px;border:1px solid var(--line);background:rgba(5,13,24,.9);color:white;border-radius:999px;width:44px;height:44px;display:none;align-items:center;justify-content:center;font-weight:900;cursor:pointer;z-index:999}
.back-top.show{display:flex}
.package-section{margin:70px 0}
.package-intro{max-width:850px;font-size:1.05rem}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.package-card{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
  border:1px solid var(--line);
  border-radius:28px;
  padding:28px;
  box-shadow:0 24px 90px rgba(0,0,0,.24);
}
.package-card h3{font-size:1.35rem}
.price-line{font-size:1.5rem;color:var(--gold2);font-weight:950;margin:8px 0 12px}
.policy-callout{margin-top:28px;background:linear-gradient(180deg,rgba(217,173,74,.12),rgba(255,255,255,.035));border:1px solid rgba(217,173,74,.55);border-radius:28px;padding:28px;box-shadow:0 24px 90px rgba(0,0,0,.22)}
.policy-callout.compact{margin:12px 0 28px;padding:22px}
.policy-callout h2,.policy-callout h3{color:white;margin-bottom:10px}
.policy-callout p{margin:8px 0}
.founder-section blockquote,blockquote{border-left:3px solid var(--gold);padding-left:18px;color:#fff;font-size:1.15rem;line-height:1.7;margin-left:0}
.founder-grid{display:grid;grid-template-columns:minmax(0,1.15fr) 420px;gap:36px;align-items:start}
.founder-card{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.025));border:1px solid rgba(217,173,74,.45);border-radius:30px;padding:30px;box-shadow:0 24px 90px rgba(0,0,0,.24)}
.founder-mark{width:88px;height:88px;border-radius:24px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#06101c;display:flex;align-items:center;justify-content:center;font-weight:950;font-size:2rem;margin-bottom:18px}
.sample-stack{display:grid;gap:24px}
.audit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
.flow{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0}
.flow div{border:1px solid var(--line);background:#0e1c30;border-radius:18px;padding:18px;position:relative}
.flow div:not(:last-child)::after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);color:var(--gold2);font-weight:950}
.flow strong,.flow span{display:block}
.flow span{color:var(--muted);line-height:1.55;margin-top:8px}
.final-cta{background:linear-gradient(90deg,rgba(217,173,74,.14),rgba(255,255,255,.02))}
.form-error{border-color:var(--danger)!important}
.error-message{color:var(--danger);font-weight:800;margin-top:6px}
@media(max-width:1240px){
  .nav-links{gap:16px;font-size:.88rem}
  .logo{width:200px}
  .btn.small{padding:9px 14px}
}
@media(max-width:1080px){
  .nav-inner{min-height:74px}
  .menu{display:block;background:none;border:0;color:white;font-size:1.8rem;cursor:pointer}
}
@media(max-width:950px){
  .hero-grid,.split,.form-grid,.cards,.cards.two,.pricing,.faq-grid,.builder,.option-grid,.addon-grid,.estimate-grid,.contact-layout,.contact-form,.steps-grid,.package-grid,.founder-grid,.audit-grid,.flow,.footer-grid{grid-template-columns:1fr}
  .summary-card{position:relative;top:auto}
  h1{font-size:3.1rem}
  .clean-form{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
  .flow div:not(:last-child)::after{content:"↓";right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%)}
}
@media(max-width:560px){
  .section,.hero{padding:62px 0}
  h1{font-size:2.65rem}
  h2{font-size:2rem}
  .hero-panel,.panel,.price-card,.form-card,.builder-main,.summary-card,article,details,.package-card{padding:22px}
  .tabs{flex-direction:column}
  .service-choice{align-items:flex-start;flex-direction:column}
  .estimate-total{font-size:3rem}
}
@media print{
  .nav,.site-footer,.actions,.back-top{display:none!important}
  body{background:white;color:#111}
  p,li,small,.note{color:#333}
  .panel,.price-card,.builder-main,.summary-card,article,details{box-shadow:none;border:1px solid #ddd;background:white;color:#111}
  strong,h1,h2,h3{color:#111}
}

/* Stratovate v2 launch additions */
.compact-hero{padding:78px 0 54px}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.journey-card{min-height:100%;display:flex;flex-direction:column}
.journey-card .btn{margin-top:auto}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.service-detail{padding:30px}
.service-detail h2{font-size:2rem;margin-bottom:5px}
.compare-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.035)}
.pricing.five{grid-template-columns:repeat(5,1fr)}
.service-list.multi{display:grid;grid-template-columns:1fr;gap:12px}
.multi .service-choice{align-items:flex-start}
.multi .service-choice input{position:static;opacity:1;pointer-events:auto;width:auto;margin-top:5px;accent-color:#d9ad4a}
.multi .service-choice .choice-copy{flex:1}
.multi .service-choice small{display:block;color:var(--muted);margin-top:5px}
.discount-pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(217,173,74,.15);border:1px solid rgba(217,173,74,.5);color:var(--gold2);font-weight:900;margin-top:10px}
@media(max-width:1180px){.journey-grid,.pricing.five{grid-template-columns:repeat(2,1fr)}}
@media(max-width:950px){.journey-grid,.service-detail-grid,.pricing.five{grid-template-columns:1fr}}


.calendar-mock{border:1px solid rgba(246,202,92,.45);border-radius:22px;padding:18px;margin:18px 0;background:rgba(255,255,255,.035)}
.calendar-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;color:var(--text)}
.calendar-head span{color:var(--muted);font-size:.95rem}
.calendar-grid,.time-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}
.calendar-grid button,.time-grid button{border:1px solid rgba(255,255,255,.14);background:rgba(9,25,45,.85);color:var(--text);border-radius:12px;padding:12px;font-weight:800;cursor:default}
.time-grid{grid-template-columns:repeat(2,1fr)}
.time-grid button{border-color:rgba(246,202,92,.45)}
@media(max-width:800px){.calendar-grid{grid-template-columns:repeat(3,1fr)}.time-grid{grid-template-columns:1fr}.calendar-head{flex-direction:column;align-items:flex-start}}

/* Stratovate final launch additions */
.feedback-card{margin-top:28px;margin-bottom:18px;padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.04);display:flex;gap:18px;justify-content:space-between;align-items:center}
.feedback-card h3{margin:0 0 8px}.feedback-card p{margin:0;max-width:850px}.deliverable-meta{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}.deliverable-meta span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:999px;padding:8px 12px;font-size:.9rem}.columns{columns:2}.project-priority-box .service-choice{margin-top:12px}.priority-options{display:grid;gap:12px}
@media(max-width:720px){.feedback-card{flex-direction:column;align-items:flex-start}.columns{columns:1}}

/* v1.0 fixes: FAQ nav, website intake, and embedded Calendly */
.no-margin-top{margin-top:0!important}
.calendly-live{min-width:0}
.calendly-live .calendly-inline-widget{width:100%;border-radius:22px;overflow:hidden;background:#fff}
@media(min-width:951px){.contact-layout{grid-template-columns:minmax(0,.9fr) minmax(560px,1.15fr)}}

/* v3 upgrade: motion, depth, and booking reliability */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

.hero{position:relative;overflow:hidden}
.hero::before,.hero::after{
  content:"";position:absolute;border-radius:50%;filter:blur(90px);z-index:0;pointer-events:none;
}
.hero::before{width:520px;height:520px;top:-220px;right:-120px;background:radial-gradient(circle,rgba(217,173,74,.32),transparent 70%)}
.hero::after{width:460px;height:460px;bottom:-260px;left:-140px;background:radial-gradient(circle,rgba(90,140,220,.24),transparent 70%)}
.hero-grid{position:relative;z-index:1}

.nav-links a{position:relative;padding-bottom:4px}
.nav-links a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));transition:right .25s ease;border-radius:2px;
}
.nav-links a:hover::after,.nav-links a.active::after{right:0}
.nav-links a.btn::after{display:none}

@media(max-width:1080px){
  .nav-links{
    display:flex;max-height:0;opacity:0;overflow:hidden;padding:0 18px;
    position:absolute;top:74px;right:4%;left:4%;background:#071220;border:1px solid var(--line);
    border-radius:18px;flex-direction:column;align-items:flex-start;gap:14px;font-size:1rem;
    transition:max-height .32s ease,opacity .28s ease,padding .32s ease;
  }
  .nav-links.open{max-height:560px;opacity:1;padding:18px}
}

.cards article,.price-card,.package-card,.journey-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.cards article:hover,.price-card:hover,.package-card:hover,.journey-card:hover{
  transform:translateY(-5px);border-color:rgba(217,173,74,.55);box-shadow:0 30px 100px rgba(0,0,0,.32);
}
.btn{transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(217,173,74,.28)}
.btn:active{transform:translateY(0)}
.btn.ghost:hover{background:rgba(217,173,74,.1)}

.stat-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
.stat-bar div{
  text-align:center;border:1px solid var(--line);border-radius:20px;padding:20px 14px;
  background:rgba(255,255,255,.035);
}
.stat-bar strong{display:block;font-size:1.9rem;color:var(--gold2);font-weight:950;margin-bottom:4px}
.stat-bar span{color:var(--muted);font-size:.88rem;line-height:1.4;display:block}
@media(max-width:700px){.stat-bar{grid-template-columns:1fr 1fr}}

.calendly-wrap{position:relative;min-height:200px}
.calendly-skeleton{
  position:absolute;inset:0;display:flex;flex-direction:column;gap:14px;padding:22px;
  background:#fff;border-radius:22px;z-index:1;transition:opacity .3s ease;
}
.calendly-skeleton.hidden{opacity:0;pointer-events:none}
.skeleton-line{height:16px;border-radius:8px;background:linear-gradient(90deg,#e9edf3,#f6f8fb,#e9edf3);background-size:200% 100%;animation:shimmer 1.4s infinite}
.skeleton-line.short{width:45%}
.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.skeleton-grid span{height:52px;border-radius:12px;background:linear-gradient(90deg,#e9edf3,#f6f8fb,#e9edf3);background-size:200% 100%;animation:shimmer 1.4s infinite}
.calendly-skeleton p{color:#7c8798;font-weight:700;margin:auto 0 0;text-align:center}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

.book-launcher{
  position:fixed;left:20px;bottom:20px;z-index:998;border:none;border-radius:999px;
  padding:14px 20px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#06101c;
  font-weight:950;cursor:pointer;box-shadow:0 18px 46px rgba(0,0,0,.35);
  opacity:0;transform:translateY(14px);pointer-events:none;
  transition:transform .2s ease,box-shadow .2s ease,opacity .25s ease;
}
.book-launcher.show{opacity:1;transform:translateY(0);pointer-events:auto}
.book-launcher:hover{transform:translateY(-3px);box-shadow:0 22px 54px rgba(0,0,0,.4)}
@media(max-width:560px){.book-launcher{left:14px;bottom:14px;padding:12px 16px;font-size:.92rem}}

/* v4 refresh: refined type rhythm, buttons, cards, pricing, footer */
.kicker{display:inline-flex;align-items:center;gap:9px}
.kicker::before{content:"";width:22px;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:2px}

.btn{
  border-radius:13px;
  padding:15px 24px;
  letter-spacing:-.01em;
  position:relative;
  overflow:hidden;
}
.btn.big{padding:19px 28px}
.btn.small{padding:10px 16px}
.btn::after{
  content:"→";margin-left:2px;display:inline-block;opacity:0;max-width:0;
  transition:opacity .2s ease,max-width .2s ease,margin-left .2s ease;
}
.btn:hover::after{opacity:1;max-width:20px;margin-left:6px}
.btn.ghost{border-width:1.5px}
.btn.full::after{display:none}
.nav-links .btn::after{display:none}

.section-head{position:relative}
.hero-panel,.panel,.price-card,.form-card,.builder-main,.summary-card,article,details{
  border-radius:24px;
}
.cards article,.package-card{position:relative}
.cards article::before,.package-card::before{
  content:"";position:absolute;left:24px;right:24px;top:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));
  transform:scaleX(0);transform-origin:left;transition:transform .3s ease;
}
.cards article:hover::before,.package-card:hover::before{transform:scaleX(1)}
.cards article h3,.package-card h3{letter-spacing:-.01em}

.price-card{display:flex;flex-direction:column;position:relative}
.price-card.featured{position:relative;padding-top:66px;overflow:visible}
.price-card.featured::before{
  content:"Most Popular";position:absolute;top:18px;left:24px;transform:none;
  background:linear-gradient(135deg,var(--gold),var(--gold2));color:#06101c;font-weight:950;
  font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;border-radius:999px;
  box-shadow:0 10px 24px rgba(0,0,0,.35);
}
.price-card .btn{margin-top:auto}

.site-footer{position:relative}
.site-footer::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(217,173,74,.5),transparent);
}
.footer-grid h3{color:white;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.footer-grid a{font-size:.95rem}

@media(max-width:560px){
  .price-card.featured{padding-top:54px}
}


/* Final UI polish: cleaner navigation, clear hover states, and consultation prep callout */
.nav-links{gap:22px}
.nav-links a:not(.btn){border-radius:8px;padding:8px 2px}
.nav-links a:not(.btn):hover{color:#fff;text-shadow:0 0 18px rgba(245,217,140,.28)}
.nav-links a.active{color:#fff}
.prep-panel{border-color:rgba(217,173,74,.55)!important;background:linear-gradient(180deg,rgba(217,173,74,.12),rgba(255,255,255,.035))!important}
.prep-panel strong{color:var(--gold2)}
.journey-card{min-height:620px;display:flex;flex-direction:column}
.journey-card h2{font-size:clamp(2.5rem,4.7vw,4.9rem);line-height:.95;letter-spacing:-.065em}
.journey-card:hover{transform:translateY(-7px) scale(1.01);border-color:rgba(245,217,140,.82)!important;box-shadow:0 34px 120px rgba(0,0,0,.42),0 0 0 1px rgba(217,173,74,.18)}
.choice:hover,.service-choice:hover,.addon:hover,.panel:hover,.hero-panel:hover{border-color:rgba(217,173,74,.45);box-shadow:0 24px 90px rgba(0,0,0,.30)}
.back-top:hover{border-color:rgba(217,173,74,.75);box-shadow:0 16px 40px rgba(0,0,0,.35);transform:translateY(-2px)}
@media(max-width:1100px){.journey-grid{grid-template-columns:repeat(2,1fr)}.journey-card{min-height:auto}}
@media(max-width:720px){.journey-grid{grid-template-columns:1fr}.journey-card h2{font-size:clamp(2.4rem,15vw,4.2rem)}}

/* Stratovate Excellence Pass: premium motion, smoother cards, refined paths */
:root{--nav-h:80px;--glow:rgba(217,173,74,.28)}
body{background-attachment:fixed;}
::selection{background:rgba(217,173,74,.35);color:#fff}
.nav{box-shadow:0 18px 70px rgba(0,0,0,.32)}
.nav-inner{min-height:var(--nav-h)}
.nav-links{gap:20px}
.nav-links a:not(.btn){padding:10px 3px;border-radius:10px;line-height:1.15}
.nav-links a:not(.btn):hover{transform:translateY(-1px)}
.hero,.section{scroll-margin-top:calc(var(--nav-h) + 20px)}
.hero{padding-top:80px;padding-bottom:90px}
.compact-hero{padding-top:66px;padding-bottom:64px}
.section{padding:78px 0}
.hero-panel,.panel,.price-card,.form-card,.builder-main,.summary-card,article,details,.package-card,.policy-callout{will-change:transform}
.cards article:hover,.price-card:hover,.package-card:hover,.journey-card:hover,.panel:hover,.hero-panel:hover,.form-card:hover{
  box-shadow:0 34px 110px rgba(0,0,0,.38),0 0 0 1px rgba(217,173,74,.12);
}
.journey-grid.refined{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}
.journey-grid.refined .journey-card{min-height:560px}
.journey-grid.refined .journey-card h2{font-size:clamp(2rem,3.1vw,3.6rem);line-height:.96}
.website-path-callout{max-width:980px;margin:28px auto 0;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:22px}
.website-path-callout .btn{white-space:nowrap}
.calendly-card{padding:0;overflow:hidden;border-color:rgba(217,173,74,.35)}
.calendly-card > h2,.calendly-card > p{padding-left:28px;padding-right:28px}
.calendly-card > h2{padding-top:28px;margin-bottom:2px}
.calendly-live .calendly-inline-widget{min-height:820px;border-top:1px solid rgba(255,255,255,.08)}
.prep-panel{position:relative;overflow:hidden}
.prep-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(245,217,140,.14),transparent 42%);pointer-events:none}
.prep-panel > *{position:relative}
.back-top{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .25s ease}
.book-launcher{letter-spacing:-.01em}
.form-error{border-color:var(--danger)!important;box-shadow:0 0 0 3px rgba(255,180,168,.12)}
input:hover,select:hover,textarea:hover{border-color:rgba(217,173,74,.45)}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(217,173,74,.14);outline:none}
.faq-grid details:hover{border-color:rgba(217,173,74,.42)}
.service-choice,.choice,.addon{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}
.service-choice:hover,.choice:hover,.addon:hover{background:#10243c}
@media(max-width:1200px){.journey-grid.refined{grid-template-columns:repeat(2,1fr)}.journey-grid.refined .journey-card{min-height:auto}}
@media(max-width:720px){.journey-grid.refined{grid-template-columns:1fr}}
@media(max-width:700px){.hero{padding-top:56px}.compact-hero{padding-top:50px}.nav-inner{min-height:74px}.calendly-card > h2,.calendly-card > p{padding-left:22px;padding-right:22px}.calendly-live .calendly-inline-widget{min-height:760px}}
@media(prefers-reduced-motion:no-preference){
  .nav-links a,.btn,.service-choice,.choice,.addon,.cards article,.price-card,.package-card,.journey-card,.panel,.hero-panel,.form-card{transition-timing-function:cubic-bezier(.2,.8,.2,1)}
}

.premium-hover{position:relative;overflow:hidden}
.premium-hover::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .25s ease;
  background:radial-gradient(520px circle at var(--mx,50%) var(--my,50%),rgba(245,217,140,.12),transparent 42%);
}
.premium-hover:hover::after{opacity:1}


/* Stability fix: premium motion without layout shift or screen jump */
.nav-links{gap:clamp(14px,1.4vw,22px)!important;align-items:center;justify-content:flex-end;}
.nav-links a:not(.btn){transform:none!important;white-space:nowrap;}
.nav-links a:not(.btn):hover{transform:none!important;}

/* The old hover arrow expanded the button width and could make the hero/nav reflow. Reserve space instead. */
.btn{position:relative;overflow:hidden;transform:translateZ(0);}
.btn:not(.full):not(.small){padding-right:46px!important;}
.btn:not(.full):not(.small)::after{
  content:"→";position:absolute;right:24px;top:50%;transform:translateY(-50%);
  margin-left:0;opacity:0;max-width:none;width:auto;transition:opacity .18s ease,right .18s ease;
}
.btn:not(.full):not(.small):hover::after{opacity:1;right:18px;max-width:none;margin-left:0;}
.btn.full::after,.btn.small::after,.nav-links .btn::after{display:none!important;content:none!important;}
.btn:hover{transform:translateY(-2px);}
.btn.full:hover{transform:translateY(-2px);}

/* Keep large hero panels smooth but prevent aggressive scale/reflow effects */
.hero-panel:hover,.panel:hover,.form-card:hover{transform:none!important;}
.cards article:hover,.price-card:hover,.package-card:hover,.journey-card:hover{transform:translateY(-4px)!important;}

/* Prevent browser scroll anchoring from making local testing look like the screen jumps on hover */
html,body{overflow-anchor:none;}


/* Care plan guide cards for required website care selection */
.care-plan-guide{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:14px}
.care-mini{border:1px solid var(--line);border-radius:18px;background:rgba(10,31,53,.72);padding:18px;box-shadow:0 16px 50px rgba(0,0,0,.18)}
.care-mini h3{font-size:1rem;margin-bottom:6px;color:#fff}
.care-mini .care-price{font-size:1.45rem;font-weight:950;color:var(--gold2);margin-bottom:8px}
.care-mini p{font-size:.92rem;line-height:1.45;margin:0 0 10px;color:var(--muted)}
.care-mini ul{margin:0;padding-left:18px;color:var(--muted);font-size:.88rem;line-height:1.5}
.care-mini.featured{border-color:var(--line);background:rgba(10,31,53,.72)}
.care-plan-note{margin-top:14px;color:var(--muted);font-size:.95rem}
@media(max-width:1180px){.care-plan-guide{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.care-plan-guide{grid-template-columns:1fr}}

.website-bottom-guidance{margin-top:34px;margin-bottom:0}
.clean-form .care-plan-guide.wide{margin-top:8px;margin-bottom:8px}
.clean-form .care-plan-note.wide{margin-top:2px;margin-bottom:12px}
