:root{
    --bg:#efede6;
    --bg-alt:#e7e3da;
    --paper:#f7f4ec;
    --paper-strong:#fbf9f3;
    --glass:rgba(255,255,255,.56);
    --glass-strong:rgba(255,255,255,.72);
    --ink:#1a1f1b;
    --ink-soft:#4e5a51;
    --line:rgba(33,41,35,.11);
    --line-strong:rgba(33,41,35,.17);
    --accent:#8FD400;
    --accent-deep:#5f8e00;
    --accent-soft:rgba(143,212,0,.14);
    --earth:#d7cfbe;
    --earth-deep:#b9af9a;
    --shadow-lg:0 22px 80px rgba(22,28,23,.08);
    --shadow-md:0 12px 34px rgba(22,28,23,.06);
    --shadow-sm:0 8px 18px rgba(22,28,23,.045);
    --radius-xl:34px;
    --radius-lg:26px;
    --radius-md:20px;
    --radius-sm:14px;
    --shell:1240px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    color:var(--ink);
    font-family:Inter, Arial, Helvetica, sans-serif;
    line-height:1.6;
    background:
        radial-gradient(circle at 12% 12%, rgba(255,255,255,.72) 0, rgba(255,255,255,0) 22%),
        radial-gradient(circle at 88% 8%, rgba(154,214,27,.08) 0, rgba(143,212,0,0) 28%),
        radial-gradient(circle at 82% 86%, rgba(164,150,118,.11) 0, rgba(164,150,118,0) 24%),
        linear-gradient(180deg, #f3f0e9 0%, #ece8df 100%);
    min-height:100vh;
    position:relative;
}
body::before,
body::after{
    content:"";
    position:fixed;
    inset:auto;
    z-index:-1;
    pointer-events:none;
    filter:blur(10px);
}
body::before{
    width:42vw;
    height:42vw;
    min-width:280px;
    min-height:280px;
    left:-12vw;
    top:8vh;
    background:radial-gradient(circle at 40% 40%, rgba(255,255,255,.76), rgba(255,255,255,0) 66%);
    border-radius:45% 55% 58% 42% / 40% 38% 62% 60%;
}
body::after{
    width:38vw;
    height:38vw;
    min-width:260px;
    min-height:260px;
    right:-10vw;
    top:48vh;
    background:radial-gradient(circle at 50% 50%, rgba(154,214,27,.08), rgba(143,212,0,0) 68%);
    border-radius:59% 41% 49% 51% / 43% 62% 38% 57%;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.shell{width:min(calc(100% - 32px), var(--shell));margin-inline:auto}

.site-header{
    position:sticky;
    top:0;
    z-index:60;
    padding-top:14px;
}
.site-header__inner{
    display:flex;
    align-items:center;
    gap:22px;
    padding:14px 18px;
    border:1px solid rgba(255,255,255,.46);
    border-radius:999px;
    background:linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.48));
    backdrop-filter:blur(20px) saturate(1.15);
    box-shadow:var(--shadow-md);
}
.site-brand{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
    flex:0 0 auto;
}
.site-brand img{width:66px;height:auto;filter:drop-shadow(0 10px 12px rgba(46,58,41,.08))}
.site-brand strong{
    display:block;
    font-size:1rem;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.site-brand small{display:block;color:var(--ink-soft);font-size:.86rem}
.site-nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;flex:1 1 auto}
.site-nav{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
    min-width:0;
}
.site-nav > a,
.site-nav__dropdown > button{
    border:none;
    cursor:pointer;
    font-weight:650;
    padding:12px 16px;
    border-radius:999px;
    color:var(--ink);
    background:transparent;
    transition:.24s ease;
}
.site-nav > a:hover,
.site-nav__dropdown > button:hover,
.site-nav > a.is-active{
    background:rgba(255,255,255,.58);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.58), 0 8px 20px rgba(28,36,29,.04);
}
.site-nav > a.is-active{position:relative}
.site-nav > a.is-active::after{
    content:"";
    position:absolute;
    left:18px;
    right:18px;
    bottom:8px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--accent), rgba(143,212,0,.14));
}
.site-nav__dropdown{position:relative}
.site-nav__dropdown::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:100%;
    height:14px;
    pointer-events:auto;
}
.site-nav__dropdown-menu{
    position:absolute;
    top:calc(100% - 2px);
    right:0;
    min-width:320px;
    padding:14px;
    border-radius:28px;
    border:1px solid rgba(255,255,255,.58);
    background:linear-gradient(180deg, rgba(255,255,255,.84), rgba(248,245,238,.88));
    backdrop-filter:blur(24px) saturate(1.1);
    box-shadow:var(--shadow-lg);
    display:grid;
    gap:8px;
    opacity:0;
    pointer-events:none;
    transform:translateY(10px);
    transition:.22s ease;
}
.site-nav__dropdown:hover .site-nav__dropdown-menu,
.site-nav__dropdown:focus-within .site-nav__dropdown-menu,
.site-nav__dropdown.is-open .site-nav__dropdown-menu{opacity:1;pointer-events:auto;transform:none}
.site-nav__dropdown-menu a{
    padding:12px 14px;
    border-radius:16px;
    color:var(--ink);
    background:rgba(255,255,255,.3);
}
.site-nav__dropdown-menu a:hover{background:rgba(154,214,27,.08)}
.site-header__contacts{
    display:grid;
    gap:4px;
    text-align:right;
    font-size:.93rem;
    flex:0 0 auto;
}
.site-header__contacts a:last-child{color:var(--ink-soft)}
.site-burger{display:none;width:50px;height:50px;border-radius:16px;border:1px solid rgba(255,255,255,.58);background:rgba(255,255,255,.6);cursor:pointer;padding:12px}
.site-burger span{display:block;width:100%;height:2px;background:var(--ink);border-radius:999px;margin:5px 0}

.pap-page{padding:36px 0 88px}
.preview-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.54);
    border:1px solid rgba(255,255,255,.44);
    box-shadow:var(--shadow-sm);
    margin-bottom:18px;
    font-weight:650;
}
.preview-badge::before{
    content:"";
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 0 5px rgba(143,212,0,.12);
}

