/* Bliss Global Corp. shared stylesheet. Extracted from the original page-level styles. */

/* ===== Home: index.html ===== */
body.page-index /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-index .site-nav .nav-logo{ display: flex; align-items: center; }body.page-index .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-index .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-index .site-nav .nav-links a:hover, body.page-index .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-index .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-index .site-nav .nav-links{ display: none; } }body.page-index /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-index .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-index .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-index .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:      #FFFFFF;
    --accent2:     #CCCCCC;
    --accent-lt:   #111111;
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --bg-card2:    #0F0F0F;
    --border:      #2A2A2A;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --photo-bg:    #111111;
    --photo-bdr:   #333333;
    --photo-icon:  #666666;
    --stat:        #FFFFFF;
    --link:        #CCCCCC;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }body.page-index{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-index a{ color: var(--link); text-decoration: none; }body.page-index img{ max-width: 100%; display: block; }body.page-index /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-index .nav-logo{ display: flex; align-items: center; }body.page-index .nav-logo svg{ height: 52px; width: auto; }body.page-index .nav-links{ display: flex; gap: 28px; list-style: none; }body.page-index .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-index .nav-links a:hover{ color: var(--text); }body.page-index .nav-cta{
    background: var(--btn-bg) !important;
    color: var(--btn-text) !important;
    font-weight: 700 !important;
    padding: 8px 20px;
    border-radius: 6px;
  }
  @media (max-width: 640px) {body.page-index .nav-links{ display: none; } }body.page-index /* ── HERO ── */
  .hero{
    background: var(--bg);
    padding: 80px 24px 72px;
    text-align: center;
    border-bottom: 1px solid var(--border);
    position: relative;
    overflow: hidden;
  }body.page-index .hero::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 0%, #FFFFFF18 0%, transparent 70%);
    pointer-events: none;
  }body.page-index .hero-inner{
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 56px;
    position: relative;
    z-index: 1;
  }body.page-index .hero-logo{
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }body.page-index .hero-logo img{
    width: 420px;
    max-width: 100%;
    height: auto;
    display: block;
  }body.page-index .hero-content{
    flex: 1 1 auto;
    min-width: 0;
  }
  @media (max-width: 760px) {body.page-index .hero-inner{ flex-direction: column; gap: 28px; }body.page-index .hero-logo img{ width: 240px; max-width: 240px; }
  }body.page-index .eyebrow{
    display: inline-block;
    background: transparent;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 24px;
  }body.page-index .hero h1{
    font-size: clamp(30px, 6vw, 56px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.03em;
    max-width: 720px;
    margin: 0 auto 20px;
  }body.page-index .hero h1 em{ font-style: normal; color: var(--accent); }body.page-index .hero-sub{
    font-size: clamp(16px, 2vw, 18px);
    color: var(--muted);
    max-width: 540px;
    margin: 0 auto 36px;
    line-height: 1.7;
  }body.page-index .hero-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-index .btn-primary{
    background: var(--btn-bg);
    color: var(--btn-text);
    font-weight: 700;
    font-size: 15px;
    padding: 13px 28px;
    border-radius: 8px;
    transition: opacity 0.15s;
    display: inline-block;
  }body.page-index .btn-primary:hover{ opacity: 0.88; }body.page-index .btn-ghost{
    background: transparent;
    color: var(--text);
    font-weight: 600;
    font-size: 15px;
    padding: 13px 28px;
    border-radius: 8px;
    border: 1px solid var(--border);
    transition: border-color 0.15s;
    display: inline-block;
  }body.page-index .btn-ghost:hover{ border-color: var(--accent); color: var(--accent); }body.page-index /* ── HERO PHOTO STRIP ── */
  .hero-photos{
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    max-width: 800px;
    margin: 48px auto 0;
    padding: 0 24px;
  }body.page-index .photo-slot{
    background: var(--photo-bg);
    border: 1.5px dashed var(--photo-bdr);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--photo-icon);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-align: center;
    padding: 16px;
  }body.page-index .photo-slot.tall{ min-height: 360px; }body.page-index .photo-slot.short{ min-height: 180px; }body.page-index .photo-slot svg{ opacity: 0.5; }body.page-index .photo-slot .photo-label{ opacity: 0.6; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; margin-top: 4px; }
  @media (max-width: 640px) {body.page-index .hero-photos{ grid-template-columns: 1fr; }body.page-index .photo-slot.tall, body.page-index .photo-slot.short{ min-height: 220px; }
  }body.page-index /* ── STATS BAR ── */
  .stats-bar{
    background: var(--bg-card);
    border-bottom: 1px solid var(--border);
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }body.page-index .stat{
    padding: 20px 36px;
    text-align: center;
    border-right: 1px solid var(--border);
  }body.page-index .stat:last-child{ border-right: none; }body.page-index .stat-num{ font-size: 24px; font-weight: 800; color: var(--stat); display: block; line-height: 1; margin-bottom: 4px; }body.page-index .stat-label{ font-size: 12px; color: var(--muted); font-weight: 500; }body.page-index /* ── CREDENTIAL BADGES ── */
  .creds-bar{
    background: var(--bg-section);
    border-bottom: 1px solid var(--border);
    padding: 16px 24px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
  }body.page-index .cred-badge{
    background: var(--bg-card);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 12px;
    font-weight: 600;
    padding: 6px 16px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    gap: 6px;
  }body.page-index .cred-dot{ width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }body.page-index /* ── SECTIONS ── */
  section{ padding: 80px 24px; }body.page-index .inner{ max-width: 960px; margin: 0 auto; }body.page-index .s-eyebrow{ font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 12px; }body.page-index .s-title{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--text); margin-bottom: 16px; }body.page-index .s-title em{ font-style: normal; color: var(--accent); }body.page-index .s-body{ font-size: 17px; color: var(--muted); max-width: 600px; line-height: 1.75; }body.page-index /* ── MISSION GRID ── */
  .mission{ background: var(--bg-section); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-index .mission-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-index .mission-grid{ grid-template-columns: 1fr; } }body.page-index .m-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-index .m-card .icon{ font-size: 24px; margin-bottom: 14px; }body.page-index .m-card h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 8px; }body.page-index .m-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-index /* ── PHOTO SECTION (in-content) ── */
  .photo-grid-2{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }body.page-index .photo-grid-3{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }body.page-index .photo-grid-1{ display: grid; grid-template-columns: 1fr; max-width: 720px; margin: 44px auto 0; }
  @media (max-width: 640px) {body.page-index .photo-grid-2, body.page-index .photo-grid-3{ grid-template-columns: 1fr; }
  }body.page-index .photo-full{ margin-top: 44px; }body.page-index /* ── CURRICULUM ── */
  .program{ background: var(--bg); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-index .curriculum{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; margin-top: 36px; }body.page-index .c-item{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text);
  }body.page-index .c-num{
    width: 26px; height: 26px;
    background: var(--accent);
    color: var(--btn-text);
    border-radius: 6px;
    font-size: 11px;
    font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
  }body.page-index .detail-row{ display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; margin-top: 32px; }body.page-index .d-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 18px;
  }body.page-index .d-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--muted); margin-bottom: 6px; }body.page-index .d-value{ font-size: 15px; font-weight: 700; color: var(--text); }body.page-index /* ── THREE AUDIENCES ── */
  .audiences{ background: var(--bg-section); border-top: 1px solid var(--border); }body.page-index .aud-grid{ display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 40px; }
  @media (max-width: 760px) {body.page-index .aud-grid{ grid-template-columns: 1fr; } }body.page-index .aud-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
    display: block;
    transition: border-color 0.15s, transform 0.15s;
  }body.page-index .aud-card:hover{ border-color: var(--accent); transform: translateY(-2px); }body.page-index .aud-icon{ font-size: 28px; margin-bottom: 14px; }body.page-index .aud-card h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 8px; }body.page-index .aud-card p{ font-size: 14px; color: var(--muted); line-height: 1.6; margin-bottom: 16px; }body.page-index .aud-link{ font-size: 13px; font-weight: 700; color: var(--accent); }body.page-index /* ── PARTNER ── */
  .partner{ background: var(--bg); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-index .partner-pills{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }body.page-index .partner-pill{
    background: var(--bg-card);
    border: 1px solid var(--border);
    color: var(--muted);
    font-size: 13px;
    font-weight: 600;
    padding: 9px 20px;
    border-radius: 8px;
  }body.page-index /* ── INSTRUCTOR ── */
  .instructor{ background: var(--bg-section); border-bottom: 1px solid var(--border); }body.page-index .inst-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 36px;
    display: flex;
    gap: 28px;
    margin-top: 36px;
    align-items: flex-start;
    max-width: 720px;
  }
  @media (max-width: 600px) {body.page-index .inst-card{ flex-direction: column; } }body.page-index .inst-avatar{
    width: 72px; height: 72px;
    background: var(--accent);
    border-radius: 50%;
    flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; font-weight: 800;
    color: var(--btn-text);
  }body.page-index .inst-card h3{ font-size: 20px; font-weight: 700; color: var(--text); margin-bottom: 4px; }body.page-index .inst-title{ font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--eyebrow); margin-bottom: 12px; }body.page-index .inst-card p{ font-size: 15px; color: var(--muted); line-height: 1.7; }body.page-index /* ── LOCATION ── */
  .location{ background: var(--bg); border-bottom: 1px solid var(--border); }body.page-index .loc-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 36px; margin-top: 36px; }
  @media (max-width: 640px) {body.page-index .loc-grid{ grid-template-columns: 1fr; } }body.page-index .hours-table{ width: 100%; border-collapse: collapse; }body.page-index .hours-table td{ padding: 10px 0; font-size: 14px; border-bottom: 1px solid var(--border); }body.page-index .hours-table td:first-child{ font-weight: 600; color: var(--text); }body.page-index .hours-table td:last-child{ color: var(--muted); text-align: right; }body.page-index .hours-table tr:last-child td{ border-bottom: none; }body.page-index .addr-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
  }body.page-index .addr-card h3{ font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 10px; }body.page-index .addr-card p{ font-size: 14px; color: var(--muted); line-height: 1.7; }body.page-index .addr-card a{ display: inline-block; margin-top: 12px; font-size: 13px; font-weight: 700; color: var(--accent); }body.page-index .cohort-alert{
    background: var(--bg-card);
    border: 1px solid var(--accent);
    border-radius: 10px;
    padding: 18px 22px;
    margin-top: 16px;
    display: flex; align-items: center; gap: 12px;
  }body.page-index .cohort-alert strong{ display: block; font-size: 15px; color: var(--text); margin-bottom: 3px; }body.page-index .cohort-alert span{ font-size: 13px; color: var(--muted); }body.page-index /* ── CTA ── */
  .cta-section{
    background: var(--bg-card);
    border-top: 1px solid var(--border);
    text-align: center;
    padding: 80px 24px;
  }body.page-index .cta-section h2{ font-size: clamp(26px,5vw,44px); font-weight: 800; letter-spacing: -0.025em; margin-bottom: 16px; }body.page-index .cta-section h2 em{ font-style: normal; color: var(--accent); }body.page-index .cta-section p{ font-size: 17px; color: var(--muted); max-width: 500px; margin: 0 auto 36px; line-height: 1.7; }body.page-index /* ── FOOTER ── */
  footer{
    background: #000;
    border-top: 1px solid var(--border);
    padding: 40px 24px;
    text-align: center;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.8;
  }body.page-index .footer-links{ display: flex; justify-content: center; flex-wrap: wrap; gap: 24px; margin-bottom: 20px; list-style: none; }body.page-index .footer-links a{ color: var(--muted); font-size: 13px; }body.page-index .footer-links a:hover{ color: var(--text); }body.page-index /* ── PHOTO PLACEHOLDER SHARED ── */
  .p-slot{
    background: var(--photo-bg);
    border: 1.5px dashed var(--photo-bdr);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--photo-icon);
    padding: 20px;
    text-align: center;
    min-height: 200px;
  }body.page-index .p-slot svg{ opacity: 0.4; }body.page-index .p-slot-label{ font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; opacity: 0.55; margin-top: 4px; }body.page-index .p-slot.tall{ min-height: 320px; }body.page-index .p-slot.wide{ min-height: 240px; }body.page-index .p-slot.banner{ min-height: 280px; }


