/**
 * Home Health Care Landing Page
 * Template: page-home-health-care.php
 *
 * @package WoundCare_At_Home
 * @since 1.0.0
 */

/* ========================================
   STICKY MOBILE CTA BAR
   ======================================== */
   .hhc-sticky-cta {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background: var(--Neutral-100);
    border-top: 1px solid var(--Neutral-300);
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
    padding: 12px 16px;
}

.hhc-sticky-cta-inner {
    display: flex;
    gap: 10px;
    max-width: 640px;
    margin: 0 auto;
}

.hhc-sticky-cta .sticky-btn-call {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 52px;
    border-radius: 12px;
    background: var(--Neutral-100);
    color: var(--Primary-primary);
    border: 2px solid var(--Primary-primary);
    font-family: var(--font-family-onest);
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.hhc-sticky-cta .sticky-btn-care {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 52px;
    border-radius: 12px;
    background: var(--Primary-primary);
    color: var(--Neutral-100);
    border: none;
    font-family: var(--font-family-onest);
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

/* ========================================
   SECTION 1: HERO
   ======================================== */
.hhc-hero {
    padding: 100px 0 160px;
    background: var(--Neutral-100);
}

.hhc-hero-inner {
    display: flex;
    align-items: center;
    gap: 60px;
}

.hhc-hero-content {
    flex: 1;
    min-width: 0;
}

.hhc-hero-content h1 {
    margin: 16px 0 8px;
}

.hhc-hero-underline {
    margin-bottom: 12px;
}

.hhc-hero-desc {
    color: var(--Neutral-600);
    font-size: 18px;
    line-height: 166.7%;
    max-width: 560px;
    margin-bottom: 24px;
}

.hhc-hero-btns {
    display: flex;
    gap: 16px;
    align-items: center;
}

/* Hero Image */
.hhc-hero-image {
    flex: 0 0 480px;
    position: relative;
}

.hhc-hero-image img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    border-radius: var(--24);
}

.hhc-hero-image-placeholder {
    width: 100%;
    height: 420px;
    background: linear-gradient(135deg, var(--Primary-3) 0%, var(--Primary-2) 100%);
    border-radius: var(--24);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--Primary-primary);
    font-size: 16px;
    font-weight: 500;
}

/* $0 Cost Badge */
.hhc-zero-cost-badge {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--Neutral-100);
    border: 2px solid var(--Primary-primary);
    border-radius: 20px;
    padding: 16px 28px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 8px 32px rgba(110, 47, 208, 0.15);
    white-space: nowrap;
    z-index: 2;
}

.hhc-zero-cost-badge .cost-amount {
    font-size: 36px;
    font-weight: 700;
    color: var(--Primary-primary);
    line-height: 1;
}

.hhc-zero-cost-badge .cost-text {
    font-size: 14px;
    font-weight: 600;
    color: var(--Neutral-800);
    line-height: 1.3;
}

.hhc-zero-cost-badge .cost-text span {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: var(--Neutral-600);
}

/* ========================================
   SECTION 2: TRUST BAR
   ======================================== */
.hhc-trust-bar {
    padding: 0;
    margin-top: -80px;
    position: relative;
    z-index: 2;
}

.hhc-trust-bar-inner {
    background: var(--Neutral-100);
    border-radius: var(--24);
    border: 1px solid var(--Neutral-300);
    padding: 32px 48px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.hhc-trust-item {
    display: flex;
    align-items: center;
    gap: 16px;
}

.hhc-trust-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: var(--Primary-3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.hhc-trust-icon svg {
    width: 28px;
    height: 28px;
}

.hhc-trust-text strong {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: var(--Neutral-800);
    line-height: 1.3;
}

.hhc-trust-text span {
    font-size: 14px;
    color: var(--Neutral-600);
    line-height: 1.4;
}

/* ========================================
   SECTION 3: WHAT IS HOME HEALTH CARE
   ======================================== */
.hhc-what-is {
    padding: 100px 0;
    background: var(--Neutral-200);
}

.hhc-what-is-header {
    text-align: center;
    margin-bottom: 48px;
}

.hhc-what-is-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: start;
}

.hhc-what-is-content p {
    font-size: 18px;
    line-height: 166.7%;
    color: var(--Neutral-600);
    margin-bottom: 20px;
}

.hhc-what-is-content p:last-child {
    margin-bottom: 0;
}

.hhc-what-is-content a {
    color: var(--Primary-primary);
    font-weight: 600;
}

.hhc-comparison-box {
    background: var(--Neutral-100);
    border-radius: var(--24);
    padding: 36px;
    border: 1px solid var(--Neutral-300);
}

.hhc-comparison-box h3 {
    margin-bottom: 20px;
    color: var(--Primary-primary);
}

.hhc-comparison-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.hhc-comparison-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    line-height: 148%;
    color: var(--Neutral-700);
}

