:root {
    --ink: #111b31;
    --navy: #0b1530;
    --muted: #667085;
    --surface: #fff;
    --soft: #f5f7fb;
    --primary: #2563eb;
    --primary-dark: #1746b3;
    --teal: #31c7b5;
    --accent: #e9f0ff;
    --border: #e2e7f0;
    --success: #157347;
    --danger: #b42318;
    --shadow: 0 20px 60px rgba(15, 29, 61, .1);
    --shadow-sm: 0 10px 32px rgba(15, 29, 61, .07);
    --radius: 20px
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    font-family: 'DM Sans', Arial, sans-serif;
    color: var(--ink);
    background: #fff;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased
}

body.menu-open {
    overflow: hidden
}

h1,
h2,
h3 {
    font-family: 'Manrope', sans-serif;
    letter-spacing: -.035em
}

a {
    color: var(--primary);
    text-decoration: none;
    transition: .2s ease
}

img {
    max-width: 100%
}

.container {
    width: min(1180px, calc(100% - 40px));
    margin: auto
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, .88);
    border-bottom: 1px solid rgba(226, 231, 240, .8);
    backdrop-filter: blur(18px)
}

.nav-wrap {
    min-height: 78px;
    display: flex;
    align-items: center;
    gap: 26px
}

.brand {
    display: flex;
    align-items: center;
    gap: 11px;
    color: var(--ink);
    margin-right: auto;
    line-height: 1.2
}

.brand-mark {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: linear-gradient(145deg, var(--primary), #153a9c);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 800;
    box-shadow: 0 8px 20px rgba(37, 99, 235, .25)
}

.brand-mark svg {
    width: 22px
}

.brand small {
    display: block;
    color: var(--muted);
    font-size: .72rem;
    margin-top: 3px
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 25px
}

.main-nav a {
    position: relative;
    color: #344054;
    font-weight: 600;
    font-size: .92rem;
    padding: 28px 0
}

.main-nav a:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    height: 2px;
    border-radius: 2px;
    background: var(--primary);
    transform: scaleX(0);
    transition: .2s
}

.main-nav a:hover,
.main-nav a.active {
    color: var(--primary)
}

.main-nav a.active:after {
    transform: scaleX(1)
}

.nav-toggle {
    display: none;
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    padding: 10px
}

.nav-toggle span {
    display: block;
    height: 2px;
    background: var(--ink);
    margin: 5px;
    border-radius: 2px;
    transition: .25s
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 21px;
    border-radius: 11px;
    background: var(--primary);
    color: #fff;
    border: 1px solid var(--primary);
    font: 700 .94rem 'DM Sans', sans-serif;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(37, 99, 235, .16);
    transition: .22s ease;
    
}

.button:hover {
    background: var(--primary-dark);
    border-color: var(--primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(37, 99, 235, .22)
}

.button-sm {
    min-height: 42px;
    padding: 9px 16px
}

.button-outline,
.button-ghost {
    background: #fff;
    color: var(--primary);
    box-shadow: none
}

.button-ghost {
    color: var(--ink);
    border-color: #cfd6e2
}

.button-light {
    background: #fff;
    color: var(--navy);
    border-color: #fff
}

.button-ghost-light {
    background: transparent;
    color: #fff;
    border-color: rgba(255, 255, 255, .45);
    box-shadow: none
}

.button-arrow span {
    font-size: 1.2rem
}

.hero {
    position: relative;
    overflow: hidden;
    padding: 95px 0 104px;
    background: linear-gradient(125deg, #f5f8ff 0%, #fff 56%, #effbf9 100%)
}

.hero:before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(#cdd7e8 1px, transparent 1px);
    background-size: 26px 26px;
    opacity: .26;
    mask-image: linear-gradient(to right, #000, transparent 55%)
}

.hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(3px)
}

.hero-orb-one {
    width: 380px;
    height: 380px;
    right: -100px;
    top: -120px;
    background: rgba(49, 199, 181, .1)
}

.hero-orb-two {
    width: 250px;
    height: 250px;
    left: -160px;
    bottom: -120px;
    background: rgba(37, 99, 235, .11)
}

.hero-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    gap: 75px;
    align-items: center
}

.eyebrow {
    text-transform: uppercase;
    letter-spacing: .14em;
    color: var(--primary);
    font-weight: 800;
    font-size: .75rem
}

.hero .eyebrow {
    display: flex;
    align-items: center;
    gap: 9px
}

.hero .eyebrow span {
    width: 7px;
    height: 7px;
    background: var(--teal);
    border-radius: 50%;
    box-shadow: 0 0 0 5px rgba(49, 199, 181, .13)
}

.hero h1 {
    max-width: 720px;
    font-size: clamp(2.8rem, 5vw, 4.85rem);
    line-height: 1.04;
    margin: .28em 0 .32em;
    color: #101a32
}

.hero h1::first-line {
    color: var(--navy)
}

.lead {
    font-size: 1.15rem;
    color: var(--muted);
    max-width: 640px
}

.actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 28px 0
}

