@font-face{font-family:"Cormorant";src:url(/fonts/cormorant-garamond-cyrillic-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Cormorant";src:url(/fonts/cormorant-garamond-latin-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20BD}
@font-face{font-family:"Cormorant";src:url(/fonts/cormorant-garamond-cyrillic-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Cormorant";src:url(/fonts/cormorant-garamond-latin-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20BD}
@font-face{font-family:"Manrope";src:url(/fonts/manrope-cyrillic-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";src:url(/fonts/manrope-latin-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20BD}
@font-face{font-family:"Manrope";src:url(/fonts/manrope-cyrillic-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";src:url(/fonts/manrope-latin-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20BD}

:root{
  --wood:#1f140d; --wood2:#2b1c12; --ink:#f1e6d2; --muted:#c4b199;
  --paper:#ecdcbf; --paper-ink:#3a2617; --paper-muted:#6f5640;
  --gold:#d2ad72; --copper:#8a4521; --copper2:#a1552b; --line:rgba(210,173,114,.35);
  --r:6px; --serif:"Cormorant",Georgia,serif; --sans:"Manrope",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.6 var(--sans);color:var(--ink);background:var(--wood);
  background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.18) 0 2px,transparent 2px 180px),
  linear-gradient(180deg,#24170f,#1a110b);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0 0 16px;letter-spacing:.02em}
h1{font-size:clamp(36px,6vw,64px);text-transform:uppercase}
h2{font-size:clamp(28px,3.6vw,40px)}
h3{font-size:24px}
p{margin:0 0 16px}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.narrow{max-width:760px}
.center{text-align:center}
.muted{color:var(--muted)}
.small{font-size:14px}
.eyebrow{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.lead{font-size:18px;color:var(--muted);max-width:620px}
.sec{padding:64px 16px}
.wrap.sec{padding-left:16px;padding-right:16px}

/* кнопки */
.btn{display:inline-block;font:600 14px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  color:#fff7ea;background:var(--copper);border:1px solid var(--copper2);padding:16px 24px;border-radius:var(--r);cursor:pointer;transition:background .2s}
.btn:hover{background:var(--copper2)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{background:rgba(210,173,114,.12)}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btns.center{justify-content:center}
.link{background:none;border:0;padding:0;font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--copper);cursor:pointer}

/* шапка */
.top{position:sticky;top:0;z-index:20;background:rgba(26,17,11,.92);backdrop-filter:blur(6px);border-bottom:1px solid rgba(210,173,114,.15)}
.top-in{display:flex;align-items:center;gap:24px;height:72px}
.logo{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);line-height:1}
.logo-name{font:600 26px var(--serif);letter-spacing:.06em;color:var(--gold)}
.logo-sub{font:500 italic 15px var(--serif);color:var(--muted);margin-top:4px}
.nav{display:flex;gap:24px;margin-left:auto}
.nav a{color:var(--ink);text-decoration:none;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.nav a:hover,.nav a[aria-current]{color:var(--gold)}
.top-phone{color:var(--ink);text-decoration:none;font-weight:600;white-space:nowrap;border:1px solid var(--line);padding:10px 16px;border-radius:var(--r)}
.burger{display:none;background:none;border:0;width:40px;height:40px;padding:8px;cursor:pointer}
.burger span{display:block;height:2px;background:var(--gold);margin:6px 0}

/* первый экран */
.hero{position:relative;min-height:min(86vh,760px);display:flex;align-items:center;text-align:center;overflow:hidden}
.hero picture,.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(20,12,7,.78) 0,rgba(20,12,7,.55) 55%,rgba(20,12,7,.85) 100%)}
.hero-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding-top:64px;padding-bottom:64px}
.hero h1{color:#f6ead3;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.hero .lead{margin:0 auto 32px;color:#e3d3ba}

.perks{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);margin-top:-48px;position:relative;z-index:2;padding:0}
.perks div{background:#24170f;padding:24px;display:flex;flex-direction:column;gap:4px}
.perks b{font:600 22px var(--serif);color:var(--gold)}
.perks span{font-size:14px;color:var(--muted)}

/* пергамент */
.paper{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);padding:48px 32px;margin-top:64px;
  box-shadow:0 20px 60px rgba(0,0,0,.45);background-image:radial-gradient(ellipse at top,rgba(255,255,255,.35),transparent 60%)}
.paper .muted{color:var(--paper-muted)}
.orn{text-align:center}
.orn::before,.orn::after{content:"❧";color:var(--copper);font-size:.7em;margin:0 16px;vertical-align:middle}
.orn::before{display:inline-block;transform:scaleX(-1)}
.orn.light::before,.orn.light::after{color:var(--gold)}
.cats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:32px}
.cat{display:grid;grid-template-columns:42% 1fr;background:#e3cfac;border:1px solid rgba(58,38,23,.12);border-radius:var(--r);overflow:hidden;color:var(--paper-ink);text-decoration:none;transition:transform .2s}
.cat:hover{transform:translateY(-2px)}
.cat img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.cat-b{display:flex;flex-direction:column;padding:20px;gap:8px}
.num{font-size:12px;color:var(--paper-muted)}
.cat-t{font:500 26px/1.1 var(--serif);text-transform:uppercase}
.cat-p{font-size:14px;color:var(--paper-muted)}
.more{margin-top:auto;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper)}
.cats .cat:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:21% 1fr}

/* карточки товаров */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:32px 0}
.card{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;scroll-margin-top:96px}
.card img{aspect-ratio:4/5;object-fit:cover;width:100%}
.card-b{padding:20px;display:flex;flex-direction:column;flex:1}
.card-b p{font-size:15px;color:var(--paper-muted)}
.card-f{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px}
.price{font:600 22px var(--serif);color:var(--paper-ink)}

/* блоки «картинка + текст» */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split img{border-radius:var(--r);box-shadow:0 20px 50px rgba(0,0,0,.4)}
.split.rev img{order:2}
.mk{display:grid;gap:16px}
.mk-i{border-left:2px solid var(--gold);padding:4px 0 4px 16px}
.mk-i h3{font-size:22px;margin-bottom:4px}
.mk-i p{color:var(--muted);font-size:15px;margin-bottom:4px}
.mk-i .price{color:var(--gold);font-size:20px}

.steps ol{list-style:none;counter-reset:s;padding:0;margin:32px auto;max-width:760px;display:grid;gap:16px}
.steps li{counter-increment:s;position:relative;padding:10px 0 0 64px;min-height:48px;color:var(--muted)}
.steps li::before{position:absolute;left:0;top:0;content:counter(s);font:600 28px/48px var(--serif);text-align:center;color:var(--gold);border:1px solid var(--line);border-radius:50%;width:48px;height:48px}
.steps b{color:var(--ink)}

.reviews{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:760px}
.rating{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-bottom:16px}
.rating b{font:600 56px var(--serif);color:var(--gold)}
.rating span{color:var(--muted)}

.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font:500 22px var(--serif);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--gold)}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--muted);margin:12px 0 0}