.pap-hero,
.page-hero{
    display:grid;
    grid-template-columns:minmax(0, 1.02fr) minmax(360px, .98fr);
    gap:24px;
    align-items:stretch;
    margin-bottom:34px;
}
.pap-hero__content,
.pap-hero__visual,
.page-hero__text,
.page-hero__media,
.section-card,
.audience-card,
.advantage-card,
.quick-card,
.info-card,
.price-card,
.faq-card,
.notice-card,
.request-card,
.contact-card,
.glass-card{
    position:relative;
    border-radius:var(--radius-xl);
    background:linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.52));
    border:1px solid rgba(255,255,255,.5);
    backdrop-filter:blur(20px) saturate(1.06);
    box-shadow:var(--shadow-md);
    overflow:hidden;
}
.pap-hero__content,
.page-hero__text,
.section-card,
.request-card{padding:34px}
.pap-hero__content::before,
.page-hero__text::before,
.section-card::before,
.request-card::before,
.info-card::before,
.price-card::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 100% 0, rgba(143,212,0,.09), rgba(143,212,0,0) 32%),
        radial-gradient(circle at 0 100%, rgba(185,175,154,.12), rgba(185,175,154,0) 28%);
}
.pap-hero__content::after,
.page-hero__text::after,
.section-card::after,
.request-card::after{
    content:"";
    position:absolute;
    right:-58px;
    top:-42px;
    width:180px;
    height:180px;
    border-radius:43% 57% 62% 38% / 41% 39% 61% 59%;
    background:linear-gradient(135deg, rgba(255,255,255,.74), rgba(255,255,255,0));
    opacity:.78;
    pointer-events:none;
}
.pap-hero__visual,
.page-hero__media{padding:22px}

.pap-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.6);
    border:1px solid rgba(255,255,255,.48);
    box-shadow:var(--shadow-sm);
    margin-bottom:18px;
    font-weight:700;
    letter-spacing:.03em;
}
.pap-kicker::before{
    content:"";
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 0 5px rgba(143,212,0,.13);
}
h1,h2,h3{margin:0 0 14px;line-height:1.08;letter-spacing:-.03em}
h1{font-size:clamp(2.2rem, 4.2vw, 4.8rem);max-width:10.5ch}
h2{font-size:clamp(1.6rem, 2.4vw, 2.65rem)}
h3{font-size:1.14rem}
p{margin:0 0 14px}
.pap-lead{max-width:62ch;font-size:1.08rem;color:var(--ink-soft)}

.hero-points{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 28px}
.hero-points span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.56);
    border:1px solid rgba(255,255,255,.5);
    box-shadow:var(--shadow-sm);
    font-weight:650;
    color:var(--ink);
}
.hero-points span::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(143,212,0,.88);
}
.pap-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.pap-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:14px 22px;
    border-radius:999px;
    font-weight:730;
    letter-spacing:-.01em;
    transition:.24s ease;
    border:1px solid transparent;
}
.pap-btn:hover{transform:translateY(-1px)}
.pap-btn--primary{
    color:#fff;
    background:linear-gradient(180deg, #202720 0%, #151b16 100%);
    box-shadow:0 14px 28px rgba(20,26,22,.16);
}
.pap-btn--primary:hover{background:linear-gradient(180deg, #2a322a 0%, #1c231d 100%)}
.pap-btn--ghost{
    color:var(--ink);
    background:rgba(255,255,255,.56);
    border-color:rgba(255,255,255,.5);
    box-shadow:var(--shadow-sm);
}
.pap-btn--ghost:hover{background:rgba(255,255,255,.76)}

.hero-bento{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:16px;
    height:100%;
}
.hero-bento__card{
    position:relative;
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.68), rgba(255,255,255,.54));
    border:1px solid rgba(255,255,255,.54);
    backdrop-filter:blur(22px);
    box-shadow:var(--shadow-md);
    overflow:hidden;
}
.hero-bento__card--visual{grid-column:span 4;grid-row:span 2;padding:18px;display:flex;align-items:center;justify-content:center;min-height:420px}
.hero-bento__card--stat{grid-column:span 2;padding:20px;display:flex;flex-direction:column;justify-content:space-between;min-height:200px}
.hero-bento__card--wide{grid-column:span 6;padding:22px 22px 18px}
.hero-bento__eyebrow{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin-bottom:10px}
.hero-bento__big{font-size:clamp(2rem,4vw,3.2rem);font-weight:780;line-height:.95;max-width:5ch}
.hero-bento__small{font-size:.98rem;color:var(--ink-soft);max-width:24ch}
.hero-bento__mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px}
.hero-bento__mini-list span{
    padding:12px 14px;
    border-radius:18px;
    background:rgba(255,255,255,.52);
    border:1px solid rgba(255,255,255,.44);
    font-weight:650;
    color:var(--ink);
}
.hero-bento__glow{
    position:absolute;
    inset:auto -18% -26% auto;
    width:220px;
    height:220px;
    background:radial-gradient(circle at 50% 50%, rgba(143,212,0,.16), rgba(143,212,0,0) 66%);
    border-radius:50%;
    pointer-events:none;
}
.hero-bento__card--visual img,.page-hero__media img,.service-card img{
    width:100%;
    height:auto;
    object-fit:contain;
}
.page-hero__media--photo img{
    padding:0;
    background:none;
    width:100%;
    height:100%;
    min-height:340px;
    object-fit:cover;
    border-radius:28px;
}


.section{margin-top:24px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}
.section-head p{max-width:64ch;color:var(--ink-soft)}
.service-grid,.audience-grid,.advantage-grid,.quick-grid,.info-grid,.price-grid,.faq-grid{display:grid;gap:18px}
.service-grid{grid-template-columns:repeat(12,minmax(0,1fr))}
.service-card{
    grid-column:span 4;
    padding:20px;
    display:flex;
    flex-direction:column;
    min-height:100%;
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.5));
    border:1px solid rgba(255,255,255,.52);
    box-shadow:var(--shadow-md);
}
.service-card:nth-child(1){grid-column:span 6}
.service-card:nth-child(2){grid-column:span 3}
.service-card:nth-child(3){grid-column:span 3}
.service-card:nth-child(4){grid-column:span 3}
.service-card:nth-child(5){grid-column:span 5}
.service-card:nth-child(6){grid-column:span 4}
.service-card::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(140deg, rgba(255,255,255,.2), rgba(255,255,255,0) 55%);
}
.service-card::after{
    content:"";
    position:absolute;
    left:20px;
    top:20px;
    width:48px;
    height:48px;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(143,212,0,.16), rgba(143,212,0,.05));
    border:1px solid rgba(143,212,0,.18);
}
.service-card img{
    border-radius:24px;
    margin:0 0 18px;
    background:linear-gradient(180deg, rgba(255,255,255,.66), rgba(244,241,233,.72));
    padding:0;
    min-height:182px;
    aspect-ratio: 4 / 2.65;
    object-fit:cover;
    position:relative;
}
.service-card h3,.service-card p,.service-card__actions{position:relative;z-index:1}
.service-card h3{padding-left:60px;margin-bottom:10px}
.service-card p{color:var(--ink-soft);margin-bottom:18px}
.service-card__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}

