:root {
    --navy: #071d38;
    --navy2: #0b2346;
    --gold: #c49a3c;
    --gold2: #d0aa55;
    --text: #12213b;
    --muted: #5a6474;
    --line: #e8e8e8;
    --bg: #f7f7f5;
    --white: #fff;
    --shadow: 0 14px 32px rgba(5, 20, 40, .10);
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 18px;
    --radius-xl: 28px;
    --transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1)
}

html {
    scroll-behavior: smooth
}

* {
    box-sizing: border-box
}

body {
    margin: 0;
    font-family: "Inter", Arial, sans-serif;
    color: var(--text);
    background: #fff;
    line-height: 1.65;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased
}

h1,
h2,
h3 {
    font-family: Georgia, "Times New Roman", serif;
    line-height: 1.12;
    margin: 0;
    color: var(--text)
}

a {
    text-decoration: none;
    color: inherit
}

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

.site-header,
.page-hero,
.cta-band,
.footer {
    background: radial-gradient(circle at 80% 20%, rgba(255, 255, 255, .08), transparent 26%), linear-gradient(135deg, #06172d, #092342 70%, #06172d);
    color: #fff;
    position: relative;
    overflow: hidden
}

.site-header:after,
.page-hero:after,
.cta-band:after,
.footer:after {
    content: "";
    position: absolute;
    right: 8%;
    top: 26%;
    width: 330px;
    height: 210px;
    border: 2px solid rgba(255, 255, 255, .08);
    border-radius: 48% 42% 55% 35%;
    transform: rotate(-10deg);
    pointer-events: none
}

.navbar {
    height: 94px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    position: relative;
    z-index: 2
}

.brand {
    display: flex;
    align-items: center;
    min-width: 220px
}

.brand img {
    height: 74px;
    width: auto;
    object-fit: contain
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 34px;
    margin-left: auto;
    font-weight: 800;
    font-size: 13px;
    letter-spacing: .04em;
    text-transform: uppercase
}

.nav-links a {
    color: #fff;
    position: relative;
    padding: 12px 0
}

.nav-links a.active,
.nav-links a:hover {
    color: var(--gold2)
}

.nav-links a.active:after,
.nav-links a:hover:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5px;
    height: 2px;
    background: var(--gold)
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 25px;
    background: linear-gradient(180deg, var(--gold2), #b98123);
    color: #fff !important;
    border-radius: var(--radius-sm);
    font-weight: 800;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: .03em;
    box-shadow: 0 5px 12px rgba(0, 0, 0, .18);
    transition: var(--transition)
}

.btn:hover {
    filter: brightness(1.08);
    transform: translateY(-1px)
}

.btn:focus-visible {
    outline: 2px solid var(--gold2);
    outline-offset: 3px
}

.btn:active {
    transform: translateY(0);
    filter: brightness(.97)
}

.page-hero {
    padding: 44px 0 66px
}

.page-hero h1 {
    font-size: clamp(2rem, 3.6vw, 3.25rem);
    color: #fff
}

.hero-home {
    min-height: 540px;
    padding-bottom: 50px;
    background: linear-gradient(90deg, rgba(4, 18, 36, .96) 0%, rgba(7, 29, 56, .94) 38%, rgba(7, 29, 56, .42) 70%), url('assets/hero-skyline.jpg') right center/cover no-repeat
}

.hero-home .hero-content {
    position: relative;
    z-index: 3;
    padding-top: 46px;
    max-width: 570px
}

.hero-home h1 {
    font-size: 48px;
    color: #fff;
    margin: 0 0 22px
}

.hero-home h1 span {
    color: var(--gold)
}

.hero-home .hero-sub {
    font-size: 18px;
    color: #f2f5f7;
    max-width: 500px;
    margin: 0 0 30px
}

.section {
    padding: 72px 0
}

.section-light {
    background: #fff
}

.section-soft {
    background: #f8f8f7
}

.section-title {
    text-align: center;
    margin-bottom: 18px
}

.section-title h2 {
    font-size: 38px
}

.gold-line {
    width: 92px;
    height: 2px;
    background: var(--gold);
    display: block;
    margin: 14px auto 0
}

.lead {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 38px;
    color: #384457
}

.service-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px
}

.card {
    background: #fff;
    border: 1px solid #eee;
    box-shadow: var(--shadow);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: var(--transition)
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(5, 20, 40, .15)
}

.mini-card {
    padding: 32px 22px;
    text-align: center;
    border-radius: var(--radius-md);
    transition: var(--transition)
}

.mini-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(5, 20, 40, .15)
}

.icon-circle {
    width: 74px;
    height: 74px;
    border-radius: 50%;
    background: var(--navy);
    display: grid;
    place-items: center;
    margin: 0 auto 22px;
    color: #fff
}

.icon-circle svg {
    width: 38px;
    height: 38px;
    stroke: currentColor;
    fill: none;
    stroke-width: 1.9
}

.mini-card h3 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1.25;
    color: #071d38;
    margin-bottom: 14px
}

.mini-card p {
    font-size: 13px;
    color: #4f5966;
    margin: 0 0 18px
}

.text-link {
    font-weight: 900;
    color: var(--gold);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em
}

