/* =====================================================================
   PTAA Texas — Revamp Design System
   Logo-matched, colorful, interactive. Loaded LAST (after
   manus-header-redesign.css) so it wins. Pure CSS + light enhancement.
   Palette is taken from the PTAA logo: blue, green, orange, teal.
   Created: 2026-06-17  |  Scope: /new/ test clone only.
   ===================================================================== */

:root{
  /* ---- Logo-matched core palette ---- */
  --ds-blue:#1B4F8A;        /* primary */
  --ds-blue-deep:#143a66;
  --ds-blue-soft:#e8f0f9;
  --ds-green:#2E7D32;       /* secondary */
  --ds-green-soft:#e7f3e8;
  --ds-orange:#F57C00;      /* energy / enrollment accent */
  --ds-orange-deep:#d96a00;
  --ds-orange-soft:#fff1e2;
  --ds-teal:#00838F;        /* tertiary */
  --ds-teal-soft:#e2f4f5;
  --ds-ink:#1f2d3d;
  --ds-ink-soft:#4b5b6b;
  --ds-paper:#ffffff;
  --ds-haze:#f5f8fc;

  /* ---- Motion ---- */
  --ds-ease-out:cubic-bezier(0.23,1,0.32,1);
  --ds-ease-io:cubic-bezier(0.77,0,0.175,1);

  /* ---- Shadows ---- */
  --ds-shadow-sm:0 2px 8px rgba(20,58,102,.08);
  --ds-shadow-md:0 8px 24px rgba(20,58,102,.14);
  --ds-shadow-lg:0 16px 48px rgba(20,58,102,.20);
  --ds-radius:14px;
}

/* ====================================================================
   1) HOMEPAGE CTA STRIP (.additional-navigation)
   Make the 6-tile quick-nav colorful + interactive, with the
   ENROLL tile visually dominant (orange) per the enrollment priority.
   ==================================================================== */
body .additional-navigation{
  background:linear-gradient(90deg,var(--ds-blue),var(--ds-teal)) !important;
  padding:0 !important;
  box-shadow:var(--ds-shadow-sm);
}
body .additional-navigation .additional-nav-list{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  flex-wrap:wrap;
}
body .additional-navigation .nav-item{
  flex:1 1 0;
  min-width:150px;
}
body .additional-navigation .nav-item a{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:20px 10px !important;
  color:#fff !important;
  font-family:'Montserrat',sans-serif !important;
  font-weight:700;
  font-size:13px;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.16);
  transition:background .22s var(--ds-ease-out), transform .22s var(--ds-ease-out);
  position:relative;
}
body .additional-navigation .nav-item a i{
  font-size:22px;
  transition:transform .22s var(--ds-ease-out);
}
body .additional-navigation .nav-item a:hover{
  background:rgba(255,255,255,.14);
}
body .additional-navigation .nav-item a:hover i{
  transform:translateY(-3px) scale(1.08);
}
/* ENROLL tile (3rd) — make it pop in orange */
body .additional-navigation .nav-item:nth-child(3) a{
  background:var(--ds-orange);
}
body .additional-navigation .nav-item:nth-child(3) a:hover{
  background:var(--ds-orange-deep);
}
body .additional-navigation .nav-item:nth-child(3) a::after{
  content:"";
  position:absolute;inset:0;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.45);
  opacity:0;transition:opacity .22s var(--ds-ease-out);
}
body .additional-navigation .nav-item:nth-child(3) a:hover::after{opacity:1;}

@media (max-width:760px){
  body .additional-navigation .nav-item{flex:1 1 50%;}
  body .additional-navigation .nav-item a{padding:16px 8px !important;font-size:12px;}
}

/* ====================================================================
   2) PERSISTENT FLOATING ENROLL BUTTON
   Visible on every page (all 7 subsites). Pulses gently to draw the eye.
   ==================================================================== */
