:root{color-scheme:dark;--bg:#252e20;--surface:#3f4c30;--cream:#f4f0df;--yellow:#ffdf00}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.5 system-ui,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}header,footer{display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;gap:20px}header{background:var(--surface)}.brand{font:27px/1.1 Georgia,serif;letter-spacing:.04em}.brand small{display:block;text-align:center;font:10px/2.3 system-ui;letter-spacing:.5em}.hero{position:relative;min-height:470px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(25,36,21,.96),rgba(25,36,21,.73) 35%,rgba(25,36,21,.04) 80%),url('hero-retouched-v3.png') center 10%/cover}.hero-copy{padding:48px 4vw}.eyebrow{font-size:11px;letter-spacing:.38em}h1{font:clamp(42px,5.6vw,78px)/1.03 Georgia,serif;letter-spacing:-.03em;margin:22px 0}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:6px;padding:11px 22px;font:500 14px/1.4 system-ui;border:1px solid transparent;cursor:pointer}.yellow{background:var(--yellow);color:#182010}.outline{border-color:var(--cream);background:transparent}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--surface);padding:15px 4vw}.toolbar button{background:none;border:0;padding:10px 0;white-space:nowrap}.tabs{display:flex;gap:26px}.toolbar button[aria-pressed=true]{color:var(--yellow)}.density{display:flex;gap:20px;font-size:25px}.grid{columns:3;column-gap:14px;padding:20px 3vw}.grid.compact{columns:5}.photo{position:relative;break-inside:avoid;margin-bottom:14px;border-radius:5px;overflow:hidden;background:#34412a}.photo>a{display:block}.photo img{width:100%;height:auto;display:block;transition:filter .2s}.photo:hover img{filter:brightness(1.06)}.heart{position:absolute;right:8px;top:8px;background:#15201288;border:1px solid #ffffff44;border-radius:50%;width:38px;height:38px;font-size:25px;line-height:1}.heart[aria-pressed=true]{color:var(--yellow)}#status{margin:20px 4vw;color:#c8cfbc}#status:empty{display:none}#more{display:flex;margin:20px auto 40px}#more[hidden]{display:none}footer{font-size:13px;color:#c8cfbc;border-top:1px solid #ffffff18}dialog{border:0;padding:0;width:100vw;height:100dvh;max-width:none;max-height:none;background:#11170ff5;color:var(--cream)}dialog::backdrop{background:#111}.viewer-toolbar,.viewer-bottom{position:absolute;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;z-index:2;background:#11170fdd;gap:12px}.viewer-toolbar{top:0}.viewer-toolbar>div{display:flex;gap:15px;align-items:center}.viewer-toolbar button,.viewer-bottom button{background:none;border:0;padding:10px}.viewer-toolbar button{font-size:25px}.viewer-bottom{bottom:0;font-size:13px}#stage{position:absolute;inset:80px 65px 60px;display:flex;align-items:center;justify-content:center;overflow:auto}#full{max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in}#stage.zoomed{display:block}#stage.zoomed img{max-width:none;max-height:none;width:auto;height:auto;cursor:zoom-out}.arrow{position:absolute;top:45%;z-index:3;background:#25321d99;border:0;font-size:48px;width:48px;border-radius:6px}.prev{left:10px}.next{right:10px}@media(min-width:1600px){main,header,footer{max-width:1800px;margin:auto}}@media(max-width:700px){header{padding:17px 5vw}.brand{font-size:21px}header>span{font-size:12px}.hero{min-height:440px;background-position:60% center}.hero-copy{padding:30px 5vw;width:100%;background:#1a271c44}h1{font-size:47px}.hero-copy>p:not(.eyebrow){font-size:14px}.actions{flex-direction:column;max-width:420px}.archive{order:-1}.toolbar{padding:10px 4vw;flex-wrap:wrap}.tabs{gap:17px;font-size:13px}.density{margin-left:auto;font-size:22px}.grid{columns:2;column-gap:8px;padding:12px 3vw}.grid.compact{columns:3}.photo{margin-bottom:8px}.heart{width:32px;height:32px;font-size:22px;right:5px;top:5px}footer{font-size:11px;padding:20px 4vw}.viewer-toolbar{padding:10px 12px;font-size:12px}.viewer-toolbar>div{gap:4px}.viewer-toolbar .button{padding:9px 12px;font-size:12px}#stage{inset:75px 0 65px}.arrow{font-size:36px;width:32px;top:48%;background:#14200c99}.prev{left:3px}.next{right:3px}.viewer-bottom{padding:12px}.viewer-toolbar button{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Общий план бани; верх кадра с незавершённой крышей остаётся за границей обложки. */
@media(max-width:700px){.hero{display:block;min-height:0;background:none}.hero::before{content:"";display:block;width:100%;aspect-ratio:1.85;background:url("hero-retouched-v3.png") center 10%/cover no-repeat}.hero-copy{background:var(--bg);padding:24px 5vw 30px}.hero-copy .eyebrow{margin-top:0}.hero-copy h1{margin:16px 0}.hero-copy .actions{margin-top:22px}}

/* Сетка идёт слева направо по сценам, сохраняя пропорции фото. */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:8px;gap:8px 14px;columns:auto}.grid.compact{grid-template-columns:repeat(5,minmax(0,1fr));columns:auto}.photo{margin-bottom:0;align-self:start}@media(max-width:700px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.photo{margin-bottom:0}}

/* Кадрирование по исходнику: без дорисованного верха, с мягкими краями. */
.hero{isolation:isolate;overflow:hidden;background:var(--bg)}
.hero::before,.hero::after{content:"";pointer-events:none;background:url("hero-retouched-v3.png") center 45%/cover no-repeat}
.hero::before{position:absolute;inset:-20px;filter:blur(18px);opacity:.6}
.hero::after{position:absolute;inset:0 0 0 auto;width:80%;mask-image:linear-gradient(90deg,transparent,black 23%,black 94%,transparent)}
.hero-copy{position:relative;z-index:2}
@media(min-width:701px){.hero{min-height:clamp(470px,36vw,580px)}.hero-copy{width:52%;align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,rgba(37,46,32,.91),rgba(37,46,32,.45) 78%,transparent)}}
@media(max-width:700px){.hero{min-height:0}.hero::before{position:relative;inset:auto;width:100%;aspect-ratio:2.1;filter:blur(12px);background-position:center 55%;background-size:cover;transform:scale(1.04);opacity:.8}.hero::after{inset:0 0 auto;width:100%;aspect-ratio:2.1;background-position:center 55%;mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent)}.hero-copy{background:var(--bg)}}