.trust-strip {
    background: linear-gradient(135deg, #06172d, #08284d);
    border-top: 1px solid rgba(197, 154, 60, .3);
    border-bottom: 1px solid rgba(197, 154, 60, .3);
    color: #fff;
    padding: 26px 0
}

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

.trust-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    border-right: 1px solid rgba(255, 255, 255, .18);
    min-height: 78px
}

.trust-item:last-child {
    border-right: none
}

.trust-icon {
    color: var(--gold);
    font-size: 42px;
    font-weight: 900
}

.trust-item strong {
    font-family: Georgia, serif;
    font-size: 25px;
    display: block
}

.trust-item span {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.35
}

.split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 52px;
    align-items: center
}

.split img {
    width: 100%;
    display: block;
    box-shadow: var(--shadow);
    border-radius: var(--radius-md)
}

.split h2 {
    font-size: 36px;
    margin-bottom: 12px
}

.checks {
    list-style: none;
    padding: 0;
    margin: 22px 0
}

.checks li {
    margin: 10px 0;
    color: #233046
}

.checks li:before {
    content: "✓";
    color: var(--gold);
    font-weight: 900;
    margin-right: 12px
}

.footer {
    padding: 46px 0;
    color: #fff
}

.footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    position: relative;
    z-index: 2
}

.footer .brand img {
    height: 82px
}

.footer-menu {
    display: flex;
    gap: 28px;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 800
}

.copyright {
    text-align: center;
    color: #d3d9e2;
    font-size: 13px;
    margin-top: 22px
}

.service-list {
    padding: 60px 0 26px;
    background: #fff
}

.intro-left {
    font-size: 17px;
    max-width: 760px;
    color: #394557;
    margin: 0 0 35px
}

.service-row {
    display: grid;
    grid-template-columns: 135px 1fr 150px;
    align-items: center;
    gap: 28px;
    padding: 34px 36px;
    margin-bottom: 14px;
    border: 1px solid #e9e9e9;
    box-shadow: 0 7px 20px rgba(5, 20, 40, .08);
    background: #fff;
    border-radius: var(--radius-md);
    transition: var(--transition)
}

.service-row:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(5, 20, 40, .12)
}

.service-row .icon-circle {
    width: 96px;
    height: 96px;
    margin: 0
}

.service-row h2 {
    font-size: 30px;
    margin-bottom: 10px
}

.service-row p {
    margin: 0 0 14px;
    color: #374151
}

.service-row ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
    color: #303846;
    font-size: 14px
}

.service-row li {
    margin: 6px 0
}

.service-row li:before {
    content: "✓";
    color: var(--gold);
    font-weight: 900;
    margin-right: 12px
}

.service-row .text-link {
    justify-self: end
}

.cta-band {
    padding: 38px 0;
    border-top: 2px solid var(--gold)
}

.cta-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    position: relative;
    z-index: 2
}

.cta-inner h2 {
    color: #fff;
    font-size: 28px
}

.cta-inner p {
    margin: 8px 0 0;
    color: #eef2f4
}

.about-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch
}

.about-copy {
    padding: 80px 7vw;
    background: #fff
}

.about-copy h2 {
    font-size: 36px
}

.about-copy .gold-line {
    margin-left: 0
}

.about-copy p {
    max-width: 520px;
    color: #2e394a
}

.feature-list {
    margin-top: 28px
}

.feature-list div {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 17px 0;
    font-weight: 900;
    font-size: 17px
}

.feature-list span {
    width: 34px;
    height: 34px;
    border: 2px solid var(--gold);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--gold)
}

.about-photo {
    background: url('assets/brooklyn.jpg') center/cover no-repeat;
    min-height: 660px
}

.approach-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 26px
}

.approach-card {
    padding: 42px 28px;
    background: #fff;
    box-shadow: var(--shadow);
    min-height: 248px;
    border-radius: var(--radius-md);
    transition: var(--transition)
}

.approach-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(5, 20, 40, .15)
}

.approach-card svg {
    width: 54px;
    height: 54px;
    color: var(--navy);
    stroke-width: 1.8
}

.approach-card h3 {
    font-family: Arial, sans-serif;
    font-size: 17px;
    margin: 20px 0 14px;
    text-transform: uppercase
}

.approach-card p {
    margin: 0;
    color: #303a49
}

.resources-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
    margin-top: 30px
}

.resource-card img {
    width: 100%;
    height: 215px;
    object-fit: cover;
    display: block
}

.resource-card .body {
    padding: 30px 32px
}

.resource-card h2 {
    font-size: 29px;
    margin-bottom: 18px
}

.resource-card p {
    font-size: 19px;
    color: #4a5261;
    margin-bottom: 25px
}

.center {
    text-align: center
}

.contact-wrap {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 36px;
    align-items: start
}

.contact-panel,
.contact-form {
    background: #fff;
    box-shadow: var(--shadow);
    border: 1px solid #eee;
    padding: 34px;
    border-radius: var(--radius-md)
}

.contact-panel h2,
.contact-form h2 {
    font-size: 28px;
    margin-bottom: 18px
}

.contact-item {
    display: flex;
    gap: 15px;
    margin: 18px 0;
    color: #2f3a49
}

.contact-item strong {
    display: block;
    color: #071d38
}

.contact-form .grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px
}

input,
textarea {
    width: 100%;
    border: 1px solid #d8dce2;
    padding: 14px 15px;
    font: inherit;
    margin-bottom: 14px;
    background: #fbfbfb;
    border-radius: var(--radius-sm);
    transition: var(--transition)
}

