/* ───────────── Дупки Севлиево · „Асфалт & Сигнал" ───────────── */

:root {
    --asphalt: #16181B;
    --signal: #FFC400;
    --signal-deep: #E3A700;
    --hazard: #E5462B;
    --warn: #F08A24;
    --fixed: #2E9E5B;
    --ink: #1B1E23;
    --muted: #6B7280;
    --header-h: 64px;
    --stripe-h: 6px;
}

* { -webkit-tap-highlight-color: transparent; }

/* ▞ предупредителна лента под хедъра — сигнатурата ▞ */
.hazard-stripe {
    height: var(--stripe-h);
    background-image: repeating-linear-gradient(
        -45deg,
        var(--signal) 0, var(--signal) 14px,
        #16181B 14px, #16181B 28px
    );
}

/* ── Карта ── */
#map {
    height: calc(100dvh - var(--header-h) - var(--stripe-h));
    background: #dfe1e6;
    z-index: 0;
}
.leaflet-container { font-family: 'Manrope', sans-serif; }

/* ── Контролен панел ── */
.panel {
    position: absolute;
    z-index: 1000;
    background: #fff;
    box-shadow: 0 18px 48px -18px rgba(16, 18, 21, .45);
}
/* Десктоп: плаваща карта горе-ляво */
@media (min-width: 640px) {
    .panel {
        top: 20px;
        left: 20px;
        width: 340px;
        max-height: calc(100dvh - var(--header-h) - var(--stripe-h) - 40px);
        overflow-y: auto;
        border-radius: 18px;
        padding: 22px;
        border: 1px solid rgba(16, 18, 21, .06);
    }
}
/* Мобилно: долен лист */
/* Мобилно: колапсиращ долен лист */
@media (max-width: 639px) {
    .panel {
        left: 0;
        right: 0;
        bottom: 0;
        border-radius: 20px 20px 0 0;
        padding: 0 18px calc(16px + env(safe-area-inset-bottom));
        max-height: 86dvh;
        overflow-y: auto;
    }
    #viewIntro .intro-extra {
        overflow: hidden;
        max-height: 1400px;
        opacity: 1;
        transition: max-height .34s cubic-bezier(.4, 0, .2, 1), opacity .22s ease;
    }
    #panel.collapsed #viewIntro .intro-extra {
        max-height: 0;
        opacity: 0;
        pointer-events: none;
    }
}
/* Дръжка на листа (само мобилно — има клас sm:hidden) */
.sheet-handle {
    display: block;
    width: 100%;
    padding: 11px 0 9px;
    background: none;
    border: 0;
    cursor: pointer;
}
.panel-grip {
    display: block;
    width: 44px;
    height: 5px;
    border-radius: 99px;
    background: #cfd2d8;
    margin: 0 auto;
    transition: background .15s;
}
.sheet-handle:active .panel-grip,
.sheet-handle:hover .panel-grip { background: #b3b8c0; }

/* ── Типография на панела ── */
.eyebrow {
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--signal-deep);
    margin-bottom: 8px;
}

/* ── Бутони ── */
.btn-primary, .btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 46px;
    padding: 0 18px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    transition: background-color .15s ease, transform .05s ease, color .15s ease;
    border: 0;
}
.btn-primary {
    background: var(--signal);
    color: var(--asphalt);
}
.btn-primary:hover { background: var(--signal-deep); }
.btn-primary:active { transform: translateY(1px); }
.btn-primary:disabled {
    background: #e7e8ec;
    color: #aab0b8;
    cursor: not-allowed;
}
.btn-ghost {
    background: #f1f2f5;
    color: var(--ink);
}
.btn-ghost:hover { background: #e7e9ee; }

/* ── Легенда ── */
.legend {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px dashed #e1e3e8;
}
.legend-title {
    font-size: 11px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--muted);
}
.legend ul {
    margin-top: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
}
.legend li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--ink);
}
.legend .dot {
    width: 12px; height: 12px;
    border-radius: 50%;
    background: var(--c);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 22%, transparent);
}