.hhc-comparison-list li svg {
    flex-shrink: 0;
    margin-top: 3px;
}

/* ========================================
   MINI CTA (between sections)
   ======================================== */
.hhc-mini-cta {
    text-align: center;
    padding: 40px 0;
    background: var(--Neutral-100);
    border-top: 1px solid var(--Neutral-300);
    border-bottom: 1px solid var(--Neutral-300);
}

.hhc-mini-cta p {
    font-size: 20px;
    font-weight: 500;
    color: var(--Neutral-800);
    margin-bottom: 20px;
}

.hhc-mini-cta p strong {
    color: var(--Primary-primary);
}

/* ========================================
   SECTION 4: OUR SERVICES
   ======================================== */
.hhc-services {
    padding: 100px 0;
    background: var(--Neutral-100);
}

.hhc-services-header {
    text-align: center;
    margin-bottom: 48px;
}

.hhc-services-header p.desc {
    font-size: 18px;
    line-height: 166.7%;
    color: var(--Neutral-600);
    max-width: 640px;
    margin: 16px auto 0;
}

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

.hhc-service-card {
    background: var(--Neutral-200);
    border-radius: var(--24);
    border: 1px solid var(--Neutral-300);
    padding: 32px 24px;
    text-align: center;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.hhc-service-card:hover {
    border-color: var(--Primary-2);
    box-shadow: 0 8px 32px rgba(110, 47, 208, 0.1);
    transform: translateY(-4px);
}

.hhc-service-icon {
    width: 64px;
    height: 64px;
    border-radius: 20px;
    background: var(--Primary-3);
    display: flex;
    align-items: center;
    justify-content: center;
}

.hhc-service-icon svg {
    width: 28px;
    height: 28px;
}

.hhc-service-card h3 {
    font-size: 20px;
    font-weight: 600;
}

.hhc-service-card p {
    font-size: 16px;
    line-height: 148%;
    color: var(--Neutral-600);
}

.hhc-service-card a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--Primary-primary);
    font-size: 16px;
    font-weight: 600;
    margin-top: auto;
    transition: gap 0.2s ease;
}

.hhc-service-card a:hover {
    gap: 12px;
}

/* ========================================
   SECTION 5: WHO QUALIFIES / INSURANCE
   ======================================== */
.hhc-medicare {
    padding: 100px 0;
    background: var(--Primary-3);
}

.hhc-medicare-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}

.hhc-medicare-content > p {
    color: var(--Neutral-600);
    font-size: 18px;
    line-height: 166.7%;
    margin-top: 20px;
}

.hhc-medicare-content .hhc-title-underline {
    margin: 0;
}

.hhc-qualify-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 28px;
}

.hhc-qualify-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px;
    background: var(--Neutral-100);
    border-radius: 16px;
    border: 1px solid var(--Neutral-300);
}

.hhc-qualify-item svg {
    flex-shrink: 0;
    margin-top: 2px;
}

.hhc-qualify-item p {
    font-size: 16px;
    line-height: 148%;
    color: var(--Neutral-600);
}

.hhc-qualify-item strong {
    color: var(--Neutral-800);
    font-weight: 600;
}

.hhc-insurance-box {
    background: var(--Neutral-100);
    border: 1px solid var(--Neutral-300);
    border-radius: var(--24);
    padding: 36px;
    position: sticky;
    top: 20px;
}

.hhc-insurance-box h3 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 24px;
    color: var(--Neutral-800);
}

.hhc-insurance-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.hhc-insurance-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    background: var(--Neutral-200);
    border-radius: 14px;
    border: 1px solid var(--Neutral-300);
}

.hhc-insurance-item svg {
    flex-shrink: 0;
}

.hhc-insurance-item .ins-text strong {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: var(--Neutral-800);
    line-height: 1.3;
}