.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.audience-card,.advantage-card,.quick-card,.info-card,.price-card,.faq-card,.notice-card,.contact-card{padding:24px}
.audience-card{
    border-radius:30px;
    background:
        radial-gradient(circle at 100% 0, rgba(154,214,27,.08), rgba(143,212,0,0) 34%),
        linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.5));
}
.audience-card ul,.list-clean,.service-list{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--ink-soft)}
.advantage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.advantage-card strong{display:block;margin-bottom:8px;font-size:1.03rem}
.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.quick-card span{
    display:inline-flex;
    width:46px;
    height:46px;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    margin-bottom:14px;
    font-weight:800;
    background:linear-gradient(180deg, rgba(143,212,0,.18), rgba(154,214,27,.08));
    border:1px solid rgba(143,212,0,.2);
}
.info-grid{grid-template-columns:1.08fr .92fr}
.info-card--accent{
    background:linear-gradient(150deg, rgba(28,34,29,.94), rgba(40,47,41,.94));
    border-color:rgba(26,33,28,.86);
    color:#fff;
}
.info-card--accent::before{display:none}
.info-card--accent p,.info-card--accent li{color:rgba(255,255,255,.78)}
.info-card--accent .pap-btn--ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}
.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.price-card table{width:100%;border-collapse:collapse;margin-top:12px}
.price-card td{padding:13px 0;border-bottom:1px solid var(--line);vertical-align:top}
.price-card td:last-child{text-align:right;font-weight:750}
.price-card small{display:block;color:var(--ink-soft);margin-top:12px}
.notice-card{border-left:4px solid rgba(143,212,0,.6)}
.request-card{padding:30px}
.request-card__head p{max-width:66ch;color:var(--ink-soft)}
.request-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}
.request-form label{display:grid;gap:8px}
.request-form span{font-weight:700}
.request-form input,.request-form select,.request-form textarea{
    width:100%;
    padding:15px 16px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.48);
    background:rgba(255,255,255,.66);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
    color:var(--ink);
    outline:none;
}
.request-form input:focus,.request-form select:focus,.request-form textarea:focus{
    border-color:rgba(143,212,0,.32);
    box-shadow:0 0 0 4px rgba(143,212,0,.12);
}
.request-form__wide{grid-column:1/-1}
.request-form__actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:22px}
.request-form__actions p,.request-form small{color:var(--ink-soft)}
.request-form__trap{position:absolute;left:-9999px;opacity:0;pointer-events:none}

.page-hero{margin-bottom:24px}
.page-hero__text{display:flex;flex-direction:column;justify-content:center;min-height:100%}
.page-hero__media{display:flex;align-items:center;justify-content:center}
.page-hero__media img{padding:18px;border-radius:28px;background:linear-gradient(180deg, rgba(255,255,255,.36), rgba(255,255,255,.12))}

.pap-breadcrumbs{margin-bottom:18px}
.pap-breadcrumbs ol{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;color:var(--ink-soft)}
.pap-breadcrumbs li{display:flex;align-items:center}
.pap-breadcrumbs li:not(:last-child)::after{content:"/";margin-left:8px;color:rgba(26,31,27,.35)}
.pap-breadcrumbs a{padding-bottom:2px;border-bottom:1px solid transparent}
.pap-breadcrumbs a:hover{border-color:rgba(143,212,0,.32)}
.columns-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.columns-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contact-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:18px}
.contact-card iframe{width:100%;min-height:420px;border:0;border-radius:24px}

.site-footer{
    margin-top:72px;
    padding:54px 0 30px;
    color:#fff;
    background:
        radial-gradient(circle at 12% 0, rgba(143,212,0,.09), rgba(143,212,0,0) 26%),
        radial-gradient(circle at 92% 100%, rgba(255,255,255,.06), rgba(255,255,255,0) 24%),
        linear-gradient(180deg, #161c18 0%, #111612 100%);
    position:relative;
}
.site-footer::before{
    content:"";
    position:absolute;
    inset:18px auto auto 50%;
    transform:translateX(-50%);
    width:min(100% - 36px, var(--shell));
    height:1px;
    background:linear-gradient(90deg, rgba(255,255,255,0), rgba(143,212,0,.28), rgba(255,255,255,0));
}
.site-footer__grid{display:grid;grid-template-columns:1.2fr .9fr 1fr;gap:24px}
.site-footer h3{color:#fff;margin-bottom:12px;letter-spacing:.04em}
.site-footer p,.site-footer a,.footer-links{color:rgba(255,255,255,.76)}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.site-footer__bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}

.form-success{max-width:860px;margin-inline:auto}
.form-success__id{
    display:inline-flex;
    align-items:center;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.6);
    border:1px solid rgba(255,255,255,.46);
    font-weight:700;
}

.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.faq-card h3{margin-bottom:10px}

@media (max-width: 1180px){
    .site-header__inner{border-radius:28px}
    .site-nav-wrap{gap:16px}
    .service-card,.service-card:nth-child(n){grid-column:span 6}
    .hero-bento__card--visual{grid-column:span 6;min-height:360px}
    .hero-bento__card--stat{grid-column:span 3}
    .hero-bento__card--wide{grid-column:span 6}
}

@media (max-width: 1040px){
    .site-header__inner{align-items:flex-start}
    .site-nav-wrap{position:relative}
    .pap-hero,.page-hero,.info-grid,.contact-layout{grid-template-columns:1fr}
    .site-header__contacts{display:none}
    .service-grid,.advantage-grid,.price-grid,.columns-3,.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .audience-grid,.columns-2,.quick-grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 860px){
    .site-header__inner{padding:14px 14px 12px;border-radius:24px;align-items:center}
    .site-burger{display:block;margin-left:auto}
    .site-nav-wrap{
        position:absolute;
        left:0;
        right:0;
        top:calc(100% - 2px);
        z-index:40;
        display:none;
        flex-direction:column;
        align-items:stretch;
        padding:14px;
        border-radius:28px;
        background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(247,244,236,.9));
        border:1px solid rgba(255,255,255,.58);
        backdrop-filter:blur(22px);
        box-shadow:var(--shadow-lg);
    }
    .site-nav-wrap.is-open{display:flex}
    .site-nav{display:grid;gap:8px}
    .site-nav > a,.site-nav__dropdown > button{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.4);text-align:left}
    .site-nav__dropdown-menu{position:static;display:none;opacity:1;pointer-events:auto;transform:none;min-width:0;box-shadow:none;padding:10px 0 0;background:transparent;border:none;backdrop-filter:none}
    .site-nav__dropdown.is-open .site-nav__dropdown-menu{display:grid}
    .site-nav__dropdown > button::after{content:"▾";float:right;margin-left:10px;transition:transform .2s ease}
    .site-nav__dropdown.is-open > button::after{transform:rotate(180deg)}
    .site-header__contacts{display:grid;justify-items:start;text-align:left;padding:8px 6px 2px}
    .hero-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
    .hero-bento__card--visual,.hero-bento__card--wide{grid-column:1/-1}
    .hero-bento__card--stat{grid-column:span 1;min-height:160px}
    .service-grid,.advantage-grid,.price-grid,.columns-3,.faq-grid,.audience-grid,.columns-2,.quick-grid{grid-template-columns:1fr}
    .service-card,.service-card:nth-child(n){grid-column:1/-1}
    .request-form__grid{grid-template-columns:1fr}
    .site-footer__grid{grid-template-columns:1fr}
}