input:focus,
textarea:focus,
input:focus-visible,
textarea:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: -1px;
    border-color: var(--gold)
}

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

.map-card {
    margin-top: 36px;
    background: linear-gradient(135deg, rgba(7, 29, 56, .92), rgba(7, 29, 56, .72)), url('assets/hero-skyline.jpg') center/cover;
    min-height: 240px;
    display: grid;
    place-items: center;
    color: #fff;
    text-align: center;
    border-radius: var(--radius-lg);
    overflow: hidden
}

.map-card h2 {
    color: #fff;
    font-size: 36px
}

.nav-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    background: none;
    border: 0;
    cursor: pointer;
    padding: 10px 8px;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    flex-shrink: 0
}

.nav-toggle span {
    display: block;
    width: 24px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1)
}

.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;
    transform: scaleX(0)
}

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

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

@media(min-width:2560px) {
    .container {
        width: min(2200px, calc(100% - 160px))
    }

    body {
        font-size: 20px
    }

    .navbar {
        height: 140px
    }

    .brand img {
        height: 120px
    }

    .footer .brand img {
        height: 140px
    }

    .nav-links {
        font-size: 17px;
        gap: 52px
    }

    .btn {
        min-height: 56px;
        padding: 0 36px;
        font-size: 15px
    }

    .hero-home {
        min-height: 900px
    }

    .hero-home h1 {
        font-size: 88px
    }

    .hero-home p {
        font-size: 26px;
        max-width: 700px
    }

    .page-hero {
        padding: 80px 0 120px
    }

    .page-hero h1 {
        font-size: 68px
    }

    .section {
        padding: 140px 0
    }

    .section-title h2 {
        font-size: 72px
    }

    .trust-icon {
        font-size: 68px
    }

    .trust-item strong {
        font-size: 40px
    }

    .icon-circle {
        width: 100px;
        height: 100px
    }

    .icon-circle svg {
        width: 52px;
        height: 52px
    }

    .cta-inner h2 {
        font-size: 46px
    }

    .service-row {
        padding: 48px 52px
    }

    .service-row h2 {
        font-size: 44px
    }

    .service-row .icon-circle {
        width: 120px;
        height: 120px
    }

    .mini-card {
        padding: 48px 32px
    }

    .mini-card h3 {
        font-size: 18px
    }

    .mini-card p {
        font-size: 17px
    }

    .resource-card h2 {
        font-size: 30px
    }

    .resource-card p {
        font-size: 24px
    }

    .resource-card .body {
        padding: 42px 44px
    }

    .map-card {
        min-height: 360px
    }

    .map-card h2 {
        font-size: 56px
    }

    .contact-panel h2,
    .contact-form h2 {
        font-size: 36px
    }

    input,
    textarea {
        padding: 18px 20px;
        font-size: 17px
    }
}

@media(min-width:1920px) {
    .container {
        width: min(1720px, calc(100% - 120px))
    }

    body {
        font-size: 17px
    }

    .navbar {
        height: 110px
    }

    .brand img {
        height: 90px
    }

    .footer .brand img {
        height: 100px
    }

    .hero-home {
        min-height: 720px
    }

    .hero-home h1 {
        font-size: 64px
    }

    .hero-home p {
        font-size: 22px
    }

    .page-hero {
        padding: 60px 0 88px
    }

    .page-hero h1 {
        font-size: 56px
    }

    .section {
        padding: 100px 0
    }

    .section-title h2 {
        font-size: 52px
    }

    .trust-icon {
        font-size: 52px
    }

    .trust-item strong {
        font-size: 30px
    }

    .cta-inner h2 {
        font-size: 34px
    }

    .service-row h2 {
        font-size: 36px
    }

    .resource-card h2 {
        font-size: 28px
    }

    .resource-card p {
        font-size: 21px
    }

    .map-card h2 {
        font-size: 44px
    }
}

@media(min-width:1440px) {
    .container {
        width: min(1360px, calc(100% - 80px))
    }

    .hero-home {
        min-height: 640px
    }

    .hero-home h1 {
        font-size: 56px
    }

    .page-hero h1 {
        font-size: 50px
    }

    .section {
        padding: 88px 0
    }

    .section-title h2 {
        font-size: 44px
    }
}

@media(max-width:950px) {
    .navbar {
        height: auto;
        padding: 20px 0;
        flex-wrap: wrap
    }

    .brand img {
        height: 60px
    }

    .nav-links {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
        gap: 18px
    }

    .hero-home h1,
    .page-hero h1 {
        font-size: 44px
    }

    .service-grid,
    .approach-grid,
    .resources-grid,
    .trust-grid {
        grid-template-columns: 1fr 1fr
    }

    .split,
    .about-block,
    .contact-wrap {
        grid-template-columns: 1fr
    }

    .about-photo {
        min-height: 420px
    }

    .service-row {
        grid-template-columns: 1fr;
        text-align: left
    }

    .service-row .text-link {
        justify-self: start
    }

    .cta-inner,
    .footer-inner {
        flex-direction: column;
        text-align: center
    }

    .trust-item {
        border-right: none
    }

    .footer-menu {
        flex-wrap: wrap;
        justify-content: center
    }
}

