.thub-page{--navy:#0b2f57;--blue:#195f9e;--blue2:#2d79bd;--ink:#10253b;--muted:#61758a;--line:#dce7f1;--soft:#f5f9fd;--white:#fff;background:#fff;color:var(--ink);font-family:Manrope,Arial,sans-serif}
.thub-page *{box-sizing:border-box}.thub-page a{text-decoration:none}.thub-page svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.thub-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.thub-hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#082b51 0%,#0d4779 58%,#15629b 100%);color:#fff}
.thub-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-170px;top:-250px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.02)}
.thub-hero:after{content:"";position:absolute;left:52%;bottom:-220px;width:430px;height:430px;border-radius:50%;background:rgba(45,121,189,.25);filter:blur(4px)}
.thub-hero-inner{position:relative;z-index:1;width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:58px;align-items:center;padding:86px 0 82px}
.thub-kicker,.thub-eyebrow{display:block;font-size:11px;line-height:1;font-weight:800;letter-spacing:.17em}
.thub-kicker{color:#a9d3f6;margin-bottom:19px}.thub-hero h1{max-width:680px;margin:0;font-size:58px;line-height:1.02;letter-spacing:-.045em;font-weight:750}
.thub-hero-copy>p{max-width:680px;margin:22px 0 0;color:#d8e6f3;font-size:16px;line-height:1.72}
.thub-search-wrap{position:relative;display:flex;align-items:center;max-width:680px;margin-top:32px;background:#fff;border:1px solid rgba(255,255,255,.4);border-radius:14px;box-shadow:0 18px 44px rgba(4,29,55,.22)}
.thub-search-icon{position:absolute;left:17px;width:21px;height:21px;color:#4b6b89}.thub-search-icon svg{width:100%;height:100%}
.thub-search{width:100%;height:58px;border:0;outline:0;background:transparent;padding:0 74px 0 52px;color:#132c45;font:500 14px/1.2 Manrope,Arial,sans-serif}
.thub-search::placeholder{color:#8395a7}.thub-search-clear{position:absolute;right:12px;opacity:0;pointer-events:none;border:0;background:#eef5fb;border-radius:8px;padding:8px 10px;color:#315e86;font:700 10px/1 Manrope;cursor:pointer;transition:.2s}.thub-search-clear.is-visible{opacity:1;pointer-events:auto}
.thub-hero-links{display:flex;flex-wrap:wrap;gap:23px;margin-top:23px}.thub-hero-links a{display:flex;align-items:center;gap:7px;color:#fff;font-size:12px;font-weight:700}.thub-hero-links svg{width:15px;height:15px}
.thub-hero-panel{position:relative;background:rgba(255,255,255,.975);color:var(--ink);border:1px solid rgba(255,255,255,.72);border-radius:22px;padding:25px;box-shadow:0 30px 70px rgba(0,24,50,.27);backdrop-filter:blur(8px)}
.thub-panel-top{display:flex;align-items:center;gap:13px;padding-bottom:19px;border-bottom:1px solid #e7eef5}.thub-panel-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaf4fc;color:#1c659f}.thub-panel-icon svg{width:20px;height:20px}
.thub-panel-top div{display:grid;gap:5px}.thub-panel-top span{font-size:9px;letter-spacing:.15em;color:#63809b;font-weight:800}.thub-panel-top strong{font-size:17px;line-height:1.25}
.thub-quick-specialities{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:17px}.thub-quick-speciality{position:relative;text-align:left;min-height:82px;border:1px solid #e1eaf3;background:#fff;border-radius:12px;padding:14px 34px 13px 14px;cursor:pointer;transition:.2s;font-family:Manrope}
.thub-quick-speciality:hover{border-color:#a9c9e7;background:#f7fbff;transform:translateY(-1px)}.thub-quick-speciality span{display:block;color:#173a5b;font-size:12px;line-height:1.25;font-weight:750}.thub-quick-speciality small{display:block;margin-top:7px;color:#758a9e;font-size:9.5px}.thub-quick-speciality svg{position:absolute;right:11px;bottom:13px;width:15px;height:15px;color:#3675ac}
.thub-specialities{padding:55px 0 47px;border-bottom:1px solid #e9eef3;background:#fff}.thub-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:34px;margin-bottom:25px}.thub-eyebrow{color:#276da8;margin-bottom:10px}.thub-section-head h2,.thub-directory-head h2{margin:0;color:#122a42;font-size:31px;line-height:1.1;letter-spacing:-.028em}.thub-section-head>p{max-width:390px;margin:0;color:#667b8f;font-size:12px;line-height:1.65}
.thub-speciality-strip{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 10px;scrollbar-width:thin}.thub-speciality-pill{flex:0 0 auto;display:flex;align-items:center;gap:9px;border:1px solid #dce6ef;background:#fff;border-radius:999px;padding:10px 13px;color:#35566f;font:650 11px/1 Manrope;cursor:pointer;transition:.18s}.thub-speciality-pill small{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:99px;background:#eff5fa;color:#6d8396;font-size:9px}.thub-speciality-pill:hover,.thub-speciality-pill.is-active{border-color:#1e679f;background:#103f6c;color:#fff}.thub-speciality-pill.is-active small{background:rgba(255,255,255,.14);color:#fff}
.thub-featured{padding:66px 0;background:linear-gradient(180deg,#f6f9fc,#fff)}.thub-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.thub-feature-card{display:flex;flex-direction:column;min-height:0;padding:21px;border:1px solid #dde7f0;border-radius:17px;background:#fff;color:inherit;box-shadow:0 8px 24px rgba(16,49,82,.035);transition:.2s}.thub-feature-card:hover{transform:translateY(-4px);border-color:#b6cce0;box-shadow:0 17px 35px rgba(12,51,85,.09)}
.thub-feature-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#eaf4fb;color:#236ea7}.thub-feature-icon svg{width:21px;height:21px}.thub-feature-content{margin-top:22px}.thub-feature-speciality{display:block;color:#2d72aa;font-size:9px;line-height:1.2;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.thub-feature-card h3{margin:8px 0 9px;color:#173650;font-size:16px;line-height:1.35;letter-spacing:-.012em}.thub-feature-card p{margin:0;color:#687d90;font-size:11px;line-height:1.58}.thub-feature-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:17px;border-top:1px solid #edf1f5;color:#225f91;font-size:10.5px;font-weight:750}.thub-feature-foot svg{width:15px;height:15px}
.thub-directory{padding:72px 0 82px;background:#fff}.thub-directory-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:27px}.thub-directory-head p{margin:9px 0 0;color:#6e8192;font-size:11.5px}.thub-reset{border:1px solid #d9e4ed;background:#fff;color:#38617e;border-radius:9px;padding:10px 13px;font:700 10.5px/1 Manrope;cursor:pointer}.thub-reset:hover{border-color:#a9c5dc;background:#f8fbfd}
.thub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.thub-card{display:flex;flex-direction:column;min-height:0;border:1px solid #e0e8ef;border-radius:15px;padding:19px;background:#fff;color:inherit;transition:.18s}.thub-card:hover{transform:translateY(-3px);border-color:#b9ccdc;box-shadow:0 14px 30px rgba(20,57,88,.075)}.thub-card.is-hidden{display:none}
.thub-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.thub-card-speciality{font-size:9px;line-height:1.2;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#3274a9}.thub-card-type{flex:0 0 auto;padding:5px 7px;border-radius:99px;background:#f0f5f9;color:#718596;font-size:8.5px;font-weight:700}.thub-card h3{margin:16px 0 8px;font-size:15.5px;line-height:1.4;color:#15334d}.thub-card p{margin:0;color:#6a7d8f;font-size:10.8px;line-height:1.62}.thub-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid #edf1f4;color:#2a6697;font-size:10px;font-weight:750}.thub-card-arrow{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#eff6fb}.thub-card-arrow svg{width:14px;height:14px}
.thub-empty{text-align:center;border:1px dashed #cad9e6;background:#f8fbfd;border-radius:17px;padding:44px 25px;margin-bottom:20px}.thub-empty-icon{display:grid;place-items:center;width:45px;height:45px;margin:0 auto 13px;border-radius:12px;background:#eaf3fa;color:#2c6d9e}.thub-empty-icon svg{width:22px;height:22px}.thub-empty h3{margin:0;color:#193a55;font-size:17px}.thub-empty p{margin:8px 0 0;color:#718495;font-size:11.5px}
.thub-help{padding:0 40px 76px;background:#fff}.thub-help-inner{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;gap:23px;align-items:center;padding:35px 38px;border-radius:20px;background:linear-gradient(120deg,#0b3158,#135887);color:#fff;box-shadow:0 18px 45px rgba(13,48,82,.14)}.thub-help-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.1);color:#b9dcf7}.thub-help-icon svg{width:26px;height:26px}.thub-help-copy span{font-size:9.5px;letter-spacing:.14em;font-weight:800;color:#b5d8f3}.thub-help-copy h2{max-width:630px;margin:7px 0 7px;font-size:24px;line-height:1.23;letter-spacing:-.025em}.thub-help-copy p{max-width:650px;margin:0;color:#d2e2ef;font-size:11px;line-height:1.6}.thub-help-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.thub-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;padding:0 15px;font-size:10.5px;font-weight:750}.thub-btn-primary{background:#fff;color:#123d63}.thub-btn-secondary{border:1px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.04)}
@media(max-width:1050px){.thub-hero-inner{grid-template-columns:1fr;gap:35px}.thub-hero-panel{max-width:720px}.thub-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.thub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.thub-help-inner{grid-template-columns:auto 1fr}.thub-help-actions{grid-column:2;justify-content:flex-start}}
@media(max-width:720px){.thub-container,.thub-hero-inner{width:min(100% - 28px,1180px)}.thub-hero-inner{padding:54px 0 50px}.thub-hero h1{font-size:39px}.thub-hero-copy>p{font-size:14px;line-height:1.65}.thub-search{height:55px;font-size:12px}.thub-quick-specialities{grid-template-columns:1fr 1fr}.thub-section-head,.thub-directory-head{display:block}.thub-section-head>p{margin-top:12px}.thub-section-head h2,.thub-directory-head h2{font-size:26px}.thub-reset{margin-top:15px}.thub-specialities{padding:43px 0 35px}.thub-featured,.thub-directory{padding:50px 0}.thub-featured-grid,.thub-grid{grid-template-columns:1fr}.thub-feature-card{min-height:0}.thub-card{min-height:0}.thub-help{padding:0 14px 50px}.thub-help-inner{grid-template-columns:1fr;padding:27px 22px}.thub-help-actions{grid-column:auto}.thub-help-copy h2{font-size:22px}}
@media(max-width:480px){.thub-hero h1{font-size:34px}.thub-hero-links{gap:14px}.thub-hero-panel{padding:18px;border-radius:17px}.thub-quick-specialities{grid-template-columns:1fr}.thub-quick-speciality{min-height:68px}.thub-quick-specialities .thub-quick-speciality:nth-child(n+5){display:none}.thub-featured-grid{gap:11px}.thub-card{padding:17px}.thub-help-actions{display:grid}.thub-btn{width:100%}}

.thub-loadmore-wrap{display:flex;justify-content:center;padding-top:30px}
.thub-loadmore-wrap[hidden]{display:none}
.thub-loadmore{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:210px;height:46px;border:1px solid #c9d9e7;background:#fff;border-radius:11px;color:#245f8f;font:750 11px/1 Manrope,Arial,sans-serif;cursor:pointer;box-shadow:0 8px 20px rgba(17,58,93,.05);transition:.2s}
.thub-loadmore:hover{border-color:#88b2d3;background:#f6fbff;transform:translateY(-1px)}
.thub-loadmore svg{width:16px;height:16px}
.thub-card p,.thub-feature-card p{min-height:0}
@media(max-width:720px){.thub-loadmore{width:100%}}

/* v2.1 featured-title visibility fix */
.thub-feature-card .thub-feature-content h3{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    color:#173650!important;
    font-size:16px!important;
    font-weight:750!important;
    line-height:1.35!important;
    min-height:22px;
}
.thub-feature-card .thub-feature-speciality{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
}

/* =========================================================
   v2.2 SPECIALITY BOARD + LOAD MORE PLACEMENT FIX
   ========================================================= */
.thub-specialities{
    padding:58px 0 54px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbfe 100%);
    border-bottom:1px solid #e4edf5
}
.thub-speciality-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) 330px;
    gap:42px;
    align-items:end;
    margin-bottom:26px
}
.thub-speciality-title h2{
    margin:0;
    color:#122a42;
    font-size:32px;
    line-height:1.1;
    letter-spacing:-.03em
}
.thub-speciality-title p{
    margin:10px 0 0;
    color:#6b7f91;
    font-size:12px;
    line-height:1.65
}
.thub-speciality-note{
    display:flex;
    align-items:flex-start;
    gap:11px;
    padding:14px 15px;
    border:1px solid #dbe7f1;
    border-radius:13px;
    background:#fff
}
.thub-speciality-note>span{
    flex:0 0 auto;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border-radius:9px;
    background:#edf6fd;
    color:#2c6fa6
}
.thub-speciality-note svg{width:15px;height:15px}
.thub-speciality-note p{
    margin:1px 0 0;
    color:#657a8d;
    font-size:10.5px;
    line-height:1.55
}
.thub-speciality-note strong{color:#234b6c}

.thub-speciality-board{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:11px!important;
    overflow:visible!important;
    padding:0!important;
    scrollbar-width:none
}
.thub-speciality-board::-webkit-scrollbar{display:none}

.thub-speciality-pill{
    position:relative;
    min-width:0;
    width:100%;
    min-height:72px;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 22px;
    align-items:center;
    gap:11px;
    border:1px solid #dbe6ef!important;
    background:#fff!important;
    border-radius:14px!important;
    padding:13px 12px!important;
    color:#254a68!important;
    text-align:left;
    cursor:pointer;
    box-shadow:0 5px 14px rgba(14,55,88,.025);
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease!important
}
.thub-speciality-pill:hover{
    transform:translateY(-2px);
    border-color:#a9c6dd!important;
    background:#fbfdff!important;
    box-shadow:0 10px 23px rgba(14,55,88,.065)
}
.thub-speciality-pill.is-active{
    border-color:#164f7e!important;
    background:linear-gradient(135deg,#0f3f69,#17679e)!important;
    color:#fff!important;
    box-shadow:0 12px 26px rgba(13,64,103,.18)
}
.thub-pill-icon{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:10px;
    background:#edf5fb;
    color:#2f72a6
}
.thub-pill-icon svg{width:17px;height:17px}
.thub-speciality-pill.is-active .thub-pill-icon{
    background:rgba(255,255,255,.12);
    color:#fff
}
.thub-pill-copy{
    min-width:0;
    display:grid;
    gap:5px
}
.thub-pill-copy b{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:inherit;
    font-size:11.5px;
    line-height:1.2;
    font-weight:760
}
.thub-pill-copy small{
    color:#7c90a2!important;
    font-size:9px!important;
    line-height:1.15
}
.thub-speciality-pill.is-active .thub-pill-copy small{color:#c9dfef!important}
.thub-pill-arrow{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    color:#5f86a5
}
.thub-pill-arrow svg{width:14px;height:14px}
.thub-speciality-pill.is-active .thub-pill-arrow{color:#fff}

.thub-loadmore-wrap{
    display:flex;
    justify-content:center;
    padding-top:30px;
    margin-top:2px
}
.thub-loadmore-wrap[hidden]{display:none!important}

@media(max-width:1050px){
    .thub-speciality-board{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
    .thub-speciality-head{
        grid-template-columns:1fr;
        gap:18px;
        margin-bottom:20px
    }
    .thub-speciality-note{display:none}
    .thub-speciality-title h2{font-size:27px}
    .thub-speciality-board{
        display:flex!important;
        gap:10px!important;
        margin-right:-14px;
        overflow-x:auto!important;
        scroll-snap-type:x proximity;
        padding:0 14px 12px 0!important;
        -webkit-overflow-scrolling:touch
    }
    .thub-speciality-pill{
        flex:0 0 220px;
        width:220px;
        min-height:68px;
        scroll-snap-align:start
    }
}
@media(max-width:480px){
    .thub-specialities{padding:43px 0 38px}
    .thub-speciality-pill{
        flex-basis:205px;
        width:205px;
        grid-template-columns:34px minmax(0,1fr) 20px;
        padding:11px!important
    }
    .thub-pill-icon{width:34px;height:34px}
}
