/* АвтоКарт — тема modern */

/* ---------- Шрифты (свои файлы, без внешних CDN) ---------- */
@font-face { font-family: "Golos Text"; font-weight: 400; font-display: swap; src: url(fonts/golos-text-cyrillic-400-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Golos Text"; font-weight: 400; font-display: swap; src: url(fonts/golos-text-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Golos Text"; font-weight: 500; font-display: swap; src: url(fonts/golos-text-cyrillic-500-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Golos Text"; font-weight: 500; font-display: swap; src: url(fonts/golos-text-latin-500-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: "Golos Text"; font-weight: 600; font-display: swap; src: url(fonts/golos-text-cyrillic-600-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Golos Text"; font-weight: 600; font-display: swap; src: url(fonts/golos-text-latin-600-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: "Unbounded"; font-weight: 500; font-display: swap; src: url(fonts/unbounded-cyrillic-500-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Unbounded"; font-weight: 500; font-display: swap; src: url(fonts/unbounded-latin-500-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family: "Unbounded"; font-weight: 700; font-display: swap; src: url(fonts/unbounded-cyrillic-700-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Unbounded"; font-weight: 700; font-display: swap; src: url(fonts/unbounded-latin-700-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+2212; }

/* ---------- Токены ---------- */
:root {
    --green: #008F27;       /* фирменный «топливный» зелёный */
    --green-ink: #00701F;   /* зелёный для текста ссылок (контраст) */
    --pine: #0F3A24;        /* тёмные плоскости */
    --signal: #EFC211;      /* жёлтый: даты, фокус */
    --asphalt: #1D2420;     /* основной текст */
    --concrete: #EEF0EC;    /* фон секций */
    --slate: #AEB3AE;       /* серая полоса */
    --muted: #59615C;
    --line: #D6DAD4;
    --white: #FFFFFF;

    --f-display: "Unbounded", "Arial Black", sans-serif;
    --f-text: "Golos Text", "Segoe UI", Roboto, Arial, sans-serif;

    --wrap: 1180px;
    --gutter: clamp(16px, 4vw, 40px);
    --r: 6px;
}

/* ---------- База ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--white); color: var(--asphalt); font: 400 17px/1.6 var(--f-text); }
img { max-width: 100%; height: auto; }
a { color: var(--green-ink); text-underline-offset: 3px; text-decoration-thickness: 1px; }
a:hover { color: var(--pine); }
:focus-visible { outline: 3px solid var(--signal); outline-offset: 2px; }
h1, h2, h3 { line-height: 1.2; margin: 0; }
.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 8px; top: -60px; z-index: 50; background: var(--pine); color: var(--white); padding: 8px 14px; }
.skip:focus { top: 8px; }
.muted { color: var(--muted); }

/* Фирменная полоса: серый · чёрный · жёлтый · зелёный (из подвала старого сайта) */
.brandline { display: grid; grid-template-columns: repeat(4, 1fr); height: 6px; }
.brandline i:nth-child(1) { background: var(--slate); }
.brandline i:nth-child(2) { background: #000; }
.brandline i:nth-child(3) { background: var(--signal); }
.brandline i:nth-child(4) { background: var(--green); }

/* ---------- Кнопки ---------- */
.btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px; border: 2px solid transparent; border-radius: var(--r);
    font: 500 16px/1.2 var(--f-text); text-decoration: none; cursor: pointer; white-space: nowrap; }
.btn--primary { background: var(--green); color: var(--white); }
.btn--primary:hover { background: var(--pine); color: var(--white); }
.btn--ghost { border-color: var(--green); color: var(--green-ink); background: transparent; }
.btn--ghost:hover { background: var(--green); color: var(--white); }
.btn--light { background: var(--white); color: var(--pine); }
.btn--light:hover { background: var(--signal); color: var(--asphalt); }
.btn--lg { padding: 14px 24px; font-size: 17px; }
.btn small { font-size: 12px; opacity: .75; font-weight: 600; }

/* ---------- Шапка ---------- */
.masthead { background: var(--white); border-bottom: 1px solid var(--line); position: relative; z-index: 20; }
.masthead__row { display: flex; flex-wrap: wrap; align-items: center; gap: 0 28px; padding-top: 16px; }
.logo { flex: none; display: block; line-height: 0; }
.logo img { width: 104px; height: auto; }

.navtoggle { order: 3; flex-basis: 100%; margin-top: 14px; border-top: 1px solid var(--line); }
.navtoggle > summary { display: none; }
.nav { display: flex; flex-wrap: wrap; gap: 0 30px; }
.nav a { color: var(--asphalt); text-decoration: none; font-weight: 500; font-size: 16px; padding: 13px 0 11px; border-bottom: 3px solid transparent; margin-bottom: -1px; }
.nav a:hover { color: var(--green-ink); }
.nav a[aria-current="page"] { border-bottom-color: var(--green); color: var(--green-ink); }

.masthead__aside { display: flex; align-items: center; gap: 24px; flex: none; margin-left: auto; }
.phone { display: grid; text-decoration: none; color: var(--asphalt); text-align: right; }
.phone__num { font: 700 16px/1.2 var(--f-display); letter-spacing: -.01em; white-space: nowrap; }
.phone__note { font-size: 13px; color: var(--muted); }

.lk { position: relative; }
.lk__short { display: none; }

/* ---------- Первый экран ---------- */
.hero { background: var(--pine); color: var(--white); overflow: hidden; }
.hero__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 48px; align-items: center; padding-top: 72px; padding-bottom: 80px; }
.hero__title { font: 700 clamp(30px, 4.4vw, 54px)/1.08 var(--f-display); letter-spacing: -.02em; max-width: 14ch; }
.hero__lead { font-size: 19px; line-height: 1.55; max-width: 46ch; margin: 22px 0 32px; color: #D3E2D8; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero .btn--primary { background: var(--signal); color: var(--asphalt); }
.hero .btn--primary:hover { background: var(--white); }
.hero .btn--ghost { border-color: rgba(255, 255, 255, .55); color: var(--white); }
.hero .btn--ghost:hover { background: var(--white); color: var(--pine); border-color: var(--white); }

/* Смарт-карта АвтоКарт — как настоящая */
.hero__card { display: flex; justify-content: center; perspective: 1200px; }
.fuelcard { position: relative; width: min(440px, 100%); aspect-ratio: 85.6 / 54; border-radius: 4.5% / 7%; overflow: hidden;
    background:
        repeating-linear-gradient(-58deg, transparent 0 18%, rgba(0, 60, 10, .28) 18% calc(18% + 1.5px), transparent calc(18% + 1.5px) 26%),
        linear-gradient(122deg, #3FAE2A 0%, #4DB82E 22%, #CFEA3A 44%, #E6F25A 47%, #8CCB2F 55%, #3DA628 78%, #2E9A24 100%);
    box-shadow: 0 30px 60px rgba(0, 0, 0, .35), inset 0 0 0 1px rgba(255, 255, 255, .25);
    transform: rotate(-6deg) rotateY(-8deg); color: #000; }
.fuelcard__glare { position: absolute; inset: 0; background: linear-gradient(122deg, transparent 38%, rgba(255, 255, 210, .35) 46%, transparent 54%); pointer-events: none; }
.fuelcard__chip { position: absolute; left: 10%; top: 30%; width: 14%; aspect-ratio: 1.1; border-radius: 16%;
    background: linear-gradient(135deg, #FBE7A0 0%, #E3B94A 40%, #C9962A 70%, #F0D27A 100%); box-shadow: inset 0 0 0 1.5px #8A6418, 0 1px 2px rgba(0,0,0,.25);
    display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: repeat(3, 1fr); }
.fuelcard__chip i { border: .75px solid #8A6418; }
.fuelcard__chip i:nth-child(odd) { border-right-width: 1.5px; }
.fuelcard__brand { position: absolute; right: 5%; top: 9%; display: grid; justify-items: end; }
.fuelcard__name { font: 900 clamp(24px, 3.1vw, 36px)/1 "Arial Black", Arial, sans-serif; font-variant: small-caps; letter-spacing: .01em; color: #000; }
.fuelcard__city { font: 700 clamp(15px, 1.9vw, 22px)/1.1 Arial, sans-serif; letter-spacing: .14em; color: #000; margin-right: -.14em; }
.fuelcard__num { margin-top: 16%; font: 400 clamp(15px, 2vw, 22px)/1 "OCR A Std", "OCR A Extended", "Courier New", monospace; letter-spacing: .1em; color: rgba(20, 70, 10, .55);
    text-shadow: 1px 1px 0 rgba(255, 255, 220, .55); }
.fuelcard__url { position: absolute; left: 33%; bottom: 8%; font: 500 clamp(11px, 1.35vw, 15px)/1 Arial, sans-serif; color: #10204A; letter-spacing: .01em; }
.fuelcard__mark { position: absolute; right: 4%; bottom: 5%; width: 17%; height: auto; mix-blend-mode: multiply; }

@media (prefers-reduced-motion: no-preference) {
    .fuelcard { animation: card-in .9s cubic-bezier(.2, .8, .2, 1) both .1s; }
    @keyframes card-in { from { transform: rotate(4deg) rotateY(-30deg) translateY(30px); opacity: 0; } }
}

/* ---------- Секции ---------- */
.section { padding: 72px 0; }
.section--tint { background: var(--concrete); }
.section__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin-bottom: 28px; }
.section__title { font: 700 clamp(22px, 2.4vw, 30px)/1.2 var(--f-display); letter-spacing: -.015em; }
.more { font-weight: 500; }

/* Сети АЗС на главной */
.netlist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.netlist__item { display: grid; gap: 6px; align-content: start; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.netlist__item img { height: 44px; width: auto; max-width: 140px; object-fit: contain; object-position: left center; margin-bottom: 6px; }
.netlist__name { font-weight: 600; }
.netlist__file { font-size: 15px; }

/* О компании */
.about .section__title { margin-bottom: 24px; }
.prose--cols { columns: 2 340px; column-gap: 48px; }
.prose--cols p { break-inside: avoid; }
.about__links { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 24px 0 0; font-weight: 500; }

/* Новости + вопросы */
.duo { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.newslist { list-style: none; margin: 0; padding: 0; }
.newslist li { padding: 20px 0; border-top: 1px solid var(--line); }
.newslist li:first-child { border-top: 0; padding-top: 0; }
.newslist p { margin: 6px 0 0; color: var(--muted); font-size: 16px; }
.newslist__title { display: block; margin-top: 8px; font-weight: 600; font-size: 18px; line-height: 1.35; color: var(--asphalt); text-decoration: none; }
.newslist__title:hover { color: var(--green-ink); text-decoration: underline; }
.newslist--full li:first-child { border-top: 1px solid var(--line); padding-top: 20px; }
.tag-date { display: inline-block; background: var(--signal); color: var(--asphalt); font-size: 13px; font-weight: 600; padding: 2px 8px; border-radius: 3px; }

.faq { border-top: 1px solid var(--line); }
.faq__item { border-bottom: 1px solid var(--line); }
.faq__item > summary { list-style: none; cursor: pointer; padding: 16px 40px 16px 0; font-weight: 600; font-size: 17px; line-height: 1.4; position: relative; }
.faq__item > summary::-webkit-details-marker { display: none; }
.faq__item > summary::after { content: ""; position: absolute; right: 6px; top: 22px; width: 10px; height: 10px; border-right: 2px solid var(--green); border-bottom: 2px solid var(--green); transform: rotate(45deg); transition: transform .2s; }
.faq__item[open] > summary::after { transform: rotate(-135deg); top: 27px; }
.faq__item > summary:hover { color: var(--green-ink); }
.faq__item .prose { padding: 0 0 18px; color: #333B36; }

/* Полоса поддержки */
.support { background: var(--green); color: var(--white); }
.support__grid { display: grid; grid-template-columns: 1fr auto; gap: 24px 48px; align-items: center; padding-top: 48px; padding-bottom: 48px; }
.support__title { font: 700 clamp(20px, 2.2vw, 26px)/1.25 var(--f-display); max-width: 26ch; }
.support p { margin: 10px 0 0; color: #E2F2E6; }
.support__contacts { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; }
.support__phone { font: 700 clamp(24px, 3vw, 36px)/1 var(--f-display); color: var(--white); text-decoration: none; white-space: nowrap; }
.support__phone:hover { color: var(--signal); }

/* ---------- Внутренние страницы ---------- */
.pagehead { background: var(--concrete); padding: 36px 0 40px; position: relative; }
.pagehead::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px;
    background: linear-gradient(90deg, var(--slate) 0 25%, #000 25% 50%, var(--signal) 50% 75%, var(--green) 75%); }
.crumbs { font-size: 14px; color: var(--muted); display: flex; flex-wrap: wrap; gap: 6px; }
.crumbs a { color: var(--muted); }
.pagehead__title { margin-top: 14px; font: 700 clamp(26px, 3.4vw, 42px)/1.15 var(--f-display); letter-spacing: -.02em; max-width: 24ch; }
.pagehead__sub { margin: 14px 0 0; color: var(--muted); max-width: 60ch; }

.layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 56px; padding-top: 48px; padding-bottom: 80px; align-items: start; }
.layout__main { min-width: 0; }

.aside { display: grid; gap: 16px; position: sticky; top: 20px; }
.aside__box { border: 1px solid var(--line); border-radius: var(--r); padding: 20px; font-size: 15px; }
.aside__box p { margin: 0 0 12px; }
.aside__box p:last-child { margin-bottom: 0; }
.aside__box--dark { background: var(--pine); border-color: var(--pine); color: #D3E2D8; }
.aside__label { font-weight: 600; color: var(--asphalt); }
.aside__box--dark .aside__label { color: var(--white); }
.aside__phone { display: block; font: 700 22px/1.2 var(--f-display); color: var(--white); text-decoration: none; margin-bottom: 4px; }
.aside__phone:hover { color: var(--signal); }

/* Текст из редактора */
.prose { max-width: 70ch; }
.prose > :first-child { margin-top: 0; }
.prose p, .prose ul, .prose ol, .prose table { margin: 0 0 1em; }
.prose h2, .prose h3 { font: 700 21px/1.3 var(--f-display); margin: 1.8em 0 .6em; letter-spacing: -.01em; }
.prose h3 { font-size: 18px; }
.prose ul { padding-left: 1.2em; }
.prose li { margin-bottom: .35em; }
.prose li::marker { color: var(--green); }
.prose img { border-radius: var(--r); }
.prose .alignleft { float: left; margin: 4px 24px 12px 0; }
.prose .alignright { float: right; margin: 4px 0 12px 24px; }
.prose table { border-collapse: collapse; width: 100%; font-size: 16px; }
.prose td, .prose th { border: 1px solid var(--line); padding: 8px 12px; vertical-align: top; }
.prose::after { content: ""; display: table; clear: both; }

/* Сеть обслуживания */
.netcards { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; border-top: 1px solid var(--line); }
.netcard { display: grid; grid-template-columns: 120px 1fr auto; gap: 24px; align-items: center; padding: 24px 0; border-bottom: 1px solid var(--line); }
.netcard__logo img { max-height: 64px; width: auto; max-width: 120px; object-fit: contain; }
.netcard__name { font: 700 19px/1.3 var(--f-display); }
.netcard__site { font-size: 15px; }
.netcard__apps { margin: 6px 0 0; font-size: 15px; color: var(--muted); }
.netcard__apps a { margin-left: 8px; }

/* Протоколы */
.doclist { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.doc { border-bottom: 1px solid var(--line); }
.doc > summary { cursor: pointer; padding: 18px 0; font-weight: 600; display: flex; align-items: center; gap: 14px; }
.doc__icon { font: 700 11px/1 var(--f-display); background: #B3261E; color: var(--white); padding: 6px 6px; border-radius: 3px; }
.doc__body { padding-bottom: 20px; display: grid; gap: 8px; }
.doc__body iframe { width: 100%; height: 640px; border: 1px solid var(--line); border-radius: var(--r); }

.map { margin-top: 32px; border-radius: var(--r); overflow: hidden; border: 1px solid var(--line); min-height: 400px; }

/* Соседние записи */
.pager { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 48px; }
.pager a { display: grid; gap: 4px; padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--r); text-decoration: none; color: var(--asphalt); font-weight: 500; line-height: 1.35; }
.pager a:hover { border-color: var(--green); }
.pager small { color: var(--muted); font-weight: 400; }
.pager__next { grid-column: 2; text-align: right; }

/* Постраничная навигация */
.pagination { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 32px; }
.pagination a, .pagination span { min-width: 40px; padding: 8px 12px; text-align: center; border: 1px solid var(--line); border-radius: var(--r); text-decoration: none; }
.pagination .current { background: var(--green); border-color: var(--green); color: var(--white); }

/* Формы */
.feedback { margin-top: 56px; padding-top: 40px; border-top: 4px solid var(--green); max-width: 720px; }
.feedback__title { font: 700 24px/1.2 var(--f-display); margin-bottom: 20px; }
.form { display: grid; gap: 18px; }
.form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.field { display: grid; gap: 6px; }
.field label { font-weight: 500; font-size: 15px; }
.field input, .field textarea, .searchbox input { font: inherit; padding: 11px 14px; border: 1px solid #B9BFB8; border-radius: var(--r); background: var(--white); width: 100%; }
.field textarea { resize: vertical; }
.field--err input, .field--err textarea { border-color: #B3261E; }
.field__err { color: #B3261E; font-size: 14px; }
.check { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; color: var(--muted); }
.check input { margin-top: 4px; width: 18px; height: 18px; accent-color: var(--green); }
.form .btn { justify-self: start; }
.form .btn.disabled { opacity: .5; cursor: not-allowed; }
.notice { padding: 14px 18px; border-radius: var(--r); }
.notice--ok { background: #E3F3E7; color: var(--pine); }
.notice--err { background: #FBE9E7; color: #8C1D18; }
.searchbox { display: flex; gap: 10px; margin: 0 0 20px; max-width: 560px; }

/* ---------- Подвал ---------- */
.footer { background: var(--pine); color: #BFD3C6; font-size: 15px; }
.footer a { color: #E3EEE6; }
.footer a:hover { color: var(--signal); }
.footer__grid { display: grid; grid-template-columns: 1.1fr 1.4fr 1fr; gap: 40px; padding-top: 56px; padding-bottom: 40px; }
.footer__brand p { margin: 0 0 10px; }
.footer__name { color: var(--white); font: 700 16px/1.3 var(--f-display); }
.footer__nav { columns: 2; column-gap: 28px; }
.footer__nav a { display: block; padding: 4px 0; text-decoration: none; break-inside: avoid; }
.footer__phone { display: block; font: 700 22px/1.2 var(--f-display); color: var(--white) !important; text-decoration: none; }
.footer__contact p { margin: 4px 0 12px; }
.footer__search { display: flex; margin-top: 18px; border: 1px solid rgba(255,255,255,.3); border-radius: var(--r); overflow: hidden; }
.footer__search input { flex: 1; min-width: 0; background: transparent; border: 0; color: var(--white); font: inherit; padding: 9px 12px; }
.footer__search input::placeholder { color: #9DB5A6; }
.footer__search button { background: rgba(255,255,255,.12); color: var(--white); border: 0; padding: 0 14px; font: inherit; cursor: pointer; }
.footer__legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding-top: 20px; padding-bottom: 20px; border-top: 1px solid rgba(255,255,255,.14); font-size: 14px; }
.footer__legal p { margin: 0; }

/* ---------- Адаптив ---------- */
@media (max-width: 1100px) {
    .nav { gap: 0 20px; }
}
@media (max-width: 900px) {
    .hero__grid { grid-template-columns: 1fr; padding-top: 48px; padding-bottom: 56px; gap: 40px; }
    .hero__card { justify-content: flex-start; }
    .fuelcard { width: min(340px, 88%); }
    .duo { grid-template-columns: 1fr; gap: 56px; }
    .layout { grid-template-columns: 1fr; gap: 40px; }
    .aside { position: static; grid-template-columns: 1fr 1fr; }
    .support__grid { grid-template-columns: 1fr; }
    .footer__grid { grid-template-columns: 1fr 1fr; }
    .footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 680px) {
    body { font-size: 16px; }
    .masthead__row { gap: 0 12px; padding-bottom: 4px; }
    .navtoggle { margin-top: 10px; }
    .logo img { width: 62px; }
    .phone__note { display: none; }
    .phone__num { font-size: 14px; }
    .masthead__aside { gap: 12px; }
    .lk { padding: 9px 14px; font-size: 15px; }
    .lk__long { display: none; }
    .lk__short { display: inline; }
    .navtoggle > summary { display: inline-flex; list-style: none; cursor: pointer; font-weight: 600; padding: 8px 0; gap: 8px; align-items: center; }
    .navtoggle > summary::-webkit-details-marker { display: none; }
    .navtoggle > summary::before { content: ""; width: 18px; height: 12px; border-top: 2px solid; border-bottom: 2px solid; background: linear-gradient(currentColor, currentColor) center / 100% 2px no-repeat; }
    .navtoggle:not([open]) .nav { display: none; }
    .nav { flex-direction: column; padding: 6px 0 10px; }
    .nav a { padding: 10px 0; border-bottom: 1px solid var(--line); }
    .nav a[aria-current="page"] { border-bottom-color: var(--line); }
    .section { padding: 52px 0; }
    .hero__grid { gap: 28px; padding-top: 32px; padding-bottom: 40px; }
    .hero__actions { flex-direction: column; }
    .hero__actions .btn { justify-content: center; text-align: center; }
    .hero__card { justify-content: center; }
    .netlist { grid-template-columns: minmax(0, 1fr); }
    .netlist__file, .netcard__file { display: inline-flex; align-items: center; min-height: 44px; }
    .netlist__item { padding: 16px; }
    .netcard { grid-template-columns: 72px 1fr; gap: 16px; }
    .netcard__logo img { max-width: 72px; }
    .netcard__file { grid-column: 1 / -1; justify-self: start; }
    .aside { grid-template-columns: 1fr; }
    .form__row { grid-template-columns: 1fr; }
    .pager { grid-template-columns: 1fr; }
    .pager__next { grid-column: auto; }
    .footer__grid { grid-template-columns: 1fr; }
    .doc__body iframe { height: 420px; }
    .prose .alignleft, .prose .alignright { float: none; margin: 0 0 16px; }
}
@media (min-width: 681px) {
    .navtoggle { display: block; }
    .navtoggle .nav { display: flex !important; }
}