@media(max-width:768px) {
    .nav-toggle {
        display: flex
    }

    .navbar {
        flex-wrap: nowrap;
        height: auto;
        padding: 16px 0;
        z-index: 1001
    }

    .navbar>.btn {
        display: none
    }

    .brand img {
        height: 54px
    }

    .nav-links {
        display: none;
        position: fixed;
        inset: 0;
        background: linear-gradient(160deg, #06172d 0%, #092342 100%);
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 32px;
        z-index: 900;
        font-size: 18px;
        width: 100%;
        margin: 0;
        padding: 80px 24px
    }

    .nav-links.nav-open {
        display: flex
    }

    .nav-links a {
        font-size: 20px;
        padding: 14px 0;
        letter-spacing: .06em;
        width: 100%;
        text-align: center
    }

    .nav-links a.active:after,
    .nav-links a:hover:after {
        bottom: 6px
    }
}

@media(max-width:600px) {
    .container {
        width: min(100% - 30px, 1120px)
    }

    .btn {
        padding: 0 18px;
        font-size: 11px
    }

    .hero-home {
        min-height: auto
    }

    .hero-home .hero-content {
        padding: 40px 0 50px
    }

    .hero-home h1,
    .page-hero h1 {
        font-size: 32px
    }

    .hero-home p {
        font-size: 16px
    }

    .section {
        padding: 52px 0
    }

    .section-title h2 {
        font-size: 26px
    }

    .service-grid,
    .approach-grid,
    .resources-grid,
    .trust-grid {
        grid-template-columns: 1fr
    }

    .service-row {
        padding: 24px 20px
    }

    .service-row h2 {
        font-size: 22px
    }

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

    .footer-menu {
        gap: 12px
    }

    .about-copy {
        padding: 48px 20px
    }

    .about-copy h2 {
        font-size: 28px
    }

    .resource-card p {
        font-size: 16px
    }

    .resource-card h2 {
        font-size: 22px
    }

    .resource-card .body {
        padding: 22px 20px
    }

    .cta-inner h2 {
        font-size: 22px
    }

    .trust-icon {
        font-size: 32px
    }

    .trust-item strong {
        font-size: 20px
    }

    .split {
        gap: 32px
    }

    .split h2 {
        font-size: 28px
    }

    .map-card h2 {
        font-size: 26px
    }

    .contact-panel,
    .contact-form {
        padding: 24px 18px
    }

    .mini-card {
        padding: 24px 16px
    }

    .approach-card {
        padding: 28px 20px
    }
}

@media(max-width:480px) {

    .hero-home h1,
    .page-hero h1 {
        font-size: 28px
    }

    .section-title h2 {
        font-size: 22px
    }

    .hero-home p {
        font-size: 15px
    }

    .brand img {
        height: 48px
    }

    .footer .brand img {
        height: 60px
    }

    .service-row h2 {
        font-size: 20px
    }

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

    .feature-list div {
        font-size: 15px
    }

    .checks li {
        font-size: 14px
    }

    .contact-panel h2,
    .contact-form h2 {
        font-size: 22px
    }

    .section {
        padding: 44px 0
    }

    .mini-card p {
        font-size: 12px
    }
}

@media(max-width:380px) {
    .container {
        width: calc(100% - 20px)
    }

    .hero-home h1,
    .page-hero h1 {
        font-size: 24px
    }

    .hero-home p {
        font-size: 14px
    }

    .section-title h2 {
        font-size: 20px
    }

    .btn {
        padding: 0 14px;
        font-size: 10px;
        min-height: 40px
    }

    .mini-card h3 {
        font-size: 12px
    }

    .trust-item strong {
        font-size: 18px
    }

    .trust-icon {
        font-size: 28px
    }
}

.schedule-form-section {
    background: linear-gradient(135deg, #06172d, #092342 70%, #06172d);
    position: relative;
    overflow: hidden
}

.schedule-form-section:after {
    content: "";
    position: absolute;
    right: 8%;
    top: 26%;
    width: 330px;
    height: 210px;
    border: 2px solid rgba(255, 255, 255, .06);
    border-radius: 48% 42% 55% 35%;
    transform: rotate(-10deg);
    pointer-events: none
}

.schedule-form-inner {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 52px;
    align-items: start;
    position: relative;
    z-index: 1
}

.schedule-form-copy h2 {
    color: #fff;
    font-size: 34px;
    margin-bottom: 16px
}

.schedule-form-copy>p {
    color: #c0cad8;
    max-width: 400px;
    margin: 20px 0 28px;
    font-size: 16px
}

.schedule-checks li {
    color: #c0cad8
}

.schedule-form-embed {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .35)
}

@media(max-width:950px) {
    .schedule-form-inner {
        grid-template-columns: 1fr;
        gap: 36px
    }

    .schedule-form-copy h2 {
        font-size: 28px
    }

    .schedule-form-copy>p {
        max-width: 100%
    }
}

@media(max-width:600px) {
    .schedule-form-copy h2 {
        font-size: 24px
    }
}

/* ── Hero CTA wrap & trust list ─────────────────────────────────── */
.hero-heading {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 700;
    line-height: 1.15;
    color: #fff;
    margin: 0 0 1.5rem
}

.hero-heading-gold {
    color: var(--gold)
}

.hero-card {
    border: 1.5px solid var(--gold);
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.75rem;
    background: rgba(255, 255, 255, .05)
}

.hero-card-inner {
    display: flex;
    gap: 1rem;
    align-items: flex-start
}

.hero-card-icon {
    color: var(--gold);
    flex-shrink: 0;
    margin-top: 2px
}

.hero-gavel-icon {
    display: block;
    fill: currentColor;
    stroke: none
}

.hero-card-text {
    flex: 1
}

.hero-home .hero-card-headline {
    font-size: 1rem;
    color: #fff;
    line-height: 1.5;
    margin: 0 0 .85rem
}

.hero-card-headline strong {
    color: var(--gold)
}

.hero-card-pills {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px
}

.hero-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: .8rem;
    color: var(--gold);
    font-weight: 500;
    letter-spacing: .02em
}