.hhc-insurance-item .ins-text span {
    font-size: 14px;
    color: var(--Neutral-500);
}

.hhc-insurance-helper {
    font-size: 14px;
    color: var(--Neutral-500);
    margin-bottom: 20px;
}

.hhc-insurance-cta {
    margin-top: 24px;
    text-align: center;
}

.hhc-insurance-cta a {
    width: 100%;
}

/* ========================================
   SECTION 6: WHY CHOOSE US
   ======================================== */
.hhc-why-choose {
    padding: 100px 0;
    background: var(--Neutral-100);
}

.hhc-why-choose-header {
    text-align: center;
    margin-bottom: 48px;
}

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

.hhc-why-card {
    background: var(--Neutral-200);
    border-radius: var(--24);
    padding: 36px 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.hhc-why-card:hover {
    border-color: var(--Primary-2);
    background: var(--Primary-3);
}

.hhc-why-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: var(--Primary-3);
    display: flex;
    align-items: center;
    justify-content: center;
}

.hhc-why-card:hover .hhc-why-icon {
    background: var(--Neutral-100);
}

.hhc-why-card h3 {
    font-size: 20px;
    font-weight: 600;
}

.hhc-why-card p {
    font-size: 16px;
    line-height: 148%;
    color: var(--Neutral-600);
}

/* ========================================
   SECTION 7: HOW IT WORKS
   ======================================== */
.hhc-how-it-works {
    padding: 100px 0;
    background: var(--Neutral-200);
}

.hhc-how-header {
    text-align: center;
    margin-bottom: 60px;
}

.hhc-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    position: relative;
}

.hhc-steps::before {
    content: '';
    position: absolute;
    top: 44px;
    left: 16.6%;
    right: 16.6%;
    height: 2px;
    background: var(--Primary-2);
}

.hhc-step {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    position: relative;
}

.hhc-step-number {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: var(--Neutral-100);
    border: 3px solid var(--Primary-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    font-weight: 700;
    color: var(--Primary-primary);
    position: relative;
    z-index: 1;
}

.hhc-step h3 {
    font-size: 22px;
    font-weight: 600;
}

.hhc-step p {
    font-size: 16px;
    line-height: 148%;
    color: var(--Neutral-600);
    max-width: 320px;
}

.hhc-section-cta {
    text-align: center;
    margin-top: 48px;
}

/* ========================================
   SECTION 8: REVIEWS
   ======================================== */
.hhc-reviews-section {
    background: var(--Neutral-100);
}

.vp-service-reviews {
    padding: 100px 0;
}

.vp-service-reviews .vp-max-width {
    position: relative;
}

.vp-reviews-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 44px;
}

.vp-reviews-header .vp-title {
    max-width: 640px;
}

.vp-reviews-nav {
    display: flex;
    gap: 12px;
}

.vp-reviews-nav-mobile {
    display: none;
    gap: 12px;
    justify-content: center;
    margin-top: 32px;
}

.vp-reviews-slider {
    width: 100%;
}

.vp-reviews-slider .swiper {
    position: unset;
}

.vp-review-card {
    padding: var(--40) var(--32);
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.02);
    background: var(--Neutral-100);
    border: 1px solid var(--Neutral-300);
    border-radius: var(--24);
    display: flex;
    flex-direction: column;
    gap: 32px;
    height: 100%;
}

.vp-review-text {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.vp-review-text p {
    color: var(--Neutral-600);
}

.vp-stars {
    display: flex;
    gap: 4px;
    padding-left: 2px;
}

.vp-review-author {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-top: auto;
}

.vp-review-author p {
    color: var(--Primary-primary);
}

.vp-author-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-avatar-initial {
    width: 50px;
    height: 50px;
    min-width: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
}

.swiper-button-prev-hhc-review.swiper-button-disabled,
.swiper-button-next-hhc-review.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

.hhc-reviews-section .hhc-title-underline {
    display: block;
    margin: 0;
}

/* ========================================
   SECTION 9: AREAS WE SERVE
   ======================================== */
.hhc-areas {
    padding: 100px 0;
    background: var(--Primary-3);
}

.hhc-areas-header {
    text-align: center;
    margin-bottom: 48px;
}

.hhc-areas-desc {
    font-size: 18px;
    line-height: 148%;
    color: var(--Neutral-600);
    max-width: 640px;
    margin: 16px auto 0;
}

.hhc-total-count {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--Neutral-100);
    border: 1px solid var(--Neutral-300);
    border-radius: 100px;
    padding: 8px 20px;
    font-size: 16px;
    font-weight: 500;
    color: var(--Neutral-600);
    margin-top: 16px;
}

