

:root{
 --navy:#17144e; --pink:#c91567; --gold:#bd7e00; --purple:#3f1f72;
 --cream:#fff8f2; --ink:#10133b; --white:#fff; --teal:#118b98; --green:#4e8118;
 --shadow:0 14px 36px rgba(23,20,78,.13); --max:1440px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,248,242,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(23,20,78,.07)}
.header-inner{width:min(calc(100% - 32px),var(--max));min-height:84px;margin:auto;display:grid;grid-template-columns:285px 1fr auto;gap:24px;align-items:center}
.brand img{width:280px}
.nav{display:flex;align-items:center;justify-content:center;gap:26px}
.nav>a,.nav-group>button{border:0;background:transparent;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:13px;color:var(--navy);padding:32px 0;white-space:nowrap;cursor:pointer}
.nav>a:hover,.nav-group>button:hover{color:var(--gold)}
.nav-group{position:relative}
.dropdown{position:absolute;top:69px;left:50%;transform:translateX(-50%) translateY(-4px);min-width:240px;padding:10px;background:white;border-radius:13px;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transition:.15s}
.dropdown a{display:block;padding:11px 12px;border-radius:8px;text-decoration:none;font-weight:700;font-size:13px}
.dropdown a:hover{background:#fff0e7;color:var(--pink)}
.nav-group:hover .dropdown,.nav-group:focus-within .dropdown,.nav-group.open .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%)}
.survivor-top{display:flex;gap:10px;align-items:center;background:var(--navy);color:white;text-decoration:none;padding:10px 15px;border-radius:11px;box-shadow:0 5px 14px rgba(23,20,78,.18)}
.survivor-top>span{font-size:25px}.survivor-top strong{font-size:13px;display:grid}.survivor-top small{font-size:10px;text-transform:uppercase;margin-top:2px}
.menu-toggle{display:none;border:0;background:var(--navy);color:white;border-radius:9px;width:46px;height:46px;font-size:22px}