.trust-line {
    display: flex;
    gap: 22px;
    flex-wrap: wrap;
    color: #556176;
    font-size: .87rem;
    font-weight: 600
}

.trust-line i {
    font-style: normal;
    color: #138b7c;
    margin-right: 4px
}

.hero-visual {
    position: relative;
    padding: 20px 0
}

.hero-card,
.card,
.form-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm)
}

.hero-card {
    position: relative;
    padding: 30px 30px 24px;
    box-shadow: 0 30px 75px rgba(14, 31, 66, .15);
    border-color: rgba(255, 255, 255, .8)
}

.hero-card-top {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border)
}

.card-kicker {
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--primary);
    font-weight: 800
}

.hero-card h2 {
    font-size: 1.45rem;
    margin: 4px 0 0
}

.secure-pill {
    align-self: flex-start;
    background: #eafaf6;
    color: #168272;
    border-radius: 99px;
    padding: 5px 10px;
    font-size: .72rem;
    font-weight: 800
}

.journey-step {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 18px 0;
    border-bottom: 1px solid var(--border)
}

.step-icon {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border-radius: 12px;
    background: var(--accent);
    color: var(--primary);
    font-weight: 800;
    font-size: .8rem
}

.journey-step strong {
    font-family: 'Manrope';
    font-size: .96rem
}

.journey-step p {
    margin: 2px 0 0;
    color: var(--muted);
    font-size: .82rem
}

.hero-card-note {
    display: flex;
    gap: 12px;
    align-items: center;
    background: #f6f8fc;
    border-radius: 13px;
    margin-top: 20px;
    padding: 12px 14px
}

.hero-card-note>span {
    font-size: 1.5rem;
    color: var(--teal)
}

.hero-card-note strong,
.hero-card-note small {
    display: block
}

.hero-card-note strong {
    font-size: .85rem
}

.hero-card-note small {
    color: var(--muted)
}

.floating-rate {
    position: absolute;
    right: -36px;
    bottom: -22px;
    width: 155px;
    padding: 16px 18px;
    border-radius: 17px;
    background: var(--navy);
    color: #fff;
    box-shadow: 0 18px 40px rgba(11, 21, 48, .25)
}

.floating-rate small,
.floating-rate span {
    display: block;
    color: #bac5d9;
    font-size: .7rem
}

.floating-rate strong {
    display: block;
    font: 800 2rem 'Manrope';
    letter-spacing: -.06em
}

.floating-rate span {
    color: #6fe2d5;
    margin-top: 3px
}

.section {
    padding: 90px 0
}

.section-soft {
    background: var(--soft)
}

.section-head {
    max-width: 760px;
    margin-bottom: 38px
}

.section-head-row {
    max-width: none;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px
}

.section-head-row>div {
    max-width: 700px
}

.section-head p {
    margin-bottom: 0
}

.section-head.centered {
    text-align: center;
    margin-left: auto;
    margin-right: auto
}

.section h1,
.section h2 {
    font-size: clamp(2rem, 3.4vw, 3.15rem);
    line-height: 1.15;
    margin: .22em 0
}

.grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px
}

.grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px
}

.card {
    padding: 27px
}

.card h3 {
    margin-top: 0
}

.muted {
    color: var(--muted)
}

.text-link {
    font-weight: 800;
    white-space: nowrap
}

.service-card {
    position: relative;
    overflow: hidden;
    min-height: 240px;
    display: flex;
    flex-direction: column;
    box-shadow: none;
    transition: .25s
}

.service-card:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--primary);
    transform: scaleY(0);
    transition: .25s
}

