/* Shared wordmark across the portal and editorial panels. */
.brand .brand-wordmark{display:inline-block;white-space:nowrap;letter-spacing:-.04em;line-height:1.2}
.brand .brand-bez{color:#2479ac;font-weight:800}
.brand .brand-matury{color:#62788d;font-weight:750}
.brand .domain{color:#62788d;font-weight:750;letter-spacing:-.04em}
.brand .brand-icon{display:block;flex-shrink:0;object-fit:contain;background:transparent;padding:0;border-radius:0;letter-spacing:0}

.header-choice-count{display:inline-grid;place-items:center;width:25px;height:25px;margin-left:8px;box-sizing:border-box;border-radius:50%;background:#fff9dc;color:#655124;font-size:12px;font-weight:750;vertical-align:middle;font-variant-numeric:tabular-nums}.header-choice-count[hidden]{display:none}
/* Primary search: visible on arrival, compact while browsing results. */
.finder-section{background:#e7f2fb;border:1px solid #a9cce5;border-top:4px solid #367fac;border-radius:18px;padding:28px;margin-top:4px;margin-bottom:30px;box-shadow:0 8px 24px #244e7310}
.finder-heading{margin-bottom:22px}.finder-heading .eyebrow{color:#326c99;margin:0 0 10px}.finder-heading h2{font-size:clamp(27px,3vw,36px);line-height:1.2;letter-spacing:-.03em;color:#234e75;margin:0 0 10px}.finder-heading>p:last-child{font-size:16px;line-height:1.6;color:#506b82;margin:0}
.finder-section .search-panel{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;padding:20px;border:1px solid #c3d6e5;border-radius:12px;gap:18px;box-shadow:0 3px 10px #244e7308}
.finder-section .search-field label{font-size:14px;color:#264d70;margin-bottom:9px}.finder-section .input-wrap{min-height:44px}.finder-section input[type=search]{font-size:16px;min-height:44px}.finder-section .search-field select{font-size:16px;min-height:44px}
.finder-section .search-button{background:#244f78;color:white;min-height:54px;font-size:16px;padding:14px 22px;border-radius:9px}.finder-section .search-button:hover{background:#183c5e}
.finder-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px}.finder-shortcuts>span{font-size:14px;color:#506b82;margin-right:4px}.finder-shortcuts button{border:1px solid #bdd1e2;background:#fff;color:#285783;border-radius:22px;padding:10px 14px;min-height:44px;font-size:14px;font-weight:600}.finder-shortcuts button:hover{background:#d7eafa;border-color:#6a9abd}.finder-shortcuts button:focus-visible,.finder-section .search-button:focus-visible{outline:3px solid #276e9f;outline-offset:3px}
.finder-section.is-stuck{padding:8px 12px;border-radius:0 0 12px 12px;margin-top:0}.finder-section.is-stuck .finder-heading,.finder-section.is-stuck .finder-shortcuts{display:none}.finder-section.is-stuck .search-panel{padding:10px 16px}.finder-section.is-stuck .search-field label{margin-bottom:3px}
@media(min-width:741px) and (max-width:1100px){.finder-section .search-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-section .query-field{border:0;padding-right:0}}
@media(max-width:740px){.finder-section{padding:22px 16px;margin-bottom:24px;border-radius:14px}.finder-heading h2{font-size:28px}.finder-section .search-panel{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}.finder-section .query-field{padding-right:0}.finder-shortcuts{gap:8px}.finder-shortcuts>span{flex-basis:100%;margin-bottom:2px}.finder-shortcuts button{font-size:13px;padding:9px 12px}.finder-section.is-stuck .search-panel{grid-template-columns:minmax(0,1fr) auto;padding:8px 10px}.finder-section.is-stuck{padding:6px}.finder-section.is-stuck .query-field{padding:0}.finder-section.is-stuck .input-wrap{min-height:36px}.finder-section.is-stuck input[type=search]{min-height:36px}}

/* Keep the expanded search in document flow: resizing a sticky search caused scroll anchoring loops. */
html{scroll-padding-top:24px}
.finder-section{position:relative;top:auto;z-index:15}

/* A quieter layout focused on searching and comparing offers. */
body[data-articles="home"]{background:#fff}
body[data-articles="home"] .intro{padding-top:28px;padding-bottom:24px;gap:28px}
body[data-articles="home"] .intro-copy{min-width:0}
body[data-articles="home"] .intro h1{font-size:clamp(3rem,4vw,3.5rem);font-weight:800;line-height:1.12;letter-spacing:-.035em;text-wrap:balance}
@media(min-width:741px){body[data-articles="home"] .intro #headline{font-size:clamp(20px,5.8cqw,42px);white-space:nowrap;text-wrap:nowrap}}
body[data-articles="home"] .hero-visual{height:170px;border-radius:10px}
body[data-articles="home"] .intro-message{margin:18px 0 12px;font-size:clamp(1.75rem,2.4vw,2rem);font-weight:650;line-height:1.3;letter-spacing:-.02em;color:#2b5d8d;text-wrap:pretty}
body[data-articles="home"] .intro-invitation{margin:0;font-size:clamp(1.125rem,1.6vw,1.25rem);font-weight:500;line-height:1.5;color:#526b80}
body[data-articles="home"] .intro .eyebrow{display:none}
@media(max-width:740px){body[data-articles="home"] .intro h1{font-size:clamp(2rem,6.5vw,3rem)}body[data-articles="home"] .intro-message{font-size:clamp(1.375rem,4vw,1.75rem);margin-top:16px}body[data-articles="home"] .intro-invitation{font-size:1.125rem}}
.finder-section{background:#f1f6fa;border:1px solid #d5e2ec;border-radius:12px;box-shadow:none;padding:24px;margin-bottom:0}
.finder-heading .eyebrow{display:none}.finder-heading h2{font-size:30px}.finder-section .search-panel{box-shadow:none;border-radius:8px}
.offers-section{padding-top:32px}.section-heading{border-bottom:1px solid #e5ebf0}.section-heading h2{color:#244f78}
body[data-articles="home"] .offers-section>.section-heading .eyebrow,body[data-articles="home"] .article-section>.section-heading .eyebrow{display:none}
.offer-card,.article-card{box-shadow:none!important;border-radius:12px}
.career-section{box-shadow:none;border:1px solid #d8e3ed;border-radius:12px;margin-top:0;margin-bottom:28px}
.career-summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;cursor:pointer;background:#f6f9fb}.career-summary::-webkit-details-marker{display:none}
.career-summary-label{display:block;font-size:14px;font-weight:600;color:#60768b;margin-bottom:8px}.career-summary-title{display:block;font-size:24px;line-height:1.3;color:#244f78;font-weight:750;letter-spacing:-.02em}.career-summary-description{display:block;font-size:16px;line-height:1.5;color:#60768b;margin-top:8px}
.career-summary-action{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;background:#244f78;color:#fff;border-radius:8px;font-size:15px;font-weight:700}
.career-summary:focus-visible{outline:3px solid #347daf;outline-offset:-4px}.career-close-label{display:none}details[open]>.career-summary .career-close-label{display:inline}details[open]>.career-summary .career-open-label{display:none}details[open]>.career-summary{border-bottom:1px solid #d8e3ed}
.article-load-more{text-align:center;margin-top:26px}.article-load-more:has(button[hidden]){display:none}
body[data-articles="home"] .lead-trigger{box-shadow:none;border:1px solid #d8e3ed;background:#f6f9fb;border-radius:12px}
body[data-articles="home"] .lead-trigger-kicker{display:none}
body[data-articles="home"] .button-primary{background:#244f78;color:#fff}
.footer-links{display:flex;flex-wrap:wrap;gap:18px;width:auto;margin:0;font-size:14px}.footer-links a{color:#49657e}
.footer-about{padding:30px 0 26px;border-bottom:1px solid #e2eaf0}
.footer-about h2{margin:0 0 10px;color:#244f78;font-size:20px;line-height:1.4;letter-spacing:-.02em}
.footer-about p{max-width:940px;margin:0;color:#60768b;font-size:14px;line-height:1.85}
.footer-about a{color:#315f86;text-decoration:underline;text-decoration-color:#b7cbdc;text-underline-offset:3px}
.footer-about a:hover{color:#1c466c;text-decoration-color:currentColor}
.footer-about a:focus-visible{outline:2px solid #347daf;outline-offset:3px;border-radius:2px}
@media(max-width:740px){.footer-about{padding:24px 0 22px}.footer-about h2{font-size:18px}.footer-about p{line-height:1.75}}
@media(max-width:740px){body[data-articles="home"] .intro{gap:16px}body[data-articles="home"] .hero-visual{display:none}.finder-section{padding:20px 16px}.finder-heading h2{font-size:26px}.career-summary{padding:22px;flex-direction:column;align-items:stretch;gap:18px}.career-summary-title{font-size:22px}.career-summary-action{align-self:flex-start}.footer-links{width:100%;gap:16px}}

/* The career quiz is visible directly below the search again. */
body[data-articles="home"] .career-section{margin-top:28px;margin-bottom:8px}
body[data-articles="home"] .intro+.career-section{margin-top:0}

/* Three independent catalogue departments, each showing up to nine offers. */
#offer-grid.catalog-sections{display:block}
.catalog-department{margin:0 0 42px;padding:0 0 34px;border-bottom:1px solid #dce5ed}
.department-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 20px}.department-heading h3{font-size:27px;line-height:1.3;letter-spacing:-.025em;color:#244f78;margin:0}.department-heading>span{font-size:14px;color:#627587}
.department-grid.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.catalog-department .offer-card{min-height:270px;padding:22px}.catalog-department .offer-card h3{font-size:22px}.catalog-department .school-card-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.department-program-count{font-size:14px;color:#627587;margin:12px 0 20px}.department-footer{text-align:center;margin-top:24px}.department-footer .button{border-radius:8px}.department-empty{color:#627587;font-size:16px;padding:20px 0}.catalog-department .card-bottom{margin-top:auto}.catalog-sections>.ad-banner{margin:0 0 36px}
@media(max-width:900px){.department-grid.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(max-width:540px){.department-grid.offer-grid{grid-template-columns:1fr}.department-heading{align-items:flex-start;flex-direction:column;gap:5px}.department-heading h3{font-size:25px}.catalog-department .offer-card{min-height:0}.catalog-department .card-bottom{margin-top:20px}.department-footer .button{width:100%}.department-footer:has([data-load-previous-schools]) [data-load-more-schools]{width:auto;flex:1}}

/* Inspirations interrupt the catalogue between directions and courses. */
.catalog-sections>#poznaj-kierunek{width:100%;max-width:none;margin:0;padding:6px 0 36px;border-top:0}
.catalog-sections>#poznaj-kierunek .eyebrow{display:none}

.article-display-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px;flex-shrink:0}.article-display-actions label{display:flex;align-items:center;gap:9px;color:#526b80;font-size:14px}.article-display-actions select{font:inherit;color:#244f78;background:#fff;border:1px solid #c8d7e4;border-radius:7px;padding:10px;min-height:44px}.article-display-status{font-size:13px;color:#627587;margin:16px 0 0}.article-display-status:empty{display:none}
#poznaj-kierunek>.section-heading{flex-wrap:wrap}
@media(max-width:740px){.article-display-actions{width:100%;justify-content:flex-start}.article-display-actions .article-all-link{font-size:14px}}

/* Compact location controls beside the school department heading. */
[data-department="school"]>.department-heading{flex-wrap:wrap;gap:14px 20px;align-items:center}
.school-location-controls{display:flex;align-items:flex-end;gap:12px;margin-left:auto;flex-wrap:wrap}
.school-location-controls label{display:grid;gap:6px;font-size:14px;color:#526b80;font-weight:500}
.school-location-controls select{font:inherit;color:#244f78;background:#fff;border:1px solid #c8d7e4;border-radius:7px;padding:10px 30px 10px 12px;min-height:44px;max-width:230px;width:100%}
.school-location-controls .button{min-height:44px;font-size:14px;white-space:nowrap}
@media(max-width:740px){.school-location-controls{width:100%;margin-left:0;display:grid;grid-template-columns:1fr 1fr}.school-location-controls label{min-width:0}.school-location-controls select{max-width:none;min-width:0}.school-location-controls .button{grid-column:1/-1}}

.school-location-picker{margin-left:auto;max-width:100%}.school-location-prompt{margin:0 0 10px;color:#244f78;font-size:16px;font-weight:700}.school-location-controls select:disabled{background:#f1f4f7;color:#64748b;cursor:not-allowed;opacity:1}.school-location-controls select{max-width:260px}@media(max-width:740px){.school-location-picker{width:100%;margin-left:0}.school-location-controls select{max-width:none}}

[data-view-department="school"]:disabled{background:#e5eaf0;color:#586779;border-color:#d2dbe4;box-shadow:none;cursor:not-allowed;opacity:1}

.results-career-help{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin:22px 0 28px;background:#eaf4fc;border:1px solid #ccdfef;border-radius:12px}.results-career-help[hidden]{display:none}.results-career-help h3{font-size:20px;line-height:1.35;color:#244f78;margin:0 0 8px}.results-career-help p{font-size:15px;line-height:1.6;color:#526b80;margin:0}.results-career-help .button{flex-shrink:0;font-size:14px;min-height:44px}@media(max-width:740px){.results-career-help{align-items:stretch;flex-direction:column;padding:20px;gap:16px}.results-career-help h3{font-size:18px}.results-career-help .button{text-align:center}}

.results-career-help{position:fixed;top:0;left:0;right:0;z-index:80;flex-direction:row;justify-content:center;align-items:center;gap:20px;margin:0;padding:10px 24px;border-radius:0;border-width:0 0 1px;box-shadow:0 3px 12px #244f7814}.results-career-help h3{font-size:16px;margin:0;line-height:1.4}.career-help-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:0;border-radius:6px;background:transparent;color:#244f78;font-size:28px;cursor:pointer}.career-help-close:hover{background:#d7e9f7}.career-help-close:focus-visible{outline:2px solid #244f78;outline-offset:2px}@media(max-width:740px){.results-career-help{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:10px 16px}.results-career-help[hidden]{display:none}.results-career-help h3{font-size:14px;grid-column:1;grid-row:1}.results-career-help .button{grid-column:1;grid-row:2;justify-self:start;padding:8px 14px}.career-help-close{grid-column:2;grid-row:1/3}}


/* Distinct catalogue chapters with prominent headings. */
.catalog-department{margin-bottom:56px;padding:28px 0 40px;border-top:2px solid #c4d7e7;border-bottom:0}
.catalog-department>.department-heading{margin-bottom:28px;flex-wrap:wrap;gap:14px 24px}
.catalog-department>.department-heading h3{font-size:clamp(30px,3.2vw,42px);font-weight:750;line-height:1.18;letter-spacing:-.025em;color:#244f78}
.catalog-department>.department-heading>span{font-size:15px}
[id^="department-"]{scroll-margin-top:150px}
@media(max-width:740px){.catalog-department{margin-bottom:36px;padding-top:22px;padding-bottom:24px}.catalog-department>.department-heading{margin-bottom:22px}.catalog-department>.department-heading h3{font-size:30px}}

.catalog-accessible-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.site-header{position:sticky;top:0;z-index:80;background:#fff;box-shadow:0 3px 14px #244f7810}
.site-header .header-inner{display:flex;align-items:center;flex-wrap:nowrap;gap:18px;min-height:80px;padding-top:12px;padding-bottom:12px}
.site-header .brand{flex-shrink:0;font-size:24px}.site-header #main-navigation{display:flex;align-items:center;gap:16px;margin-left:auto}.site-header #main-navigation a{font-size:14px;white-space:nowrap;padding:10px 0}
.site-header .header-help{background:#e8f2fa;color:#244f78;border:1px solid #bed5e8;border-radius:8px;padding:12px;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.header-menu-toggle{display:none}
.site-header .header-help.header-saved-note,.site-header #main-navigation .header-help.header-saved-note{position:relative;background:linear-gradient(135deg,#fff9b8,#ffed86);color:#594b24;border:1px solid #ead477;border-radius:5px 5px 14px 5px;padding:12px 18px 14px 14px;box-shadow:0 3px 6px #80661715;transform:rotate(-2deg);transition:transform .18s,box-shadow .18s}.site-header .header-saved-note::after{content:"";position:absolute;right:0;bottom:0;width:12px;height:12px;background:linear-gradient(135deg,#ddc45c 48%,#fffdf2 52%);border-radius:0 0 12px 0;pointer-events:none}.site-header .header-saved-note:hover{transform:rotate(0deg) translateY(-1px);box-shadow:0 4px 8px #80661722}.site-header .header-saved-note:focus-visible{outline:2px solid #267ca6;outline-offset:4px}@media(prefers-reduced-motion:reduce){.site-header .header-help.header-saved-note{transition:none}}
#kreator-kariery,#wyszukiwarka,#poznaj-kierunek,#oferty,[id^="department-"]{scroll-margin-top:110px}
@media(max-width:1150px){.site-header .header-inner{flex-wrap:wrap;gap:12px;min-height:72px}.site-header .header-help{margin-left:auto}.site-header .header-menu-toggle{display:block;min-height:44px;padding:10px 14px;border:1px solid #bed5e8;border-radius:8px;background:#fff;color:#244f78;font:inherit;font-size:14px;font-weight:650}.site-header #main-navigation{display:none;order:4;width:100%;margin:0;grid-template-columns:repeat(3,1fr);gap:8px}.site-header #main-navigation.is-open{display:grid}.site-header #main-navigation a{padding:12px;background:#f3f7fb;border-radius:6px;text-align:center}}
@media(max-width:540px){.site-header .header-inner{gap:8px}.site-header .brand{font-size:19px;gap:6px}.site-header .brand-icon{width:30px;height:30px;font-size:24px}.site-header .header-help{font-size:12px;padding:10px 8px;white-space:normal;max-width:115px;text-align:center}.site-header .header-menu-toggle{padding:10px}.site-header #main-navigation{grid-template-columns:repeat(2,1fr)}}

/* Compact phone header; help remains available inside the menu. */
.header-peek-toggle{display:none}
@media(max-width:740px){
  .header-peek-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:28px;padding:4px 12px;border:0;background:#fff;color:#345f88;font:inherit;font-size:14px;font-weight:650;cursor:pointer;touch-action:manipulation}
  .header-peek-toggle:focus-visible{outline:2px solid #2479ac;outline-offset:-2px}
  .site-header.is-phone-collapsed .header-inner{display:none}
  .site-header .header-menu-toggle{display:none}
  .utility-bar>.container{justify-content:flex-end;padding:5px 0}
  .utility-bar span{display:none}
  .utility-bar a{max-width:none;white-space:nowrap;font-size:12px}
  .site-header .header-inner{position:relative;min-height:58px;padding:6px 0;gap:8px}
  .site-header .header-menu-toggle{margin-left:auto;min-height:44px;padding:8px 12px}
  .site-header .header-inner>.header-help{display:none}
  .site-header #main-navigation{position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - 70px);overflow-y:auto;padding:12px;background:#fff;border:1px solid #d5e2ec;border-radius:0 0 10px 10px;box-shadow:0 8px 16px #244f781a;grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-header #main-navigation a{white-space:normal;min-height:44px;display:flex;align-items:center;justify-content:center}
  .site-header #main-navigation .header-help{grid-column:1/-1;max-width:none;margin:0;font-size:14px;padding:12px;background:#e8f2fa}
}

.catalog-department:not([data-department="school"]) .school-location-picker{width:100%;margin-left:0}.catalog-department:not([data-department="school"]) .school-location-controls{justify-content:flex-start;margin-left:0}.department-mode-note{font-size:14px;line-height:1.5;color:#627587;margin:9px 0 0}[data-view-department]:disabled{background:#e5eaf0;color:#586779;border-color:#d2dbe4;box-shadow:none;cursor:not-allowed;opacity:1}@media(max-width:740px){.catalog-department:not([data-department="school"]) .school-location-controls label:last-of-type{grid-column:1/-1}}

.catalog-department .school-card-programs h3{font-size:17px;line-height:1.4;letter-spacing:0}.catalog-department .school-card-programs{margin:16px 0 20px}

.school-results-heading{grid-column:1/-1;display:grid;gap:16px;margin:4px 0 2px}.school-results-heading h2{margin:0;color:#244f78;font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-.025em}.school-results-heading .school-location-picker{width:100%;max-width:none;margin:0}.school-results-heading .school-location-controls{justify-content:flex-start;margin-left:0}
.school-results-count{font-size:.68em;font-weight:400;color:#627587;white-space:nowrap}
.department-footer:has([data-load-more-schools]),.department-footer:has([data-load-previous-schools]){margin-top:28px;display:flex;justify-content:center;align-items:center;gap:10px}.department-footer [data-load-more-schools]{min-height:46px;padding:12px 24px}.department-footer .school-page-previous{width:46px;min-width:46px;min-height:46px;padding:8px;font-size:20px}
@media(max-width:540px){.department-footer [data-load-more-schools]{width:100%}}
.department-footer:has(.school-page-count),.catalog-pagination.school-pagination{display:grid;grid-template-columns:auto auto auto;justify-content:center;align-items:center;gap:12px 16px}.school-pagination-actions{display:flex;align-items:center;justify-content:center;gap:10px}.school-page-count,.catalog-pagination.school-pagination p{margin:0;color:#627587;font-size:14px;font-weight:400;line-height:1.5;white-space:nowrap}.catalog-pagination #shown-count{font-size:14px;font-weight:400}
@media(max-width:600px){.department-footer:has(.school-page-count),.catalog-pagination.school-pagination{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.department-footer .school-page-count,.catalog-pagination.school-pagination #shown-count{grid-column:1;grid-row:1;text-align:left}.department-footer .school-page-remaining,.catalog-pagination.school-pagination #remaining-count{grid-column:2;grid-row:1;text-align:right}.school-pagination-actions,.catalog-pagination.school-pagination .catalog-page-actions{grid-column:1/-1;grid-row:2}.school-pagination-actions [data-load-more-schools],.catalog-pagination.school-pagination #load-more{flex:1;min-width:0}}

.school-programs-disclosure{margin:16px 0 20px;border-top:1px solid #e0e8ef;padding-top:12px}.school-programs-disclosure>summary{cursor:pointer;color:#244f78;font-size:15px;font-weight:650;padding:10px 0;min-height:44px;list-style:disclosure-closed}.school-programs-disclosure[open]>summary{list-style:disclosure-open}.school-programs-disclosure>summary:focus-visible{outline:2px solid #326f9f;outline-offset:3px}.catalog-department .school-programs-disclosure .school-card-programs{margin:8px 0 0}

/* A clear, inviting entry point to the catalogue. */
.finder-section .query-field .input-wrap{min-height:58px;padding:7px 13px;gap:12px;border:2px solid #7fa9cd;border-radius:13px;background:linear-gradient(110deg,#edf5fd,#fff 85%);box-shadow:0 3px 10px #244f7810,inset 0 1px 0 #fff;transition:border-color .18s,box-shadow .18s,background .18s}
.finder-section .query-field .input-wrap:hover{border-color:#427cad;background:#f4f9fe;box-shadow:0 4px 14px #244f7819}
.finder-section .query-field .input-wrap:focus-within{border-color:#245780;background:#fff;box-shadow:0 0 0 4px #397fb51c,0 5px 16px #244f7818}
.finder-section .query-field .input-wrap svg{width:24px;height:24px;color:#285b86;stroke-width:2}
.finder-section .query-field input[type=search]{min-height:40px;padding:5px 0;color:#203f5d;font-weight:550;outline:0;box-shadow:none}
.finder-section .query-field input[type=search]::placeholder{color:#61778c;font-weight:400}
.finder-section .query-field .search-hint{margin-top:9px;padding-left:2px;color:#61778c}
.finder-section.is-stuck .query-field .input-wrap{min-height:48px;padding:3px 11px;border-radius:10px}
@media(max-width:740px){.finder-section .query-field .input-wrap{min-height:56px;padding:6px 11px;gap:9px}.finder-section .query-field input[type=search]{font-size:16px}.finder-section.is-stuck .query-field .input-wrap{min-height:46px;padding:2px 9px}.finder-section.is-stuck .query-field .input-wrap svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.finder-section .query-field .input-wrap{transition:none}}

.department-search{margin:16px 0 24px;padding:20px;border:1px solid #bdd4e7;border-radius:15px;background:linear-gradient(115deg,#edf5fc,#f9fbfe);grid-column:1/-1}
.department-search>label{display:block;margin-bottom:10px;font-weight:700;font-size:16px;color:#234f75}
.department-search-row{display:flex;gap:12px;align-items:stretch}.department-search-row .input-wrap{flex:1;min-width:0;padding:8px 14px;background:#fff;border:2px solid #83a9c9;border-radius:11px;transition:box-shadow .18s,border-color .18s}.department-search-row .input-wrap:focus-within{border-color:#285783;box-shadow:0 0 0 4px #397fb51c}.department-search-row svg{color:#285783}.department-search-row input[type=search]{font-size:16px;min-height:35px;outline:0}.department-search-row .button{white-space:nowrap;background:#244f78;color:#fff}.department-search>p{margin:9px 0 0;font-size:12px;color:#60768c}.department-search-results{grid-column:1/-1}.department-search-results .school-location-picker{margin-bottom:24px}
@media(max-width:740px){.department-search{padding:15px}.department-search-row{flex-direction:column;gap:9px}.department-search-row .button{width:100%;min-height:46px}.department-search>p{line-height:1.5}}
.department-search{position:relative}.department-search .department-suggestions{top:100%;left:20px;width:calc(100% - 40px);max-width:none;z-index:20}.department-search .department-suggestions .query-options{max-height:min(320px,40dvh)}
@media(max-width:740px){.department-search .department-suggestions{left:15px;width:calc(100% - 30px)}}

/* A quiet divider gives each programme section its own visual rhythm. */
.catalog-department[data-department=direction]>.school-location-picker,.catalog-department[data-department=course]>.school-location-picker{position:relative;margin:26px 0 28px;padding:24px 0 22px;border-top:1px solid #bed1e2;border-bottom:1px solid #dce6ee}
.catalog-department[data-department=direction]>.school-location-picker::before,.catalog-department[data-department=course]>.school-location-picker::before{content:"";position:absolute;top:-2px;left:0;width:64px;height:3px;border-radius:4px;background:linear-gradient(90deg,#244f78,#76a9cf)}
.catalog-department[data-department=direction]>.department-search,.catalog-department[data-department=course]>.department-search{margin-bottom:0;border-left:4px solid #386e9c;box-shadow:0 5px 18px #244f7809}
.department-search-results>.school-location-picker{position:relative;padding:24px 0 22px;border-top:1px solid #bed1e2;border-bottom:1px solid #dce6ee;margin-top:26px}
.department-search-results>.school-location-picker::before{content:"";position:absolute;top:-2px;left:0;width:64px;height:3px;border-radius:4px;background:linear-gradient(90deg,#244f78,#76a9cf)}
@media(max-width:740px){.catalog-department[data-department=direction]>.school-location-picker,.catalog-department[data-department=course]>.school-location-picker,.department-search-results>.school-location-picker{padding:20px 0;margin-top:22px;margin-bottom:24px}}
.department-list-title{font-size:19px;font-weight:700;color:#244f78;letter-spacing:-.02em;margin:0 0 20px;grid-column:1/-1}.department-list-title::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#75a5c9;margin-right:10px;vertical-align:middle}
.department-search-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.department-search-actions .button-secondary{background:#edf3f9;color:#285783;border:1px solid #b9ccdf}.department-search-actions .button-secondary:hover{background:#e1edf8}.department-search-actions .button-dark{background:#244f78;color:#fff}
@media(max-width:740px){.school-location-controls>.department-search-actions{grid-column:1/-1}.department-search-actions .button{flex:1;min-width:120px}}

.query-option{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:12px;row-gap:3px;align-items:center}
.query-option-pin{grid-column:1;grid-row:1 / 3;display:grid;place-items:center;width:36px;height:40px;border-radius:11px;background:linear-gradient(145deg,#3f9ad0,#1c619e);color:#fff;box-shadow:inset 0 1px 0 #ffffff55,0 3px 8px #23466918;transition:transform .18s ease,box-shadow .18s ease}
.query-option-pin svg{width:24px;height:29px;display:block}
.query-option-title,.query-option-detail{grid-column:2}
.query-option:hover .query-option-pin,.query-option[aria-selected=true] .query-option-pin{transform:translateY(-1px);box-shadow:inset 0 1px 0 #ffffff66,0 4px 10px #23466930}
@media(prefers-reduced-motion:reduce){.query-option-pin{transition:none}}