.hero-pill-icon {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.hero-pill-icon-gavel {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
    fill: currentColor;
    stroke: none
}

.hero-pill-dot {
    color: var(--gold);
    font-size: .75rem;
    opacity: .6
}

.hero-cta-wrap {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 26px
}

.hero-main-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    padding: 0 36px;
    border-radius: 8px;
    background: linear-gradient(135deg, #d9a23a 0%, #b98220 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 14px 34px rgba(217, 162, 58, .32);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease
}

.hero-main-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(217, 162, 58, .42);
    background: linear-gradient(135deg, #e3ad47 0%, #c78b24 100%)
}

.hero-main-cta:focus-visible {
    outline: 2px solid #e3ad47;
    outline-offset: 3px
}

.hero-category {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--gold);
    margin: 0 0 16px
}

.hero-trust-list {
    display: flex;
    flex-direction: column;
    gap: 21px;
    max-width: 720px
}

.hero-trust-item {
    display: grid;
    grid-template-columns: 54px 1fr;
    align-items: center;
    column-gap: 20px
}

.hero-trust-icon {
    width: 48px;
    height: 48px;
    color: #d6a23a;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.hero-trust-icon svg {
    width: 100%;
    height: 100%;
    display: block
}

.hero-trust-item p {
    margin: 0;
    max-width: none;
    color: rgba(255, 255, 255, .92);
    font-size: clamp(15px, 1.45vw, 19px);
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: .01em
}

/* Remove the decorative oval artifact on the hero header */
.site-header:after {
    display: none
}

/* Give the hero a bit more room for the new content */
.hero-home {
    padding-bottom: 72px
}

@media(max-width:991px) {
    .hero-card {
        padding: 1rem 1.1rem
    }

    .hero-cta-wrap {
        margin-top: 24px;
        gap: 22px
    }

    .hero-main-cta {
        min-height: 54px;
        padding: 0 28px;
        font-size: 14px
    }

    .hero-trust-list {
        gap: 18px
    }

    .hero-trust-item {
        grid-template-columns: 48px 1fr;
        column-gap: 16px
    }

    .hero-trust-icon {
        width: 42px;
        height: 42px
    }
}

@media(max-width:480px) {
    .hero-card-inner {
        flex-direction: column
    }

    .hero-card-icon {
        display: none
    }
}

@media(max-width:575px) {
    .hero-cta-wrap {
        align-items: stretch;
        gap: 20px
    }

    .hero-main-cta {
        width: 100%;
        min-height: 52px;
        padding: 0 20px;
        font-size: 13px;
        text-align: center;
        justify-content: center
    }

    .hero-trust-list {
        gap: 16px
    }

    .hero-trust-item {
        grid-template-columns: 42px 1fr;
        column-gap: 14px
    }

    .hero-trust-icon {
        width: 38px;
        height: 38px
    }

    .hero-trust-item p {
        font-size: 14px;
        line-height: 1.4
    }
}

