* { margin: 0; padding: 0; box-sizing: border-box; }

:root{
    --pink-soft:#ffe3e6;
    --pink-light:#ffd0d6;
    --pink-mid:#ffb3bc;
    --coral:#ff5a5f;
    --coral-dark:#f0454b;
    --cream:#fff7f5;
    --ink:#3a2a2c;
    --ink-soft:#7a6366;
    --white:#ffffff;
    --ok:#2fbf71;
}

body{
    font-family:'Ubuntu','Trebuchet MS',sans-serif;
    font-size:18px;
    background:
        radial-gradient(1200px 600px at 80% -10%, #ffe9ec 0%, transparent 60%),
        radial-gradient(900px 500px at 0% 20%, #ffdfe4 0%, transparent 55%),
        linear-gradient(180deg, var(--pink-soft) 0%, var(--cream) 45%, #fff 100%);
    color: var(--ink);
    line-height:1.65;
    overflow-x:hidden;
}

a { text-decoration:none; color:inherit; transition:.3s ease; }
ul { list-style:none; }
img { max-width:100%; height:auto; display:block; }

.container { max-width:1200px; margin:0 auto; padding:0 24px; width:100%; }

/* --- ШАПКА --- */
header{
    position:sticky; top:0; z-index:50;
    background:linear-gradient(180deg, rgba(255,227,230,.95), rgba(255,227,230,.75));
    backdrop-filter:blur(10px);
    padding:14px 0;
    border-bottom:1px solid rgba(255,179,188,.4);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;}

/* --- ЛОГОТИП --- */
.logo {
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 700;
    line-height: 1.1;
    padding: 0;
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
}
.logo-mark {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    display: block;
}
.logo-text {
    font-weight: 700;
    font-size: 22px;
    letter-spacing: 0.02em;
    color: #111;
    text-transform: uppercase;
    line-height: 1;
}
.logo-text span {
    display: block;
    font-weight: 400;
    font-size: 12px;
    letter-spacing: 0.02em;
    opacity: 0.75;
    text-transform: none;
    color: #555;
    margin-top: 4px;
}

.header-spacer{width:220px;}

.desktop-nav ul{display:flex;gap:26px;}
.desktop-nav a{color:var(--ink);font-weight:500;font-size:15px;position:relative;padding-bottom:4px;}
.desktop-nav a::after{
    content:"";position:absolute;left:0;bottom:0;width:0;height:2px;
    background:var(--coral);transition:width .25s;
}
.desktop-nav a:hover{color:var(--coral);}
.desktop-nav a:hover::after{width:100%;}

.socials a{
    width:40px;
    height:40px;
    border-radius: 40px;
    display:grid;
    place-items:center;
    background:#fff;
    color:var(--coral);
    border:1px solid var(--pink-mid);
    box-shadow:0 6px 18px rgba(255,90,95,.15);
    font-weight:700;
}
.socials a:hover{background:var(--coral);color:#fff;border-color:var(--coral);}

/* --- БУРГЕР --- */
.burger {
    display: none;
    position: fixed;
    top: 25px;
    right: 20px;
    width: 40px;
    height: 30px;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 9999;
    padding: 0;
}
.burger span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: var(--ink);
    border-radius: 2px;
    left: 0;
    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.burger span:nth-child(1) { top: 0; }
.burger span:nth-child(2) { top: 50%; transform: translateY(-50%); }
.burger span:nth-child(3) { bottom: 0; }

.burger.active span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    background-color: var(--coral);
}
.burger.active span:nth-child(2) { opacity: 0; transform: translateX(-20px); }
.burger.active span:nth-child(3) {
    bottom: 50%;
    transform: translateY(50%) rotate(-45deg);
    background-color: var(--coral);
}

/* --- МОБИЛЬНОЕ МЕНЮ --- */
.mobile-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: linear-gradient(180deg, #fff 0%, #ffe3e6 100%);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease;
    transform: translateY(-100%);
}
.mobile-menu.active {
    display: flex;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.mobile-menu ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
}
.mobile-menu a {
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    position: relative;
    color: var(--ink);
}
.mobile-menu a::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: var(--coral);
    transition: width 0.3s ease;
}
.mobile-menu a:hover { color: var(--coral); }
.mobile-menu a:hover::after { width: 100%; }
.mobile-menu .mobile-socials {
    margin-top: 60px;
    display: flex;
    gap: 20px;
}
.mobile-menu .mobile-socials a {
    border: 1px solid var(--ink);
    border-radius: 20px;
    font-size: 1.2rem;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
.mobile-menu .mobile-socials a:hover {
    background-color: var(--coral);
    color: var(--white);
    border-color: var(--coral);
}

h1 {
    font-size:clamp(28px,3.6vw,44px);
    font-weight:700;
    letter-spacing:-.02em;
    margin-bottom:16px;
    line-height:1.15;
    color: #ea878d;
}

/* --- HERO --- */
.hero{
    position:relative;
    padding:90px 0 100px;
    overflow:hidden;
    background:
        radial-gradient(900px 500px at 10% 0%, #ffb3bc 0%, transparent 60%),
        radial-gradient(900px 600px at 100% 100%, #ff8a8f 0%, transparent 60%),
        linear-gradient(135deg, #ffb8bf 0%, #ff8a8f 45%, #ff6d72 100%);
    border-radius:0 0 40px 40px;
}
.hero-bg{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    opacity:.12;z-index:0;pointer-events:none;
}
.hero::after{
    content:"";position:absolute;inset:0;z-index:1;
    background:
        radial-gradient(600px 300px at 80% 90%, rgba(255,255,255,.25) 0%, transparent 70%),
        radial-gradient(500px 300px at 5% 10%, rgba(255,255,255,.18) 0%, transparent 70%);
    pointer-events:none;
}
.hero-inner{
    position:relative;z-index:2;
    display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;
}
.hero-content blockquote {
    font-size: clamp(44px,7vw,76px);
    line-height:.98;
    font-weight:700;
    color:#fff;
    letter-spacing:-.02em;
    margin-bottom:28px;
    text-shadow:0 10px 40px rgba(240,69,75,.35);
}
.hero-subtitle{
    color:#fff;
    font-size:clamp(15px,1.4vw,18px);
    line-height:1.55;
    max-width:560px;
    margin-bottom:36px;
    opacity:.95;
    text-shadow:0 4px 16px rgba(240,69,75,.25);
}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:44px;}

.btn-primary{
    display:inline-flex;align-items:center;gap:8px;
    padding:18px 36px;
    border-radius:999px;
    background:#fff;
    color:var(--coral);
    font-weight:700;
    font-size:15px;
    border:none;
    font-family:inherit;
    cursor:pointer;
    box-shadow:0 14px 34px rgba(240,69,75,.35);
    transition:transform .2s, box-shadow .2s;
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(240,69,75,.45);}

.btn-ghost{
    display:inline-flex;align-items:center;gap:8px;
    padding:18px 36px;
    border-radius:999px;
    background:rgba(255,255,255,.18);
    color:#fff;
    font-weight:700;
    font-size:15px;
    border:1px solid rgba(255,255,255,.55);
    font-family:inherit;
    cursor:pointer;
    backdrop-filter:blur(6px);
    transition:background .2s, transform .2s;
}
.btn-ghost:hover{background:rgba(255,255,255,.28);transform:translateY(-2px);}

.hero-stats{display:flex;gap:14px;flex-wrap:wrap;}
.hero-stat{
    background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.35);
    border-radius:20px;
    padding:18px 24px;
    color:#fff;
    min-width:150px;
    backdrop-filter:blur(10px);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25);
}
.hero-stat b{
    display:block;
    font-size:26px;
    font-weight:700;
    line-height:1.1;
    color:#fff;
}
.hero-stat span{font-size:13px;color:rgba(255,255,255,.85);}

/* --- СЕКЦИИ --- */
section{padding:80px 0;position:relative;}
.section-title{
    font-size:clamp(28px,3.6vw,44px);
    font-weight:700;
    letter-spacing:-.02em;
    margin-bottom:16px;
    line-height:1.15;
    color: #ea878d;
}
.section-subtitle{
    color: #000000;
    font-size: 18px;
    max-width:800px;
    margin-bottom:44px;
}

/* --- ПРЕИМУЩЕСТВА с крупными полупрозрачными эмодзи --- */
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;}
.feature-card{
    background:linear-gradient(180deg,#fff,#fff6f7);
    border:1px solid #ffe1e4;border-radius:24px;
    padding:36px 30px 32px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    transition:transform .25s, box-shadow .25s;
    position:relative;overflow:hidden;min-height:280px;
}
.feature-card:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(255,90,95,.16);}

/* фоновая большая цифра */
.feature-bg{
    position:absolute;right:-30px;top:-50px;font-size:220px;font-weight:700;
    color:rgba(255,90,95,.06);line-height:1;pointer-events:none;user-select:none;
    z-index:0;letter-spacing:-14px;overflow:visible;
}

/* крупный полупрозрачный эмодзи в левом верхнем углу */
.feature-card .feature-emoji {
    position: absolute;
    top: -30px;
    left: -200px;
    font-size: 300px;
    line-height: 1;
    opacity: 0.06;
    pointer-events: none;
    user-select: none;
    z-index: 1;
    transition: opacity .3s ease, transform .3s ease;
    filter: sepia(1) saturate(2) hue-rotate(322deg) brightness(0.9);
    transform: rotate(336deg);
}
.feature-card:hover .feature-emoji{
    opacity: 0.28;
    transform: scale(1.05) rotate(-4deg);
}

/* маленький номер под эмодзи */
.feature-card .feature-number
 {
    font-size: 80px;
    font-weight: 700;
    color: var(--coral);
    opacity: .7;
    margin: 0;
    /* letter-spacing: .15em; */
    position: relative;
    z-index: 2;
    padding: 0;
    margin: 0;
    height: 110px;
}
.feature-card h3{
    font-size:20px;
    margin-bottom:12px;
    position:relative;z-index:2;
    color:var(--ink);
}
.feature-card p{
    color:var(--ink-soft);
    font-size:15px;
    position:relative;z-index:2;
}

/* --- ЧИСЛА С МИНИ-ДИАГРАММАМИ --- */
.numbers-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:18px;
    margin:30px 0 50px;
}
.number-card{
    background:#fff;
    border:1px solid #ffe1e4;
    border-radius:20px;
    padding:24px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    transition:transform .25s, box-shadow .25s;
    position:relative;
    overflow:hidden;
}
.number-card:hover{transform:translateY(-4px);box-shadow:0 26px 54px rgba(255,90,95,.16);}
.number-card::after{
    content:"";
    position:absolute;
    right:-30px;
    bottom:-30px;
    width:120px;
    height:120px;
    background:radial-gradient(circle,rgba(255,90,95,.06) 0%, transparent 70%);
    border-radius:50%;
    pointer-events:none;
}
.number-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;position:relative;z-index:2;}
.number-value{
    font-size:32px;
    font-weight:700;
    color:var(--coral);
    line-height:1;
    letter-spacing:-.02em;
}
.number-tag{
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:var(--ink-soft);
    padding:4px 10px;
    border-radius:999px;
    background:#fff0f2;
    border:1px solid #ffe1e4;
}
.number-label{
    font-size: 16px;
    color:var(--ink-soft);
    line-height:1.5;
    position:relative;
    z-index:2;
}