@media (max-width: 620px){
    .shell{width:min(calc(100% - 20px), var(--shell))}
    .pap-page{padding-top:22px}
    h1{font-size:clamp(2rem, 11vw, 3rem);max-width:12ch}
    h2{font-size:clamp(1.5rem, 8vw, 2rem)}
    .pap-hero__content,.page-hero__text,.section-card,.request-card,.audience-card,.advantage-card,.quick-card,.info-card,.price-card,.faq-card,.notice-card,.contact-card{padding:22px}
    .pap-hero__visual,.page-hero__media{padding:16px}
    .hero-points span,.pap-btn{width:100%}
    .hero-bento__mini-list{grid-template-columns:1fr}
}


/* === V4 refinements: calmer art direction, softer editorial rhythm === */
:root{
    --bg:#f0ede6;
    --bg-alt:#e7e2d8;
    --paper:#faf7f1;
    --paper-strong:#fdfbf6;
    --glass:rgba(255,255,255,.62);
    --glass-strong:rgba(255,255,255,.78);
    --ink:#171d19;
    --ink-soft:#556158;
    --line:rgba(30,36,31,.09);
    --line-strong:rgba(30,36,31,.15);
    --accent:#89c300;
    --accent-deep:#678d1b;
    --accent-soft:rgba(137,195,0,.11);
    --shadow-lg:0 26px 90px rgba(23,27,23,.07);
    --shadow-md:0 14px 34px rgba(23,27,23,.055);
    --shadow-sm:0 8px 20px rgba(23,27,23,.045);
}
body{
    background:
        linear-gradient(rgba(255,255,255,.13) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.13) 1px, transparent 1px),
        radial-gradient(circle at 12% 12%, rgba(255,255,255,.62) 0, rgba(255,255,255,0) 24%),
        radial-gradient(circle at 88% 10%, rgba(137,195,0,.05) 0, rgba(137,195,0,0) 24%),
        radial-gradient(circle at 85% 84%, rgba(173,162,137,.08) 0, rgba(173,162,137,0) 24%),
        linear-gradient(180deg, #f4f1eb 0%, #ebe6dc 100%);
    background-size:32px 32px, 32px 32px, auto, auto, auto, auto;
    background-attachment:fixed, fixed, scroll, scroll, scroll, scroll;
}
.site-header__inner{
    background:linear-gradient(180deg, rgba(255,255,255,.68), rgba(255,255,255,.54));
    border-color:rgba(255,255,255,.56);
}
.site-nav > a,
.site-nav__dropdown > button{font-weight:620}
.pap-btn--primary{
    background:linear-gradient(180deg, #1d241f 0%, #121814 100%);
    box-shadow:0 12px 24px rgba(20,26,22,.13);
}
.pap-btn--ghost{
    background:rgba(255,255,255,.62);
}
.pap-btn--ghost-invert{
    background:rgba(255,255,255,.08);
    color:#fff;
    border-color:rgba(255,255,255,.14);
}
.text-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-weight:700;
    color:var(--ink);
}
.text-link::after{
    content:'↗';
    color:var(--accent-deep);
}
.section-card--quiet{
    background:linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.46));
}
.section-head--editorial{align-items:flex-start}
.section-head__eyebrow,
.home-hero-v4__overline,
.page-overline,
.narrative-card__label,
.format-story-card__label{
    display:inline-block;
    margin-bottom:12px;
    color:var(--ink-soft);
    text-transform:uppercase;
    letter-spacing:.14em;
    font-size:.78rem;
    font-weight:700;
}
.hero-points--calm span{
    background:rgba(255,255,255,.48);
}
.home-hero-v4{
    display:grid;
    grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr);
    gap:22px;
    align-items:stretch;
    margin-bottom:34px;
}
.home-hero-v4__intro,
.home-hero-v4__scene{position:relative}
.home-hero-v4__intro{padding:36px 36px 30px}
.home-hero-v4__lead{max-width:60ch}
.home-proof-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:26px;
}
.home-proof-card{
    padding:18px;
    border-radius:22px;
    background:rgba(255,255,255,.44);
    border:1px solid rgba(255,255,255,.44);
}
.home-proof-card strong{display:block;margin-bottom:8px;font-size:1.02rem}
.home-proof-card p{margin:0;color:var(--ink-soft);font-size:.97rem}
.blueprint-stage{
    min-height:100%;
    padding:30px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.blueprint-stage__paper{
    position:absolute;
    width:76%;
    aspect-ratio:1/.78;
    border-radius:30px;
    background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(246,243,236,.84));
    box-shadow:var(--shadow-md);
    border:1px solid rgba(255,255,255,.62);
}
.blueprint-stage__paper--back{transform:translate(-34px,-22px) rotate(-8deg);opacity:.52}
.blueprint-stage__paper--mid{transform:translate(30px,8px) rotate(6deg);opacity:.7}
.blueprint-stage__paper--front{position:relative;transform:rotate(-2.5deg);padding:22px;overflow:hidden}
.blueprint-stage__frame{
    position:absolute;
    inset:22px;
    border:1.5px solid rgba(22,29,24,.18);
    border-radius:24px;
}
.blueprint-stage__grid{
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(22,29,24,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(22,29,24,.06) 1px, transparent 1px);
    background-size:24px 24px;
    opacity:.5;
}
.blueprint-stage__lines{
    position:absolute;
    inset:18% 16% 18% 14%;
    background:
        linear-gradient(165deg, transparent 0 19%, rgba(22,29,24,.44) 19.5% 20.5%, transparent 21% 100%),
        linear-gradient(90deg, transparent 0 32%, rgba(22,29,24,.3) 32.5% 33.2%, transparent 34% 100%),
        linear-gradient(180deg, transparent 0 58%, rgba(22,29,24,.28) 58.5% 59.2%, transparent 60% 100%),
        radial-gradient(circle at 72% 28%, rgba(137,195,0,.22), rgba(137,195,0,0) 18%);
}
.blueprint-stage__stamp,
.blueprint-stage__note{
    position:absolute;
    padding:12px 14px;
    border-radius:18px;
    background:rgba(255,255,255,.7);
    border:1px solid rgba(255,255,255,.56);
    box-shadow:var(--shadow-sm);
    font-weight:700;
}
.blueprint-stage__stamp{left:34px;top:34px;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase}
.blueprint-stage__note{font-size:.92rem;line-height:1.35}
.blueprint-stage__note--top{right:28px;top:62px}
.blueprint-stage__note--bottom{left:38px;bottom:34px}
.scene-meta-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:14px;
}
.scene-meta-card{padding:18px 18px 20px}
.scene-meta-card span{display:block;margin-bottom:8px;color:var(--ink-soft);font-size:.84rem;text-transform:uppercase;letter-spacing:.12em}
.scene-meta-card strong{font-size:1rem;line-height:1.35}
.narrative-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr .85fr;
    gap:18px;
}
.narrative-card{padding:28px}
.narrative-card--primary{display:flex;flex-direction:column;justify-content:space-between}
.narrative-card h2{max-width:14ch}
.value-layout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(280px,.65fr);
    gap:18px;
}
.value-layout__main{padding:32px}
.value-layout__side{display:grid;gap:18px}
.value-list{display:grid;gap:18px}
.value-list article{padding:18px 0;border-top:1px solid var(--line)}
.value-list article:first-child{border-top:none;padding-top:0}
.value-list--two{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}
.aside-note{padding:24px}
.aside-note span{display:block;margin-bottom:8px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;font-size:.79rem}
.process-strip{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.process-step{
    padding:22px;
    border-radius:24px;
    background:rgba(255,255,255,.44);
    border:1px solid rgba(255,255,255,.44);
}
.process-step span{display:block;margin-bottom:14px;color:var(--accent-deep);font-weight:800;letter-spacing:.12em}
.utility-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
@media (max-width:900px){.utility-grid{grid-template-columns:1fr}}
.utility-grid--inner{grid-template-columns:1.05fr .95fr}
.utility-card{display:flex;flex-direction:column;justify-content:space-between}
.utility-card--dark{
    padding:30px;
    border-radius:32px;
    color:#fff;
    background:linear-gradient(160deg, rgba(20,26,22,.96), rgba(33,41,35,.92));
    box-shadow:var(--shadow-lg);
}
.utility-card--dark p{color:rgba(255,255,255,.76)}
.section-card--seo .seo-columns,
.seo-columns{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.faq-grid--compact{gap:14px}
.faq-grid--compact .faq-card{background:rgba(255,255,255,.42)}
.service-card{
    position:relative;
    background:linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.46));
}
.service-card:nth-child(1){border-radius:34px 34px 26px 26px}
.service-card:nth-child(2){border-radius:34px 24px 34px 22px}
.service-card:nth-child(3){border-radius:24px 34px 24px 34px}
.service-card:nth-child(4){border-radius:28px 34px 24px 24px}
.service-card:nth-child(5){border-radius:24px 24px 34px 34px}
.service-card:nth-child(6){border-radius:34px 24px 24px 34px}
.service-card img{min-height:168px;background:linear-gradient(180deg, rgba(255,255,255,.54), rgba(246,242,234,.72))}
.page-hero--editorial{grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:22px}
.page-hero__text--editorial{padding:36px}
.page-hero__media--editorial{padding:22px}
.sheet-stack{
    position:relative;
    min-height:480px;
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.sheet-stack__sheet{
    position:absolute;
    width:74%;
    aspect-ratio:1/.76;
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,241,234,.86));
    box-shadow:var(--shadow-md);
    border:1px solid rgba(255,255,255,.58);
}
.sheet-stack__sheet--back{transform:translate(-28px,-24px) rotate(-10deg);opacity:.58}
.sheet-stack__sheet--mid{transform:translate(30px,12px) rotate(6deg);opacity:.72}
.sheet-stack__sheet--front{transform:rotate(-2deg);overflow:hidden}
.sheet-stack__header{
    position:absolute;
    left:22px;right:22px;top:22px;height:64px;
    border:1.5px solid rgba(23,29,24,.18);
    border-radius:18px;
}
.sheet-stack__drawing{
    position:absolute;
    inset:26% 12% 18% 12%;
    border:1.5px solid rgba(23,29,24,.16);
    border-radius:20px;
    background:
        linear-gradient(rgba(23,29,24,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23,29,24,.05) 1px, transparent 1px),
        linear-gradient(150deg, transparent 0 18%, rgba(23,29,24,.35) 18.4% 19%, transparent 19.4% 100%),
        linear-gradient(90deg, transparent 0 62%, rgba(137,195,0,.24) 62.5% 63.5%, transparent 64% 100%),
        linear-gradient(180deg, transparent 0 42%, rgba(23,29,24,.22) 42.4% 43.2%, transparent 44% 100%);
    background-size:20px 20px, 20px 20px, auto, auto, auto;
}
.sheet-stack__legend,
.sheet-stack__chip{
    position:absolute;
    padding:11px 14px;
    border-radius:18px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.56);
    box-shadow:var(--shadow-sm);
    font-weight:700;
}
.sheet-stack__legend{left:34px;bottom:32px;font-size:.86rem;letter-spacing:.1em;text-transform:uppercase}
.sheet-stack__chip{max-width:200px;font-size:.92rem;line-height:1.35}
.sheet-stack__chip--one{right:32px;top:44px}
.sheet-stack__chip--two{right:20px;bottom:54px}
.format-story-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr .9fr;
    gap:18px;
}
.format-story-card{padding:28px}
.format-story-card--lead h2{max-width:15ch}
.format-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.format-grid__card{padding:24px}
.delivery-rhythm{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(280px,.65fr);
    gap:18px;
}
.delivery-rhythm__side{display:grid;gap:18px}
@media (max-width:1180px){
    .home-hero-v4,.page-hero--editorial,.value-layout,.delivery-rhythm{grid-template-columns:1fr}
    .narrative-grid,.format-story-grid{grid-template-columns:1fr 1fr}
    .utility-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:960px){
    .home-proof-grid,.scene-meta-grid,.process-strip,.seo-columns,.format-grid,.value-list--two{grid-template-columns:1fr 1fr}
    .narrative-grid,.format-story-grid,.utility-grid,.utility-grid--inner{grid-template-columns:1fr}
}
@media (max-width:620px){
    .home-hero-v4__intro,.page-hero__text--editorial,.blueprint-stage,.narrative-card,.value-layout__main,.utility-card--dark,.format-story-card{padding:24px}
    .home-proof-grid,.scene-meta-grid,.process-strip,.seo-columns,.format-grid,.value-list--two{grid-template-columns:1fr}
    .sheet-stack{min-height:360px}
    .blueprint-stage__paper{width:88%}
    .blueprint-stage__note{font-size:.82rem}
}

