/* Seasonal enrollment controls; typography, images and official branding retained. */
html{scrollbar-gutter:stable}
.hero-eyebrow .status-dot{flex:none}.hero-eyebrow [data-season-eyebrow]{line-height:1.5}
.enrollment-primary{font-size:17px;gap:18px;max-width:100%;text-wrap:balance}
.enrollment-dialog{width:min(510px,calc(100% - 40px));max-height:calc(100dvh - 48px);margin:auto;padding:46px 30px 25px;border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);box-shadow:0 28px 100px #00281835;overflow-y:auto;overscroll-behavior:contain}
.enrollment-dialog::backdrop{background:#002818ad;backdrop-filter:blur(5px)}
.enrollment-dialog[open]{animation:enrollment-in 220ms ease both}
.enrollment-dialog .form-card{padding:0;background:none;border:0;border-radius:0;box-shadow:none}
html.js .enrollment-dialog .form-card.reveal{opacity:1;transform:none;transition:none}
.enrollment-dialog .form-card h3{font-size:32px;padding-right:22px;line-height:1.08}
.enrollment-dialog .form-card>p{font-size:16px;line-height:1.4}
.enrollment-dialog form{margin-top:22px}.enrollment-dialog form .button{font-size:17px}
.enrollment-close{position:absolute;top:11px;right:11px;width:40px;height:40px;padding:10px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--mist);color:var(--forest)}
.enrollment-close svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.enrollment-close:hover{background:#e1edda}.enrollment-alternative{font-size:14px;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}
.enrollment-alternative a{color:var(--forest);font-weight:650;text-decoration:underline;text-underline-offset:3px}
body.enrollment-modal-open{overflow:hidden}body.enrollment-modal-open .whatsapp-float{opacity:0;visibility:hidden;pointer-events:none}
.enrollment-dock{display:none}
@keyframes enrollment-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:680px){
  body[data-enrollment-season-active=true]{padding-bottom:86px}
  html{scroll-padding-bottom:95px}
  body[data-enrollment-season-active=true] .whatsapp-float{display:none!important}
  .hero-actions .enrollment-primary{font-size:16px;line-height:1.35;min-height:60px}
  .enrollment-dock:not([hidden]){position:fixed;display:block;left:0;right:0;bottom:0;z-index:46;padding:9px 20px calc(9px + env(safe-area-inset-bottom,0px));background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -5px 20px #00502808;backdrop-filter:blur(12px)}
  .enrollment-dock .button{width:100%;min-height:46px;padding:10px 18px;font-size:16px;border-radius:8px}
  .enrollment-dialog{width:calc(100% - 28px);max-height:calc(100dvh - 28px);padding:47px 22px 22px;border-radius:18px}
  .enrollment-dialog .form-card h3{font-size:28px}.enrollment-dialog .form-card>p{font-size:15px}
  .enrollment-dialog form{margin-top:20px}.enrollment-dialog form .button{font-size:16px;min-height:52px}
  .enrollment-dialog .form-note{font-size:12px;line-height:1.4}.enrollment-alternative{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.enrollment-dialog[open]{animation:none}}

/* Final hierarchy refinement: a compact mark and quieter enrollment label. */
.header .brand{width:150px;padding-block:12px}.header .header-inner{min-height:100px}
.hero-eyebrow{font-size:11px;letter-spacing:.11em;gap:8px}
.enrollment-leaf{width:15px;height:15px;flex:none;stroke:var(--forest);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;opacity:.8}
html{scroll-padding-top:112px}
@media(max-width:900px){.header .brand{width:140px}.header .header-inner{min-height:94px}html{scroll-padding-top:106px}}
@media(max-width:680px){.header .brand{width:132px;padding-block:10px}.header .header-inner{min-height:88px}.hero-eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:18px}html{scroll-padding-top:100px}}

/* Refinement: a stationary seasonal offer, separate from the mobile dock. */
.campaign-promo{position:sticky;top:0;z-index:51;background:var(--forest);color:#fff}
.campaign-promo-inner{display:flex;justify-content:center;align-items:center;gap:24px;min-height:36px;padding-block:7px;font-size:14px;line-height:22px}
.campaign-promo-link{flex:none;font-weight:650;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.campaign-promo-short{display:none}
.campaign-promo a:focus-visible{outline-color:var(--lime);outline-offset:2px}
html[data-campaign-promo-active=true] .header{top:36px}
html[data-campaign-promo-active=true]{scroll-padding-top:148px}
html[data-campaign-promo-active=true] section[id],html[data-campaign-promo-active=true] article[id]{scroll-margin-top:156px}
/* Copy and photograph are readable from the first rendered frame. */
.hero-copy,.hero-photo{animation:none}
.campaign-afternoon{margin-top:20px;padding:14px 18px;border:1px solid #00502838;border-radius:10px;background:#ffffff38}
.campaign-afternoon p{color:var(--forest);font-size:16px;line-height:1.4}
.campaign-afternoon .campaign-afternoon-label{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.campaign-afternoon strong{font-weight:650}
.campaign-afternoon .campaign-afternoon-conditions{font-size:13px;margin-top:5px}
.form-whatsapp-success{margin-top:15px;width:100%;font-size:16px}
@media(max-width:900px){
  .campaign-promo-inner{gap:12px;min-height:32px;padding-block:5px;font-size:12px;line-height:22px}
  .campaign-promo-full{display:none}.campaign-promo-short{display:inline}
  html[data-campaign-promo-active=true] .header{top:32px}
  html[data-campaign-promo-active=true]{scroll-padding-top:138px}
}
@media(max-width:680px){
  .campaign-promo{position:static}
  .campaign-promo-inner{gap:5px;width:calc(100% - 28px);font-size:12px;white-space:nowrap}
  html[data-campaign-promo-active=true] .header{top:0}
  html[data-campaign-promo-active=true]{scroll-padding-top:100px}
  html[data-campaign-promo-active=true] section[id],html[data-campaign-promo-active=true] article[id]{scroll-margin-top:100px}
  .campaign-afternoon{padding:13px 16px;margin-top:18px}
  .campaign-afternoon p{font-size:15px}
}
