/* Finalist art direction: real rooms, original lettering, one clear action. */
body[data-design] { --surface:#201216; --muted:#d1c1c3; font-size:17px; line-height:1.65; }
body[data-design] .bar { min-height:88px; height:88px; }
body[data-design] .site-header { background:#201216; }
body[data-design="tattoo"] .site-header { background:#ac1928; }
body[data-design] .book-short { display:none; }
body[data-design] .site-nav a { position:relative; }
body[data-design] .site-nav a[aria-current="location"]::after { content:""; position:absolute; height:2px; bottom:4px; left:0; right:0; background:#ff8f96; }
body[data-design] section[id] { scroll-margin-top:100px; }
body[data-design] .btn { transition:background 160ms ease,transform 160ms ease; }
body[data-design] .btn:hover { transform:translateY(-2px); }
body[data-design] .btn:focus-visible,body[data-design] button:focus-visible,body[data-design] a:focus-visible { outline:3px solid #ffc6ca; outline-offset:5px; }
body[data-design] .hero-detail,body[data-design] .hero .poster,body[data-design] .hero .rule,body[data-design] .ink-art { display:none; }
body[data-design] .hero .lede { max-width:31rem; font-size:18px; line-height:1.65; }
body[data-design] .hero-actions { gap:16px 26px; }
body[data-design] .hero-actions .btn { min-height:54px; padding:13px 24px; }
body[data-design] .hero .text-link { text-transform:none; letter-spacing:0; font-weight:600; }
body[data-design] .dialog-bar button { min-width:44px; min-height:44px; }
body[data-design] .cap { color:#e1d4d5; }
body[data-design] .mosaic { grid-template-rows:none; }
body[data-design] .mosaic a { height:100%; overflow:hidden; }
body[data-design] .mosaic img { height:100%; width:100%; object-fit:cover; }
body[data-design="tattoo"] .contact h2 { line-height:1.08; }
.finalist-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 28px; padding:20px 24px; background:#25151b; border-top:1px solid #66414c; font:14px/1.4 Outfit,sans-serif; }
.finalist-nav a { display:inline-flex; min-height:44px; align-items:center; color:#ddc7cd; text-underline-offset:5px; }
.finalist-nav a[aria-current="page"] { color:#fff4ef; text-decoration-thickness:2px; }

body[data-design="prostor"] h2 { font-weight:600; font-size:clamp(36px,4.1vw,64px); line-height:1.08; letter-spacing:-.035em; }
body[data-design="prostor"] .hero-grid { min-height:min(820px,calc(100svh - 88px)); }
body[data-design="prostor"] .hero-copy { max-width:38rem; padding-block:58px 140px; }
body[data-design="prostor"] .hero h1 { font-weight:600; font-size:clamp(62px,6.6vw,96px); line-height:1.02; letter-spacing:-.045em; }
body[data-design="prostor"] .hero .kicker { font-size:25px; margin-bottom:24px; }
body[data-design="prostor"] .hero-visual::after { background:linear-gradient(90deg,rgba(24,12,17,.93),rgba(24,12,17,.60) 36%,rgba(24,12,17,.06) 70%),linear-gradient(0deg,rgba(24,12,17,.65),transparent 25%); }
body[data-design="prostor"] .hero-photo { object-position:62% 48%; filter:none; }
body[data-design="prostor"] .hero-selector { position:absolute; z-index:4; bottom:34px; right:max(40px,calc((100vw - 1328px)/2)); min-width:320px; color:#fff6ef; }
.hero-selector[hidden] { display:none!important; }
.scene-caption { font-size:13px; letter-spacing:.08em; margin:0 0 10px; text-shadow:0 1px 3px #180c11; }
.scene-options { display:flex; gap:4px; padding:5px; border:1px solid #b9969b; background:#28171dee; }
.scene-options button { flex:1; min-height:44px; padding:8px 18px; font:600 14px Outfit,sans-serif; border:0; color:#efdadf; cursor:pointer; background:transparent; }
.scene-options button[aria-pressed="true"] { background:#f5e9e3; color:#2c1720; }
.scene-options button:hover { box-shadow:inset 0 -2px #ff8a93; }
body[data-design="prostor"] .gym { background:linear-gradient(160deg,#54202a,#2d1720); }
body[data-design="prostor"] .gym h2 { max-width:21ch; margin-bottom:40px; }
body[data-design="prostor"] .gym .spread-main img { height:clamp(380px,39vw,600px); object-position:center 56%; box-shadow:none; }
body[data-design="prostor"] .gym .spread-side img { box-shadow:none; }
body[data-design="prostor"] .band { background:#21151b; }
body[data-design="prostor"] .band-head { display:grid; grid-template-columns:1.1fr 1fr; column-gap:64px; max-width:none; align-items:end; }
body[data-design="prostor"] .band-head .label { grid-column:1/-1; }
body[data-design="prostor"] .band-head p:last-child { margin:0; max-width:440px; }
body[data-design="prostor"] .panel-grid { grid-template-columns:.85fr 1.15fr; align-items:center; }
body[data-design="prostor"] .panel-photo img { aspect-ratio:4/3; max-height:520px; object-position:50% 46%; }
body[data-design="prostor"] .panel-copy h3 { font-weight:600; }
body[data-design="prostor"] .gallery { background:#331b23; padding-bottom:64px; }
body[data-design="prostor"] .gallery h2 { font-size:clamp(36px,3.3vw,48px); }
body[data-design="prostor"] .open { background:linear-gradient(145deg,#281820,#48202a); }
body[data-design="prostor"] .cafe { grid-template-columns:1.2fr 1fr; gap:64px; margin-top:72px; }
body[data-design="prostor"] .cafe img { height:440px; object-fit:cover; box-shadow:none; border:0; }
body[data-design="prostor"] .cafe h3 { font-size:32px; line-height:1.2; font-weight:600; }
body[data-design="prostor"] .contact { background:linear-gradient(120deg,#751c2c,#421820); }

body[data-design="tattoo"] .hero { background:#ac1928; padding:0; }
body[data-design="tattoo"] .hero-grid { display:grid; grid-template-columns:.9fr 1.1fr; grid-template-areas:"copy visual"; min-height:min(790px,calc(100svh - 88px)); gap:0; padding:0; max-width:none; width:100%; }
body[data-design="tattoo"] .hero-copy { grid-area:copy; position:relative; z-index:3; margin:0; align-self:center; max-width:none; padding:48px 30px 64px max(40px,calc((100vw - 1328px)/2)); background:transparent; }
body[data-design="tattoo"] .hero h1 { font:900 clamp(55px,5.5vw,80px)/1.03 Outfit,sans-serif; letter-spacing:-.045em; margin:20px 0 26px; }
body[data-design="tattoo"] .hero .kicker { color:#fff3e9; font-size:25px; transform:rotate(-4deg); margin:0 0 22px; }
body[data-design="tattoo"] .hero .lede { color:#fff0e7; max-width:25rem; font-size:18px; }
body[data-design="tattoo"] .hero-actions .btn { background:#f7eee4; border-color:#f7eee4; color:#791320; }
body[data-design="tattoo"] .hero-actions .btn:hover { background:#ead8d0; }
body[data-design="tattoo"] .hero-visual { position:relative; grid-area:visual; align-self:stretch; min-height:620px; width:auto; margin:0; border:0; clip-path:none; transform:none; overflow:visible; }
body[data-design="tattoo"] .hero-visual::before,body[data-design="tattoo"] .hero-visual::after { display:none; }
body[data-design="tattoo"] .hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:51% 47%; filter:none; clip-path:none; transform:none; border:0; }
body[data-design="tattoo"] .strongman { position:absolute; z-index:3; width:clamp(150px,15vw,200px); height:auto; left:-70px; right:auto; bottom:18px; top:auto; transform:rotate(-5deg); filter:drop-shadow(0 8px 12px #34101780); }
body[data-design="tattoo"] .gym { background:#28161c; }
body[data-design="tattoo"] .gym .spread-main img { object-position:58% 50%; }
body[data-design="tattoo"] .gym .spread-side { margin-top:26px; }
body[data-design="tattoo"] .gym .spread-side img { object-position:center 46%; }
body[data-design="tattoo"] .band { background:#a31827; }
body[data-design="tattoo"] .band .label,body[data-design="tattoo"] .band .tab-kicker { color:#ffe2dd; }
body[data-design="tattoo"] .panel-grid { align-items:center; }
body[data-design="tattoo"] .panel-photo { order:-1; }
body[data-design="tattoo"] .panel-photo img { aspect-ratio:1; object-position:center 45%; }
body[data-design="tattoo"] .gallery { background:#2d1820; }
body[data-design="tattoo"] .open { background:#f3e9df; color:#34141f; }
body[data-design="tattoo"] .open h2,body[data-design="tattoo"] .open h3,body[data-design="tattoo"] .open dd { color:#34141f; }
body[data-design="tattoo"] .open p,body[data-design="tattoo"] .open .open-lead,body[data-design="tattoo"] .open .quiet { color:#603b46; }
body[data-design="tattoo"] .open .label,body[data-design="tattoo"] .offer dt { color:#9b1727; }
body[data-design="tattoo"] .open .step-no { -webkit-text-stroke-color:#a11b2b; }
body[data-design="tattoo"] .offer div { border-top-color:#b6929b; }
body[data-design="tattoo"] .open .text-link { color:#811727; }
body[data-design="tattoo"] .open .cafe { background:transparent; }
body[data-design="tattoo"] .contact { background:#ac1928; }
body[data-design="tattoo"] .contact-list a .lbl,body[data-design="tattoo"] .contact-list .place .lbl { color:#ffdfdf; }

@media(min-width:900px){
 body[data-design="tattoo"] .mosaic a:nth-child(6) { grid-column:1 / -1; }
 body[data-design="tattoo"] .gym .spread-side { grid-column:1; grid-row:auto; align-self:end; }
 body[data-design="tattoo"] .gym .spread-side img { height:250px; }
 body[data-design="tattoo"] .gym .spread-main { grid-row:1 / span 4; }
 body[data-design="tattoo"] .gym .spread-main img { height:650px; }
}
@media(max-width:1100px) and (min-width:900px){
 body[data-design="tattoo"] .hero-copy { padding-left:30px; }
 body[data-design="tattoo"] .hero h1 { font-size:57px; }
 body[data-design="prostor"] .hero h1 { font-size:76px; }
}
@media(max-width:899px){
 body[data-design] .bar { height:76px; min-height:76px; }
 body[data-design] .brand { width:145px; height:64px; flex:none; }
 body[data-design] .brand img { width:158px; height:102px; top:-20px; left:-7px; }
 body[data-design] .header-tools { gap:8px; }
 body[data-design] .header-tools .btn-book { display:inline-flex; min-height:44px; padding:8px 14px; font-size:14px; }
 body[data-design] .book-full { display:none; }
 body[data-design] .book-short { display:inline; }
 body[data-design] .nav-toggle { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; font-size:0; border-color:#c98e99; }
 body[data-design] .nav-toggle::after { content:""; width:18px; height:12px; border-block:2px solid #fff0ec; box-shadow:inset 0 4px transparent; background:linear-gradient(#fff0ec,#fff0ec) center/18px 2px no-repeat; }
 body[data-design] .nav-toggle[aria-expanded="true"]::after { content:"×"; width:auto; height:auto; border:0; background:none; font:28px/1 Outfit,sans-serif; }
 body[data-design] .site-nav { background:#28141c; }
 html:not(.js) body[data-design] .bar { height:auto; }
 html:not(.js) body[data-design] .site-header { position:static; }
 html:not(.js) body[data-design] .nav-toggle { display:none; }
 body[data-design] .site-nav a { min-height:48px; }
 body[data-design] section[id] { scroll-margin-top:88px; }
 body[data-design] .hero .kicker { font-size:20px; }
 body[data-design] .hero-actions { gap:4px 20px; }
 body[data-design] .hero-actions .btn { min-height:50px; padding:12px 18px; font-size:14px; }
 body[data-design] .hero .lede { font-size:16px; line-height:1.55; }
 body[data-design="prostor"] .hero-grid { grid-template-areas:"visual" "copy"; grid-template-columns:1fr; min-height:0; }
 body[data-design="prostor"] .hero-visual { height:clamp(270px,39vw,420px); margin:0; }
 body[data-design="prostor"] .hero-visual::after { display:none; }
 body[data-design="prostor"] .hero-copy { margin:0; padding:25px 24px 30px; max-width:none; background:#3a1c25; }
 body[data-design="prostor"] .hero h1 { font-size:clamp(45px,7.5vw,68px); margin:10px 0 16px; }
 body[data-design="prostor"] .hero .kicker { margin-bottom:10px; }
 body[data-design="prostor"] .hero-selector { right:16px; top:calc(clamp(270px,39vw,420px) - 63px); bottom:auto; min-width:0; }
 body[data-design="prostor"] .scene-caption { display:none; }
 .scene-options button { padding:8px 13px; }
 body[data-design="prostor"] .band-head { display:block; }
 body[data-design="prostor"] .band-head p:last-child { margin-top:18px; }
 body[data-design="prostor"] .panel-grid { grid-template-columns:1fr; }
 body[data-design="prostor"] .cafe { grid-template-columns:1fr; gap:30px; margin-top:48px; }
 body[data-design="prostor"] .cafe img { height:auto; max-height:440px; }
 body[data-design="prostor"] .gym .spread-main img { height:360px; }
 body[data-design="tattoo"] .hero-grid { grid-template-columns:1fr; grid-template-areas:"copy" "visual"; min-height:0; }
 body[data-design="tattoo"] .hero-copy { padding:28px 24px 30px; }
 body[data-design="tattoo"] .hero h1 { font-size:clamp(45px,7.8vw,70px); margin:16px 0 18px; }
 body[data-design="tattoo"] .hero .lede { font-size:16px; max-width:35rem; }
 body[data-design="tattoo"] .hero .kicker { margin-bottom:12px; }
 body[data-design="tattoo"] .hero-visual { min-height:0; height:clamp(285px,52vw,460px); }
 body[data-design="tattoo"] .strongman { left:auto; right:12px; bottom:8px; width:110px; }
 body[data-design="tattoo"] .gym .spread-side img { height:250px; }
}
@media(max-width:440px){
 body[data-design] .wrap.bar { padding-inline:16px; }
 body[data-design] .brand { width:128px; }
 body[data-design] .brand img { width:145px; height:94px; top:-16px; left:-7px; }
 body[data-design] .btn-book { font-size:13px; padding-inline:12px; }
 body[data-design] .hero-actions .text-link { font-size:14px; min-height:44px; }
 body[data-design="prostor"] .hero-copy { padding:20px 20px 26px; }
 body[data-design="prostor"] .hero h1 { font-size:46px; }
 body[data-design="prostor"] .hero .lede { margin-bottom:17px; }
 body[data-design="tattoo"] .hero-copy { padding:22px 20px 26px; }
 body[data-design="tattoo"] .hero h1 { font-size:46px; }
 body[data-design="tattoo"] .hero .kicker { font-size:19px; }
 body[data-design] .hero-actions { display:flex; flex-wrap:wrap; }
 .finalist-nav { justify-content:flex-start; gap:4px 22px; }
 body[data-design] .dialog-bar { gap:3px; }
 body[data-design] .dialog-bar button { font-size:12px; padding-inline:9px; }
}
@media(prefers-reduced-motion:reduce){body[data-design] .btn:hover { transform:none; } body[data-design] * { scroll-behavior:auto!important; }}
