/* =====================================================================
   Theme 04 — "Campus"   (colourful & friendly)
   Loaded after theme.css. Tokens + presentation only; section markup and
   page data are identical to every other theme.
   Identity: teal, amber and berry tints on white, Poppins headings with a
   rounded Nunito body, colour-coded tiles that rotate through a small
   palette, soft rounded cards, lots of air.
   ===================================================================== */

:root{
  --sec-y:clamp(60px,7.5vw,100px);
  --radius-sm:12px;
  --shadow-1:0 1px 2px rgba(28,36,48,.04),0 6px 20px rgba(28,36,48,.06);
  --shadow-2:0 14px 36px rgba(14,148,136,.12),0 3px 10px rgba(28,36,48,.06);
  --shadow-3:0 28px 70px rgba(28,36,48,.22);
  /* the friendly palette — five hues that rotate through tiles and icons */
  --c-teal:var(--brand);
  --c-amber:#f59e0b;
  --c-berry:#e0457b;
  --c-violet:#7c5cff;
  --c-sky:#2f8ff5;
  --c-lime:#65a30d;
  --t-teal:#e3f6f3;
  --t-amber:#fff3d6;
  --t-berry:#ffe6ee;
  --t-violet:#ede8ff;
  --t-sky:#e3f0ff;
  --t-lime:#eef7dc;
}
h1,h2,h3,h4,h5{font-weight:700;letter-spacing:-.02em;color:var(--ink)}
body{font-weight:500}
a:hover{color:var(--brand-dark)}