.hhc-total-count strong {
    color: var(--Primary-primary);
}

.hhc-cities-wrapper {
    background: var(--Neutral-100);
    border-radius: var(--24);
    border: 1px solid var(--Neutral-300);
    padding: 40px;
}

.hhc-cities-columns {
    column-count: 4;
    column-gap: 32px;
}

.hhc-cities-columns li {
    break-inside: avoid;
    margin-bottom: 4px;
}

.hhc-cities-columns li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--Neutral-600);
    font-size: 16px;
    padding: 8px 12px;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.hhc-cities-columns li a:hover {
    background: var(--Primary-3);
    color: var(--Primary-primary);
    font-weight: 500;
}

.hhc-cities-columns li a svg {
    opacity: 0;
    transition: opacity 0.2s ease;
}

.hhc-cities-columns li a:hover svg {
    opacity: 1;
}

.hhc-letter-sep {
    font-size: 13px;
    font-weight: 700;
    color: var(--Primary-primary);
    padding: 12px 12px 4px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-bottom: 1px solid var(--Neutral-300);
    margin-bottom: 4px;
    break-inside: avoid;
    break-after: avoid;
}

/* ========================================
   SECTION 10: CTA / FORM
   Centered single-column layout
   ======================================== */
.hhc-cta {
    padding: 100px 0;
    background: var(--Neutral-200);
}

/* Hide old 2-col elements (PHP may still reference them) */
.hhc-cta-inner,
.hhc-cta-content,
.hhc-cta-btns,
.hhc-cta-trust {
    display: none !important;
}

/* Centered header */
.hhc-cta-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 32px;
}

.hhc-cta-header .hhc-title-underline {
    margin: 8px auto 0;
}

.hhc-cta-desc {
    font-size: 18px;
    line-height: 1.7;
    color: var(--Neutral-600);
    margin: 16px auto 0;
}

/* Trust badge pills */
.hhc-cta-trust-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 36px;
}

.hhc-cta-trust-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--Neutral-100);
    border: 1px solid var(--Neutral-300);
    border-radius: 100px;
    padding: 8px 18px;
    font-size: 14px;
    font-weight: 600;
    color: var(--Neutral-700);
}

.hhc-cta-trust-badge svg {
    flex-shrink: 0;
}

/* Form box */
.hhc-form-box {
    background: var(--Neutral-100);
    border-radius: var(--24);
    padding: 48px 56px;
    border: 1px solid var(--Neutral-300);
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.07);
    max-width: 820px;
    margin: 0 auto;
}

.hhc-form-box h3 {
    font-size: 24px;
    font-weight: 800;
    text-align: center;
    margin-bottom: 8px;
    color: var(--Neutral-800);
}

.hhc-form-box .form-desc {
    text-align: center;
    font-size: 15px;
    color: var(--Neutral-500);
    margin-bottom: 28px;
}

.hhc-form-privacy {
    text-align: center;
    font-size: 13px;
    color: var(--Neutral-500);
    margin-top: 20px;
    line-height: 1.5;
}

.hhc-form-privacy a {
    color: var(--Primary-primary);
    text-decoration: underline;
}

/* Title underline shared */
.hhc-title-underline {
    display: block;
    margin: 0 auto;
}

/* ==========================================================================
   WPForms — Scoped to .hhc-form-box and .gm-form
   ========================================================================== */

 

/* Required asterisk */
.hhc-form-box .wpforms-required-label {
    color: #DC2B2B;
}

/* Hide utility elements */
.wpforms-field-limit-text,
.wpforms-hidden,
#wpforms-error-noscript,
.wpforms-label-hide {
    display: none !important;
}

/* Field labels */
.gm-form .wpforms-field-label,
.hhc-form-box .wpforms-field-label {
    margin-bottom: 8px;
    display: block;
    font-weight: 700;
    font-size: var(--18);
    line-height: 148%;
    color: var(--Neutral-800);
}