/* ===== About: about.html ===== */
body.page-about /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-about .site-nav .nav-logo{ display: flex; align-items: center; }body.page-about .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-about .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-about .site-nav .nav-links a:hover, body.page-about .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-about .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-about .site-nav .nav-links{ display: none; } }body.page-about /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-about .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-about .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-about .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:      #FFFFFF;
    --accent2:     #CCCCCC;
    --accent-lt:   #111111;
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --bg-card2:    #0F0F0F;
    --border:      #2A2A2A;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --photo-bg:    #111111;
    --photo-bdr:   #333333;
    --photo-icon:  #666666;
    --stat:        #FFFFFF;
    --link:        #CCCCCC;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }body.page-about{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-about a{ color: var(--link); text-decoration: none; }body.page-about img{ max-width: 100%; display: block; }body.page-about /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-about .nav-logo{ display: flex; align-items: center; }body.page-about .nav-logo svg{ height: 52px; width: auto; }body.page-about .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-about .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-about .nav-links a:hover{ color: var(--text); }body.page-about .nav-links a.active{ color: var(--text); }body.page-about .nav-cta{
    background: var(--btn-bg) !important;
    color: var(--btn-text) !important;
    font-weight: 700 !important;
    padding: 8px 20px;
    border-radius: 6px;
  }
  @media (max-width: 640px) {body.page-about .nav-links{ display: none; } }body.page-about /* ── BUTTONS ── */
  .btn-primary{
    background: var(--btn-bg);
    color: var(--btn-text);
    font-weight: 700;
    font-size: 15px;
    padding: 13px 28px;
    border-radius: 8px;
    transition: opacity 0.15s;
    display: inline-block;
  }body.page-about .btn-primary:hover{ opacity: 0.88; color: var(--btn-text); }body.page-about .btn-ghost{
    background: transparent;
    color: var(--text);
    font-weight: 600;
    font-size: 15px;
    padding: 13px 28px;
    border-radius: 8px;
    border: 1px solid var(--border);
    transition: border-color 0.15s;
    display: inline-block;
  }body.page-about .btn-ghost:hover{ border-color: var(--accent); color: var(--accent); }body.page-about /* ── HERO ── */
  .hero{
    background: var(--bg);
    padding: 80px 24px 72px;
    text-align: center;
    border-bottom: 1px solid var(--border);
    position: relative;
    overflow: hidden;
  }body.page-about .hero::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 0%, #FFFFFF18 0%, transparent 70%);
    pointer-events: none;
  }body.page-about .eyebrow{
    display: inline-block;
    background: transparent;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 24px;
  }body.page-about .hero h1{
    font-size: clamp(30px, 6vw, 56px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.03em;
    max-width: 720px;
    margin: 0 auto 20px;
  }body.page-about .hero h1 em{ font-style: normal; color: var(--accent); }body.page-about .hero-sub{
    font-size: clamp(16px, 2vw, 18px);
    color: var(--muted);
    max-width: 560px;
    margin: 0 auto 36px;
    line-height: 1.7;
  }body.page-about .hero-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-about /* ── SECTIONS ── */
  section{ padding: 80px 24px; }body.page-about .inner{ max-width: 960px; margin: 0 auto; }body.page-about .s-eyebrow{ font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 12px; }body.page-about .s-title{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--text); margin-bottom: 16px; }body.page-about .s-title em{ font-style: normal; color: var(--accent); }body.page-about .s-body{ font-size: 17px; color: var(--muted); max-width: 620px; line-height: 1.75; }body.page-about /* ── PHOTO SLOTS ── */
  .p-slot{
    background: var(--photo-bg);
    border: 1.5px dashed var(--photo-bdr);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--photo-icon);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-align: center;
    padding: 20px;
    min-height: 200px;
  }body.page-about .p-slot.tall{ min-height: 300px; }body.page-about .p-slot.banner{ min-height: 140px; }body.page-about .p-slot-label{ opacity: 0.6; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; }body.page-about .photo-grid-2{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }body.page-about .photo-grid-3{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-about .photo-grid-2, body.page-about .photo-grid-3{ grid-template-columns: 1fr; }body.page-about .p-slot.tall{ min-height: 200px; }
  }body.page-about /* ── MISSION SECTION ── */
  .mission{ background: var(--bg-section); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-about .mission-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-about .mission-grid{ grid-template-columns: 1fr; } }body.page-about .m-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-about .m-card .icon{ font-size: 24px; margin-bottom: 14px; }body.page-about .m-card h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 8px; }body.page-about .m-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-about /* ── STATS BAR ── */
  .stats-bar{
    background: var(--bg-card);
    border-bottom: 1px solid var(--border);
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }body.page-about .stat{
    padding: 20px 36px;
    text-align: center;
    border-right: 1px solid var(--border);
  }body.page-about .stat:last-child{ border-right: none; }body.page-about .stat-num{ font-size: 24px; font-weight: 800; color: var(--stat); display: block; line-height: 1; margin-bottom: 4px; }body.page-about .stat-label{ font-size: 12px; color: var(--muted); font-weight: 500; }body.page-about /* ── WHY SECTION ── */
  .why-grid{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-about .why-grid{ grid-template-columns: 1fr; } }body.page-about .why-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-about .why-card .w-num{
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: var(--eyebrow);
    text-transform: uppercase;
    margin-bottom: 14px;
    display: block;
  }body.page-about .why-card h3{ font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 10px; }body.page-about .why-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-about /* ── VALUES ── */
  .values-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-about .values-grid{ grid-template-columns: 1fr; } }body.page-about .v-card{
    display: flex;
    gap: 20px;
    align-items: flex-start;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
  }body.page-about .v-icon{ font-size: 22px; flex-shrink: 0; margin-top: 2px; }body.page-about .v-card h3{ font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 6px; }body.page-about .v-card p{ font-size: 13px; color: var(--muted); line-height: 1.6; }body.page-about /* ── IMPACT SECTION ── */
  .impact{ background: var(--bg-section); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-about .impact-grid{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-about .impact-grid{ grid-template-columns: 1fr; } }body.page-about .impact-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }body.page-about .impact-placeholder{
    border: 1.5px dashed var(--border);
    border-radius: 8px;
    padding: 16px;
    font-size: 12px;
    color: var(--eyebrow);
    line-height: 1.6;
    font-style: italic;
  }body.page-about .impact-card h3{ font-size: 16px; font-weight: 700; color: var(--text); }body.page-about .impact-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-about /* ── STORY BLOCK ── */
  .story-block{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 36px;
    margin-top: 44px;
    display: flex;
    gap: 32px;
    align-items: flex-start;
    flex-wrap: wrap;
  }body.page-about .story-block-text{ flex: 1; min-width: 260px; }body.page-about .story-block-text h3{ font-size: 20px; font-weight: 800; color: var(--text); letter-spacing: -0.02em; margin-bottom: 12px; }body.page-about .story-block-text p{ font-size: 15px; color: var(--muted); line-height: 1.75; margin-bottom: 12px; }body.page-about .story-block-text p:last-child{ margin-bottom: 0; }body.page-about .story-block-photo{ flex-shrink: 0; width: 200px; }
  @media (max-width: 640px) {body.page-about .story-block-photo{ width: 100%; } }body.page-about /* ── FOUNDER SECTION ── */
  .founder{ background: var(--bg); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-about .founder-layout{ display: flex; gap: 36px; margin-top: 44px; flex-wrap: wrap; align-items: flex-start; }body.page-about .founder-bio{ flex: 1; min-width: 280px; }body.page-about .founder-bio h3{ font-size: 22px; font-weight: 800; color: var(--text); letter-spacing: -0.02em; margin-bottom: 4px; }body.page-about .founder-bio .title{ font-size: 13px; color: var(--eyebrow); font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 20px; display: block; }body.page-about .founder-bio p{ font-size: 15px; color: var(--muted); line-height: 1.75; margin-bottom: 14px; }body.page-about .founder-bio p:last-child{ margin-bottom: 0; }body.page-about .inst-avatar{
    width: 52px; height: 52px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 16px;
    color: var(--text);
    margin-bottom: 20px;
    letter-spacing: 0.04em;
  }body.page-about /* ── FUTURE VISION ── */
  .future{ background: var(--bg-section); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-about .future-list{ margin-top: 36px; display: flex; flex-direction: column; gap: 12px; }body.page-about .future-item{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    gap: 18px;
    font-size: 15px;
    font-weight: 600;
    color: var(--text);
  }body.page-about .future-item .f-num{
    width: 28px; height: 28px;
    background: var(--accent);
    color: var(--btn-text);
    border-radius: 6px;
    font-size: 12px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }body.page-about .future-sub{ font-size: 13px; font-weight: 400; color: var(--muted); margin-top: 2px; }body.page-about /* ── PARTNER STRIP ── */
  .partner-strip{
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 44px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 28px;
    flex-wrap: wrap;
  }body.page-about .partner-label{ font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--eyebrow); flex-shrink: 0; }body.page-about .partner-name{ font-size: 15px; font-weight: 700; color: var(--text); }body.page-about .partner-dot{ width: 1px; height: 24px; background: var(--border); flex-shrink: 0; }body.page-about /* ── CTA SECTION ── */
  .cta-section{
    background: var(--bg-card);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    padding: 80px 24px;
    text-align: center;
  }body.page-about .cta-section h2{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 16px; }body.page-about .cta-section h2 em{ font-style: normal; color: var(--accent); }body.page-about .cta-section p{ font-size: 17px; color: var(--muted); max-width: 480px; margin: 0 auto 32px; line-height: 1.7; }body.page-about .cta-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-about /* ── FOOTER ── */
  footer{
    background: var(--bg-section);
    border-top: 1px solid var(--border);
    padding: 40px 24px;
    text-align: center;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.9;
  }body.page-about .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-about .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-about .footer-links a:hover{ color: var(--text); }


/* ===== HVAC Program: hvac-training-chicago.html ===== */
body.page-hvac-program /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-hvac-program .site-nav .nav-logo{ display: flex; align-items: center; }body.page-hvac-program .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-hvac-program .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-hvac-program .site-nav .nav-links a:hover, body.page-hvac-program .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-hvac-program .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-hvac-program .site-nav .nav-links{ display: none; } }body.page-hvac-program /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-hvac-program .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-hvac-program .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-hvac-program .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --border:      #2A2A2A;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --link:        #CCCCCC;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }html{ scroll-behavior: smooth; }body.page-hvac-program{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-hvac-program a{ color: var(--link); text-decoration: none; }body.page-hvac-program /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-hvac-program .nav-logo{ display: flex; align-items: center; }body.page-hvac-program .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-hvac-program .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-hvac-program .nav-links a:hover, body.page-hvac-program .nav-links a.active{ color: var(--text); }body.page-hvac-program .nav-cta{ background: var(--btn-bg) !important; color: var(--btn-text) !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-hvac-program .nav-links{ display: none; } }body.page-hvac-program /* ── BUTTONS ── */
  .btn-primary{ background: var(--btn-bg); color: var(--btn-text); font-weight: 700; font-size: 15px; padding: 13px 28px; border-radius: 8px; transition: opacity 0.15s; display: inline-block; }body.page-hvac-program .btn-primary:hover{ opacity: 0.88; color: var(--btn-text); }body.page-hvac-program .btn-ghost{ background: transparent; color: var(--text); font-weight: 600; font-size: 15px; padding: 13px 28px; border-radius: 8px; border: 1px solid var(--border); transition: border-color 0.15s; display: inline-block; }body.page-hvac-program .btn-ghost:hover{ border-color: #555; color: var(--text); }body.page-hvac-program /* ── AUDIENCE STRIP ── */
  .audience-strip{
    background: var(--bg-section);
    border-bottom: 1px solid var(--border);
    padding: 14px 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 13px;
  }body.page-hvac-program .audience-strip .strip-left{ color: var(--muted); }body.page-hvac-program .audience-strip .strip-left strong{ color: var(--text); }body.page-hvac-program .audience-strip .strip-right a{
    color: var(--muted);
    font-weight: 600;
    font-size: 13px;
    transition: color 0.15s;
  }body.page-hvac-program .audience-strip .strip-right a:hover{ color: var(--text); }body.page-hvac-program /* ── HERO ── */
  .hero{
    background: var(--bg);
    padding: 80px 24px 72px;
    border-bottom: 1px solid var(--border);
    position: relative;
    overflow: hidden;
  }body.page-hvac-program .hero::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 0%, #FFFFFF18 0%, transparent 70%);
    pointer-events: none;
  }body.page-hvac-program .hero-inner{ max-width: 960px; margin: 0 auto; display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 60px; align-items: center; }
  @media (max-width: 720px) {body.page-hvac-program .hero-inner{ grid-template-columns: 1fr; gap: 40px; } }body.page-hvac-program .eyebrow{
    display: inline-block;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 22px;
  }body.page-hvac-program .hero-content h1{
    font-size: clamp(30px, 5.5vw, 52px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -0.03em;
    margin-bottom: 18px;
  }body.page-hvac-program .hero-content h1 em{ font-style: normal; color: var(--text); }body.page-hvac-program .hero-content .lead{
    font-size: 17px;
    color: var(--muted);
    line-height: 1.75;
    margin-bottom: 32px;
    max-width: 540px;
  }body.page-hvac-program .hero-btns{ display: flex; gap: 12px; flex-wrap: wrap; }body.page-hvac-program /* Hero metric strip */
  .hero-metrics{
    display: flex;
    gap: 0;
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid var(--border);
  }body.page-hvac-program .hero-metric{
    flex: 1;
    padding-right: 24px;
    border-right: 1px solid var(--border);
    margin-right: 24px;
  }body.page-hvac-program .hero-metric:last-child{ border-right: none; margin-right: 0; padding-right: 0; }body.page-hvac-program .hero-metric .m-val{ font-size: 22px; font-weight: 800; color: var(--text); display: block; line-height: 1; margin-bottom: 5px; }body.page-hvac-program .hero-metric .m-lbl{ font-size: 11px; color: var(--muted); font-weight: 500; text-transform: uppercase; letter-spacing: 0.06em; }
  @media (max-width: 480px) {body.page-hvac-program .hero-metrics{ flex-direction: column; gap: 16px; }body.page-hvac-program .hero-metric{ border-right: none; border-bottom: 1px solid var(--border); padding-bottom: 16px; margin-right: 0; }body.page-hvac-program .hero-metric:last-child{ border-bottom: none; padding-bottom: 0; } }body.page-hvac-program /* Hero sidebar card */
  .hero-spec-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-hvac-program .hero-spec-card .spec-title{
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--eyebrow);
    margin-bottom: 18px;
  }body.page-hvac-program .spec-row{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    padding: 11px 0;
    border-bottom: 1px solid var(--border);
    font-size: 13px;
  }body.page-hvac-program .spec-row:first-of-type{ padding-top: 0; }body.page-hvac-program .spec-row:last-of-type{ border-bottom: none; padding-bottom: 0; }body.page-hvac-program .spec-row .s-label{ color: var(--muted); font-weight: 500; }body.page-hvac-program .spec-row .s-val{ color: var(--text); font-weight: 600; text-align: right; }body.page-hvac-program /* ── CREDS BAR ── */
  .creds-bar{
    background: var(--bg-section);
    border-bottom: 1px solid var(--border);
    padding: 16px 24px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
  }body.page-hvac-program .cred-badge{
    background: var(--bg-card);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 12px;
    font-weight: 600;
    padding: 6px 16px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    gap: 6px;
  }body.page-hvac-program .cred-dot{ width: 6px; height: 6px; border-radius: 50%; background: var(--eyebrow); flex-shrink: 0; }body.page-hvac-program /* ── SECTIONS ── */
  section{ padding: 80px 24px; }body.page-hvac-program .inner{ max-width: 960px; margin: 0 auto; }body.page-hvac-program .s-eyebrow{ font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 12px; }body.page-hvac-program .s-title{ font-size: clamp(26px, 4vw, 38px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--text); margin-bottom: 16px; }body.page-hvac-program .s-title em{ font-style: normal; }body.page-hvac-program .s-body{ font-size: 16px; color: var(--muted); max-width: 600px; line-height: 1.75; }body.page-hvac-program /* ── OVERVIEW ── */
  .overview-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-top: 44px;
    align-items: start;
  }
  @media (max-width: 720px) {body.page-hvac-program .overview-grid{ grid-template-columns: 1fr; gap: 36px; } }body.page-hvac-program .overview-text p{ font-size: 15px; color: var(--muted); line-height: 1.75; margin-bottom: 14px; }body.page-hvac-program .overview-text p:last-child{ margin-bottom: 0; }body.page-hvac-program /* ── CURRICULUM MODULE GRID ── */
  .module-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
    margin-top: 44px;
  }body.page-hvac-program .module-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 22px 22px 20px;
    transition: border-color 0.15s;
  }body.page-hvac-program .module-card:hover{ border-color: #3d3d3d; }body.page-hvac-program .module-card .m-num{
    width: 24px; height: 24px;
    background: var(--btn-bg);
    color: var(--btn-text);
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    flex-shrink: 0;
  }body.page-hvac-program .module-card h3{ font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 8px; line-height: 1.3; }body.page-hvac-program .module-card p{ font-size: 13px; color: var(--muted); line-height: 1.6; }body.page-hvac-program /* ── METHODOLOGY ── */
  .method-grid{
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    margin-top: 44px;
    align-items: start;
  }
  @media (max-width: 720px) {body.page-hvac-program .method-grid{ grid-template-columns: 1fr; gap: 36px; } }body.page-hvac-program .method-list{ display: flex; flex-direction: column; gap: 0; margin-top: 32px; }body.page-hvac-program .method-item{
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 22px 0;
    border-bottom: 1px solid var(--border);
  }body.page-hvac-program .method-item:first-child{ padding-top: 0; }body.page-hvac-program .method-item:last-child{ border-bottom: none; padding-bottom: 0; }body.page-hvac-program .method-arrow{
    width: 30px; height: 30px;
    background: var(--bg-section);
    border: 1px solid var(--border);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--muted);
  }body.page-hvac-program .method-item h4{ font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 5px; }body.page-hvac-program .method-item p{ font-size: 13px; color: var(--muted); line-height: 1.65; }body.page-hvac-program /* Scenario box */
  .scenario-box{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 3px solid var(--eyebrow);
    border-radius: 12px;
    padding: 28px;
  }body.page-hvac-program .scenario-box .s-tag{
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--eyebrow);
    margin-bottom: 14px;
    display: block;
  }body.page-hvac-program .scenario-box blockquote{
    font-size: 15px;
    font-style: italic;
    color: var(--text);
    line-height: 1.7;
    margin-bottom: 18px;
    border: none;
    padding: 0;
  }body.page-hvac-program .scenario-box .scenario-note{
    font-size: 12px;
    color: var(--muted);
    line-height: 1.65;
    padding-top: 16px;
    border-top: 1px solid var(--border);
  }body.page-hvac-program /* ── CERTIFICATIONS ── */
  .cert-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 44px;
  }
  @media (max-width: 640px) {body.page-hvac-program .cert-grid{ grid-template-columns: 1fr; } }body.page-hvac-program .cert-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 32px 28px;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }body.page-hvac-program .cert-name{ font-size: 26px; font-weight: 800; color: var(--text); letter-spacing: -0.02em; }body.page-hvac-program .cert-card h4{ font-size: 15px; font-weight: 700; color: var(--text); }body.page-hvac-program .cert-card p{ font-size: 13px; color: var(--muted); line-height: 1.65; }body.page-hvac-program .cert-tags{ display: flex; gap: 6px; flex-wrap: wrap; justify-content: center; margin-top: 4px; }body.page-hvac-program .cert-tag{
    background: #1a1a1a;
    border: 1px solid var(--border);
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    color: var(--muted);
    padding: 3px 10px;
  }body.page-hvac-program /* ── OUTCOMES / EMPLOYER SPLIT ── */
  .outcomes-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-top: 44px;
    align-items: start;
  }
  @media (max-width: 720px) {body.page-hvac-program .outcomes-grid{ grid-template-columns: 1fr; gap: 36px; } }body.page-hvac-program .role-callout{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 22px 24px;
    margin-top: 24px;
  }body.page-hvac-program .role-callout .r-label{
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--eyebrow);
    margin-bottom: 10px;
    display: block;
  }body.page-hvac-program .role-callout p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-hvac-program .role-callout strong{ color: var(--text); }body.page-hvac-program .employer-points{ display: flex; flex-direction: column; gap: 0; margin-top: 8px; }body.page-hvac-program .emp-point{
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 18px 0;
    border-bottom: 1px solid var(--border);
  }body.page-hvac-program .emp-point:first-child{ padding-top: 0; }body.page-hvac-program .emp-point:last-child{ border-bottom: none; }body.page-hvac-program .emp-check{
    width: 22px; height: 22px;
    background: #1a1a1a;
    border: 1px solid var(--border);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--text);
  }body.page-hvac-program .emp-point h4{ font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 4px; }body.page-hvac-program .emp-point p{ font-size: 13px; color: var(--muted); line-height: 1.6; }body.page-hvac-program /* ── EXPECTATIONS ── */
  .expect-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-top: 44px;
    align-items: start;
  }
  @media (max-width: 720px) {body.page-hvac-program .expect-grid{ grid-template-columns: 1fr; gap: 36px; } }body.page-hvac-program .expect-list{ display: flex; flex-direction: column; gap: 0; }body.page-hvac-program .expect-row{
    display: flex;
    gap: 18px;
    align-items: flex-start;
    padding: 20px 0;
    border-bottom: 1px solid var(--border);
  }body.page-hvac-program .expect-row:first-child{ padding-top: 0; }body.page-hvac-program .expect-row:last-child{ border-bottom: none; padding-bottom: 0; }body.page-hvac-program .expect-icon{
    width: 34px; height: 34px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
  }body.page-hvac-program .expect-row h3{ font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 4px; }body.page-hvac-program .expect-row p{ font-size: 13px; color: var(--muted); line-height: 1.65; }body.page-hvac-program .honesty-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-hvac-program .honesty-card .h-label{
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--eyebrow);
    margin-bottom: 14px;
    display: block;
  }body.page-hvac-program .honesty-card p{ font-size: 14px; color: var(--muted); line-height: 1.75; margin-bottom: 12px; }body.page-hvac-program .honesty-card p:last-child{ margin-bottom: 0; }body.page-hvac-program /* ── LOCATION STRIP ── */
  .location-strip{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 28px;
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
    margin-top: 44px;
    align-items: center;
  }body.page-hvac-program .loc-item{ display: flex; flex-direction: column; gap: 3px; }body.page-hvac-program .loc-label{ font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--eyebrow); }body.page-hvac-program .loc-val{ font-size: 14px; font-weight: 600; color: var(--text); }body.page-hvac-program .loc-divider{ width: 1px; height: 36px; background: var(--border); flex-shrink: 0; }
  @media (max-width: 640px) {body.page-hvac-program .loc-divider{ display: none; }body.page-hvac-program .location-strip{ flex-direction: column; gap: 16px; } }body.page-hvac-program /* ── CTA ── */
  .cta-section{
    background: var(--bg-card);
    border-top: 1px solid var(--border);
    padding: 80px 24px;
    text-align: center;
  }body.page-hvac-program .cta-section h2{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 16px; }body.page-hvac-program .cta-section p{ font-size: 17px; color: var(--muted); max-width: 480px; margin: 0 auto 32px; line-height: 1.7; }body.page-hvac-program .cta-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-hvac-program /* ── FOOTER ── */
  footer{ background: var(--bg-section); border-top: 1px solid var(--border); padding: 40px 24px; text-align: center; font-size: 13px; color: var(--muted); line-height: 1.9; }body.page-hvac-program .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-hvac-program .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-hvac-program .footer-links a:hover{ color: var(--text); }