/* === V5: mobile-first tightening, stronger utility pages, calmer conversion UX === */
html{scroll-padding-top:120px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
    outline:3px solid rgba(137,195,0,.38);
    outline-offset:3px;
}
.site-nav > a,
.site-nav__dropdown > button,
.site-mobile-bar a,
.footer-links a,
.request-form input,
.request-form select,
.request-form textarea{min-height:24px}
.request-form input,
.request-form select,
.request-form textarea{font-size:16px}
.page-hero__text p:last-child,
.advantage-card p:last-child,
.notice-card p:last-child,
.faq-card p:last-child,
.price-card small:last-child{margin-bottom:0}
.page-hero__text--compact h1{max-width:11.5ch}
.page-summary-pills{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:18px 0 4px;
}
.page-summary-pills span,
.metric-chip,
.requirement-chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.52);
    border:1px solid rgba(255,255,255,.48);
    box-shadow:var(--shadow-sm);
    font-weight:650;
}
.page-summary-pills span::before,
.metric-chip::before,
.requirement-chip::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--accent);
}
.utility-grid--stack,
.delivery-cards,
.requirement-grid,
.prep-grid,
.faq-grid--wide,
.touch-grid{
    display:grid;
    gap:18px;
}
.utility-grid--stack{grid-template-columns:1.2fr .8fr}
.delivery-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.requirement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.prep-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.faq-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}
.touch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.price-card__kicker,
.utility-card__kicker,
.checklist-card__kicker{
    display:block;
    margin-bottom:10px;
    color:var(--ink-soft);
    text-transform:uppercase;
    letter-spacing:.14em;
    font-size:.76rem;
    font-weight:700;
}
.price-card--confirmed{
    background:linear-gradient(180deg, rgba(255,255,255,.7), rgba(248,247,241,.58));
}
.price-card--confirmed td:last-child{color:var(--accent-deep)}
.price-card__meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:14px;
}
.price-card__meta span{
    padding:8px 12px;
    border-radius:999px;
    background:rgba(137,195,0,.09);
    border:1px solid rgba(137,195,0,.12);
    font-size:.92rem;
}
.checklist-card,
.delivery-card,
.prep-card,
.faq-card,
.touch-card{
    padding:24px;
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.48));
    border:1px solid rgba(255,255,255,.5);
    box-shadow:var(--shadow-md);
}
.checklist-list,
.delivery-list,
.prep-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
}
.checklist-list li,
.delivery-list li,
.prep-list li{
    position:relative;
    padding-left:20px;
    color:var(--ink-soft);
}
.checklist-list li::before,
.delivery-list li::before,
.prep-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:.7em;
    width:8px;
    height:8px;
    margin-top:-4px;
    border-radius:50%;
    background:var(--accent);
}
.utility-note{
    padding:22px;
    border-radius:24px;
    background:rgba(255,255,255,.44);
    border:1px solid rgba(255,255,255,.46);
}
.utility-note p:last-child{margin-bottom:0}
.mobile-note{
    margin-top:14px;
    font-size:.95rem;
    color:var(--ink-soft);
}
.site-mobile-bar{
    display:none;
}
.site-mobile-bar a{
    min-height:52px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    font-weight:750;
    padding:12px 18px;
}
.site-mobile-bar__call{
    background:rgba(255,255,255,.9);
    color:var(--ink);
    border:1px solid rgba(255,255,255,.68);
}
.site-mobile-bar__cta{
    background:linear-gradient(180deg, #1d241f 0%, #121814 100%);
    color:#fff;
    border:1px solid rgba(18,24,20,.92);
    box-shadow:0 12px 24px rgba(20,26,22,.13);
}
@media (max-width: 1040px){
    .utility-grid--stack,
    .delivery-cards,
    .requirement-grid,
    .prep-grid,
    .faq-grid--wide,
    .touch-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 860px){
    html{scroll-padding-top:96px}
    body{padding-bottom:88px}
    .site-header{padding-top:10px}
    .site-header__inner{gap:12px}
    .site-brand img{width:54px}
    .site-brand strong{font-size:.92rem;letter-spacing:.14em}
    .site-brand small{font-size:.8rem}
    .site-nav-wrap{max-height:calc(100vh - 110px);overflow:auto}
    .page-summary-pills span,
    .metric-chip,
    .requirement-chip{min-height:42px}
    .site-mobile-bar{
        position:fixed;
        left:12px;
        right:12px;
        bottom:10px;
        z-index:70;
        display:grid;
        grid-template-columns:.88fr 1.12fr;
        gap:10px;
        padding:10px;
        border-radius:24px;
        background:linear-gradient(180deg, rgba(255,255,255,.84), rgba(247,244,236,.92));
        border:1px solid rgba(255,255,255,.62);
        box-shadow:0 18px 34px rgba(23,27,23,.12);
        backdrop-filter:blur(20px);
    }
}
@media (max-width: 620px){
    html{scroll-padding-top:88px}
    body{padding-bottom:102px}
    .page-summary-pills,
    .price-card__meta{display:grid;grid-template-columns:1fr;gap:10px}
    .page-summary-pills span,
    .metric-chip,
    .requirement-chip,
    .price-card__meta span,
    .pap-btn{width:100%}
    .utility-grid--stack,
    .delivery-cards,
    .requirement-grid,
    .prep-grid,
    .faq-grid--wide,
    .touch-grid{grid-template-columns:1fr}
    .site-mobile-bar{grid-template-columns:1fr 1fr}
}


.price-table-wrap{
    margin-top:16px;
    overflow:auto;
    border-radius:24px;
    border:1px solid rgba(255,255,255,.55);
    background:linear-gradient(180deg, rgba(255,255,255,.62), rgba(250,248,241,.48));
    box-shadow:var(--shadow-sm);
}
.price-matrix{
    width:100%;
    min-width:640px;
    border-collapse:collapse;
    font-size:.97rem;
}
.price-matrix th,
.price-matrix td{
    padding:14px 16px;
    border-bottom:1px solid var(--line);
    text-align:left;
    vertical-align:top;
}
.price-matrix th{
    font-size:.86rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--ink-soft);
    background:rgba(255,255,255,.55);
    position:sticky;
    top:0;
}
.price-matrix td:first-child,
.price-matrix th:first-child{
    font-weight:750;
}
.price-matrix--compact{
    min-width:560px;
    font-size:.93rem;
}
@media (max-width: 620px){
    .price-table-wrap{
        margin-inline:-6px;
        border-radius:20px;
    }
    .price-matrix{
        min-width:560px;
        font-size:.92rem;
    }
}