.hero{min-height:610px;background:var(--cream)}
.hero-inner{min-height:610px;display:grid;grid-template-columns:minmax(420px,42%) 1fr}
.hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:55px 20px 36px max(48px,calc((100vw - var(--max))/2 + 24px));margin-right:-90px;background:linear-gradient(90deg,var(--cream) 0,var(--cream) 80%,rgba(255,248,242,.96) 90%,rgba(255,248,242,0) 100%)}
.hero-photo{min-height:610px;background:url("../../../assets/shared/images/e93ea7adcc1c48fc3443.webp") center/cover no-repeat}
.hero h1{margin:0;font-family:Georgia,serif;font-size:78px;line-height:.88}
.hero h1 em{display:block;font-family:"Brush Script MT","Segoe Script",cursive;color:var(--pink);font-size:95px;font-weight:400}
.kicker{margin:18px 0 10px;color:var(--gold);font:700 29px Georgia,serif}
.lead{max-width:565px;font-size:20px;font-weight:700;line-height:1.5}
.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:10px 18px;border-radius:9px;text-decoration:none;font-weight:800;text-transform:uppercase;box-shadow:0 4px 12px rgba(23,20,78,.15)}
.btn.navy{background:var(--navy);color:#fff}.btn.gold{background:var(--gold);color:#fff}.btn.white{background:white;color:var(--navy)}.btn.pink{background:var(--pink);color:white}
.journey-note{margin:22px 0 0 38px;font:26px "Brush Script MT","Segoe Script",cursive}

.section{padding:64px 24px}
.container{width:min(100%,var(--max));margin:auto}
.section-title{text-align:center;font-family:Georgia,serif;color:var(--navy);font-size:35px;margin:0 0 10px;text-transform:uppercase}
.section-sub{text-align:center;max-width:760px;margin:0 auto 30px;font-size:17px;line-height:1.55}
.pink-script{text-align:center;color:var(--pink);font:34px "Brush Script MT","Segoe Script",cursive;margin:18px 0}

.conversation{padding-top:24px}
.conversation-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.convo-card{min-height:300px;border-radius:17px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;color:white;box-shadow:var(--shadow)}
.convo-card.pinkbg{background:linear-gradient(135deg,#d41467,#a00d50)}
.convo-card.purplebg{background:linear-gradient(135deg,#301464,#4a217f)}
.convo-copy{padding:38px 20px 30px 38px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.convo-copy h3{font-size:28px;margin:0 0 12px}.convo-copy p{font-size:17px;line-height:1.45;margin:0 0 20px}
.convo-photo{background-position:center top;background-size:cover}
.convo-photo.call{background-image:url("../../../assets/shared/images/cea9e1038860b645945d.webp")}.convo-photo.friends{background-image:url("../../../assets/shared/images/107ea86b5ecc1e0ea7e3.webp")}

.program-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.program-card{min-height:410px;border-radius:15px;overflow:hidden;color:white;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.program-card .pcopy{padding:24px 17px 16px;min-height:235px;text-align:center}
.program-card h3{font-size:20px;margin:0 0 10px}.program-card p{font-size:14px;line-height:1.45;margin:0}
.program-card .pimg{margin-top:auto;height:175px;background-position:center;background-size:cover}
.c1{background:linear-gradient(#138793,#0b5967)}.c2{background:linear-gradient(#147bb2,#0d5183)}.c3{background:linear-gradient(#578a16,#335e0e)}.c4{background:linear-gradient(#54247f,#32135c)}.c5{background:linear-gradient(#e28c06,#b76700)}.c6{background:linear-gradient(#dc1b63,#9d0c45)}

.warriors{background:linear-gradient(135deg,#071744,#101653 60%,#061133);color:white}
.warriors .section-title{color:white;font-size:47px;letter-spacing:3px}
.warriors .section-sub{color:#f5ba35;font-weight:700}
.warrior-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.warrior-card{display:grid;grid-template-columns:45% 55%;background:#fff;color:var(--ink);border-radius:13px;overflow:hidden;min-height:240px}
.warrior-card img{width:100%;height:100%;object-fit:cover}
.warrior-card .wcopy{padding:21px 16px}.wcopy h3{margin:0 0 5px;color:var(--pink);font-size:22px}.wcopy p{font-size:13px;line-height:1.4}

.bee-section{padding:0;background:#fbf3ef}
.bee-grid{display:grid;grid-template-columns:1.05fr 1fr 1fr;min-height:290px}
.bee-photo{background:url("../../../assets/shared/images/3b888352c029755461b3.webp") center/cover no-repeat}
.bee-copy,.bee-promise{padding:45px 34px;display:flex;flex-direction:column;justify-content:center}
.bee-copy h2{font:50px "Brush Script MT","Segoe Script",cursive;margin:0 0 10px;color:var(--navy)}
.bee-copy p,.bee-promise p{font-size:15px;line-height:1.55}
.bee-promise{align-items:center;text-align:center}.bee-promise img{width:260px;margin-bottom:15px}.bee-promise .script{font:34px "Brush Script MT","Segoe Script",cursive;color:var(--pink)}

.site-footer{background:#081439;color:white}
.footer-top{width:min(calc(100% - 40px),var(--max));margin:auto;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:35px;padding:35px 0}
.footer-top h3{margin:0 0 8px}.footer-top p{line-height:1.5}.footer-phone{font-size:27px;font-weight:800;text-decoration:none}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:14px 20px;display:flex;justify-content:space-between;gap:20px;width:min(100%,var(--max));margin:auto;font-size:12px}

.page-hero{padding:80px 24px;background:linear-gradient(135deg,#fff6ef,#f8ecff);text-align:center}
.page-hero h1{font:700 clamp(45px,7vw,78px)/1 Georgia,serif;color:var(--navy);margin:0 0 15px}
.page-hero em{color:var(--pink);font-family:"Brush Script MT","Segoe Script",cursive;font-weight:400}
.page-hero p{max-width:800px;margin:auto;font-size:20px;line-height:1.55}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.info-card{background:white;border-radius:16px;padding:28px;box-shadow:var(--shadow)}
.info-card h3{margin:0 0 10px;color:var(--navy);font-size:23px}.info-card p{line-height:1.55}.info-card .icon{font-size:34px}
.band{padding:42px 24px;background:var(--navy);color:white;text-align:center}.band h2{font:42px Georgia,serif;margin:0 0 12px}.band p{max-width:760px;margin:0 auto 20px;line-height:1.55}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.two-col h2{font:38px Georgia,serif;color:var(--navy);margin-top:0}.two-col p{font-size:17px;line-height:1.65}
.list-clean{padding-left:20px;line-height:1.7}
.callout{background:white;border-left:6px solid var(--pink);border-radius:12px;padding:24px;box-shadow:var(--shadow)}
.program-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program-list a{text-decoration:none}.program-list .info-card:hover{transform:translateY(-2px)}
.note{font-size:13px;color:#5e5e71}

@media(max-width:1180px){
 .header-inner{grid-template-columns:240px 1fr auto;gap:14px}.brand img{width:235px}.nav{gap:13px}.nav>a,.nav-group>button{font-size:11px}
 .program-grid{grid-template-columns:repeat(3,1fr)}.warrior-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:850px){
 .header-inner{grid-template-columns:1fr auto auto;min-height:74px}.brand img{width:220px}.menu-toggle{display:block}
 .nav{display:none;position:absolute;left:12px;right:12px;top:74px;background:white;border-radius:14px;padding:10px;box-shadow:var(--shadow)}
 .nav.open{display:block}.nav>a,.nav-group>button{display:flex;width:100%;padding:13px;text-align:left;font-size:14px}
 .dropdown{position:static;transform:none!important;display:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;padding-left:15px}
 .nav-group.open .dropdown{display:block}.survivor-top small{display:none}
 .hero-inner{display:flex;flex-direction:column}.hero-copy{margin:0;padding:42px 24px 30px;background:var(--cream)}.hero-photo{min-height:430px}
 .conversation-grid{grid-template-columns:1fr}.program-grid{grid-template-columns:repeat(2,1fr)}
 .bee-grid{grid-template-columns:1fr}.bee-photo{min-height:270px}.content-grid,.program-list,.two-col{grid-template-columns:1fr}
 .footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
}
@media(max-width:520px){
 .header-inner{grid-template-columns:1fr auto}.survivor-top{display:none}.brand img{width:205px}
 .hero h1{font-size:56px}.hero h1 em{font-size:68px}.kicker{font-size:22px}.lead{font-size:17px}
 .hero-actions{display:grid}.btn{width:100%}.journey-note{margin-left:0;text-align:center}
 .convo-card{grid-template-columns:1fr;min-height:460px}.convo-copy{padding:28px}.convo-photo{min-height:220px}
 .program-grid,.warrior-grid{grid-template-columns:1fr}.warrior-card{grid-template-columns:40% 60%}
 .section{padding:48px 18px}.section-title{font-size:29px}.warriors .section-title{font-size:34px}
}


/* ===== V3 MOBILE CORRECTIONS ===== */
@media(max-width:767px){
  .site-header{position:sticky;top:0}
  .header-inner{
    min-height:70px;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    padding:6px 0;
  }
  .brand{min-width:0;overflow:visible}
  .brand img{
    width:min(310px,78vw);
    max-height:58px;
    object-fit:contain;
    object-position:left center;
  }
  .menu-toggle{display:block}
  .survivor-top{display:none}

  .hero{min-height:0}
  .hero-inner{min-height:0}
  .hero-copy{
    padding:24px 20px 20px;
    margin:0;
  }
  .hero h1{
    font-size:46px;
    line-height:.95;
    padding-top:4px;
  }
  .hero h1 em{
    font-size:58px;
    line-height:1.05;
    margin-top:2px;
    padding-top:2px;
  }
  .kicker{
    margin:12px 0 8px;
    font-size:21px;
    line-height:1.15;
  }
  .lead{
    font-size:16px;
    line-height:1.42;
    margin:0;
  }
  .hero-actions{
    margin-top:16px;
    gap:10px;
  }
  .hero-actions .btn{
    min-height:48px;
    padding:10px 12px;
    font-size:14px;
    line-height:1.2;
    white-space:normal;
    text-align:center;
  }
  .journey-note{
    margin:16px 0 0;
    font-size:22px;
    line-height:1.25;
  }
  .hero-photo{
    min-height:320px;
    background-position:center 46%;
  }

  .conversation{
    padding-top:36px;
  }
  .conversation .section-title{
    font-size:27px;
    line-height:1.12;
    margin-bottom:20px;
    padding:0 6px;
  }
  .convo-card{
    min-height:0;
    grid-template-columns:1fr;
  }
  .convo-copy{
    padding:26px 24px 22px;
  }
  .convo-copy h3{
    font-size:24px;
    line-height:1.12;
  }
  .convo-copy p{
    font-size:16px;
    line-height:1.42;
  }
  .convo-photo{
    min-height:210px;
  }
}

@media(max-width:420px){
  .brand img{
    width:min(285px,76vw);
    max-height:54px;
  }
  .hero-copy{
    padding-left:18px;
    padding-right:18px;
  }
  .hero h1{
    font-size:43px;
  }
  .hero h1 em{
    font-size:54px;
  }
  .hero-photo{
    min-height:285px;
  }
  .conversation .section-title{
    font-size:25px;
  }
}


/* ===== V4 CORRECTIONS ===== */
.warrior-placeholder{
  grid-template-columns:45% 55%;
}
.warrior-photo-placeholder{
  min-height:240px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:18px;
  background:linear-gradient(135deg,#25245b,#0e1742);
  color:#f5ba35;
  font:800 19px/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
}

/* Keep the hero photograph INSIDE the hero on phones instead of as a detached block */
@media(max-width:767px){
  .hero{
    position:relative;
    min-height:760px;
    background-image:
      linear-gradient(
        180deg,
        rgba(255,248,242,1) 0%,
        rgba(255,248,242,1) 53%,
        rgba(255,248,242,.92) 60%,
        rgba(255,248,242,.32) 70%,
        rgba(255,248,242,0) 79%
      ),
      url("../../../assets/shared/images/e93ea7adcc1c48fc3443.webp");
    background-size:auto, cover;
    background-position:center, center bottom;
    background-repeat:no-repeat;
  }

  .hero-inner{
    display:block;
    min-height:760px;
  }

  .hero-copy{
    position:relative;
    z-index:2;
    padding:22px 20px 20px;
    margin:0;
    background:transparent;
  }

  .hero-photo{
    display:none;
  }

  .hero h1{
    font-size:45px;
    line-height:.95;
  }

  .hero h1 em{
    font-size:57px;
    line-height:1.02;
  }

  .kicker{
    font-size:20px;
    margin-top:11px;
  }

  .lead{
    max-width:100%;
    font-size:15.5px;
    line-height:1.42;
  }

  .hero-actions{
    margin-top:14px;
  }

  .hero-actions .btn{
    min-height:47px;
    font-size:13.5px;
    padding:9px 11px;
  }

  .journey-note{
    margin-top:14px;
    font-size:21px;
    text-align:center;
  }

  .conversation{
    padding-top:42px;
  }

  .warrior-grid{
    grid-template-columns:1fr;
  }

  .warrior-card{
    grid-template-columns:40% 60%;
  }

  .warrior-photo-placeholder{
    min-height:190px;
  }
}

@media(max-width:420px){
  .hero{
    min-height:720px;
  }
  .hero-inner{
    min-height:720px;
  }
  .hero h1{font-size:42px}
  .hero h1 em{font-size:53px}
  .lead{font-size:15px}
  .hero-actions .btn{font-size:13px}
}


/* ===== V5 MOBILE JOURNEY CARD FIX ===== */
@media(max-width:767px){
  .program-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
  }

  .program-card{
    min-height:0 !important;
    height:auto !important;
    display:grid !important;
    grid-template-columns:58% 42% !important;
    border-radius:15px;
    overflow:hidden;
  }

  .program-card .pcopy{
    min-height:190px !important;
    height:auto !important;
    padding:24px 18px !important;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:left;
  }

  .program-card h3{
    margin:0 0 9px;
    font-size:21px;
    line-height:1.16;
  }

  .program-card p{
    margin:0;
    font-size:15px;
    line-height:1.42;
  }

  .program-card .pimg{
    margin:0 !important;
    height:auto !important;
    min-height:190px !important;
    align-self:stretch;
    background-size:cover !important;
    background-position:center !important;
  }
}

@media(max-width:440px){
  .program-card{
    grid-template-columns:1fr !important;
  }

  .program-card .pcopy{
    min-height:0 !important;
    padding:22px 20px !important;
    text-align:center;
  }

  .program-card .pimg{
    min-height:180px !important;
    height:180px !important;
  }
}


/* Final Survivor Line page — approved sitewide header/footer retained */
.survivor-approved-art{
  position:relative;
  width:100%;
  max-width:1536px;
  margin:0 auto;
  background:#fff;
}
.survivor-approved-art>img{
  display:block;
  width:100%;
  height:auto;
}
.art-call{
  position:absolute;
  z-index:5;
  display:block;
  border-radius:12px;
}
.hero-call{
  left:3.1%;
  top:25%;
  width:27%;
  height:8.5%;
}
.bottom-call{
  left:58%;
  top:91%;
  width:23%;
  height:7%;
}
.art-call:focus{
  outline:4px solid #f5ba35;
  outline-offset:3px;
}
.sr-only-content{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
@media(max-width:700px){
  .survivor-approved-art{
    overflow-x:hidden;
  }
}