/* ── Contact page — Book Direct Meeting CTA ─────────────────────── */
.contact-book-block {
    margin-top: 40px;
    text-align: center;
    background: linear-gradient(135deg, #06172d, #092342);
    border: 1px solid rgba(197, 154, 60, .35);
    border-radius: var(--radius-md);
    padding: 44px 32px
}

.contact-book-block h3 {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    margin: 0 0 12px
}

.contact-book-block p {
    color: rgba(255, 255, 255, .82);
    margin: 0 0 26px;
    font-size: 16px
}

.contact-book-btn {
    background: linear-gradient(135deg, #d9a23a 0%, #b98220 100%);
    min-height: 52px;
    padding: 0 38px;
    font-size: 14px;
    letter-spacing: .06em;
    box-shadow: 0 10px 28px rgba(217, 162, 58, .28)
}

.contact-book-btn:hover {
    background: linear-gradient(135deg, #e3ad47 0%, #c78b24 100%)
}

@media(max-width:600px) {
    .contact-book-block {
        padding: 32px 20px
    }

    .contact-book-block h3 {
        font-size: 22px
    }

    .contact-book-btn {
        width: 100%;
        justify-content: center
    }
}

/* SEO pages and resource article helpers */
.breadcrumb-row {
    font-size: 13px;
    color: #c7d2e0;
    margin-bottom: 14px
}

.breadcrumb-row a {
    color: #d9a23a
}

.resource-intro {
    max-width: 860px;
    margin: 0 auto 34px;
    color: #374151;
    text-align: center
}

.article-wrap {
    max-width: 920px;
    margin: 0 auto
}

.article-meta {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    color: #5b6473;
    font-size: 14px;
    margin: 14px 0 20px
}

.toc-box {
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(5, 20, 40, .06);
    border-radius: 10px;
    padding: 20px;
    margin: 24px 0
}

.toc-box h2 {
    font-size: 22px;
    margin-bottom: 12px
}

.toc-box ul {
    margin: 0;
    padding-left: 18px
}

.toc-box li {
    margin: 8px 0
}

.toc-box a {
    color: #0b2346;
    font-weight: 700
}

.article-wrap h2 {
    font-size: 27px;
    margin: 38px 0 10px
}

.article-wrap h3 {
    font-size: 20px;
    margin: 26px 0 10px
}

.article-wrap p {
    color: #2f3a49;
    margin: 0 0 16px
}

.cta-panel {
    margin: 28px 0;
    background: linear-gradient(135deg, #06172d, #092342);
    border: 1px solid rgba(197, 154, 60, .35);
    border-radius: 12px;
    padding: 26px 24px;
    color: #fff
}

.cta-panel h3 {
    color: #fff;
    margin: 0 0 8px
}

.cta-panel p {
    color: rgba(255, 255, 255, .86)
}

.authority-links a {
    color: #0b2346;
    font-weight: 700
}

.article-hero-image {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(5, 20, 40, .08);
    margin: 10px 0 20px;
    display: block
}

.article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 28px;
    align-items: start
}

.timeline-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px
}

.timeline-card {
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 14px;
    background: #fff;
    box-shadow: 0 6px 16px rgba(5, 20, 40, .05)
}

.timeline-card h3 {
    margin-top: 0
}

.option-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 14px 0
}

.option-grid .mini-card {
    text-align: left;
    padding: 18px 16px
}

.option-grid .mini-card h3 {
    margin-bottom: 10px
}

.article-callout {
    border-left: 4px solid var(--gold);
    background: #f8f8f7;
    border-radius: 8px;
    padding: 14px 16px;
    margin: 18px 0;
    color: #233046
}

.article-callout-warn {
    border-left-color: #b98123;
    background: #fff7e8
}

.article-callout-danger {
    border-left-color: #c0392b;
    background: #fff1f0;
    border: 1px solid #f3d1ce
}

.article-callout-success {
    border-left-color: #1f7a3e;
    background: #eef8f1;
    border: 1px solid #cfe9d7
}

.hero-location-label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #9ac7b2;
    margin: 0 0 10px
}

.hero-question {
    color: #d6e6f3;
    margin: 0 0 10px;
    font-weight: 700
}

.hero-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 16px
}

.hero-badge {
    display: inline-block;
    border: 1px solid rgba(212, 170, 87, .5);
    background: rgba(6, 23, 45, .44);
    color: #f2d7a0;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 11px;
    font-weight: 800;
    padding: 6px 10px;
    border-radius: 999px
}

.accent-gold {
    color: var(--gold2);
    font-style: italic
}

.stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 20px 0 8px
}

.stat-card {
    border: 1px solid #e7e7e7;
    background: #fff;
    border-radius: 10px;
    padding: 16px;
    box-shadow: 0 8px 16px rgba(5, 20, 40, .05)
}

.stat-card strong {
    display: block;
    font-size: 40px;
    line-height: 1;
    color: #0b2346;
    margin-bottom: 8px
}

.stat-card span {
    color: #3b4555;
    font-size: 14px
}

.stat-highlight {
    margin: 20px 0 14px;
    border: 1px solid #e3d5b3;
    border-radius: 12px;
    background: linear-gradient(135deg, #fffaf0, #fff);
    padding: 18px;
    box-shadow: 0 10px 22px rgba(5, 20, 40, .06)
}

.stat-highlight strong {
    display: block;
    font-size: 56px;
    line-height: 1;
    color: #0b2346;
    margin-bottom: 6px
}

.stat-highlight span {
    color: #324255;
    font-size: 14px
}

.accordion-group {
    margin: 16px 0
}

.accordion-card {
    border: 1px solid #e5e7eb;
    background: #fff;
    border-radius: 10px;
    margin-bottom: 10px;
    box-shadow: 0 8px 18px rgba(5, 20, 40, .05)
}

.accordion-card summary {
    cursor: pointer;
    list-style: none;
    padding: 14px 16px;
    font-weight: 800;
    color: #0b2346;
    display: flex;
    align-items: center;
    gap: 10px
}

.accordion-card summary::-webkit-details-marker {
    display: none
}

.accordion-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 64px;
    height: 24px;
    border-radius: 999px;
    background: #f6f1e4;
    color: #8b6b22;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 800;
    padding: 0 8px
}

.accordion-card p {
    margin: 0;
    padding: 0 16px 16px
}

.steps-grid {
    margin: 18px 0
}

.assumption-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 12px 0 8px
}

.quote-line {
    border-left: 3px solid #d0aa55;
    margin: 10px 0;
    padding-left: 10px;
    font-style: italic
}

.table-wrap {
    overflow-x: auto;
    margin: 14px 0
}

.comparison-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 680px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden
}

.comparison-table th,
.comparison-table td {
    text-align: left;
    padding: 12px;
    border-bottom: 1px solid #edf0f3;
    vertical-align: top
}

.comparison-table thead th {
    background: #f4f7fb;
    color: #0b2346;
    font-size: 14px
}

.comparison-table tbody tr:last-child td {
    border-bottom: none
}

.check-list-green {
    list-style: none;
    margin: 0;
    padding: 0
}

