:root{--brand: #1b87c0;--brand-dark: #10618d;--brand-darker: #0b4a6d;--strip: #1798d6;--text: #222831;--muted: #5f6b7a;--bg: #ffffff;--bg-alt: #f4f7fa;--border: #dde4eb;--max-w: 1440px;--radius: 8px;--shadow-sm: 0 1px 2px rgba(11, 74, 109, .07), 0 1px 4px rgba(11, 74, 109, .06);--shadow-md: 0 4px 14px rgba(11, 74, 109, .13)}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;color:var(--text);background:var(--bg);font-size:16px;line-height:1.65;-webkit-text-size-adjust:100%}body{margin:0;overflow-x:clip}img{max-width:100%;height:auto}a{color:var(--brand)}a:hover{color:var(--brand-dark)}:focus-visible{outline:3px solid rgba(27,135,192,.4);outline-offset:2px;border-radius:3px}h1,h2,h3,h4{line-height:1.25;letter-spacing:-.01em;color:var(--brand-dark)}.container{max-width:var(--max-w);margin:0 auto;padding:0 1.2rem}.btn-galis{display:inline-block;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff;font-weight:700;padding:.7rem 1.6rem;border-radius:8px;text-decoration:none;white-space:nowrap;border:none;transition:all .25s ease;box-shadow:0 4px 15px #1b87c04d}.btn-galis:hover{background:linear-gradient(135deg,var(--brand-dark) 0%,var(--brand-darker) 100%);color:#fff;box-shadow:0 6px 20px #1b87c066;transform:translateY(-2px)}.btn-galis-alt{background:var(--brand-dark)}.btn-galis-alt:hover{background:var(--brand-darker)}.btn-ghost{background:transparent;color:var(--brand);border:2px solid var(--brand);box-shadow:none}.btn-ghost:hover{background:var(--brand);color:#fff}.site-top{background:#fff}.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem;padding-bottom:.9rem;flex-wrap:wrap}.site-logo{display:flex;align-items:center;gap:.8rem;color:var(--brand-dark);text-decoration:none}.site-logo img{height:56px;width:auto}.site-logo .logo-text{display:flex;flex-direction:column;line-height:1.25}.site-logo .logo-title{font-weight:800;font-size:1.35rem;color:var(--brand-dark)}.site-logo .logo-sub{font-size:.72rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.galilej-badge img{height:44px;width:auto;display:block}.header-right{display:flex;align-items:center;gap:.9rem}.pismo-switch{display:inline-flex;background:var(--bg-alt);border:1px solid var(--border);border-radius:20px;padding:3px;gap:0;align-items:center}.pismo-sep{display:none}.pismo-btn{background:transparent;border:none;border-radius:18px;padding:.35rem .8rem;cursor:pointer;font:inherit;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--muted);transition:all .2s ease}.pismo-btn.active{background:var(--brand);color:#fff;text-decoration:none;box-shadow:0 2px 6px #1b87c04d}.pismo-btn:hover:not(.active){color:var(--text);background:#0000000a}@media (max-width: 560px){.header-right{align-items:center}}@media (max-width: 560px){.header-row{justify-content:center}.galilej-badge{display:none}}.site-nav{background:#f1f3f5;border-top:1px solid var(--border)}.site-nav .container{display:flex;justify-content:center;flex-wrap:wrap;gap:.2rem}.site-nav a{color:#33404d;text-decoration:none;padding:.55rem 1.3rem;font-size:.98rem;font-weight:600;letter-spacing:.03em}.site-nav a:hover{color:var(--brand)}.site-nav a[aria-current=page]{background:var(--brand);color:#fff}.photo-strip{border-top:3px solid var(--strip);border-bottom:6px solid var(--strip);line-height:0;background:var(--brand-darker)}.photo-strip img{width:100%;height:84px;object-fit:cover;object-position:center}@media (max-width: 700px){.photo-strip img{height:62px}}.site-footer{margin-top:4rem;background:var(--brand);color:#eaf4fa;font-size:.92rem}.site-footer a{color:#fff;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:2rem;padding:2.2rem 0 1.6rem}.footer-cols h4{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .7rem}.footer-cols ul{list-style:none;margin:0;padding:0}.footer-cols li{margin-bottom:.35rem}.footer-cols p{margin:0 0 .5rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.25);padding:.9rem 0;font-size:.85rem;color:#d3e9f5;display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:center;text-align:center}.page-title{font-size:1.75rem;margin:1.8rem 0 1rem;text-align:center}.prose{max-width:850px;margin-left:auto;margin-right:auto}.prose img{border-radius:6px}.prose h3{margin-top:2rem}.meta-line{color:var(--muted);font-size:.9rem;margin-bottom:1.4rem;text-align:center}.meta-line a{color:var(--muted)}.section-title{font-size:1.45rem;margin:2.8rem 0 1rem;display:flex;align-items:baseline;justify-content:center;gap:1rem;text-align:center}.section-title a{font-size:.88rem;font-weight:500}.hero{background:#fff;text-align:center;padding:2.4rem 0 .6rem}.hero h1{margin:0 0 .5rem;font-size:clamp(1.7rem,4vw,2.3rem)}.hero p{margin:0 auto;max-width:700px;color:var(--muted);font-size:1.05rem}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1.4rem}.stats-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 3rem;margin:1.8rem auto 0;padding:1.2rem 0 .4rem;border-top:1px solid var(--border);max-width:800px}.stat{display:flex;flex-direction:column;align-items:center}.stat b{font-size:1.5rem;font-weight:800;color:var(--brand);line-height:1.2}.stat span{font-size:.85rem;color:var(--muted)}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.3rem;margin:1.5rem 0}.news-card{border:1px solid rgba(221,228,235,.6);border-radius:12px;overflow:hidden;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;box-shadow:0 4px 16px #0b4a6d0a;transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease}.news-card:hover{box-shadow:0 10px 25px #0b4a6d1a;transform:translateY(-4px);border-color:var(--brand)}.news-card .thumb{aspect-ratio:16 / 9;background:var(--bg-alt);overflow:hidden}.news-card .thumb img{width:100%;height:100%;object-fit:cover}.news-card .body{padding:.9rem 1.05rem 1.05rem;display:flex;flex-direction:column;gap:.4rem}.news-card h3{margin:0;font-size:1.02rem;line-height:1.35}.news-card h3 a{text-decoration:none;color:var(--text)}.news-card h3 a:hover{color:var(--brand)}.news-card time{color:var(--muted);font-size:.82rem}.pagination{display:flex;gap:.4rem;justify-content:center;margin:2.2rem 0;flex-wrap:wrap}.pagination a,.pagination span{padding:.4rem .9rem;border:1px solid var(--border);border-radius:6px;text-decoration:none}.pagination a:hover{background:var(--bg-alt)}.pagination span.current{background:var(--brand);color:#fff;border-color:var(--brand)}.school-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:center;flex-direction:column}.school-head .page-title{margin-bottom:.2rem}.school-grid{display:grid;grid-template-columns:minmax(320px,1.2fr) minmax(300px,1fr);gap:1.8rem;margin:1.8rem 0}@media (max-width: 800px){.school-grid{grid-template-columns:1fr}}.school-info-table{width:100%;border-collapse:separate;border-spacing:0 .4rem;font-size:.95rem}.school-info-table th{text-align:left;padding:.8rem 1rem;color:var(--brand-dark);white-space:nowrap;vertical-align:top;width:1%;background:#e1eff899;border:1px solid rgba(184,217,238,.5);border-right:none;border-radius:8px 0 0 8px}.school-info-table td{padding:.8rem 1rem;word-break:break-word;background:#fffc;border:1px solid rgba(184,217,238,.5);border-left:none;border-radius:0 8px 8px 0}.school-map iframe{width:100%;height:400px;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.legacy-content{margin-top:2rem;border-top:1px solid var(--border);padding-top:1rem;overflow-x:auto}.map-app{margin:1.6rem 0}.map-search{position:relative;max-width:480px;margin:0 auto 1.5rem}.map-search .search-label{display:block;text-align:center;font-weight:700;color:var(--brand-dark);margin-bottom:.45rem;font-size:1.05rem}.map-search input{width:100%;padding:.7rem 1rem;font-size:1rem;border:2px solid var(--border);border-radius:6px;box-shadow:var(--shadow-sm);text-align:center}.map-search input:focus{outline:none;border-color:var(--brand)}.map-search .results{position:absolute;z-index:30;left:0;right:0;background:#fffffff2;backdrop-filter:blur(12px);border:1px solid rgba(221,228,235,.8);border-radius:0 0 8px 8px;max-height:340px;overflow-y:auto;box-shadow:0 10px 25px #0b4a6d26;text-align:left;transform-origin:top;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:scaleY(.9)}to{opacity:1;transform:scaleY(1)}}.map-search .results a{display:block;padding:.6rem 1rem;text-decoration:none;border-bottom:1px solid rgba(221,228,235,.5);transition:background .15s,padding-left .2s}.map-search .results a:hover{background:#e1eff8b3;padding-left:1.3rem}.map-search .results .place{color:var(--muted);font-size:.85rem}.map-layout{display:grid;grid-template-columns:minmax(300px,460px) 1fr;gap:2rem;align-items:start;justify-content:center}.map-layout.centered{grid-template-columns:minmax(300px,624px)}@media (max-width: 900px){.map-layout,.map-layout.centered{grid-template-columns:1fr}}.map-tabs{display:flex;gap:.4rem;margin-bottom:0;justify-content:center}.map-tabs button{padding:.5rem 1.2rem;border:1px solid var(--border);border-bottom:none;background:var(--bg-alt);border-radius:6px 6px 0 0;cursor:pointer;font:inherit;font-size:.95rem;font-weight:700;color:var(--muted)}.map-tabs button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.map-pane{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:.8rem;box-shadow:var(--shadow-sm);margin-top:.6rem}.map-pane svg{width:100%;height:auto;display:block}.map-pane path[data-region]{cursor:pointer;transition:fill .15s}.map-pane path[data-region]:hover{fill:var(--strip)!important}.map-pane path[data-region].selected{fill:var(--brand)!important}.map-back{display:none;margin:.5rem 0;background:none;border:none;color:var(--brand);cursor:pointer;font:inherit;font-size:.9rem;padding:0}.area-panel h2{margin:0 0 .2rem;font-size:1.35rem}.area-crumbs{font-size:.88rem;margin-bottom:.9rem;color:var(--muted)}.area-crumbs a{cursor:pointer}.school-table{width:100%;border-collapse:collapse;font-size:.92rem}.school-table th{text-align:left;padding:.55rem .7rem;background:var(--bg-alt);border-bottom:2px solid var(--border)}.school-table td{padding:.5rem .7rem;border-bottom:1px solid var(--border)}.school-table tr:hover td{background:#f6fbfe}.school-table a{text-decoration:none}.school-table .galis-link{white-space:nowrap}.filter-box{margin:.6rem 0}.filter-box input{padding:.45rem .8rem;border:1px solid var(--border);border-radius:6px;font:inherit;width:100%;max-width:320px}.count-note{color:var(--muted);font-size:.85rem;margin:.4rem 0 .8rem}.links-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.1rem;margin:1.5rem 0}.link-card{display:flex;align-items:center;justify-content:center;text-align:center;min-height:110px;padding:1rem 1.2rem;background:linear-gradient(145deg,#fff,#f4f7fa);border:1px solid rgba(221,228,235,.8);border-radius:12px;text-decoration:none;font-weight:700;color:var(--brand-dark);box-shadow:0 4px 12px #0b4a6d08;transition:all .3s cubic-bezier(.25,.8,.25,1)}.link-card:hover{background:linear-gradient(145deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff;box-shadow:0 8px 22px #1b87c040;transform:translateY(-4px);border-color:transparent}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.1rem;margin:1.2rem 0}.feature-card{display:flex;flex-direction:column;gap:.3rem;padding:1.05rem 1.15rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);font-size:.92rem;box-shadow:var(--shadow-sm);text-align:center;overflow:hidden}.feature-icon{width:60px;height:60px;margin:0 auto .7rem;display:flex;align-items:center;justify-content:center;background:var(--bg-alt);border-radius:50%;color:var(--brand)}.feature-icon svg{width:30px;height:30px}.feature-photo{margin:-1.05rem -1.15rem .7rem;height:120px;width:calc(100% + 2.3rem);max-width:none;object-fit:cover;object-position:center}.feature-card strong{color:var(--brand-dark)}.feature-card span{color:var(--muted)}.feature-card-link{text-decoration:none!important;color:inherit;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;cursor:pointer}.feature-card-link:hover{transform:translateY(-4px);box-shadow:0 10px 24px #2563eb1f;border-color:#3b82f6}.feature-card-link:hover strong{color:#2563eb!important;text-decoration:underline}.feature-code{font-weight:800;font-size:.78rem;color:var(--brand);letter-spacing:.08em}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.1rem;margin:1.2rem 0}.module-card{border:1px solid rgba(221,228,235,.5);border-radius:12px;padding:1.2rem 1.4rem;background:#ffffffe6;backdrop-filter:blur(10px);box-shadow:0 6px 18px #0b4a6d0d;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.module-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 12px 28px #0b4a6d14}.module-card h3{margin:0 0 .5rem;font-size:1.05rem;border-bottom:2px solid var(--brand);padding-bottom:.4rem}.module-icon-band{margin:-1.05rem -1.25rem .9rem;height:110px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff}.module-icon-band svg{width:48px;height:48px}.module-photo{margin:-1.05rem -1.25rem .9rem;height:140px;width:calc(100% + 2.5rem);max-width:none;object-fit:cover;object-position:center}.module-card ul{margin:0;padding-left:1.1rem;font-size:.9rem}.module-card li{margin-bottom:.3rem}.galis-cta{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin:2.5rem 0;padding:1.6rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius)}.contact-brand img{height:56px;width:auto;display:block;margin-bottom:.5rem}.contact-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(300px,1.2fr);gap:2rem;margin:1.5rem 0;align-items:start}@media (max-width: 800px){.contact-grid{grid-template-columns:1fr}}.contact-form{display:flex;flex-direction:column;gap:.9rem;padding:1.5rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.contact-form label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.92rem;color:var(--brand-dark)}.contact-form .opt{font-weight:400;color:var(--muted)}.contact-form input,.contact-form textarea{padding:.6rem .85rem;border:1px solid var(--border);border-radius:6px;font:inherit;background:#fff}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--brand)}.contact-form button{border:none;cursor:pointer;font-size:1rem;align-self:flex-start}.hp-field{position:absolute!important;left:-9999px!important;height:0;width:0;opacity:0}.form-note{padding:.7rem 1rem;border-radius:6px;font-size:.95rem}.form-ok{background:#e2f3e5;border:1px solid #9fd3aa;color:#1e5c2a}.form-err{background:#fbe9e7;border:1px solid #eab0a9;color:#8c2f23}.school-category-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0 auto 1.2rem;max-width:900px}.cat-filter-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-size:.92rem;font-weight:700;color:#334155;background:linear-gradient(180deg,#fff,#f1f5f9);border:1px solid #cbd5e1;border-radius:20px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 5px #0000000a;user-select:none}.cat-filter-btn:hover{border-color:#2563eb;color:#1e40af;background:linear-gradient(180deg,#fff,#e0e7ff);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb26}.cat-filter-btn.active{background:linear-gradient(135deg,#1d4ed8,#1e40af);color:#fff;border-color:#1e3a8a;box-shadow:0 4px 14px #1d4ed859}.cat-filter-btn .badge{font-size:.8rem;font-weight:600;opacity:.85}.map-search{position:relative;max-width:680px;margin:0 auto 1.8rem}.map-search-bevel{position:relative;display:flex;align-items:center;background:#fff;border-radius:12px;padding:.25rem .8rem;border:2px solid #cbd5e1;box-shadow:inset 2px 2px 4px #0f172a1a,inset -2px -2px 4px #ffffffe6,0 4px 15px #1e3a8a12;transition:all .3s ease}.map-search-bevel:hover{border-color:#2563eb;box-shadow:inset 1px 1px 3px #2563eb26,inset -1px -1px 3px #fff,0 6px 20px #2563eb33;transform:translateY(-1px)}.map-search-bevel:focus-within{border-color:#1d4ed8;box-shadow:inset 2px 2px 4px #1d4ed826,0 0 0 4px #2563eb40}.map-search-bevel .search-icon{font-size:1.1rem;margin-right:.6rem;color:#64748b}.map-search-bevel input{flex:1;border:none!important;box-shadow:none!important;background:transparent!important;padding:.65rem .4rem;font-size:1rem;font-weight:500;color:#0f172a;outline:none}.map-search .match-badge{font-size:.75rem;background:#e2e8f0;color:#1e293b;padding:.15rem .45rem;border-radius:4px;margin-left:.4rem}.map-app{background:linear-gradient(135deg,#f0f6ff,#e2edfd,#f8fafc);border:1px solid #cbd5e1;border-radius:16px;padding:1.8rem 1.4rem;box-shadow:0 10px 30px -5px #1e3a8a14}.map-pane{background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:1rem;box-shadow:0 4px 16px #0f172a0d}.map-pane path[data-region]{cursor:pointer;transition:fill .2s ease,filter .2s ease}.map-pane path[data-region]:hover,.map-pane path[data-region].selected{fill:#1d4ed8!important;filter:drop-shadow(0 2px 6px rgba(29,78,216,.4))}.map-pane svg text.svg-text-hover,.map-pane svg text:hover{fill:#fff!important;font-weight:700!important;text-shadow:0 1px 3px rgba(0,0,0,.7)!important;transition:fill .15s ease}.map-hover-popover{position:fixed;z-index:999;pointer-events:auto;background:#fffffff5;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid #93c5fd;border-radius:10px;padding:.6rem .9rem;box-shadow:0 10px 25px -3px #1e3a8a40;font-size:.88rem;display:flex;flex-direction:column;gap:.3rem;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.map-hover-popover .popover-title{font-weight:800;color:#1e3a8a;font-size:.92rem}.map-hover-popover .popover-badge{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:6px;padding:.35rem .7rem;font-size:.85rem;font-weight:600;cursor:pointer;text-align:center;transition:transform .15s ease}.map-hover-popover .popover-badge:hover{transform:scale(1.03);background:#1e40af}.map-hover-popover .popover-badge span{font-weight:400;opacity:.9}.seo-info-block{margin:3rem 0 1rem;padding:2.2rem 1.8rem;background:#fff;border:1px solid #cbd5e1;border-radius:14px;box-shadow:0 4px 20px #0f172a0a}.seo-info-block h1{font-size:1.6rem;color:#1e3a8a;margin-top:0;margin-bottom:.8rem;border-bottom:2px solid #3b82f6;padding-bottom:.5rem}.seo-info-block h2{font-size:1.25rem;color:#1e40af;margin-top:1.6rem;margin-bottom:.5rem}.seo-info-block p{color:#334155;font-size:.98rem;line-height:1.7;margin-bottom:.8rem}.school-page-container{padding-top:1.2rem;padding-bottom:3rem}.school-hero-card{background:linear-gradient(135deg,#0f172a,#1e3a8a,#1d4ed8);color:#fff;border-radius:20px;padding:2.2rem 2rem;box-shadow:0 14px 35px -5px #1e3a8a59;margin-bottom:2rem;position:relative;overflow:hidden}.school-hero-card:before{content:"";position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,#3b82f640,#fff0 70%);pointer-events:none}.hero-badges{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem}.hero-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:20px;font-size:.82rem;font-weight:700;letter-spacing:.03em;backdrop-filter:blur(8px)}.badge-type{background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.3)}.badge-location{background:#3b82f64d;color:#93c5fd;border:1px solid rgba(147,197,253,.4)}.school-hero-title{font-size:clamp(1.6rem,3.5vw,2.3rem);font-weight:800;color:#fff!important;margin:0 0 .4rem;line-height:1.25}.school-hero-sub{color:#cbd5e1;font-size:.98rem;margin:0 0 1.6rem;max-width:750px}.school-action-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.btn-hero-action{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.2rem;border-radius:10px;font-size:.92rem;font-weight:700;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000026}.btn-galis-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff!important;box-shadow:0 6px 18px #0ea5e966}.btn-galis-primary:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0ea5e98c}.btn-call{background:#22c55e;color:#fff!important}.btn-call:hover{background:#16a34a;transform:translateY(-2px)}.btn-email{background:#f59e0b;color:#fff!important}.btn-email:hover{background:#d97706;transform:translateY(-2px)}.btn-website{background:#ffffff26;color:#fff!important;border:1px solid rgba(255,255,255,.3)}.btn-website:hover{background:#ffffff40;transform:translateY(-2px)}.school-details-layout{display:grid;grid-template-columns:1fr 380px;gap:1.8rem;align-items:start}@media (max-width: 960px){.school-details-layout{grid-template-columns:1fr}}.school-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:1.4rem}.school-card{background:#fff;border:1px solid #cbd5e1;border-radius:14px;padding:1.4rem 1.5rem;box-shadow:0 4px 18px #0f172a0d;transition:transform .25s ease,box-shadow .25s ease}.school-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0f172a17;border-color:#93c5fd}.school-card .card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding-bottom:.6rem;border-bottom:2px solid #f1f5f9}.card-icon-box{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0}.card-icon-box.blue{background:#dbeafe;color:#1d4ed8}.card-icon-box.green{background:#dcfce7;color:#15803d}.card-icon-box.purple{background:#f3e8ff;color:#7e22ce}.card-icon-box.orange{background:#ffedd5;color:#c2410c}.card-icon-box.map-icon{background:#e0f2fe;color:#0369a1}.school-card h2{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0}.school-card .card-body{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem;font-size:.93rem}.info-row .label{color:#64748b;font-size:.88rem;white-space:nowrap}.info-row .value{color:#0f172a;text-align:right;word-break:break-word}.font-bold{font-weight:700}.font-medium{font-weight:600}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.highlight-blue{color:#1d4ed8!important;font-weight:700}.link-call{color:#16a34a!important;font-weight:700;text-decoration:none}.link-call:hover{text-decoration:underline}.link-email{color:#2563eb!important;text-decoration:none}.link-email:hover{text-decoration:underline}.link-website{color:#2563eb!important;font-weight:700;text-decoration:none;word-break:break-all}.link-website:hover{text-decoration:underline;color:#1d4ed8!important}.btn-pill-link{display:inline-block;background:#f1f5f9;color:#2563eb!important;font-weight:600;font-size:.84rem;padding:.3rem .7rem;border-radius:6px;text-decoration:none;border:1px solid #cbd5e1;transition:all .2s ease}.btn-pill-link:hover{background:#2563eb;color:#fff!important;border-color:#2563eb}.btn-pill-link.mail{color:#d97706!important}.btn-pill-link.mail:hover{background:#d97706;color:#fff!important;border-color:#d97706}.social-badges-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding-top:.6rem;border-top:1px dashed #e2e8f0}.social-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:6px;font-size:.82rem;font-weight:700;color:#fff!important;text-decoration:none;transition:transform .2s ease,opacity .2s ease}.social-btn:hover{transform:translateY(-1px);opacity:.9}.social-btn.facebook{background:#1877f2}.social-btn.instagram{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.school-map-card{background:#fff;border:1px solid #cbd5e1;border-radius:14px;padding:1.4rem;box-shadow:0 4px 18px #0f172a0d;display:flex;flex-direction:column}.school-map-card .card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.school-map-card h2{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0}.map-wrapper{border-radius:10px;overflow:hidden;border:1px solid #cbd5e1;line-height:0;box-shadow:inset 0 2px 4px #0000000f}.map-wrapper iframe{width:100%;height:360px;border:none}.map-footer{margin-top:.8rem;font-size:.88rem;color:#475569;background:#f8fafc;padding:.5rem .8rem;border-radius:8px;border:1px solid #e2e8f0;text-align:center}.legacy-content-box{margin-top:2.5rem;background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden}.legacy-summary{padding:1rem 1.4rem;font-weight:700;color:#334155;background:#f8fafc;cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none}.legacy-summary:hover{background:#f1f5f9;color:#1e40af}.legacy-body{padding:1.5rem 1.8rem;border-top:1px solid #e2e8f0;line-height:1.7;color:#334155;overflow-x:auto}.cat-filter-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin:1.2rem 0 2.2rem}.cat-pill{display:inline-flex;align-items:center;padding:.45rem 1.1rem;border-radius:50px;background:var(--bg-alt, #f4f7fa);border:1px solid var(--border, #dde4eb);color:var(--muted, #5f6b7a);font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease-in-out;box-shadow:0 1px 3px #00000008}.cat-pill:hover{background:#fff;border-color:var(--brand, #1b87c0);color:var(--brand, #1b87c0);transform:translateY(-2px);box-shadow:0 4px 10px #1b87c02e}.cat-pill.active{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);border-color:var(--brand-dark, #10618d);color:#fff;font-weight:700;box-shadow:0 4px 12px #1b87c059}.news-source{display:inline-block;font-size:.78rem;font-weight:700;color:var(--brand, #1b87c0);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.3rem}.btn-news-external{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;font-weight:600;color:var(--brand, #1b87c0);background:var(--bg-alt, #f4f7fa);border:1px solid var(--border, #dde4eb);padding:.3rem .75rem;border-radius:6px;text-decoration:none;transition:all .2s ease;margin-top:.4rem}.btn-news-external:hover{background:var(--brand, #1b87c0);color:#fff;border-color:var(--brand, #1b87c0);box-shadow:0 2px 6px #1b87c040}