.contacts{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:center}
.contacts p{color:var(--muted)}
.contacts b{color:var(--ink);font-weight:600}
.map{width:100%;height:380px;border:0;border-radius:var(--r);filter:sepia(.25)}

.pagehead{padding-top:64px;padding-bottom:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.chips a{border:1px solid var(--line);color:var(--ink);text-decoration:none;padding:8px 16px;border-radius:999px;font-size:14px}
.chips a:hover{background:rgba(210,173,114,.12)}

.foot{border-top:1px solid rgba(210,173,114,.15);padding:48px 0 96px;margin-top:64px;color:var(--muted);font-size:14px}
.foot-in{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px}
.foot a{color:var(--ink)}
.foot-nav{display:flex;flex-direction:column;gap:8px}
.foot-nav a{text-decoration:none}

.mbar{display:none}

/* окно заказа */
.order{border:0;padding:0;border-radius:var(--r);background:var(--paper);color:var(--paper-ink);width:min(560px,calc(100% - 32px));max-height:calc(100vh - 32px)}
.order::backdrop{background:rgba(10,6,3,.7)}
.order-in{padding:32px;display:grid;gap:12px;position:relative}
.order h2{margin:0}
.order .muted{color:var(--paper-muted);margin:0}
.order label{display:grid;gap:4px;font-size:13px;color:var(--paper-muted)}
.order input,.order textarea{font:16px var(--sans);padding:12px;border:1px solid rgba(58,38,23,.25);border-radius:var(--r);background:#fbf4e6;color:var(--paper-ink);width:100%}
.order .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seg{border:0;padding:0;margin:0;display:flex;gap:16px;flex-wrap:wrap}
.seg legend{font-size:13px;color:var(--paper-muted);margin-bottom:4px}
.seg label{display:flex;gap:8px;align-items:center;font-size:15px;color:var(--paper-ink)}
.order-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.order .btn-ghost{color:var(--paper-ink);border-color:rgba(58,38,23,.3)}
.order a{color:var(--copper)}
.x{position:absolute;top:8px;right:12px;background:none;border:0;font-size:32px;line-height:1;color:var(--paper-muted);cursor:pointer}
.toast{position:fixed;left:50%;bottom:88px;transform:translateX(-50%);background:#111;color:#fff;padding:12px 16px;border-radius:var(--r);z-index:60;font-size:14px}

@media (max-width:980px){
  .nav{position:fixed;inset:72px 0 auto 0;flex-direction:column;gap:0;background:#1a110b;border-bottom:1px solid var(--line);display:none}
  .nav.open{display:flex}
  .nav a{padding:16px;border-top:1px solid rgba(210,173,114,.1)}
  .burger{display:block}
  .top-phone{margin-left:auto}
  .cards{grid-template-columns:repeat(2,1fr)}
  .perks{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  body{font-size:16px}
  .top-in{height:64px;gap:12px}
  .nav{inset:64px 0 auto 0}
  .logo-name{font-size:22px}.logo-sub{font-size:13px}
  .top-phone{display:none}
  .burger{margin-left:auto}
  .hero{min-height:78vh}
  .perks{margin-top:24px}
  .perks div{padding:16px}
  .perks b{font-size:19px}
  .paper{padding:32px 16px;margin-left:16px;margin-right:16px}
  .cats{grid-template-columns:1fr}
  .cats .cat:last-child:nth-child(odd){grid-template-columns:38% 1fr}
  .cat{grid-template-columns:38% 1fr}
  .cat-t{font-size:22px}
  .cat-p{display:none}
  .cards{grid-template-columns:1fr 1fr;gap:12px}
  .card-b{padding:12px}
  .card-b h3{font-size:20px}
  .card-b p{display:none}
  .card-f{flex-direction:column;align-items:flex-start}
  .price{font-size:19px}
  .split,.contacts{grid-template-columns:1fr;gap:24px}
  .split.rev img{order:0}
  .sec{padding:48px 16px}
  .foot-in{grid-template-columns:1fr}
  .orn::before,.orn::after{margin:0 8px}
  .order-in{padding:24px 16px}
  .order .row2{grid-template-columns:1fr}
  .mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#1a110b;border-top:1px solid var(--line)}
  .mbar a,.mbar button{padding:16px;text-align:center;font:600 14px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;background:none;border:0}
  .mbar button{background:var(--copper);color:#fff7ea}
}
.order .seg input{width:auto;padding:0;margin:0}
.wrap > .sec{padding-left:0;padding-right:0}

/* услуги */
.svcs{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:32px 0}
.svc{display:grid;grid-template-columns:40% 1fr;background:var(--paper);color:var(--paper-ink);border-radius:var(--r);overflow:hidden;scroll-margin-top:96px}
.svc img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.svc-b{padding:20px;display:flex;flex-direction:column}
.svc-b h3{font-size:24px}
.svc-b p{font-size:15px;color:var(--paper-muted)}
.svc .price{font-size:18px}
.svcs .svc:only-child{grid-column:auto}
.ritual{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:32px;scroll-margin-top:96px}
.ritual img{border-radius:var(--r);filter:saturate(.6)}
.ritual p{color:var(--muted)}
@media (max-width:700px){
  .svcs{grid-template-columns:1fr;gap:16px}
  .svc{grid-template-columns:36% 1fr}
  .svc-b{padding:12px}
  .svc-b h3{font-size:20px;margin-bottom:8px}
  .svc-b p{font-size:14px;margin-bottom:8px}
  .svc .card-f{flex-direction:column;align-items:flex-start}
  .ritual{grid-template-columns:1fr;gap:16px}
  .ritual img{max-width:200px}
}

/* галерея «Наши работы» и фото мастер-классов */
.works{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:32px 0}
.works.two{grid-template-columns:repeat(2,1fr);max-width:760px;margin-inline:auto}
.works.three{grid-template-columns:repeat(3,1fr)}
.work{position:relative;display:block;margin:0;border-radius:var(--r);overflow:hidden;color:#f6ead3;text-decoration:none}
.work img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .4s}
a.work:hover img{transform:scale(1.04)}
.work span{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;font-size:14px;line-height:1.3;background:linear-gradient(transparent,rgba(20,12,7,.85))}
@media (max-width:980px){.works{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.works{grid-template-columns:repeat(2,1fr);gap:10px}.works.three{grid-template-columns:repeat(3,1fr);gap:8px}.work span{font-size:12px;padding:20px 8px 8px}}
.works.salon{grid-template-columns:repeat(2,1fr)}
.works.salon .work img{aspect-ratio:4/3}
.split img[height="900"]{max-height:640px;width:auto;margin-inline:auto;object-fit:cover}
.order [hidden]{display:none!important}
.order .fields,.order .sent{display:grid;gap:12px}
.order .sent textarea{font:15px/1.5 var(--sans);resize:none}
.order .link{font-size:12px;margin-left:8px}
.order a.btn{color:#fff7ea;text-decoration:none;text-align:center}.order a.btn.btn-ghost{color:var(--paper-ink)}
.pets .work{overflow:visible}
.pets .work img{aspect-ratio:1;border-radius:var(--r)}
.pets figcaption{padding:10px 2px 0;font-size:14px;line-height:1.4;color:var(--muted)}
.pets figcaption b{display:block;color:var(--ink);font-weight:600}
@media (max-width:700px){.pets figcaption{font-size:12px}}
.order .checks{display:grid;gap:8px}
.order .chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--paper-ink);line-height:1.4}
.order .chk input{width:20px;height:20px;flex:none;margin:1px 0 0;accent-color:var(--copper)}
.doc h2{font-size:24px;margin:32px 0 8px}.doc p,.doc li{color:var(--muted);line-height:1.6}.doc b{color:var(--ink)}.doc ul{padding-left:20px;display:grid;gap:8px}
.foot a[href="/privacy/"]{color:var(--muted)}
/* Онлайн-запись на мастер-классы (/api/mk) и страница записи /z/ */
.sess{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.sess li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:8px 0;border-top:1px solid rgba(58,38,23,.15);font-size:15px}
.sess .sw{font-weight:600;color:var(--paper-ink)}
.sess .sl{color:var(--paper-muted);font-size:14px}
.sess .few .sl{color:var(--copper);font-weight:600}
.sess .off .sw{color:var(--paper-muted);font-weight:400}
.sess .link{margin-left:auto}
.order .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.order .sess-info{background:rgba(138,69,33,.08);border-left:3px solid var(--copper);padding:10px 12px;border-radius:var(--r);margin:0;line-height:1.5}
.order .err{background:#f6e1d6;color:#7a2a10;padding:10px 12px;border-radius:var(--r);margin:0;font-size:14px;line-height:1.5}
.order .err .link{margin:0 8px 0 0}
.order .kids{border:0;padding:0;margin:0;display:grid;gap:8px}
.order .kids legend{padding:0;margin-bottom:6px;font-size:13px;color:var(--paper-muted)}
.order .kid{display:grid;grid-template-columns:1fr 84px;gap:8px}
.order .kids .link{justify-self:start;margin:0}
.order [aria-invalid="true"]{border-color:#b3401a!important;box-shadow:0 0 0 2px rgba(179,64,26,.2)}
.order .done{display:grid;gap:12px}
.order .done p{margin:0;line-height:1.5}
.zcard{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);padding:24px;display:grid;gap:12px;max-width:560px}
.zcard h2{margin:0}.zcard p{margin:0;line-height:1.5}.zcard .muted{color:var(--paper-muted)}
.zcard .btn-ghost{color:var(--paper-ink)}
.diplom{max-width:560px;margin:28px auto 0;text-align:center}
.diplom img{width:100%;height:auto;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.12)}
.diplom figcaption{margin-top:10px;font-size:.92rem;color:var(--muted,#6b6b6b)}
.zpay{font-weight:600}
.link.copyval{font-size:17px;letter-spacing:.02em;margin:0;text-transform:none}
.card .ph{aspect-ratio:4/5;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;
  background:radial-gradient(circle at 50% 40%,#3a2a1c,#1d140d);color:var(--gold);border-bottom:1px solid rgba(201,162,92,.35)}
.card .ph span{font:500 24px/1.2 var(--serif)}
.card .ph small{font:600 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.sizes{list-style:none;margin:auto 0 0;padding:0;display:grid;gap:2px}
.sizes li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:8px 0;border-top:1px solid rgba(0,0,0,.1)}
.sizes li span{min-width:52px;color:var(--paper-muted);font-size:14px}
.sizes li b{font:600 19px var(--serif)}
.sizes li .link{margin-left:auto}
@media (max-width:600px){.card .ph span{font-size:17px}.sizes li b{font-size:16px}.sizes li .link{margin-left:0;font-size:11px}}
/* Подпись на сгенерированных картинках: не выдаём их за работы мастерской. */
.pic,.cat{position:relative}
.sample{position:absolute;left:8px;bottom:8px;padding:3px 8px;border-radius:4px;background:rgba(20,12,6,.72);color:#f3e6cc;font:600 10px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
