/* Reference pages and the shared editorial blocks on city/school pages. */
.guide-page{background:var(--bg,#111726);color:var(--text,#f6f6fa)}
.guide-header,.guide-footer{min-width:0}
.guide-header nav{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.guide-header .guide-schools-link{white-space:nowrap}
.guide-footer nav{min-width:0}
.guide-footer nav a{min-height:44px;line-height:1.45;overflow-wrap:anywhere}
#guide-root{width:100%;max-width:960px;min-width:0;margin-inline:auto;padding:20px 0 36px}
.guide-page .detail-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin:0 0 22px;color:var(--muted,#bac2d6);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.guide-page .detail-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted,#bac2d6);text-decoration:none}
.guide-page .detail-breadcrumb a:hover{color:var(--accent,#b6a5ff);text-decoration:underline;text-underline-offset:4px}
.guide-page .detail-breadcrumb [aria-current="page"]{color:var(--text,#f6f6fa)}
.seo-guide,.seo-content{max-width:960px;min-width:0;font:16px/1.75 var(--font,Arial,"Segoe UI",sans-serif);color:var(--text,#f6f6fa);overflow-wrap:anywhere}
.seo-guide{margin-inline:auto}
.seo-content{margin:44px auto 0;padding-top:32px;border-top:1px solid var(--line,#303b54)}
.seo-guide.seo-content{margin:0 auto;padding-top:0;border-top:0}
.seo-guide>header{margin-bottom:26px}
.seo-guide>header>.seo-note:first-of-type{margin:0 0 18px;padding:0;border:0;border-radius:0;background:transparent;font-size:12px}
.seo-guide .page-title{max-width:23ch;margin:0 0 22px;font:750 clamp(34px,4.5vw,58px)/1.1 var(--font,Arial,"Segoe UI",sans-serif);letter-spacing:-1.9px;overflow-wrap:anywhere}
:is(.seo-guide,.seo-content) .lead{max-width:65ch;margin:0 0 32px;color:var(--muted,#bac2d6);font-size:19px;line-height:1.65}
:is(.seo-guide,.seo-content) p{max-width:70ch;margin:0 0 18px}
:is(.seo-guide,.seo-content) section{min-width:0;margin-top:34px}
:is(.seo-guide,.seo-content) section+section{padding-top:30px;border-top:1px solid var(--line,#303b54)}
:is(.seo-guide,.seo-content) h2{max-width:32ch;margin:0 0 18px;font:700 clamp(24px,2.5vw,32px)/1.23 var(--font,Arial,"Segoe UI",sans-serif);letter-spacing:-.65px;overflow-wrap:anywhere}
:is(.seo-guide,.seo-content) h3{max-width:48ch;margin:26px 0 12px;font:700 21px/1.35 var(--font,Arial,"Segoe UI",sans-serif);letter-spacing:-.3px;overflow-wrap:anywhere}
:is(.seo-guide,.seo-content) :is(ul,ol){max-width:70ch;margin:0 0 22px;padding-left:24px}
:is(.seo-guide,.seo-content) li{padding-left:3px;margin-bottom:9px}
:is(.seo-guide,.seo-content) li::marker{color:var(--accent,#b6a5ff)}
:is(.seo-guide,.seo-content) :is(ul,ol) :is(ul,ol){margin-top:9px;margin-bottom:12px}
:is(.seo-guide,.seo-content) a{color:var(--accent,#b6a5ff);text-decoration-thickness:1px;text-underline-offset:4px}
:is(.seo-guide,.seo-content) a:hover{color:var(--text,#f6f6fa)}
:is(.seo-guide,.seo-content) strong{font-weight:700;color:var(--text,#f6f6fa)}
:is(.seo-guide,.seo-content) small{font-size:13px;line-height:1.6;color:var(--muted,#bac2d6)}
:is(.seo-guide,.seo-content) :is(section,p,ul,ol):last-child{margin-bottom:0}
.seo-table-wrap{width:100%;max-width:100%;min-width:0;margin:24px 0;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--line,#303b54);border-radius:20px;background:var(--surface,#1a2337);scrollbar-width:thin;scrollbar-color:#67708b var(--deep,#090f1d)}
.seo-table{width:100%;min-width:580px;border-collapse:collapse;text-align:left;font:14px/1.6 var(--font,Arial,"Segoe UI",sans-serif);color:var(--text,#f6f6fa);font-variant-numeric:tabular-nums}
.seo-table caption{padding:16px 20px;text-align:left;font-size:14px;font-weight:700;background:var(--deep,#090f1d);color:var(--text,#f6f6fa)}
.seo-table :is(th,td){padding:16px 20px;border-bottom:1px solid var(--line,#303b54);vertical-align:top;overflow-wrap:normal}
.seo-table th{font-weight:700}
.seo-table thead{background:var(--deep,#090f1d)}
.seo-table thead th{color:var(--accent,#b6a5ff)}
.seo-table tbody th{color:var(--text,#f6f6fa)}
.seo-table tbody td{color:var(--muted,#bac2d6)}
.seo-table tbody tr:last-child :is(th,td){border-bottom:0}
.seo-table td p{margin-bottom:10px}
.seo-table .price-main{font-size:28px;line-height:1.2;letter-spacing:-.6px;white-space:nowrap}
.seo-table .price-unknown{font-size:20px;white-space:normal;overflow-wrap:normal}
.seo-table:has(.price-main){min-width:760px;table-layout:fixed}
.seo-table:has(.price-main) tr>:first-child{width:24%}
.seo-table:has(.price-main) tr>:nth-child(2){width:31%}
.seo-table :is(p,ul,ol):last-child{margin-bottom:0}
.seo-note{max-width:70ch;margin:24px 0;padding:18px 22px;border-left:3px solid var(--accent,#b6a5ff);border-radius:0 16px 16px 0;background:var(--surface,#1a2337);color:var(--muted,#bac2d6);font-size:14px;line-height:1.7}
.seo-guides{max-width:960px;min-width:0;margin:34px auto 0;padding-top:26px;border-top:1px solid var(--line,#303b54);color:var(--text,#f6f6fa);font-family:var(--font,Arial,"Segoe UI",sans-serif);overflow-wrap:anywhere}
.seo-guides>h2{max-width:34ch;margin:0 0 12px;color:var(--text,#f6f6fa);font:700 clamp(24px,2.5vw,28px)/1.25 var(--font,Arial,"Segoe UI",sans-serif);letter-spacing:-.5px;overflow-wrap:anywhere}
.seo-guide-links,:is(ul,ol).seo-guide-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px;max-width:100%;margin:26px 0 0;padding:18px 0 0;border-top:1px solid var(--line,#303b54);list-style:none}
.seo-guides>.seo-guide-links{margin:0;padding:0;border-top:0}
.seo-guide-links a{display:inline-flex;align-items:center;min-width:0;min-height:44px;max-width:100%;color:var(--accent,#b6a5ff);font:14px/1.5 var(--font,Arial,"Segoe UI",sans-serif);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}
.seo-guide-links a:hover{color:var(--text,#f6f6fa)}
.seo-guide-links a:focus-visible{outline:3px solid var(--focus,#9884e5);outline-offset:4px;border-radius:4px}
.seo-guide-links :is(ul,ol){display:flex;flex-wrap:wrap;gap:4px 24px;max-width:100%;margin:0;padding:0;list-style:none}
.seo-guide-links li{min-width:0;max-width:100%;margin:0;padding:0;list-style:none}
.guide-page a:focus-visible,:is(.seo-guide,.seo-content) a:focus-visible,.seo-table-wrap:focus-visible{outline:3px solid var(--focus,#9884e5);outline-offset:4px;border-radius:4px}
.seo-table-wrap:focus-visible{border-radius:20px;outline-offset:3px}
@media(max-width:760px){
  .guide-header .guide-schools-link{display:none}
  .guide-header nav{flex-wrap:nowrap}
  .guide-footer nav{gap:2px 20px}
  .guide-footer nav a{font-size:12px}
  #guide-root{padding:10px 0 24px}
  .guide-page .detail-breadcrumb{gap:0 8px;margin-bottom:18px;font-size:11px}
  .seo-guide,.seo-content{font-size:16px;line-height:1.72}
  .seo-content{margin-top:32px;padding-top:26px}
  .seo-guide .page-title{margin-bottom:18px;font-size:clamp(32px,7.8vw,44px);line-height:1.12;letter-spacing:-1.1px}
  :is(.seo-guide,.seo-content) .lead{margin-bottom:26px;font-size:17px;line-height:1.65}
  :is(.seo-guide,.seo-content) section{margin-top:28px}
  :is(.seo-guide,.seo-content) section+section{padding-top:26px}
  :is(.seo-guide,.seo-content) h2{font-size:25px;letter-spacing:-.5px;margin-bottom:15px}
  :is(.seo-guide,.seo-content) h3{font-size:20px;margin-top:22px}
  .seo-table-wrap{margin:20px 0;border-radius:16px}
  .seo-table :is(th,td){padding:13px 16px}
  .seo-table caption{padding:14px 16px}
  .seo-note{margin:20px 0;padding:16px 18px;border-radius:0 14px 14px 0}
  .seo-guides{margin-top:28px;padding-top:24px}
  .seo-guides>h2{font-size:24px;line-height:1.3;margin-bottom:10px}
  .seo-guide-links,:is(ul,ol).seo-guide-links{align-items:stretch;gap:3px 18px;margin-top:22px;padding-top:14px}
  .seo-guides>.seo-guide-links{flex-direction:column;align-items:flex-start;margin:0;padding:0}
  .seo-guide-links a{padding-block:8px}
}
@media(max-width:359px){
  .guide-header .brand{font-size:21px}
  .guide-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:0}
  .seo-guide .page-title{font-size:32px;letter-spacing:-.9px}
  :is(.seo-guide,.seo-content) h2{font-size:24px}
}