.ds-enroll-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9990;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 22px;
  background:linear-gradient(135deg,var(--ds-orange),var(--ds-orange-deep));
  color:#fff !important;
  font-family:'Montserrat',sans-serif;
  font-weight:800;
  font-size:14px;
  letter-spacing:.02em;
  text-decoration:none;
  border-radius:50px;
  box-shadow:var(--ds-shadow-md);
  transition:transform .18s var(--ds-ease-out), box-shadow .18s var(--ds-ease-out);
}
.ds-enroll-float i{font-size:16px;}
.ds-enroll-float:hover{
  transform:translateY(-2px) scale(1.03);
  box-shadow:var(--ds-shadow-lg);
  color:#fff !important;
}
.ds-enroll-float:active{transform:scale(0.97);}
.ds-enroll-float .ds-pulse{
  width:9px;height:9px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.7);
}
@media (prefers-reduced-motion: no-preference){
  .ds-enroll-float .ds-pulse{animation:dsPulse 2s infinite;}
}
@keyframes dsPulse{
  0%{box-shadow:0 0 0 0 rgba(255,255,255,.6);}
  70%{box-shadow:0 0 0 12px rgba(255,255,255,0);}
  100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}
}
@media (max-width:600px){
  .ds-enroll-float{right:14px;bottom:14px;padding:12px 16px;font-size:12.5px;}
  /* avoid clashing with the notification bell */
}
/* push the notification bell up so it doesn't overlap the float button */
body .notification-icon{bottom:84px !important;}

/* ====================================================================
   3) REUSABLE BUTTON SYSTEM (.ds-btn) for migrated page content
   ==================================================================== */
.ds-btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 26px;
  font-family:'Montserrat',sans-serif;
  font-weight:700;font-size:15px;letter-spacing:.01em;
  border:none;border-radius:10px;cursor:pointer;
  text-decoration:none;
  transition:transform .16s var(--ds-ease-out), box-shadow .16s var(--ds-ease-out), background .16s var(--ds-ease-out);
}
.ds-btn:active{transform:scale(0.97);}
.ds-btn--enroll{background:var(--ds-orange);color:#fff !important;box-shadow:var(--ds-shadow-sm);}
.ds-btn--enroll:hover{background:var(--ds-orange-deep);box-shadow:var(--ds-shadow-md);color:#fff !important;}
.ds-btn--blue{background:var(--ds-blue);color:#fff !important;}
.ds-btn--blue:hover{background:var(--ds-blue-deep);color:#fff !important;}
.ds-btn--teal{background:var(--ds-teal);color:#fff !important;}
.ds-btn--green{background:var(--ds-green);color:#fff !important;}
.ds-btn--ghost{background:transparent;color:var(--ds-blue) !important;box-shadow:inset 0 0 0 2px var(--ds-blue);}
.ds-btn--ghost:hover{background:var(--ds-blue);color:#fff !important;}

/* ====================================================================
   4) SECTION + CARD PRIMITIVES for rebuilt pages
   ==================================================================== */
.ds-section{padding:64px 20px;}
.ds-section--haze{background:var(--ds-haze);}
.ds-wrap{max-width:1200px;margin:0 auto;}
.ds-eyebrow{
  display:inline-block;
  font-family:'Montserrat',sans-serif;font-weight:800;
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ds-teal);margin-bottom:10px;
}
.ds-h2{
  font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(26px,3.4vw,40px);line-height:1.12;color:var(--ds-ink);
  margin:0 0 16px;
}
.ds-h2 .ds-accent{color:var(--ds-orange);}
.ds-lead{font-size:18px;line-height:1.6;color:var(--ds-ink-soft);max-width:760px;}

.ds-grid{display:grid;gap:24px;}
.ds-grid--3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}
.ds-grid--4{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));}

.ds-card{
  background:var(--ds-paper);
  border-radius:var(--ds-radius);
  box-shadow:var(--ds-shadow-sm);
  overflow:hidden;
  transition:transform .24s var(--ds-ease-out), box-shadow .24s var(--ds-ease-out);
  border-top:4px solid var(--ds-blue);
}
.ds-card:hover{transform:translateY(-6px);box-shadow:var(--ds-shadow-md);}
.ds-card--green{border-top-color:var(--ds-green);}
.ds-card--orange{border-top-color:var(--ds-orange);}
.ds-card--teal{border-top-color:var(--ds-teal);}
.ds-card__media{aspect-ratio:16/9;width:100%;object-fit:cover;display:block;background:var(--ds-blue-soft);}
.ds-card__body{padding:22px 22px 26px;}
.ds-card__title{font-family:'Poppins',sans-serif;font-weight:700;font-size:20px;color:var(--ds-ink);margin:0 0 8px;}
.ds-card__text{color:var(--ds-ink-soft);font-size:15px;line-height:1.55;margin:0 0 16px;}

/* ====================================================================
   5) REVEAL-ON-SCROLL (progressive, JS adds .is-in)
   ==================================================================== */
@media (prefers-reduced-motion: no-preference){
  .ds-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ds-ease-out), transform .6s var(--ds-ease-out);}
  .ds-reveal.is-in{opacity:1;transform:none;}
}

/* ====================================================================
   6) ACCENT TOUCHES on existing theme chrome
   ==================================================================== */
/* breadcrumb accent */
body .breadcrumb a{color:var(--ds-teal);}
/* links inside page body get brand blue */
.page-body a:not(.ds-btn){color:var(--ds-blue);}
.page-body a:not(.ds-btn):hover{color:var(--ds-orange);}


/* ============================================================
   7) ALPHA1 PAGE — optional supplemental AI companion
   ============================================================ */
.a1-page{--a1-blue:#1B4F8A;--a1-green:#2E7D32;--a1-orange:#F57C00;--a1-teal:#00838F;
  --a1-ink:#16263a;--a1-muted:#566476;--a1-tint:#f3f7fb;--a1-line:#e3eaf2;
  color:var(--a1-ink);line-height:1.6;overflow-x:clip}
.a1-page *{box-sizing:border-box}
.a1-page h1,.a1-page h2,.a1-page h3{line-height:1.15;margin:0;font-family:'Poppins',sans-serif}
.a1-page p{margin:0}
.a1-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:'Montserrat',sans-serif;font-weight:700;text-decoration:none;border-radius:999px;padding:.85rem 1.6rem;
  font-size:1rem;transition:transform .16s var(--ds-ease-out),box-shadow .16s,background .16s;cursor:pointer;border:0}
