.hero{background:#fff;padding:0 0 40px}.hero-inner{ display:grid; grid-template-columns:minmax(380px,42%) 1fr; min-height:600px; width:min(var(--page-max),100%); margin:0 auto; padding:0 var(--page-gutter); box-sizing:border-box; align-items:stretch;}.hero-copy{padding:80px 28px 80px 0;display:flex;flex-direction:column;justify-content:center}.kicker{color:var(--green);font-weight:800;letter-spacing:1.4px;font-size:13px;margin:0 0 8px}.hero .kicker{ display:inline; align-self:flex-start; color:#6BAF23; background:linear-gradient(#e8f4d6,#e8f4d6); background-repeat:no-repeat; background-size:100% 40%; background-position:0 78%; font-weight:500; letter-spacing:.04em; font-size:13px; margin:0 0 12px; padding:0 2px 2px; border-radius:0;}.hero h1{ font-size:clamp(34px,4.2vw,52px); line-height:1.15; letter-spacing:-0.4px; margin:0 0 14px; color:#092B66; font-weight:700;}.hero h1 em{font-style:normal;color:#6BAF23;font-weight:700}.hero p.lead{color:#5a6578;max-width:460px;line-height:1.7;margin:0 0 32px;font-size:15px;font-weight:400;font-family:"Open Sans",sans-serif}.feats{display:flex;gap:8px 20px;margin:0 0 32px}.feat{flex:1;max-width:118px;text-align:center}.feat .ring{ width:52px;height:52px;margin:0 auto 8px; border:1.4px solid #092B66;border-radius:50%; display:grid;place-items:center;}.feat svg{width:22px;height:22px;stroke:#092B66;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.feat span{display:block;font-size:12px;font-weight:400;color:#4a5568;line-height:1.3}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero-cta .btn{ border-radius:8px; padding:12px 22px; font-size:14px; font-weight:500; letter-spacing:0; box-shadow:none;}.hero-cta .btn-navy{background:#092B66;color:#fff}.hero-cta .btn-navy:hover{background:#071e4a}.hero-cta .btn-outline{ background:#fff; color:#092B66; border:1px solid #c9d3e3;}.hero-cta .btn-outline:hover{background:#f4f7fb;color:#092B66;border-color:#092B66}.hero-visual{position:relative;min-height:600px}.hero-shape{position:absolute;inset:0;width:100%;height:100%;display:block}.badge-img{position:absolute;right:28px;bottom:-47px;width:138px;height:auto;z-index:4;pointer-events:none;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}.section{padding:72px 0}.center{text-align:center}.sub{color:var(--muted);font-size:12px;letter-spacing:1.6px;font-weight:700;text-transform:uppercase;margin:0 0 8px}.eyebrow-lines{ display:flex;align-items:center;justify-content:center;gap:14px; font-size:12px;font-weight:600;letter-spacing:.16em; text-transform:uppercase;color:#6BAF23;margin:0 0 10px;}.eyebrow-lines:before,.eyebrow-lines:after{content:"";width:56px;height:1.5px;background:#092B66;opacity:.55}h2.title{font-size:clamp(26px,3vw,36px);color:#092B66;margin:0 0 10px;font-weight:700;font-family:Poppins,sans-serif}.prog-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:44px}.pcard{ --c:#6BAF23; position:relative; background:#fff; border:1.5px solid var(--c); border-radius:10px; padding:38px 14px 20px; text-align:center; cursor:pointer; box-shadow:0 6px 16px rgba(9,43,102,.07); transition:transform .28s ease, box-shadow .28s ease;}.pcard:hover{ transform:translateY(-10px); z-index:2; box-shadow:0 20px 40px rgba(9,43,102,.16);}.pcard .ico{ position:absolute;top:0;left:50%;transform:translate(-50%,-50%); width:48px;height:48px;border-radius:50%; background:var(--c);color:#fff; display:grid;place-items:center; border:3px solid #fff; box-shadow:0 0 0 1.5px var(--c);}.pcard .ico svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.pcard img{height:108px;width:100%;object-fit:cover;border-radius:8px;margin-bottom:14px}.pcard h3{font-size:16px;margin:0 0 8px;color:#092B66;font-weight:700}.pcard p{font-size:13px;color:#5b6578;line-height:1.55;margin:0 0 12px;min-height:62px;font-weight:400}.pcard a{color:#1d4ed8;font-weight:600;font-size:13.5px;font-family:Poppins,sans-serif}.pcard a:hover{text-decoration:underline}.pcard.is-featured{ border-width:2.5px; background:linear-gradient(#fff,#f4faee); box-shadow:0 0 0 4px rgba(107,175,35,.18), 0 12px 28px rgba(9,43,102,.08);}.pcard.is-featured:hover{ box-shadow:0 0 0 5px rgba(107,175,35,.28), 0 22px 44px rgba(9,43,102,.18);}.why{background:#092B66;color:#fff;padding:72px 0}.why .eyebrow-lines{color:#8fd14f}.why .eyebrow-lines:before,.why .eyebrow-lines:after{background:#8fd14f;opacity:.85}.why-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;margin-top:36px}.why-item{text-align:center}.why-item .ring{ width:56px;height:56px;margin:0 auto 12px; border:1.4px solid rgba(255,255,255,.55);border-radius:50%; display:grid;place-items:center;}.why-item svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.why-item strong{display:block;margin-bottom:6px;font-size:14px;font-weight:600}.why-item span{opacity:.82;font-size:12.5px;line-height:1.5;display:block;font-weight:400}.campus-sec{background:#f5f7fa;padding:80px 0}.campus{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center}.campus h2.title{font-size:clamp(28px,3.2vw,40px);line-height:1.2}.campus p{color:#5b6578;line-height:1.75;font-size:15.5px;max-width:460px}.campus .btn{margin-top:20px;border-radius:8px;padding:12px 22px;font-weight:500}.collage{display:grid;grid-template-columns:1fr 1fr;gap:14px}.collage img{height:190px;width:100%;object-fit:cover;border-radius:10px;box-shadow:0 10px 24px rgba(9,43,102,.1)}.collage img:nth-child(2),.collage img:nth-child(3){margin-top:18px}.schol{background:#eef2f7;padding:28px 0 64px}.schol-panel{ display:grid; grid-template-columns:1.05fr .95fr; gap:28px; align-items:center; background:#fff; border-radius:16px; padding:32px 28px; box-shadow:0 12px 32px rgba(9,43,102,.06);}.schol-left{display:flex;gap:22px;align-items:center}.schol-art{flex:none;width:120px}.schol-left h2{ font-size:clamp(28px,3.2vw,40px); font-weight:700;line-height:1.05;color:#092B66;margin:0 0 12px;letter-spacing:-.4px;}.schol-left h2 em{font-style:normal;color:#6BAF23;display:block}.schol-left .lead{color:#092B66;font-weight:600;font-size:15.5px;margin:0 0 6px;font-family:Poppins,sans-serif}.schol-left p{color:#5b6578;margin:0 0 18px;font-size:14px;line-height:1.6}.schol-left .btn{border-radius:8px;padding:11px 18px;font-weight:500;font-size:13.5px}.schol-right{ background:#092B66;color:#fff;border-radius:12px;padding:26px 18px 22px; display:flex;flex-direction:column;align-items:stretch;}.schol-cats{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 22px}.schol-cats > div{ text-align:center;padding:4px 10px;font-size:12px;line-height:1.35; border-right:1px solid rgba(255,255,255,.22);font-weight:500;}.schol-cats > div:last-child{border-right:0}.schol-cats svg{width:28px;height:28px;stroke:#c8e06a;fill:none;stroke-width:1.6;margin:0 auto 8px;display:block}.schol-right .btn-green{ align-self:center;background:#6BAF23;color:#fff;border-radius:8px; padding:12px 28px;font-weight:600;min-width:72%;text-align:center;}.schol-right .btn-green:hover{background:#5a961d}.journey-sec{background:#fff;padding:64px 0 80px}.journey{display:grid;grid-template-columns:1.7fr .7fr;gap:32px;align-items:center;margin-top:40px}.steps{display:flex;justify-content:space-between;position:relative;gap:8px}.steps:before{content:"";position:absolute;top:36px;left:10%;right:10%;border-top:1.5px dashed #c5ced8;z-index:0}.step{position:relative;z-index:1;text-align:center;width:24%;padding:0 6px}.step .icon{ width:72px;height:72px;margin:0 auto 14px;position:relative; border:2px solid #6BAF23;border-radius:50%;background:#fff; display:grid;place-items:center;}.step .icon svg{width:30px;height:30px;stroke:#092B66;fill:none;stroke-width:1.6}.step .num{ position:absolute;top:-4px;right:-4px; width:24px;height:24px;border-radius:50%;background:#6BAF23;color:#fff; font-size:11px;font-weight:700; display:grid;place-items:center;}.step h3{font-size:15px;font-weight:700;color:#092B66;margin:0 0 6px;font-family:Poppins,sans-serif}.step p{font-size:12.5px;font-weight:400;color:#5b6578;margin:0;line-height:1.45}.talk{background:#092B66;color:#fff;border-radius:12px;padding:28px 24px}.talk h3{margin:0 0 8px;font-size:22px;font-weight:700}.talk .help{opacity:.9;font-size:13.5px;margin:0 0 18px;line-height:1.5}.talk .row{display:flex;align-items:center;gap:10px;margin:10px 0;font-size:15px;font-weight:500}.talk .row svg{width:18px;height:18px;stroke:#6BAF23;fill:none;stroke-width:1.8;flex:none}.talk .btn-green{display:flex;margin-top:18px;background:#6BAF23;color:#fff;border-radius:8px;padding:12px 18px;font-weight:600;width:100%;justify-content:center}.talk .btn-green:hover{background:#5a961d}.lined-title{ display:flex;align-items:center;justify-content:center;gap:16px; font-size:clamp(24px,3vw,32px);font-weight:700;color:#092B66;margin:0 0 28px;}.lined-title:before,.lined-title:after{ content:"";flex:1;max-width:140px;height:1px;background:#092B66;opacity:.45; background-image:linear-gradient(#092B66,#092B66),linear-gradient(#6BAF23,#6BAF23); background-size:100% 1px,8px 8px;background-repeat:no-repeat,no-repeat; background-position:center,right center;}.lined-title:before{background-position:center,left center}.say-sec{background:#f3f5f8;padding:56px 0 8px}.news-sec{background:#f3f5f8;padding:8px 0 72px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}.qcard{ background:#fff;border-radius:12px;padding:20px 18px; display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:start;text-align:left; box-shadow:0 8px 22px rgba(9,43,102,.08); transition:transform .25s ease, box-shadow .25s ease;}.qcard:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(9,43,102,.14)}.qcard img{width:72px;height:72px;border-radius:50%;object-fit:cover}.qcard .body{min-width:0}.qcard .quote{color:#6BAF23;font-size:28px;line-height:.6;font-family:Georgia,serif;margin:0 0 6px}.qcard p{font-size:13.5px;color:#4a5568;line-height:1.55;margin:0 0 10px}.qcard strong{display:block;color:#092B66;font-size:14px}.qcard small{display:block;color:#7a8494;font-size:12px;line-height:1.4}.news-panel{ background:#fff;border-radius:14px;padding:18px 8px; display:grid;grid-template-columns:repeat(4,1fr);gap:0; box-shadow:0 10px 28px rgba(9,43,102,.08);}.ncard{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;padding:12px 16px;text-align:left;background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none}.ncard + .ncard{border-left:1px solid #e6ebf2}.ncard img{height:72px;width:72px;object-fit:cover;border-radius:8px}.ncard h3{margin:0 0 4px;font-size:14px;color:#092B66;font-weight:700}.ncard p{margin:0 0 6px;font-size:12px;color:#5b6578;line-height:1.4}.ncard small{color:#9aa3b2;font-weight:400;font-size:11.5px}.news-sec .btn-outline{margin-top:28px;border-radius:8px;padding:11px 22px;font-weight:500}@media(max-width:1020px){ .hero-inner{grid-template-columns:1fr} .hero-visual{min-height:380px} .hero-shape image{clip-path:none} .hero-shape .wave-stroke{display:none} .hero-grid,.prog-grid,.why-grid,.campus,.schol-panel,.schol-left,.journey,.quotes,.news-panel{grid-template-columns:1fr 1fr} .prog-grid,.why-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){ .hero-grid,.prog-grid,.why-grid,.campus,.schol-panel,.schol-left,.journey,.quotes,.news-panel,.steps{grid-template-columns:1fr;display:grid} .ncard + .ncard{border-left:0;border-top:1px solid #e6ebf2} .schol-cats{grid-template-columns:1fr 1fr} .schol-cats > div{border-right:0;border-bottom:1px solid rgba(255,255,255,.18);padding:12px 8px} .steps{display:grid} .steps:before{display:none} .step{width:auto}}

.section,.why,.campus-sec,.schol,.journey-sec,.say-sec,.news-sec{content-visibility:auto;contain-intrinsic-size:auto 520px}

/* ── Mobile app homepage ── */
@media(max-width:768px){
  .hero{padding:0 0 24px}
  .hero-inner{grid-template-columns:1fr;min-height:auto;padding:0}
  .hero-visual{order:-1;min-height:240px;max-height:280px}
  .hero-copy{padding:24px var(--page-gutter) 8px}
  .hero h1{font-size:clamp(28px,8vw,36px)}
  .hero p.lead{font-size:14px;max-width:none;margin-bottom:20px}
  .feats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 10px;margin-bottom:22px}
  .feat{max-width:none}
  .feat .ring{width:46px;height:46px}
  .feat span{font-size:11px}
  .hero-cta{flex-direction:column;align-items:stretch}
  .hero-cta .btn{width:100%;justify-content:center}
  .badge-img{width:96px;right:12px;bottom:-28px}
  .section{padding:44px 0}
  .why{padding:44px 0}
  .campus-sec{padding:44px 0}
  .schol{padding:16px 0 44px}
  .journey-sec{padding:44px 0 56px}
  .say-sec,.news-sec{padding:36px 0 48px}
  h2.title{font-size:clamp(22px,6vw,28px)}
  .eyebrow-lines:before,.eyebrow-lines:after{width:36px}

  .prog-scroll{margin:0 calc(-1 * var(--page-gutter));padding:0 var(--page-gutter) 8px;overflow:hidden}
  .prog-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:44px 0 8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .prog-grid::-webkit-scrollbar{display:none}
  .prog-grid .pcard{flex:0 0 82%;max-width:300px;scroll-snap-align:start;margin:0}

  .why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 12px;margin-top:28px}
  .why-item .ring{width:48px;height:48px}
  .why-item strong{font-size:13px}
  .why-item span{font-size:11.5px}

  .campus{grid-template-columns:1fr;gap:24px}
  .campus p{font-size:14px;max-width:none}
  .campus .btn{width:100%;justify-content:center}
  .collage{grid-template-columns:1fr 1fr;gap:10px}
  .collage img{height:130px}
  .collage img:nth-child(2),.collage img:nth-child(3){margin-top:0}

  .schol-panel{grid-template-columns:1fr;padding:20px 16px;border-radius:14px}
  .schol-left{flex-direction:column;align-items:flex-start;gap:12px}
  .schol-art{width:88px}
  .schol-left h2{font-size:26px}
  .schol-left .btn,.schol-right .btn-green{width:100%;justify-content:center}
  .schol-cats{grid-template-columns:1fr 1fr;gap:0}
  .schol-right{padding:20px 16px}

  .journey{grid-template-columns:1fr;gap:20px;margin-top:24px}
  .steps{display:grid;grid-template-columns:1fr;gap:18px}
  .steps:before{display:none}
  .step{width:auto;display:grid;grid-template-columns:72px 1fr;gap:12px;text-align:left;align-items:start}
  .step .icon{margin:0;width:56px;height:56px}
  .step .icon svg{width:24px;height:24px}
  .talk{padding:22px 18px}

  .quotes-scroll{margin:0 calc(-1 * var(--page-gutter));padding:0 var(--page-gutter)}
  .quotes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .quotes::-webkit-scrollbar{display:none}
  .qcard{flex:0 0 88%;max-width:340px;scroll-snap-align:start}

  .news-panel{display:flex;flex-direction:column;gap:0;padding:8px;border-radius:12px}
  .ncard{grid-template-columns:64px 1fr;padding:14px 12px}
  .ncard + .ncard{border-left:0;border-top:1px solid #e6ebf2}
  .ncard img{width:64px;height:64px}
  .news-sec .btn-outline{width:100%;justify-content:center;margin-top:20px}
  .lined-title{font-size:22px;gap:10px}
  .lined-title:before,.lined-title:after{max-width:48px}
}

@media(max-width:480px){
  .why-grid{grid-template-columns:1fr}
  .collage{grid-template-columns:1fr}
  .collage img{height:160px}
  .prog-grid .pcard{flex-basis:88%}
}