.gm-form .wpforms-field-large,
.hhc-form-box .wpforms-field-large {
    margin-top: 6px;
}

/* Inputs */
.hhc-form-box input[type="text"],
.hhc-form-box input[type="email"],
.hhc-form-box input[type="tel"],
.hhc-form-box input[type="number"],
.hhc-form-box input[type="url"],
.hhc-form-box select,
.hhc-form-box textarea {
    border-radius: var(--16);
    border: 1px solid var(--Neutral-400, #D0D0DB);
    background: var(--Neutral-100, #FFF);
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.02);
    padding: var(--16);
    width: 100%;
    font-family: var(--font-family-onest);
    font-size: 18px;
    font-weight: 500;
    line-height: 140%;
    outline: none;
    transition: border-color 0.2s ease;
}

.hhc-form-box textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholder */
.hhc-form-box input::placeholder,
.hhc-form-box textarea::placeholder {
    color: var(--Neutral-500, #626270);
    font-family: var(--font-family-onest);
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
}

/* Select — custom chevron */
.hhc-form-box select {
    color: var(--Neutral-500, #626270);
    font-weight: 400;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9.57086 14.7091L4.98086 10.1191C4.7946 9.93174 4.69006 9.67829 4.69006 9.41411C4.69006 9.14992 4.7946 8.89647 4.98086 8.70911C5.07382 8.61538 5.18442 8.54098 5.30628 8.49021C5.42814 8.43945 5.55884 8.41331 5.69086 8.41331C5.82287 8.41331 5.95357 8.43945 6.07543 8.49021C6.19729 8.54098 6.30789 8.61538 6.40086 8.70911L10.9809 13.3091C11.0738 13.4028 11.1844 13.4772 11.3063 13.528C11.4281 13.5788 11.5588 13.6049 11.6909 13.6049C11.8229 13.6049 11.9536 13.5788 12.0754 13.528C12.1973 13.4772 12.3079 13.4028 12.4009 13.3091L16.9809 8.70911C17.1678 8.5208 17.422 8.41449 17.6873 8.41355C17.9527 8.41261 18.2076 8.51713 18.3959 8.70411C18.5842 8.89108 18.6905 9.14521 18.6914 9.41057C18.6924 9.67593 18.5878 9.9308 18.4009 10.1191L13.8109 14.7091C13.2484 15.2709 12.4859 15.5865 11.6909 15.5865C10.8959 15.5865 10.1334 15.2709 9.57086 14.7091Z' fill='%23626270'/%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 48px;
}

/* Select with value — dark text */
.hhc-form-box select:valid {
    color: var(--Neutral-800) !important;
    font-weight: 500;
}

/* Focus */
.gm-form input:focus,
.gm-form select:focus,
.gm-form textarea:focus,
.hhc-form-box input:focus,
.hhc-form-box select:focus,
.hhc-form-box textarea:focus {
    border-color: var(--Primary-primary) !important;
}

/* Layout rows — 20px */
.gm-form .wpforms-field-layout-rows .wpforms-layout-row,
.hhc-form-box .wpforms-field-layout-rows .wpforms-layout-row {
    margin-bottom: 20px;
}

/* Submit button */
.wpforms-submit.gm-submit-form,
.hhc-form-box .wpforms-submit {
    border: none;
    cursor: pointer;
    display: inline-flex;
    padding: var(--20);
    justify-content: center;
    align-items: center;
    gap: var(--12);
    border-radius: var(--12);
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.12);
    flex-shrink: 0;
    height: var(--64);
    background: var(--Primary-primary);
    color: var(--Neutral-100);
    transition: background 0.3s ease;
    font-family: var(--font-family-onest);
    font-weight: 700;
    font-size: var(--18);
    line-height: 148%;
    margin-top: 28px;
    width: 100%;
}

.wpforms-submit.gm-submit-form:hover,
.hhc-form-box .wpforms-submit:hover {
    background: var(--Secondary-1);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
}

/* Validation error */
.gm-form .wpforms-error,
.hhc-form-box .wpforms-error {
    color: #DC2B2B;
    font-size: 13px;
    margin-top: 4px;
}

/* Success message */
.gm-form .wpforms-confirmation-container,
.hhc-form-box .wpforms-confirmation-container {
    color: #11845B;
    font-weight: 500;
    font-size: 20px;
    text-align: center;
    padding: 24px 0;
}

/* ── Consent / Privacy checkbox ── */
.hhc-form-box .gm-privacy,
.hhc-form-box .wc-privacy {
    margin-top: 24px;
}

.hhc-form-box .gm-privacy fieldset,
.hhc-form-box .wc-privacy fieldset {
    border: none;
    padding: 0;
    margin: 0;
}

.hhc-form-box .gm-privacy ul,
.hhc-form-box .wc-privacy ul,
.hhc-form-box .wpforms-field-checkbox ul,
.hhc-form-box .wpforms-field-gdpr ul,
.hhc-form-box .wpforms-field-consent ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.hhc-form-box .gm-privacy ul li,
.hhc-form-box .wc-privacy ul li,
.hhc-form-box .wpforms-field-checkbox ul li,
.hhc-form-box .wpforms-field-gdpr ul li,
.hhc-form-box .wpforms-field-consent ul li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.hhc-form-box .gm-privacy ul li input[type="checkbox"],
.hhc-form-box .wc-privacy ul li input[type="checkbox"],
.hhc-form-box .wpforms-field-checkbox ul li input[type="checkbox"],
.hhc-form-box .wpforms-field-gdpr ul li input[type="checkbox"],
.hhc-form-box .wpforms-field-consent ul li input[type="checkbox"] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    border-radius: 6px;
    border: 1px solid var(--Neutral-500);
    background: var(--Neutral-100);
    appearance: none;
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    margin-top: 2px;
    flex-shrink: 0;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.hhc-form-box .gm-privacy ul li input[type="checkbox"]:checked,
.hhc-form-box .wc-privacy ul li input[type="checkbox"]:checked,
.hhc-form-box .wpforms-field-checkbox ul li input[type="checkbox"]:checked,
.hhc-form-box .wpforms-field-gdpr ul li input[type="checkbox"]:checked,
.hhc-form-box .wpforms-field-consent ul li input[type="checkbox"]:checked {
    background-color: var(--Primary-primary);
    border-color: var(--Primary-primary);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 8l3 3 5-6' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
}

.hhc-form-box .gm-privacy ul li label,
.hhc-form-box .wc-privacy ul li label,
.hhc-form-box .wpforms-field-checkbox ul li label,
.hhc-form-box .wpforms-field-gdpr ul li label,
.hhc-form-box .wpforms-field-consent ul li label {
    font-size: 14px;
    line-height: 1.5;
    color: var(--Neutral-600);
    font-weight: 400;
}

.hhc-form-box .gm-privacy ul li a,
.hhc-form-box .wc-privacy ul li a,
.hhc-form-box .wpforms-field-checkbox ul li a,
.hhc-form-box .wpforms-field-gdpr ul li a,
.hhc-form-box .wpforms-field-consent ul li a {
    text-decoration: underline;
    color: var(--Primary-primary);
}

/* ========================================
   RESPONSIVE — TABLET (998px)
   ======================================== */
@media (max-width: 998px) {
    .hhc-hero,
    .hhc-what-is,
    .hhc-services,
    .hhc-medicare,
    .hhc-why-choose,
    .hhc-how-it-works,
    .hhc-areas,
    .hhc-cta {
        padding: 80px 0;
    }

    .hhc-hero {
        padding: 80px 0 120px;
    }

    .hhc-hero-inner {
        flex-direction: column;
        gap: 40px;
    }

    .hhc-hero-image {
        flex: none;
        width: 100%;
    }

    .hhc-trust-bar {
        margin-top: -60px;
    }

    .hhc-trust-bar-inner {
        grid-template-columns: repeat(2, 1fr);
        padding: 28px;
    }

    .hhc-what-is-grid {
        grid-template-columns: 1fr;
    }

    .hhc-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hhc-medicare-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .hhc-why-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hhc-steps::before {
        display: none;
    }

    .hhc-cities-columns {
        column-count: 3;
    }

    .hhc-form-box {
        padding: 36px 32px;
    }

    .vp-service-reviews {
        padding: 60px 0;
    }

    .vp-reviews-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .vp-reviews-nav.arrow-desk {
        display: none;
    }

    .vp-reviews-nav-mobile {
        display: flex;
    }

    .vp-review-card {
        padding: var(--36) var(--24);
    }

    .vp-author-info {
        gap: 0;
    }
    .hhc-insurance-box {
        position: unset;
    }
}

/* ========================================
   RESPONSIVE — MOBILE (640px)
   ======================================== */
@media (max-width: 640px) {
    .hhc-what-is,
    .hhc-services,
    .hhc-medicare,
    .hhc-why-choose,
    .hhc-how-it-works,
    .hhc-areas,
    .hhc-cta {
        padding: 60px 0;
    }

    .hhc-hero {
        padding: 40px 0 100px;
    }

    .hhc-hero-inner {
        gap: 32px;
    }

    .hhc-hero-underline {
        width: 280px;
        height: auto;
    }

    .hhc-hero-desc {
        font-size: 16px;
    }

    .hhc-hero-image img,
    .hhc-hero-image-placeholder {
        height: 280px;
    }

    .hhc-zero-cost-badge {
        padding: 12px 20px;
        gap: 10px;
        bottom: -16px;
    }

    .hhc-zero-cost-badge .cost-amount {
        font-size: 28px;
    }

    .hhc-zero-cost-badge .cost-text {
        font-size: 13px;
    }

    .hhc-trust-bar {
        margin-top: -50px;
    }

    .hhc-trust-bar-inner {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
        padding: 20px;
    }

    .hhc-trust-icon {
        width: 44px;
        height: 44px;
        border-radius: 12px;
    }

    .hhc-trust-icon svg {
        width: 22px;
        height: 22px;
    }

    .hhc-trust-text strong {
        font-size: 14px;
    }

    .hhc-trust-text span {
        font-size: 12px;
    }

    .hhc-services-grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }

    .hhc-service-card {
        padding: 24px 16px;
    }

    .hhc-service-icon {
        width: 56px;
        height: 56px;
        border-radius: 16px;
    }

    .hhc-service-icon svg {
        width: 28px;
        height: 28px;
    }

    .hhc-service-card h3 {
        font-size: 16px;
    }

    .hhc-service-card p {
        font-size: 14px;
    }

    .hhc-why-grid {
        grid-template-columns: 1fr;
    }

    .hhc-why-card {
        padding: 28px 24px;
    }

    .hhc-steps {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .hhc-step-number {
        width: 64px;
        height: 64px;
        font-size: 24px;
    }

    .hhc-cities-columns {
        column-count: 2;
        column-gap: 16px;
    }

    .hhc-cities-wrapper {
        padding: 24px 16px;
    }

    .hhc-cities-columns li a {
        font-size: 14px;
        padding: 6px 8px;
    }

    .hhc-insurance-box {
        padding: 24px;
    }

    .hhc-insurance-item {
        padding: 12px 16px;
    }

    .hhc-comparison-box {
        padding: 24px;
    }

    .hhc-form-box {
        padding: 24px 20px;
    }

    .hhc-form-box input[type="text"],
    .hhc-form-box input[type="email"],
    .hhc-form-box input[type="tel"],
    .hhc-form-box input[type="number"],
    .hhc-form-box select,
    .hhc-form-box textarea {
        font-size: var(--16);
    }

    .hhc-form-box textarea {
        min-height: 98px;
    }

    .hhc-hero-btns {
        flex-direction: column;
        width: 100%;
    }

    .hhc-mini-cta {
        padding: 32px 0;
    }

    .hhc-mini-cta p {
        font-size: 17px;
    }

    .hhc-landing-page {
        padding-bottom: 80px;
    }

    .hhc-title-underline {
        width: 260px;
        height: auto;
    }
}

/* ========================================
   RESPONSIVE — MOBILE (600px) — form layout
   ======================================== */
@media (max-width: 600px) {
    .gm-form .wpforms-field-layout-rows .wpforms-layout-row,
    .hhc-form-box .wpforms-field-layout-rows .wpforms-layout-row {
        margin-bottom: 12px;
        gap: 12px;
    }
}

/* ========================================
   RESPONSIVE — EXTRA SMALL (400px)
   ======================================== */
@media (max-width: 400px) {
    .hhc-services-grid {
        grid-template-columns: 1fr;
    }

    .hhc-trust-bar-inner {
        grid-template-columns: 1fr;
    }

    .hhc-cities-columns {
        column-count: 1;
    }

    .hhc-zero-cost-badge .cost-amount {
        font-size: 24px;
    }
}