/* XI Class Admission Homepage — front-end styles.
   EXACT original stylesheet, scoped under .ebxi-root so nothing leaks into the theme.
   Fonts, colours, sizes and spacing are unchanged from the source design.

   Typography note (v1.1.1):
   Selectors are scoped as `.ebxi-root.ebxi-root` — the class is repeated on
   purpose. The original design was a standalone HTML document with no
   competing stylesheet; inside a WordPress theme its h1-h4 / p / li / b /
   small / th rules were beating this file and changing the rendered font
   sizes and weights. Repeating the class raises every rule one class level
   so the theme can no longer win, and the "Typography base" block below
   restores the browser defaults the original page relied on.

   The custom-property block immediately below is deliberately left at single
   `.ebxi-root` specificity so the admin colour picker (which prints an inline
   `.ebxi-root{--blue:...}` rule) can still override it. */


.ebxi-root{
    --blue:#0080b9; --blue-deep:#045c86; --blue-darker:#033f5e;
    --ink:#06283b; --sky:#e6f3fb; --sky-2:#d3ebf7; --gold:#f5a623; --gold-soft:#ffedcf;
    --paper:#f4f8fb; --white:#ffffff; --line:#cfe3ef; --muted:#5a7486; --green:#1f9d76;
    --shadow:0 18px 40px -20px rgba(4,60,90,.35); --shadow-sm:0 8px 22px -14px rgba(4,60,90,.45);
    --radius:18px;
    --disp:"Bricolage Grotesque",sans-serif;
    --body:"Inter",sans-serif;
    --mono:"IBM Plex Mono",monospace;
    --bn:"Hind Siliguri",sans-serif;
  }
.ebxi-root.ebxi-root *{box-sizing:border-box;margin:0;padding:0}
.ebxi-root.ebxi-root{scroll-behavior:smooth}
.ebxi-root.ebxi-root{font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.ebxi-root.ebxi-root h1, .ebxi-root.ebxi-root h2, .ebxi-root.ebxi-root h3, .ebxi-root.ebxi-root h4, .ebxi-root.ebxi-root .display{font-family:var(--disp);line-height:1.14;letter-spacing:-.01em}
.ebxi-root.ebxi-root a{color:inherit}

  /* Typography base — DO NOT MOVE BELOW THE DESIGN RULES.
     The source page (index2_accordion_multi_open.html) was a standalone
     document, so every element without an explicit rule inherited the body
     font or fell back to the browser's default size / weight. Inside a
     WordPress theme those same elements are claimed by the theme's own
     h1-h4 / p / li / b / small / th rules, which is what shifted the sizes
     and weights. The values below restore exactly what the browser applied
     on the original page. Design rules further down still override them,
     because they carry one more class. */

  /* Containers and text wrappers: keep inheriting, never take theme values. */
.ebxi-root.ebxi-root p,
.ebxi-root.ebxi-root div,
.ebxi-root.ebxi-root span,
.ebxi-root.ebxi-root section,
.ebxi-root.ebxi-root ul,
.ebxi-root.ebxi-root ol,
.ebxi-root.ebxi-root li,
.ebxi-root.ebxi-root table,
.ebxi-root.ebxi-root thead,
.ebxi-root.ebxi-root tbody,
.ebxi-root.ebxi-root tr,
.ebxi-root.ebxi-root td,
.ebxi-root.ebxi-root figure,
.ebxi-root.ebxi-root figcaption{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit}

  /* Headings: browser defaults (2em / 1.5em / 1.17em / 1em, all bold). */
.ebxi-root.ebxi-root h1{font-size:2em;font-weight:700}
.ebxi-root.ebxi-root h2{font-size:1.5em;font-weight:700}
.ebxi-root.ebxi-root h3{font-size:1.17em;font-weight:700}
.ebxi-root.ebxi-root h4{font-size:1em;font-weight:700}

  /* Inline text. */
.ebxi-root.ebxi-root b,
.ebxi-root.ebxi-root strong{font-weight:bolder}
.ebxi-root.ebxi-root i,
.ebxi-root.ebxi-root em{font-weight:inherit;font-size:inherit}
.ebxi-root.ebxi-root small{font-size:.83em;font-weight:inherit}
.ebxi-root.ebxi-root code,
.ebxi-root.ebxi-root kbd,
.ebxi-root.ebxi-root samp,
.ebxi-root.ebxi-root pre{font-family:monospace;font-size:1em;font-weight:inherit}
.ebxi-root.ebxi-root th{font-weight:700}

  /* Form controls do not inherit type by default. */
.ebxi-root.ebxi-root button,
.ebxi-root.ebxi-root input,
.ebxi-root.ebxi-root select,
.ebxi-root.ebxi-root textarea{font-family:inherit;font-size:inherit;line-height:inherit}

.ebxi-root.ebxi-root #progress{position:fixed;top:0;left:0;height:3px;width:0%;background:linear-gradient(90deg,var(--blue),var(--gold));z-index:120;transition:width .1s linear}
.ebxi-root.ebxi-root .wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.ebxi-root.ebxi-root section{padding:38px 0;position:relative}
.ebxi-root.ebxi-root .eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);background:var(--sky);padding:6px 13px;border-radius:100px;border:1px solid var(--line)}
.ebxi-root.ebxi-root .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}
.ebxi-root.ebxi-root .sec-head{margin-bottom:22px}
.ebxi-root.ebxi-root .sec-head h2{font-size:clamp(1.7rem,3.5vw,2.3rem);margin:10px 0 8px;font-weight:800;color:var(--ink)}
.ebxi-root.ebxi-root .sec-head p{color:var(--muted);font-size:1rem}

  /* Buttons */