.check-list-green li {
    margin: 10px 0;
    color: #2f3a49
}

.check-list-green li:before {
    content: "✓";
    color: #1f7a3e;
    font-weight: 900;
    margin-right: 10px
}

.sources-list li {
    margin: 8px 0
}

.sidebar-subtitle {
    margin: 0 0 12px;
    color: #4b5563
}

.meter-list>div {
    margin-bottom: 12px
}

.meter-list span {
    color: #233046;
    font-size: 14px;
    font-weight: 700
}

.meter-list strong {
    float: right;
    color: #0b2346;
    font-size: 13px
}

.meter {
    height: 8px;
    border-radius: 999px;
    background: #e9edf2;
    margin-top: 6px;
    overflow: hidden
}

.meter i {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #d0aa55, #b98123)
}

.resource-pill-wrap {
    margin: 26px 0 0
}

.resource-pill-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px
}

.resource-pill-grid a {
    border: 1px solid #d9e1ea;
    background: #fff;
    color: #0b2346;
    border-radius: 999px;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 700
}

.stat-card-featured {
    margin: 22px 0;
    border-left: 4px solid var(--gold)
}

.assumption-compare {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 16px 0
}

.table-wrap {
    overflow-x: auto;
    margin: 16px 0
}

.compare-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 6px 16px rgba(5, 20, 40, .05);
    border-radius: 10px;
    overflow: hidden
}

.compare-table th,
.compare-table td {
    border-bottom: 1px solid #eef2f7;
    padding: 12px;
    text-align: left;
    vertical-align: top;
    color: #2f3a49;
    font-size: 14px
}

.compare-table th {
    background: #f8f9fb;
    color: #0b2346;
    font-weight: 800
}

.compare-table tr:last-child td {
    border-bottom: 0
}

.article-sidebar {
    position: sticky;
    top: 18px
}

.sidebar-box {
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(5, 20, 40, .05);
    padding: 14px;
    margin-bottom: 16px
}

.sidebar-box h3 {
    margin: 0 0 10px;
    font-size: 18px
}

.sidebar-box ul {
    margin: 0;
    padding-left: 18px
}

.sidebar-box li {
    margin: 8px 0;
    color: #2f3a49
}

.faq-block {
    margin-top: 34px;
    padding-top: 10px;
    border-top: 1px solid #e5e7eb
}

.footer-disclaimer {
    max-width: 980px;
    margin: 16px auto 0;
    text-align: center;
    color: #d3d9e2;
    font-size: 12px;
    line-height: 1.6
}

@media(max-width:900px) {
    .article-layout {
        grid-template-columns: 1fr
    }

    .article-sidebar {
        position: static
    }
}

@media(max-width:700px) {
    .timeline-grid,
    .option-grid {
        grid-template-columns: 1fr
    }

    .assumption-compare {
        grid-template-columns: 1fr
    }

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

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

@media(max-width:600px) {
    .stat-highlight strong {
        font-size: 42px
    }
}

@media(max-width:600px) {
    .article-wrap h2 {
        font-size: 23px
    }

    .article-wrap h3 {
        font-size: 18px
    }

    .toc-box {
        padding: 16px
    }
}

/* Article alert box */
.article-alert {
    background: #f8f8f7;
    border-left: 4px solid var(--gold);
    padding: 14px 18px;
    margin: 0 0 24px;
    font-size: 15px;
    color: #2f3a49;
    border-radius: 4px
}

.alert-link {
    color: var(--navy);
    font-weight: 700;
    text-decoration: underline
}

/* Statistics row */
.stats-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 32px 0
}

.stats-row-four {
    grid-template-columns: repeat(4, 1fr)
}

.stat-card {
    background: #fff;
    border: 1px solid #d8d4c7;
    border-radius: var(--radius-md);
    padding: 28px 24px;
    text-align: center;
    box-shadow: var(--shadow)
}

.stat-number {
    font-size: 42px;
    font-weight: 900;
    color: var(--navy);
    line-height: 1;
    margin-bottom: 8px
}

.stat-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1.4
}

/* Gold bullets */
.gold-bullets {
    list-style: none;
    padding: 0;
    margin: 16px 0
}

.gold-bullets li {
    position: relative;
    padding-left: 24px;
    margin: 12px 0;
    color: #2f3a49;
    line-height: 1.6
}

.gold-bullets li:before {
    content: "→";
    position: absolute;
    left: 0;
    color: var(--gold);
    font-weight: 700;
    font-size: 16px
}

/* Process list */
.process-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    counter-reset: process-counter
}

.process-list li {
    position: relative;
    padding: 16px 16px 16px 52px;
    margin: 12px 0;
    background: #f8f8f7;
    border-radius: var(--radius-sm);
    counter-increment: process-counter
}

.process-list li:before {
    content: counter(process-counter);
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    background: var(--navy);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 14px
}

/* Article table styling */
.article-table-wrap {
    width: 100%;
    overflow-x: auto;
    margin: 28px 0 48px
}

.article-table-caption {
    font-size: 16px;
    color: #3f454a;
    margin-bottom: 14px;
    font-weight: 500
}

.article-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #d8d4c7;
    background: #fff;
    min-width: 760px
}

.article-table th,
.article-table td {
    border: 1px solid #d8d4c7;
    padding: 24px 28px;
    text-align: left;
    vertical-align: top;
    font-size: 18px;
    line-height: 1.55;
    color: #1f252b
}