/* ===== Employers: hire-hvac-technicians-chicago.html ===== */
body.page-employers /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-employers .site-nav .nav-logo{ display: flex; align-items: center; }body.page-employers .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-employers .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-employers .site-nav .nav-links a:hover, body.page-employers .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-employers .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-employers .site-nav .nav-links{ display: none; } }body.page-employers /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-employers .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-employers .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-employers .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:      #FFFFFF;
    --accent2:     #CCCCCC;
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --border:      #2A2A2A;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --photo-bg:    #111111;
    --photo-bdr:   #333333;
    --photo-icon:  #666666;
    --link:        #CCCCCC;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }body.page-employers{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-employers a{ color: var(--link); text-decoration: none; }body.page-employers img{ max-width: 100%; display: block; }body.page-employers /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-employers .nav-logo{ display: flex; align-items: center; }body.page-employers .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-employers .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-employers .nav-links a:hover, body.page-employers .nav-links a.active{ color: var(--text); }body.page-employers .nav-cta{ background: var(--btn-bg) !important; color: var(--btn-text) !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-employers .nav-links{ display: none; } }body.page-employers /* ── BUTTONS ── */
  .btn-primary{ background: var(--btn-bg); color: var(--btn-text); font-weight: 700; font-size: 15px; padding: 13px 28px; border-radius: 8px; transition: opacity 0.15s; display: inline-block; }body.page-employers .btn-primary:hover{ opacity: 0.88; color: var(--btn-text); }body.page-employers .btn-ghost{ background: transparent; color: var(--text); font-weight: 600; font-size: 15px; padding: 13px 28px; border-radius: 8px; border: 1px solid var(--border); transition: border-color 0.15s; display: inline-block; }body.page-employers .btn-ghost:hover{ border-color: var(--accent); color: var(--accent); }body.page-employers /* ── HERO ── */
  .hero{
    background: var(--bg);
    padding: 80px 24px 72px;
    text-align: center;
    border-bottom: 1px solid var(--border);
    position: relative;
    overflow: hidden;
  }body.page-employers .hero::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 0%, #FFFFFF18 0%, transparent 70%);
    pointer-events: none;
  }body.page-employers .eyebrow{
    display: inline-block;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 24px;
  }body.page-employers .hero h1{ font-size: clamp(30px, 6vw, 56px); font-weight: 800; line-height: 1.1; letter-spacing: -0.03em; max-width: 760px; margin: 0 auto 20px; }body.page-employers .hero h1 em{ font-style: normal; color: var(--accent); }body.page-employers .hero-sub{ font-size: clamp(16px, 2vw, 18px); color: var(--muted); max-width: 560px; margin: 0 auto 36px; line-height: 1.7; }body.page-employers .hero-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-employers /* ── STATS BAR ── */
  .stats-bar{ background: var(--bg-card); border-bottom: 1px solid var(--border); display: flex; justify-content: center; flex-wrap: wrap; }body.page-employers .stat{ padding: 20px 36px; text-align: center; border-right: 1px solid var(--border); }body.page-employers .stat:last-child{ border-right: none; }body.page-employers .stat-num{ font-size: 24px; font-weight: 800; color: var(--text); display: block; line-height: 1; margin-bottom: 4px; }body.page-employers .stat-label{ font-size: 12px; color: var(--muted); font-weight: 500; }body.page-employers /* ── CREDENTIAL BADGES ── */
  .creds-bar{ background: var(--bg-section); border-bottom: 1px solid var(--border); padding: 16px 24px; display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }body.page-employers .cred-badge{ background: var(--bg-card); border: 1px solid var(--border); color: var(--text); font-size: 12px; font-weight: 600; padding: 6px 16px; border-radius: 20px; display: flex; align-items: center; gap: 6px; }body.page-employers .cred-dot{ width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }body.page-employers /* ── SECTIONS ── */
  section{ padding: 80px 24px; }body.page-employers .inner{ max-width: 960px; margin: 0 auto; }body.page-employers .s-eyebrow{ font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 12px; }body.page-employers .s-title{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--text); margin-bottom: 16px; }body.page-employers .s-title em{ font-style: normal; color: var(--accent); }body.page-employers .s-body{ font-size: 17px; color: var(--muted); max-width: 620px; line-height: 1.75; }body.page-employers /* ── CARDS ── */
  .grid-2{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }body.page-employers .grid-3{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-employers .grid-2, body.page-employers .grid-3{ grid-template-columns: 1fr; } }body.page-employers .card{ background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; padding: 28px; }body.page-employers .card .icon{ font-size: 24px; margin-bottom: 14px; }body.page-employers .card h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 8px; }body.page-employers .card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-employers /* ── CREDENTIAL DETAIL CARDS ── */
  .cred-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }body.page-employers .cred-card .cred-title{ font-size: 18px; font-weight: 800; color: var(--text); letter-spacing: -0.02em; }body.page-employers .cred-card .cred-full{ font-size: 12px; font-weight: 600; color: var(--eyebrow); text-transform: uppercase; letter-spacing: 0.1em; }body.page-employers .cred-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-employers .cred-tag{ display: inline-block; background: #1a1a1a; border: 1px solid var(--border); border-radius: 20px; font-size: 11px; font-weight: 600; color: var(--muted); padding: 4px 12px; margin-top: 4px; }body.page-employers /* ── PROCESS STEPS ── */
  .steps{ display: flex; flex-direction: column; gap: 0; margin-top: 44px; }body.page-employers .step{
    display: flex;
    gap: 24px;
    align-items: flex-start;
    padding: 28px 0;
    border-bottom: 1px solid var(--border);
  }body.page-employers .step:first-child{ padding-top: 0; }body.page-employers .step:last-child{ border-bottom: none; padding-bottom: 0; }body.page-employers .step-num{
    width: 40px; height: 40px;
    background: var(--accent);
    color: var(--btn-text);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }body.page-employers .step-content h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 6px; }body.page-employers .step-content p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-employers /* ── PARTNER TYPES ── */
  .partner-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-employers .partner-grid{ grid-template-columns: 1fr; } }body.page-employers .partner-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
  }body.page-employers .partner-card .p-tag{
    display: inline-block;
    border: 1px solid var(--border);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 3px 10px;
    border-radius: 20px;
    margin-bottom: 16px;
  }body.page-employers .partner-card h3{ font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 10px; }body.page-employers .partner-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-employers .partner-card ul{ margin-top: 12px; padding-left: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }body.page-employers .partner-card ul li{ font-size: 13px; color: var(--muted); padding-left: 16px; position: relative; }body.page-employers .partner-card ul li::before{ content: '→'; position: absolute; left: 0; color: var(--eyebrow); }body.page-employers /* ── PHOTO SLOTS ── */
  .p-slot{
    background: var(--photo-bg);
    border: 1.5px dashed var(--photo-bdr);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--photo-icon);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-align: center;
    padding: 20px;
    min-height: 200px;
  }body.page-employers .p-slot.tall{ min-height: 280px; }body.page-employers .p-slot-label{ opacity: 0.6; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; }body.page-employers /* ── PLACEHOLDER ── */
  .placeholder-block{
    border: 1.5px dashed var(--border);
    border-radius: 8px;
    padding: 16px 20px;
    font-size: 12px;
    color: var(--eyebrow);
    font-style: italic;
    line-height: 1.6;
    margin-top: 16px;
  }body.page-employers /* ── CONTACT FORM SECTION ── */
  .form-section{ background: var(--bg-section); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }body.page-employers .form-layout{ display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 44px; align-items: flex-start; }
  @media (max-width: 640px) {body.page-employers .form-layout{ grid-template-columns: 1fr; gap: 40px; } }body.page-employers .form-info h3{ font-size: 20px; font-weight: 800; color: var(--text); margin-bottom: 12px; letter-spacing: -0.02em; }body.page-employers .form-info p{ font-size: 15px; color: var(--muted); line-height: 1.75; margin-bottom: 20px; }body.page-employers .contact-detail{ display: flex; flex-direction: column; gap: 10px; margin-top: 24px; }body.page-employers .contact-row{ display: flex; gap: 12px; align-items: flex-start; }body.page-employers .contact-row .c-label{ font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--eyebrow); min-width: 80px; padding-top: 2px; }body.page-employers .contact-row .c-val{ font-size: 14px; color: var(--muted); }body.page-employers .contact-row .c-val a{ color: var(--link); }body.page-employers .employer-form{ display: flex; flex-direction: column; gap: 14px; }body.page-employers .form-group{ display: flex; flex-direction: column; gap: 6px; }body.page-employers .form-group label{ font-size: 12px; font-weight: 600; color: var(--muted); letter-spacing: 0.06em; text-transform: uppercase; }body.page-employers .form-group input, body.page-employers .form-group select, body.page-employers .form-group textarea{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text);
    font-size: 14px;
    padding: 11px 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
  }body.page-employers .form-group input::placeholder, body.page-employers .form-group textarea::placeholder{ color: #444; }body.page-employers .form-group input:focus, body.page-employers .form-group select:focus, body.page-employers .form-group textarea:focus{ border-color: #555; }body.page-employers .form-group select{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 36px; cursor: pointer; }body.page-employers .form-group select option{ background: #111; color: #fff; }body.page-employers .form-group textarea{ resize: vertical; min-height: 100px; line-height: 1.6; }body.page-employers .form-submit{ background: var(--btn-bg); color: var(--btn-text); font-weight: 700; font-size: 15px; padding: 14px 28px; border-radius: 8px; border: none; cursor: pointer; transition: opacity 0.15s; width: 100%; font-family: inherit; }body.page-employers .form-submit:hover{ opacity: 0.88; }body.page-employers .form-note{ font-size: 12px; color: var(--eyebrow); text-align: center; margin-top: 4px; }body.page-employers /* ── CTA SECTION ── */
  .cta-section{ background: var(--bg-card); border-top: 1px solid var(--border); padding: 80px 24px; text-align: center; }body.page-employers .cta-section h2{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 16px; }body.page-employers .cta-section h2 em{ font-style: normal; }body.page-employers .cta-section p{ font-size: 17px; color: var(--muted); max-width: 480px; margin: 0 auto 32px; line-height: 1.7; }body.page-employers .cta-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-employers /* ── FOOTER ── */
  footer{ background: var(--bg-section); border-top: 1px solid var(--border); padding: 40px 24px; text-align: center; font-size: 13px; color: var(--muted); line-height: 1.9; }body.page-employers .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-employers .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-employers .footer-links a:hover{ color: var(--text); }


/* ===== Donate: donate.html ===== */
body.page-donate /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-donate .site-nav .nav-logo{ display: flex; align-items: center; }body.page-donate .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-donate .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-donate .site-nav .nav-links a:hover, body.page-donate .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-donate .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-donate .site-nav .nav-links{ display: none; } }body.page-donate /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-donate .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-donate .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-donate .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:       #FFFFFF;
    --text:         #FFFFFF;
    --muted:        #9CA3AF;
    --bg:           #000000;
    --bg-section:   #080808;
    --bg-card:      #111111;
    --border:       #2A2A2A;
    --border-focus: #555555;
    --btn-bg:       #FFFFFF;
    --btn-text:     #000000;
    --eyebrow:      #888888;
    --link:         #CCCCCC;
    --success:      #22C55E;
    --success-bg:   #0a1a0e;
    --success-border:#153d1e;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }body.page-donate{
    background-color: var(--bg);
    color: var(--text);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
  }body.page-donate /* Structural Containers */
  .container{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
  }body.page-donate section{
    padding: 100px 0;
    border-bottom: 1px solid var(--border);
  }body.page-donate .section-alt{
    background-color: var(--bg-section);
  }body.page-donate /* Typography */
  h1, body.page-donate h2, body.page-donate h3, body.page-donate h4{ font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }body.page-donate p{ color: var(--muted); font-size: 16px; line-height: 1.6; }body.page-donate .eyebrow{
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--eyebrow);
    margin-bottom: 16px;
    font-weight: 600;
    display: block;
  }body.page-donate /* Navigation Header */
  header{
    border-bottom: 1px solid var(--border);
    position: sticky;
    top: 0;
    background-color: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(8px);
    z-index: 100;
  }body.page-donate .nav-flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 72px;
  }body.page-donate .logo{
    color: var(--text);
    text-decoration: none;
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 0.05em;
  }body.page-donate nav ul{ display: flex; list-style: none; gap: 32px; align-items: center; }body.page-donate nav a{ color: var(--muted); text-decoration: none; font-size: 14px; transition: color 0.2s; }body.page-donate nav a:hover, body.page-donate nav a.active{ color: var(--text); }body.page-donate /* Interactive Elements */
  .btn-primary{
    background-color: var(--btn-bg);
    color: var(--btn-text);
    padding: 12px 24px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: opacity 0.2s;
    border: none;
    cursor: pointer;
  }body.page-donate .btn-primary:hover{ opacity: 0.9; }body.page-donate .btn-ghost{
    background-color: transparent;
    color: var(--text);
    padding: 12px 24px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    border: 1px solid var(--border);
    transition: background-color 0.2s, border-color 0.2s;
  }body.page-donate .btn-ghost:hover{ background-color: var(--bg-card); border-color: var(--border-focus); }body.page-donate /* Hero Architecture */
  .hero-grid{
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 64px;
    align-items: center;
  }body.page-donate .hero-text h1{ font-size: 48px; margin-bottom: 24px; }body.page-donate .hero-text p{ font-size: 18px; margin-bottom: 32px; }body.page-donate /* Unified Donation Widget Interface */
  .donation-widget{
    background-color: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 32px;
  }body.page-donate .frequency-selector{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 24px;
  }body.page-donate .freq-btn{
    background-color: var(--bg);
    border: 1px solid var(--border);
    color: var(--muted);
    padding: 10px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
  }body.page-donate .freq-btn.active{
    background-color: var(--btn-bg);
    color: var(--btn-text);
    border-color: var(--btn-bg);
  }body.page-donate .amount-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 16px;
  }body.page-donate .amount-btn{
    background-color: var(--bg);
    border: 1px solid var(--border);
    color: var(--text);
    padding: 14px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
  }body.page-donate .amount-btn:hover{ border-color: var(--border-focus); }body.page-donate .amount-btn.active{
    border-color: var(--text);
    background-color: rgba(255, 255, 255, 0.05);
  }body.page-donate .custom-amount-input{
    position: relative;
    margin-bottom: 24px;
  }body.page-donate .custom-amount-input span{
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--muted);
    font-weight: 600;
  }body.page-donate .custom-amount-input input{
    width: 100%;
    background-color: var(--bg);
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 14px 14px 14px 32px;
    color: var(--text);
    font-size: 16px;
    font-weight: 600;
    outline: none;
  }body.page-donate .custom-amount-input input:focus{ border-color: var(--border-focus); }body.page-donate .widget-footer-note{
    font-size: 12px;
    text-align: center;
    color: var(--eyebrow);
    margin-top: 16px;
  }body.page-donate /* Two-Column Grid Implementations */
  .split-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
  }body.page-donate .split-grid h2{ font-size: 32px; margin-bottom: 24px; }body.page-donate .split-grid p{ margin-bottom: 20px; }body.page-donate /* Tiered Financial Transparency Manifest */
  .tier-manifest{
    display: flex;
    flex-direction: column;
    gap: 16px;
  }body.page-donate .tier-card{
    background-color: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 24px;
    display: flex;
    gap: 24px;
    align-items: flex-start;
  }body.page-donate .tier-value{
    font-size: 24px;
    font-weight: 800;
    color: var(--text);
    background-color: var(--bg);
    border: 1px solid var(--border);
    padding: 8px 16px;
    border-radius: 4px;
    white-space: nowrap;
  }body.page-donate .tier-details h4{ font-size: 16px; margin-bottom: 4px; }body.page-donate .tier-details p{ font-size: 14px; line-height: 1.5; }body.page-donate /* Operational Pillars Grid */
  .three-card-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 48px;
  }body.page-donate .pillar-card{
    background-color: var(--bg-card);
    border: 1px solid var(--border);
    padding: 32px;
    border-radius: 4px;
  }body.page-donate .pillar-card h3{ font-size: 18px; margin-bottom: 12px; }body.page-donate .pillar-card p{ font-size: 14px; }body.page-donate /* B2B / Corporate Hardware Asset Blocks */
  .corporate-panel{
    border: 1px solid var(--border);
    background-color: var(--bg-card);
    border-radius: 6px;
    padding: 48px;
    margin-top: 64px;
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 48px;
    align-items: center;
  }body.page-donate .corporate-text h3{ font-size: 24px; margin-bottom: 12px; }body.page-donate /* Standardized Page Footer Layout */
  footer{
    background-color: var(--bg);
    padding: 64px 0;
    border-top: 1px solid var(--border);
    font-size: 14px;
  }body.page-donate .footer-links{
    display: flex;
    gap: 24px;
    list-style: none;
    margin-bottom: 32px;
    flex-wrap: wrap;
  }body.page-donate .footer-links a{ color: var(--muted); text-decoration: none; transition: color 0.2s; }body.page-donate .footer-links a:hover{ color: var(--text); }body.page-donate footer p{ font-size: 13px; color: var(--eyebrow); line-height: 1.8; }body.page-donate footer p a{ color: var(--muted); text-decoration: none; border-bottom: 1px solid var(--border); }body.page-donate footer p a:hover{ color: var(--text); border-color: var(--border-focus); }body.page-donate /* Mobile Adaptation Infrastructure */
  @media (max-width: 968px){
    .hero-grid, .split-grid, .three-card-grid, .corporate-panel {
      grid-template-columns: 1fr;
      gap: 40px;
    }
    section { padding: 64px 0; }
    .hero-text h1 { font-size: 36px; }
    .split-grid h2 { font-size: 26px; }
  }