/* === V8: legal layer, brighter brand accent, cleaner hero and messenger/contact UX === */
.site-header__contacts{gap:6px}
.contact-chips{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.contact-chips a,
.footer-messengers a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(143,212,0,.12);
    border:1px solid rgba(143,212,0,.22);
    font-weight:700;
    color:var(--ink);
}
.contact-chips--large{justify-content:flex-start;margin-top:12px}
.contact-chips--large a{min-height:42px;padding:10px 14px}
.footer-messengers{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.site-mobile-bar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.site-mobile-bar__chat{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow-sm);font-weight:700}
.home-hero-v4__scene.hero-side-stack{display:grid;gap:18px;align-content:start}
.hero-side-card{padding:28px;border-radius:var(--radius-xl);background:linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.54));border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow-md)}
.hero-side-card h2,.hero-side-card h3{max-width:none}
.hero-side-card p:last-child{margin-bottom:0}
.hero-side-card--accent{color:#fff;background:linear-gradient(160deg, rgba(20,26,22,.94), rgba(32,40,34,.9))}
.hero-side-card--accent p{color:rgba(255,255,255,.78)}
.hero-mini-steps{margin:0;padding-left:20px;display:grid;gap:14px}
.hero-mini-steps li{padding-left:4px}
.hero-mini-steps strong{display:block;margin-bottom:4px}
.narrative-grid{align-items:stretch}
.section{position:relative;z-index:1}
.contact-requisites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.contact-requisites div{padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.44)}
.contact-requisites strong{display:block;margin-bottom:8px;font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}

