/* Mirror the overview/portrait composition with JTC's own court-board language. */
.topbar .brand-logo{display:block;width:105px;height:auto;aspect-ratio:740/300;object-fit:contain;border-radius:5px;flex:none}
.hero-map{display:block;width:100%;margin:0;padding:27px 0 34px;background-color:#86d4f2;background-image:radial-gradient(#0876a526 1px,transparent 1px);background-size:22px 22px;border-bottom:3px solid var(--ink)}
.hero-map-inner{width:min(1400px,calc(100% - 80px))}
.hero-map .hero-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:19px}
.hero-kicker{display:inline-block;margin:0 0 7px;padding:5px 11px;border:1.5px solid var(--ink);border-radius:99px;background:#effaff;font-size:11px;font-weight:850;line-height:1.2;letter-spacing:.07em}
.hero-map h1{font-size:clamp(36px,4vw,57px);line-height:1.13;letter-spacing:-.055em;margin:0;font-weight:900}
.hero-map h1 em{display:inline-block;color:#005f89;font-style:normal}
.hero-intro p{font-size:17px;font-weight:700;line-height:1.45;margin:0 0 3px;white-space:nowrap}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.95fr) minmax(260px,.85fr);align-items:stretch;gap:23px}
.hero-map .hero-notebook{display:flex;flex-direction:column;min-width:0;border:3px solid var(--ink);border-radius:25px;background:#fff;box-shadow:7px 8px 0 var(--ink)}
.hero-map .court-lines{background:linear-gradient(90deg,transparent 49.8%,#c9e7f350 50%,transparent 50.2%),radial-gradient(ellipse at 50% 120%,transparent 47%,#c9e7f370 47.2%,#c9e7f370 47.8%,transparent 48%);opacity:1}
.hero-map .notebook-head{position:relative;z-index:1;background:#eaf8fe;border-bottom:2px solid var(--ink);padding:14px 20px;font-size:18px;line-height:1.3}
.hero-map .notebook-head>span:first-child{display:flex;align-items:center;gap:10px}
.hero-map .notebook-head small{display:inline-grid;place-items:center;background:var(--ink);color:#fff;border-radius:7px;padding:5px 8px;font-size:10px;letter-spacing:.03em;white-space:nowrap}
.hero-map .notebook-head .small{font-size:12px;white-space:nowrap;color:#44606f}
.hero-map .hero-parts{position:relative;z-index:1;flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;padding:15px 18px}
.hero-map .hero-part{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:126px;padding:5px 5px 7px;background:#f0f9fd;border:1.5px solid #badce9;border-radius:13px;color:var(--ink);font-size:15px;font-weight:800;line-height:1.3;text-align:center;box-shadow:2px 3px 0 #c3e1ed}
.hero-map .hero-part:nth-child(2),.hero-map .hero-part:nth-child(6){background:#fff9ed;border-color:#ecd8af;box-shadow:2px 3px 0 #e9d6b0}
.hero-map .hero-part img{display:block;width:min(100%,84px);height:82px;object-fit:contain;margin:0 auto 1px}
.hero-map .hero-part:hover{background:#d9f2fd;border-color:var(--blue);box-shadow:3px 4px 0 var(--ink);transform:translateY(-2px)}
.hero-map .hero-part:active{transform:translateY(2px);box-shadow:1px 1px 0 var(--ink)}
.hero-map .hero-part:focus-visible{outline:3px solid #005f89;outline-offset:2px}
.hero-map .notebook-foot{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 19px;border-top:1px solid #bddce9;background:#fff;font-size:13px}
.hero-map .notebook-foot b{color:#005f89;white-space:nowrap}
.hero-jack{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0;padding:18px 14px 15px;border:3px solid var(--ink);border-radius:25px;background:#c5ebfb;box-shadow:7px 8px 0 var(--ink);text-align:center;overflow:hidden}
.hero-jack-medallion{position:relative;display:flex;align-items:flex-end;justify-content:center;width:min(100%,285px);aspect-ratio:1;border:4px solid var(--ink);border-radius:50%;background:#f7fdff;overflow:hidden;flex:none}
.hero-jack-court{position:absolute;inset:0;background:radial-gradient(circle at 50% 80%,transparent 0 22%,#cceaf5 22.4% 23%,transparent 23.4% 42%,#cceaf5 42.4% 43%,transparent 43.4%),linear-gradient(90deg,transparent 49.8%,#cceaf5 50%,transparent 50.2%)}
.hero-jack-medallion img{position:relative;display:block;width:96%;height:98%;object-fit:contain;object-position:center bottom;transform:translateY(8px)}
.hero-jack-caption{display:flex;flex-direction:column;align-items:center;margin:12px 0 8px}
.hero-jack-caption b{display:inline-block;padding:7px 18px;border:2px solid var(--ink);border-radius:99px;background:var(--ink);color:#fff;font-size:20px;line-height:1.25;box-shadow:3px 4px 0 #0782b8}
.hero-jack-caption span{max-width:260px;margin-top:7px;font-size:13px;font-weight:700;line-height:1.45}
.hero-jack-link{font-size:13px;font-weight:850;text-decoration-thickness:1.5px;text-underline-offset:4px;color:#005f89}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding-right:4px}
.hero-start{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:10px 20px;border:2px solid var(--ink);border-radius:99px;background:var(--ink);color:#fff;text-decoration:none;font-size:16px;font-weight:850;line-height:1.3;box-shadow:4px 5px 0 #005f89}
.hero-start:hover{background:#005f89;transform:translateY(-1px)}
.hero-bottom>span{font-size:13px;font-weight:700}
@media(max-width:1000px){.hero-map-inner{width:calc(100% - 48px)}.hero-layout{grid-template-columns:minmax(0,1.65fr) minmax(225px,.8fr);gap:17px}.hero-map .hero-parts{gap:7px;padding:12px}.hero-map .hero-part{font-size:13px;min-height:111px}.hero-map .hero-part img{height:68px}.hero-jack-medallion{width:min(100%,235px)}.hero-map .notebook-foot span{display:none}.hero-map .notebook-head .small{display:none}}
@media(max-width:760px){.hero-map{padding:20px 0 27px}.hero-map-inner{width:calc(100% - 28px)}.hero-map .hero-intro{display:block;margin-bottom:15px}.hero-map h1{font-size:clamp(35px,7.5vw,49px)}.hero-map h1 em{display:block}.hero-intro p{font-size:14px;line-height:1.5;margin-top:7px;white-space:normal}.hero-intro p br{display:none}.hero-layout{display:grid;grid-template-columns:1fr;gap:14px}.hero-map .hero-notebook,.hero-jack{box-shadow:4px 5px 0 var(--ink);border-radius:18px}.hero-map .notebook-head{font-size:15px;padding:10px 12px}.hero-map .hero-parts{gap:5px;padding:9px 8px}.hero-map .hero-part{min-height:91px;padding:4px 2px;font-size:11px;border-radius:9px;box-shadow:1px 2px 0 #c3e1ed}.hero-map .hero-part img{height:58px;width:min(100%,62px)}.hero-map .notebook-foot{padding:8px 11px;font-size:11px}.hero-jack{display:grid;grid-template-columns:116px 1fr;grid-template-rows:auto auto;justify-items:start;column-gap:15px;align-items:center;padding:12px 14px;text-align:left}.hero-jack-medallion{grid-row:1/3;width:112px;border-width:3px}.hero-jack-caption{align-items:flex-start;margin:0}.hero-jack-caption b{font-size:17px;padding:5px 12px}.hero-jack-caption span{font-size:11px;margin-top:5px}.hero-jack-link{font-size:11px}.hero-bottom{display:flex;flex-wrap:wrap;margin-top:14px;gap:10px}.hero-start{font-size:14px;padding:8px 16px}.hero-bottom>span{font-size:11px}}
@media(max-width:650px){.topbar .brand-logo{width:74px}.topbar .brand{gap:0}.topbar nav{gap:10px;font-size:11px}.topbar nav a{white-space:nowrap}}
@media(max-width:380px){.topbar{padding-inline:12px}.topbar .brand-logo{width:66px}.topbar nav{gap:6px;font-size:10px}.hero-map .hero-part{font-size:10px;min-height:83px}.hero-map .hero-part img{height:50px}.hero-map .notebook-head{font-size:13px}.hero-map .notebook-head small{font-size:9px}.hero-map .notebook-foot b{white-space:normal}}
@media(prefers-reduced-motion:reduce){.hero-map .hero-part,.hero-start{transition:none}}
