/* OVG Hotel / Concept 04 — cinematic twilight glass, public-only.
   No external fonts, images, scripts, or network dependencies. */
:root{--ink:#f9f4fc;--accent:#f4c7aa;--paper:#171723;--card:rgba(41,34,57,.66);--muted:#e3d7e8;--line:rgba(255,255,255,.24);--soft:rgba(255,255,255,.10);--warm:#f4c7aa;--c04-gold:#ffdbb5;--c04-plum:#382842;--c04-violet:#7b618e;--c04-border:rgba(255,240,247,.29);color:var(--ink);background:#171723}
body,body[data-theme=forest],body[data-theme=clay],body[data-theme=night]{--ink:#fbf7fc;--accent:#f5c8a8;--paper:#1a1a27;--card:rgba(61,45,66,.55);--muted:#e6dae8;--line:rgba(255,255,255,.23);--soft:rgba(246,224,250,.1);--warm:#f8cc9e;color:#faf4fc;background:radial-gradient(ellipse at 85% 0%,#5a4767 0%,transparent 50%),linear-gradient(155deg,#191b2b,#30263a 72%,#161c29);min-height:100vh}
.demo-bar{background:rgba(23,19,37,.88);border-bottom:1px solid var(--c04-border);padding:11px 5%;font-size:10px;letter-spacing:2.1px;gap:15px}
.demo-bar>span{font-size:9px;letter-spacing:1.05px;color:#e6d9e5;opacity:1}
.site-header{max-width:1560px;padding:18px 4%;position:relative;z-index:5;gap:24px}
.brand{color:#fff5fa;font-size:26px;gap:10px;text-shadow:0 1px 12px #17172388}
.monogram{border-color:#fff8fa90;color:#ffe3d3}
.place{color:#eee0ec}
.header-right{gap:22px}
#locale{background:#473c53;color:#fff9fa;border:1px solid var(--c04-border);border-radius:15px;min-width:86px;padding:12px 14px;font-size:12px}
#locale option{color:#21182b;background:#fbf8fc}
.concept-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:12px;color:#f9edf8}
.concept-nav a{white-space:nowrap;opacity:.9;padding:7px 0;border-bottom:1px solid transparent}
.concept-nav a:hover,.concept-nav a:focus-visible{border-bottom-color:#ffe4ce;opacity:1}
main{max-width:1560px;padding:0 2%}
.hero{position:relative;display:flex;align-items:center;min-height:min(74vw,700px);margin-top:0;border-radius:24px;isolation:isolate;background:#403550;box-shadow:0 20px 65px #100d1ca6;overflow:hidden;border:1px solid var(--c04-border)}
.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(92deg,rgba(28,20,47,.86) 0%,rgba(36,23,45,.46) 42%,rgba(21,18,40,.12) 100%),linear-gradient(0deg,rgba(21,18,36,.78),transparent 46%)}
.hero-art{position:absolute;z-index:-2;inset:0;min-height:unset;background:#42344d url('/twilight.svg') center/cover no-repeat}
.hero-art img,.art-note{display:none}
.hero-copy{padding:clamp(42px,8vw,112px) clamp(24px,6vw,98px) 36px;min-height:min(74vw,700px);width:min(890px,80%);position:relative;align-items:flex-start;justify-content:center}
.hero .eyebrow{font-size:11px;letter-spacing:4px;color:#f8e4f1;text-shadow:0 2px 16px #120d2388}
.hero h1{font-size:clamp(44px,5.9vw,96px);line-height:1.05;letter-spacing:-1.7px;margin:22px 0 22px;text-shadow:0 5px 36px #17122670}
.hero-copy>p:not(.eyebrow){font-size:clamp(14px,1.2vw,17px);line-height:1.75;max-width:570px;color:#f3e6f1;text-shadow:0 2px 16px #151322aa}
.hero .button{margin-top:27px;border-radius:40px;font-weight:600;padding:16px 25px;font-size:13px;background:linear-gradient(125deg,#fff1d7,#e7b58e);border:1px solid #ffe3c1;color:#3c2439;box-shadow:0 6px 24px #1c17294d}
.hero .button:hover{filter:brightness(1.07)}
.hero-foot{position:absolute;bottom:32px;left:clamp(24px,6vw,98px);right:clamp(24px,6vw,98px);width:auto;color:#fae8f5;font-size:9px;letter-spacing:2px;opacity:.88}
.quick-access{position:relative;z-index:2;margin:-28px auto 50px;max-width:1180px;border:1px solid var(--c04-border);border-radius:18px;background:linear-gradient(130deg,rgba(113,94,129,.6),rgba(59,49,71,.79));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 24px 46px #0908144a;overflow:hidden}
.quick{color:#fff5ff;padding:25px 24px;min-width:0}
.quick:hover{background:#ffffff16}
.quick+button{border-left:1px solid var(--c04-border)}
.quick>span{color:#ffe3cf}
.quick small{color:#e6dce7;font-size:10px}
.quick strong{font-size:14px}
.guide{padding:0 2%}
.section-heading h2{color:#fff1fc;font-size:clamp(31px,3.8vw,53px)}
.section-heading .eyebrow{color:#f6c7d7}
.search{border-color:#d4c5df}
.search input{color:#fff9ff;font-size:13px}
.search input::placeholder{color:#e7d5e6}
.section-nav{margin:30px 0 20px;gap:10px}
.nav-pill{border-radius:30px;padding:12px 18px;font-size:12px;background:rgba(255,255,255,.07);border:1px solid var(--c04-border);color:#fff4ff;white-space:nowrap}
.nav-pill.active{background:#ffe4d0;border-color:#ffe4d0;color:#442e4b}
.experience{grid-template-columns:250px minmax(0,1fr);gap:26px;border-bottom:1px solid var(--c04-border);padding:30px 0 38px}
.experience-title>span{color:#d9b8cc}
.experience-title h3{color:#fff8ff}
.experience-title p{color:#e8dce9;font-size:12px}
.cards{gap:18px}
.experience-card{background:linear-gradient(140deg,rgba(166,132,160,.25),rgba(49,44,70,.69));border:1px solid var(--c04-border);border-radius:18px;padding:25px;box-shadow:0 16px 36px #100e2233;backdrop-filter:blur(9px);color:#fff8ff;min-height:220px}
.experience-card:hover{background:linear-gradient(140deg,rgba(186,153,177,.39),rgba(55,49,75,.75));box-shadow:0 20px 40px #0c0a233a}
.card-icon{color:#ffe0c4}
.card-detail{color:#e2cbdc}
.experience-card h4{color:#fffaff;font-size:25px}
.experience-card>p{color:#ebddea;font-size:12px}
.card-bottom{color:#ffdfca}
.closing{background:linear-gradient(130deg,rgba(118,87,129,.4),rgba(33,32,57,.6));border:1px solid var(--c04-border);border-radius:24px;margin:55px 2% 35px;box-shadow:0 8px 24px #10102122}
.closing h2,.closing p,.contact-note{color:#f8edf7}
footer{color:#e9dde9}
footer strong{color:#fffafc}
dialog{background:#292333;color:#fff8fb;border:1px solid #f4dbeb55;border-radius:22px;box-shadow:0 20px 90px #05030ab3;max-height:90vh}
.dialog-close{color:#fff1f7}
#detail-content h2{color:#fff1f9}
#detail-content .muted{color:#e5d3e7}
#detail-content .notice{background:#4c3d55;color:#fff4f5;border:1px solid #ffffff36}
.wifi-field{border-color:#ffffff35}
.wifi-field strong,.public-link{color:#fff4f9}
.toast{background:#f4dbc8;color:#271d32}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffca93;outline-offset:3px}
@media (max-width:1060px){.concept-nav{display:none}.site-header{padding:18px 5%}.hero,.hero-copy{min-height:590px}.hero-copy{width:85%;padding-left:6%;padding-right:6%}.hero h1{font-size:clamp(43px,7vw,76px)}}
@media (max-width:750px){.site-header{padding:15px 5%}.brand{font-size:20px}.monogram{width:36px;height:36px;font-size:13px}.place{display:none}main{padding:0 10px}.hero,.hero-copy{min-height:630px}.hero{border-radius:18px}.hero-copy{width:100%;padding:65px 22px 75px;justify-content:center}.hero:before{background:linear-gradient(0deg,#24182fd6 0%,#241b3a6b 55%,#201c3573 100%)}.hero-art{background-position:63% center}.hero h1{font-size:clamp(40px,11vw,62px);margin:18px 0}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-foot{left:22px;right:22px;bottom:24px;flex-wrap:wrap;font-size:8px}.quick-access{margin:-15px 8px 36px;grid-template-columns:1fr 1fr 1fr;border-radius:14px}.quick{padding:17px 11px;flex-direction:column;align-items:flex-start;gap:8px}.quick>span{font-size:23px}.quick>b{display:none}.quick strong{font-size:11px}.quick small{font-size:9px}.guide{padding:0 9px}.section-heading{align-items:stretch;flex-direction:column}.section-heading h2{font-size:36px}.search{max-width:none;width:100%;padding:8px 5px}.section-nav{margin:20px 0}.experience{grid-template-columns:1fr;gap:16px;padding:22px 0}.experience-title h3{font-size:30px}.cards{grid-template-columns:1fr 1fr;gap:9px}.experience-card{padding:15px;min-height:205px;border-radius:13px}.experience-card h4{font-size:20px}.card-top{margin-bottom:15px}.card-icon{font-size:23px}.card-detail{font-size:8px}.experience-card>p{font-size:11px}.closing{margin:35px 0 20px;border-radius:16px;padding:25px}dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}}
@media (max-width:390px){.demo-bar{font-size:8px;letter-spacing:1px}.demo-bar>span{font-size:8px}.hero h1{font-size:39px}.cards{grid-template-columns:1fr}.experience-card{min-height:150px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Keep the backdrop full-height after the original mobile illustration rules. */
.hero-art{height:auto}
.brand{flex-shrink:0;white-space:nowrap}
.header-right{flex-shrink:0}
#locale{width:146px;max-width:38vw}
.translation-status{font:11px/1.5 Arial,sans-serif!important;letter-spacing:.2px;color:#ffe5c5!important;border:1px solid #ffe1bd70;border-radius:20px;padding:7px 12px;margin-bottom:18px;background:#24182fb3}
.closing p:not(.eyebrow){color:#e9dce9}
.fallback{color:#ffe0ba}
@media(max-width:1320px){.place{display:none}}
@media(max-width:1180px){.concept-nav{display:none}}
@media(max-width:750px){.hero-art{background-position:68% center}.hero-copy{padding-bottom:90px}.hero .eyebrow{letter-spacing:2px}.hero-foot{letter-spacing:1px}.translation-status{font-size:10px!important;margin-bottom:14px}}