.utility-card--email .contact-email,
.utility-card--email .contact-email a{
    font-size:clamp(1rem, 2.05vw, 1.75rem);
    line-height:1.05;
    letter-spacing:-.03em;
    white-space:nowrap;
    text-decoration:none;
}
.utility-card--email .contact-email-secondary,
.utility-card--email .contact-email-secondary a{
    font-size:clamp(.95rem, 1.35vw, 1.12rem);
    line-height:1.35;
}
.hours-compact{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}
.hours-compact__item{
    padding:18px 20px;
    border-radius:24px;
    background:rgba(255,255,255,.48);
    border:1px solid rgba(255,255,255,.46);
    box-shadow:var(--shadow-sm);
}
.hours-compact__item span{
    display:block;
    margin-bottom:8px;
    color:var(--ink-soft);
    font-size:.82rem;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.hours-compact__item strong{
    display:block;
    font-size:1.12rem;
    line-height:1.2;
}
.hours-compact__item small{
    display:block;
    margin-top:10px;
    color:var(--ink-soft);
    line-height:1.45;
}
.cookie-banner.is-hidden{display:none !important}
.footer-links--legal{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.cookie-banner{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:80;width:min(calc(100% - 24px), 960px);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:24px;border:1px solid rgba(255,255,255,.56);background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(246,243,236,.92));box-shadow:var(--shadow-lg);backdrop-filter:blur(20px)}
.cookie-banner__text p{margin:6px 0 0;color:var(--ink-soft)}
.cookie-banner__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cookie-banner__actions a{font-weight:700;color:var(--accent-deep)}
.request-form__consent{display:flex;gap:12px;align-items:flex-start;margin-top:4px;color:var(--ink-soft)}
.request-form__consent input{margin-top:4px;flex:0 0 auto}
.request-form__consent a{color:var(--accent-deep);text-decoration:underline}
.legal-content h2{margin-top:28px}
.legal-content h2:first-child{margin-top:0}
.legal-content p:last-child{margin-bottom:0}
.site-brand img{filter:none}
@media (max-width:1180px){.home-hero-v4{grid-template-columns:1fr}}
@media (max-width:960px){.contact-requisites{grid-template-columns:1fr}.hours-compact{grid-template-columns:1fr}.cookie-banner{align-items:flex-start;flex-direction:column}}
@media (max-width:620px){.site-header__contacts{align-items:flex-start;text-align:left}.contact-chips{justify-content:flex-start}.hero-side-card{padding:22px}.utility-card--email .contact-email,.utility-card--email .contact-email a{font-size:1rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.cookie-banner{bottom:86px;padding:16px}}

.anchor-pills{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
}
.anchor-pills a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.56);
    border:1px solid rgba(255,255,255,.56);
    box-shadow:var(--shadow-sm);
    font-weight:700;
    color:var(--ink);
}
.anchor-pills a:hover{
    background:rgba(143,212,0,.12);
    border-color:rgba(143,212,0,.22);
}
.spotlight-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.spotlight-card{padding:28px}
.spotlight-card h2{max-width:18ch}
.pap-actions--footer{margin-top:14px}
@media (max-width:960px){
    .spotlight-grid{grid-template-columns:1fr}
}


.photo-story-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr .85fr;
    gap:18px;
}
.photo-story-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.photo-story-card{
    display:flex;
    flex-direction:column;
    overflow:hidden;
}
.photo-story-card img{
    width:100%;
    aspect-ratio: 4 / 2.65;
    object-fit:cover;
    display:block;
}
.photo-story-card--wide img{
    aspect-ratio: 16 / 9;
}
.photo-story-card__body{
    padding:22px 24px 24px;
}
.photo-story-card__body p:last-child{
    margin-bottom:0;
}
.photo-story-card__body .pap-btn{
    margin-top:8px;
}
@media (max-width:960px){
    .photo-story-grid,
    .photo-story-grid--compact{grid-template-columns:1fr;}
    .page-hero__media--photo img{min-height:280px;}
}


