:root{
  --ink:#1A1A1A; --ink-soft:#5f574e; --line:rgba(0,0,0,.12); --hair:rgba(0,0,0,.14);
  --bg:#FAF8F3; --bg-warm:#F2EDE4; --paper:#FFFDF9;
  --gold:#8A3324; --gold-dark:#6d2819; --dark:#14100d; --maxw:1180px;
  --measure:68ch; --side:19rem;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.62;
  color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
.container{max-width:var(--maxw);margin:0 auto;padding:0 28px}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}

/* ── ТИПОГРАФИКА: серифный дисплей + гротеск в тексте ── */
h1,h2,h3{font-family:'EB Garamond','Cormorant Garamond',Georgia,serif;font-weight:400;
  line-height:1.05;letter-spacing:-.01em}
h1{font-size:clamp(46px,6.6vw,88px)}
h2{font-size:clamp(32px,4vw,52px);margin-bottom:18px}
h3{font-size:24px;margin-bottom:8px;line-height:1.2}
p{margin-bottom:14px;max-width:var(--measure)}
.lead{font-family:'EB Garamond',Georgia,serif;font-size:22px;line-height:1.5;
  color:var(--ink-soft);max-width:58ch;font-style:italic}
.eyebrow{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold);margin-bottom:18px}

/* ── ШАПКА: hairline, без блюра ── */
header{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 0;
  background:var(--bg);border-bottom:1px solid transparent;transition:border-color .3s,padding .3s}
header.on{padding:13px 0;border-bottom:1px solid var(--line)}
header .container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-family:'EB Garamond',Georgia,serif;font-size:27px;font-weight:400;
  letter-spacing:.06em;line-height:1}
.hnav{display:flex;gap:30px;font-size:14px}
.hnav a{padding:4px 0;border-bottom:1px solid transparent;transition:border-color .2s}
.hnav a:hover{border-bottom-color:var(--gold)}
.hcall{font-size:13px;letter-spacing:.06em;padding:11px 20px;min-height:44px;
  display:inline-flex;align-items:center;border:1px solid var(--ink);transition:.2s}
.hcall:hover{background:var(--ink);color:var(--paper)}

/* ── КНОПКИ: текстовые, тонкая рамка ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 28px;min-height:44px;font-size:14px;letter-spacing:.05em;
  border-radius:0;border:1px solid var(--ink);transition:background .25s,color .25s}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-dark);border-color:var(--gold-dark)}
.btn-ghost{background:transparent;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}

/* ── ГЕРОЙ: асимметрия, текст не по центру ── */
.hero{position:relative;padding:168px 0 0;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0;opacity:.5;
  background:radial-gradient(70% 55% at 78% 22%,rgba(138,51,36,.1),transparent 62%)}
.hero .container{position:relative;z-index:1;padding-bottom:76px}
.hero .eyebrow,.hero h1,.hero .lead,.hero-cta{max-width:min(74%,820px)}
.hero h1{margin-bottom:26px}
.hero .lead{margin-bottom:34px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-meta{display:flex;gap:56px;flex-wrap:wrap;margin-top:58px;
  border-top:1px solid var(--line);padding-top:26px}
.hero-meta div{font-size:13px;color:var(--ink-soft);max-width:22ch}
.hero-meta strong{display:block;font-family:'EB Garamond',Georgia,serif;font-size:34px;
  font-weight:400;color:var(--ink);line-height:1;margin-bottom:6px}

/* ── СЕКЦИИ ── */
section{padding:92px 0}
.sec-warm{background:var(--bg-warm)}
.sec-dark{background:var(--dark);color:#EDE7DE}
.sec-dark h2,.sec-dark h3{color:#F6F1E9}
.sec-dark .lead,.sec-dark p{color:rgba(237,231,222,.78)}
.sec-head{margin-bottom:52px;max-width:60ch}

/* первый абзац секции — с буквицей */
.sec-warm>.container>p:first-of-type::first-letter,
.drop::first-letter{float:left;font-family:'EB Garamond',Georgia,serif;font-size:4.2em;
  line-height:.84;margin:.05em .09em 0 0;color:var(--gold);font-weight:400}

/* ── ЭФФЕКТЫ: текст + боковая заметка, не карточки ── */
.ben{display:flex;flex-direction:column;gap:0}
.ben-item{display:grid;grid-template-columns:var(--side) 1fr;gap:44px;
  padding:34px 0;border-top:1px solid var(--line);align-items:start}
.ben-item:last-child{border-bottom:1px solid var(--line)}
.ben-item h3{margin:0;font-size:26px}
.ben-item p{margin:0;font-size:16px;color:var(--ink-soft);max-width:60ch}

/* ── ШАГИ: нумерация серифом ── */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}
.step{border-top:1px solid var(--ink);padding-top:18px}
.step .n,.num{font-family:'EB Garamond',Georgia,serif;font-size:42px;line-height:1;
  color:var(--gold);display:block;margin-bottom:12px}
.step p{font-size:15px;color:var(--ink-soft)}

/* ── ГАЛЕРЕЯ ФАКТУР: журнальная сетка с подписями ── */
.tex-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}
.tex{grid-column:span 4}
.tex:nth-child(6n+1){grid-column:span 7}
.tex:nth-child(6n+2){grid-column:span 5}
.tex img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:contrast(1.03) saturate(.96)}
.tex-cap{font-size:13px;color:var(--ink-soft);margin-top:11px;padding-left:13px;
  border-left:1px solid var(--gold);line-height:1.45;font-style:italic}
