:root{
  --bg:#faf7f2; --ink:#211d18; --muted:#8b8378; --line:#e6dfd4; --accent:#b0682f;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif;font-weight:300;line-height:1.65}
a{color:inherit}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(16px,4vw,48px)}
header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:12px;flex-wrap:wrap}
.logo{font-family:"Cormorant Garamond",serif;font-size:1.35rem;letter-spacing:.04em;text-decoration:none}
.logo b{font-weight:500}
nav.menu{display:flex;gap:clamp(12px,2.5vw,26px);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase}
nav.menu a{text-decoration:none;color:var(--muted);transition:color .2s;white-space:nowrap}
nav.menu a:hover,nav.menu a.on{color:var(--ink)}
.hero{padding:clamp(50px,10vh,110px) 0 clamp(36px,7vh,70px);text-align:center}
.hero h1{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:clamp(2.2rem,6vw,4.4rem);letter-spacing:.02em}
.hero .sub{margin-top:14px;color:var(--muted);letter-spacing:.32em;text-transform:uppercase;font-size:clamp(.68rem,1.6vw,.85rem)}
.hero .dot{color:var(--accent)}
h2.t{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:clamp(1.7rem,3.4vw,2.6rem);margin-bottom:28px}
section.block{padding:clamp(50px,9vh,110px) 0;border-top:1px solid var(--line)}
.btn{display:inline-block;border:1px solid var(--ink);padding:13px 34px;text-decoration:none;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;transition:.25s;background:none;cursor:pointer;color:var(--ink)}
.btn:hover{background:var(--ink);color:var(--bg)}
footer{border-top:1px solid var(--line);padding:26px 0;color:var(--muted);font-size:.8rem}
.foot{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
/* галерея-мозаика */
.gallery{columns:3 320px;column-gap:14px;padding-bottom:20px}
.gallery a{display:block;margin-bottom:14px;break-inside:avoid;overflow:hidden;border-radius:2px;background:#eee}
.gallery img{width:100%;display:block;transition:transform .6s ease,opacity .6s;opacity:0}
.gallery img.ld{opacity:1}
.gallery a:hover img{transform:scale(1.025)}
/* карточки входа на главной */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,3vw,28px);padding-bottom:8px}
.door{position:relative;display:block;overflow:hidden;border-radius:3px;text-decoration:none;aspect-ratio:4/5;max-height:72vh}
.door img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.door:hover img{transform:scale(1.04)}
.door .lab{position:absolute;inset:auto 0 0 0;padding:26px 24px;background:linear-gradient(transparent,rgba(20,16,12,.72));color:#fff}
.door .lab .big{display:block;font-family:"Cormorant Garamond",serif;font-size:clamp(1.6rem,3.4vw,2.5rem)}
.door .lab .small{display:block;letter-spacing:.22em;text-transform:uppercase;font-size:.72rem;opacity:.85;margin-top:4px}
@media(max-width:700px){.doors{grid-template-columns:1fr}.door{aspect-ratio:16/10}}
/* сетка картин */
.artgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(16px,3vw,30px)}
.card{cursor:pointer}
.card .ph{overflow:hidden;border-radius:2px;background:#eee}
.card img{width:100%;display:block;aspect-ratio:1/1;object-fit:cover;transition:transform .6s ease}
.card:hover img{transform:scale(1.03)}
.card .cap{padding:12px 2px 0}
.card .name{font-family:"Cormorant Garamond",serif;font-size:1.35rem}
.card .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem;margin-top:2px;gap:8px}
.card .price{color:var(--accent);font-weight:400;white-space:nowrap}
/* about */
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,70px);align-items:center}
.about p{margin-bottom:1em;max-width:60ch}
.about .pic img{width:100%;border-radius:3px;display:block}
@media(max-width:760px){.about{grid-template-columns:1fr}}
.contacts{text-align:center}
.contacts .big{font-family:"Cormorant Garamond",serif;font-size:clamp(1.4rem,3vw,2rem);margin:10px 0 26px}
/* лайтбокс */
.lb{position:fixed;inset:0;background:rgba(18,15,12,.94);display:none;flex-direction:column;align-items:center;justify-content:center;z-index:50}
.lb.open{display:flex}
.lb img{max-width:92vw;max-height:78vh;object-fit:contain;border-radius:2px}
.lb .cap{color:#d9d2c7;margin-top:14px;text-align:center;font-size:.95rem}
.lb .cap .nm{font-family:"Cormorant Garamond",serif;font-size:1.4rem;color:#fff}
.lb .cap .pr{color:#e2a469}
.lb button{position:absolute;background:none;border:none;color:#d9d2c7;font-size:2rem;cursor:pointer;padding:18px;line-height:1;transition:color .2s}
.lb button:hover{color:#fff}
.lb .x{top:8px;right:12px}.lb .p{left:6px;top:50%;transform:translateY(-50%)}.lb .n{right:6px;top:50%;transform:translateY(-50%)}