.utility-card h2 a,
.utility-card p a,
.site-footer a,
.site-header__contacts a{
    overflow-wrap:anywhere;
    word-break:break-word;
}
.utility-card--dark h2,
.utility-card--dark h2 a{
    font-size:clamp(2rem, 4.2vw, 3.2rem);
    line-height:1.05;
}
.cookie-banner,
.cookie-banner *{
    pointer-events:auto;
}
.cookie-banner{z-index:220;}
.cookie-banner__accept{position:relative;z-index:1;pointer-events:auto;}

.site-footnote{
    margin-top:18px;
    padding:18px 20px 24px;
    border-top:1px solid rgba(255,255,255,.12);
}
.site-footnote p{
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:.98rem;
    line-height:1.6;
}
.envelope-visual-grid{
    display:grid;
    gap:18px;
}
.envelope-showcase{
    display:grid;
    grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);
    gap:18px;
    padding:18px;
    border-radius:28px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.7);
    box-shadow:var(--shadow-sm);
}
.envelope-showcase__media,
.envelope-showcase__body{
    padding:12px;
}
.envelope-showcase__media{
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(246,243,236,.94));
    min-height:240px;
}
.envelope-showcase__media img{
    max-width:100%;
    height:auto;
    display:block;
}
.envelope-showcase__body h3{
    margin-top:6px;
    margin-bottom:12px;
}
.mini-list{
    margin:14px 0 0;
    padding-left:18px;
    color:var(--ink-soft);
}
.mini-list li + li{margin-top:8px}
.metric-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.metric-card{
    padding:28px;
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(246,243,236,.95));
    border:1px solid rgba(255,255,255,.72);
    box-shadow:var(--shadow-md);
}
.metric-card__label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:82px;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(143,212,0,.16);
    color:var(--accent-deep);
    font-weight:800;
    letter-spacing:.02em;
}
.metric-card h2{
    margin-top:14px;
    margin-bottom:12px;
    font-size:1.32rem;
}
.metric-card p{
    margin:0;
    color:var(--ink-soft);
}
@media (max-width:960px){
    .envelope-showcase{grid-template-columns:1fr}
    .metric-grid{grid-template-columns:1fr}
}


.pricing-highlight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.pricing-highlight-card{padding:24px 22px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(246,243,236,.96));border:1px solid rgba(255,255,255,.72);box-shadow:var(--shadow-sm)}
.pricing-highlight-card__label{display:inline-block;margin-bottom:10px;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.pricing-highlight-card strong{display:block;font-size:1.85rem;line-height:1.05;color:var(--accent-deep)}
.pricing-highlight-card p{margin:10px 0 0;color:var(--ink-soft)}
.pricing-explainer-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}
.pricing-duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pricing-trio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pricing-panel{padding:24px;border-radius:28px;border:1px solid rgba(255,255,255,.72);box-shadow:var(--shadow-sm)}
.pricing-panel--soft{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(246,243,236,.96))}
.pricing-panel--accent{background:linear-gradient(180deg,rgba(248,252,241,.98),rgba(239,247,215,.96));border-color:rgba(143,212,0,.16)}
.pricing-panel__head{margin-bottom:18px}
.pricing-panel__head p{margin:8px 0 0;color:var(--ink-soft)}
.pricing-list{display:grid;gap:10px}
.pricing-list__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.76)}
.pricing-list__row span{color:var(--ink)}
.pricing-list__row strong{font-size:1rem;line-height:1.35;text-align:right;color:var(--accent-deep)}
.pricing-list--wide-values .pricing-list__row{grid-template-columns:minmax(0,.8fr) minmax(170px,1.2fr)}
.price-table-wrap{margin-top:18px}
.price-matrix td,.price-matrix th{font-size:.96rem}
@media (max-width:1180px){.pricing-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-trio-grid{grid-template-columns:1fr}.pricing-explainer-grid{grid-template-columns:1fr}}
@media (max-width:960px){.pricing-duo-grid{grid-template-columns:1fr}.pricing-list__row,.pricing-list--wide-values .pricing-list__row{grid-template-columns:1fr}.pricing-list__row strong{text-align:left}}
@media (max-width:620px){.pricing-highlight-grid{grid-template-columns:1fr}.pricing-highlight-card strong{font-size:1.6rem}.pricing-panel{padding:20px}.pricing-list__row{padding:12px 14px}}


/* concise factual blocks: useful to customers and easy to scan */
.answer-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.answer-card{
    padding:20px;
    border-radius:22px;
    background:rgba(255,255,255,.64);
    border:1px solid rgba(255,255,255,.78);
    box-shadow:var(--shadow-sm);
}
.answer-card h3{
    margin:0 0 10px;
    font-size:1.02rem;
    line-height:1.25;
}
.answer-card p{
    margin:0;
    color:var(--ink-soft);
    line-height:1.55;
}
.answer-card strong{color:var(--ink)}
@media (max-width:980px){.answer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.answer-grid{grid-template-columns:1fr}.answer-card{padding:18px}}

[hidden]{display:none!important}


.request-upload-fallback,
.request-error-fallback{
    margin-top:14px;
    padding:16px 18px;
    border-radius:18px;
    background:rgba(143,212,0,.08);
    border:1px solid rgba(143,212,0,.18);
}
.request-upload-fallback p,
.request-error-fallback p{
    margin:7px 0 12px;
    color:var(--ink-soft);
    line-height:1.55;
}
.pap-actions--compact{gap:8px;margin-top:10px}
.request-file-modal{
    position:fixed;
    inset:0;
    z-index:500;
    display:grid;
    place-items:center;
    padding:20px;
}
.request-file-modal__backdrop{
    position:absolute;
    inset:0;
    background:rgba(12,22,16,.52);
    backdrop-filter:blur(8px);
}
.request-file-modal__dialog{
    position:relative;
    z-index:1;
    width:min(680px,100%);
    max-height:min(720px,calc(100vh - 40px));
    overflow:auto;
    padding:30px;
    border-radius:28px;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,243,236,.98));
    box-shadow:var(--shadow-lg);
    border:1px solid rgba(255,255,255,.8);
}
.request-file-modal__dialog h2{margin:8px 44px 14px 0}
.request-file-modal__dialog p{color:var(--ink-soft);line-height:1.6}
.request-file-modal__close{
    position:absolute;
    top:14px;
    right:14px;
    width:38px;
    height:38px;
    border:0;
    border-radius:999px;
    background:rgba(15,31,21,.07);
    font-size:1.6rem;
    line-height:1;
    cursor:pointer;
}
@media(max-width:620px){
    .request-file-modal{padding:12px}
    .request-file-modal__dialog{padding:24px 18px;border-radius:22px}
    .request-file-modal__dialog .pap-actions{display:grid;grid-template-columns:1fr}
}