.service-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow);
    border-color: #d2dcf0
}

.service-card:hover:before {
    transform: scaleY(1)
}

.service-number {
    font: 800 .76rem 'Manrope';
    color: #a1adbf;
    letter-spacing: .08em
}

.service-card h3 {
    font-size: 1.23rem;
    margin: 22px 0 8px
}

.service-card p {
    font-size: .94rem;
    margin: 0 0 20px
}

.service-card>a {
    margin-top: auto;
    font-weight: 800;
    font-size: .9rem
}

.service-card>a span {
    transition: .2s;
    display: inline-block
}

.service-card:hover>a span {
    transform: translateX(4px)
}

.section-dark {
    background: var(--navy);
    color: #fff;
    position: relative;
    overflow: hidden
}

.section-dark:after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    border: 100px solid rgba(49, 199, 181, .035);
    right: -150px;
    top: -170px
}

.section-dark .container {
    position: relative;
    z-index: 1
}

.section-head.light p {
    color: #abb7ca
}

.section-dark .eyebrow {
    color: #63d8ca
}

.rate-card {
    box-shadow: none;
    border-color: rgba(255, 255, 255, .1);
    background: rgba(255, 255, 255, .055);
    color: #fff
}

.rate-card h3 {
    font-size: 1rem;
    margin: 14px 0
}

.rate-card .badge {
    background: rgba(99, 216, 202, .12);
    color: #72e0d3
}

.rate-card .rate {
    font: 800 3.15rem 'Manrope';
    color: #fff;
    letter-spacing: -.06em
}

.rate-card .rate sup {
    font-size: 1.2rem;
    color: #63d8ca
}

.rate-card p {
    color: #aab5c8;
    font-size: .84rem;
    margin-bottom: 0
}

.rates-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 26px;
    color: #96a4ba
}

.table-wrap {
    overflow: auto;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm)
}

table {
    width: 100%;
    border-collapse: collapse
}

th,
td {
    text-align: left;
    padding: 18px;
    border-bottom: 1px solid var(--border)
}

th {
    background: #f8fafc;
    color: #475467;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .06em
}

.testimonial-card {
    padding: 32px
}

.testimonial-card>p {
    font-size: 1.02rem;
    min-height: 100px
}

.stars {
    color: #f5a524;
    letter-spacing: 2px
}

.client {
    display: flex;
    align-items: center;
    gap: 12px;
    border-top: 1px solid var(--border);
    padding-top: 18px
}

.client>span {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--accent);
    color: var(--primary);
    font-weight: 800
}

.client strong,
.client small {
    display: block
}

.client small {
    color: var(--muted)
}

.form-card {
    padding: 32px
}

.form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px
}

.field {
    display: flex;
    flex-direction: column;
    gap: 7px
}

.field-full {
    grid-column: 1/-1
}

label {
    font-weight: 700;
    font-size: .92rem
}

input,
select,
textarea {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #cdd5e1;
    border-radius: 10px;
    font: inherit;
    background: #fff;
    color: var(--ink);
    outline: none;
    transition: .18s
}

input:hover,
select:hover,
textarea:hover {
    border-color: #aab6c8
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .11)
}

textarea {
    min-height: 130px;
    resize: vertical
}

.checkbox {
    display: flex;
    gap: 10px;
    align-items: flex-start
}

.checkbox input {
    width: auto;
    margin-top: 5px
}

.alert {
    padding: 14px 18px;
    margin-top: 18px;
    border-radius: 10px
}

.alert-success {
    background: #ecfdf3;
    color: var(--success)
}

.alert-error {
    background: #fff1f0;
    color: var(--danger)
}

.result-box {
    margin-top: 24px;
    padding: 24px;
    border-radius: 14px;
    background: #edf3ff;
    display: none
}

.result-box.visible {
    display: block
}

.result-number,
.rate {
    font-size: 2rem;
    font-weight: 800;
    color: var(--primary)
}

.cta-section {
    padding-top: 30px
}