.number-bar{
    height:8px;
    width:100%;
    background:#ffeef0;
    border-radius:999px;
    overflow:hidden;
    margin-bottom:14px;
    position:relative;z-index:2;
}
.number-bar span{
    display:block;
    height:100%;
    background:linear-gradient(90deg,var(--coral),#ff8a8f);
    border-radius:999px;
    transition:width 1s ease;
}
.number-bar.gray span{background:linear-gradient(90deg,#cfcfcf,#e5e5e5);}
.number-bar.ok span{background:linear-gradient(90deg,var(--ok),#5ad98f);}

.donut-mini{
    --p:50;
    width:70px;height:70px;border-radius:50%;
    background:conic-gradient(var(--coral) calc(var(--p) * 1%), #ffe1e4 0);
    display:grid;place-items:center;
    margin-bottom:14px;
    position:relative;z-index:2;
}
.donut-mini span{
    width:46px;height:46px;border-radius:50%;background:#fff;
    display:grid;place-items:center;
    font-size:11px;font-weight:700;color:var(--coral);
}
.donut-mini span::before{
    content:attr(data-value) "%";
}
.donut-mini[data-value="80"]{--p:80;}
.donut-mini[data-value="65"]{--p:65;}

.article-h3{
    font-size:22px;
    font-weight:700;
    margin:30px 0 14px;
    color:var(--ink);
    letter-spacing:-.01em;
}
.article-p{
    font-size:16px;
    color:var(--ink);
    margin-bottom:18px;
    line-height:1.8;
    max-width:800px;
}

/* --- ДЕМО --- */
.demo-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
    margin-bottom:30px;
}
.demo-card{
    background:#fff;
    border:1px solid #ffe1e4;
    border-radius:24px;
    padding:28px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    position:relative;
    overflow:hidden;
}
.demo-card.demo-before{/* border-left:5px solid #cfcfcf; */}
.demo-card.demo-after{/* border-left:5px solid var(--ok); */}

.demo-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.demo-badge{
    font-size: 16px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    padding:6px 14px;
    border-radius:999px;
    background:#f0f0f0;
    color:#555;
}
.demo-badge.ok{background:rgba(47,191,113,.12);color:var(--ok);}
.demo-head h4{font-size: 28px;font-weight:700;color:var(--ink);}

.demo-list{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;list-style:none;}
.demo-list li{
    font-size: 18px;
    color:var(--ink-soft);
    padding-left:22px;
    position:relative;
}
.demo-list li::before{
    content:"•";
    position:absolute;left:0;color:var(--coral);
    font-size:20px;line-height:1;
}

.demo-chart{
    display:flex;
    align-items:flex-end;
    gap:8px;
    height:120px;
    margin-bottom:12px;
    padding-bottom:8px;
    border-bottom:1px dashed #ffe1e4;
}
.demo-chart-line{
    flex:1;
    height:var(--w);
    background:linear-gradient(180deg,#cfcfcf,#e5e5e5);
    border-radius:6px 6px 0 0;
    transition:height 1s ease;
}
.demo-chart-line.ok{
    background:linear-gradient(180deg,var(--ok),#5ad98f);
    box-shadow:0 6px 16px rgba(47,191,113,.25);
}

.demo-note{
    font-size:13px;
    color:var(--ink-soft);
    font-weight:500;
}

.demo-metrics{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
    gap:16px;
    margin-top:24px;
}
.demo-metric{
    background:linear-gradient(135deg,var(--coral),#ff8a8f);
    color:#fff;
    border-radius:20px;
    padding:24px 20px;
    text-align:center;
    box-shadow:0 18px 40px rgba(255,90,95,.2);
}
.demo-metric-num{
    display:block;
    font-size:32px;
    font-weight:700;
    line-height:1;
    margin-bottom:6px;
}
.demo-metric-label{
    font-size: 18px;
    color:#ffe1e4;
}

/* --- СТАТ-КАРТОЧКИ (водяной знак) --- */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin:30px 0;}
.stat-card{
    background:#fff;border:1px solid #ffe1e4;border-radius:20px;padding:26px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    transition:transform .25s, box-shadow .25s;
    position:relative;overflow:hidden;
}
.stat-card:hover{transform:translateY(-4px);box-shadow:0 26px 54px rgba(255,90,95,.16);}
.stat-card .num{font-size: 46px;font-weight:700;color: #ff878c;line-height:1;margin-bottom:10px;position:relative;z-index:2;}
.stat-card .label{color:var(--ink-soft);font-size: 16px;line-height:1.5;position:relative;z-index:2;}
.stat-card .watermark{
    position:absolute;right:-20px;bottom:-40px;font-size:180px;font-weight:700;
    color:rgba(255,90,95,.07);line-height:1;pointer-events:none;user-select:none;
    z-index:1;letter-spacing:-10px;white-space:nowrap;
}

/* --- ГРАФИКИ --- */
.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin:30px 0;}
.chart-card{
    background:#fff;border:1px solid #ffe1e4;border-radius:24px;padding:26px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
}
.chart-title{font-size: 18px;font-weight:700;margin-bottom:6px;}
.chart-desc{color:var(--ink-soft);font-size: 16px;margin-bottom:20px;}

.bar-chart{display:flex;align-items:flex-end;gap:14px;height:220px;padding-top:20px;}
.bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;}
.bar-value{font-size:13px;color:var(--coral);font-weight:700;margin-bottom:6px;}
.bar{
    width:100%;max-width:60px;
    background:linear-gradient(180deg,var(--coral),#ff8a8f);
    border-radius:10px 10px 0 0;transition:height .8s ease;
    box-shadow:0 8px 20px rgba(255,90,95,.25);
}
.bar.ok{background:linear-gradient(180deg,var(--ok),#5ad98f);}
.bar-label{font-size:12px;color:var(--ink-soft);margin-top:10px;text-align:center;}

.donut-wrapper{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.donut{
    width:160px;height:160px;border-radius:50%;
    position:relative;flex-shrink:0;
    box-shadow:0 18px 40px rgba(255,90,95,.15);
}
.donut::before{content:"";position:absolute;inset:16px;background:#fff;border-radius:50%;z-index:2;}
.donut::after{
    content:attr(data-value);position:absolute;inset:0;display:grid;place-items:center;
    font-weight:700;font-size:26px;color:var(--coral);z-index:3;pointer-events:none;
}
.donut-legend{display:flex;flex-direction:column;gap:10px;font-size:14px;}
.legend-item{display:flex;align-items:center;gap:10px;color:var(--ink-soft);}
.legend-color{width:14px;height:14px;border-radius:5px;flex-shrink:0;}
.legend-color.red{background:var(--coral);}
.legend-color.gray{background:#ffd7db;}
.legend-color.ok{background:var(--ok);}

/* --- СТАТЬЯ --- */
.article-content{max-width:900px;margin:0 auto;}
.article-content p{font-size: 18px;color:var(--ink);margin-bottom:20px;line-height:1.8;}
.article-content h3{font-size:26px;font-weight:700;margin:44px 0 18px;line-height:1.2;}
.article-content ul{margin:0 0 24px 22px;}
.article-content ul li{margin-bottom:10px;color:var(--ink);font-size: 18px;line-height:1.7;}
.article-content blockquote{
    background:linear-gradient(135deg,#fff,#fff0f2);
    border-left:5px solid var(--coral);
    border-radius:0 18px 18px 0;
    padding:26px 30px;margin:30px 0;
    font-size:17px;color:var(--ink);line-height:1.7;
    box-shadow:0 12px 30px rgba(255,90,95,.08);
}
.article-content blockquote strong{color:var(--coral);}
.article-content .highlight{
    background:linear-gradient(135deg,var(--coral),#ff8a8f);
    color:#fff;border-radius:22px;padding:30px 34px;margin:34px 0;
    box-shadow:0 20px 50px rgba(255,90,95,.25);
    position:relative;overflow:hidden;
}
.article-content .highlight::before{
    content:"💡";position:absolute;right:-10px;bottom:-30px;
    font-size:160px;opacity:.22;pointer-events:none;
}
.article-content .highlight p{color:#fff;margin:0;font-size:17px;line-height:1.7;position:relative;z-index:2;}
.article-content .highlight strong{font-size:20px;display:block;margin-bottom:8px;}

/* --- ТАБЛИЦА --- */
.price-table{
    width:100%;border-collapse:collapse;background:#fff;border-radius:22px;overflow:hidden;
    box-shadow:0 18px 40px rgba(255,90,95,.08);border:1px solid #ffe1e4;margin:30px 0;
}
.price-table th, .price-table td{
    padding:18px 22px;
    text-align:left;
    font-size: 18px;
    border-bottom:1px solid #ffeef0;
}
.price-table th{
    background:linear-gradient(135deg,var(--coral),#ff8a8f);
    color:#fff;font-weight:700;font-size:14px;
    letter-spacing:.03em;text-transform:uppercase;
}
.price-table tr:last-child td{border-bottom:none;}
.price-table td:last-child{color:var(--coral);font-weight:700;}
.price-table tr:hover td{background:#fff7f8;}

/* --- ТАРИФЫ --- */
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:20px;}
.pricing-card{
    background:#fff;
    border:1px solid #ffe1e4;
    border-radius:26px;
    padding:34px 28px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    position:relative;
    transition:transform .25s, box-shadow .25s;
    /* overflow:hidden; */
}
.pricing-card:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(255,90,95,.16);}
.pricing-card.popular{
    background:linear-gradient(180deg,#fff,#fff0f2);
    border-color:var(--pink-mid);
    box-shadow:0 24px 60px rgba(255,90,95,.18);
    transform:scale(1.02);
}
.popular-badge{
    position:absolute;top:-14px;left:50%;transform:translateX(-50%);
    background:var(--coral);color:#fff;padding:8px 22px;border-radius:999px;
    font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
    box-shadow:0 8px 20px rgba(255,90,95,.35);white-space:nowrap;z-index:3;
}
.pricing-card .plan-emoji{
    display:inline-flex;align-items:center;justify-content:center;
    width:56px;height:56px;border-radius:16px;
    background:linear-gradient(135deg,#fff0f2,#ffe1e4);
    box-shadow:0 8px 20px rgba(255,90,95,.15);
    font-size:30px;line-height:1;margin-bottom:18px;
    position:relative;z-index:2;
}
.pricing-card h3{font-size:24px;margin-bottom:20px;position:relative;z-index:2;}
.pricing-features{display:flex;flex-direction:column;gap:12px;margin-bottom:26px;position:relative;z-index:2;}
.pricing-features li{color:var(--ink-soft);font-size: 18px;padding-left:26px;position:relative;}
.pricing-features li::before{content:"✓";position:absolute;left:0;color:var(--coral);font-weight:700;}
.price{
    font-size:32px;font-weight:700;color:var(--ink);margin-bottom:22px;letter-spacing:-.02em;
    position:relative;z-index:2;
}
.price span{font-size:15px;color:var(--ink-soft);font-weight:400;}
.btn-plan{
    width:100%;background:var(--coral);color:#fff;border:none;border-radius:999px;
    padding:16px;font-weight:700;font-size:15px;cursor:pointer;font-family:inherit;
    box-shadow:0 12px 28px rgba(255,90,95,.3);
    transition:transform .2s, background .2s;position:relative;z-index:2;
}
.btn-plan:hover{background:var(--coral-dark);transform:translateY(-2px);}

/* --- МОДАЛКА --- */
.plan-modal{
    display:none;position:fixed;inset:0;z-index:10000;
    background:rgba(58,42,44,.55);backdrop-filter:blur(6px);
    align-items:center;justify-content:center;padding:20px;overflow-y:auto;
}
.plan-modal.open{display:flex;}
.plan-modal-inner{
    background:#fff;border-radius:26px;padding:38px 32px;max-width:520px;width:100%;
    box-shadow:0 30px 80px rgba(255,90,95,.3);position:relative;
    animation:pop .3s ease;
}
@keyframes pop{from{transform:scale(.9);opacity:0;}to{transform:scale(1);opacity:1;}}
.plan-modal-close{
    position:absolute;top:14px;right:18px;background:none;border:none;
    font-size:32px;color:var(--ink-soft);cursor:pointer;line-height:1;
}
.plan-modal-close:hover{color:var(--coral);}
.plan-modal-head{margin-bottom:24px;}
.plan-modal-label{
    color:var(--coral);font-weight:700;font-size:12px;
    letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:8px;
}
.plan-modal-head h3{font-size:26px;margin-bottom:6px;}
.plan-modal-price{color:var(--coral);font-weight:700;font-size:20px;}
.plan-form{display:flex;flex-direction:column;gap:16px;}
.plan-field label{display:block;font-size:13px;color:var(--ink-soft);margin-bottom:6px;font-weight:500;}
.plan-field input, .plan-field textarea{
    width:100%;padding:13px 16px;border:1px solid #ffe1e4;border-radius:12px;
    background:#fff9fa;color:var(--ink);font-family:inherit;font-size:15px;transition:.2s;
}
.plan-field input:focus, .plan-field textarea:focus{
    outline:none;border-color:var(--coral);box-shadow:0 0 0 4px rgba(255,90,95,.12);background:#fff;
}
.plan-submit{
    background:var(--coral);color:#fff;border:none;border-radius:999px;
    padding:16px;font-weight:700;font-size:15px;cursor:pointer;font-family:inherit;
    box-shadow:0 12px 28px rgba(255,90,95,.3);
    transition:transform .2s, background .2s;margin-top:6px;
}
.plan-submit:hover{background:var(--coral-dark);transform:translateY(-2px);}
.plan-hint{color:var(--ink-soft);font-size:12px;text-align:center;line-height:1.5;}

/* --- КОНТАКТЫ --- */
.contacts-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.contacts-label{
    color:var(--coral);font-weight:700;letter-spacing:.1em;
    text-transform:uppercase;font-size:13px;display:block;margin-bottom:14px;
}
.contacts-title{font-size:clamp(28px,3.6vw,42px);font-weight:700;letter-spacing:-.02em;margin-bottom:16px;line-height:1.1;}
.contacts-title em{color:var(--coral);font-style:normal;}
.contacts-subtitle{color:var(--ink-soft);font-size:16px;}
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.contact-card{
    background:#fff;border:1px solid #ffe1e4;border-radius:24px;padding:26px;
    box-shadow:0 18px 40px rgba(255,90,95,.08);
    transition:transform .25s, box-shadow .25s;display:block;
    position:relative;overflow:hidden;
}
.contact-card:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(255,90,95,.16);}
.contact-card::after {
    content: attr(data-emoji);
    position: absolute;
    right: -100px;
    bottom: -40px;
    font-size: 250px;
    line-height: 1;
    opacity: .03;
    pointer-events: none;
    z-index: 0;
    filter: sepia(1) saturate(2) hue-rotate(316deg) brightness(0.9);
    transform: rotate(336deg);
}
.contact-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;position:relative;z-index:2;}
.contact-icon{
    width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--coral),#ff8a8f);color:#fff;
}
.contact-icon svg{width:24px;height:24px;}
.contact-arrow{color:var(--coral);font-size:22px;font-weight:700;}
.contact-card-body h3{font-size: 20px;margin-bottom: 4px;position:relative;z-index:2;}
.contact-value{color:var(--coral);font-weight:700;font-size: 18px;margin-bottom:4px;word-break:break-word;position:relative;z-index:2;}
.contact-note{color:var(--ink-soft);font-size: 16px;position:relative;z-index:2;}

/* --- ФУТЕР --- */
footer{
    background:linear-gradient(135deg,var(--coral),#ff8a8f);
    color:#fff;border-radius:40px 40px 0 0;padding:70px 0 30px;margin-top:40px;
    text-align:center;position:relative;overflow:hidden;
}
footer::before
 {
    content: "🚀";
    position: absolute;
    left: -40px;
    bottom: -250px;
    font-size: 560px;
    opacity: .12;
    pointer-events: none;
    filter: sepia(1) saturate(2) hue-rotate(316deg) brightness(0.9);
    transform: rotate(3deg);
}
footer h2{font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;font-weight:700;letter-spacing:-.02em;position:relative;z-index:2;}
footer p{color:#ffe1e4;margin-bottom:30px;font-size: 18px;position:relative;z-index:2;}
.footer-btn{
    background:#fff;
    color:var(--coral);
    border:none;
    border-radius:999px;
    padding:18px 40px;
    font-weight:700;
    font-size: 18px;
    cursor:pointer;
    font-family:inherit;
    box-shadow:0 14px 34px rgba(0,0,0,.15);
    transition:transform .2s;
    position:relative;
    z-index:2;
}
.footer-btn:hover{transform:translateY(-2px);}
.footer-bottom{color:#ffe1e4;font-size: 16px;margin-top:40px;opacity:.9;position:relative;z-index:2;}

/* --- CTA --- */
.cta-block{
    background:linear-gradient(135deg,#fff,#fff0f2);
    border:1px solid var(--pink-mid);border-radius:28px;padding:44px 38px;
    display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center;
    box-shadow:0 24px 60px rgba(255,90,95,.12);margin-top:30px;
    position:relative;overflow:hidden;
}
.cta-block::before{
    content:"✨";position:absolute;right:-30px;top:-40px;
    font-size:200px;opacity:.14;pointer-events:none;
}
.cta-block h3{font-size:26px;margin-bottom:12px;letter-spacing:-.01em;line-height:1.2;position:relative;z-index:2;}
.cta-block p{color:var(--ink-soft);font-size:15px;position:relative;z-index:2;}
.cta-block .btn-primary{background:var(--coral);color:#fff;display:inline-block;margin-top:16px;box-shadow:0 14px 34px rgba(255,90,95,.35);position:relative;z-index:2;}
.cta-block .hero-stat{background:linear-gradient(135deg,var(--coral),#ff8a8f);color:#fff;border:none;padding:26px;min-width:auto;text-align:center;position:relative;z-index:2;}

/* --- АДАПТИВНОСТЬ --- */
@media (max-width: 960px){
    .hero-inner{grid-template-columns:1fr;}
    .hero{padding:60px 0 70px;border-radius:0 0 30px 30px;}
    .contacts-wrapper{grid-template-columns:1fr;}
    .cta-block{grid-template-columns:1fr;padding:32px 26px;}
    .demo-grid{grid-template-columns:1fr;}

    .logo { position: static; transform: none; margin-bottom: 0; }
    .logo-mark { width: 38px; height: 38px; }
    .logo-text { font-size: 18px; }
    .logo-text span { font-size: 10px; }

    .header-spacer{display:none;}
    .header-inner{justify-content:space-between;}
    .desktop-nav{display:none;}
    .socials{display:none;}
    .burger{display:block;}
    .mobile-menu{display:flex;}

    section{padding:56px 0;}
    .section-title{font-size:clamp(24px,5vw,34px);}
    .price-table th, .price-table td{padding:14px 16px;font-size:14px;}
    .price-table td:last-child{font-size:13px;}
    .charts-grid{grid-template-columns:1fr;}
    .bar-chart{height:180px;}

    .stat-card .watermark{font-size:130px;right:-15px;bottom:-30px;}
    .feature-card .feature-bg{font-size:160px;right:-20px;top:-40px;letter-spacing:-10px;}
    .feature-card .feature-emoji{font-size:120px;top:-20px;left:-10px;}
    .pricing-card .plan-emoji{width:48px;height:48px;font-size:26px;}
    .contact-card::after{font-size:140px;}
}

@media (max-width: 560px){
    .container{padding:0 18px;}
    .contacts-grid{grid-template-columns:1fr;}
    .hero-stats{gap:10px;}
    .hero-stat{min-width:calc(50% - 5px);padding:14px 18px;flex:1;}
    .hero-stat b{font-size:20px;}
    .hero-stat span{font-size:11px;}
    .hero-buttons .btn-primary, .hero-buttons .btn-ghost{width:100%;justify-content:center;padding:16px 24px;}
    .donut{width:140px;height:140px;}
    .donut::after{font-size:22px;}
    .article-content h3{font-size:22px;}
    .pricing-card{padding:28px 22px;}
    .price{font-size:28px;}
    .plan-modal-inner{padding:30px 22px;}
    .mobile-menu a{font-size: 1rem;}
    .feature-card .feature-bg{font-size: 500px;}
    .feature-card .feature-emoji{font-size:100px;opacity:.15;}
    .number-value{font-size:26px;}
    .demo-card{padding:22px;}
    .demo-metric-num{font-size:26px;}
    .demo-chart{height:100px;}
}
.section-title {
    filter: sepia(1) saturate(3) hue-rotate(
304deg) brightness(1);
    display: inline-block;
    margin-right: 6px;
}

/* ============================================================
   ФИКС: всё по центру на мобильных
   ============================================================ */
@media (max-width: 960px){
    html, body{
        max-width: 100%;
        overflow-x: hidden;
    }
    .container{
        padding: 0 20px;
        max-width: 100%;
    }
    section{
        max-width: 100%;
        overflow-x: hidden;
    }

    /* эмодзи в карточках — уменьшить и убрать вылет влево */
    .feature-card{
        overflow: hidden !important;
        min-height: auto;
    }
    .feature-card .feature-emoji{
        font-size: 150px !important;
        top: -25px !important;
        left: -40px !important;
    }
    .feature-card .feature-number{
        font-size: 56px !important;
    }

    /* фон футера и контактов */
    footer{ overflow: hidden; }
    footer::before{
        font-size: 380px !important;
        left: -30px !important;
        bottom: -180px !important;
    }
    .contact-card{
        overflow: hidden !important;
    }
    .contact-card::after{
        font-size: 160px !important;
        right: -60px !important;
        bottom: -30px !important;
    }
    .cta-block{
        overflow: hidden !important;
    }
    .cta-block::before{
        font-size: 140px !important;
    }
    .article-content .highlight{
        overflow: hidden !important;
    }
    .article-content .highlight::before{
        font-size: 120px !important;
    }

    /* сетки — гарантированно 1 колонка без переполнения */
    .features-grid,
    .numbers-grid,
    .charts-grid,
    .pricing-grid,
    .demo-grid,
    .contacts-grid,
    .stat-grid,
    .audience-grid{
        grid-template-columns: 1fr !important;
        max-width: 100%;
    }

    /* таблица — скролл, если не влезает */
    .price-table{
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

@media (max-width: 560px){
    .container{ padding: 0 16px; }
    .feature-card .feature-emoji{
        font-size: 210px !important;
        left: -130px !important;
        top: -100px !important;
    }
    .feature-card .feature-number{font-size: 64px !important;}
    footer::before{
        font-size: 260px !important;
        left: -20px !important;
        bottom: -120px !important;
    }
    .contact-card::after{
        font-size: 120px !important;
        right: -40px !important;
        bottom: -20px !important;
    }
}

.creative-block{
    padding: 80px 0 40px;
    position: relative;
    overflow: hidden;
}
.creative-block .container{
    position: relative;
    z-index: 2;
}

.creative-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 26px;
    margin-top: 44px;
}

.creative-card{
    position: relative;
    display: block;
    border-radius: 28px;
    padding: 40px 36px 36px;
    overflow: hidden;
    text-decoration: none;
    color: var(--ink);
    min-height: 420px;
    transition: transform .35s ease, box-shadow .35s ease;
    isolation: isolate;
}
.creative-card:hover{
    transform: translateY(-6px);
}
.creative-card:hover .creative-bg-svg{
    transform: scale(1.06);
    opacity: .3;
}
.creative-card:hover .creative-arrow{
    transform: translate(4px, -4px);
}
.creative-card:hover .creative-icon-wrap{
    transform: scale(1.06);
}

/* ---- Фоновая SVG ---- */
.creative-bg-svg{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .22;
    z-index: 0;
    transition: transform .7s ease, opacity .4s ease;
    pointer-events: none;
    transform-origin: center;
}

/* ---- Розовая карточка (Художник) ---- */
.creative-card--art{
    background: linear-gradient(140deg, #ffe6ea 0%, #ffd4dd 55%, #ffbfcb 100%);
    box-shadow: 0 20px 60px rgba(255, 140, 155, .22);
}
.creative-card--art:hover{
    box-shadow: 0 30px 70px rgba(255, 140, 155, .32);
}
.creative-card--art .creative-card-tag{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
    color: #c9616e;
}
.creative-card--art .creative-icon-wrap{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
}
.creative-card--art .creative-icon-wrap svg{ stroke: #d96b7a; }
.creative-card--art .creative-card-footer{
    border-top: 1px solid rgba(255,255,255,.55);
}
.creative-card--art .creative-arrow{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
    color: #d96b7a;
}
.creative-card--art .creative-price{ color: #c9616e; }
.creative-card--art .creative-price span{ color: #a87982; }

/* ---- Персиковая карточка (Музыкант) ---- */
.creative-card--music{
    background: linear-gradient(140deg, #ffeee0 0%, #ffe0c9 55%, #ffceb3 100%);
    box-shadow: 0 20px 60px rgba(255, 175, 140, .22);
}
.creative-card--music:hover{
    box-shadow: 0 30px 70px rgba(255, 175, 140, .32);
}
.creative-card--music .creative-card-tag{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
    color: #b8724a;
}
.creative-card--music .creative-icon-wrap{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
}
.creative-card--music .creative-icon-wrap svg{ stroke: #c98056; }
.creative-card--music .creative-card-footer{
    border-top: 1px solid rgba(255,255,255,.55);
}
.creative-card--music .creative-arrow{
    background: rgba(255,255,255,.75);
    border: 1px solid rgba(255,255,255,.9);
    color: #c98056;
}
.creative-card--music .creative-price{color: #ce8c85;}
.creative-card--music .creative-price span{color: #aa6f4c;}

/* ---- Содержимое карточки ---- */
.creative-content{
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.creative-icon-wrap{
    width: 78px;
    height: 78px;
    border-radius: 22px;
    display: grid;
    place-items: center;
    margin-bottom: 22px;
    transition: transform .35s ease;
    backdrop-filter: blur(6px);
}
.creative-icon-wrap svg{
    width: 40px;
    height: 40px;
    stroke-width: 1.6;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.creative-card-tag{
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    padding: 8px 16px;
    border-radius: 999px;
    margin-bottom: 22px;
    width: fit-content;
    backdrop-filter: blur(6px);
}

.creative-card-title{
    font-size: 36px;
    font-weight: 500;
    color: #c9616e;
    margin-bottom: 14px;
    letter-spacing: -.01em;
    line-height: 1.2;
}
.creative-card--music .creative-card-title{
    color: #ce8c85;
}

.creative-card-text{
    font-size: 16px;
    line-height: 1.65;
    color: #7a5560;
    margin-bottom: 28px;
    max-width: 95%;
}
.creative-card--music .creative-card-text{
    color: #7a5a48;
}

.creative-card-footer{
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-top: 26px;
}

.creative-price{
    font-size: 30px;
    font-weight: 700;
    letter-spacing: .01em;
}
.creative-price span{
    display: block;
    font-size: 16px;
    font-weight: 400;
    opacity: .9;
    margin-top: 4px;
}

.creative-arrow{
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 700;
    flex-shrink: 0;
    transition: transform .35s ease, background .35s ease;
    backdrop-filter: blur(6px);
}

/* ---- Адаптивность блоков ---- */
@media (max-width: 960px){
    .creative-grid{
        grid-template-columns: 1fr;
        gap: 22px;
    }
    .creative-card{
        padding: 34px 28px 30px;
        min-height: auto;
        border-radius: 24px;
    }
    .creative-card-title{ font-size: 26px; }
    .creative-card-text{ max-width: 100%; }
    .creative-icon-wrap{
        width: 68px; height: 68px;
        border-radius: 20px;
        margin-bottom: 20px;
    }
    .creative-icon-wrap svg{ width: 34px; height: 34px; }
}

@media (max-width: 560px){
    .creative-block{ padding: 50px 0 30px; }
    .creative-card{
        padding: 28px 22px 26px;
        border-radius: 22px;
    }
    .creative-card-title{ font-size: 22px; }
    .creative-card-text{ font-size: 15px; }
    .creative-card-footer{
        flex-wrap: wrap;
        gap: 14px;
        padding-top: 22px;
    }
    .creative-icon-wrap{
        width: 58px; height: 58px;
        border-radius: 16px;
        margin-bottom: 18px;
    }
    .creative-icon-wrap svg{ width: 28px; height: 28px; }
    .creative-arrow{
        width: 44px; height: 44px;
        font-size: 18px;
    }
}


