.school-atlas{--school-ink: #18382e;--school-map: #d9e8df;color:var(--color-ink);background:var(--color-paper-light)}.school-atlas .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.school-atlas__hero{position:relative;overflow:hidden;padding:110px 0 94px;color:var(--color-white);background:var(--color-forest-deep)}.school-atlas__hero-grid{position:relative}.school-atlas__hero h1{max-width:850px;margin:16px 0 24px;font-family:var(--font-family-display);font-size:clamp(2.65rem,5.4vw,5.1rem);font-weight:500;line-height:1.16;letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:balance;word-break:auto-phrase}.school-atlas__title-part{display:inline}.school-atlas__lead{max-width:760px;margin:0;color:#ffffffc2;font-size:clamp(1rem,1.7vw,1.16rem);line-height:2;text-wrap:pretty;word-break:auto-phrase}.school-atlas__meta{margin:18px 0 0;color:#ffffff9e;font-size:.76rem}.school-atlas__workspace{padding:88px 0 120px}.school-filters{padding:34px;border:1px solid var(--color-line);background:var(--color-white);box-shadow:0 18px 60px #1f2d250f}.school-filters__header{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-filters__header h2{margin:0;font-family:var(--font-family-display);font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:500}.school-filters__header button{padding:8px 0;border:0;color:var(--color-primary);background:transparent;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.school-filters label>span,.school-filters legend{display:block;margin-bottom:9px;color:var(--color-ink-soft);font-size:.72rem;font-weight:800;letter-spacing:.08em}.school-filters__search{display:block;margin-top:26px}.school-filters input,.school-filters select{width:100%;min-height:50px;padding:0 16px;border:1px solid var(--color-line);border-radius:0;color:var(--color-ink);background:#fbfaf6;font:inherit}.school-filters input:focus,.school-filters select:focus{border-color:var(--color-primary);outline:3px solid rgba(166,76,43,.14);outline-offset:1px}.school-filters__kinds{margin:24px 0 0;padding:0;border:0}.school-filters__kinds>div{display:flex;flex-wrap:wrap;gap:8px}.school-filters__kinds button{min-height:40px;padding:8px 14px;border:1px solid var(--color-line);border-radius:999px;color:var(--color-ink-soft);background:var(--color-white);font:inherit;font-size:.8rem;cursor:pointer}.school-filters__kinds button:hover,.school-filters__kinds button.is-active{border-color:var(--school-ink);color:var(--color-white);background:var(--school-ink)}.school-filters__selects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.school-filters__selects--two{grid-template-columns:repeat(2,minmax(0,1fr))}.school-filters__location{display:flex;flex-wrap:wrap;margin-top:20px;align-items:center;gap:10px 16px}.school-filters__location button{display:inline-flex;min-height:44px;padding:0 18px;border:1px solid var(--school-ink);align-items:center;gap:8px;color:var(--school-ink);background:var(--color-white);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.school-filters__location button:hover:not(:disabled){color:var(--color-white);background:var(--school-ink)}.school-filters__location button:disabled{opacity:.6;cursor:progress}.school-filters__location p{margin:0;color:var(--color-ink-soft);font-size:.76rem;line-height:1.6}.school-municipality-nav{padding:22px 0;border-bottom:1px solid var(--color-line);background:var(--color-white)}.school-municipality-nav h2{margin:0 0 11px;color:var(--color-ink-soft);font-size:.68rem;font-weight:800;letter-spacing:.1em}.school-municipality-nav .portfolio-shell>div{display:flex;overflow-x:auto;padding-bottom:4px;gap:8px;scrollbar-width:thin}.school-municipality-nav a{flex:0 0 auto;padding:8px 12px;border:1px solid var(--color-line);color:var(--color-ink-soft);background:#fbfaf6;font-size:.75rem;font-weight:700;text-decoration:none}.school-municipality-nav a:hover,.school-municipality-nav a[aria-current=page]{border-color:var(--school-ink);color:var(--color-white);background:var(--school-ink)}.school-municipalities__intro{margin-bottom:36px}.school-municipalities__intro h2{margin:0;font-family:var(--font-family-display);font-size:clamp(2rem,4vw,3.4rem);font-weight:500;line-height:1.3;text-wrap:balance;word-break:auto-phrase}.school-municipalities__region{display:grid;grid-template-columns:minmax(100px,.18fr) minmax(0,1fr);padding:32px 0;border-top:1px solid var(--color-line);gap:30px}.school-municipalities__region>h3{margin:7px 0 0;color:var(--school-ink);font-size:.78rem;font-weight:800;letter-spacing:.1em}.school-municipalities__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.school-municipality-card{display:flex;min-width:0;min-height:220px;padding:24px;border:1px solid var(--color-line);flex-direction:column;color:inherit;background:#ffffffb3;text-decoration:none;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.school-municipality-card:hover{border-color:#18382e59;transform:translateY(-2px);box-shadow:0 16px 34px #1f2d2514}.school-municipality-card:focus-visible{border-color:var(--school-ink);outline:3px solid var(--color-primary-dark);outline-offset:3px;box-shadow:0 16px 34px #1f2d251a}.school-municipality-card:active{transform:translateY(0)}.school-municipality-card__heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.school-municipality-card__heading h3{margin:0;font-family:var(--font-family-display);font-size:clamp(1.25rem,2vw,1.65rem);font-weight:600}.school-municipality-card__heading strong{color:var(--school-ink);font-family:var(--font-family-display);font-size:2rem;font-weight:500;line-height:1}.school-municipality-card>p{margin:18px 0 24px;color:var(--color-ink-soft);font-size:.74rem;line-height:1.75;text-wrap:pretty;word-break:auto-phrase}.school-municipality-card__cta{display:flex;margin-top:auto;padding-top:16px;border-top:1px solid var(--color-line);align-items:center;justify-content:space-between;color:var(--school-ink);font-size:.78rem;font-weight:800}.school-municipality-card:hover .school-municipality-card__cta{color:var(--color-primary)}.school-map{margin-top:32px;border:1px solid var(--color-line);background:#fff;scroll-margin-top:96px}.school-map__intro{display:flex;min-height:170px;padding:30px 34px;align-items:center;justify-content:space-between;gap:30px}.school-map__intro h2{margin:0;font-family:var(--font-family-display);font-size:clamp(1.6rem,3vw,2.5rem);font-weight:500;line-height:1.35;text-wrap:balance;word-break:auto-phrase}.school-map__intro p{max-width:660px;margin:10px 0 0;color:var(--color-ink-soft);line-height:1.7}.school-map__legend{display:flex;padding:18px 34px;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);align-items:center;gap:24px;background:#f8f6f0}.school-map__legend-title{flex:0 0 auto;color:var(--color-ink-soft);font-size:.68rem;font-weight:800;letter-spacing:.08em}.school-map__legend ul{display:flex;flex-wrap:wrap;margin:0;padding:0;gap:9px 18px;list-style:none}.school-map__legend li{display:inline-flex;align-items:center;gap:7px;color:var(--color-ink);font-size:.72rem;font-weight:700;white-space:nowrap}.school-map__legend-dot{width:11px;height:11px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #18382e33}.school-map__placeholder{position:relative;height:100%;overflow:hidden;background-color:#e9eee7;background-image:linear-gradient(27deg,transparent 0 44%,rgba(255,255,255,.9) 45% 48%,transparent 49%),linear-gradient(112deg,transparent 0 58%,rgba(255,255,255,.75) 59% 62%,transparent 63%),repeating-linear-gradient(0deg,transparent 0 58px,rgba(76,106,88,.08) 59px 60px),repeating-linear-gradient(90deg,transparent 0 72px,rgba(76,106,88,.08) 73px 74px)}.school-map__river{position:absolute;top:-20%;left:61%;width:70px;height:150%;background:#b9d8dc;transform:rotate(8deg)}.school-map__pin{position:absolute;display:grid;width:48px;height:48px;border:5px solid rgba(255,255,255,.9);border-radius:50% 50% 50% 0;color:#fff;background:var(--color-primary);font-size:.8rem;font-weight:800;place-items:center;transform:rotate(-45deg);box-shadow:0 8px 18px #24322b2e}.school-map__pin>span{transform:rotate(45deg)}.school-map__pin--one{top:29%;left:26%}.school-map__pin--two{top:58%;left:49%}.school-map__pin--three{top:22%;left:76%}.school-map__frame,.school-map__canvas{width:100%;height:520px}.school-map__loading,.school-map__configuration{display:grid;height:100%;min-height:360px;padding:34px;text-align:center;background:#eef1eb;place-content:center}.school-map__configuration p{max-width:560px;margin:10px auto 0;color:var(--color-ink-soft);line-height:1.7}.school-map__info{display:grid;max-width:250px;color:#23352e;gap:7px}.school-map__info span{color:#6a756f;font-size:.68rem}.school-map__info strong{font-size:.95rem}.school-map__info p{margin:0;line-height:1.5}.school-map__info a{color:#a64c2b;font-weight:700}.school-map__cluster{display:grid;border:3px solid rgba(255,255,255,.92);border-radius:50%;color:#fff;background:var(--school-ink, #18382e);font-size:.8rem;font-weight:800;place-items:center;box-shadow:0 4px 12px #10271f4d}.school-map__origin{display:block;width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:#1a73e8;box-shadow:0 0 0 6px #1a73e838}.school-results{margin-top:72px}.school-results__heading{display:flex;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--color-line);align-items:end;justify-content:space-between;gap:20px}.school-results__heading h2{margin:0;font-family:var(--font-family-display);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:500}.school-results__heading>span{color:var(--color-ink-soft);font-size:.76rem;font-weight:700}.school-results__list{display:grid;margin:0;padding:0;border-top:1px solid var(--color-line);list-style:none}.school-results__list li{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:20px;min-height:140px;padding:25px 18px;border-bottom:1px solid var(--color-line);align-items:center;background:#ffffff85;content-visibility:auto;contain-intrinsic-size:140px;transition:background .2s ease,transform .2s ease}.school-results__list li:hover,.school-results__list li.is-selected{background:var(--color-white)}.school-results__kind{display:grid;width:42px;height:42px;border-radius:50%;color:var(--color-white);background:#496f60;font-size:.76rem;font-weight:800;place-items:center}.school-results__kind--kindergarten{background:#c97e72}.school-results__kind--elementary{background:#5e8d78}.school-results__kind--juniorHigh,.school-results__kind--compulsory{background:#3f6b78}.school-results__kind--highSchool{background:#7a638a}.school-results__kind--university,.school-results__kind--juniorCollege{background:#b5733e}.school-results__meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--color-ink-soft);font-size:.68rem;font-weight:700;letter-spacing:.04em}.school-results__body h3{margin:9px 0 7px;font-family:var(--font-family-display);font-size:clamp(1.15rem,2vw,1.45rem);font-weight:600}.school-results__body h3 a{color:inherit;text-decoration:none;text-underline-offset:4px}.school-results__body h3 a:hover,.school-results__body h3 a:focus-visible{color:var(--color-primary);text-decoration:underline}.school-results__distance{color:var(--color-primary)}.school-results__status{padding:0 6px;border:1px solid var(--color-ink-soft);color:var(--color-ink)}.school-results__list li[hidden]{display:none}.school-results__body p{display:flex;flex-wrap:wrap;margin:0;color:var(--color-ink-soft);font-size:.8rem;line-height:1.7;gap:4px 12px}.school-results__list li>button{display:inline-flex;min-height:42px;padding:0 14px;border:1px solid var(--color-line);align-items:center;gap:8px;color:var(--school-ink);background:transparent;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}.school-results__list li>button:hover{border-color:var(--school-ink);background:#edf2ee}.school-results__more{display:flex;width:min(100%,440px);min-height:54px;margin:30px auto 0;padding:0 22px;border:1px solid var(--school-ink);align-items:center;justify-content:space-between;color:var(--color-white);background:var(--school-ink);font:inherit;font-weight:800;cursor:pointer}.school-results__more span{color:#ffffffa6;font-size:.72rem}.school-results__empty{padding:70px 30px;text-align:center;background:var(--color-white)}.school-results__empty h3{margin:0 0 10px;font-family:var(--font-family-display);font-size:1.5rem}.school-results__empty p{margin:0;color:var(--color-ink-soft)}.school-notes .page-notes__body .school-notes__sources{padding-left:0;border-top:1px solid var(--color-line);list-style:none}.school-notes .school-notes__sources li{margin:0;padding:8px 0;border-bottom:1px solid var(--color-line)}.school-notes__sources span{display:block;font-size:.74rem}.school-detail>.page-notes{grid-column:1 / -1}.school-zone{display:flex;margin-top:56px;padding:30px 34px;border:1px solid var(--color-line);border-left:4px solid var(--school-ink);align-items:center;justify-content:space-between;gap:24px 40px;background:var(--color-white)}.school-zone h2{margin:0 0 8px;font-family:var(--font-family-display);font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:500}.school-zone p{max-width:640px;margin:0;color:var(--color-ink-soft);font-size:.84rem;line-height:1.8;text-wrap:pretty;word-break:auto-phrase}.school-zone p strong{color:var(--school-ink)}.school-zone a,.school-detail__actions a{display:inline-flex;flex:0 0 auto;min-height:50px;padding:0 20px;align-items:center;justify-content:space-between;gap:12px;color:var(--color-white);background:var(--school-ink);font-size:.82rem;font-weight:800;text-decoration:none}.school-zone a:hover,.school-detail__actions a:hover{background:var(--color-primary)}.school-atlas__hero--detail{padding:96px 0 72px}.school-atlas__hero--detail h1{font-size:clamp(2.1rem,4.6vw,4rem)}.school-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.42fr);gap:32px;align-items:start}.school-detail>.school-map,.school-detail>.school-results,.school-detail>.school-zone,.school-detail>.school-zone-towns,.school-detail>.related-tools{grid-column:1 / -1}.school-detail__facts{padding:32px 34px;border:1px solid var(--color-line);background:var(--color-white)}.school-detail__facts h2,.school-detail__actions h2{margin:0 0 18px;font-family:var(--font-family-display);font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:500}.school-detail__facts dl{display:grid;margin:0;border-top:1px solid var(--color-line)}.school-detail__facts dl>div{display:grid;grid-template-columns:minmax(110px,.3fr) minmax(0,1fr);padding:14px 0;border-bottom:1px solid var(--color-line);gap:16px}.school-detail__facts dt{color:var(--color-ink-soft);font-size:.74rem;font-weight:800;letter-spacing:.06em}.school-detail__facts dd{display:flex;flex-wrap:wrap;margin:0;align-items:center;gap:4px 12px;line-height:1.7;overflow-wrap:anywhere}.school-detail__facts dd a{color:var(--school-ink);font-weight:700;text-underline-offset:4px}.school-detail__notice{margin:18px 0 0;color:var(--color-ink-soft);font-size:.74rem;line-height:1.8}.school-detail__suspended{margin:18px 0 0;padding:12px 14px;border-left:3px solid var(--school-ink);background:var(--color-paper-stone);font-size:.86rem;line-height:1.8}.school-detail__actions{display:grid;padding:32px 30px;border:1px solid var(--color-line);gap:10px;background:var(--color-paper-stone)}.school-detail__map{margin-top:0}.school-detail__nearby{margin-top:24px}.school-detail__nearby-summary{margin:0 0 16px;font-size:.88rem;line-height:1.8}.school-detail__nearby .school-results__list li{grid-template-columns:46px minmax(0,1fr);min-height:0}.school-zone-towns{padding:32px 34px;border:1px solid var(--color-line);background:var(--color-white)}.school-zone-towns__intro h2{margin:0 0 12px;font-family:var(--font-family-display);font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:500;line-height:1.4;overflow-wrap:anywhere;text-wrap:balance;word-break:auto-phrase}.school-zone-towns__intro p{max-width:820px;margin:0;color:var(--color-ink-soft);font-size:.86rem;line-height:1.8;text-wrap:pretty;word-break:auto-phrase}.school-zone-towns__ward{margin-top:24px}.school-zone-towns__ward h3{margin:0 0 10px;color:var(--school-ink);font-size:.78rem;font-weight:800;letter-spacing:.06em}.school-zone-towns__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));margin:0;padding:0;gap:6px;list-style:none}.school-zone-towns__town{display:grid;min-width:0;padding:8px 11px;border:1px solid var(--color-line);align-content:start;gap:1px;background:var(--color-paper-light)}.school-zone-towns__town--partial{border-style:dashed;background:var(--color-white)}.school-zone-towns__name{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:.9rem;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.school-zone-towns__badge{padding:1px 6px;color:var(--color-white);background:var(--school-ink);font-size:.64rem;font-weight:800;letter-spacing:.04em}.school-zone-towns__reading{color:var(--color-ink-soft);font-size:.68rem;line-height:1.5;overflow-wrap:anywhere}.school-zone-towns__note{margin-top:3px;color:var(--school-ink);font-size:.7rem;line-height:1.5;overflow-wrap:anywhere}.school-zone-towns__more{margin-top:8px}.school-zone-towns__more>summary{display:inline-flex;min-height:44px;align-items:center;color:var(--school-ink);font-size:.82rem;font-weight:800;cursor:pointer;text-underline-offset:4px}.school-zone-towns__more>summary:hover{text-decoration:underline}.school-zone-towns__more>.school-zone-towns__list{margin-top:4px}.school-zone-towns__source{margin-top:26px;padding-top:18px;border-top:1px solid var(--color-line)}.school-zone-towns__source p{margin:0;color:var(--color-ink-soft);font-size:.74rem;line-height:1.8;overflow-wrap:anywhere;text-wrap:pretty;word-break:auto-phrase}.school-zone-towns__source p+p{margin-top:8px}.school-zone-towns__source a{color:var(--school-ink);font-weight:700;text-underline-offset:4px}@media(max-width:820px){.school-detail{grid-template-columns:1fr}.school-zone{align-items:flex-start;flex-direction:column}.school-filters__selects{grid-template-columns:repeat(2,minmax(0,1fr))}.school-map__intro{align-items:flex-start;flex-direction:column}.school-map__legend{align-items:flex-start;flex-direction:column;gap:10px}.school-results__list li{grid-template-columns:42px minmax(0,1fr)}.school-results__list li>button{grid-column:2;justify-self:start}.school-municipalities__region{grid-template-columns:1fr;gap:16px}.school-municipalities__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.school-atlas__hero{padding:78px 0 68px}.school-atlas__hero h1{font-size:clamp(2.15rem,11.5vw,3.15rem);line-height:1.22;letter-spacing:-.035em}.school-atlas__title-part{display:block;white-space:nowrap}.school-atlas__lead,.school-municipalities__intro h2,.school-filters__header h2,.school-map__intro h2{overflow-wrap:anywhere;word-break:auto-phrase}.school-atlas__workspace{padding:54px 0 80px}.school-filters{padding:24px 18px}.school-filters__header{align-items:flex-start;flex-direction:column;gap:8px}.school-filters__selects,.school-filters__selects--two{grid-template-columns:1fr}.school-filters__location button{width:100%;justify-content:center}.school-zone{padding:24px 20px}.school-zone a{width:100%}.school-detail__facts,.school-detail__actions,.school-zone-towns{padding:24px 20px}.school-zone-towns__list{grid-template-columns:repeat(2,minmax(0,1fr))}.school-detail__facts dl>div{grid-template-columns:1fr;gap:4px}.school-atlas__hero--detail{padding:72px 0 56px}.school-municipality-nav{padding:18px 0}.school-municipalities__intro{margin-bottom:24px}.school-municipalities__region{padding:25px 0}.school-municipalities__grid{grid-template-columns:1fr}.school-municipality-card{min-height:190px;padding:21px}.school-map__intro{min-height:0;padding:25px 20px}.school-map__intro>button{width:100%}.school-map__legend{padding:16px 20px}.school-map__legend ul{gap:8px 14px}.school-map__frame,.school-map__canvas{height:min(68vh,480px)}.school-results{margin-top:52px}.school-results__list li{padding:22px 4px;gap:13px}.school-results__body p,.school-results__body p span{display:block}}@media(prefers-reduced-motion:reduce){.school-municipality-card,.school-results__list li{transition:none}}.school-map__zones{display:flex;flex-wrap:wrap;padding:14px 34px;border-bottom:1px solid var(--color-line);align-items:center;gap:10px 26px;background:#fbfaf6}.school-map__zone-toggle{display:flex;flex-wrap:wrap;min-width:0;margin:0;padding:0;border:0;align-items:center;gap:6px}.school-map__zone-toggle legend,.school-map__zone-title{float:left;margin-right:6px;color:var(--school-ink);font-size:.74rem;font-weight:800;letter-spacing:.04em}.school-map__zone-toggle label{position:relative;display:inline-flex;cursor:pointer}.school-map__zone-toggle input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.school-map__zone-toggle span{display:inline-flex;min-height:36px;padding:0 13px;border:1px solid var(--color-line);border-radius:999px;align-items:center;color:var(--color-ink-soft);background:var(--color-white);font-size:.76rem;font-weight:700}.school-map__zone-toggle input:checked+span{border-color:var(--school-ink);color:var(--color-white);background:var(--school-ink)}.school-map__zone-toggle input:focus-visible+span{outline:3px solid #1d5fd1;outline-offset:2px}.school-map__zone-legend{display:flex;flex-wrap:wrap;margin:0;padding:0;gap:6px 16px;list-style:none}.school-map__zone-legend li{display:inline-flex;align-items:center;gap:7px;color:var(--color-ink);font-size:.72rem;font-weight:700}.school-map__zone-swatch{width:22px;height:14px;border:2px solid #2e7d5b;background:#2e7d5b38}.school-map__zone-swatch--partial{border-style:dashed;background:repeating-linear-gradient(-45deg,rgba(46,125,91,.6) 0 2px,transparent 2px 6px)}.school-map__zone-hint{flex-basis:100%;margin:0;color:var(--color-ink-soft);font-size:.74rem;line-height:1.6}.school-map__zone-hint strong{color:var(--school-ink)}.school-zone-towns__ward-link{display:inline-block;margin:-4px 0 10px;color:var(--color-primary);font-size:.76rem;font-weight:700;text-underline-offset:4px}.school-zone-towns__source .school-zone-towns__search-link{color:var(--color-primary);font-size:.82rem}.school-zone-towns__intro strong{color:var(--school-ink)}.zone-confirm{margin:0;color:var(--color-ink-soft);font-size:.82rem;line-height:1.7;overflow-wrap:anywhere;word-break:auto-phrase}.zone-confirm strong{color:var(--school-ink)}.zone-search>.zone-confirm{margin-top:22px;padding-top:16px;border-top:1px solid var(--color-line)}.zone-ward__bar+.zone-confirm{margin-top:10px}.school-zone-towns__source .zone-confirm{margin-bottom:8px;color:var(--color-ink);font-size:.84rem}.school-zone--search{margin-top:32px}.zone-hero__map{display:flex;flex-wrap:wrap;max-width:760px;margin:18px 0 0;align-items:baseline;gap:4px 14px}.zone-hero__map a{color:var(--color-white);font-size:1rem;font-weight:800;text-decoration-color:#ffffff8c;text-underline-offset:5px}.zone-hero__map a:hover{text-decoration-color:var(--color-white)}.zone-search{padding:34px;border:1px solid var(--color-line);background:var(--color-white);box-shadow:0 18px 60px #1f2d250f}.zone-search__field{display:block}.zone-search__field>span{display:block;margin-bottom:9px;color:var(--color-ink-soft);font-size:.72rem;font-weight:800;letter-spacing:.08em}.zone-search__field input{box-sizing:border-box;width:100%;min-height:56px;padding:0 18px;border:1px solid var(--color-line);border-radius:0;color:var(--color-ink);background:#fbfaf6;font:inherit;font-size:1.1rem}.zone-search__field input:focus{border-color:var(--color-primary);outline:3px solid rgba(166,76,43,.14);outline-offset:1px}.zone-search__examples{display:flex;flex-wrap:wrap;margin-top:14px;align-items:center;gap:8px}.zone-search__examples>span{color:var(--color-ink-soft);font-size:.72rem;font-weight:800}.zone-search__examples button{min-height:38px;padding:6px 14px;border:1px solid var(--color-line);border-radius:999px;color:var(--school-ink);background:var(--color-white);font:inherit;font-size:.82rem;cursor:pointer}.zone-search__examples button:hover{border-color:var(--school-ink);color:var(--color-white);background:var(--school-ink)}.zone-search__results{margin-top:26px}.zone-search__status,.zone-search__count,.zone-search__hint{margin:0 0 12px;color:var(--color-ink-soft);font-size:.86rem;line-height:1.7}.zone-search__count{color:var(--school-ink);font-weight:800}.zone-town-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:0;padding:0;gap:8px;list-style:none}.zone-town-list>li{display:flex;flex-wrap:wrap;min-width:0;padding:11px 14px;border:1px solid var(--color-line);align-content:start;align-items:baseline;gap:4px 10px;background:var(--color-paper-light);font-size:.84rem;line-height:1.5}.zone-town-list>li.s{border-style:dashed;background:var(--color-white)}.zone-town-list b{font-size:1rem;overflow-wrap:anywhere}.zone-town-list i{color:var(--color-ink-soft);font-size:.7rem;font-style:normal;overflow-wrap:anywhere}.zone-town-list .w{padding:0 7px;border:1px solid var(--school-ink);color:var(--school-ink);font-size:.66rem;font-weight:800}.zone-town-list em{padding:0 7px;color:var(--color-white);background:var(--school-ink);font-size:.66rem;font-style:normal;font-weight:800}.zone-town-list small{flex-basis:100%;color:var(--school-ink);font-size:.72rem;overflow-wrap:anywhere}.zone-town-list .p{display:flex;flex-basis:100%;flex-wrap:wrap;padding-top:4px;border-top:1px dotted var(--color-line);align-items:center;gap:2px 12px}.zone-town-list .a{flex-basis:100%;color:var(--color-ink-soft);font-size:.72rem;overflow-wrap:anywhere}.zone-town-list .e,.zone-town-list .j{display:inline-flex;min-width:0;align-items:center;gap:6px}.zone-town-list>li>.e,.zone-town-list>li>.j{flex-basis:100%}.zone-town-list .e:before,.zone-town-list .j:before{display:inline-grid;width:20px;height:20px;flex:0 0 auto;border-radius:50%;color:#fff;background:#2e7d5b;font-size:.66rem;font-weight:800;place-items:center;content:"小"}.zone-town-list .j:before{background:#256e9e;content:"中"}.zone-town-list .e a,.zone-town-list .j a{color:var(--color-primary);font-weight:700;text-underline-offset:3px;overflow-wrap:anywhere}.zone-ward__bar{display:flex;flex-wrap:wrap;margin-bottom:8px;padding:12px 0;border-bottom:1px solid var(--color-line);align-items:center;justify-content:space-between;gap:10px 20px;background:var(--color-paper-light)}.zone-ward__kana{display:flex;flex-wrap:wrap;gap:6px}.zone-ward__kana a{display:inline-grid;min-width:38px;min-height:38px;border:1px solid var(--color-line);color:var(--school-ink);background:var(--color-white);font-weight:800;text-decoration:none;place-items:center}.zone-ward__kana a:hover{color:var(--color-white);background:var(--school-ink)}.zone-ward__search{color:var(--color-primary);font-size:.84rem;font-weight:800;text-underline-offset:4px}.zone-ward__row{padding-top:28px;scroll-margin-top:110px}.zone-ward__row h2{margin:0 0 12px;color:var(--school-ink);font-family:var(--font-family-display);font-size:1.35rem;font-weight:500}.zone-ward__schools{margin-top:56px;padding:30px 34px;border:1px solid var(--color-line);background:var(--color-white)}.zone-ward__schools h2{margin:0 0 6px;font-family:var(--font-family-display);font-size:clamp(1.25rem,2.4vw,1.7rem);font-weight:500;line-height:1.4}.zone-ward__schools h3{margin:18px 0 8px;color:var(--school-ink);font-size:.78rem;font-weight:800;letter-spacing:.06em}.zone-ward__schools ul{display:flex;flex-wrap:wrap;margin:0;padding:0;gap:6px 16px;list-style:none}.zone-ward__schools a{color:var(--color-primary);font-size:.86rem;font-weight:700;text-underline-offset:3px}.zone-wards{margin-top:56px}.zone-wards h2{margin:0 0 10px;font-family:var(--font-family-display);font-size:clamp(1.4rem,2.8vw,2rem);font-weight:500;line-height:1.35}.zone-wards ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));margin:0;padding:0;gap:8px;list-style:none}.zone-wards a{display:flex;min-height:64px;padding:12px 16px;border:1px solid var(--color-line);align-items:center;justify-content:space-between;gap:10px;color:var(--color-ink);background:var(--color-white);text-decoration:none}.zone-wards a strong{font-size:1rem}.zone-wards a span{color:var(--color-ink-soft);font-size:.76rem}.zone-wards a:hover{border-color:var(--school-ink);color:var(--color-white);background:var(--school-ink)}.zone-wards a:hover span{color:#fffc}@media(max-width:560px){.school-map__zones{padding:14px 20px}.zone-search,.zone-ward__schools{padding:24px 20px}.zone-ward__kana a{min-width:34px;min-height:34px}}.zone-page .school-atlas__hero h1{font-size:clamp(2rem,4.6vw,4rem)}@media(max-width:560px){.zone-page .school-atlas__hero h1{font-size:clamp(1.7rem,8.4vw,2.5rem)}.zone-page .school-atlas__title-part{white-space:normal}}
