:root{--ink:#253b33;--green:#234b3d;--paper:#f7f6ef;--line:#d9ded4;--accent:#c9d786;--muted:#5b685f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Gothic','Meiryo',sans-serif;line-height:1.75}a{color:var(--green);text-underline-offset:5px}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}:focus-visible{outline:3px solid #9a5700;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}.skip{position:absolute;left:10px;top:-100px;background:white;padding:12px;z-index:4}.skip:focus{top:10px}.preview{padding:8px 24px;background:#eee8d8;text-align:center;font-size:12px}header{max-width:1220px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:26px 30px;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:19px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--green);border-radius:50%;font-size:22px}.brand small{display:block;font-size:9px;letter-spacing:2px}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none}main{max-width:1160px;margin:auto;padding:0 30px}section{padding:72px 0;border-bottom:1px solid var(--line)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;padding:44px 0 55px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;color:var(--green);margin:0 0 15px}h1{font-family:'Yu Mincho',serif;font-size:clamp(28px,3vw,42px);line-height:1.65;font-weight:500;letter-spacing:2px;margin:0 0 22px}h1 em{font-style:normal;color:var(--green)}.hero-copy{font-size:15px;margin:0 0 26px}.primary{background:var(--green);color:white;border:1px solid var(--green);border-radius:4px;text-decoration:none;padding:12px 22px;display:inline-flex;justify-content:center;gap:25px;align-items:center;font-size:14px;font-weight:700}.primary:hover{background:#17372b}.secondary{background:transparent;border:1px solid #a4b2a7;border-radius:4px;color:var(--ink);padding:10px 16px;font-size:13px}.secondary:hover{background:#e8edde}.micro{font-size:11px;color:var(--muted)}.muted{font-size:13px;color:var(--muted)}.route-art{height:330px;background:#e7eddf;border-radius:140px 140px 10px 10px;position:relative;overflow:hidden}.art-label{position:absolute;top:40px;left:40px;font-size:10px;letter-spacing:2px}.sun{position:absolute;width:80px;height:80px;background:#d5dea4;border-radius:50%;right:65px;top:55px}.hills{position:absolute;background:#bdcbb1;width:500px;height:240px;border-radius:50%;left:-150px;top:190px;transform:rotate(-20deg)}.hills:after{content:'';position:absolute;background:#809c7c;width:450px;height:210px;border-radius:50%;left:310px;top:-30px}.route-dot{position:absolute;background:var(--paper);border:1px solid var(--green);padding:10px 15px;border-radius:40px;box-shadow:0 8px 20px #203d3212;text-align:center;z-index:1;line-height:1.3}.route-dot small{display:block;font-size:10px;margin-top:5px}.route-dot.one{left:30px;top:115px}.route-dot.two{left:39%;top:165px}.route-dot.three{right:22px;top:220px}.art-note{position:absolute;bottom:10px;left:22px;font-size:9px;z-index:2;color:#163626;background:#e7eddfcc;padding:2px 6px}.quick-facts{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-facts p{margin:0}.quick-facts small{display:block;font-size:11px;color:var(--muted)}.quick-facts strong{font-size:17px;font-weight:500}.quick-facts a{font-size:10px}h2{font-size:25px;font-family:'Yu Mincho',serif;font-weight:500;line-height:1.5;margin:0 0 18px}h3{font-size:17px;line-height:1.55;margin:10px 0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-head a{font-size:12px}.event-controls{display:flex;gap:16px;align-items:end;margin:24px 0}.event-controls label{min-width:180px}label{display:flex;flex-direction:column;gap:5px;font-size:12px}input,select{width:100%;padding:10px 12px;border:1px solid #aab7ac;border-radius:4px;color:var(--ink);background:#fff;min-height:44px}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.event-card{background:white;border:1px solid var(--line);padding:22px;border-radius:6px;display:flex;flex-direction:column}.event-date{font-size:21px;letter-spacing:1px}.event-card h3{font-size:15px}.event-card p{font-size:12px}.event-card .secondary{margin-top:auto}.event-card a{font-size:11px;display:inline-block;margin:8px 0}.badge{font-size:10px;display:inline-block;border:1px solid #c7d1c2;padding:3px 8px;border-radius:20px;margin:0 4px 4px 0;background:#f0f4e6}.event-card .badge{align-self:start}.count{font-size:14px;border:1px solid var(--line);border-radius:30px;padding:8px 18px;white-space:nowrap}.search-panel{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:18px;background:#e8edde;padding:25px;border-radius:6px;margin-top:24px}.error{font-size:13px;color:#993600;min-height:1em}.result-head{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin:22px 0}.result-head a{text-decoration:none}#selected-count{background:var(--green);color:white;border-radius:15px;padding:2px 8px}.hotel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.hotel-card{border:1px solid var(--line);background:white;border-radius:6px;padding:26px;position:relative}.hotel-top{display:flex;justify-content:space-between;align-items:center}.hotel-number{font-size:11px;letter-spacing:2px;color:#718370}.hotel-card h3{font-size:20px;margin:15px 0}.hotel-card p{font-size:13px}.hotel-card dl{display:grid;grid-template-columns:80px 1fr;font-size:12px;gap:7px;margin:20px 0}.hotel-card dt{color:var(--muted)}.hotel-card dd{margin:0}.hotel-card details{font-size:11px;margin:14px 0}.hotel-card details ul{padding-left:17px}.hotel-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.hotel-actions .primary{font-size:12px;padding:11px 15px;gap:8px}.hotel-actions button{font-size:12px}.hotel-card .maps{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;font-size:11px}.hotel-card[data-selected=true]{border:2px solid var(--green);padding:25px}.empty{padding:30px;border:1px dashed #aab7ac;grid-column:1/-1;background:#fff}.comparison-section{background:#e8edde;margin-top:45px;padding:35px;border-radius:6px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:560px;font-size:12px;background:white;margin:22px 0}th,td{border:1px solid #ccd5c9;padding:15px;text-align:left;vertical-align:top}th{background:#f0f4e6}caption{text-align:left;margin-bottom:10px;font-size:13px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:26px}.access-card{border:1px solid var(--line);padding:28px;background:white;border-radius:6px}.icon{width:36px;height:36px;display:grid;place-items:center;background:#e9eddb;border-radius:50%;font-size:24px}.access-card p{font-size:13px}.access-card a{font-size:12px}.journey{font-weight:700}.notice{background:#eeeddf;border-left:3px solid #779062;padding:20px 25px;margin-top:25px;font-size:12px}.notice a{font-size:11px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px}.guide-grid span{font-size:12px;color:#6c8257}.guide-grid p{font-size:13px}.guide h3{font-size:16px}#policy h2{font-size:20px}#policy details{border-top:1px solid var(--line);padding:15px 0;font-size:13px}summary{cursor:pointer}footer{max-width:1160px;margin:auto;padding:40px 30px;display:flex;flex-wrap:wrap;gap:25px;align-items:center}footer p,footer a,footer small{font-size:11px}footer .brand{font-size:15px}footer small{margin-left:auto}.stale{color:#8b4500}.detail-content{max-width:800px}.detail-content dl{display:grid;grid-template-columns:130px 1fr;gap:14px}.detail-content dd{margin:0}.detail-content .maps{display:flex;gap:20px}.hotel-static-list{padding-left:20px}.hotel-static-list li{padding:12px}
@media(max-width:850px){nav{gap:16px;font-size:12px}.hero{gap:22px}.hero h1{font-size:29px}.route-art{height:300px}.quick-facts{flex-wrap:wrap}.event-grid{grid-template-columns:repeat(2,1fr)}.search-panel{grid-template-columns:repeat(2,1fr)}.hotel-card h3{font-size:17px}.hotel-card{padding:20px}.hotel-card[data-selected=true]{padding:19px}}
@media(max-width:720px){header{padding:20px;display:block}nav{margin-top:20px;justify-content:space-between;font-size:11px;gap:8px}.brand{font-size:17px}main{padding:0 20px}.preview{font-size:10px;padding:7px 15px}.hero{grid-template-columns:1fr;padding:25px 0 35px;gap:30px}.hero h1{font-size:23px;letter-spacing:1px}.route-art{height:270px;border-radius:100px 100px 6px 6px}.art-label{top:24px;left:32px}.route-dot.one{top:95px}.route-dot.two{top:140px}.route-dot.three{top:185px}.quick-facts{gap:18px}.quick-facts p{width:45%}.quick-facts strong{font-size:15px}.quick-facts p:last-of-type{width:100%}section{padding:45px 0}.section-head{align-items:start}.section-head h2{font-size:22px}.section-head a{font-size:10px;max-width:85px}.event-controls{flex-wrap:wrap;gap:12px}.event-controls label{min-width:0;flex:1}.event-controls button{width:100%}.event-grid,.hotel-grid,.access-grid,.guide-grid{grid-template-columns:1fr}.event-card{padding:20px}.search-panel{padding:16px;gap:14px}.search-panel .wide{grid-column:1/-1}.search-panel button{font-size:12px;padding:11px}.count{font-size:11px;padding:7px 10px}.comparison-section{padding:22px 16px}.hotel-card h3{font-size:19px}.hotel-actions{gap:8px}.hotel-actions .primary{flex:1}.hotel-actions .secondary{flex:1}.access-card{padding:22px}.guide-grid{gap:18px}.guide-grid article{border-top:1px solid var(--line);padding-top:20px}footer{padding:30px 20px;gap:16px}footer small{margin-left:0;width:100%}.detail-content dl{grid-template-columns:1fr}.detail-content dt{font-weight:bold}.detail-content .maps{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Stronger colors and original stadium backdrop */
:root{--ink:#102f43;--green:#005a78;--paper:#f4f9fc;--line:#bdd3df;--accent:#ffcd38;--muted:#38576a}
header{border-bottom:2px solid #d6e6ef}.brand-mark{background:var(--green);color:#fff;border-color:var(--green)}nav a{font-weight:700}
.hero{background:linear-gradient(115deg,#e3f3fb 0%,#f4f9fc 58%,#d9eef9 100%);padding:42px 26px 46px;border-radius:14px;margin-top:20px;border-bottom:4px solid #007eaa;gap:28px}
h1{font-weight:700}h1 em{color:#006d95}h2{font-weight:700}.eyebrow{color:#006487}.primary{background:#006b8f;border-color:#006b8f;box-shadow:0 3px 0 #003e58}.primary:hover{background:#004d6c}.secondary{background:#fff;border-color:#327894;color:#10405a;font-weight:700}.secondary:hover{background:#dceff9}
.route-art{height:355px;border-radius:12px;background:#1687c9 url('/stadium.svg') center/cover no-repeat;border:3px solid #fff;box-shadow:0 12px 25px #083f6026}.art-label{top:18px;left:18px;background:#073f60;color:#fff;padding:6px 10px;font-weight:700;font-size:10px;letter-spacing:1px;border-radius:4px}.art-note{left:8px;right:8px;bottom:8px;background:#073f60ed;color:#fff;font-size:9px;text-align:center;padding:5px 4px;border-radius:3px}
.search-panel,.comparison-section{background:#d8edf8;border:1px solid #9fc9df}.badge{background:#d7f0fa;color:#07506d;border-color:#97cadd;font-weight:700}.count{background:#006b8f;color:#fff;border-color:#006b8f;font-weight:700}.hotel-number{color:#006487;font-weight:700}.event-card{border-top:4px solid #0085b1}.event-date{color:#005d80;font-weight:700}.hotel-card{border-top:4px solid #007ba4}.hotel-card[data-selected=true]{border-color:#007ba4}.icon{background:#007ba4;color:#fff}.notice{background:#fff0bb;border-color:#cc8100;color:#503900}.notice a{color:#684200}th{background:#d8edf8}.quick-facts{border-color:#85b9d2}.quick-facts strong{color:#005a78;font-weight:700}footer{border-top:3px solid #006b8f}
@media(max-width:850px){.hero{padding:30px 20px;gap:20px}.route-art{height:310px}}
@media(max-width:720px){.hero{padding:24px 16px;margin-top:12px;gap:24px}.hero h1{font-size:24px}.route-art{height:260px;border-radius:10px}.art-label{top:12px;left:12px;font-size:9px}.art-note{font-size:8px}.search-panel{padding:16px}.section-head h2{font-size:22px}}
/* Original live arena atmosphere */
.route-art{background:#11143d url('/live.svg?v=stadium-20261010') center/cover no-repeat;box-shadow:0 12px 28px #30216c38;border-color:#e1dcff}.art-label{background:#432388;color:#fff;border:1px solid #a892ee}.art-note{background:#11152ff0}.hero{border-bottom-color:#7147c7;background:linear-gradient(115deg,#e3f3fb 0%,#f6f4ff 62%,#e8ddfa 100%)}.hero .primary{background:#6536ad;border-color:#6536ad;box-shadow:0 3px 0 #3a176f}.hero .primary:hover{background:#482080}
/* Digital stadium visual system */
.ad-disclosure{border:1px solid #395d82;padding:12px 16px;background:#101e34;font-size:12px;color:#d5e4f5}.booking-links{display:flex;flex-direction:column;gap:9px;min-width:0}.booking-links>a:not(.primary){font-size:11px}.hotel-actions{flex-wrap:wrap}.booking-links .primary{white-space:normal;text-align:center}
:root{--ink:#ecf4ff;--green:#71ddff;--paper:#0b1224;--line:#2b3c60;--muted:#afc2db}
body{background:#0b1224;background-image:linear-gradient(#21325033 1px,transparent 1px),linear-gradient(90deg,#21325033 1px,transparent 1px);background-size:48px 48px}header{border-color:#2d446a}.brand-mark{background:#112d4a;color:#71ddff;border-color:#45bce8}.brand,nav a{color:#d7efff}a{color:#71ddff}
.hero{background:linear-gradient(120deg,#101f38f5,#191333f5);border:1px solid #415885;border-bottom:3px solid #8d67ff;border-radius:10px;box-shadow:0 0 30px #387dff12;position:relative}.hero h1,h2{font-family:'Yu Gothic','Meiryo',sans-serif;font-weight:700}.hero h1{letter-spacing:1px}.hero h1 em{color:#71ddff;text-shadow:0 0 20px #26b9ff44}.eyebrow{color:#71ddff;font-family:Consolas,monospace;letter-spacing:2px}.route-art{border:1px solid #9678f1;border-radius:6px;box-shadow:0 0 26px #8760ff44;background-size:cover}.route-art:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#85cfff08 4px);pointer-events:none}.art-label{background:#15233be6;border:1px solid #52cffa;color:#aeeeff;font-family:Consolas,monospace;border-radius:2px}.art-note{z-index:2;background:#080e25ed;color:#d4e1f9}
.primary,.hero .primary{background:#1e4b87;color:#fff;border:1px solid #54c7ff;box-shadow:0 0 15px #33acff22;border-radius:3px}.primary:hover,.hero .primary:hover{background:#285c9e}.secondary{background:#14233d;color:#d9edff;border-color:#527293;border-radius:3px}.secondary:hover{background:#203754}input,select{background:#0d1b31;color:#ecf4ff;border-color:#627c9c}input::placeholder{color:#a5b8cd}input[type=date],input[type=month]{color-scheme:dark}.event-card,.hotel-card,.access-card,.empty{background:#101e34;border-color:#344967;box-shadow:0 6px 18px #0002}.event-card,.hotel-card{border-top-color:#52bde9}.event-date,.hotel-number,.quick-facts strong{color:#80dfff}.badge{background:#12314a;color:#b6ecff;border-color:#37617e}.count{background:#173d67;border-color:#4aacdc;color:#daf4ff}.search-panel,.comparison-section{background:#12233c;border-color:#375a80}.hotel-card[data-selected=true]{border-color:#8ce5ff;box-shadow:0 0 20px #4fbfff22}.quick-facts{border-color:#365475}.icon{background:#194870;color:#b9efff}.notice{background:#302d21;color:#f3e5b2;border-color:#e0bc50}.notice a{color:#ffe298}.error,.stale{color:#ffc58a}table{background:#101e34}th{background:#183253}th,td{border-color:#395573}footer{border-color:#416796}details{color:#d5e4f5}:focus-visible{outline-color:#ffd06b}
@media(max-width:720px){.hero h1{font-size:23px;letter-spacing:0}.hero{padding:24px 16px}.route-art{border-radius:6px}}
.event-plan{margin:24px 0;padding:22px;background:linear-gradient(120deg,#12314a,#241c45);border:1px solid #68bde6;border-left:4px solid #71ddff;border-radius:6px}.event-plan[hidden]{display:none}.event-plan h3{font-size:20px}.event-plan p{font-size:13px}.event-plan strong{color:#aeeeff}.plan-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:13px}.booking-guide{margin:22px 0;padding:20px;border:1px solid #395d82;border-radius:6px;background:#101e34;font-size:13px}.booking-guide ol{display:flex;gap:28px;flex-wrap:wrap;padding-left:22px}.hotel-actions .primary{padding:10px 14px;font-size:13px}td .primary{padding:8px 10px;font-size:12px;white-space:normal;min-width:140px}@media(max-width:720px){.booking-guide ol{display:block}.booking-guide li{margin:7px 0}.event-plan h3{font-size:17px}.hotel-actions{align-items:stretch;flex-direction:column}.hotel-actions .primary{width:100%}}