/* ---------- top bar: a colour strip ---------- */
.topbar{background:linear-gradient(90deg,var(--brand) 0%,var(--c-violet) 100%);color:#fff;font-size:12.5px;font-weight:600}
.topbar a{color:#fff}
.topbar a:hover{color:#ffe9b8}
.topbar-links a{border-left-color:rgba(255,255,255,.28)}
.topbar-social a{background:rgba(255,255,255,.2)}
.topbar-social a:hover{background:#fff;color:var(--brand)}

/* ---------- masthead ---------- */
.masthead{border-bottom:0}
.masthead-in{padding:18px 22px}
.brand-txt strong{font-size:23px;letter-spacing:-.02em}
.brand-txt small{color:var(--muted);letter-spacing:.1em;font-weight:700}
.brand-txt em{color:var(--brand);font-weight:800}
.mh-info div{padding:9px 16px 9px 12px;border-radius:999px;background:var(--t-teal)}
.mh-info div:nth-child(2){background:var(--t-amber)}
.mh-info div:nth-child(2) svg{stroke:#b45309}
.mh-info svg{stroke:var(--brand);width:26px;height:26px}
.mh-info small{color:var(--muted);font-weight:700}
.mh-info b{font-family:var(--font-display);color:var(--ink)}

/* ---------- navigation: white bar, pill links ---------- */
.navbar{background:#fff;box-shadow:0 1px 0 var(--line),0 10px 30px rgba(28,36,48,.06)}
.navbar-in{padding:6px 0}
.nav-item > a{color:var(--ink);font-size:14px;font-weight:700;padding:11px 16px;border-radius:999px;margin:2px 2px}
.nav-item > a::after{display:none}
.nav-item:hover > a{background:var(--t-teal);color:var(--brand-dark)}
.nav-item.is-active > a{background:var(--brand);color:#fff}
.caret{opacity:.55}
.nav-tools button{color:var(--ink);border-radius:999px}
.nav-tools button:hover{background:var(--t-teal);color:var(--brand)}
.nav-toggle{color:var(--brand)}
.drop{border-top:0;border-radius:18px;padding:10px;top:calc(100% + 6px);box-shadow:var(--shadow-2);border:1px solid var(--line)}
.drop a{border-left:0;border-radius:12px;padding:10px 14px;font-weight:600}
.drop a:hover{background:var(--t-teal);color:var(--brand-dark);padding-left:18px}
.mega{
  width:min(1140px,94vw);left:50%;right:auto;margin-left:0;transform:translateX(-50%) translateY(8px);
  border-top:0;border:1px solid var(--line);border-radius:24px;top:calc(100% + 6px);box-shadow:var(--shadow-2);overflow:hidden;
}
.nav-item:hover > .mega{transform:translateX(-50%) translateY(0)}
.mega-in{padding:28px 30px 32px}
.mega-col h4{color:var(--brand);border-bottom-color:var(--line);letter-spacing:.14em}
.mega-col:nth-child(2) h4{color:var(--c-berry)}
.mega-col:nth-child(3) h4{color:var(--c-violet)}
.mega-col a{font-weight:600;border-radius:10px;padding:7px 10px;margin-left:-10px}
.mega-col a:hover{background:var(--t-teal);color:var(--brand-dark);padding-left:14px}
.mega-promo{background:linear-gradient(140deg,var(--brand-dark),var(--brand) 55%,var(--c-violet));border-radius:20px}
.mega-promo p{color:#d7f5f0}

/* ---------- controls ---------- */
.btn{border-radius:999px;font-weight:800;letter-spacing:0;font-size:14px;padding:13px 24px}
.btn-primary{background:var(--brand);box-shadow:0 8px 22px rgba(14,148,136,.28)}
.btn-primary:hover{background:var(--brand-dark);box-shadow:0 12px 30px rgba(14,148,136,.34)}
.btn-accent{background:var(--accent);color:#3b2400;box-shadow:0 8px 22px rgba(245,158,11,.3)}
.btn-accent:hover{background:var(--accent-light);color:#3b2400}
.btn-ghost{background:var(--t-teal);border-color:transparent;color:var(--brand-dark)}
.btn-ghost:hover{background:#d3f0eb;border-color:transparent;color:var(--brand-dark)}
.btn-outline{border-color:rgba(255,255,255,.6)}
.tab{border-radius:999px;font-weight:700}
.tab.is-active{background:var(--brand);border-color:var(--brand);box-shadow:0 6px 18px rgba(14,148,136,.25)}

/* ---------- hero: rounded bottom, teal → violet wash ---------- */
.hero{background:var(--brand-dark);border-radius:0 0 40px 40px}
.hero-track{height:clamp(480px,66vh,640px)}
.slide::after{background:linear-gradient(100deg,rgba(11,95,88,.94) 0%,rgba(11,95,88,.78) 38%,rgba(124,92,255,.32) 78%,rgba(224,69,123,.22) 100%)}
.slide-in{padding-bottom:48px}
.slide .kicker{
  color:#3b2400;background:var(--accent);padding:7px 16px 7px 14px;border-radius:999px;letter-spacing:.1em;font-size:11px;
}
.slide .kicker::before{display:none}
.slide h1{font-size:clamp(34px,5.2vw,62px);font-weight:800;line-height:1.04;letter-spacing:-.035em;color:#fff}
.slide h1 em{color:var(--accent-light)}
.slide .lede{color:#dbf3ef;font-size:clamp(15.5px,1.4vw,18px);font-weight:500}
.hero-ui{bottom:34px}
.hero-dots button{height:6px;border-radius:999px;background:rgba(255,255,255,.4)}
.hero-dots button.is-active{background:var(--accent)}
.hero-arrows button{border-radius:999px;background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3)}
.hero-arrows button:hover{background:#fff;color:var(--brand);border-color:#fff}

/* ---------- quick access: colour-coded tiles ---------- */
.quick{margin-top:-44px;background:transparent}
.quick-grid{display:grid;gap:14px;background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
.quick-item{
  flex-direction:column;align-items:flex-start;gap:12px;padding:20px 18px;border:0;border-radius:20px;
  background:var(--t-teal);box-shadow:var(--shadow-1);--qi:var(--c-teal);
}
.quick-item:nth-child(6n+2){background:var(--t-amber);--qi:#d97706}
.quick-item:nth-child(6n+3){background:var(--t-berry);--qi:var(--c-berry)}
.quick-item:nth-child(6n+4){background:var(--t-violet);--qi:var(--c-violet)}
.quick-item:nth-child(6n+5){background:var(--t-sky);--qi:var(--c-sky)}
.quick-item:nth-child(6n+6){background:var(--t-lime);--qi:var(--c-lime)}
.quick-item:hover{background:var(--qi);color:#fff;transform:translateY(-4px);box-shadow:var(--shadow-2)}
.quick-item:hover small{color:rgba(255,255,255,.85)}
.qi-ic{width:42px;height:42px;border-radius:13px;background:#fff;color:var(--qi)}
.quick-item:hover .qi-ic{background:rgba(255,255,255,.22);color:#fff}
.quick-item b{font-family:var(--font-display);font-size:14px;font-weight:700}
.quick-item small{font-weight:600}

/* ---------- ticker ---------- */
.ticker{background:#fff;border-block-color:var(--line)}
.ticker-label{background:var(--accent);color:#3b2400;border-radius:999px;margin:9px 0 9px 4px;padding:9px 18px;letter-spacing:.1em}
.ticker-label::after{display:none}
.ticker-move a{font-weight:600;border-left-color:var(--line)}
.tag{background:var(--t-teal);color:var(--brand-dark);border-radius:999px;padding:4px 10px}
.tag-new{background:var(--c-berry);color:#fff}

/* ---------- section rhythm ---------- */
.kicker{background:var(--t-teal);color:var(--brand-dark);border-radius:999px;padding:7px 14px;letter-spacing:.12em;font-size:11px}
.kicker::before,.sec-head.center .kicker::after{display:none}
.sec-head{margin-bottom:44px}
.sec-head h2{font-size:clamp(28px,3.5vw,44px);padding-bottom:18px;position:relative}
.sec-head h2::after{content:'';position:absolute;left:0;bottom:0;width:72px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--c-teal),var(--c-amber) 50%,var(--c-berry))}
.sec-head.center h2::after{left:50%;transform:translateX(-50%)}
.sec-head p{font-size:17px;font-weight:500}
.sec-alt{background:linear-gradient(180deg,var(--surface-2),#fff)}

/* ---------- about ---------- */
.split-art{z-index:0}
.split-art::before{content:'';position:absolute;left:-28px;bottom:-28px;width:170px;height:170px;border-radius:40px;background:var(--t-berry);z-index:-1}
.split-art::after{content:'';position:absolute;right:-22px;top:-22px;width:120px;height:120px;border-radius:50%;background:var(--t-amber);z-index:-1}
.art-main{border-radius:28px;box-shadow:var(--shadow-2);aspect-ratio:4/3.3}
.art-badge{background:var(--accent);color:#3b2400;border-bottom:0;border-radius:22px;box-shadow:var(--shadow-2)}
.art-badge b{color:#3b2400}
.art-badge span{color:#7a4a00}
.split h2{font-size:clamp(26px,3vw,38px)}
.tick-list svg{stroke:var(--brand)}
.tick-list li{font-weight:600}
.sig-mark{border-radius:14px;background:linear-gradient(145deg,var(--brand),var(--c-violet))}

/* ---------- statistics: white band, coloured numerals ---------- */
.stats{background:#fff;color:var(--ink);border-block:1px solid var(--line)}
.stats::before{display:none}
.stat-grid{background:transparent;gap:14px}
.stat{background:var(--t-teal);border-radius:22px;padding:28px 16px;--st:var(--c-teal)}
.stat:nth-child(6n+2){background:var(--t-amber);--st:#d97706}
.stat:nth-child(6n+3){background:var(--t-berry);--st:var(--c-berry)}
.stat:nth-child(6n+4){background:var(--t-violet);--st:var(--c-violet)}
.stat:nth-child(6n+5){background:var(--t-sky);--st:var(--c-sky)}
.stat:nth-child(6n+6){background:var(--t-lime);--st:var(--c-lime)}
.stat b{color:var(--st);font-weight:800}
.stat span{color:var(--ink);font-weight:700;font-size:12.5px}

/* ---------- cards ---------- */
.card,.feat,.mini-card,.fcard,.place-num,.ccard,.panel,.form-wrap,.table-wrap,.acc-item,.event-mini,.dl-item,
.press a,.side-nav,.side-card,.filterbar,.map-frame,.empty{border-radius:22px}
.card{padding:28px 26px 26px;border-color:var(--line)}
.card::before{display:none}
.card:hover{border-color:#bfe9e2;box-shadow:var(--shadow-2);transform:translateY(-6px)}
.card-ic{border-radius:16px;background:var(--t-teal);color:var(--c-teal)}
.cards > .card:nth-child(6n+2) .card-ic{background:var(--t-amber);color:#d97706}
.cards > .card:nth-child(6n+3) .card-ic{background:var(--t-berry);color:var(--c-berry)}
.cards > .card:nth-child(6n+4) .card-ic{background:var(--t-violet);color:var(--c-violet)}
.cards > .card:nth-child(6n+5) .card-ic{background:var(--t-sky);color:var(--c-sky)}
.cards > .card:nth-child(6n+6) .card-ic{background:var(--t-lime);color:var(--c-lime)}
.card h3{font-size:18.5px}
.card h3 a:hover{color:var(--brand)}
.card-badge{background:var(--t-berry);color:var(--c-berry);border-radius:999px;padding:5px 11px}
.card-meta svg{stroke:var(--brand)}
.link-more{color:var(--brand);font-weight:800}
.link-more:hover{color:var(--brand-dark)}
.mini-card{border-top:0;border-left:5px solid var(--brand)}
.mini-grid > .mini-card:nth-child(3n+2){border-left-color:var(--c-amber)}
.mini-grid > .mini-card:nth-child(3n+3){border-left-color:var(--c-berry)}

/* ---------- features ---------- */
.feat{padding:26px 24px}
.feat:hover{transform:translateY(-5px);box-shadow:var(--shadow-2);border-color:#bfe9e2}
.feat-ic{border-radius:18px;background:var(--t-teal);color:var(--c-teal)}
.cards > .feat:nth-child(6n+2) .feat-ic{background:var(--t-amber);color:#d97706}
.cards > .feat:nth-child(6n+3) .feat-ic{background:var(--t-berry);color:var(--c-berry)}
.cards > .feat:nth-child(6n+4) .feat-ic{background:var(--t-violet);color:var(--c-violet)}
.cards > .feat:nth-child(6n+5) .feat-ic{background:var(--t-sky);color:var(--c-sky)}
.cards > .feat:nth-child(6n+6) .feat-ic{background:var(--t-lime);color:var(--c-lime)}
.feat h3{font-size:17px}

/* ---------- notice board ---------- */
.panel{box-shadow:var(--shadow-1)}
.panel-head{background:#fff;border-bottom:1px solid var(--line);padding:8px 8px 0;gap:6px}
.panel-head button{border-radius:999px;border-bottom:0;font-weight:700}
.panel-head button.is-active{background:var(--t-teal);color:var(--brand-dark)}
.date-chip{background:var(--t-amber);border-color:transparent;border-radius:14px}
.date-chip b{color:#b45309;font-weight:800}
.date-chip span{color:#b45309;font-weight:700}
.notice:hover{background:var(--surface-2)}
.notice-body a{font-weight:700}
.panel-foot{background:#fff}
.event-mini:hover,.dl-item:hover{box-shadow:var(--shadow-1);border-color:var(--line);transform:translateY(-2px)}
.event-mini{border-radius:18px}
.dl-item{border-radius:16px}
.dl-ic{border-radius:10px;background:var(--t-berry);color:var(--c-berry)}
.dl-item svg{stroke:var(--brand)}

/* ---------- message ---------- */
.msg-portrait{border-radius:28px;aspect-ratio:3/3.2}
.msg-name{border-radius:18px;background:#fff;color:var(--ink);border-bottom:0;box-shadow:var(--shadow-2)}
.msg-name b{color:var(--ink)}
.msg-name span{color:var(--muted);font-weight:700}
.msg-quote{border-left:5px solid var(--accent);border-radius:4px;color:var(--ink);font-weight:600;font-size:clamp(20px,2.4vw,28px)}
.avatar{border-radius:16px;background:linear-gradient(145deg,var(--brand),var(--c-violet))}

/* ---------- placement & gallery ---------- */
.place-num{padding:26px 20px;--st:var(--c-teal)}
.place-nums > .place-num:nth-child(4n+2){--st:#d97706}
.place-nums > .place-num:nth-child(4n+3){--st:var(--c-berry)}
.place-nums > .place-num:nth-child(4n+4){--st:var(--c-violet)}
.place-num b{color:var(--st);font-weight:800}
.place-num:hover{border-color:var(--line);box-shadow:var(--shadow-2);transform:translateY(-4px)}
.rlogo{border-radius:16px;font-weight:700}
.rlogo:hover{border-color:var(--brand);color:var(--brand);box-shadow:var(--shadow-1)}
.gal{border-radius:20px}
.gal::after{background:linear-gradient(180deg,transparent 40%,rgba(11,95,88,.88))}
.gal figcaption em{color:var(--accent-light)}
.lb-art{border-radius:22px}
.lb-close,.lb-nav{border-radius:999px}

/* ---------- testimonials, press, chips ---------- */
.quote-mark{color:var(--accent);opacity:.9}
.tst blockquote{font-weight:600;color:var(--ink)}
.tst-dots button.is-active{background:var(--brand)}
.press a:hover{transform:translateY(-3px);box-shadow:var(--shadow-1)}
.press a{border-radius:18px}
.press-src{color:var(--c-berry)}
.chip{border-radius:999px;font-weight:700}
.chip:hover{border-color:transparent;background:var(--t-teal);color:var(--brand-dark)}

/* ---------- call to action ---------- */
.cta{background:linear-gradient(115deg,var(--brand-dark),var(--brand) 48%,var(--c-violet));border-radius:0}
.cta::before{background:rgba(245,158,11,.32)}
.cta::after{background:rgba(224,69,123,.28)}
.cta h2{color:#fff}
.cta p{color:#dbf3ef}

/* ---------- inner pages ---------- */
.phero{background:linear-gradient(110deg,var(--brand-dark),var(--brand) 50%,var(--c-violet))}
.phero-art{opacity:.32}
.phero::after{background:linear-gradient(95deg,rgba(11,95,88,.9),rgba(124,92,255,.45))}
.phero .container{padding-block:clamp(52px,6.5vw,86px)}
.phero h1{font-size:clamp(30px,4.2vw,50px);font-weight:800}
.phero p{color:#dbf3ef;font-weight:500}
.crumbs a:hover{color:var(--accent-light)}
.phero-program .pill-lg{border-radius:16px;background:rgba(255,255,255,.14)}
.side-nav h4{background:linear-gradient(135deg,var(--brand),var(--c-violet));letter-spacing:.1em}
.side-nav a{border-left:0;margin:4px 8px;border-radius:12px;padding:10px 14px;border-bottom:0;font-weight:600}
.side-nav a:hover,.side-nav a.is-active{background:var(--t-teal);color:var(--brand-dark);padding-left:18px}
.side-card{background:linear-gradient(150deg,var(--brand-dark),var(--brand) 60%,var(--c-violet));border-bottom:0}
.prose > h2::after,.page-body .sec-head h2::after{background:linear-gradient(90deg,var(--c-teal),var(--c-amber) 50%,var(--c-berry));height:5px;border-radius:999px}
.prose ul li::before,.bullets li::before{background:var(--brand);border-radius:50%}
.fig-art{border-radius:22px}
.fac-item{border-radius:18px;background:var(--t-teal);border-color:transparent}
.fac-grid > .fac-item:nth-child(3n+2){background:var(--t-amber)}
.fac-grid > .fac-item:nth-child(3n+3){background:var(--t-violet)}
.fac-item h4{color:var(--ink)}
.doc-list li{border-radius:14px}
.data-table th{background:var(--brand);letter-spacing:.06em}
.data-table tbody tr:nth-child(even){background:#fbfdfc}
.data-table tbody tr:hover{background:var(--t-teal)}
.pill{border-radius:999px}
.acc-item.is-open{border-color:#bfe9e2}
.acc-head{font-weight:700;font-size:16.5px}
.acc-ic{border-radius:999px;background:var(--t-teal);color:var(--brand)}
.acc-item.is-open .acc-ic{background:var(--accent);color:#3b2400}
.dept-tags span{border-radius:999px;background:#fff;font-weight:600}
.step-num{border-radius:18px;border-color:var(--brand);color:var(--brand);--st:var(--c-teal)}
.steps > .step:nth-child(5n+2) .step-num{border-color:#d97706;color:#d97706;--st:#d97706}
.steps > .step:nth-child(5n+3) .step-num{border-color:var(--c-berry);color:var(--c-berry);--st:var(--c-berry)}
.steps > .step:nth-child(5n+4) .step-num{border-color:var(--c-violet);color:var(--c-violet);--st:var(--c-violet)}
.steps > .step:nth-child(5n+5) .step-num{border-color:var(--c-sky);color:var(--c-sky);--st:var(--c-sky)}
.step:hover .step-num{background:var(--st);border-color:var(--st);color:#fff}
.fcard .avatar{border-radius:16px}
.fcard .role{color:var(--brand)}
.field input,.field select,.field textarea{border-radius:14px;padding:13px 16px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px var(--t-teal)}
.pager button{border-radius:999px}
.pager button.is-active{background:var(--brand);border-color:var(--brand)}
.filterbar{box-shadow:var(--shadow-1);border-radius:999px;padding:12px 14px}
.filterbar select,.filterbar input{border-radius:999px;padding:11px 18px}
.ccard .card-ic{background:var(--t-teal);color:var(--c-teal)}
.contact-cards > .ccard:nth-child(3n+2) .card-ic{background:var(--t-amber);color:#d97706}
.contact-cards > .ccard:nth-child(3n+3) .card-ic{background:var(--t-berry);color:var(--c-berry)}

/* ---------- footer ---------- */
.footer{background:var(--brand-dark);color:#bfe3dd;position:relative;overflow:hidden}
.footer::before{content:'';position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:rgba(124,92,255,.28);filter:blur(60px)}
.footer::after{content:'';position:absolute;left:-100px;bottom:-140px;width:360px;height:360px;border-radius:50%;background:rgba(245,158,11,.18);filter:blur(60px)}
.footer .container{position:relative;z-index:1}
.footer h4::after{background:var(--accent);height:3px;border-radius:999px;width:36px}
.footer a{color:#bfe3dd}
.footer a:hover{color:#fff}
.f-links a::before{color:var(--accent)}
.f-brand span,.f-about p,.f-bottom{color:#a8d8d0}
.f-contact svg{stroke:var(--accent)}
.f-social a{border-radius:14px;background:var(--c-teal);color:#fff}
.f-social a:nth-child(2){background:var(--c-sky)}
.f-social a:nth-child(3){background:var(--c-berry)}
.f-social a:nth-child(4){background:#d97706}
.f-social a:nth-child(5){background:var(--c-violet)}
.f-social a:hover{filter:brightness(1.15);color:#fff}
.f-bottom strong{color:var(--accent-light)}
.rail{gap:6px;right:0}
.rail a{border-radius:16px 0 0 16px;background:var(--brand);font-weight:800}
.rail a.accent{background:var(--accent);color:#3b2400}
.rail a:nth-child(3){background:var(--c-violet)}
.totop{border-radius:999px;background:var(--brand);box-shadow:0 10px 26px rgba(14,148,136,.34)}

@media (max-width:1180px){
  .quick-grid{grid-template-columns:repeat(3,1fr)}
  .quick-item{border-bottom:0}
  .quick-item:nth-child(3n){border-right:0}
}
@media (max-width:1024px){ .split-art::before,.split-art::after{display:none} }
@media (max-width:860px){
  .hero{border-radius:0}
  .navbar-in{padding:0}
  .nav-item > a{border-radius:0;margin:0;font-weight:700}
  .nav-item.is-active > a{background:var(--t-teal);color:var(--brand-dark)}
  .quick{margin-top:0;padding-top:22px}
  .quick-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .quick-item{border-right:0!important}
  .mega{width:auto;left:0;transform:none;border:0;border-radius:0}
  .nav-item:hover > .mega{transform:none}
  .mh-info div{background:transparent;padding:0}
  .filterbar{border-radius:22px}
}
@media (max-width:520px){ .quick-grid{grid-template-columns:1fr} }

/* ---------- small-college home: split banner, facts band, photo cards, strip ---------- */
.hero2{background:linear-gradient(135deg,#f3faf8 0%,#fff 55%,#fff5e6 100%);border-bottom:0}
.hero2-text .kicker{display:inline-flex;padding:7px 14px;border-radius:999px;background:var(--accent-light);color:var(--ink);font-weight:700;letter-spacing:.06em}
.hero2-text .kicker::before{display:none}
.hero2-text h1{font-weight:800;letter-spacing:-.035em}
.hero2-text h1 em{color:var(--brand)}
.hero2-stack{border-radius:36px 36px 36px 120px;box-shadow:0 30px 60px rgba(14,148,136,.22)}
.hero2-media::before{content:'';position:absolute;inset:-22px -22px auto auto;width:150px;height:150px;border-radius:50%;background:var(--accent-light);opacity:.35;z-index:0}
.hero2-media::after{content:'';position:absolute;left:-30px;bottom:-26px;width:110px;height:110px;border-radius:50%;background:#e0457b;opacity:.16;z-index:0}
.hero2-stack{position:relative;z-index:1}
.hero2-badge{border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 14px 34px rgba(31,26,61,.14);left:-18px;bottom:44px}
.hero2 .btn-outline{color:var(--brand);border-color:var(--brand)}
.hero2 .btn-outline:hover{background:var(--brand);color:#fff}
.hero2-badge b{color:var(--brand)}
.hero2-dots button{background:#d9e6e3}
.hero2-dots button.is-active{background:var(--accent)}
.hband{background:transparent;color:var(--ink);padding:12px 0 0}
.hband-in{gap:14px}
.hb{border:0;border-radius:18px;padding:16px 18px;background:#fff;box-shadow:0 8px 24px rgba(31,26,61,.06)}
.hb:nth-child(1) .hb-ic{background:#e6f7f4;color:var(--brand)}
.hb:nth-child(2) .hb-ic{background:#fff3d6;color:#b45309}
.hb:nth-child(3) .hb-ic{background:#fde7ef;color:#c0245f}
.hb:nth-child(4) .hb-ic{background:#ede9fe;color:#6d3ff2}
.hb-ic{border-radius:14px}
.hb small{color:var(--muted);opacity:1}
.pcard{border-radius:24px;border:0;box-shadow:0 10px 30px rgba(31,26,61,.06)}
.pcard-level{color:var(--brand)}
.pstrip{border:0;background:transparent;padding:10px 0 26px}
.pstrip-photo{border-radius:22px}
@media (max-width:1024px){.hb{border:0}.hero2-badge{bottom:14px}}
