/* Design Philosophy: Cyber-Industrial Brutalism for the esports hotel chain. Every selector reinforces dark-night immersion, red/ice-blue tactical panels, hard-edged commercial credibility, mobile-first speed, and local-only CSS. */
:root{--bg:#121212;--panel:#1b1d22;--line:#303640;--red:#FF1744;--blue:#00B0FF;--text:#f4f7fb;--muted:#aab3c2;--dark:#08090c}*{box-sizing:border-box}html{scroll-behavior:smooth}body.hotel-body{margin:0;background:radial-gradient(circle at top right,rgba(0,176,255,.14),transparent 34%),linear-gradient(180deg,#121212,#08090c);color:var(--text);font-family:"Microsoft YaHei",PingFang SC,Arial,sans-serif;line-height:1.72}a{color:inherit}img,video{max-width:100%;display:block}.hotel-header{position:sticky;top:0;z-index:20;display:flex;gap:18px;align-items:center;justify-content:space-between;padding:14px clamp(16px,4vw,54px);background:rgba(8,9,12,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,176,255,.18)}.hotel-brand{text-decoration:none;display:flex;flex-direction:column;letter-spacing:.08em}.hotel-brand span{font:700 11px Consolas,monospace;color:var(--blue)}.hotel-brand strong{font-size:18px}.hotel-header nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hotel-nav-link{text-decoration:none;padding:9px 12px;border:1px solid transparent;color:#cfd7e6;font-size:14px;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}.hotel-nav-link:hover,.hotel-nav-link[aria-current=page]{border-color:var(--red);color:#fff;background:rgba(255,23,68,.13)}.hotel-hero{display:grid;grid-template-columns:minmax(0,.84fr) minmax(300px,1.16fr);gap:clamp(22px,4vw,58px);align-items:center;min-height:74vh;padding:clamp(34px,7vw,96px) clamp(16px,5vw,72px);position:relative;overflow:hidden}.hotel-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,23,68,.18),transparent 38%,rgba(0,176,255,.13));clip-path:polygon(0 0,72% 0,54% 100%,0 100%);pointer-events:none}.hotel-hero-copy,.hotel-hero-media{position:relative;z-index:1}.hotel-kicker,.hotel-section-kicker{font:700 12px Consolas,monospace;color:var(--blue);letter-spacing:.18em;text-transform:uppercase}.hotel-hero h1{font-size:clamp(34px,6vw,70px);line-height:1.05;margin:14px 0 18px;letter-spacing:-.04em}.hotel-hero p{color:#cbd5e1;font-size:clamp(16px,2vw,20px);max-width:680px}.hotel-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hotel-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;background:var(--red);text-decoration:none;font-weight:800;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);box-shadow:0 0 28px rgba(255,23,68,.25);border:0;color:#fff}.hotel-button-ghost{background:rgba(0,176,255,.12);border:1px solid rgba(0,176,255,.45);box-shadow:none}.hotel-hero-media{border:1px solid rgba(0,176,255,.32);background:var(--panel);padding:10px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.hotel-hero-media img{aspect-ratio:16/9;object-fit:cover}.hotel-hero-media figcaption{font:12px Consolas,monospace;color:var(--muted);margin-top:8px}.hotel-section{margin:0 clamp(16px,5vw,72px) 34px;padding:clamp(22px,4vw,42px);background:linear-gradient(135deg,rgba(27,29,34,.92),rgba(12,14,18,.92));border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 50px rgba(0,0,0,.25);position:relative}.hotel-section:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 80px,rgba(0,176,255,.03) 81px);pointer-events:none}.hotel-section h2{font-size:clamp(24px,3vw,38px);line-height:1.15;margin:0 0 14px}.hotel-grid-four{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.hotel-card,.hotel-room-list article,.hotel-location-card{padding:20px;background:rgba(8,9,12,.72);border:1px solid rgba(0,176,255,.18);transition:.22s ease}.hotel-card:hover,.hotel-location-card:hover{border-color:var(--red);transform:translateY(-3px)}.hotel-split{display:grid;grid-template-columns:1fr .92fr;gap:24px;align-items:center}.hotel-split img{border:1px solid rgba(255,23,68,.35);object-fit:cover}.hotel-video video{width:100%;border:1px solid rgba(0,176,255,.3);background:#000;aspect-ratio:16/9;object-fit:cover}.hotel-calculator{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.hotel-calculator input,.hotel-form input,.hotel-form select{width:100%;margin-top:6px;padding:12px;border:1px solid rgba(0,176,255,.28);background:#090b10;color:#fff}.hotel-calculator button,.hotel-form button,#cafe-nearby{padding:12px 18px;background:var(--blue);border:0;color:#00131f;font-weight:800}.hotel-calculator output,#cafe-nearby-result{grid-column:1/-1;color:#fff;border-left:3px solid var(--red);padding:10px;background:rgba(255,23,68,.08)}.hotel-form form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hotel-room-list,.hotel-locations{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}table{width:100%;border-collapse:collapse;margin-top:14px;font-size:15px}th,td{border:1px solid rgba(255,255,255,.11);padding:12px;text-align:left}th{background:rgba(255,23,68,.13);color:#fff}.hotel-footer{padding:30px clamp(16px,5vw,72px);background:#06070a;border-top:1px solid rgba(255,255,255,.1);color:#cbd5e1}.hotel-footer p{margin:.35rem 0}@media (max-width:900px){.hotel-hero,.hotel-split{grid-template-columns:1fr}.hotel-grid-four,.hotel-room-list,.hotel-locations,.hotel-form form{grid-template-columns:1fr}.hotel-calculator{grid-template-columns:1fr}.hotel-header{align-items:flex-start;flex-direction:column}.hotel-section{margin-bottom:22px}}