/* ===== Contact: contact.html ===== */
body.page-contact /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-contact .site-nav .nav-logo{ display: flex; align-items: center; }body.page-contact .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-contact .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-contact .site-nav .nav-links a:hover, body.page-contact .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-contact .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-contact .site-nav .nav-links{ display: none; } }body.page-contact /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-contact .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-contact .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-contact .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --text:       #FFFFFF;
    --muted:      #9CA3AF;
    --bg:         #000000;
    --bg-section: #080808;
    --bg-card:    #111111;
    --border:     #2A2A2A;
    --border-focus:#555555;
    --btn-bg:     #FFFFFF;
    --btn-text:   #000000;
    --eyebrow:    #888888;
    --link:       #CCCCCC;
    --error:      #EF4444;
    --error-bg:   #1a0a0a;
    --error-border:#3d1515;
    --success-bg: #0a1a0e;
    --success-border:#153d1e;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }html{ scroll-behavior: smooth; }body.page-contact{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-contact a{ color: var(--link); text-decoration: none; }body.page-contact /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-contact .nav-logo{ display: flex; align-items: center; }body.page-contact .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-contact .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-contact .nav-links a:hover, body.page-contact .nav-links a.active{ color: var(--text); }body.page-contact .nav-cta{ background: var(--btn-bg) !important; color: var(--btn-text) !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-contact .nav-links{ display: none; } }body.page-contact /* ── PAGE HEADER ── */
  .page-header{
    background: var(--bg);
    border-bottom: 1px solid var(--border);
    padding: 56px 24px 48px;
    position: relative;
    overflow: hidden;
  }body.page-contact .page-header::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 80% at 50% 0%, #FFFFFF10 0%, transparent 70%);
    pointer-events: none;
  }body.page-contact .page-header-inner{ max-width: 720px; margin: 0 auto; }body.page-contact .eyebrow{
    display: inline-block;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 20px;
  }body.page-contact .page-header h1{
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.025em;
    margin-bottom: 14px;
  }body.page-contact .page-header p{
    font-size: 16px;
    color: var(--muted);
    line-height: 1.7;
    max-width: 560px;
  }body.page-contact /* ── LAYOUT ── */
  .contact-page{ padding: 48px 24px 80px; }body.page-contact .contact-inner{ max-width: 960px; margin: 0 auto; }body.page-contact .contact-grid{
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 48px;
    align-items: start;
  }
  @media (max-width: 720px) {body.page-contact .contact-grid{ grid-template-columns: 1fr; gap: 36px; }
  }body.page-contact /* ── SIDEBAR ── */
  .sidebar{ display: flex; flex-direction: column; gap: 16px; }body.page-contact .sidebar-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 26px;
  }body.page-contact .sidebar-card .s-label{
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--eyebrow);
    margin-bottom: 10px;
    display: block;
  }body.page-contact .sidebar-card h3{
    font-size: 15px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 8px;
  }body.page-contact .sidebar-card p{
    font-size: 14px;
    color: var(--muted);
    line-height: 1.65;
  }body.page-contact .sidebar-card a{
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
  }body.page-contact .sidebar-card a:hover{ color: var(--link); }body.page-contact .contact-detail-list{ display: flex; flex-direction: column; gap: 12px; margin-top: 4px; }body.page-contact .contact-row{ display: flex; gap: 12px; align-items: flex-start; }body.page-contact .contact-row .c-label{
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--eyebrow);
    min-width: 76px;
    padding-top: 2px;
    flex-shrink: 0;
  }body.page-contact .contact-row .c-val{ font-size: 14px; color: var(--muted); line-height: 1.55; }body.page-contact .contact-row .c-val a{ color: var(--link); }body.page-contact .response-strip{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 3px solid var(--eyebrow);
    border-radius: 8px;
    padding: 14px 18px;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.65;
  }body.page-contact .response-strip strong{ color: var(--text); }body.page-contact /* ── ROUTING FORM ── */
  .form-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
  }body.page-contact .form-card-header{
    padding: 22px 28px;
    border-bottom: 1px solid var(--border);
  }body.page-contact .form-card-header h2{
    font-size: 17px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 4px;
  }body.page-contact .form-card-header p{
    font-size: 13px;
    color: var(--eyebrow);
  }body.page-contact .form-card-body{ padding: 28px; display: flex; flex-direction: column; gap: 18px; }body.page-contact /* Routing selector */
  .routing-block{ display: flex; flex-direction: column; gap: 8px; }body.page-contact .routing-block label{
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }body.page-contact .routing-tabs{
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
  }body.page-contact .routing-tab{
    flex: 1;
    min-width: 100px;
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    cursor: pointer;
    text-align: center;
    transition: border-color 0.15s, color 0.15s, background 0.15s;
    user-select: none;
  }body.page-contact .routing-tab:hover{ border-color: #444; color: var(--text); }body.page-contact .routing-tab.active{
    border-color: var(--btn-bg);
    color: var(--text);
    background: #1a1a1a;
  }body.page-contact .routing-tab .tab-icon{ display: block; font-size: 18px; margin-bottom: 4px; }body.page-contact /* Context strip — changes per routing tab */
  .context-strip{
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 18px;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.65;
    display: none;
  }body.page-contact .context-strip.visible{ display: block; }body.page-contact .context-strip strong{ color: var(--text); font-weight: 600; }body.page-contact /* Form fields */
  .field{ display: flex; flex-direction: column; gap: 6px; }body.page-contact .field label{
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 4px;
  }body.page-contact .req{ color: var(--eyebrow); font-size: 13px; }body.page-contact .optional-label{ color: var(--eyebrow); text-transform: none; letter-spacing: 0; font-weight: 400; }body.page-contact .field input, body.page-contact .field select, body.page-contact .field textarea{
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text);
    font-size: 14px;
    padding: 11px 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
  }body.page-contact .field input::placeholder, body.page-contact .field textarea::placeholder{ color: #3a3a3a; }body.page-contact .field input:focus, body.page-contact .field select:focus, body.page-contact .field textarea:focus{ border-color: var(--border-focus); }body.page-contact .field select{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
    cursor: pointer;
  }body.page-contact .field select option{ background: #111; color: #fff; }body.page-contact .field textarea{ resize: vertical; min-height: 110px; line-height: 1.6; }body.page-contact .field-hint{ font-size: 12px; color: var(--eyebrow); line-height: 1.5; }body.page-contact .field-row{ display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
  @media (max-width: 480px) {body.page-contact .field-row{ grid-template-columns: 1fr; } }body.page-contact /* Dynamic field groups */
  .dynamic-fields{ display: none; flex-direction: column; gap: 18px; }body.page-contact .dynamic-fields.visible{ display: flex; }body.page-contact /* Submit */
  .submit-group{ display: flex; flex-direction: column; gap: 10px; }body.page-contact .submit-btn{
    background: var(--btn-bg);
    color: var(--btn-text);
    font-weight: 800;
    font-size: 15px;
    padding: 14px 24px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    transition: opacity 0.15s;
    width: 100%;
    font-family: inherit;
    letter-spacing: -0.01em;
  }body.page-contact .submit-btn:hover{ opacity: 0.88; }body.page-contact .submit-btn:disabled{ opacity: 0.4; cursor: not-allowed; }body.page-contact .response-note{
    font-size: 12px;
    color: var(--eyebrow);
    text-align: center;
    line-height: 1.6;
  }body.page-contact .response-note strong{ color: var(--muted); }body.page-contact /* Error / success */
  .form-error{
    display: none;
    background: var(--error-bg);
    border: 1px solid var(--error-border);
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 13px;
    color: #f87171;
  }body.page-contact .form-error.visible{ display: block; }body.page-contact .field.invalid input, body.page-contact .field.invalid select, body.page-contact .field.invalid textarea{ border-color: var(--error-border); }body.page-contact .field-err{ font-size: 12px; color: #f87171; display: none; }body.page-contact .field.invalid .field-err{ display: block; }body.page-contact .success-screen{
    display: none;
    padding: 48px 28px;
    text-align: center;
  }body.page-contact .success-screen.visible{ display: block; }body.page-contact .success-icon{
    width: 52px; height: 52px;
    background: var(--success-bg);
    border: 1px solid var(--success-border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin: 0 auto 20px;
  }body.page-contact .success-screen h3{ font-size: 20px; font-weight: 800; margin-bottom: 10px; }body.page-contact .success-screen p{ font-size: 14px; color: var(--muted); line-height: 1.7; max-width: 360px; margin: 0 auto; }body.page-contact /* ── AUDIENCE QUICK-LINKS ── */
  .audience-links{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
    margin-top: 48px;
    padding-top: 48px;
    border-top: 1px solid var(--border);
  }
  @media (max-width: 640px) {body.page-contact .audience-links{ grid-template-columns: 1fr; } }body.page-contact .aud-link-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 22px 24px;
    display: block;
    transition: border-color 0.15s;
  }body.page-contact .aud-link-card:hover{ border-color: #555; }body.page-contact .aud-link-card .a-icon{ font-size: 22px; margin-bottom: 10px; display: block; }body.page-contact .aud-link-card h3{ font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 6px; }body.page-contact .aud-link-card p{ font-size: 13px; color: var(--muted); line-height: 1.55; margin-bottom: 10px; }body.page-contact .aud-link-card .a-cta{ font-size: 12px; font-weight: 700; color: var(--text); }body.page-contact /* ── FOOTER ── */
  footer{ background: var(--bg-section); border-top: 1px solid var(--border); padding: 40px 24px; text-align: center; font-size: 13px; color: var(--muted); line-height: 1.9; }body.page-contact .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-contact .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-contact .footer-links a:hover{ color: var(--text); }


/* ===== Apply: apply.html ===== */
body.page-apply /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-apply .site-nav .nav-logo{ display: flex; align-items: center; }body.page-apply .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-apply .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-apply .site-nav .nav-links a:hover, body.page-apply .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-apply .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-apply .site-nav .nav-links{ display: none; } }body.page-apply /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-apply .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-apply .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-apply .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:      #FFFFFF;
    --accent2:     #CCCCCC;
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --border:      #2A2A2A;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --photo-bg:    #111111;
    --photo-bdr:   #333333;
    --photo-icon:  #666666;
    --link:        #CCCCCC;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }body.page-apply{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-apply a{ color: var(--link); text-decoration: none; }body.page-apply /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-apply .nav-logo{ display: flex; align-items: center; }body.page-apply .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-apply .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-apply .nav-links a:hover, body.page-apply .nav-links a.active{ color: var(--text); }body.page-apply .nav-cta{ background: var(--btn-bg) !important; color: var(--btn-text) !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-apply .nav-links{ display: none; } }body.page-apply /* ── BUTTONS ── */
  .btn-primary{ background: var(--btn-bg); color: var(--btn-text); font-weight: 700; font-size: 15px; padding: 13px 28px; border-radius: 8px; transition: opacity 0.15s; display: inline-block; }body.page-apply .btn-primary:hover{ opacity: 0.88; color: var(--btn-text); }body.page-apply .btn-ghost{ background: transparent; color: var(--text); font-weight: 600; font-size: 15px; padding: 13px 28px; border-radius: 8px; border: 1px solid var(--border); transition: border-color 0.15s; display: inline-block; }body.page-apply .btn-ghost:hover{ border-color: var(--accent); color: var(--accent); }body.page-apply /* ── HERO ── */
  .hero{
    background: var(--bg);
    padding: 80px 24px 72px;
    text-align: center;
    border-bottom: 1px solid var(--border);
    position: relative;
    overflow: hidden;
  }body.page-apply .hero::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 0%, #FFFFFF18 0%, transparent 70%);
    pointer-events: none;
  }body.page-apply .eyebrow{
    display: inline-block;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 24px;
  }body.page-apply .hero h1{ font-size: clamp(30px, 6vw, 56px); font-weight: 800; line-height: 1.1; letter-spacing: -0.03em; max-width: 760px; margin: 0 auto 20px; }body.page-apply .hero h1 em{ font-style: normal; color: var(--accent); }body.page-apply .hero-sub{ font-size: clamp(16px, 2vw, 18px); color: var(--muted); max-width: 580px; margin: 0 auto 36px; line-height: 1.7; }body.page-apply .hero-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-apply /* ── CREDENTIAL BADGES BAR ── */
  .creds-bar{ background: var(--bg-section); border-bottom: 1px solid var(--border); padding: 16px 24px; display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }body.page-apply .cred-badge{ background: var(--bg-card); border: 1px solid var(--border); color: var(--text); font-size: 12px; font-weight: 600; padding: 6px 16px; border-radius: 20px; display: flex; align-items: center; gap: 6px; }body.page-apply .cred-dot{ width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }body.page-apply /* ── STATS BAR ── */
  .stats-bar{ background: var(--bg-card); border-bottom: 1px solid var(--border); display: flex; justify-content: center; flex-wrap: wrap; }body.page-apply .stat{ padding: 20px 36px; text-align: center; border-right: 1px solid var(--border); }body.page-apply .stat:last-child{ border-right: none; }body.page-apply .stat-num{ font-size: 24px; font-weight: 800; color: var(--text); display: block; line-height: 1; margin-bottom: 4px; }body.page-apply .stat-label{ font-size: 12px; color: var(--muted); font-weight: 500; }body.page-apply /* ── SECTIONS ── */
  section{ padding: 80px 24px; }body.page-apply .inner{ max-width: 960px; margin: 0 auto; }body.page-apply .s-eyebrow{ font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--eyebrow); margin-bottom: 12px; }body.page-apply .s-title{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; color: var(--text); margin-bottom: 16px; }body.page-apply .s-title em{ font-style: normal; color: var(--accent); }body.page-apply .s-body{ font-size: 17px; color: var(--muted); max-width: 620px; line-height: 1.75; }body.page-apply /* ── GRIDS ── */
  .grid-2{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 44px; }body.page-apply .grid-3{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-top: 44px; }
  @media (max-width: 640px) {body.page-apply .grid-2, body.page-apply .grid-3{ grid-template-columns: 1fr; }body.page-apply .apply-2col-grid{ grid-template-columns: 1fr !important; gap: 28px !important; } }body.page-apply /* ── CARDS ── */
  .card{ background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; padding: 28px; }body.page-apply .card .icon{ font-size: 24px; margin-bottom: 14px; }body.page-apply .card h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 8px; }body.page-apply .card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-apply /* ── FIT CARDS ── */
  .fit-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 28px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
  }body.page-apply .fit-check{
    width: 28px; height: 28px;
    background: #1a1a1a;
    border: 1px solid #333;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 13px;
    margin-top: 2px;
  }body.page-apply .fit-card h3{ font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 5px; }body.page-apply .fit-card p{ font-size: 13px; color: var(--muted); line-height: 1.6; }body.page-apply /* ── CURRICULUM MODULE LIST ── */
  .module-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
    margin-top: 44px;
  }body.page-apply .module-item{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
  }body.page-apply .module-num{
    width: 24px; height: 24px;
    background: var(--btn-bg);
    color: var(--btn-text);
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }body.page-apply /* ── CREDENTIAL DETAIL CARDS ── */
  .cred-card{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }body.page-apply .cred-card .cred-full{ font-size: 11px; font-weight: 600; color: var(--eyebrow); text-transform: uppercase; letter-spacing: 0.1em; }body.page-apply .cred-card .cred-title{ font-size: 20px; font-weight: 800; color: var(--text); letter-spacing: -0.02em; }body.page-apply .cred-card p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-apply .cred-tag{ display: inline-block; background: #1a1a1a; border: 1px solid var(--border); border-radius: 20px; font-size: 11px; font-weight: 600; color: var(--muted); padding: 4px 12px; margin-top: 4px; }body.page-apply /* ── EXPECTATIONS ── */
  .expect-list{ display: flex; flex-direction: column; gap: 0; margin-top: 44px; }body.page-apply .expect-row{
    display: flex;
    gap: 24px;
    align-items: flex-start;
    padding: 24px 0;
    border-bottom: 1px solid var(--border);
  }body.page-apply .expect-row:first-child{ padding-top: 0; }body.page-apply .expect-row:last-child{ border-bottom: none; padding-bottom: 0; }body.page-apply .expect-icon{
    width: 36px; height: 36px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
  }body.page-apply .expect-row h3{ font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 5px; }body.page-apply .expect-row p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-apply /* ── FAQ ── */
  .faq-list{ display: flex; flex-direction: column; gap: 12px; margin-top: 44px; }body.page-apply .faq-item{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
  }body.page-apply .faq-q{
    width: 100%;
    background: none;
    border: none;
    color: var(--text);
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    text-align: left;
    padding: 20px 24px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
  }body.page-apply .faq-q:hover{ color: var(--accent); }body.page-apply .faq-arrow{ font-size: 18px; color: var(--eyebrow); flex-shrink: 0; transition: transform 0.2s; font-style: normal; font-weight: 400; }body.page-apply .faq-a{
    display: none;
    padding: 0 24px 20px;
    font-size: 14px;
    color: var(--muted);
    line-height: 1.7;
    border-top: 1px solid var(--border);
    padding-top: 16px;
  }body.page-apply .faq-item.open .faq-a{ display: block; }body.page-apply .faq-item.open .faq-arrow{ transform: rotate(45deg); }body.page-apply /* ── PROCESS STEPS ── */
  .steps{ display: flex; flex-direction: column; gap: 0; margin-top: 44px; }body.page-apply .step{ display: flex; gap: 24px; align-items: flex-start; padding: 28px 0; border-bottom: 1px solid var(--border); }body.page-apply .step:first-child{ padding-top: 0; }body.page-apply .step:last-child{ border-bottom: none; padding-bottom: 0; }body.page-apply .step-num{
    width: 40px; height: 40px;
    background: var(--accent);
    color: var(--btn-text);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }body.page-apply .step-content{ flex: 1 1 auto; min-width: 0; }body.page-apply .step-content h3{ font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 6px; }body.page-apply .step-content p{ font-size: 14px; color: var(--muted); line-height: 1.65; }body.page-apply /* ── PHOTO SLOT ── */
  .p-slot{
    background: var(--photo-bg);
    border: 1.5px dashed var(--photo-bdr);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--photo-icon);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-align: center;
    padding: 20px;
    min-height: 200px;
  }body.page-apply .p-slot.tall{ min-height: 320px; }body.page-apply .p-slot-label{ opacity: 0.6; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; }body.page-apply /* ── LOCATION STRIP ── */
  .location-strip{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px 28px;
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
    margin-top: 44px;
    align-items: center;
  }body.page-apply .loc-item{ display: flex; flex-direction: column; gap: 3px; }body.page-apply .loc-label{ font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--eyebrow); }body.page-apply .loc-val{ font-size: 14px; font-weight: 600; color: var(--text); }body.page-apply .loc-divider{ width: 1px; height: 36px; background: var(--border); flex-shrink: 0; }
  @media (max-width: 640px) {body.page-apply .loc-divider{ display: none; }body.page-apply .location-strip{ flex-direction: column; gap: 16px; } }body.page-apply /* ── CTA SECTION ── */
  .cta-section{ background: var(--bg-card); border-top: 1px solid var(--border); padding: 80px 24px; text-align: center; }body.page-apply .cta-section h2{ font-size: clamp(26px, 4vw, 40px); font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 16px; }body.page-apply .cta-section h2 em{ font-style: normal; }body.page-apply .cta-section p{ font-size: 17px; color: var(--muted); max-width: 480px; margin: 0 auto 32px; line-height: 1.7; }body.page-apply .cta-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }body.page-apply /* ── FOOTER ── */
  footer{ background: var(--bg-section); border-top: 1px solid var(--border); padding: 40px 24px; text-align: center; font-size: 13px; color: var(--muted); line-height: 1.9; }body.page-apply .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-apply .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-apply .footer-links a:hover{ color: var(--text); }


