:root{--kale-red:#E63946;--kale-red-dark:#C0182A}

/* Quote is KALE's red primary action wherever it appears as a CTA. */
.hero-quote-link a,
.kale-btn-red,
.m-quote,
.kale-cta-strip a[href*="pricing"],
.cta-strip a[href*="pricing"]{
  background:var(--kale-red)!important;
  color:#fff!important;
  border-color:var(--kale-red-dark)!important;
}

.hero-quote-link a:hover,
.kale-btn-red:hover,
.m-quote:hover,
.kale-cta-strip a[href*="pricing"]:hover,
.cta-strip a[href*="pricing"]:hover{
  background:var(--kale-red-dark)!important;
  color:#fff!important;
}

/* Static mascot artwork stays solid; loader animation opacity remains independent. */
img[src*="codie-transparent-clean.png"]:not(.kale-loader-codie):not(.codie-loader-img){
  opacity:1!important;
  visibility:visible!important;
  mix-blend-mode:normal!important;
  image-rendering:auto;
}

/* Sitewide responsive safety net for legacy page sections. */
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe{max-width:100%}

@media(max-width:900px){
  .kale-nav{
    width:100%!important;
    height:auto!important;
    min-height:64px;
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:10px 16px!important;
  }
  .kale-logo{min-width:0!important;height:auto!important;overflow:visible!important}
  .kale-logo img{height:48px!important;width:auto!important;max-width:min(190px,60vw)!important;object-fit:contain}
  .kale-mobile-btn{display:inline-flex!important;align-items:center;justify-content:center}
  .kale-menu,.kale-nav-actions{display:none!important}
  .kale-menu.kale-open{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    grid-column:1/-1!important;
    width:100%!important;
  }
  .kale-has,.kale-nav-link,.kale-drop-btn{width:100%!important;max-width:100%!important}
  .kale-drop,.kale-mega,.kale-fam-drop{
    position:static!important;
    left:auto!important;
    right:auto!important;
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
  }
  .kale-mega{grid-template-columns:1fr!important}
  .hero-inner,.page-hero-inner,.tour-hero-inner,.geo-hero-inner,
  .curriculum-inner,.final-inner,.footer-cta,.footer-cta-band{
    grid-template-columns:1fr!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .footer-top{grid-template-columns:1fr!important}
  .codie-speech,.kale-loader-bubble{
    width:calc(100vw - 32px)!important;
    max-width:440px!important;
    white-space:normal!important;
    padding:12px 16px!important;
    font-size:16px!important;
  }
}

@media(max-width:620px){
  .section,.page-hero,.page-cta,.tour-hero-inner,.geo-hero-inner,
  .footer-content,.final-inner,.what-section,.afford-inner{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  h1,.hero h1,.page-hero h1,.tour-hero h1,.geo-hero h1{
    font-size:clamp(30px,10vw,40px)!important;
    line-height:1.05!important;
    letter-spacing:-1px!important;
  }
  h2,.section-title h2,.final h2{font-size:clamp(26px,8vw,34px)!important}
  .hero-actions,.hero-ctas,.cta-btns,.footer-cta-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .hero-actions a,.hero-ctas a,.cta-btns a,.footer-cta-actions a,
  .btn,.kale-btn,.btn-submit{width:100%!important;max-width:100%!important;white-space:normal!important;text-align:center}
  .grid-2,.grid-3,.grid-4,.cards,.program-grid,.steps,.afford,
  .domains-grid,.steaim-grid,.why-grid,.prog-grid,.prog-list,.steps-grid,
  .availability-promise,.form-row{grid-template-columns:1fr!important}
  .form-card,input,select,textarea{min-width:0!important;max-width:100%!important;width:100%!important}
  .footer-brand-row{flex-direction:column!important;align-items:flex-start!important}
  .footer-codie-main{width:90px!important;height:auto!important}
  .ask{right:12px!important;max-width:calc(100vw - 24px)!important}
  .booking-embed,.booking-embed iframe{width:100%!important;max-width:100%!important}
}
