/*
Theme Name: Markov Marketing
Theme URI: https://markov-marketing.ru
Author: Roman Markov
Description: Кастомная тема для сайта-портфолио перформанс-маркетолога. Тёплая бумага, Fraunces + IBM Plex, цифры в моноширинном.
Version: 1.0
Text Domain: markov
*/

:root{
  --paper:#F6F3EC;
  --paper-2:#EFEBDF;
  --ink:#1E1C17;
  --ink-soft:#5B564A;
  --line:#DEDACD;
  --accent:#1F6F63;
  --accent-2:#C1531F;
  --radius:16px;
  --radius-sm:8px;
  --container:1160px;
}

*{box-sizing:border-box;}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'IBM Plex Sans',system-ui,-apple-system,sans-serif;
  font-size:16px;
  line-height:1.5;
}

h1,h2,h3{
  font-family:'Fraunces',Georgia,serif;
  margin:0 0 .5em;
  font-weight:600;
  line-height:1.15;
}

p{margin:0 0 1em;}

a{color:var(--accent);text-decoration:none;}
a:hover{color:var(--accent-2);}

img{max-width:100%;height:auto;display:block;}

ul{margin:0;padding-left:1.1em;}

.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;}

.container{max-width:var(--container);margin:0 auto;padding:0 32px;}
@media (max-width:600px){ .container{padding:0 20px;} }

.section{padding:64px 0;border-top:1px solid var(--line);}
.section:first-of-type{border-top:none;}
@media (max-width:600px){ .section{padding:40px 0;} }

.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);}

/* Buttons */
.btn{display:inline-block;padding:15px 24px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;text-align:center;border:1px solid transparent;cursor:pointer;font-family:inherit;}
.btn-primary{background:var(--accent);color:#fff;}
.btn-primary:hover{background:var(--accent-2);color:#fff;}
.btn-outline{border-color:var(--ink);color:var(--ink);background:transparent;}
.btn-outline:hover{border-color:var(--accent-2);color:var(--accent-2);}
.btn-dark{background:var(--ink);color:var(--paper);}
.btn-dark:hover{background:var(--ink);color:var(--paper);opacity:.85;}
.btn-light{border:1px solid var(--paper);color:var(--paper);background:transparent;}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;}

/* Pills / badges */
.pill{display:inline-block;border:1px solid var(--line);border-radius:100px;padding:6px 14px;font-size:12px;color:var(--ink-soft);font-family:'IBM Plex Mono',monospace;letter-spacing:.02em;}
.pill-row{display:flex;gap:10px;flex-wrap:wrap;}

.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft);letter-spacing:.02em;margin-bottom:8px;display:block;}

/* Header / nav */
.site-header{width:100%;border-bottom:1px solid var(--line);}
.site-header .container{padding-top:20px;padding-bottom:20px;display:flex;align-items:center;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);}
.brand-mark{width:36px;height:36px;border-radius:8px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;font-family:'IBM Plex Mono',monospace;}
.brand-name{font-size:15px;font-weight:600;color:var(--ink);}
.main-nav{display:flex;align-items:center;gap:28px;}
.main-nav a{color:var(--ink-soft);font-size:14px;}
.main-nav a.current{color:var(--ink);font-weight:600;}
.main-nav .btn{padding:10px 20px;border-radius:100px;font-size:14px;}
.nav-toggle{display:none;}
@media (max-width:760px){
  .main-nav{position:fixed;inset:0;background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:24px;transform:translateX(100%);transition:transform .25s ease;z-index:50;}
  .main-nav.is-open{transform:translateX(0);}
  .main-nav a{font-size:18px;}
  .nav-toggle{display:block;background:none;border:1px solid var(--line);border-radius:8px;width:40px;height:40px;font-size:18px;z-index:60;}
}

/* Breadcrumb */
.breadcrumb{font-size:13px;color:var(--ink-soft);display:flex;gap:8px;align-items:center;padding-top:40px;}
.breadcrumb a{color:var(--ink-soft);}

/* Hero */
.hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center;padding:56px 0;}
.hero h1{font-size:50px;}
.hero p.lead{font-size:17px;line-height:1.6;color:var(--ink-soft);max-width:480px;}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;padding:32px 0;}
  .hero h1{font-size:32px;}
}