/* ── Полета ── */
.field-label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
}
.field {
    width: 100%;
    border: 1.5px solid #e1e3e8;
    border-radius: 12px;
    padding: 11px 13px;
    font-size: 15px;
    font-family: inherit;
    color: var(--ink);
    background: #fafbfc;
    resize: vertical;
    transition: border-color .15s, box-shadow .15s;
}
.field:focus {
    outline: none;
    border-color: var(--signal);
    box-shadow: 0 0 0 3px rgba(255, 196, 0, .25);
    background: #fff;
}

/* ── Сегментиран избор (тежест) ── */
.seg { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.seg-item input { position: absolute; opacity: 0; pointer-events: none; }
.seg-item span {
    display: grid;
    place-items: center;
    height: 42px;
    border-radius: 10px;
    border: 1.5px solid #e1e3e8;
    background: #fafbfc;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .15s, background .15s;
}
.seg-item span::before {
    content: "";
    width: 9px; height: 9px;
    border-radius: 50%;
    background: var(--c);
    margin-right: 6px;
}
.seg-item input:checked + span {
    border-color: var(--c);
    background: color-mix(in srgb, var(--c) 12%, #fff);
}
.seg-item input:focus-visible + span {
    box-shadow: 0 0 0 3px rgba(255, 196, 0, .3);
}

/* ── Качване на снимка ── */
.filebox {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    border: 1.5px dashed #cfd2d8;
    border-radius: 12px;
    background: #fafbfc;
    cursor: pointer;
    overflow: hidden;
    transition: border-color .15s, background .15s;
}
.filebox:hover { border-color: var(--signal); }
.filebox img {
    width: 100%;
    max-height: 160px;
    object-fit: cover;
}

/* ── Координати като данни ── */
.coords {
    font-family: 'JetBrains Mono', monospace;
    font-size: 12.5px;
    color: var(--muted);
    background: #f4f5f7;
    border-radius: 8px;
    padding: 8px 10px;
    text-align: center;
}

/* ── Грешка ── */
.form-error {
    margin-top: 10px;
    font-size: 13px;
    color: var(--hazard);
    background: color-mix(in srgb, var(--hazard) 9%, #fff);
    border: 1px solid color-mix(in srgb, var(--hazard) 25%, #fff);
    border-radius: 10px;
    padding: 9px 12px;
}

/* ── Подсказка при маркиране ── */
.hint {
    position: absolute;
    z-index: 1100;
    top: 18px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--asphalt);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 18px;
    border-radius: 99px;
    box-shadow: 0 10px 30px -8px rgba(0,0,0,.5);
    animation: hintIn .25s ease;
    pointer-events: none;
    white-space: nowrap;
}
@media (max-width: 639px) { .hint { top: 14px; font-size: 13px; padding: 9px 14px; } }
@keyframes hintIn { from { opacity: 0; transform: translate(-50%, -8px); } }

/* ── Маркери: предупредителни триъгълници ── */
.pin-holder { position: relative; width: 36px; height: 42px; }
.pin {
    width: 36px;
    height: 42px;
    filter: drop-shadow(0 3px 4px rgba(16,18,21,.35));
    transition: transform .12s ease;
    cursor: pointer;
}
.pin-holder:hover .pin { transform: scale(1.12); }
.pin-badge {
    position: absolute;
    top: -5px; right: -7px;
    min-width: 18px; height: 18px;
    padding: 0 4px;
    border-radius: 99px;
    background: #16181B;
    color: #fff;
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    line-height: 18px;
    text-align: center;
    font-weight: 700;
    box-shadow: 0 0 0 2px #fff;
    pointer-events: none;
}

/* ── Снимкова иконка (етикет) ── */
.photo-pin {
    position: relative;
    width: var(--s, 48px);
    height: var(--s, 48px);
    border-radius: 13px;
    border: 3px solid var(--c, #FFC400);
    background: #fff;
    box-shadow: 0 3px 9px -1px rgba(16, 18, 21, .45);
    cursor: pointer;
    transition: transform .12s ease;
}
.photo-pin img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}
.photo-pin::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    width: 0; height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 9px solid var(--c, #FFC400);
}
.pin-wrap:hover .photo-pin { transform: scale(1.08); }
.pin.draft { animation: drop .4s cubic-bezier(.2,.8,.3,1.4); }
@keyframes drop { from { transform: translateY(-22px) scale(.8); opacity: .4; } }

/* ── Попъп ── */
.leaflet-popup-content-wrapper {
    border-radius: 14px;
    padding: 2px;
    box-shadow: 0 14px 40px -14px rgba(16,18,21,.5);
}
.leaflet-popup-content { margin: 12px 14px; font-family: 'Manrope', sans-serif; }
.pp-photo {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 8px;
    display: block;
}
.pp-badges { display: flex; gap: 6px; margin-bottom: 8px; flex-wrap: wrap; }
.pp-badge {
    font-size: 11px;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 99px;
    color: #fff;
}
.pp-desc { font-size: 14px; line-height: 1.45; color: var(--ink); }
.pp-meta {
    margin-top: 8px;
    font-size: 12px;
    color: var(--muted);
    display: flex;
    align-items: center;
    gap: 6px;
}

/* ───────────── Детайли за сигнал ───────────── */
.muted { color: var(--muted); }
.small { font-size: 13px; }

.detail-back {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: none;
    border: 0;
    padding: 0;
    margin-bottom: 14px;
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    cursor: pointer;
}
.detail-back:hover { color: var(--ink); }

.detail-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.signal-no {
    font-family: 'JetBrains Mono', monospace;
    font-size: 15px;
    font-weight: 700;
    color: var(--asphalt);
    background: #f1f2f5;
    padding: 4px 10px;
    border-radius: 8px;
}
.detail-photo {
    width: 100%;
    border-radius: 12px;
    margin-bottom: 12px;
    display: block;
}
.detail-desc { font-size: 15px; line-height: 1.5; color: var(--ink); }
.detail-meta { margin-top: 8px; font-size: 12.5px; color: var(--muted); }

/* ── Споделяне ── */
.share-wrap { margin-top: 14px; }
.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 44px;
    border-radius: 12px;
    border: 1.5px solid var(--signal);
    background: #fffdf5;
    color: var(--asphalt);
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: background .12s;
}
.share-btn:hover { background: #fff7da; }
.share-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.share-opt {
    flex: 1;
    min-width: 90px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    border-radius: 10px;
    background: #f1f2f5;
    color: var(--ink);
    font-size: 13px;
    font-weight: 600;
    border: 0;
    cursor: pointer;
    text-decoration: none;
}
.share-opt:hover { background: #e7e9ee; }

/* ── Приоритет / гласуване ── */
.vote-box {
    margin-top: 16px;
    padding: 14px;
    border-radius: 14px;
    background: #fafbfc;
    border: 1px solid #ebedf1;
}
.vote-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.vote-label { font-size: 13px; font-weight: 600; }
.vote-score { font-size: 14px; color: var(--signal-deep); font-weight: 600; }
.vote-score .score { font-family: 'JetBrains Mono', monospace; color: var(--ink); }

.stepper { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.step-btn {
    width: 38px; height: 38px;
    border-radius: 10px;
    border: 1.5px solid #dfe2e7;
    background: #fff;
    font-size: 20px;
    font-weight: 700;
    color: var(--ink);
    cursor: pointer;
    transition: border-color .12s, background .12s;
}
.step-btn:hover:not(:disabled) { border-color: var(--signal); background: #fffdf5; }
.step-btn:disabled { opacity: .4; cursor: not-allowed; }
.step-val {
    min-width: 26px;
    text-align: center;
    font-family: 'JetBrains Mono', monospace;
    font-size: 18px;
    font-weight: 700;
}
.step-hint { font-size: 12px; color: var(--muted); flex: 1; }
.step-hint .rem { color: var(--signal-deep); font-weight: 700; }
.vote-login {
    display: inline-block;
    font-size: 13px;
    font-weight: 600;
    color: var(--signal-deep);
    text-decoration: underline;
}
.vote-note { margin-top: 8px; font-size: 11px; color: var(--muted); }

/* ── Изтриване ── */
.btn-danger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 42px;
    margin-top: 14px;
    border: 1.5px solid color-mix(in srgb, var(--hazard) 35%, #fff);
    background: color-mix(in srgb, var(--hazard) 8%, #fff);
    color: var(--hazard);
    border-radius: 12px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: background .12s;
}
.btn-danger:hover { background: color-mix(in srgb, var(--hazard) 16%, #fff); }
.btn-sm { height: 40px; font-size: 14px; }

/* ── Коментари ── */
.comments {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px dashed #e1e3e8;
}
.comments-title { font-size: 14px; font-weight: 700; margin-bottom: 12px; }
.comments-count { color: var(--muted); font-weight: 500; }
.comment-list { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.comment {
    background: #f6f7f9;
    border-radius: 10px;
    padding: 10px 12px;
}
.comment-head { font-size: 12px; color: var(--muted); margin-bottom: 4px; font-weight: 600; }
.comment-body { font-size: 14px; line-height: 1.45; color: var(--ink); white-space: pre-wrap; word-break: break-word; }
.comment-form { display: flex; flex-direction: column; gap: 8px; }

/* ── Навигация в лентата ── */
.nav-link {
    display: inline-flex;
    align-items: center;
    height: 36px;
    padding: 0 12px;
    border-radius: 8px;
    color: rgba(255, 255, 255, .72);
    font-weight: 600;
    background: none;
    border: 0;
    cursor: pointer;
    transition: background .12s, color .12s;
}
.nav-link:hover { color: #fff; background: rgba(255, 255, 255, .1); }

.menu-item {
    display: block;
    width: 100%;
    text-align: left;
    padding: 13px 20px;
    color: rgba(255, 255, 255, .85);
    font-size: 15px;
    font-weight: 600;
    background: none;
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, .07);
    cursor: pointer;
}
.menu-item:hover { background: rgba(255, 255, 255, .08); }

/* ── Филтър „покажи отстранените" (в панела) ── */
.filter-row {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 14px;
    padding: 11px 13px;
    border: 1px solid #e1e3e8;
    border-radius: 12px;
    background: #fafbfc;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--ink);
    cursor: pointer;
    user-select: none;
}
.filter-row input { accent-color: var(--signal-deep); width: 17px; height: 17px; flex-shrink: 0; }

/* ── Подкана за начален екран ── */
.a2hs {
    position: absolute;
    z-index: 1150;
    top: 14px; left: 12px; right: 12px;
    max-width: 480px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 16px 40px -12px rgba(16, 18, 21, .55);
    border: 1px solid rgba(16, 18, 21, .06);
}
.a2hs-ico { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 11px; background: var(--signal); flex-shrink: 0; }
.a2hs-text { flex: 1; min-width: 0; line-height: 1.25; }
.a2hs-text b { display: block; font-size: 14px; }
.a2hs-text span { display: block; font-size: 12px; color: var(--muted); }
.a2hs-btn { flex-shrink: 0; height: 38px; padding: 0 16px; border: 0; border-radius: 10px; background: var(--signal); color: var(--asphalt); font-weight: 700; font-size: 14px; cursor: pointer; }
.a2hs-btn:hover { background: var(--signal-deep); }
.a2hs-x { flex-shrink: 0; width: 30px; height: 30px; border: 0; background: none; font-size: 24px; line-height: 1; color: var(--muted); cursor: pointer; border-radius: 8px; }
.a2hs-x:hover { background: #f1f2f5; }

/* ── Мобилна плътност на панела ── */
@media (max-width: 639px) {
    #viewIntro .eyebrow { margin-bottom: 4px; }
    #viewIntro h1 { font-size: 1.55rem; margin-bottom: 6px; }
    #viewIntro p.text-sm { font-size: 13.5px; line-height: 1.4; margin-bottom: 12px; }
    .legend { margin-top: 12px; padding-top: 12px; }
    .legend ul { margin-top: 8px; gap: 6px 10px; }
    .legend li { font-size: 12.5px; }
    .filter-row { margin-top: 12px; padding: 10px 12px; font-size: 12.5px; }
    .disclaimer { margin-top: 12px; padding: 9px 11px; font-size: 11px; }
    .a2hs { gap: 10px; padding: 9px 10px; }
    .a2hs-text b { font-size: 13px; }
    .a2hs-text span { font-size: 11.5px; }
}

/* ── Дисклеймър ── */
.disclaimer {
    margin-top: 16px;
    padding: 11px 13px;
    border-radius: 10px;
    background: #fbf7e8;
    border: 1px solid #f1e4b8;
    font-size: 12px;
    line-height: 1.5;
    color: #6b5d2e;
}
.disclaimer a { color: var(--signal-deep); font-weight: 700; white-space: nowrap; }

/* ── Потвърждаване „оправена" ── */
.fix-box {
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 14px;
    background: #f1faf4;
    border: 1px solid #cdeed9;
}
.fix-count { font-size: 13px; margin-bottom: 9px; }
.fix-count b, .fix-done b { color: var(--fixed); }
.fix-done { font-size: 13px; line-height: 1.5; color: #2a6b46; }
.fix-mine { font-size: 13px; font-weight: 700; color: var(--fixed); }
.btn-confirm {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 42px;
    border: 0;
    border-radius: 12px;
    background: var(--fixed);
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: background .12s;
}
.btn-confirm:hover { background: #27884e; }

/* ── Последна активност ── */
.act-section-2 { margin-top: 18px; }
.act-item {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: start;
    gap: 6px 10px;
    width: 100%;
    text-align: left;
    background: #f6f7f9;
    border: 0;
    border-radius: 10px;
    padding: 10px 12px;
    margin-bottom: 8px;
    cursor: pointer;
    transition: background .12s;
}
.act-item:hover { background: #eef0f3; }
.act-dot {
    width: 11px; height: 11px;
    border-radius: 50%;
    margin-top: 4px;
    grid-row: span 2;
}
.act-main {
    font-size: 14px;
    line-height: 1.4;
    color: var(--ink);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.act-no { font-family: 'JetBrains Mono', monospace; font-weight: 700; font-size: 12px; color: var(--muted); }
.act-meta { grid-column: 2; font-size: 11.5px; color: var(--muted); }

/* Достъпност */
.sr-only {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* ───────────── Статични страници (За проекта / Контакти) ───────────── */
.page { flex: 1; width: 100%; max-width: 880px; margin: 0 auto; padding: 30px 20px 56px; }
.page-h1 {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
    font-size: clamp(28px, 6vw, 40px);
    line-height: 1.05;
    margin: 2px 0 20px;
}
.prose { max-width: 680px; }
.prose p { font-size: 15.5px; line-height: 1.65; margin-bottom: 14px; color: #2b2f36; }
.prose h2 {
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: 19px;
    margin: 26px 0 10px;
}
.prose ul { margin: 0 0 14px; padding-left: 0; list-style: none; }
.prose li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 9px;
    font-size: 15px;
    line-height: 1.55;
    color: #2b2f36;
}
.prose li::before {
    content: "";
    position: absolute;
    left: 2px; top: 8px;
    width: 8px; height: 8px;
    background: var(--signal);
    border-radius: 2px;
    transform: rotate(45deg);
}
.prose a { color: var(--signal-deep); font-weight: 600; text-decoration: underline; }
.prose-cta { margin-top: 24px; }
.prose-cta .btn-primary { width: auto; display: inline-flex; text-decoration: none; }

.page-footer {
    background: var(--asphalt);
    color: rgba(255, 255, 255, .55);
    font-size: 12.5px;
    text-align: center;
    padding: 18px 20px;
    line-height: 1.6;
}
.page-footer a { color: rgba(255, 255, 255, .8); }

/* Контакти */
.contact-group { margin-top: 30px; }
.contact-group-title {
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: 17px;
    padding-bottom: 8px;
    border-bottom: 3px solid var(--signal);
    display: inline-block;
}
.contact-group-note { font-size: 13.5px; color: var(--muted); margin: 8px 0 14px; max-width: 680px; }
.contact-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
.contact-card {
    background: #fff;
    border: 1px solid rgba(16, 18, 21, .07);
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 10px 28px -22px rgba(16, 18, 21, .4);
}
.contact-name { font-weight: 800; font-size: 15.5px; }
.contact-role { font-size: 12.5px; color: var(--muted); margin-top: 2px; margin-bottom: 10px; }
.contact-lines div { display: flex; gap: 8px; font-size: 13.5px; padding: 3px 0; }
.contact-lines dt { color: var(--muted); min-width: 52px; flex-shrink: 0; }
.contact-lines dd { margin: 0; word-break: break-word; }
.contact-lines a { color: var(--signal-deep); font-weight: 600; }
.contact-disclaimer {
    max-width: 680px;
    margin-top: 28px;
    font-size: 12.5px;
    color: var(--muted);
    background: #fbf7e8;
    border: 1px solid #f1e4b8;
    border-radius: 10px;
    padding: 12px 14px;
    line-height: 1.55;
}
