/* Shared offer header. Brand marks are replaceable image overlays, never baked into scenes. */
body[data-screen] .site-header{position:sticky;top:0;z-index:30;display:block;width:100%;max-width:none;height:auto;min-height:96px;padding:12px 16px;background:#f5f4edf5;border-bottom:1px solid #ddd4c1;backdrop-filter:blur(14px);box-shadow:0 3px 18px #3e382d06}
.header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;width:min(640px,100%);margin:auto}
.header-offer{display:flex;align-items:center;gap:28px;color:#17314f;min-width:0}
.header-offer-copy p{display:flex;align-items:center;gap:9px;margin:0}
.header-offer-copy strong{font-size:23px;letter-spacing:.03em;background:linear-gradient(transparent 60%,#e6dbc2 60%)}
.header-offer-copy>small{display:block;font-size:11px;color:#637075;margin:4px 0 0 42px}
.header-offer .weekday-badge{width:32px;height:32px;font-size:11px}
.header-offer-price{display:flex;align-items:baseline;gap:5px;white-space:nowrap;margin:0;color:#725844}
.header-offer-price>strong{font-size:48px;font-weight:900;line-height:1;color:#c93640;letter-spacing:-.055em;text-shadow:1px 2px #fff}
.header-offer-price>span{font-size:13px;font-weight:700}
body[data-screen] .site-header .header-actions{display:flex;position:static;flex:none}
body[data-screen] .header-call{display:flex;align-items:center;justify-content:center;gap:10px;min-width:175px;min-height:60px;padding:10px 16px;background:#ffcf86;color:#17314f;border:2px solid #17314f;box-shadow:0 4px 0 #17314f;font-size:18px;line-height:1.35;letter-spacing:0;white-space:nowrap;text-align:center}
body[data-screen] .header-call svg{width:20px;height:20px}
.header-call small{display:block;font-size:10px;font-weight:500;margin-top:3px;color:#65513b}
body[data-screen="home"] .massage-home{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;min-height:0;width:100%;padding:20px 16px 12px;gap:0}
body[data-screen="home"] .scene-column{display:flex;flex-direction:column;align-items:center;width:min(640px,calc(100svh - 206px));gap:16px}
body[data-screen="home"] .massage-scene{width:100%;max-width:none;min-height:0;order:0}
body[data-screen="home"] .hero-controls{width:100%;min-height:64px;max-width:none}
.scene-logo{position:absolute;right:5%;top:5%;width:20%;z-index:5;pointer-events:none;filter:drop-shadow(0 1px 2px #fff9);opacity:.88}
.scene-logo img{display:block;width:100%;height:auto}
.massage-home:not([data-entry="ready"]):not([data-entry="room"]) .scene-logo{opacity:0}
@media(max-width:900px){.guest-dialogue{min-width:0;width:64%;max-width:255px;left:5%;padding:8px 10px;font-size:11.5px}}
.game-screen{margin-top:16px}
.game-screen~#sales-page:not([hidden]){display:block}
.game-screen:has(+ #sales-page:not([hidden])){width:min(1100px,100%);margin-bottom:0}
body[data-screen="game"] .game-screen:has(+ #sales-page:not([hidden])) .game-window{border:0;border-radius:0;box-shadow:none;background:#f5f4ed}
@media(max-width:700px){
 body[data-screen] .site-header{padding:9px 14px 12px;min-height:101px}
 .header-inner{gap:10px}
 .header-offer{display:block}
 .header-offer-copy strong{font-size:15px;letter-spacing:0}
 .header-offer .weekday-badge{width:24px;height:24px;font-size:9px}
 .header-offer-copy p{gap:5px}
 .header-offer-copy>small{font-size:9px;margin:3px 0 0;white-space:nowrap}
 .header-offer-price{gap:4px;margin-top:4px;padding-left:28px}
 .header-offer-price>strong{font-size:29px}
 .header-offer-price>span{font-size:10px}
 body[data-screen] .header-call{min-width:112px;min-height:56px;padding:8px;gap:5px;font-size:14px}
 body[data-screen] .header-call svg{width:14px;height:14px}
 .header-call small{font-size:9px;letter-spacing:-.035em}
 body[data-screen="home"] .massage-home{padding:14px 16px 6px}
 body[data-screen="home"] .scene-column{width:min(480px,100%,calc(100svh - 216px));gap:13px}
 body[data-screen="home"] .hero-controls{min-height:60px}
 .massage-start{min-height:58px}
 .game-screen{margin-top:12px}
}
@media(max-width:350px){body[data-screen] .site-header{padding-inline:10px;gap:6px}.header-offer-copy strong{font-size:13px}.header-offer-copy>small{font-size:8px}body[data-screen] .header-call{min-width:105px;padding:7px 5px}.header-offer-price{padding-left:24px}}
