/* Identity and future media slots use no studio photography without permission. */
.studio-logo{position:relative;display:flex;align-items:center;justify-content:center;min-height:68px;margin-bottom:18px;border:1px solid var(--line);background:var(--paper);padding:10px;color:var(--ink);text-align:center;overflow-wrap:anywhere}
.studio-logo img{position:absolute;opacity:0;width:38px;height:38px;object-fit:contain}
.studio-logo img.loaded{position:static;opacity:1}
.studio-logo-fallback{font-weight:700;font-size:14px;line-height:1.3;letter-spacing:.02em}
.studio-logo-fallback[hidden]{display:none}
.photo-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 32px}
.photo-slot{min-height:140px;border:1px dashed var(--muted);background:var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;color:var(--ink)}
.photo-slot span{font-size:.85em;color:var(--muted);margin-top:8px}
@media(max-width:520px){.photo-slots{grid-template-columns:1fr}}
/* Preserve the content gutter on sections that also use .wrap. */
.section.wrap{padding-left:5%;padding-right:5%}
html[data-theme="dark"] input::placeholder{color:#c1c9be;opacity:1}
.article-layout.wrap{padding-left:5%;padding-right:5%}
/* Long Russian headings and addresses must wrap on narrow screens. */
.page-title,.article h2,.article p,.article a{overflow-wrap:anywhere;hyphens:auto}
.journal-dragonhawk-image{width:100%;height:300px;object-fit:cover;display:block}

/* Approved TattooTihon mark: keep the original asset intact and readable on both themes. */
.brand,.foot a.brand{display:inline-flex;align-items:center;gap:10px}.brand-mark{display:block;flex:0 0 68px;width:68px;height:68px;background:#fff;border-radius:4px;overflow:hidden}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand-wordmark{display:block;white-space:nowrap}.foot a.brand{margin:9px 0}@media(max-width:520px){.brand-mark{flex-basis:58px;width:58px;height:58px}.brand-wordmark{font-size:24px}}
.brand small{font-size:8px;letter-spacing:.17em;white-space:nowrap}.navlinks a{white-space:nowrap}
@media(max-width:1350px){.nav-cta{display:none}}
@media(min-width:801px) and (max-width:1100px){.nav{flex-wrap:wrap}.menu{display:block;margin-left:auto;order:1}.brand{order:0}.site-controls{order:2;flex-basis:100%;justify-content:flex-start}.navlinks{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:18px;order:3}.navlinks.open{display:flex}}

/* The approved hero is shown in full, without text overlays. */
.hero-art{min-height:0;align-self:start;background:transparent}.hero-art img{display:block;width:100%;height:auto}.hero-art:before{display:none}