.ref-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.ref-grid img{width:100%;aspect-ratio:3/4;object-fit:cover}

/* ── ПАЛИТРА ── */
.pal{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:18px}
.sw span:first-child{display:block;aspect-ratio:1/1;border:1px solid var(--hair)}
.sw span:last-child{display:block;font-size:12px;color:var(--ink-soft);
  margin-top:9px;line-height:1.35}

/* ── FAQ ── */
.faq{border-top:1px solid var(--line);padding:24px 0;max-width:var(--measure)}
.faq:last-of-type{border-bottom:1px solid var(--line)}
.faq summary{font-family:'EB Garamond',Georgia,serif;font-size:23px;cursor:pointer;
  list-style:none;display:flex;justify-content:space-between;gap:18px;
  align-items:baseline;min-height:24px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"＋";font-size:16px;color:var(--gold);font-family:'Inter',sans-serif}
.faq[open] summary::after{content:"－"}
.faq p{margin:14px 0 0;font-size:16px;color:var(--ink-soft)}

/* ── CTA + ФОРМА ── */
.cta{background:var(--bg-warm);border-top:1px solid var(--line)}
.cta-grid{display:grid;grid-template-columns:1fr minmax(0,440px);gap:64px;align-items:start}
.cta-list{list-style:none;margin:22px 0 0;display:flex;flex-direction:column;gap:9px}
.cta-list li{font-size:15px;padding-left:22px;position:relative;color:var(--ink-soft)}
.cta-list li::before{content:"—";position:absolute;left:0;color:var(--gold)}
.contact-row{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;font-size:15px}
.contact-row a{border-bottom:1px solid var(--gold);padding-bottom:2px;min-height:24px;
  display:inline-flex;align-items:center}
.form{background:var(--paper);border:1px solid var(--hair);padding:34px;
  display:flex;flex-direction:column;gap:18px}
.form label{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  margin-bottom:7px;color:var(--ink-soft)}
.form input,.form textarea,.form select{width:100%;padding:13px 15px;min-height:44px;
  border:1px solid var(--hair);border-radius:0;font-family:inherit;font-size:16px;
  background:transparent;color:var(--ink)}
.form input:focus,.form textarea:focus,.form select:focus{outline:1px solid var(--gold);
  outline-offset:-1px;border-color:var(--gold)}
.form textarea{min-height:92px;resize:vertical}
.form .btn{width:100%}

/* ── ФУТЕР ── */
footer{background:var(--dark);color:rgba(237,231,222,.7);padding:64px 0 30px;font-size:14px}
.foot-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px;
  padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.1)}
.foot-top h3{font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:15px;color:#F6F1E9;font-family:'Inter',sans-serif;font-weight:600}
.foot-top a,.foot-top p{color:rgba(237,231,222,.68);display:block;margin-bottom:7px}
.foot-top a:hover{color:#F6F1E9}
.foot-bottom{padding-top:22px;font-size:12px;color:rgba(237,231,222,.5);
  display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;line-height:1.6}

.reveal{opacity:0;transform:translateY(10px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

@media(max-width:1000px){
  :root{--side:1fr}
  .hero .eyebrow,.hero h1,.hero .lead,.hero-cta{max-width:none}
  .hero-meta{gap:30px}
  .ben-item{grid-template-columns:1fr;gap:12px}
  .steps{grid-template-columns:repeat(2,1fr);gap:28px}
  .tex,.tex:nth-child(6n+1),.tex:nth-child(6n+2){grid-column:span 6}
  .ref-grid{grid-template-columns:repeat(2,1fr)}
  .cta-grid{grid-template-columns:1fr;gap:38px}
  .hnav{display:none}
}
@media(max-width:560px){
  body{font-size:16px}
  section{padding:60px 0}
  .hero{padding-top:130px}
  .steps{grid-template-columns:1fr}
  .tex,.tex:nth-child(6n+1),.tex:nth-child(6n+2){grid-column:span 12}
  .ref-grid{grid-template-columns:1fr}
  .hero-meta{flex-direction:column;gap:22px}
}