.cta {
    position: relative;
    overflow: hidden;
    background: linear-gradient(120deg, #1d5fe4, #163e9f);
    color: #fff;
    border-radius: 26px;
    padding: 50px 56px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 35px
}

.cta:after {
    content: '';
    position: absolute;
    width: 220px;
    height: 220px;
    border: 50px solid rgba(255, 255, 255, .06);
    border-radius: 50%;
    right: -80px;
    top: -100px
}

.cta>div {
    position: relative;
    z-index: 1
}

.cta .eyebrow {
    color: #9ff0e6
}

.cta h2 {
    margin: .12em 0;
    font-size: clamp(2rem, 3vw, 2.8rem)
}

.cta p {
    margin: 0;
    color: #d8e4ff
}

.site-footer {
    background: #091126;
    color: #aeb9cc;
    padding: 62px 0 28px
}

.site-footer a {
    color: #eaf0fb
}

.site-footer a:hover {
    color: #72e0d3
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 45px
}

.footer-grid h3 {
    color: #fff;
    font-size: .9rem;
    text-transform: uppercase;
    letter-spacing: .08em
}

.footer-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    font: 700 1.05rem 'Manrope';
    margin-bottom: 16px
}

.footer-brand .brand-mark {
    width: 37px;
    height: 37px;
    font-size: .9rem
}

.footer-grid p {
    font-size: .88rem
}

.footer-bottom {
    border-top: 1px solid #26314a;
    margin-top: 35px;
    padding-top: 22px;
    font-size: .78rem;
    display: flex;
    justify-content: space-between;
    gap: 20px
}

.mobile-actions {
    display: none
}

.admin-shell {
    display: grid;
    grid-template-columns: 240px 1fr;
    min-height: 100vh
}

.admin-nav {
    background: #101828;
    color: #fff;
    padding: 24px
}

.admin-nav a {
    display: block;
    color: #fff;
    padding: 10px 0
}

.admin-main {
    padding: 32px;
    background: var(--soft)
}

.badge {
    display: inline-block;
    padding: 4px 9px;
    border-radius: 999px;
    background: var(--accent);
    font-size: .75rem;
    font-weight: 800
}

.hp-field {
    position: absolute !important;
    left: -10000px !important
}

.post-content {
    white-space: pre-line
}

.notice {
    padding: 18px;
    border-left: 4px solid var(--primary);
    background: #eef5ff;
    border-radius: 0 10px 10px 0
}

.small {
    font-size: .88rem
}

@media(max-width:960px) {
    .main-nav {
        display: none;
        position: fixed;
        top: 78px;
        left: 0;
        right: 0;
        height: calc(100dvh - 78px);
        background: #fff;
        padding: 22px 28px;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        border-top: 1px solid var(--border)
    }

    .main-nav.open {
        display: flex
    }

    .main-nav a {
        font-size: 1.15rem;
        padding: 15px 4px;
        border-bottom: 1px solid var(--border)
    }

    .main-nav a:after {
        display: none
    }

    .nav-toggle {
        display: block
    }

    .nav-toggle[aria-expanded=true] span:nth-child(1) {
        transform: translateY(7px) rotate(45deg)
    }

    .nav-toggle[aria-expanded=true] span:nth-child(2) {
        opacity: 0
    }

    .nav-toggle[aria-expanded=true] span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg)
    }

    .nav-wrap>.button {
        display: none
    }

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 45px
    }

    .hero-copy {
        max-width: 700px
    }

    .hero-visual {
        max-width: 560px;
        width: 100%;
        margin: auto
    }

    .hero {
        padding: 70px 0 90px
    }

    .grid-3 {
        grid-template-columns: repeat(2, 1fr)
    }

    .grid-2,
    .footer-grid {
        grid-template-columns: 1fr
    }

    .footer-grid {
        gap: 20px
    }

    .admin-shell {
        grid-template-columns: 1fr
    }

    .admin-nav {
        position: static
    }

    .form-grid {
        grid-template-columns: 1fr
    }

    .field-full {
        grid-column: auto
    }

    .footer-bottom {
        flex-direction: column
    }

    .testimonial-grid .card:last-child,
    .rate-grid .card:last-child {
        grid-column: 1/-1
    }

    .section-head-row {
        align-items: flex-start
    }

    .cta {
        padding: 42px;
        flex-direction: column;
        align-items: flex-start
    }
}