.a1-btn:active{transform:scale(.97)}
.a1-btn-primary{background:var(--a1-orange);color:#fff !important;box-shadow:0 8px 22px rgba(245,124,0,.32)}
.a1-btn-primary:hover{background:#e06f00;color:#fff !important;transform:translateY(-2px)}
.a1-btn-ghost{background:rgba(255,255,255,.14);color:#fff !important;border:1.5px solid rgba(255,255,255,.55)}
.a1-btn-ghost:hover{background:rgba(255,255,255,.24);color:#fff !important}
.a1-btn-lg{padding:1.05rem 2.2rem;font-size:1.12rem}

.a1-hero{position:relative;background:linear-gradient(120deg,#0f3a6b 0%,var(--a1-blue) 45%,var(--a1-teal) 120%);color:#fff;padding:clamp(2.5rem,6vw,5rem) 0;overflow:hidden}
.a1-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.12),transparent 45%);pointer-events:none}
.a1-hero-inner{max-width:1180px;margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;position:relative;z-index:1}
.a1-eyebrow{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);color:#fff;font-family:'Montserrat',sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;padding:.4rem .9rem;border-radius:999px;margin-bottom:1rem}
.a1-hero-title{font-size:clamp(1.9rem,4.2vw,3.2rem);font-weight:800;letter-spacing:-.02em;margin-bottom:1rem}
.a1-hero-sub{font-size:clamp(1rem,1.4vw,1.18rem);color:rgba(255,255,255,.92);max-width:40ch;margin-bottom:1.7rem}
.a1-hero-cta{display:flex;gap:.85rem;flex-wrap:wrap}
.a1-hero-media img{width:100%;height:auto;border-radius:20px;box-shadow:0 30px 60px rgba(8,28,52,.45);display:block}

.a1-note-wrap{background:#fff;padding:0 1.25rem;margin-top:-1.75rem;position:relative;z-index:2}
.a1-note{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--a1-line);border-left:6px solid var(--a1-green);
  border-radius:16px;padding:1.3rem 1.6rem;box-shadow:0 18px 40px rgba(16,38,60,.10);display:flex;gap:1rem;align-items:flex-start}
.a1-note-badge{flex:none;background:rgba(46,125,50,.12);color:var(--a1-green);font-family:'Montserrat',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px;margin-top:.15rem}
.a1-note p{color:var(--a1-muted);font-size:1rem}
.a1-note strong{color:var(--a1-ink)}

.a1-section{max-width:1180px;margin:0 auto;padding:clamp(2.6rem,5.5vw,4.5rem) 1.25rem}
.a1-section-tint{max-width:none;background:var(--a1-tint);border-top:1px solid var(--a1-line);border-bottom:1px solid var(--a1-line)}
.a1-section-tint>*{max-width:1180px;margin-left:auto;margin-right:auto}
.a1-section-head{max-width:760px;margin:0 auto 2.4rem;text-align:center}
.a1-kicker{display:inline-block;color:var(--a1-teal);font-family:'Montserrat',sans-serif;font-weight:800;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem}
.a1-h2{font-size:clamp(1.5rem,2.8vw,2.3rem);font-weight:800;letter-spacing:-.02em;margin-bottom:.7rem;color:var(--a1-ink)}
.a1-lead{color:var(--a1-muted);font-size:clamp(1rem,1.3vw,1.12rem)}

.a1-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.a1-feature{background:#fff;border:1px solid var(--a1-line);border-radius:18px;padding:1.5rem 1.3rem;transition:transform .2s var(--ds-ease-out),box-shadow .2s}
.a1-feature:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(16,38,60,.12)}
.a1-feature-ic{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;margin-bottom:1rem}
.a1-ic-blue{background:var(--a1-blue)}.a1-ic-green{background:var(--a1-green)}.a1-ic-teal{background:var(--a1-teal)}.a1-ic-orange{background:var(--a1-orange)}
.a1-feature h3{font-size:1.08rem;font-weight:700;margin-bottom:.4rem}
.a1-feature p{color:var(--a1-muted);font-size:.95rem}

.a1-engines{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.a1-engine{position:relative;background:#fff;border:1px solid var(--a1-line);border-radius:22px;padding:2rem 1.8rem;overflow:hidden}
.a1-engine-spark{border-top:5px solid var(--a1-orange)}
.a1-engine-scholar{border-top:5px solid var(--a1-blue)}
.a1-engine-ic{width:72px;height:72px;object-fit:contain;margin-bottom:1rem}
.a1-engine-tag{display:inline-block;font-family:'Montserrat',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px;margin-bottom:.8rem}
.a1-engine-spark .a1-engine-tag{background:rgba(245,124,0,.14);color:#c35f00}
.a1-engine-scholar .a1-engine-tag{background:rgba(27,79,138,.12);color:var(--a1-blue)}
.a1-engine h3{font-size:1.3rem;font-weight:800;margin-bottom:.5rem}
.a1-engine p{color:var(--a1-muted);margin-bottom:1rem}
.a1-list{list-style:none;margin:0;padding:0}
.a1-list li{position:relative;padding-left:1.6rem;margin-bottom:.5rem;color:var(--a1-ink);font-weight:500}
.a1-list li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--a1-green);font-weight:900}
.a1-list-2col{display:grid;grid-template-columns:1fr 1fr;gap:.1rem 1.2rem}

.a1-chloe{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(1.5rem,4vw,3rem);align-items:center}
.a1-chloe-media{display:flex;justify-content:center}
.a1-chloe-media img{width:min(280px,80%);height:auto;border-radius:28px;box-shadow:0 24px 50px rgba(0,131,143,.28)}
.a1-chloe-text .a1-h2{text-align:left}

.a1-subj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.a1-subj{background:#fff;border:1px solid var(--a1-line);border-radius:18px;padding:1.5rem 1.3rem;transition:transform .2s var(--ds-ease-out),box-shadow .2s}
.a1-subj:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(16,38,60,.12)}
.a1-subj-ic{font-size:1.9rem;display:block;margin-bottom:.7rem}
.a1-subj h3{font-size:1.08rem;font-weight:700;margin-bottom:.4rem}
.a1-subj p{color:var(--a1-muted);font-size:.93rem}
.a1-standards{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1.8rem}
.a1-standards span{background:#fff;border:1px solid var(--a1-line);border-radius:999px;padding:.45rem 1rem;font-weight:700;font-size:.85rem;color:var(--a1-blue)}

.a1-stats{display:flex;justify-content:center;gap:clamp(1.5rem,5vw,4rem);flex-wrap:wrap;margin-bottom:1.8rem}
.a1-stat{text-align:center}
.a1-stat strong{display:block;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:var(--a1-teal);line-height:1;font-family:'Poppins',sans-serif}
.a1-stat span{color:var(--a1-muted);font-weight:600;font-size:.9rem}
.a1-badges{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.3rem}
.a1-badge{background:var(--a1-blue);color:#fff;font-family:'Montserrat',sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.04em;padding:.5rem 1.1rem;border-radius:10px}
.a1-trust-note{max-width:760px;margin:0 auto;text-align:center;color:var(--a1-muted);font-size:.95rem}

.a1-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:2.6rem}
.a1-step{background:#fff;border:1px solid var(--a1-line);border-radius:18px;padding:1.7rem 1.4rem;text-align:center}
.a1-step-n{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--a1-blue),var(--a1-teal));color:#fff;font-family:'Poppins',sans-serif;font-weight:800;font-size:1.2rem;margin-bottom:.9rem}
.a1-step h3{font-size:1.1rem;font-weight:700;margin-bottom:.4rem}
.a1-step p{color:var(--a1-muted);font-size:.95rem}
.a1-final-cta{text-align:center;background:linear-gradient(120deg,var(--a1-blue),var(--a1-teal));color:#fff;border-radius:24px;padding:clamp(2rem,4vw,3rem)}
.a1-final-cta h2{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:800;margin-bottom:.5rem;color:#fff}
.a1-final-cta p{color:rgba(255,255,255,.9);margin-bottom:1.5rem}

@media (max-width:900px){
  .a1-hero-inner{grid-template-columns:1fr;text-align:center}
  .a1-hero-sub{margin-left:auto;margin-right:auto}
  .a1-hero-cta{justify-content:center}
  .a1-hero-media{order:-1}
  .a1-feature-grid,.a1-subj-grid{grid-template-columns:1fr 1fr}
  .a1-engines{grid-template-columns:1fr}
  .a1-chloe{grid-template-columns:1fr;text-align:center}
  .a1-chloe-text .a1-h2{text-align:center}
  .a1-list-2col{text-align:left;max-width:380px;margin:0 auto}
  .a1-steps{grid-template-columns:1fr}
}
@media (max-width:520px){
  .a1-feature-grid,.a1-subj-grid{grid-template-columns:1fr}
  .a1-note{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  .a1-btn,.a1-feature,.a1-subj{transition:none}
}


/* Alpha1 full-width page: neutralize theme content padding/max-width */
.alpha1-fullwidth{display:block !important;max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important}
.alpha1-fullwidth .alpha1-body{max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important}
.alpha1-fullwidth .a1-page{margin:0;padding:0}


/* ============================================================
   8) ALPHA1 HOMEPAGE TEASER BAND
   ============================================================ */
.a1-teaser{background:linear-gradient(120deg,#0f3a6b,#1B4F8A 55%,#00838F);color:#fff;padding:clamp(2.2rem,5vw,3.6rem) 1.25rem}
.a1-teaser-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:clamp(1.2rem,4vw,2.8rem)}
.a1-teaser-media{flex:none}
.a1-teaser-media img{width:clamp(96px,12vw,150px);height:auto;filter:drop-shadow(0 12px 30px rgba(0,131,143,.45));border-radius:22px}
.a1-teaser-text{flex:1 1 auto}
.a1-teaser-eyebrow{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);font-family:'Montserrat',sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;padding:.35rem .8rem;border-radius:999px;margin-bottom:.7rem}
.a1-teaser-title{font-family:'Poppins',sans-serif;font-weight:800;font-size:clamp(1.4rem,2.6vw,2.1rem);line-height:1.15;margin:0 0 .6rem;color:#fff}
.a1-teaser-sub{color:rgba(255,255,255,.92);font-size:clamp(.98rem,1.3vw,1.1rem);max-width:62ch;margin:0 0 1.2rem}
@media (max-width:760px){
  .a1-teaser-inner{flex-direction:column;text-align:center}
  .a1-teaser-sub{margin-left:auto;margin-right:auto}
}
