/* seo/cro additions */
.narrow {
    max-width: 820px
}

.more {
    color: var(--teal);
    font-weight: 700
}

.more:hover {
    text-decoration: underline
}

.card h3 a:hover {
    color: var(--teal)
}

.faq details {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r);
    padding: 16px 20px;
    margin-bottom: 12px
}

.faq summary {
    font-weight: 700;
    cursor: pointer
}

.faq p {
    color: var(--muted);
    margin-top: 10px;
    font-size: 15px
}

.form select {
    width: 100%;
    font: inherit;
    font-size: 14px;
    padding: 11px 13px;
    border: 1.5px solid var(--border);
    border-radius: 8px;
    background: var(--bg)
}

.fab {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 900;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #25D366;
    color: #fff;
    font-weight: 700;
    padding: 12px 18px;
    border-radius: 100px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .2)
}

.stickybar {
    display: none
}

.crumbs {
    font-size: 13px;
    color: var(--muted);
    margin-bottom: 14px
}

.crumbs a {
    color: var(--teal)
}

.page {
    padding: calc(var(--nav) + 40px) 0 64px
}

.page h1 {
    font-size: clamp(2rem, 4vw, 2.8rem);
    font-weight: 800;
    margin-bottom: 14px
}

.page h2 {
    font-size: 1.5rem;
    font-weight: 800;
    margin: 36px 0 10px
}

.page p {
    color: var(--muted);
    margin-bottom: 12px
}

.page ul {
    list-style: disc;
    padding-left: 22px;
    margin-bottom: 14px;
    color: var(--muted)
}

.page li {
    margin-bottom: 6px
}

.page .row {
    margin-top: 22px
}

@media(max-width:1024px) {
    body {
        padding-bottom: 72px
    }

    .fab span {
        display: none
    }

    .fab {
        bottom: 84px;
        padding: 14px
    }

    .stickybar {
        display: flex;
        gap: 10px;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 950;
        padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
        background: #fff;
        border-top: 1px solid var(--border)
    }

    .stickybar .btn {
        flex: 1;
        padding: 12px 10px;
        font-size: 14px
    }
}

/* seo/cro additions */
.narrow {
    max-width: 820px
}

.more {
    color: var(--teal);
    font-weight: 700
}

.more:hover {
    text-decoration: underline
}

.card h3 a:hover {
    color: var(--teal)
}

.faq details {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r);
    padding: 16px 20px;
    margin-bottom: 12px
}

.faq summary {
    font-weight: 700;
    cursor: pointer
}

.faq p {
    color: var(--muted);
    margin-top: 10px;
    font-size: 15px
}

.form select {
    width: 100%;
    font: inherit;
    font-size: 14px;
    padding: 11px 13px;
    border: 1.5px solid var(--border);
    border-radius: 8px;
    background: var(--bg)
}

.fab {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 900;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #25D366;
    color: #fff;
    font-weight: 700;
    padding: 12px 18px;
    border-radius: 100px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .2)
}

.stickybar {
    display: none
}

.crumbs {
    font-size: 13px;
    color: var(--muted);
    margin-bottom: 14px
}

.crumbs a {
    color: var(--teal)
}

.page {
    padding: calc(var(--nav) + 40px) 0 64px
}

.page h1 {
    font-size: clamp(2rem, 4vw, 2.8rem);
    font-weight: 800;
    margin-bottom: 14px
}

.page h2 {
    font-size: 1.5rem;
    font-weight: 800;
    margin: 36px 0 10px
}

.page p {
    color: var(--muted);
    margin-bottom: 12px
}

.page ul {
    list-style: disc;
    padding-left: 22px;
    margin-bottom: 14px;
    color: var(--muted)
}

.page li {
    margin-bottom: 6px
}

.page .row {
    margin-top: 22px
}

@media(max-width:1024px) {
    body {
        padding-bottom: 72px
    }

    .fab span {
        display: none
    }

    .fab {
        bottom: 84px;
        padding: 14px
    }

    .stickybar {
        display: flex;
        gap: 10px;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 950;
        padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
        background: #fff;
        border-top: 1px solid var(--border)
    }

    .stickybar .btn {
        flex: 1;
        padding: 12px 10px;
        font-size: 14px
    }
}

.ptable {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px;
    background: #fff
}

.ptable th,
.ptable td {
    border: 1px solid var(--border);
    padding: 12px 14px;
    text-align: left;
    font-size: 14px;
    vertical-align: top
}

.ptable thead th {
    background: var(--alt)
}

.ptable tbody th {
    color: var(--navy);
    width: 22%
}

.ptable td {
    color: var(--muted)
}

.page .wrap>p {
    max-width: 820px
}

/* ---------- Social ---------- */
.soc-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    margin-top: 32px
}

.soc-card {
    --b: #00113F;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    padding: 26px 14px;
    background: #fff;
    border: 1px solid rgba(0, 17, 63, .1);
    border-radius: 16px;
    color: #00113F;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s, border-color .2s
}

.soc-card:hover,
.soc-card:focus-visible {
    transform: translateY(-4px);
    border-color: var(--b);
    box-shadow: 0 12px 28px rgba(0, 17, 63, .12)
}

.soc-ico {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    color: #fff;
    background: var(--b)
}

.soc-svg {
    width: 26px;
    height: 26px;
    display: block
}

.soc-txt strong {
    display: block;
    font-size: 16px
}

.soc-txt small {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    color: #5b6784;
    word-break: break-all
}

.soc-go {
    font-size: 13px;
    font-weight: 600;
    color: var(--b)
}

.soc-card.ig {
    --b: #E1306C
}

.soc-card.ig .soc-ico {
    background: linear-gradient(45deg, #F58529, #DD2A7B 55%, #8134AF)
}

.soc-card.fb {
    --b: #1877F2
}

.soc-card.yt {
    --b: #E00000
}

.soc-card.x {
    --b: #000
}

.soc-card.wa {
    --b: #128C7E
}

/* footer icons */
.soc-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px
}

.soc-row a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: inherit;
    border: 1px solid rgba(128, 128, 128, .4);
    transition: background .2s, color .2s, border-color .2s, transform .2s
}

.soc-row a:hover,
.soc-row a:focus-visible {
    background: var(--b);
    border-color: transparent;
    color: #fff;
    transform: translateY(-2px)
}

.soc-row .soc-svg {
    width: 18px;
    height: 18px
}

@media (max-width:900px) {
    .soc-grid {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width:560px) {
    .soc-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .soc-card:last-child {
        grid-column: 1/-1
    }
}