@media(max-width:640px) {
    .container {
        width: min(100% - 28px, 1180px)
    }

    .site-header .brand strong {
        font-size: .9rem
    }

    .brand-mark {
        width: 38px;
        height: 38px
    }

    .nav-wrap {
        min-height: 68px
    }

    .main-nav {
        top: 68px;
        height: calc(100dvh - 68px)
    }

    .hero {
        padding: 52px 0 72px
    }

    .hero h1 {
        font-size: 2.55rem
    }

    .hero .lead {
        font-size: 1.04rem
    }

    .hero .actions .button {
        width: 100%
    }

    .hero-card {
        padding: 22px 19px
    }

    .floating-rate {
        right: -4px;
        bottom: -38px
    }

    .trust-line {
        display: grid;
        gap: 8px
    }

    .section {
        padding: 65px 0
    }

    .section-head-row {
        display: block
    }

    .section-head-row .text-link {
        display: inline-block;
        margin-top: 18px
    }

    .grid-3,
    .grid-2 {
        grid-template-columns: 1fr
    }

    .testimonial-grid .card:last-child,
    .rate-grid .card:last-child {
        grid-column: auto
    }

    .rates-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px
    }

    .cta-section {
        padding-top: 10px
    }

    .cta {
        padding: 34px 24px
    }

    .cta .actions,
    .cta .button {
        width: 100%
    }

    .mobile-actions {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 40;
        background: rgba(255, 255, 255, .96);
        border-top: 1px solid var(--border);
        backdrop-filter: blur(12px);
        padding-bottom: env(safe-area-inset-bottom)
    }

    .mobile-actions a {
        text-align: center;
        padding: 13px;
        font-weight: 800;
        font-size: .85rem
    }

    .mobile-actions a:nth-child(2) {
        color: #fff;
        background: var(--primary)
    }

    .site-footer {
        padding-bottom: 100px
    }

    .card {
        padding: 23px
    }

    .form-card {
        padding: 22px
    }

    .table-wrap {
        margin-left: -14px;
        margin-right: -14px;
        border-radius: 12px
    }

    th,
    td {
        padding: 13px;
        white-space: nowrap
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    *,
    *:before,
    *:after {
        transition: none !important
    }
}