/* ===== Register: register.html ===== */
body.page-register /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-register .site-nav .nav-logo{ display: flex; align-items: center; }body.page-register .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-register .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-register .site-nav .nav-links a:hover, body.page-register .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-register .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-register .site-nav .nav-links{ display: none; } }body.page-register /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-register .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-register .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-register .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
    --accent:      #FFFFFF;
    --text:        #FFFFFF;
    --muted:       #9CA3AF;
    --bg:          #000000;
    --bg-section:  #080808;
    --bg-card:     #111111;
    --border:      #2A2A2A;
    --border-focus:#555555;
    --btn-bg:      #FFFFFF;
    --btn-text:    #000000;
    --eyebrow:     #888888;
    --link:        #CCCCCC;
    --error:       #EF4444;
    --error-bg:    #1a0a0a;
    --error-border:#3d1515;
    --success:     #22C55E;
    --success-bg:  #0a1a0e;
    --success-border:#153d1e;
    --required:    #888888;
  }*{ box-sizing: border-box; margin: 0; padding: 0; }html{ scroll-behavior: smooth; }body.page-register{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }body.page-register a{ color: var(--link); text-decoration: none; }body.page-register /* ── NAV ── */
  nav{
    background: #000;
    border-bottom: 1px solid var(--border);
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-register .nav-logo{ display: flex; align-items: center; }body.page-register .nav-links{ display: flex; gap: 28px; list-style: none; align-items: center; }body.page-register .nav-links a{ color: var(--muted); font-size: 14px; font-weight: 500; transition: color 0.15s; }body.page-register .nav-links a:hover, body.page-register .nav-links a.active{ color: var(--text); }body.page-register .nav-cta{ background: var(--btn-bg) !important; color: var(--btn-text) !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-register .nav-links{ display: none; } }body.page-register /* ── PAGE HEADER ── */
  .page-header{
    background: var(--bg);
    border-bottom: 1px solid var(--border);
    padding: 48px 24px 44px;
    position: relative;
    overflow: hidden;
  }body.page-register .page-header::before{
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 80% at 50% 0%, #FFFFFF10 0%, transparent 70%);
    pointer-events: none;
  }body.page-register .page-header-inner{
    max-width: 720px;
    margin: 0 auto;
  }body.page-register .eyebrow{
    display: inline-block;
    border: 1px solid var(--eyebrow);
    color: var(--eyebrow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 20px;
  }body.page-register .page-header h1{
    font-size: clamp(24px, 4vw, 36px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.025em;
    margin-bottom: 14px;
  }body.page-register .page-header p{
    font-size: 15px;
    color: var(--muted);
    line-height: 1.7;
    margin-bottom: 20px;
    max-width: 580px;
  }body.page-register .program-meta{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
  }body.page-register .meta-badge{
    background: var(--bg-card);
    border: 1px solid var(--border);
    color: var(--muted);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 14px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    gap: 6px;
  }body.page-register .meta-dot{ width: 5px; height: 5px; border-radius: 50%; background: var(--eyebrow); flex-shrink: 0; }body.page-register .disclaimer-banner{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 3px solid var(--eyebrow);
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.6;
  }body.page-register /* ── FORM LAYOUT ── */
  .form-page{ padding: 40px 24px 80px; }body.page-register .form-inner{ max-width: 720px; margin: 0 auto; display: flex; flex-direction: column; gap: 28px; }body.page-register /* ── FORM SECTIONS ── */
  .form-section{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
  }body.page-register .form-section-header{
    padding: 20px 28px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    gap: 14px;
  }body.page-register .section-num{
    width: 28px; height: 28px;
    background: var(--btn-bg);
    color: var(--btn-text);
    border-radius: 6px;
    font-size: 11px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }body.page-register .section-title{ font-size: 15px; font-weight: 700; color: var(--text); }body.page-register .section-sub{ font-size: 12px; color: var(--eyebrow); margin-top: 1px; }body.page-register .form-section-body{ padding: 28px; display: flex; flex-direction: column; gap: 20px; }body.page-register /* ── FIELD GROUPS ── */
  .field-row{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }body.page-register .field-row.three{ grid-template-columns: 1fr 1fr 1fr; }
  @media (max-width: 560px) {body.page-register .field-row, body.page-register .field-row.three{ grid-template-columns: 1fr; }
  }body.page-register .field{ display: flex; flex-direction: column; gap: 6px; }body.page-register .field label{
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 4px;
  }body.page-register .req{ color: var(--required); font-size: 13px; font-weight: 700; }body.page-register .field input, body.page-register .field select, body.page-register .field textarea{
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text);
    font-size: 14px;
    padding: 11px 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
  }body.page-register .field input::placeholder, body.page-register .field textarea::placeholder{ color: #3a3a3a; }body.page-register .field input:focus, body.page-register .field select:focus, body.page-register .field textarea:focus{ border-color: var(--border-focus); }body.page-register .field select{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
    cursor: pointer;
  }body.page-register .field select option{ background: #111; color: #fff; }body.page-register .field textarea{ resize: vertical; min-height: 110px; line-height: 1.6; }body.page-register .field-hint{ font-size: 12px; color: var(--eyebrow); line-height: 1.5; }body.page-register /* ── RADIO + TOGGLE GROUPS ── */
  .radio-group{ display: flex; gap: 10px; flex-wrap: wrap; }body.page-register .radio-option{ position: relative; }body.page-register .radio-option input[type="radio"], body.page-register .radio-option input[type="checkbox"]{ position: absolute; opacity: 0; width: 0; height: 0; }body.page-register .radio-option label{
    display: flex;
    align-items: center;
    gap: 8px;
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--muted);
    cursor: pointer;
    transition: border-color 0.15s, color 0.15s;
    text-transform: none;
    letter-spacing: 0;
    user-select: none;
  }body.page-register .radio-option input[type="radio"]:checked + label, body.page-register .radio-option input[type="checkbox"]:checked + label{
    border-color: var(--btn-bg);
    color: var(--text);
    background: #1a1a1a;
  }body.page-register .radio-option label:hover{ border-color: #444; color: var(--text); }body.page-register /* ── CHECKBOX CONFIRMATIONS ── */
  .checkbox-list{ display: flex; flex-direction: column; gap: 12px; }body.page-register .check-item{ display: flex; align-items: flex-start; gap: 12px; }body.page-register .check-item input[type="checkbox"]{
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin-top: 2px;
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 4px;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    transition: border-color 0.15s, background 0.15s;
  }body.page-register .check-item input[type="checkbox"]:checked{
    background: var(--btn-bg);
    border-color: var(--btn-bg);
  }body.page-register .check-item input[type="checkbox"]:checked::after{
    content: '';
    position: absolute;
    left: 4px; top: 1px;
    width: 5px; height: 10px;
    border: 2px solid #000;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
  }body.page-register .check-item input[type="checkbox"]:focus{ outline: 1px solid var(--border-focus); }body.page-register .check-item label{
    font-size: 14px;
    color: var(--muted);
    line-height: 1.6;
    cursor: pointer;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
  }body.page-register .check-item label strong{ color: var(--text); font-weight: 600; }body.page-register /* ── CONDITIONAL FIELD ── */
  .conditional-field{ display: none; margin-top: 12px; }body.page-register .conditional-field.visible{ display: flex; flex-direction: column; gap: 6px; }body.page-register /* ── SUBMIT SECTION ── */
  .submit-section{
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 32px 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }body.page-register .submit-note{
    font-size: 13px;
    color: var(--eyebrow);
    line-height: 1.65;
    padding: 14px 16px;
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 8px;
  }body.page-register .submit-btn{
    background: var(--btn-bg);
    color: var(--btn-text);
    font-weight: 800;
    font-size: 16px;
    padding: 15px 28px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    transition: opacity 0.15s;
    width: 100%;
    font-family: inherit;
    letter-spacing: -0.01em;
  }body.page-register .submit-btn:hover{ opacity: 0.88; }body.page-register .submit-btn:disabled{ opacity: 0.4; cursor: not-allowed; }body.page-register .privacy-line{
    font-size: 12px;
    color: var(--eyebrow);
    text-align: center;
    line-height: 1.6;
  }body.page-register /* ── SUCCESS STATE ── */
  .success-screen{
    display: none;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 52px 32px;
    text-align: center;
  }body.page-register .success-screen.visible{ display: block; }body.page-register .success-icon{
    width: 56px; height: 56px;
    background: var(--success-bg);
    border: 1px solid var(--success-border);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin: 0 auto 24px;
  }body.page-register .success-screen h2{ font-size: 24px; font-weight: 800; letter-spacing: -0.02em; margin-bottom: 12px; }body.page-register .success-screen p{ font-size: 15px; color: var(--muted); line-height: 1.75; max-width: 440px; margin: 0 auto 24px; }body.page-register .success-detail{
    display: inline-flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 28px;
  }body.page-register .s-badge{
    background: #0a0a0a;
    border: 1px solid var(--border);
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
    padding: 5px 14px;
  }body.page-register .success-back{
    display: inline-block;
    background: var(--btn-bg);
    color: var(--btn-text);
    font-weight: 700;
    font-size: 14px;
    padding: 12px 24px;
    border-radius: 8px;
  }body.page-register /* ── ERROR STATE ── */
  .form-error-banner{
    display: none;
    background: var(--error-bg);
    border: 1px solid var(--error-border);
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 13px;
    color: #f87171;
    line-height: 1.6;
  }body.page-register .form-error-banner.visible{ display: block; }body.page-register .field.invalid input, body.page-register .field.invalid select, body.page-register .field.invalid textarea{ border-color: var(--error-border); }body.page-register .field-error-msg{ font-size: 12px; color: #f87171; display: none; }body.page-register .field.invalid .field-error-msg{ display: block; }body.page-register /* ── FOOTER ── */
  footer{ background: var(--bg-section); border-top: 1px solid var(--border); padding: 40px 24px; text-align: center; font-size: 13px; color: var(--muted); line-height: 1.9; }body.page-register .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-register .footer-links a{ color: var(--muted); font-size: 13px; font-weight: 500; }body.page-register .footer-links a:hover{ color: var(--text); }


/* ===== Thank You: thank-you.html ===== */
body.page-thank-you /* ── SHARED NAV ── */
  .site-nav{
    background: #000;
    border-bottom: 1px solid #2A2A2A;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
  }body.page-thank-you .site-nav .nav-logo{ display: flex; align-items: center; }body.page-thank-you .site-nav .nav-links{ display: flex; gap: 24px; list-style: none; align-items: center; }body.page-thank-you .site-nav .nav-links a{ color: #9CA3AF; font-size: 14px; font-weight: 500; text-decoration: none; transition: color 0.15s; }body.page-thank-you .site-nav .nav-links a:hover, body.page-thank-you .site-nav .nav-links a.active{ color: #FFFFFF; }body.page-thank-you .site-nav .nav-cta{ background: #FFFFFF !important; color: #000000 !important; font-weight: 700 !important; padding: 8px 20px; border-radius: 6px; }
  @media (max-width: 640px) {body.page-thank-you .site-nav .nav-links{ display: none; } }body.page-thank-you /* ── SHARED FOOTER ── */
  .site-footer{ background: #080808; border-top: 1px solid #2A2A2A; padding: 40px 24px; text-align: center; font-size: 13px; color: #9CA3AF; line-height: 1.9; }body.page-thank-you .site-footer .footer-links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; list-style: none; margin-bottom: 20px; }body.page-thank-you .site-footer .footer-links a{ color: #9CA3AF; font-size: 13px; font-weight: 500; text-decoration: none; }body.page-thank-you .site-footer .footer-links a:hover{ color: #FFFFFF; }:root{
      --bg: #000000;
      --bg-section: #080808;
      --bg-card: #111111;
      --text: #FFFFFF;
      --muted: #9CA3AF;
      --border: #2A2A2A;
      --border-focus: #555555;
      --btn-bg: #FFFFFF;
      --btn-text: #000000;
      --eyebrow: #888888;
      --success: #22C55E;
      --success-bg: #0a1a0e;
      --success-border: #153d1e;
      --radius: 4px;
    }*{
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }body.page-thank-you{
      background-color: var(--bg);
      color: var(--text);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
      line-height: 1.5;
      -webkit-font-smoothing: antialiased;
    }body.page-thank-you /* Layout Containers */
    .container{
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 24px;
    }body.page-thank-you section{
      padding: 100px 0;
      border-bottom: 1px solid var(--border);
    }body.page-thank-you .section-alt{
      background-color: var(--bg-section);
    }body.page-thank-you /* Typography Hierarchy */
    h1, body.page-thank-you h2, body.page-thank-you h3, body.page-thank-you h4{
      font-weight: 700;
      letter-spacing: -0.02em;
      line-height: 1.1;
      color: var(--text);
    }body.page-thank-you p{
      color: var(--muted);
      font-size: 16px;
      line-height: 1.6;
      margin-bottom: 20px;
    }body.page-thank-you p:last-child{
      margin-bottom: 0;
    }body.page-thank-you .eyebrow{
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--eyebrow);
      margin-bottom: 16px;
      font-weight: 600;
      display: block;
    }body.page-thank-you /* Global Navigation Header */
    header{
      border-bottom: 1px solid var(--border);
      position: sticky;
      top: 0;
      background-color: rgba(0, 0, 0, 0.9);
      backdrop-filter: blur(8px);
      z-index: 100;
    }body.page-thank-you .nav-flex{
      display: flex;
      justify-content: space-between;
      align-items: center;
      height: 72px;
    }body.page-thank-you .logo{
      color: var(--text);
      text-decoration: none;
      font-weight: 800;
      font-size: 16px;
      letter-spacing: 0.05em;
    }body.page-thank-you nav ul{
      display: flex;
      list-style: none;
      gap: 32px;
      align-items: center;
    }body.page-thank-you nav a{
      color: var(--muted);
      text-decoration: none;
      font-size: 14px;
      transition: color 0.2s;
    }body.page-thank-you nav a:hover{
      color: var(--text);
    }body.page-thank-you /* Buttons and Links */
    .btn-primary{
      background-color: var(--btn-bg);
      color: var(--btn-text);
      padding: 12px 24px;
      border-radius: var(--radius);
      font-size: 14px;
      font-weight: 600;
      text-decoration: none;
      display: inline-block;
      transition: opacity 0.2s;
      border: none;
      cursor: pointer;
      text-align: center;
    }body.page-thank-you .btn-primary:hover{
      opacity: 0.9;
    }body.page-thank-you .btn-ghost{
      background-color: transparent;
      color: var(--text);
      padding: 12px 24px;
      border-radius: var(--radius);
      font-size: 14px;
      font-weight: 600;
      text-decoration: none;
      display: inline-block;
      border: 1px solid var(--border);
      transition: background-color 0.2s, border-color 0.2s;
      text-align: center;
    }body.page-thank-you .btn-ghost:hover{
      background-color: var(--bg-card);
      border-color: var(--border-focus);
    }body.page-thank-you /* Multi-Column Layout Grids */
    .grid-2{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 64px;
      align-items: start;
    }body.page-thank-you .grid-3{
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }body.page-thank-you .card{
      background-color: var(--bg-card);
      border: 1px solid var(--border);
      padding: 32px;
      border-radius: var(--radius);
      text-decoration: none;
      display: block;
      transition: border-color 0.2s;
    }body.page-thank-you .card:hover{
      border-color: var(--border-focus);
    }body.page-thank-you .card h3{
      font-size: 20px;
      margin-bottom: 12px;
    }body.page-thank-you /* Hero Center Formatting */
    .hero-center{
      text-align: center;
      max-width: 720px;
      margin: 0 auto;
      padding: 40px 0;
    }body.page-thank-you .success-badge{
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background-color: var(--success-bg);
      border: 1px solid var(--success-border);
      color: var(--success);
      font-size: 13px;
      font-weight: 600;
      padding: 6px 16px;
      border-radius: var(--radius);
      margin-bottom: 24px;
    }body.page-thank-you /* Dynamic Message Tabs */
    .dynamic-container{
      margin-top: 32px;
      border-top: 1px dashed var(--border);
      padding-top: 32px;
    }body.page-thank-you .dynamic-message{
      display: none;
      animation: fadeIn 0.4s ease-out forwards;
    }body.page-thank-you .dynamic-message.active{
      display: block;
    }body.page-thank-you /* Step System */
    .step-list{
      display: flex;
      flex-direction: column;
      gap: 32px;
    }body.page-thank-you .step-item{
      position: relative;
      padding-left: 32px;
    }body.page-thank-you .step-item::before{
      content: "";
      position: absolute;
      left: 0;
      top: 6px;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: var(--text);
    }body.page-thank-you .step-item h4{
      font-size: 16px;
      margin-bottom: 4px;
    }body.page-thank-you /* Timeline Stack */
    .timeline-stack{
      background-color: var(--bg-card);
      border: 1px solid var(--border);
      padding: 40px;
      border-radius: var(--radius);
    }body.page-thank-you .timeline-item{
      border-bottom: 1px solid var(--border);
      padding-bottom: 16px;
      margin-bottom: 16px;
    }body.page-thank-you .timeline-item:last-child{
      border-bottom: none;
      padding-bottom: 0;
      margin-bottom: 0;
    }body.page-thank-you .timeline-title{
      color: var(--text);
      font-size: 13px;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      font-weight: 700;
      margin-bottom: 4px;
    }body.page-thank-you /* Global Footer Layout */
    footer{
      background-color: var(--bg);
      padding: 64px 0;
      border-top: 1px solid var(--border);
      font-size: 14px;
    }body.page-thank-you .footer-links{
      display: flex;
      gap: 24px;
      list-style: none;
      margin-bottom: 32px;
      flex-wrap: wrap;
    }body.page-thank-you .footer-links a{
      color: var(--muted);
      text-decoration: none;
      transition: color 0.2s;
    }body.page-thank-you .footer-links a:hover{
      color: var(--text);
    }body.page-thank-you footer p{
      font-size: 13px;
      color: var(--eyebrow);
      line-height: 1.8;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(4px); }
      to { opacity: 1; transform: translateY(0); }
    }body.page-thank-you /* Responsive Breakpoints */
    @media (max-width: 968px){
      .grid-2, .grid-3 {
        grid-template-columns: 1fr;
        gap: 40px;
      }
      section {
        padding: 64px 0;
      }
      .hero-center h1 { font-size: 32px !important; }
    }


/* ===== Shared responsive hardening ===== */
*, *::before, *::after { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; }
img, svg, video, iframe { max-width: 100%; height: auto; }
.site-nav, .site-nav * { min-width: 0; }
.site-nav .nav-links { list-style: none; }
.site-nav {
  height: 72px !important;
  min-height: 0;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
  overflow: visible;
}
.site-nav .nav-logo {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto;
  max-width: 280px;
}
.site-nav .nav-logo img,
.site-nav .nav-logo svg {
  display: block;
  width: auto !important;
  height: 64px !important;
  max-width: 280px !important;
  max-height: 64px !important;
  object-fit: contain;
}
.site-nav .nav-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 10px 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible;
}
.site-nav .nav-links li {
  flex: 0 0 auto;
}
.site-nav .nav-links a {
  white-space: nowrap;
}

@media (max-width: 900px) {
  .site-nav {
    height: auto !important;
    min-height: 64px;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 12px !important;
    padding: 10px 16px !important;
  }
  .site-nav .nav-logo {
    display: none !important;
  }
  .site-nav .nav-links {
    order: 1;
    width: 100%;
    display: flex !important;
    flex: 0 0 100%;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 6px 10px !important;
    margin: 0 !important;
    padding: 2px 0 0 !important;
    overflow: visible;
  }
  .site-nav .nav-links li {
    flex: 0 0 auto;
  }
  .site-nav .nav-links a:not(.nav-cta) {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 8px !important;
    white-space: nowrap;
    font-size: 12px !important;
  }
  .site-nav .nav-cta {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 12px !important;
    white-space: nowrap;
    font-size: 12px !important;
  }
}

@media (max-width: 720px) {
  main, header, section, footer, .hero, .section, .site-section, .cta, .footer {
    max-width: 100%;
  }
  .container, .inner, .hero-inner, .section-inner, .content-inner, .footer-inner,
  .s-container, .form-inner, .form-page, .wrap, .location-strip,
  [class$="-inner"], [class$="-grid"], [class*=" grid"], [class^="grid"], [class*="-cards"] {
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .grid-2, .grid-3, .mission-grid, .why-grid, .values-grid, .impact-grid,
  .program-grid, .outcomes-grid, .expect-grid, .audience-grid, .stats-grid,
  .cards-grid, .feature-grid, .steps-grid, .contact-grid, .donate-grid,
  .employer-grid, .hire-grid, .process-grid, .next-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .card, .stat, .stat-card, .aud-card, .cred-card, .form-section,
  .panel, .story-block, .mission-card, .why-card, .value-card,
  .impact-card, .location-strip, .inst-card {
    max-width: 100% !important;
    min-width: 0 !important;
  }
  h1, h2, h3, h4, p, li, a, label, input, textarea, select, button {
    overflow-wrap: break-word;
    word-break: normal;
  }
  .btn-primary, .btn-ghost, .button, button, input, textarea, select {
    max-width: 100%;
  }
  .btn-primary, .btn-ghost, .button {
    white-space: normal;
  }
  table { width: 100%; display: block; overflow-x: auto; }
}

@media (max-width: 480px) {
  body { width: 100%; }
  .site-nav { padding: 8px 12px !important; gap: 6px 10px !important; }
  .site-nav .nav-links {
    gap: 5px 8px !important;
    justify-content: flex-start;
  }
  .site-nav .nav-links a:not(.nav-cta), .site-nav .nav-cta {
    font-size: 11px !important;
    min-height: 30px;
    padding: 5px 7px !important;
  }
  .hero, section, .section, .site-section, .form-page { padding-left: 18px !important; padding-right: 18px !important; }
  .form-section-body, .form-section-header { padding-left: 18px !important; padding-right: 18px !important; }
  .stats, .stat, .stat-card { text-align: left; }
}

/* ===== Mobile content readability ===== */
@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden;
  }

  .container,
  .inner,
  .hero-inner,
  .section-inner,
  .content-inner,
  .form-inner,
  .contact-inner,
  .wrap,
  .s-container {
    width: 100%;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero-grid,
  .split-grid,
  .overview-grid,
  .method-grid,
  .outcomes-grid,
  .expect-grid,
  .contact-grid,
  .form-layout,
  .grid-2,
  .grid-3,
  .three-card-grid,
  .corporate-panel,
  .mission-grid,
  .values-grid,
  .impact-grid,
  .why-grid,
  .loc-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .hero-text,
  .overview-text,
  .form-info,
  .sidebar,
  .form-card,
  .card,
  .panel,
  .donation-widget,
  .corporate-panel,
  .tier-card,
  .pillar-card {
    width: 100%;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  h1 {
    font-size: clamp(32px, 9vw, 40px);
    line-height: 1.08;
  }

  h2,
  .s-title {
    font-size: clamp(25px, 7vw, 32px);
    line-height: 1.16;
  }

  p,
  li,
  .s-body {
    line-height: 1.65;
  }

  .s-body,
  .hero-sub,
  .hero-text p,
  .overview-text p,
  .split-grid p,
  .form-info p {
    max-width: 100% !important;
  }
}

/* ===== Enrollment help blocks ===== */
.enrollment-help {
  background: var(--bg);
  border-top: 1px solid var(--border);
  padding: 56px 24px;
}

.enrollment-help .help-card {
  max-width: 760px;
  margin: 0 auto;
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 28px;
  text-align: center;
}

.enrollment-help h2 {
  color: var(--text);
  font-size: 26px;
  line-height: 1.2;
  margin-bottom: 10px;
}

.enrollment-help p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
  max-width: 560px;
  margin: 0 auto 20px;
}

.enrollment-help .help-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .enrollment-help {
    padding: 44px 18px;
  }

  .enrollment-help .help-card {
    padding: 24px;
    text-align: left;
  }

  .enrollment-help h2 {
    font-size: 23px;
  }

  .enrollment-help p {
    max-width: 100%;
    font-size: 14px;
  }

  .enrollment-help .help-actions {
    justify-content: flex-start;
  }
}

/* ===== Donate page mobile stacking fix ===== */
@media (max-width: 767px) {
  body.page-donate {
    overflow-x: hidden;
  }

  body.page-donate .container,
  body.page-donate .hero-text,
  body.page-donate .donation-widget,
  body.page-donate .split-grid > *,
  body.page-donate .corporate-panel > *,
  body.page-donate .pillar-card,
  body.page-donate .tier-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body.page-donate .hero-grid,
  body.page-donate .split-grid,
  body.page-donate .three-card-grid,
  body.page-donate .corporate-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px;
    align-items: stretch !important;
  }

  body.page-donate section {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  body.page-donate .hero-text h1 {
    font-size: 34px;
    line-height: 1.08;
  }

  body.page-donate .hero-text p {
    font-size: 16px;
    line-height: 1.65;
  }

  body.page-donate .split-grid h2,
  body.page-donate .corporate-text h3 {
    font-size: 26px;
    line-height: 1.16;
  }

  body.page-donate .split-grid p,
  body.page-donate .pillar-card p,
  body.page-donate .tier-details p {
    font-size: 15px;
    line-height: 1.65;
  }

  body.page-donate .donation-widget,
  body.page-donate .pillar-card,
  body.page-donate .corporate-panel {
    padding: 24px;
  }

  body.page-donate .tier-card {
    flex-direction: column;
    gap: 14px;
  }
}