.stat-card{padding:8px;}
.stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 24px;border-bottom:1px solid var(--line);}
.stat-row:last-child{border-bottom:none;}
.stat-row .label{font-size:13px;color:var(--ink-soft);max-width:210px;}
.stat-row .num{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:600;white-space:nowrap;}
.stat-row .num.accent{color:var(--accent);}

/* Grids */
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.grid-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;}
@media (max-width:900px){ .grid-3{grid-template-columns:repeat(2,minmax(0,1fr));} .grid-5{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:600px){ .grid-2,.grid-3,.grid-5{grid-template-columns:1fr;} }

/* Check list */
.check-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px;}
.check-list li{padding-left:28px;position:relative;font-size:15px;color:var(--ink-soft);line-height:1.55;}
.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--accent);font-weight:600;}
@media (max-width:600px){ .check-list{grid-template-columns:1fr;} }

/* Role / audience cards */
.role-card{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:14px;}
.role-card ul{list-style:none;margin:0;padding:0;color:var(--ink-soft);font-size:15px;line-height:1.7;}
.role-card ul li{padding-left:18px;position:relative;}
.role-card ul li::before{content:"—";position:absolute;left:0;color:var(--ink-soft);}

/* Case cards */
.case-card{padding:28px;display:flex;flex-direction:column;gap:16px;}
.case-card .stat{font-family:'IBM Plex Mono',monospace;font-size:32px;font-weight:600;color:var(--accent);}
.case-card p{font-size:14px;color:var(--ink-soft);line-height:1.6;margin:0;}
.case-card .more{font-size:14px;font-weight:600;margin-top:auto;}

/* Process steps */
.step .num{font-family:'IBM Plex Mono',monospace;font-size:22px;color:var(--ink-soft);}
.step .title{font-size:15px;font-weight:600;margin:8px 0 4px;}
.step .desc{font-size:13px;color:var(--ink-soft);line-height:1.5;}

/* Dark strip */
.dark-strip{background:var(--ink);color:var(--paper);padding:44px 0;}
.dark-strip .container{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.dark-strip .eyebrow{color:#AEC3BE;}
.dark-strip .lead{font-size:20px;line-height:1.5;max-width:640px;}

/* Table */
table.results{width:100%;border-collapse:collapse;}
table.results td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top;}
table.results tr:last-child td{border-bottom:none;}
table.skills{width:100%;border-collapse:collapse;}
table.skills th,table.skills td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top;}
table.skills th{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft);font-weight:500;}
@media (max-width:700px){ table.results,table.skills{font-size:13px;} table.results td,table.skills td{padding:10px 6px;} }

/* FAQ */
.faq-item{padding:22px 0;border-bottom:1px solid var(--line);}
.faq-item:last-child{border-bottom:none;}
.faq-item .q{font-size:16px;font-weight:600;margin-bottom:8px;}
.faq-item .a{font-size:14px;color:var(--ink-soft);line-height:1.6;}

/* Footer */
.site-footer{padding-top:40px;}
.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-bottom:32px;}
.footer-grid a{display:block;font-size:14px;color:var(--ink);margin-bottom:8px;}
.footer-col-title{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft);margin-bottom:10px;display:block;}
.footer-bottom{border-top:1px solid var(--line);padding:24px 0 48px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--ink-soft);}
@media (max-width:700px){ .footer-grid{grid-template-columns:1fr;gap:24px;} }

/* Case proof block (used on service pages) */
.case-proof{padding:36px;display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:center;}
.case-proof .num{font-family:'IBM Plex Mono',monospace;font-size:38px;font-weight:600;color:var(--accent);}
@media (max-width:700px){ .case-proof{grid-template-columns:1fr;gap:16px;} }

.note-box{padding:22px 24px;}

.content-body h2{font-size:26px;margin-top:0;}
.content-body p{font-size:15px;line-height:1.7;color:var(--ink-soft);}
.content-body ul{color:var(--ink-soft);font-size:15px;line-height:1.75;}

.text-center{text-align:center;}
.muted{color:var(--ink-soft);}

/* fixes 2026-09-28 */
.container.hero{padding:56px 32px;}
@media (max-width:900px){.container.hero{padding:32px 32px;}}
@media (max-width:600px){.container.hero{padding:32px 20px;}}
.main-nav a.btn-dark,.main-nav a.btn-dark:hover{color:var(--paper);}
.single-keys main .container{max-width:824px !important;}
