/* FamilySafe 11Z — public visual system refresh
   Brighter dark theme, stronger brand presence, centered high-level composition,
   higher-contrast cards/forms, and a cleaner responsive navigation. */

body.public-site{
  --bg:#0c1416;
  --panel:#152126;
  --panel2:#1a2a2f;
  --text:#f7fbfa;
  --muted:#b6c7c5;
  --line:#304449;
  --teal:#63e5d3;
  --pink:#ff78b8;
  --danger:#ff8b8b;
  --success:#6fe3a3;
  --public-surface:#152126;
  --public-surface-2:#1b2b30;
  --public-surface-3:#21353a;
  --public-border:rgba(149,190,186,.22);
  --public-border-strong:rgba(99,229,211,.34);
  --public-shadow:0 22px 70px rgba(0,0,0,.20);
  --public-shadow-soft:0 14px 38px rgba(0,0,0,.14);
  --public-radius:24px;
  min-height:100vh;
  background:
    radial-gradient(circle at 12% 0%,rgba(99,229,211,.055),transparent 25rem),
    radial-gradient(circle at 92% 18%,rgba(255,120,184,.045),transparent 28rem),
    #0c1416;
  color:var(--text);
  font-size:16px;
}
body.public-site main{overflow:hidden}
body.public-site .shell{width:min(calc(100% - 44px),1240px)}
body.public-site .narrow{max-width:900px}
body.public-site ::selection{background:rgba(99,229,211,.28);color:#fff}

/* Header / brand */
.public-site .site-header{
  background:rgba(12,20,22,.90);
  border-bottom:1px solid rgba(148,190,186,.16);
  box-shadow:0 10px 32px rgba(0,0,0,.13);
  backdrop-filter:blur(20px) saturate(130%);
}
.public-site .nav-wrap{min-height:102px;gap:30px}
.public-site .brand{gap:16px;flex:0 0 auto}
.public-site .brand img{
  width:72px;height:72px;border-radius:19px;object-fit:cover;
  box-shadow:0 10px 34px rgba(0,0,0,.22),0 0 30px rgba(99,229,211,.10);
  border:1px solid rgba(255,255,255,.09)
}
.public-site .brand-copy{display:grid;gap:1px;line-height:1.05}
.public-site .brand-copy strong{font-size:1.34rem;letter-spacing:-.02em;color:#fff}
.public-site .brand-copy small{font-size:.68rem;letter-spacing:.10em;text-transform:uppercase;color:#8fb4af;font-weight:750}
.public-site .main-nav{gap:8px;font-size:.94rem;font-weight:700}
.public-site .main-nav>a:not(.button){padding:10px 12px;border-radius:999px;color:#c8d6d4;transition:.18s ease}
.public-site .main-nav>a:not(.button):hover{background:rgba(255,255,255,.055);color:#fff}
.public-site .main-nav .button{margin-left:5px;min-height:44px;padding-inline:20px}
.public-site .nav-toggle{display:none;width:46px;height:46px;border:1px solid var(--public-border);border-radius:13px;background:rgba(255,255,255,.045);color:#fff;cursor:pointer;align-items:center;justify-content:center}
.public-site .nav-toggle span,.public-site .nav-toggle:before,.public-site .nav-toggle:after{content:"";display:block;width:20px;height:2px;background:currentColor;border-radius:3px;transition:.18s ease}
.public-site .nav-toggle span{margin:4px 0}

/* Type / common controls */
.public-site h1,.public-site h2,.public-site h3{color:#fbfdfc;text-wrap:balance}
.public-site .eyebrow{color:var(--pink);letter-spacing:.16em;font-size:.73rem}
.public-site .lead{color:#c2d0ce;line-height:1.72}
.public-site .button{
  min-height:48px;padding:11px 21px;border-radius:14px;
  background:linear-gradient(135deg,#71ead8,#37cbbd);
  color:#06201c;box-shadow:0 9px 24px rgba(55,203,189,.14);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease
}
.public-site .button:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(55,203,189,.20)}
.public-site .button.ghost{background:rgba(255,255,255,.045);color:#edf7f5;border-color:rgba(164,196,192,.28);box-shadow:none}
.public-site .button.ghost:hover{background:rgba(255,255,255,.075);border-color:rgba(99,229,211,.35)}
.public-site .actions{justify-content:center;gap:13px}
.public-site :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:12px!important}
.public-site :is(input,select,textarea):focus{outline:none!important;border-color:#54d7c8!important;box-shadow:0 0 0 3px rgba(99,229,211,.10)!important}

/* Hero system */
.public-site :is(.hero,.page-hero,.platform-public-hero,.platform-program-hero){
  position:relative;
  background:
    radial-gradient(circle at 50% -12%,rgba(99,229,211,.13),transparent 38rem),
    radial-gradient(circle at 82% 44%,rgba(255,120,184,.07),transparent 28rem),
    linear-gradient(180deg,#111c1f 0%,#0d1618 100%);
  border-bottom:1px solid rgba(151,187,184,.14)
}
.public-site :is(.page-hero,.platform-public-hero){padding:94px 0 76px;text-align:center}
.public-site :is(.page-hero,.platform-public-hero) .shell{display:grid;justify-items:center}
.public-site :is(.page-hero,.platform-public-hero) h1{max-width:980px;margin:.18em auto .28em;font-size:clamp(2.8rem,6vw,5.4rem);line-height:.98;letter-spacing:-.052em}
.public-site :is(.page-hero,.platform-public-hero) p:not(.eyebrow){margin-left:auto;margin-right:auto;max-width:820px}
.public-site .hero{padding:88px 0 72px}
.public-site .launch-home-hero .hero-grid{grid-template-columns:1fr;gap:38px;max-width:1120px;margin:auto;text-align:center}
.public-site .launch-home-hero .hero-grid>div:first-child{max-width:940px;margin:auto}
.public-site .hero h1{font-size:clamp(3.35rem,7vw,6.2rem);line-height:.96;margin:.13em 0 .28em;letter-spacing:-.06em}
.public-site .hero h1 span,.public-site .page-hero h1 span{color:#78ead9}
.public-site .launch-home-hero .lead{margin-inline:auto;max-width:830px}
.public-site .launch-trust-row{justify-content:center!important;gap:8px!important;margin-top:25px!important}
.public-site .launch-trust-row span{padding:7px 12px!important;border:1px solid rgba(151,188,184,.18)!important;border-radius:999px!important;background:rgba(255,255,255,.035)!important;color:#a9c0bc!important}

/* Home path chooser */
.public-site .launch-path-panel{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
  padding:18px;background:rgba(255,255,255,.035);border-color:rgba(148,188,184,.18);
  box-shadow:var(--public-shadow-soft);text-align:left
}
.public-site .launch-path-panel>.eyebrow{grid-column:1/-1;text-align:center;margin:2px 0 1px}
.public-site .launch-path-panel .path-card{
  border:1px solid rgba(149,190,186,.17);border-radius:17px;padding:20px!important;
  background:linear-gradient(180deg,rgba(31,49,54,.76),rgba(20,32,36,.82));
  transition:transform .16s ease,border-color .16s ease,background .16s ease
}
.public-site .launch-path-panel .path-card:hover{transform:translateY(-2px);border-color:rgba(99,229,211,.34);background:linear-gradient(180deg,rgba(36,58,63,.90),rgba(23,38,42,.94))}
.public-site .launch-path-panel .path-card:first-of-type{border-top:1px solid rgba(149,190,186,.17)}
.public-site .launch-path-panel .path-card strong{color:#fff;font-size:1.08rem}
.public-site .launch-path-panel .path-card span{display:block;margin-top:7px;color:#9fb4b0;line-height:1.5}

/* Section rhythm and centered headings */
.public-site .section{padding:82px 0}
.public-site .launch-section-head{padding-bottom:32px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:16px}
.public-site .launch-section-head>div{display:grid;justify-items:center}
.public-site .launch-section-head h2{max-width:900px;font-size:clamp(2.15rem,4vw,3.7rem)}
.public-site .launch-section-head p:not(.eyebrow){margin-inline:auto;max-width:800px}
.public-site .launch-section-head .button{margin-top:3px}

/* Core cards */
.public-site :is(.card,.launch-offer-card,.about-founder-card,.about-principle,.aha-course-card,.launch-detail-card,.launch-service-summary){
  background:linear-gradient(180deg,rgba(28,44,49,.96),rgba(20,32,36,.98));
  border-color:var(--public-border);box-shadow:var(--public-shadow-soft)
}
.public-site .card{border-radius:22px;padding:28px}
.public-site .card p,.public-site .about-founder-card p,.public-site .about-principle p{color:#afc1be}
.public-site .cards.three{gap:20px}
.public-site .cards.three .card{text-align:center}
.public-site .cards.three .card .eyebrow{margin-bottom:4px}
.public-site .launch-card-grid{gap:22px}
.public-site .launch-offer-card{
  min-height:340px;border-radius:24px;padding:27px;
  transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease
}
.public-site .launch-offer-card:hover{transform:translateY(-3px);border-color:rgba(99,229,211,.33);box-shadow:0 28px 70px rgba(0,0,0,.20)}
.public-site .launch-offer-card>p{color:#afc1be;line-height:1.62}
.public-site .launch-card-kicker{color:#69ddcf}
.public-site .launch-card-meta{border-color:rgba(157,190,187,.18)}
.public-site .launch-card-meta span{color:#9fb2af}
.public-site .launch-card-link{color:#7be7d8}
.public-site .launch-package-card{background:linear-gradient(180deg,rgba(31,52,56,.99),rgba(21,35,39,.99));border-color:rgba(99,229,211,.32)}
.public-site .launch-package-includes{background:rgba(255,255,255,.035);border-color:rgba(149,190,186,.18)}
.public-site .launch-package-includes ul{color:#b9c9c7}
.public-site .launch-package-addons{background:rgba(99,229,211,.065);border-left-color:#63e5d3}

/* AHA spotlight */
.public-site .aha-spotlight{padding:72px 0;background:linear-gradient(180deg,rgba(19,31,35,.96),rgba(14,24,27,.98));border-color:rgba(149,190,186,.15)}
.public-site .aha-spotlight-grid{gap:40px;align-items:center}
.public-site .aha-spotlight-copy h2{font-size:clamp(2.1rem,4vw,3.5rem)}
.public-site .aha-spotlight-copy>p:not(.eyebrow),.public-site .aha-course-card p{color:#afc1be}
.public-site .aha-course-grid{gap:16px}
.public-site .aha-course-card{padding:22px;border-radius:20px}
.public-site .aha-catalog-callout{border-color:rgba(255,120,184,.23);background:linear-gradient(135deg,rgba(255,120,184,.075),rgba(99,229,211,.05));box-shadow:var(--public-shadow-soft)}

/* Program page */
.public-site .platform-program-hero-v2{padding:84px 0 68px!important;background:radial-gradient(circle at 50% 0,rgba(99,229,211,.11),transparent 34rem),linear-gradient(180deg,#111c1f,#0d1618)!important}
.public-site .platform-program-hero-grid-v2{grid-template-columns:minmax(0,1fr) 340px!important;gap:52px!important;align-items:center!important}
.public-site .platform-program-hero-v2 h1{font-size:clamp(2.8rem,5vw,5rem)!important}
.public-site .platform-program-lead{color:#b8c8c6!important}
.public-site .platform-program-summary-v2,.public-site .platform-outcomes-card-v2{background:linear-gradient(180deg,#1a292e,#142126)!important;border-color:var(--public-border)!important;box-shadow:var(--public-shadow-soft)!important}
.public-site .platform-program-content-v2{gap:52px!important}
.public-site .platform-program-main p{color:#afc1be!important}
.public-site .platform-program-detail-block{border-color:rgba(148,190,186,.17)!important}
.public-site .platform-program-assurance{border-color:rgba(148,190,186,.17)!important;background:rgba(255,255,255,.03)!important}
.public-site .platform-program-primary-cta{box-shadow:0 14px 32px rgba(55,203,189,.16)!important}

/* Workplace package */
.public-site .workplace-package-section{padding-top:44px}
.public-site .workplace-package-card{background:radial-gradient(circle at 88% 8%,rgba(99,229,211,.11),transparent 34%),linear-gradient(180deg,#1d3035,#142226);border-color:rgba(99,229,211,.32);box-shadow:var(--public-shadow)}
.public-site .workplace-package-copy>p:not(.eyebrow),.public-site .workplace-package-upgrades p{color:#b4c5c2}
.public-site .workplace-package-includes li{color:#e0eae8}
.public-site .workplace-package-action{background:rgba(8,15,18,.40);border-color:rgba(159,192,189,.18)}

/* About */
.public-site .about-founder-grid{gap:38px;align-items:stretch}
.public-site .about-founder-card,.public-site .about-story{padding:30px}
.public-site .about-founder-card{border-radius:24px;border-color:rgba(99,229,211,.28)}
.public-site .about-story{border-radius:24px;background:rgba(255,255,255,.025);border:1px solid rgba(148,190,186,.12)}
.public-site .about-story h2,.public-site .about-goals h2{text-wrap:balance}
.public-site .about-goals{text-align:center}
.public-site .about-goal-grid{text-align:left;gap:18px}
.public-site .about-principle{border-radius:20px}
.public-site .about-founder-facts span{border-color:rgba(148,190,186,.17)}
.public-site .about-goals>.eyebrow,.public-site .about-goals>h2{margin-left:auto;margin-right:auto;max-width:900px}

/* Public forms / checkout / quote */
.public-site :is(.platform-enroll-page,.checkout-page,.b2b-public-wrap,.cna-support-wrap,.refund-request-wrap){color:var(--text)}
.public-site .platform-enroll-page{background:radial-gradient(circle at 50% 0,rgba(99,229,211,.075),transparent 32rem),#0c1416!important}
.public-site :is(.platform-enroll-card,.platform-enroll-summary,.b2b-public-card){background:linear-gradient(180deg,#19282d,#132025)!important;border-color:var(--public-border)!important;box-shadow:var(--public-shadow-soft)!important}
.public-site .platform-enroll-heading{text-align:center;margin-left:auto;margin-right:auto}
.public-site .platform-enroll-heading h1,.public-site .platform-enroll-heading>p:last-child{margin-left:auto;margin-right:auto}
.public-site .platform-enroll-form input:not([type=checkbox]){background:#101a1e!important;border-color:#375057!important;color:#f7fbfa!important}
.public-site .platform-enroll-summary{top:122px!important}
.public-site .b2b-public-wrap{max-width:1040px;padding-top:54px}
.public-site .b2b-public-hero{text-align:center;margin-bottom:28px}
.public-site .b2b-public-hero p{margin-left:auto;margin-right:auto;max-width:760px;color:#b3c4c1}
.public-site .b2b-public-card{padding:28px;border-radius:22px}
.public-site .b2b-form-grid input,.public-site .b2b-form-grid select,.public-site .b2b-form-grid textarea,.public-site .b2b-stack input,.public-site .b2b-stack select,.public-site .b2b-stack textarea{background:#101a1e;border-color:#375057;color:#f7fbfa}
.public-site .checkout-hero{background:radial-gradient(circle at 50% 0,rgba(99,229,211,.12),transparent 30rem),linear-gradient(180deg,#132025,#0e181b)!important}
.public-site .checkout-shell{gap:46px}
.public-site .checkout-hero h1{text-wrap:balance}
.public-site .checkout-price-card{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.14)}

/* Generic preview, included strips, policy bands */
.public-site .launch-preview-banner{border-color:rgba(99,229,211,.30);background:rgba(99,229,211,.07);color:#d8f8f3}
.public-site .launch-included-card{background:linear-gradient(180deg,rgba(99,229,211,.075),rgba(20,32,36,.96));border-color:rgba(99,229,211,.28);box-shadow:var(--public-shadow-soft)}
.public-site .launch-included-card li{background:rgba(255,255,255,.035);border-color:rgba(148,190,186,.18)}
.public-site .launch-policy-strip>div{background:#152126;border-color:var(--public-border)}
.public-site .launch-travel-card{border-color:var(--public-border)!important;background:linear-gradient(180deg,#19282d,#132025)!important;box-shadow:var(--public-shadow-soft)}

/* Footer */
.public-site .site-footer{margin-top:40px;padding:48px 0;background:#091113;border-top:1px solid rgba(149,190,186,.16)}
.public-site .footer-grid{align-items:center}
.public-site .footer-brand{display:flex;align-items:center;gap:15px;max-width:420px}
.public-site .footer-brand img{width:58px;height:58px;border-radius:16px;border:1px solid rgba(255,255,255,.08)}
.public-site .footer-brand strong{display:block;color:#fff;font-size:1.08rem}
.public-site .footer-brand p{margin:2px 0 0;color:#8fa7a3}
.public-site .footer-copy{text-align:right}
.public-site .footer-copy>p{margin:0 0 10px;color:#9bb0ac}
.public-site .policy-links{display:flex;justify-content:flex-end;gap:12px 18px;flex-wrap:wrap;font-size:.82rem}
.public-site .policy-links a{color:#8fa7a3}
.public-site .policy-links a:hover{color:#fff}

/* Responsive */
@media(max-width:1040px){
  body.public-site .shell{width:min(calc(100% - 34px),1240px)}
  .public-site .nav-wrap{min-height:88px}
  .public-site .brand img{width:62px;height:62px}
  .public-site .brand-copy small{display:none}
  .public-site .main-nav{gap:3px}
  .public-site .main-nav>a:not(.button){padding-inline:9px}
  .public-site .launch-path-panel{grid-template-columns:1fr}
  .public-site .platform-program-hero-grid-v2{grid-template-columns:1fr!important;text-align:center}
  .public-site .platform-program-summary-v2{max-width:620px;margin:auto!important;text-align:left}
  .public-site .platform-program-actions{justify-content:center}
}
@media(max-width:860px){
  .public-site .nav-wrap{position:relative}
  .public-site .nav-toggle{display:inline-grid;flex:0 0 auto}
  .public-site .main-nav{
    display:none;position:absolute;top:calc(100% - 6px);left:0;right:0;z-index:50;
    padding:12px;border:1px solid rgba(148,190,186,.20);border-radius:18px;
    background:rgba(15,25,28,.98);box-shadow:0 24px 60px rgba(0,0,0,.30);
    flex-direction:column;align-items:stretch;gap:4px
  }
  .public-site .main-nav.is-open{display:flex}
  .public-site .main-nav>a:not(.button){display:block!important;padding:12px 14px;border-radius:11px}
  .public-site .main-nav .button{margin:5px 0 0;width:100%}
  .public-site .footer-grid{display:grid;justify-items:center;text-align:center}
  .public-site .footer-copy{text-align:center}
  .public-site .policy-links{justify-content:center}
  .public-site .aha-spotlight-grid{grid-template-columns:1fr;text-align:center}
  .public-site .aha-spotlight-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}
  .public-site .aha-course-grid{max-width:760px;margin:auto}
  .public-site .workplace-package-card{grid-template-columns:1fr}
}
@media(max-width:640px){
  body.public-site .shell{width:min(calc(100% - 24px),1240px)}
  .public-site .nav-wrap{min-height:78px}
  .public-site .brand{gap:11px}
  .public-site .brand img{width:52px;height:52px;border-radius:15px}
  .public-site .brand-copy strong{font-size:1.15rem}
  .public-site .hero{padding:66px 0 54px}
  .public-site .hero h1{font-size:clamp(3rem,15vw,4.6rem)}
  .public-site :is(.page-hero,.platform-public-hero){padding:68px 0 54px}
  .public-site :is(.page-hero,.platform-public-hero) h1{font-size:clamp(2.6rem,12vw,4rem)}
  .public-site .section{padding:58px 0}
  .public-site .actions{display:grid;width:100%}
  .public-site .actions .button{width:100%}
  .public-site .launch-path-panel{padding:12px}
  .public-site .launch-offer-card{min-height:0;padding:23px}
  .public-site .cards.three{grid-template-columns:1fr}
  .public-site .aha-course-grid{grid-template-columns:1fr}
  .public-site .about-founder-card,.public-site .about-story{padding:23px}
}