/* Admin content workspace */
.admin-body{background:#f3f6fb}.admin-shell{grid-template-columns:260px minmax(0,1fr)}.admin-nav{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:24px 18px;background:#091126}.admin-brand{display:flex!important;align-items:center;gap:12px;padding:4px 8px 26px!important;border-bottom:1px solid #26314a;margin-bottom:18px;color:#fff!important}.admin-brand .brand-mark{width:38px;height:38px;flex:0 0 38px}.admin-brand strong,.admin-brand small{display:block}.admin-brand strong{font:700 .95rem 'Manrope'}.admin-brand small{font-size:.7rem;color:#8290a9;margin-top:2px}.admin-nav nav a,.admin-nav-bottom a{display:flex;align-items:center;gap:11px;padding:11px 12px;margin:3px 0;border-radius:9px;color:#aeb9cc;font-weight:600;font-size:.9rem}.admin-nav nav a>span,.admin-nav-bottom a>span{width:22px;text-align:center;color:#7888a5;font-weight:800}.admin-nav nav a:hover,.admin-nav nav a.active,.admin-nav-bottom a:hover{color:#fff;background:rgba(255,255,255,.08)}.admin-nav nav a.active{background:#2563eb;box-shadow:0 8px 20px rgba(37,99,235,.24)}.admin-nav nav a.active>span{color:#fff}.admin-nav-bottom{margin-top:auto;border-top:1px solid #26314a;padding-top:14px}.admin-main{min-width:0;padding:38px clamp(24px,4vw,58px) 70px;background:#f3f6fb}.admin-main-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.admin-main-title h1{font-size:2rem;margin:3px 0 0}.admin-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;color:#77849a;font-size:.68rem;font-weight:800}.admin-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.admin-page-head p{margin:0}.admin-page-head .admin-kicker{margin-bottom:3px}.admin-editor{padding:30px;margin-bottom:25px;border-color:#cfdaed;box-shadow:0 18px 45px rgba(15,29,61,.09)}.admin-editor-head{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:24px}.admin-editor-head h2{font-size:1.35rem;margin:8px 0 0}.admin-close{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f0f3f8;color:#5a667a;font-size:1.5rem;line-height:1}.admin-close:hover{background:#e3e8f1;color:var(--ink)}.admin-form-actions{display:flex;gap:10px;border-top:1px solid var(--border);padding-top:22px;margin-top:24px}.field-help{color:#7b879a;font-size:.76rem;font-weight:500}.textarea-short{min-height:82px}.article-editor{min-height:330px;line-height:1.75}.admin-switch-field{justify-content:flex-end}.switch{display:flex;align-items:center;gap:10px;min-height:48px;cursor:pointer}.switch input{position:absolute;opacity:0;width:1px}.switch span{position:relative;width:44px;height:24px;border-radius:99px;background:#cbd3df;transition:.2s}.switch span:after{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:.2s}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translateX(20px)}.switch input:focus-visible+span{box-shadow:0 0 0 4px rgba(37,99,235,.15)}.content-list{display:grid;gap:14px}.content-row{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 26px;box-shadow:none;transition:.2s}.content-row:hover{border-color:#cad6ea;box-shadow:0 10px 28px rgba(15,29,61,.06)}.content-row-main{min-width:0;max-width:850px}.content-row h2{font-size:1.08rem;margin:6px 0}.content-row p{color:#5f6b7e;margin:5px 0;font-size:.9rem}.content-row blockquote{margin:8px 0 13px;font-size:.96rem;color:#354055}.content-meta{display:flex;align-items:center;gap:7px;color:#7b879a;font-size:.76rem;font-weight:700}.status-dot{width:8px;height:8px;border-radius:50%;background:#98a2b3}.status-published{background:#20a178;box-shadow:0 0 0 3px rgba(32,161,120,.12)}.content-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.content-actions form{margin:0}.button-danger{background:#fff;color:#c0362c;border-color:#efc9c6;box-shadow:none}.button-danger:hover{background:#fff3f2;color:#a42820;border-color:#e8aaa5;box-shadow:none}.badge-muted{margin-left:10px;background:#edf0f4;color:#697386}.admin-empty{text-align:center;padding:60px}.admin-empty>div{font-size:2rem;color:var(--primary)}.admin-empty h2{margin:9px 0 0}.admin-empty p{margin:5px 0}.admin-main>.alert{margin:0 0 22px;border:1px solid transparent}.admin-main>.alert-success{border-color:#b7ebcf}.admin-main>.alert-error{border-color:#fecaca}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-nav{position:static;height:auto;padding:15px}.admin-brand{padding-bottom:14px!important;margin-bottom:10px}.admin-nav nav{display:flex;overflow-x:auto;gap:5px;padding-bottom:4px}.admin-nav nav a{white-space:nowrap}.admin-nav-bottom{display:none}.admin-main{padding:28px 20px 60px}.content-row{align-items:flex-start}.admin-page-head{align-items:flex-start}}
@media(max-width:640px){.admin-main{padding:24px 14px 50px}.admin-main-title{margin-bottom:18px}.admin-page-head{display:block}.admin-page-head .button{width:100%;margin-top:16px}.admin-editor{padding:20px 17px}.content-row{display:block;padding:20px}.content-actions{margin-top:18px}.content-actions .button{flex:1}.content-actions form{display:flex;flex:1}.content-actions form .button{width:100%}.admin-form-actions .button{flex:1}.admin-switch-field{justify-content:flex-start}.article-editor{min-height:280px}}

/* Lead generation, profile, and expanded admin */
.quote-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}.quote-layout .form-card{height:100%}.step-label{display:flex;align-items:center;gap:10px;font:800 .82rem 'Manrope';text-transform:uppercase;letter-spacing:.07em;margin-bottom:22px}.step-label span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--primary);color:#fff}.quote-result{display:none;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;padding:20px;border-radius:16px;background:var(--navy);color:#fff}.quote-result.visible{display:grid}.quote-result>div{padding:4px 10px;border-right:1px solid rgba(255,255,255,.13)}.quote-result>div:nth-child(3){border:0}.quote-result small,.quote-result span{display:block;color:#aebbd1;font-size:.72rem}.quote-result strong{display:block;font:800 1.45rem 'Manrope';margin:3px 0}.quote-result p{grid-column:1/-1;color:#aebbd1;font-size:.74rem;margin:8px 10px 0;border-top:1px solid rgba(255,255,255,.12);padding-top:12px}.bio-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.bio-photo{min-height:520px;border-radius:28px;background:linear-gradient(145deg,#dfe8fa,#edf9f6);display:grid;place-items:center;overflow:hidden;position:relative}.bio-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.bio-photo>span{font:800 8rem 'Manrope';color:#fff;text-shadow:0 10px 30px rgba(25,54,107,.12)}.bio-photo small{position:absolute;bottom:22px;background:rgba(255,255,255,.88);padding:7px 11px;border-radius:8px;color:#667085}.credential-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.credential-list>div{padding:16px;border-radius:13px;background:#fff;border:1px solid var(--border)}.credential-list strong,.credential-list span{display:block}.credential-list strong{font-size:.85rem}.credential-list span{font-size:.78rem;color:var(--muted);margin-top:2px}.story-card>div{border-top:1px solid var(--border);padding-top:14px;margin-top:14px}.story-card strong{font-size:.82rem;color:var(--primary)}.story-card p{font-size:.88rem;margin:5px 0}.story-card .story-outcome{background:#effaf7;border:0;border-radius:12px;padding:13px}.video-placeholder{height:145px;border-radius:13px;background:linear-gradient(145deg,var(--navy),#1a3165);display:grid;place-items:center;margin-bottom:18px}.video-placeholder span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--primary);padding-left:3px}.newsletter-bar{background:#142044;color:#fff;padding:28px 0}.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.newsletter-inner>div strong,.newsletter-inner>div span{display:block}.newsletter-inner>div span{font-size:.82rem;color:#aebbd1}.newsletter-inner form{display:grid;grid-template-columns:130px minmax(200px,1fr) auto;gap:9px;align-items:center}.newsletter-inner input{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}.newsletter-inner input::placeholder{color:#aebbd1}.newsletter-consent{grid-column:1/3;display:flex;gap:7px;color:#aebbd1;font-size:.68rem;font-weight:500}.newsletter-consent input{width:auto}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:35;display:flex;align-items:center;gap:8px;background:#1ea952;color:#fff;padding:9px 9px 9px 15px;border-radius:99px;box-shadow:0 14px 35px rgba(18,120,57,.28);font-weight:800;font-size:.82rem}.whatsapp-float:hover{background:#168e44;color:#fff;transform:translateY(-2px)}.whatsapp-float strong{display:grid;place-items:center;width:34px;height:34px;background:rgba(255,255,255,.18);border-radius:50%}.editor-row{position:relative;margin-bottom:18px;padding:22px;border:1px solid var(--border);border-radius:15px;background:#fafbfd}.remove-row{position:absolute;right:16px;bottom:16px;border:0;background:transparent;color:#bd332a;font-weight:700;cursor:pointer}.sticky-save{position:sticky;bottom:15px;z-index:5;display:flex;align-items:center;gap:15px;width:max-content;margin:20px 0 0 auto;padding:10px;border-radius:14px;background:rgba(255,255,255,.92);border:1px solid var(--border);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px)}.admin-stats a{color:var(--ink)}.admin-stats span{color:var(--primary);font-weight:700;font-size:.82rem}.admin-quick{margin-top:24px}.admin-quick .grid-3{margin-top:22px}.admin-quick .grid-3 a{padding:18px;border:1px solid var(--border);border-radius:13px;color:var(--ink)}.admin-quick .grid-3 a:hover{border-color:#b9c9e5;background:#f7f9fd}.admin-quick strong,.admin-quick span{display:block}.admin-quick span{font-size:.78rem;color:var(--muted);margin-top:4px}
@media(max-width:960px){.quote-layout,.bio-grid{grid-template-columns:1fr}.bio-photo{min-height:430px;max-width:500px;width:100%}.newsletter-inner{align-items:flex-start;flex-direction:column}.newsletter-inner form{width:100%}}
@media(max-width:640px){.quote-result{grid-template-columns:1fr}.quote-result>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.13);padding:8px}.credential-list{grid-template-columns:1fr}.bio-photo{min-height:360px}.newsletter-inner form{grid-template-columns:1fr}.newsletter-consent{grid-column:auto}.newsletter-inner .button{width:100%}.whatsapp-float{right:14px;bottom:72px}.whatsapp-float span{display:none}.editor-row{padding:18px 14px 55px}.sticky-save{width:100%;justify-content:center}.admin-quick .grid-3{grid-template-columns:1fr}}