.article-table th {
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-weight: 700;
    font-size: 14px;
    background: #faf9f6
}

.article-table td:first-child {
    font-weight: 500;
    color: var(--navy)
}

/* FAQ accordion */
.faq-accordion {
    margin: 24px 0
}

.faq-item {
    border: 1px solid #d8d4c7;
    border-radius: var(--radius-sm);
    margin: 12px 0;
    background: #fff
}

.faq-question {
    padding: 18px 20px;
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--navy);
    cursor: pointer;
    background: #faf9f6;
    border-radius: var(--radius-sm) var(--radius-sm) 0 0
}

.faq-answer {
    padding: 0 20px 20px;
    display: none;
    color: #2f3a49;
    line-height: 1.6
}

.faq-item.active .faq-answer {
    display: block
}

.faq-item.active .faq-question {
    background: var(--navy);
    color: #fff
}

/* Attorney review box */
.attorney-review-box {
    display: flex;
    gap: 20px;
    background: #f8f8f7;
    border: 1px solid #d8d4c7;
    border-radius: var(--radius-md);
    padding: 28px;
    margin: 32px 0
}

.attorney-mark {
    width: 56px;
    height: 56px;
    background: var(--navy);
    color: var(--gold);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 20px;
    flex-shrink: 0
}

.attorney-content h3 {
    margin: 0 0 8px;
    font-size: 20px;
    color: var(--navy)
}

.attorney-subtitle {
    margin: 0 0 12px;
    font-size: 13px;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700
}

.attorney-content p {
    margin: 0;
    color: #2f3a49;
    line-height: 1.6;
    font-size: 15px
}

/* Related resources grid */
.related-resources-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin: 24px 0
}

.related-card {
    background: #fff;
    border: 1px solid #d8d4c7;
    border-radius: var(--radius-sm);
    padding: 24px;
    transition: var(--transition)
}

.related-card:hover {
    box-shadow: var(--shadow);
    transform: translateY(-2px)
}

.related-category {
    font-size: 12px;
    font-weight: 700;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 8px
}

.related-card h4 {
    margin: 0 0 8px;
    font-size: 17px;
    color: var(--navy)
}

.related-card p {
    margin: 0 0 12px;
    font-size: 14px;
    color: #5b6473;
    line-height: 1.5
}

/* CTA panel */
.cta-panel {
    background: linear-gradient(135deg, var(--navy), var(--navy2));
    color: #fff;
    padding: 38px;
    border-radius: var(--radius-lg);
    margin: 40px 0;
    text-align: center
}

.cta-panel h2 {
    color: #fff;
    margin: 0 0 12px;
    font-size: 28px
}

.cta-panel p {
    color: #eef2f4;
    margin: 0 0 24px;
    font-size: 16px
}

.cta-buttons {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap
}

.cta-buttons .btn {
    background: #fff;
    color: var(--navy) !important
}

.cta-panel .cta-buttons .btn {
    color: var(--navy) !important
}

.cta-buttons .btn-primary {
    background: var(--gold);
    color: var(--navy) !important
}

.cta-panel .cta-buttons .btn-primary {
    color: var(--navy) !important
}

/* Sidebar navigation */
.sidebar-nav {
    list-style: none;
    padding: 0;
    margin: 0
}

.sidebar-nav li {
    margin: 8px 0
}

.sidebar-nav a {
    color: #2f3a49;
    text-decoration: none;
    font-size: 14px;
    display: block;
    padding: 6px 0;
    border-left: 2px solid transparent;
    padding-left: 12px;
    transition: var(--transition)
}

.sidebar-nav a:hover {
    color: var(--navy);
    border-left-color: var(--gold);
    padding-left: 16px
}

/* Trust list */
.trust-list {
    list-style: none;
    padding: 0;
    margin: 0
}

.trust-list li {
    padding: 8px 0;
    font-size: 14px;
    color: #2f3a49;
    position: relative;
    padding-left: 20px
}

.trust-list li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--gold);
    font-weight: 700
}

/* Emergency box */
.emergency-box {
    background: #fff1f0;
    border: 1px solid #f3d1ce;
    border-left: 4px solid #c0392b
}

.emergency-box h3 {
    color: #c0392b;
    margin: 0 0 8px;
    font-size: 18px
}

.emergency-box p {
    color: #2f3a49;
    margin: 0 0 16px;
    font-size: 14px
}

.btn-full {
    width: 100%;
    text-align: center;
    background: #c0392b;
    color: #fff
}

.btn-full:hover {
    background: #a93226
}

/* Responsive adjustments */
@media(max-width:900px) {
    .stats-row {
        grid-template-columns: 1fr
    }

    .related-resources-grid {
        grid-template-columns: 1fr
    }

    .attorney-review-box {
        flex-direction: column
    }

    .attorney-mark {
        width: 48px;
        height: 48px
    }

    .cta-buttons {
        flex-direction: column
    }

    .cta-buttons .btn {
        width: 100%
    }
}

@media(max-width:600px) {
    .stat-number {
        font-size: 36px
    }

    .article-table th,
    .article-table td {
        padding: 16px 20px;
        font-size: 16px
    }

    .attorney-review-box {
        padding: 20px
    }

    .cta-panel {
        padding: 28px 20px
    }

    .cta-panel h2 {
        font-size: 24px
    }
}