.ebxi-root.ebxi-root .btn{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:700;font-size:.94rem;padding:12px 22px;border-radius:12px;cursor:pointer;border:none;transition:.18s;font-family:var(--body)}
.ebxi-root.ebxi-root .btn.primary{background:var(--blue);color:#fff;box-shadow:0 12px 26px -12px var(--blue)}
.ebxi-root.ebxi-root .btn.primary:hover{background:var(--blue-deep);transform:translateY(-2px);color:#fff}
.ebxi-root.ebxi-root .btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}
.ebxi-root.ebxi-root .btn.ghost:hover{border-color:var(--blue);color:var(--blue)}
.ebxi-root.ebxi-root .btn.soft{background:var(--sky);color:var(--blue-deep);border:1px solid var(--line)}
.ebxi-root.ebxi-root .btn.soft:hover{background:var(--sky-2);border-color:var(--blue);color:var(--blue-deep)}
.ebxi-root.ebxi-root .btn.accent{background:linear-gradient(135deg,var(--gold),#e09000);color:#fff;border:none;box-shadow:0 10px 24px -10px rgba(196,128,0,.45)}
.ebxi-root.ebxi-root .btn.accent:hover{filter:brightness(1.08);transform:translateY(-2px);color:#fff}

  /* Hero Banner */
.ebxi-root.ebxi-root .hero{padding:30px 0 26px;background:var(--paper)}
.ebxi-root.ebxi-root .hero-inner{max-width:100%;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center}
  /* Must stay above .sec-head h2 (max 2.3rem) so h1 > h2 > h3 reads visually
     as well as semantically. */
.ebxi-root.ebxi-root .hero h1{font-size:clamp(2rem,4.6vw,3rem);font-weight:800;margin:0 0 12px;line-height:1.14;white-space:nowrap}
.ebxi-root.ebxi-root .hero h1 .hl{color:var(--blue);position:relative;white-space:nowrap}
.ebxi-root.ebxi-root .hero h1 .hl::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.28em;background:var(--gold-soft);z-index:-1;border-radius:3px}
.ebxi-root.ebxi-root .hero p.lead{font-size:1rem;color:#39566a;max-width:800px;line-height:1.55;margin:0 auto}
.ebxi-root.ebxi-root .hero-cta{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}

  /* Admission Timeline 4 Phases Grid */
.ebxi-root.ebxi-root .timeline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ebxi-root.ebxi-root .t-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm);position:relative;display:flex;flex-direction:column;gap:12px;transition:.2s}
.ebxi-root.ebxi-root .t-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow)}
.ebxi-root.ebxi-root .t-card.active{border-color:var(--blue);box-shadow:0 10px 26px -12px var(--blue)}
.ebxi-root.ebxi-root .t-badge{font-family:var(--disp);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:100px;align-self:flex-start}
.ebxi-root.ebxi-root .t-badge.upcoming{background:#eafaf3;color:var(--green);border:1px solid #b6e6d2}
.ebxi-root.ebxi-root .t-badge.pending{background:var(--sky);color:var(--muted);border:1px solid var(--line)}
.ebxi-root.ebxi-root .t-card h3{font-size:1.18rem;margin:0;color:var(--ink)}
.ebxi-root.ebxi-root .t-item{border-top:1px dashed var(--line);padding-top:8px;display:flex;flex-direction:column;gap:2px}
.ebxi-root.ebxi-root .t-item .lbl{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.ebxi-root.ebxi-root .t-item .val{font-size:.9rem;font-weight:700;color:var(--blue-deep)}

  /* Roadmap Timeline Accordion */
.ebxi-root.ebxi-root .phases{position:relative;margin-top:6px}
.ebxi-root.ebxi-root .spine{position:absolute;left:31px;top:14px;bottom:14px;width:3px;background:var(--sky-2);border-radius:3px}
.ebxi-root.ebxi-root .spine-fill{position:absolute;left:0;top:0;width:100%;height:0;background:var(--blue);border-radius:3px;transition:height .5s ease}
.ebxi-root.ebxi-root .phase{position:relative;padding-left:78px;margin-bottom:12px;overflow-anchor:none}
.ebxi-root.ebxi-root .phase-node{position:absolute;left:14px;top:16px;width:38px;height:38px;border-radius:11px;background:#fff;border:2px solid var(--sky-2);z-index:2;display:grid;place-items:center;color:var(--muted);transition:.3s}
.ebxi-root.ebxi-root .phase.on .phase-node{border-color:var(--blue);color:var(--blue);background:var(--sky);box-shadow:0 0 0 5px rgba(0,128,185,.1)}
.ebxi-root.ebxi-root .phase-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s}
.ebxi-root.ebxi-root .phase-head{padding:15px 18px;cursor:pointer;display:flex;align-items:center;gap:16px;justify-content:space-between}
.ebxi-root.ebxi-root .phase-head .tag{font-family:var(--disp);font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.ebxi-root.ebxi-root .phase-head h3, .ebxi-root.ebxi-root .phase-head h4{font-size:1.1rem}
.ebxi-root.ebxi-root .chev{width:28px;height:28px;flex:none;border-radius:8px;background:var(--sky);display:grid;place-items:center;color:var(--blue)}
.ebxi-root.ebxi-root .phase.open .chev{background:var(--blue);color:#fff}
.ebxi-root.ebxi-root .phase-body{display:none;overflow:visible}
.ebxi-root.ebxi-root .phase-body-inner{padding:14px 18px 18px;border-top:1px solid var(--line)}
.ebxi-root.ebxi-root .phase-body ul{list-style:none;display:grid;gap:9px}
.ebxi-root.ebxi-root .phase-body li{display:flex;gap:11px;font-size:.9rem;color:#39566a}
.ebxi-root.ebxi-root .phase-body li .evt-date{margin-left:auto;font-family:var(--mono);font-size:.72rem;font-weight:600;color:var(--blue);background:var(--sky);padding:3px 9px;border-radius:6px;border:1px solid var(--line);white-space:nowrap;flex:none;align-self:center}
.ebxi-root.ebxi-root .phase-dates-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.ebxi-root.ebxi-root .phase-date-chip{background:var(--sky);border:1px solid var(--line);border-radius:10px;padding:8px 10px;text-align:center;font-size:.82rem;color:var(--ink);font-weight:600}
.ebxi-root.ebxi-root .phase-date-lbl{display:block;font-family:var(--disp);font-weight:700;font-size:.65rem;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
  @media(max-width:600px){
.ebxi-root.ebxi-root .phase-dates-row{grid-template-columns:repeat(2,1fr)}}

  /* Apply step sub-components */
.ebxi-root.ebxi-root .apply-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.ebxi-root.ebxi-root .apply-field-item{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:.82rem;color:#39566a}
.ebxi-root.ebxi-root .apply-field-lbl{display:block;font-family:var(--disp);font-weight:700;font-size:.7rem;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.ebxi-root.ebxi-root .apply-note{display:flex;gap:9px;align-items:flex-start;padding:9px 13px;border-radius:10px;font-size:.82rem;line-height:1.5;margin-top:10px}
.ebxi-root.ebxi-root .apply-note svg{flex:none;margin-top:1px}
.ebxi-root.ebxi-root .apply-note.warn{background:#fff8ec;border:1px solid #f5d89a;color:#8a6d20}
.ebxi-root.ebxi-root .apply-note.info{background:var(--sky);border:1px solid var(--line);color:var(--blue-deep)}
.ebxi-root.ebxi-root .apply-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}
.ebxi-root.ebxi-root .apply-filter-chip{font-family:var(--disp);font-weight:700;font-size:.78rem;background:var(--sky);color:var(--blue);padding:5px 13px;border-radius:100px;border:1px solid var(--line)}
.ebxi-root.ebxi-root .apply-filter-chip small{font-weight:500;color:var(--muted)}
.ebxi-root.ebxi-root .apply-filter-arrow{color:var(--muted);font-weight:700;font-size:.8rem}
.ebxi-root.ebxi-root .apply-rules-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}
.ebxi-root.ebxi-root .apply-rule-chip{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:.82rem;color:#39566a}
.ebxi-root.ebxi-root .apply-rule-lbl{display:block;font-family:var(--disp);font-weight:700;font-size:.68rem;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.ebxi-root.ebxi-root .apply-fee-highlight{background:linear-gradient(135deg,var(--sky),var(--sky-2));border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:10px 0;display:flex;align-items:center;gap:16px}
.ebxi-root.ebxi-root .apply-fee-amt{font-family:var(--disp);font-weight:800;font-size:1.5rem;color:var(--blue);white-space:nowrap}
.ebxi-root.ebxi-root .apply-fee-amt small{font-size:.6rem;font-weight:600;color:var(--muted);display:block}
.ebxi-root.ebxi-root .phase-body-inner p code{background:var(--sky);color:var(--blue-deep);padding:2px 6px;border-radius:4px;font-family:var(--mono);font-size:.84rem}

  @media(max-width:600px){
.ebxi-root.ebxi-root .apply-fields-grid, .ebxi-root.ebxi-root .apply-rules-row{grid-template-columns:1fr}
.ebxi-root.ebxi-root .apply-filter-row{gap:5px}
  }

  /* Eligibility & Mapper */
.ebxi-root.ebxi-root .elig-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.ebxi-root.ebxi-root .panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}
.ebxi-root.ebxi-root .about-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.ebxi-root.ebxi-root .about-tile{background:var(--sky);border:1px solid var(--line);border-radius:14px;padding:16px 14px;text-align:center}
.ebxi-root.ebxi-root .about-num{font-family:var(--disp);font-weight:800;font-size:1.9rem;color:var(--blue);line-height:1}
.ebxi-root.ebxi-root .about-lbl{font-size:.8rem;color:var(--muted);line-height:1.4;margin-top:8px}
.ebxi-root.ebxi-root .sub-heading{font-family:var(--disp);font-size:1.35rem;font-weight:800;color:var(--ink);margin:28px 0 16px}
  @media(max-width:720px){
.ebxi-root.ebxi-root .about-grid{grid-template-columns:repeat(2,1fr)}}
.ebxi-root.ebxi-root .panel h3{font-size:1.15rem;margin-bottom:5px}
.ebxi-root.ebxi-root .field-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600;margin-bottom:8px}
.ebxi-root.ebxi-root select.dd, .ebxi-root.ebxi-root input.dd{width:100%;font-family:inherit;font-size:.92rem;font-weight:600;color:var(--ink);padding:11px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;appearance:none;transition:.18s}
.ebxi-root.ebxi-root select.dd{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230080b9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;cursor:pointer}
.ebxi-root.ebxi-root .mapper{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}
.ebxi-root.ebxi-root .m-src{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}
.ebxi-root.ebxi-root .m-src button{font-family:inherit;font-weight:600;font-size:.9rem;padding:10px 16px;border-radius:11px;border:1px solid var(--line);background:var(--paper);cursor:pointer;color:var(--blue-deep);transition:.18s}
.ebxi-root.ebxi-root .m-src button.on{background:var(--blue);color:#fff;border-color:var(--blue)}
.ebxi-root.ebxi-root .m-out{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ebxi-root.ebxi-root .m-tile{border:1px solid var(--line);border-radius:14px;padding:16px 12px;text-align:center;position:relative;background:var(--paper)}
.ebxi-root.ebxi-root .m-tile.allow{border-color:#a8ddc4;background:linear-gradient(160deg,#eefaf4,#e0f4ea)}
.ebxi-root.ebxi-root .m-tile.block{opacity:.6;background:repeating-linear-gradient(135deg,#fff,#fff 8px,#f7ecec 8px,#f7ecec 16px)}

  /* Method Tabs (kept for potential reuse) */
.ebxi-root.ebxi-root .tab-btns{display:flex;gap:12px;margin-bottom:24px;border-bottom:2px solid var(--line);padding-bottom:12px}
.ebxi-root.ebxi-root .tab-btn{font-family:var(--disp);font-weight:700;font-size:.92rem;padding:12px 20px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--muted);transition:.2s;display:inline-flex;align-items:center;gap:10px}
.ebxi-root.ebxi-root .tab-btn:hover{color:var(--blue);border-color:var(--blue);background:var(--sky)}
.ebxi-root.ebxi-root .tab-btn.active{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 8px 22px -10px var(--blue)}
.ebxi-root.ebxi-root .tab-pane{display:none}
.ebxi-root.ebxi-root .tab-pane.active{display:block}

  /* Payment Highlight Pricing Cards */
.ebxi-root.ebxi-root .fee-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}
.ebxi-root.ebxi-root .fee-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--shadow-sm);position:relative;transition:.22s;display:flex;flex-direction:column;justify-content:space-between}
.ebxi-root.ebxi-root .fee-card:hover{border-color:var(--blue);transform:translateY(-4px);box-shadow:var(--shadow)}
.ebxi-root.ebxi-root .fee-card.featured{border-color:var(--blue);background:linear-gradient(180deg,#fff,var(--sky));box-shadow:0 12px 30px -15px rgba(0,128,185,.3)}
.ebxi-root.ebxi-root .fee-badge{display:inline-block;font-family:var(--disp);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:100px;background:var(--sky);color:var(--blue);border:1px solid var(--line);margin-bottom:14px;align-self:flex-start}
.ebxi-root.ebxi-root .fee-card.featured .fee-badge{background:var(--blue);color:#fff;border-color:var(--blue)}
.ebxi-root.ebxi-root .fee-amount{font-family:var(--mono);font-size:2.2rem;font-weight:800;color:var(--blue-deep);line-height:1}
.ebxi-root.ebxi-root .fee-amount small{font-family:var(--body);font-size:.8rem;font-weight:500;color:var(--muted)}
.ebxi-root.ebxi-root .fee-title{font-family:var(--disp);font-size:1.15rem;font-weight:700;color:var(--ink);margin:10px 0 4px}
.ebxi-root.ebxi-root .fee-desc{font-size:.88rem;color:#39566a;line-height:1.5;margin-bottom:12px}

  /* Payment Gateway Channel Cards */
.ebxi-root.ebxi-root .gw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px}
.ebxi-root.ebxi-root .gw-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow-sm);transition:.2s;display:flex;flex-direction:column;gap:10px}
.ebxi-root.ebxi-root .gw-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow)}
.ebxi-root.ebxi-root .gw-header{display:flex;align-items:center;gap:12px}
.ebxi-root.ebxi-root .gw-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:#fff;font-family:var(--disp)}
.ebxi-root.ebxi-root .gw-bkash{background:linear-gradient(135deg,#e2136e,#b00d54)}
.ebxi-root.ebxi-root .gw-nagad{background:linear-gradient(135deg,#f7931e,#d67608)}
.ebxi-root.ebxi-root .gw-rocket{background:linear-gradient(135deg,#8c3494,#67216e)}
.ebxi-root.ebxi-root .gw-sonali{background:linear-gradient(135deg,#0066b3,#004478)}
.ebxi-root.ebxi-root .gw-name{font-family:var(--disp);font-weight:700;font-size:1rem;color:var(--ink)}
.ebxi-root.ebxi-root .gw-code{font-family:var(--mono);font-size:.78rem;font-weight:700;color:var(--blue-deep);background:var(--sky);padding:3px 8px;border-radius:6px;display:inline-block;align-self:flex-start}
.ebxi-root.ebxi-root .gw-desc{font-size:.84rem;color:#39566a;line-height:1.48}

  /* Shared SEO Table Styles */
.ebxi-root.ebxi-root .table-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);overflow:hidden;margin-top:24px}
.ebxi-root.ebxi-root .table-card h3{background:linear-gradient(135deg,var(--blue-deep),var(--blue-darker));color:#fff;padding:16px 24px;font-size:1.1rem}
.ebxi-root.ebxi-root .seo-table{width:100%;border-collapse:collapse;text-align:left}
.ebxi-root.ebxi-root .seo-table th, .ebxi-root.ebxi-root .seo-table td{padding:14px 20px;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:top}
.ebxi-root.ebxi-root .seo-table th{background:var(--sky);color:var(--blue-deep);font-family:var(--disp);font-weight:700;width:24%}
.ebxi-root.ebxi-root .seo-table td{color:#39566a;line-height:1.55}
.ebxi-root.ebxi-root .seo-table tr:last-child td, .ebxi-root.ebxi-root .seo-table tr:last-child th{border-bottom:none}
.ebxi-root.ebxi-root .seo-table code{background:var(--paper);border:1px solid var(--line);padding:2px 7px;border-radius:5px;font-family:var(--mono);font-size:.84rem;color:var(--blue-deep)}

  /* 10 College List Section */
.ebxi-root.ebxi-root .college-table-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);overflow:hidden}
.ebxi-root.ebxi-root .ctable-head{background:linear-gradient(135deg,var(--blue-deep),var(--blue-darker));color:#fff;padding:14px 20px;font-family:var(--disp);font-weight:700;font-size:1.02rem;display:flex;align-items:center;justify-content:space-between;gap:12px}
  /* Table caption is an h3 for the outline; it keeps the bar's own type. */
.ebxi-root.ebxi-root .ctable-head h3{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0}
.ebxi-root.ebxi-root .ctable-hint{font-family:var(--body);font-weight:500;font-size:.72rem;color:rgba(255,255,255,.8);white-space:nowrap}
.ebxi-root.ebxi-root .ctable-scroll{overflow-x:auto}
.ebxi-root.ebxi-root .ctable{width:100%;border-collapse:collapse;text-align:left;min-width:860px}
.ebxi-root.ebxi-root .ctable th, .ebxi-root.ebxi-root .ctable td{padding:13px 16px;border-bottom:1px solid var(--line);font-size:.88rem;vertical-align:middle}
.ebxi-root.ebxi-root .ctable th{background:var(--sky);color:var(--blue-deep);font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.ebxi-root.ebxi-root .ctable td{color:#39566a}
.ebxi-root.ebxi-root .ctable tbody tr:nth-child(even) td{background:var(--paper)}
.ebxi-root.ebxi-root .ctable tbody tr:hover td{background:var(--sky)}
.ebxi-root.ebxi-root .ctable .rank{width:30px;height:30px;border-radius:9px;background:var(--sky);color:var(--blue-deep);font-family:var(--disp);font-weight:800;font-size:.9rem;display:grid;place-items:center}
.ebxi-root.ebxi-root .ctable tbody tr:nth-child(-n+3) .rank{background:var(--gold-soft);color:#b06f00}
.ebxi-root.ebxi-root .ctable .cname{font-family:var(--disp);font-weight:700;font-size:.96rem;color:var(--ink)}
.ebxi-root.ebxi-root .ctable code{background:var(--paper);border:1px solid var(--line);padding:2px 8px;border-radius:6px;font-family:var(--mono);font-size:.82rem;color:var(--blue-deep);font-weight:600}
.ebxi-root.ebxi-root .ctable .gpa-pill{font-family:var(--mono);font-weight:700;font-size:.82rem;background:var(--sky);color:var(--blue-deep);padding:3px 9px;border-radius:6px;display:inline-block}
.ebxi-root.ebxi-root .ctable .seats{font-family:var(--mono);font-weight:700;font-size:.86rem;color:var(--ink)}
.ebxi-root.ebxi-root .ctable .pass-pill{font-family:var(--mono);font-weight:700;font-size:.82rem;background:#eafaf3;color:var(--green);padding:3px 9px;border-radius:6px;border:1px solid #b6e6d2;display:inline-block}
  @media(max-width:760px){
.ebxi-root.ebxi-root .ctable-hint{display:none}
.ebxi-root.ebxi-root .ctable-scroll{overflow:visible}
.ebxi-root.ebxi-root .ctable{min-width:0}
.ebxi-root.ebxi-root .ctable thead{display:none}
.ebxi-root.ebxi-root .ctable, .ebxi-root.ebxi-root .ctable tbody{display:block}
.ebxi-root.ebxi-root .ctable tbody tr{display:block;border:1px solid var(--line);border-radius:14px;padding:14px 16px 6px;margin:14px;box-shadow:var(--shadow-sm);position:relative;background:#fff}
.ebxi-root.ebxi-root .ctable tbody tr:nth-child(even) td, .ebxi-root.ebxi-root .ctable tbody tr:hover td{background:transparent}
.ebxi-root.ebxi-root .ctable td{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;border:none;border-top:1px dashed var(--line)}
.ebxi-root.ebxi-root .ctable td::before{content:attr(data-label);font-family:var(--disp);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex:none}
.ebxi-root.ebxi-root .ctable td.col-name{border-top:none;padding:0 46px 10px 0}
.ebxi-root.ebxi-root .ctable td.col-name::before{display:none}
.ebxi-root.ebxi-root .ctable td.col-rank{position:absolute;top:14px;right:14px;padding:0;border:none}
.ebxi-root.ebxi-root .ctable td.col-rank::before{display:none}
  }

  /* Notice & Announcements */
.ebxi-root.ebxi-root .notice-board{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.ebxi-root.ebxi-root .notice-item{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px 20px 26px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.ebxi-root.ebxi-root .notice-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--blue)}
.ebxi-root.ebxi-root .notice-item:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--blue)}
.ebxi-root.ebxi-root .notice-new::before{background:var(--green)}
.ebxi-root.ebxi-root .notice-important::before{background:#e0483d}
.ebxi-root.ebxi-root .notice-update::before{background:var(--blue)}
.ebxi-root.ebxi-root .notice-info::before{background:#94a9b8}
.ebxi-root.ebxi-root .notice-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.ebxi-root.ebxi-root .notice-badge{font-family:var(--disp);font-weight:700;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:100px;background:var(--sky);color:var(--blue-deep);border:1px solid var(--line)}
.ebxi-root.ebxi-root .notice-badge.new{background:#eafaf3;color:var(--green);border-color:#b6e6d2}
.ebxi-root.ebxi-root .notice-badge.important{background:#fdecea;color:#c23b30;border-color:#f6c9c4}
.ebxi-root.ebxi-root .notice-badge.update{background:var(--sky);color:var(--blue-deep);border-color:var(--line)}
.ebxi-root.ebxi-root .notice-badge.info{background:#eef2f5;color:var(--muted);border-color:#dbe4ea}
.ebxi-root.ebxi-root .notice-date{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-weight:600;font-size:.78rem;color:var(--muted);margin-left:auto}
.ebxi-root.ebxi-root .notice-date svg{width:14px;height:14px;flex:none;opacity:.85}
.ebxi-root.ebxi-root .notice-title{font-size:1.08rem;font-weight:800;color:var(--ink);margin:0 0 8px;line-height:1.3}
.ebxi-root.ebxi-root .notice-body p{color:#39566a;font-size:.9rem;line-height:1.6}
.ebxi-root.ebxi-root .notice-link{display:inline-flex;align-items:center;gap:4px;margin-top:12px;font-family:var(--disp);font-weight:600;font-size:.85rem;color:var(--blue);text-decoration:none}
.ebxi-root.ebxi-root .notice-link:hover{color:var(--blue-deep);text-decoration:underline}
  @media(max-width:760px){
.ebxi-root.ebxi-root .notice-board{grid-template-columns:1fr}
.ebxi-root.ebxi-root .notice-date{margin-left:0}
  }

  /* FAQs */
.ebxi-root.ebxi-root .faq-list{display:grid;gap:12px;max-width:840px;margin:0 auto}
.ebxi-root.ebxi-root .faq{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.ebxi-root.ebxi-root .faq.open{border-color:var(--blue);box-shadow:var(--shadow-sm)}
  /* The question is now <h3 class="faq-qh"><button class="faq-q">…</button></h3>.
     The wrapper is a pure semantic hook — it must add no box of its own — and
     the button is reset back to the original inline look. */
.ebxi-root.ebxi-root .faq-qh{margin:0;padding:0;font:inherit;letter-spacing:inherit}
.ebxi-root.ebxi-root .faq-q{width:100%;background:none;border:none;text-align:left;color:inherit;font-family:var(--body);line-height:1.6;padding:16px 20px;cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;font-weight:600;font-size:.98rem}
.ebxi-root.ebxi-root .faq-q:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}
.ebxi-root.ebxi-root .faq-q .faq-q-txt{min-width:0;overflow-wrap:anywhere}
.ebxi-root.ebxi-root .faq-q .plus{width:24px;height:24px;flex:none;border-radius:7px;background:var(--sky);color:var(--blue);display:grid;place-items:center;font-weight:700}
.ebxi-root.ebxi-root .faq.open .plus{background:var(--blue);color:#fff}
.ebxi-root.ebxi-root .faq-a{display:none;overflow:visible}
.ebxi-root.ebxi-root .faq.open .faq-a{display:block}
.ebxi-root.ebxi-root .faq-a p{padding:0 20px 18px;color:#39566a;font-size:.92rem}

  /* Disclaimer — matches the site's white-panel + section-head language */
.ebxi-root.ebxi-root #disclaimer{padding-top:8px}
.ebxi-root.ebxi-root .disclaimer-panel{max-width:840px;margin:0 auto;display:flex;gap:14px;align-items:flex-start;text-align:left;padding:22px 24px}
.ebxi-root.ebxi-root .disclaimer-ico{flex:none;width:34px;height:34px;border-radius:10px;background:var(--sky);color:var(--blue);display:grid;place-items:center;margin-top:1px}
.ebxi-root.ebxi-root .disclaimer-ico svg{width:18px;height:18px}
.ebxi-root.ebxi-root .disclaimer-text,.ebxi-root.ebxi-root .disclaimer-text p{color:var(--muted);font-size:.9rem;line-height:1.7}
.ebxi-root.ebxi-root .disclaimer-text p+p{margin-top:10px}
.ebxi-root.ebxi-root .disclaimer-text a{color:var(--blue);font-weight:600}
  @media(max-width:760px){
.ebxi-root.ebxi-root .disclaimer-panel{padding:18px 18px;gap:12px}
  }
.ebxi-root.ebxi-root #toTop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border-radius:12px;border:none;cursor:pointer;background:var(--blue);color:#fff;box-shadow:var(--shadow);display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s;z-index:90}
.ebxi-root.ebxi-root #toTop.show{opacity:1;pointer-events:auto;transform:translateY(0)}
.ebxi-root.ebxi-root .reveal{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease}
.ebxi-root.ebxi-root .reveal.in{opacity:1;transform:none}

  @media (max-width:980px){
.ebxi-root.ebxi-root .timeline-grid, .ebxi-root.ebxi-root .fee-grid, .ebxi-root.ebxi-root .gw-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:900px){
.ebxi-root.ebxi-root .elig-row{grid-template-columns:1fr}
.ebxi-root.ebxi-root .seo-table th{width:32%}
  }
  @media (max-width:560px){
.ebxi-root.ebxi-root .timeline-grid, .ebxi-root.ebxi-root .fee-grid, .ebxi-root.ebxi-root .gw-grid, .ebxi-root.ebxi-root .m-out{grid-template-columns:1fr}
.ebxi-root.ebxi-root .seo-table th, .ebxi-root.ebxi-root .seo-table td{display:block;width:100%}
.ebxi-root.ebxi-root .seo-table th{border-bottom:none;padding-bottom:4px}
  }


  /* ===== Responsive / Accordion Fixes ===== */
.ebxi-root.ebxi-root, .ebxi-root.ebxi-root{ width:100%; max-width:100%; }
.ebxi-root.ebxi-root{ overflow-x:hidden; }
.ebxi-root.ebxi-root img, .ebxi-root.ebxi-root svg, .ebxi-root.ebxi-root video, .ebxi-root.ebxi-root canvas{ max-width:100%; }
.ebxi-root.ebxi-root .wrap{ width:100%; }

  /* Never force the hero heading wider than the viewport. */
.ebxi-root.ebxi-root .hero h1{ white-space:normal; overflow-wrap:anywhere; }
.ebxi-root.ebxi-root .hero h1 .hl{ white-space:normal; }

  /* Accordion headings must be allowed to wrap on small screens. */
.ebxi-root.ebxi-root .phase-head{ min-width:0; }
.ebxi-root.ebxi-root .phase-head .lead-txt{ min-width:0; flex:1 1 auto; }
.ebxi-root.ebxi-root .phase-head h3, .ebxi-root.ebxi-root .phase-head h4{ overflow-wrap:anywhere; }
.ebxi-root.ebxi-root .phase-head .chev{ margin-left:auto; }
.ebxi-root.ebxi-root .phase-body{ min-width:0; }
.ebxi-root.ebxi-root .phase-body li{ min-width:0; align-items:flex-start; }
.ebxi-root.ebxi-root .phase-body li > span:last-child{ min-width:0; overflow-wrap:anywhere; }
.ebxi-root.ebxi-root .phase-body li .evt-date{ margin-left:auto; }

  /* Simple FAQ-style accordion: no height animation. */
.ebxi-root.ebxi-root .phase-body{ display:none; max-height:none; overflow:visible; }
.ebxi-root.ebxi-root .phase.open .phase-body{ display:block; }

  /* Prevent wide grids/cards from creating page-level horizontal scrolling. */
.ebxi-root.ebxi-root .timeline-grid, .ebxi-root.ebxi-root .fee-grid, .ebxi-root.ebxi-root .gw-grid, .ebxi-root.ebxi-root .m-out, .ebxi-root.ebxi-root .elig-row, .ebxi-root.ebxi-root .about-grid, .ebxi-root.ebxi-root .apply-fields-grid, .ebxi-root.ebxi-root .apply-rules-row{ min-width:0; }
.ebxi-root.ebxi-root .t-card, .ebxi-root.ebxi-root .fee-card, .ebxi-root.ebxi-root .gw-card, .ebxi-root.ebxi-root .panel, .ebxi-root.ebxi-root .mapper, .ebxi-root.ebxi-root .phase-card{ min-width:0; }
.ebxi-root.ebxi-root .t-card .val{ overflow-wrap:anywhere; }

  @media (max-width:760px) {
.ebxi-root.ebxi-root .wrap{ padding-left:16px; padding-right:16px; }
.ebxi-root.ebxi-root section{ padding:30px 0; }
.ebxi-root.ebxi-root .hero{ padding:24px 0 22px; }
.ebxi-root.ebxi-root .hero h1{ font-size:clamp(1.75rem,7.4vw,2.4rem); }
.ebxi-root.ebxi-root .hero p.lead{ font-size:.92rem; }
.ebxi-root.ebxi-root .hero-cta{ width:100%; }
.ebxi-root.ebxi-root .hero-cta .btn{ width:100%; justify-content:center; }
.ebxi-root.ebxi-root .phase{ padding-left:56px; }
.ebxi-root.ebxi-root .spine{ left:22px; }
.ebxi-root.ebxi-root .phase-node{ left:5px; width:34px; height:34px; }
.ebxi-root.ebxi-root .phase-head{ padding:13px 14px; gap:10px; align-items:flex-start; }
.ebxi-root.ebxi-root .phase-head h3, .ebxi-root.ebxi-root .phase-head h4{ font-size:1rem; line-height:1.25; }
.ebxi-root.ebxi-root .phase-head .tag{ font-size:.58rem; line-height:1.3; display:block; margin-bottom:3px; }
.ebxi-root.ebxi-root .phase-body-inner{ padding:12px 14px 16px; }
.ebxi-root.ebxi-root .phase-body li{ font-size:.84rem; gap:8px; }
.ebxi-root.ebxi-root .phase-body li .evt-date{ margin-left:0; }
.ebxi-root.ebxi-root .phase-dates-row{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.ebxi-root.ebxi-root .apply-filter-row{ align-items:flex-start; }
.ebxi-root.ebxi-root .apply-filter-chip{ max-width:100%; overflow-wrap:anywhere; }
.ebxi-root.ebxi-root .ctable td{ min-width:0; }
.ebxi-root.ebxi-root .ctable td > *{ max-width:100%; }
  }

  @media (max-width:480px) {
.ebxi-root.ebxi-root .sec-head h2{ font-size:1.55rem; }
.ebxi-root.ebxi-root .eyebrow{ font-size:.62rem; }
.ebxi-root.ebxi-root .phase{ padding-left:48px; }
.ebxi-root.ebxi-root .spine{ left:18px; }
.ebxi-root.ebxi-root .phase-node{ left:2px; width:32px; height:32px; border-radius:9px; }
.ebxi-root.ebxi-root .phase-head{ padding:12px; }
.ebxi-root.ebxi-root .phase-head h3, .ebxi-root.ebxi-root .phase-head h4{ font-size:.94rem; }
.ebxi-root.ebxi-root .phase-head .chev{ width:26px; height:26px; }
.ebxi-root.ebxi-root .phase-body li{ display:grid; grid-template-columns:auto minmax(0,1fr); }
.ebxi-root.ebxi-root .phase-body li .evt-date{ grid-column:2; margin-top:2px; justify-self:start; }
.ebxi-root.ebxi-root .apply-fee-highlight{ flex-wrap:wrap; }
  }


/* Circular image gallery + college integration wrapper (new features,
   styled to sit naturally within the original design). */
.ebxi-root.ebxi-root .ebxi-circular-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:22px}
.ebxi-root.ebxi-root .ebxi-circular-figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm)}
.ebxi-root.ebxi-root .ebxi-circular-figure img{display:block;width:100%;height:auto}
.ebxi-root.ebxi-root .ebxi-circular-figure figcaption{font-family:var(--body);font-size:.82rem;color:var(--muted);padding:10px 12px;line-height:1.45}
.ebxi-root.ebxi-root .ebxi-circular-images:has(.ebxi-circular-figure:only-child){grid-template-columns:minmax(0,520px);justify-content:center}
.ebxi-root.ebxi-root .ebxi-college-integration{margin-top:4px}
