/* ============================================
   ROOT VARIABLES & RESET
   ============================================ */
:root {
    /* Refined Medical Color Palette - Calming Teal/Sage */
    --primary-color: #5A9A9A;
    --primary-light: #8FBFBF;
    --primary-dark: #467878;
    --secondary-color: #7EB5A8;
    --secondary-light: #B8D8CF;
    --accent-color: #D4A59A;
    --text-dark: #3D4A4A;
    --text-light: #6B7878;
    --white: #FFFFFF;
    --light-bg: #FAFCFC;
    --alt-bg: #F5F8F8;
    --cream-bg: #FBF9F7;
    --glass-bg: rgba(255, 255, 255, 0.15);
    --glass-border: rgba(255, 255, 255, 0.25);
    
    /* Typography */
    --font-primary: 'Inter', sans-serif;
    --font-heading: 'Playfair Display', serif;
    
    /* Shadows */
    --shadow-sm: 0 2px 8px rgba(61, 74, 74, 0.08);
    --shadow-md: 0 4px 16px rgba(61, 74, 74, 0.12);
    --shadow-lg: 0 8px 32px rgba(61, 74, 74, 0.16);
    
    /* Transitions */
    --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-primary);
    color: var(--text-dark);
    font-size: 18px;
    line-height: 1.7;
    overflow-x: hidden;
    background: var(--light-bg);
}

/* ============================================
   NAVIGATION
   ============================================ */
.navbar {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow-sm);
    padding: 1rem 0;
    transition: var(--transition-smooth);
}

.navbar.scrolled {
    box-shadow: var(--shadow-md);
}

.navbar-brand {
    font-weight: 700;
    color: var(--primary-color);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: var(--transition-smooth);
    text-decoration: none;
}

.navbar-brand:hover {
    color: var(--primary-dark);
    text-decoration: none;
}

.brand-content {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}

.brand-name {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--primary-color);
    letter-spacing: 0.5px;
}

.brand-title {
    font-size: 0.7rem;
    font-weight: 500;
    color: var(--text-light);
    white-space: nowrap;
}

.brand-subtitle {
    font-size: 0.65rem;
    font-weight: 400;
    color: var(--text-light);
}

/* Navbar brand responsive */
@media (max-width: 991.98px) {
    .brand-name {
        font-size: 1.1rem;
    }
    
    .brand-title,
    .brand-subtitle {
        display: 14px;
    }
}

@media (max-width: 575.98px) {
    .brand-name {
        font-size: 1rem;
    }
}

.navbar-nav .nav-link {
    color: var(--text-dark);
    font-weight: 500;
    padding: 0.5rem 1rem;
    margin: 0 0.25rem;
    border-radius: 8px;
    transition: var(--transition-smooth);
    position: relative;
}

.navbar-nav .nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    transform: translateX(-50%);
    transition: var(--transition-smooth);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: var(--primary-color);
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after {
    width: 80%;
}

.navbar-toggler {
    border: none;
    padding: 0.5rem;
    border-radius: 8px;
    transition: var(--transition-smooth);
}

.navbar-toggler:focus {
    box-shadow: 0 0 0 0.2rem rgba(90, 154, 154, 0.25);
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(90, 154, 154, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ============================================
   HERO SECTION
   ============================================ */
.hero-section {
    position: relative;
    min-height: 100vh;
    background: url('../images/banner-new.png') no-repeat center center;
    background-size: cover;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(44, 62, 80, 0.85) 0%, rgba(58, 124, 165, 0.8) 50%, rgba(74, 127, 160, 0.75) 100%);
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-text-wrapper {
    padding: 3rem 0;
}

.glass-card {
    background: var(--glass-bg);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    padding: 3rem;
    border: 1px solid var(--glass-border);
    box-shadow: var(--shadow-lg);
    transition: var(--transition-smooth);
}

.glass-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}

.hero-title {
    font-family: var(--font-heading);
    font-size: 3.25rem;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 1.5rem;
    line-height: 1.2;
    text-shadow: 2px 4px 8px rgba(0, 0, 0, 0.3);
}

.hero-subtitle {
    font-size: 1.35rem;
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 2.5rem;
    line-height: 1.7;
    text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.2);
    max-width: 600px;
}

.cta-button {
    background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
    color: var(--white);
    border: none;
    padding: 1.25rem 2.5rem;
    font-size: 1.1rem;
    font-weight: 600;
    border-radius: 50px;
    transition: var(--transition-smooth);
    box-shadow: 0 8px 25px rgba(107, 165, 207, 0.4);
    display: inline-block;
    text-align: center;
    line-height: 1.4;
}

.cta-button:hover {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary-color));
    color: var(--white);
    transform: translateY(-5px);
    box-shadow: 0 12px 35px rgba(107, 165, 207, 0.5);
}

.hero-cta-text {
    font-size: 1.5rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 2rem;
    line-height: 1.5;
    text-shadow: 1px 2px 4px rgba(0, 0, 0, 0.2);
    max-width: 650px;
}

/* Hero Responsive Styles */
@media (max-width: 991.98px) {
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-subtitle {
        font-size: 1.2rem;
    }
    
    .hero-cta-text {
        font-size: 1.25rem;
    }
    
    .hero-text-wrapper {
        padding: 2rem 0;
    }
}

@media (max-width: 767.98px) {
    .hero-section {
        min-height: auto;
        padding: 120px 0 80px;
    }
    
    .hero-section .row {
        min-height: auto !important;
    }
    
    .hero-title {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    
    .hero-subtitle {
        font-size: 1.1rem;
        margin-bottom: 1.5rem;
    }
    
    .hero-cta-text {
        font-size: 1.1rem;
        margin-bottom: 1.5rem;
    }
    
    .hero-text-wrapper {
        padding: 1.5rem 0;
        text-align: center;
    }
    
    .cta-button {
        padding: 1rem 2rem;
        font-size: 1rem;
        width: 100%;
        max-width: 300px;
    }
}

@media (max-width: 575.98px) {
    .hero-section {
        padding: 100px 0 60px;
    }
    
    .hero-title {
        font-size: 1.65rem;
        line-height: 1.3;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    .hero-cta-text {
        font-size: 1rem;
    }
    
    .cta-button {
        padding: 0.85rem 1.5rem;
        font-size: 0.95rem;
    }
}

.scroll-indicator {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    animation: bounce 2s infinite;
}

.scroll-indicator i {
    font-size: 2rem;
    color: var(--white);
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateX(-50%) translateY(0);
    }
    40% {
        transform: translateX(-50%) translateY(-20px);
    }
    60% {
        transform: translateX(-50%) translateY(-10px);
    }
}

/* ============================================
   SECTIONS
   ============================================ */
.about-section,
.services-section,
.contact-section {
    padding: 5rem 0;
}

.section-header {
    margin-bottom: 3rem;
}

.section-title {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 1rem;
}

.title-underline {
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    margin: 0 auto;
    border-radius: 2px;
}

.section-subtitle {
    font-size: 1.1rem;
    color: var(--text-light);
}

/* ============================================
   ABOUT SECTION
   ============================================ */
.about-section {
    background: var(--cream-bg);
}

.about-image-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.doctor-card {
    width: 100%;
    max-width: 450px;
    background: var(--white);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    transition: var(--transition-smooth);
    position: relative;
}

.doctor-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}

.doctor-photo {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.doctor-badge {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary-color));
    padding: 1.5rem 2rem;
    text-align: center;
}

.doctor-badge h3 {
    color: var(--white);
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 1px;
    margin: 0;
    text-transform: uppercase;
}

.doctor-credentials {
    background: var(--white);
    padding: 1.5rem 2rem;
    text-align: center;
}

.doctor-credentials p {
    margin: 0.5rem 0;
    color: var(--text-dark);
    font-size: 1rem;
    line-height: 1.6;
}

.doctor-credentials p:first-child {
    font-weight: 600;
    border-bottom: 2px dotted #ddd;
    padding-bottom: 0.75rem;
    margin-bottom: 0.75rem;
}

.about-content p {
    margin-bottom: 1rem;
}

.about-content .lead {
    font-size: 1.15rem;
    color: var(--text-dark);
    font-weight: 500;
}

.credentials h4,
.affiliations h4 {
    color: var(--primary-color);
    font-weight: 600;
    font-size: 1.25rem;
}

.credential-list {
    list-style: none;
    padding: 0;
}

.credential-list li {
    padding: 0.5rem 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.credential-list i {
    color: var(--secondary-color);
    font-size: 1.25rem;
}

.affiliation-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.affiliation-badges .badge {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--white);
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    border-radius: 50px;
    transition: var(--transition-smooth);
}

.affiliation-badges .badge:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
}

/* ============================================
   SERVICES SECTION
   ============================================ */
.services-section {
    background: var(--white);
}

.service-card {
    padding: 2rem;
    height: 100%;
    transition: var(--transition-smooth);
    border: 1px solid rgba(90, 154, 154, 0.2);
}

.service-card:hover {
    transform: translateY(-10px);
    border-color: var(--primary-color);
}

.service-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    transition: var(--transition-smooth);
}

.service-card:hover .service-icon {
    transform: rotate(5deg) scale(1.1);
}

.service-icon i {
    font-size: 2.5rem;
    color: var(--white);
}

.service-card h3 {
    font-size: 1.35rem;
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 1rem;
}

.service-card p {
    color: var(--text-light);
    margin: 0;
}

.approach-section .glass-card {
    background: rgba(107, 165, 207, 0.1);
    backdrop-filter: blur(10px);
}

.approach-section h3 {
    color: var(--primary-color);
    font-weight: 600;
}

/* ============================================
   TESTIMONIALS SECTION
   ============================================ */
.testimonials-section {
    padding: 5rem 0;
    background: var(--alt-bg);
    position: relative;
    overflow: hidden;
}

.testimonials-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(90, 154, 154, 0.08) 0%, transparent 70%);
    border-radius: 50%;
}

.testimonials-section::after {
    content: '';
    position: absolute;
    bottom: -30%;
    left: -10%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(126, 181, 168, 0.08) 0%, transparent 70%);
    border-radius: 50%;
}

.testimonial-card {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    height: 100%;
    position: relative;
    box-shadow: 0 4px 20px rgba(61, 74, 74, 0.08);
    transition: var(--transition-smooth);
    border: 1px solid rgba(90, 154, 154, 0.1);
    display: flex;
    flex-direction: column;
}

.testimonial-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 12px 40px rgba(90, 154, 154, 0.15);
    border-color: var(--primary-light);
}

.quote-icon {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, var(--primary-light), var(--secondary-light));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.6;
}

.quote-icon i {
    font-size: 1.5rem;
    color: var(--white);
    transform: rotate(180deg);
}

.stars {
    margin-bottom: 1rem;
    display: flex;
    gap: 0.25rem;
}

.stars i {
    color: #FFD700;
    font-size: 1rem;
}

.testimonial-text {
    font-size: 0.95rem;
    color: var(--text-light);
    line-height: 1.7;
    flex-grow: 1;
    margin-bottom: 1.5rem;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(107, 165, 207, 0.15);
    margin-top: auto;
}

.author-avatar {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.author-avatar i {
    font-size: 1.75rem;
    color: var(--white);
}

.author-info h5 {
    font-weight: 600;
    color: var(--text-dark);
    margin: 0 0 0.25rem;
    font-size: 1rem;
}

.author-info span {
    font-size: 0.85rem;
    color: var(--primary-color);
    font-weight: 500;
}

/* Swiper Slider Custom Styles */
.testimonials-swiper {
    padding: 20px 10px 60px;
    position: relative;
}

.testimonials-swiper .swiper-slide {
    height: auto;
}

.testimonials-swiper .swiper-slide .testimonial-card {
    height: 100%;
}

/* Swiper Navigation Arrows */
.testimonials-swiper .swiper-button-prev,
.testimonials-swiper .swiper-button-next {
    width: 50px;
    height: 50px;
    background: var(--white);
    border-radius: 50%;
    box-shadow: var(--shadow-md);
    transition: var(--transition-smooth);
}

.testimonials-swiper .swiper-button-prev:hover,
.testimonials-swiper .swiper-button-next:hover {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    box-shadow: var(--shadow-lg);
}

.testimonials-swiper .swiper-button-prev::after,
.testimonials-swiper .swiper-button-next::after {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--primary-color);
    transition: var(--transition-smooth);
}

.testimonials-swiper .swiper-button-prev:hover::after,
.testimonials-swiper .swiper-button-next:hover::after {
    color: var(--white);
}

/* Swiper Pagination */
.testimonials-swiper .swiper-pagination {
    bottom: 10px;
}

.testimonials-swiper .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: var(--primary-light);
    opacity: 0.5;
    transition: var(--transition-smooth);
}

.testimonials-swiper .swiper-pagination-bullet-active {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    opacity: 1;
    width: 30px;
    border-radius: 6px;
}

/* Hide navigation on mobile */
@media (max-width: 767.98px) {
    .testimonials-swiper .swiper-button-prev,
    .testimonials-swiper .swiper-button-next {
        display: none;
    }
    
    .testimonials-swiper {
        padding: 10px 5px 50px;
    }
}

/* ============================================
   CONTACT SECTION
   ============================================ */
.contact-section {
    background: var(--white);
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.contact-item {
    display: flex;
    gap: 1rem;
    align-items: start;
}

.contact-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.contact-details h5 {
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 0.25rem;
}

.contact-details p {
    color: var(--text-light);
    margin: 0;
}

.contact-details a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
    transition: var(--transition-smooth);
}

.contact-details a:hover {
    color: var(--primary-dark);
}

.map-container {
    width: 100%;
    height: 100%;
    min-height: 500px;
    border-radius: 20px;
    overflow: hidden;
}

/* ============================================
   FOOTER
   ============================================ */
.footer {
    background: linear-gradient(135deg, var(--text-dark) 0%, #1A252F 100%);
    color: var(--white);
    padding: 3rem 0 1.5rem;
}

.footer h4 {
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: var(--white);
}

.footer p {
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.8;
}

.footer-links {
    list-style: none;
    padding: 0;
}

.footer-links li {
    margin-bottom: 0.75rem;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: var(--transition-smooth);
    display: inline-block;
}

.footer-links a:hover {
    color: var(--primary-light);
    transform: translateX(5px);
}

.footer-contact {
    list-style: none;
    padding: 0;
}

.footer-contact li {
    display: flex;
    align-items: start;
    gap: 0.75rem;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, 0.7);
}

.footer-contact i {
    color: var(--primary-light);
    margin-top: 0.25rem;
    flex-shrink: 0;
}

.footer-divider {
    border-color: rgba(255, 255, 255, 0.1);
    margin: 2rem 0 1.5rem;
}

.footer-map-container {
    width: 100%;
    height: 180px;
    border-radius: 10px;
    overflow: hidden;
    margin-top: 0.5rem;
}

.footer-map-container iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 10px;
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */
@media (max-width: 991.98px) {
    .navbar-collapse {
        background: rgba(255, 255, 255, 0.98);
        border-radius: 15px;
        padding: 1rem;
        margin-top: 1rem;
        box-shadow: var(--shadow-md);
    }
    
    .navbar-nav .nav-link {
        padding: 0.75rem 1rem;
    }
    
    .hero-title {
        font-size: 2.25rem;
    }
    
    .hero-subtitle {
        font-size: 1.1rem;
    }
    
    .glass-card {
        padding: 2rem;
    }
}

@media (max-width: 767.98px) {
    .section-title {
        font-size: 2rem;
    }
    
    .hero-title {
        font-size: 1.75rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    .glass-card {
        padding: 1.5rem;
    }
    
    .about-section,
    .services-section,
    .contact-section {
        padding: 3rem 0;
    }
    
    .service-card {
        padding: 1.5rem;
    }
}

@media (max-width: 575.98px) {
    .hero-title {
        font-size: 1.5rem;
    }
    
    .section-title {
        font-size: 1.75rem;
    }
    
    .cta-button {
        padding: 0.75rem 1.5rem;
        font-size: 0.9rem;
    }
}

/* ============================================
   ANIMATIONS
   ============================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-in-up {
    animation: fadeInUp 0.6s ease-out;
}

/* ============================================
   UTILITY CLASSES
   ============================================ */
.btn-primary {
    background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
    border: none;
    transition: var(--transition-smooth);
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary-color));
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}



        /* =========================================================
           DESIGN TOKENS
        ========================================================= */
        :root {
            --ink: #0B2545;
            --ink-soft: #4F6377;
            --ink-faint: #8296A8;

            --blue: #123B6E;
            /* was #1B5FAE — now logo navy */
            --blue-deep: #081F3D;
            /* was #0E3B72 — deeper navy */
            --blue-tint: rgba(18, 59, 110, .08);

            --red: #16A3BE;
            /* was #E2231A — now logo teal */
            --red-tint: rgba(22, 163, 190, .08);
            --red-deep: #0F7F94;
            /* was #C21B13 — darker teal hover */

            --green: #1F9D6B;
            --cloud: #F5F8FB;
            --mist: #E5EBF2;
            --white: #FFFFFF;
            --radius-sm: 10px;
            --radius: 16px;
            --radius-lg: 22px;

            --shadow-sm: 0 6px 16px -10px rgba(11, 37, 69, .25);
            --shadow-md: 0 18px 38px -20px rgba(11, 37, 69, .30);
            --shadow-lg: 0 30px 60px -28px rgba(11, 37, 69, .38);

            --gap-lg: 28px;
            --gap: 20px;
            --gap-sm: 14px;

            --maxw: 1180px;

            --font-display: 'Poppins', 'Inter', sans-serif;
            --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
            --font-mono: 'IBM Plex Mono', monospace;
        }

        * {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
            font-size: 17px;
        }

        body {
            margin: 0;
            font-family: var(--font-body);
            color: var(--ink);
            background: var(--cloud);
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            padding-bottom: 0;
        }

        h1,
        h2,
        h3 {
            font-family: var(--font-display);
            color: var(--ink);
            margin: 0 0 .5em;
            letter-spacing: -.01em;
            line-height: 1.2;
            font-weight: 700;
        }

        p {
            margin: 0 0 1em;
            color: var(--ink-soft);
            font-size: 1rem;
        }

        a {
            color: inherit;
        }

        img {
            max-width: 100%;
            display: block;
        }

        ul {
            padding: 0;
            margin: 0;
        }

        .wrap {
            max-width: var(--maxw);
            margin: 0 auto;
            padding: 0 24px;
        }

        /* SECTION RHYTHM — single source of truth, no overrides elsewhere */
        .section {
            padding: 40px 0;
        }

        .section--tight {
            padding: 56px 0;
        }

        .section--alt {
            background: var(--white);
        }

        .head-c {
            max-width: 680px;
            margin: 0 auto 44px;
            text-align: center;
        }

        .head-c p {
            font-size: 16px;
            line-height: 1.75;
        }

        .head-l {
            max-width: 640px;
            margin: 0 0 40px;
        }

        .eyebrow {
            font-family: var(--font-display);
            font-size: 13px;
            letter-spacing: .04em;
            text-transform: uppercase;
            color: var(--blue);
            background: var(--blue-tint);
            border: 1px solid rgba(27, 95, 174, .18);
            border-radius: 999px;
            padding: 8px 16px;
            display: inline-flex;
            align-items: center;
            gap: 9px;
            margin-bottom: 16px;
            font-weight: 600;
        }

        .eyebrow::before {
            content: "";
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: var(--red);
            box-shadow: 0 0 0 4px var(--red-tint);
            flex: 0 0 auto;
        }

        h2 {
            font-size: clamp(26px, 3vw, 34px);
        }

        /* BUTTONS */
        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 15px;
            padding: 14px 26px;
            border-radius: 999px;
            border: 2px solid transparent;
            text-decoration: none;
            cursor: pointer;
            transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
            white-space: nowrap;
        }

        .btn--red {
            background: var(--red);
            color: #fff;
            box-shadow: 0 10px 22px -10px rgba(226, 35, 26, .6);
        }

        .btn--red:hover {
            transform: translateY(-2px);
            box-shadow: 0 14px 28px -10px rgba(226, 35, 26, .7);
            background: var(--red-deep);
        }

        .btn--outline {
            background: rgba(255, 255, 255, .9);
            border-color: var(--mist);
            color: var(--ink);
        }

        .btn--outline:hover {
            border-color: var(--blue);
            color: var(--blue);
        }

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

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

        /* DOT LIST — used across many cards */
        .dotlist {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .dotlist li {
            display: flex;
            gap: 10px;
            align-items: flex-start;
            color: var(--ink-soft);
            font-size: 15px;
            line-height: 1.55;
        }

        .dotlist li::before {
            content: "";
            margin-top: 7px;
            flex: 0 0 7px;
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: var(--red);
        }

        .check-dot {
            flex: 0 0 22px;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            margin-top: 1px;
            background: var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat;
            box-shadow: 0 0 0 4px var(--blue-tint);
        }

        /* =========================================================
           NAVBAR
        ========================================================= */
        .nav {
            position: sticky;
            top: 0;
            z-index: 60;
            background: rgba(246, 248, 251, .94);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border-bottom: 1px solid var(--mist);
        }

        .nav .wrap {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 12px 24px;
            gap: 16px;
        }

        .nav__logo {
            display: flex;
            align-items: center;
            gap: 12px;
            text-decoration: none;
            min-width: 0;
        }

        .nav__logo img {
            height: 75px;
            width: auto;
            max-width: 190px;
            object-fit: contain;
        }

        .nav__logo-text {
            display: flex;
            flex-direction: column;
            justify-content: center;
            line-height: 1.25;
            min-width: 0;
        }

        .nav__logo-text strong {
            font-family: var(--font-display);
            font-size: 18px;
            font-weight: 700;
            color: var(--ink);
            letter-spacing: -.02em;
            white-space: nowrap;
        }

        .nav__logo-text span {
            display: block;
            margin-top: 3px;
            font-family: var(--font-display);
            font-size: 11.5px;
            font-weight: 500;
            letter-spacing: .03em;
            color: var(--ink-soft);
            white-space: nowrap;
        }

        .nav .btn {
            flex-shrink: 0;
        }

        @media (max-width: 640px) {
            .nav .wrap {
                padding: 10px 16px;
            }

            .nav__logo {
                gap: 8px;
            }

            .nav__logo img {
                height: 40px;
                max-width: 130px;
            }

            .nav__logo-text strong {
                font-size: 14.5px;
            }

            .nav__logo-text span {
                display: none;
            }

            .nav .btn {
                padding: 9px 14px;
                font-size: 12.5px;
            }
        }

        /* =========================================================
           HERO
        ========================================================= */
        .hero {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            min-height: 600px;
            display: flex;
            align-items: center;
            background: #eef5f8;
        }

        .hero__banner {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            z-index: -2;
        }

        .hero__banner img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }

        .hero::before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: -1;
            pointer-events: none;
            background: linear-gradient(90deg,
                    rgba(247, 251, 253, .97) 0%, rgba(247, 251, 253, .93) 24%,
                    rgba(247, 251, 253, .74) 42%, rgba(247, 251, 253, .38) 58%,
                    rgba(247, 251, 253, .08) 74%, rgba(247, 251, 253, 0) 88%);
        }

        .hero__inner {
            position: relative;
            z-index: 2;
            width: 100%;
            padding: 64px 0;
        }

        .hero__content {
            width: 54%;
            max-width: 640px;
        }

        .hero h1 {
            font-size: clamp(34px, 4vw, 50px);
            line-height: 1.12;
            letter-spacing: -.02em;
            margin-bottom: 18px;
            max-width: 600px;
        }

        .hero h1 em {
            display: block;
            color: var(--red);
            font-style: normal;
        }

        .hero .lead {
            font-size: 17px;
            line-height: 1.65;
            color: #2E4661;
            max-width: 580px;
            margin-bottom: 10px;
        }

        .hero__content>p:not(.lead) {
            font-size: 14.5px;
            color: #536b7e;
            max-width: 560px;
        }

        .hero__cta {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 22px;
        }

        .hero__facts {
            display: flex;
            flex-wrap: wrap;
            gap: 10px 26px;
            margin-top: 30px;
        }

        .hero__facts div {
            display: flex;
            align-items: center;
            gap: 9px;
            font-family: var(--font-display);
            font-weight: 500;
            font-size: 14px;
            color: var(--ink);
        }

        /* Signature floating scan-status card */
        .hero__status {
            position: absolute;
            right: 6%;
            bottom: 8%;
            z-index: 3;
            width: 220px;
            background: rgba(10, 40, 70, .92);
            backdrop-filter: blur(6px);
            border-radius: var(--radius);
            padding: 16px;
            color: #fff;
            box-shadow: var(--shadow-lg);
            border: 1px solid rgba(255, 255, 255, .12);
        }

        .hero__status-top {
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-family: var(--font-mono);
            font-size: 10px;
            letter-spacing: .05em;
            color: #B9D3EE;
            margin-bottom: 10px;
        }

        .hero__status-top span.live {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            color: #9BF0C4;
        }

        .hero__status-top span.live i {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #35D07F;
            display: inline-block;
        }

        .hero__scan-stage {
            position: relative;
            background: #0A2E5C;
            border-radius: 12px;
            height: 90px;
            overflow: hidden;
        }

        .hero__scan-stage::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            height: 2px;
            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .6), transparent);
            animation: sweep 3.2s linear infinite;
        }

        @keyframes sweep {
            0% {
                top: 8%;
            }

            50% {
                top: 88%;
            }

            100% {
                top: 8%;
            }
        }

        .hero__scan-stage svg {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            height: 78px;
        }

        .hero__status-note {
            margin-top: 10px;
            font-size: 11.5px;
            color: #CFE0F5;
            line-height: 1.5;
        }

        @media (max-width: 1050px) {
            .hero {
                min-height: 560px;
            }

            .hero__content {
                width: 58%;
            }

            .hero__status {
                display: none;
            }
        }

        @media (max-width: 700px) {
            .hero {
                min-height: 660px;
                align-items: flex-end;
            }

            .hero::before {
                background: linear-gradient(180deg,
                        rgba(247, 251, 253, 0) 0%, rgba(247, 251, 253, .06) 22%,
                        rgba(247, 251, 253, .30) 40%, rgba(247, 251, 253, .85) 55%,
                        rgba(247, 251, 253, .98) 66%, #f7fbfd 74%);
            }

            .hero__inner {
                padding: 300px 0 32px;
            }

            .hero__content {
                width: 100%;
                max-width: 100%;
            }

            .hero .lead {
                font-size: 14.5px;
            }

            .hero__content>p:not(.lead) {
                font-size: 12.5px;
            }

            .hero__cta {
                flex-direction: column;
                gap: 9px;
            }

            .hero__cta .btn {
                width: 100%;
            }

            .hero__facts {
                gap: 8px 20px;
                margin-top: 22px;
            }

            .hero__facts div {
                font-size: 13px;
            }
        }

        /* =========================================================
   WHY CHOOSE — PREMIUM CHECKLIST + BOOKING CTA
========================================================= */

        .why-section {
            position: relative;
            overflow: hidden;
        }

        /* subtle background decoration */
        .why-section::before {
            content: "";
            position: absolute;
            width: 420px;
            height: 420px;
            right: -220px;
            top: 80px;
            border-radius: 50%;
            border: 1px solid rgba(27, 95, 174, .06);
            pointer-events: none;
        }


        /* =========================================================
   CENTERED SECTION HEADING
========================================================= */

        .why-section .head-l {
            max-width: 760px;
            margin: 0 auto 42px;
            text-align: center;
        }

        .why-section .head-l .eyebrow {
            margin-bottom: 10px;
        }

        .why-section .head-l h2 {
            max-width: 720px;
            margin: 0 auto;
            font-size: clamp(28px, 3vw, 38px);
            line-height: 1.2;
        }


        /* =========================================================
   MAIN LAYOUT
========================================================= */

        .why-layout {
            position: relative;
            z-index: 1;

            display: grid;
            grid-template-columns: minmax(0, 1.45fr) minmax(330px, .75fr);
            gap: 30px;
            align-items: stretch;
        }


        /* =========================================================
   BENEFITS GRID
========================================================= */

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

            list-style: none;
            padding: 0;
            margin: 0;
        }

        .why-list li {
            min-height: 82px;

            display: flex;
            align-items: center;
            gap: 14px;

            padding: 18px 20px;

            background: #fff;
            border: 1px solid var(--mist);
            border-radius: var(--radius);

            color: var(--ink);

            box-shadow: 0 4px 15px rgba(14, 59, 114, .035);

            transition:
                transform .22s ease,
                border-color .22s ease,
                box-shadow .22s ease,
                background .22s ease;
        }

        .why-list li:hover {
            transform: translateY(-3px);
            background: #fff;
            border-color: rgba(27, 95, 174, .25);
            box-shadow: 0 12px 28px rgba(14, 59, 114, .08);
        }


        /* remove unwanted pseudo element */
        .why-list li::before {
            display: none;
            content: none;
        }


        /* =========================================================
   CHECK ICON
========================================================= */

        .why-list li .check-dot {
            position: relative;

            flex: 0 0 32px;
            width: 32px;
            height: 32px;

            display: flex;
            align-items: center;
            justify-content: center;

            border-radius: 50%;

            background: #edf5fc;
            border: 1px solid #d7e7f6;

            color: var(--blue);

            font-size: 13px;
            font-weight: 700;
        }

        .why-list li .check-dot::after {
            content: "✓";
        }


        /* =========================================================
   BENEFIT TEXT
========================================================= */

        .why-list strong {
            display: block;

            font-family: var(--font-display);
            font-size: 14.5px;
            font-weight: 600;
            line-height: 1.45;

            color: var(--ink);
        }


        /* =========================================================
   FEATURED LAST ITEM
========================================================= */

        .why-list li:last-child {
            grid-column: 1 / -1;

            background: linear-gradient(135deg,
                    #f7fbff,
                    #eef6fd);

            border-color: #d5e6f5;
        }


        /* =========================================================
   BOOKING CARD
========================================================= */

        .why-book {
            position: relative;
            overflow: hidden;

            min-height: 100%;

            border-radius: var(--radius-lg);

            background:
                linear-gradient(145deg,
                    var(--blue-deep) 0%,
                    var(--blue) 100%);

            color: #fff;

            box-shadow:
                0 26px 50px -28px rgba(14, 59, 114, .65);

            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }


        /* decorative circles */
        .why-book::before {
            content: "";

            position: absolute;

            width: 260px;
            height: 260px;

            right: -125px;
            top: -125px;

            border-radius: 50%;

            border: 1px solid rgba(255, 255, 255, .13);

            box-shadow:
                0 0 0 30px rgba(255, 255, 255, .025),
                0 0 0 60px rgba(255, 255, 255, .018);

            pointer-events: none;
        }

        .why-book::after {
            content: "";

            position: absolute;

            width: 90px;
            height: 90px;

            left: -45px;
            bottom: 50px;

            border-radius: 50%;

            background: rgba(255, 255, 255, .035);

            pointer-events: none;
        }


        /* =========================================================
   BOOKING BODY
========================================================= */

        .why-book__body {
            position: relative;
            z-index: 1;

            padding: 30px 28px 15px;
        }

        .why-book__label {
            display: inline-flex;
            align-items: center;
            gap: 8px;

            margin-bottom: 14px;

            color: #cfe2f8;

            font-family: var(--font-display);
            font-size: 11px;
            font-weight: 600;

            text-transform: uppercase;
            letter-spacing: .08em;
        }

        .why-book__label::before {
            content: "";

            width: 7px;
            height: 7px;

            flex: 0 0 7px;

            border-radius: 50%;

            background: var(--red);

            box-shadow:
                0 0 0 4px rgba(226, 35, 26, .18);
        }


        /* heading */
        .why-book h3 {
            max-width: 330px;

            margin: 0 0 16px;

            color: #fff;

            font-size: 24px;
            line-height: 1.3;
        }


        /* =========================================================
   BOOKING POINTS
========================================================= */

        .why-book__points {
            display: flex;
            flex-direction: column;
            gap: 12px;

            list-style: none;

            margin: 0;
            padding: 0;
        }

        .why-book__points li {
            display: flex;
            align-items: center;
            gap: 10px;

            color: #f1f7fd;

            font-size: 13.5px;
            line-height: 1.4;
        }

        .why-book__points li::before {
            content: "✓";

            flex: 0 0 22px;

            width: 22px;
            height: 22px;

            display: flex;
            align-items: center;
            justify-content: center;

            border-radius: 50%;

            background: rgba(255, 255, 255, .13);

            color: #fff;

            font-size: 11px;
            font-weight: 700;
        }


        /* =========================================================
   BOOKING FOOT
========================================================= */

        .why-book__foot {
            position: relative;
            z-index: 1;

            padding: 22px 28px 28px;

            border-top: 1px solid rgba(255, 255, 255, .10);
        }


        /* CTA */
        .why-book .btn {
            width: 100%;

            min-height: 48px;

            justify-content: center;

            background: var(--red);
            border-color: var(--red);

            box-shadow:
                0 10px 24px -10px rgba(226, 35, 26, .7);

            font-weight: 600;
        }

        .why-book .btn:hover {
            background: var(--red-deep);
            border-color: var(--red-deep);

            transform: translateY(-1px);
        }


        /* callback note */
        .why-book__note {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 7px;

            margin: 12px 0 0;

            color: #bfd6ee;

            font-size: 11.5px;
        }

        .why-book__note::before {
            content: "";

            width: 6px;
            height: 6px;

            flex: 0 0 6px;

            border-radius: 50%;

            background: #25d366;
        }


        /* =========================================================
   TABLET
========================================================= */

        @media (max-width: 980px) {

            .why-layout {
                grid-template-columns: 1fr;
                gap: 24px;
            }

            .why-book {
                max-width: 620px;
                width: 100%;
                margin: 0 auto;
            }
        }


        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width: 640px) {

            .why-section .head-l {
                margin-bottom: 30px;
            }

            .why-section .head-l h2 {
                font-size: 27px;
            }

            .why-list {
                grid-template-columns: 1fr;
                gap: 12px;
            }

            .why-list li {
                min-height: 70px;
                padding: 16px;
            }

            .why-list li:last-child {
                grid-column: auto;
            }

            .why-list li .check-dot {
                flex-basis: 30px;
                width: 30px;
                height: 30px;
            }

            .why-list strong {
                font-size: 14px;
            }

            .why-book__body {
                padding: 25px 22px 15px;
            }

            .why-book h3 {
                font-size: 21px;
            }

            .why-book__foot {
                padding: 20px 22px 24px;
            }
        }

        /* =========================================================
   WHY SHOULD YOU CHOOSE
========================================================= */

        .why-section {
            position: relative;
            overflow: hidden;
            background:
                radial-gradient(circle at 8% 15%,
                    rgba(27, 95, 174, .10),
                    transparent 32%),
                radial-gradient(circle at 92% 85%,
                    rgba(27, 95, 174, .08),
                    transparent 30%),
                #eef8ff;
        }

        /* subtle decorative background */
        .why-section::before {
            content: "";
            position: absolute;
            width: 300px;
            height: 300px;
            right: -140px;
            top: 80px;
            border-radius: 50%;
            background: rgba(255, 255, 255, .45);
            pointer-events: none;
        }

        .why-section .wrap {
            position: relative;
            z-index: 1;
        }

        /* SECTION HEADING */

        .why-section .head-c {
            max-width: 850px;
            margin: 0 auto 38px;
            text-align: center;
        }

        .why-section .section-intro {
            max-width: 680px;
            margin: 12px auto 0;
            color: var(--ink-soft);
            font-size: 15px;
            line-height: 1.65;
        }

        /* =========================================================
   CARDS
========================================================= */

        .why-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 20px;
        }

        .why-card {
            overflow: hidden;
            background: var(--white);
            border: 1px solid rgba(27, 95, 174, .12);
            border-radius: 18px;
            box-shadow: 0 8px 28px rgba(11, 37, 69, .06);
            transition:
                transform .22s ease,
                box-shadow .22s ease,
                border-color .22s ease;
        }

        .why-card:hover {
            transform: translateY(-5px);
            border-color: rgba(27, 95, 174, .25);
            box-shadow: 0 16px 38px rgba(11, 37, 69, .11);
        }

        /* =========================================================
   CARD IMAGE
========================================================= */

        .why-card__image {
            position: relative;
            height: 175px;
            overflow: hidden;
            background: #dceefa;
        }

        .why-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform .4s ease;
        }

        .why-card:hover .why-card__image img {
            transform: scale(1.04);
        }

        /* soft image overlay */
        .why-card__image::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom,
                    transparent 55%,
                    rgba(11, 37, 69, .18));
            pointer-events: none;
        }

        /* NUMBER */

        .why-card .num {
            position: absolute;
            left: 14px;
            bottom: 13px;
            z-index: 2;

            width: 38px;
            height: 38px;

            display: grid;
            place-items: center;

            border-radius: 11px;

            background: rgba(255, 255, 255, .94);
            color: var(--blue);

            font-size: 12px;
            font-weight: 800;
            letter-spacing: .04em;

            box-shadow: 0 5px 15px rgba(11, 37, 69, .12);
        }

        /* =========================================================
   CARD CONTENT
========================================================= */

        .why-card__content {
            padding: 20px 20px 22px;
        }

        .why-card h3 {
            margin: 0 0 8px;
            color: var(--ink);
            font-size: 18px;
            line-height: 1.35;
            font-weight: 700;
        }

        .why-card p {
            margin: 0;
            color: var(--ink-soft);
            font-size: 14px;
            line-height: 1.65;
        }

        /* =========================================================
   EASY ACCESS LOCATION
========================================================= */

        .location-area {
            margin-top: 32px;
            padding: 23px 25px;

            border: 1px solid rgba(27, 95, 174, .14);
            border-radius: 17px;

            background: rgba(255, 255, 255, .72);
            box-shadow: 0 8px 25px rgba(11, 37, 69, .04);
        }

        .location-area__head {
            display: flex;
            align-items: center;
            gap: 13px;
            margin-bottom: 17px;
        }

        .location-icon {
            width: 38px;
            height: 38px;
            flex: 0 0 38px;

            display: grid;
            place-items: center;

            border-radius: 50%;

            background: rgba(27, 95, 174, .10);
            color: var(--blue);

            font-size: 22px;
        }

        .location-area .area-label {
            display: block;
            margin: 0 0 3px;

            color: var(--blue);
            font-size: 11px;
            font-weight: 800;
            letter-spacing: .09em;
            text-transform: uppercase;
        }

        .location-area__head h3 {
            margin: 0;
            color: var(--ink);
            font-size: 18px;
            line-height: 1.4;
        }

        /* =========================================================
   LOCATION PILLS
========================================================= */

        .tagcloud {
            display: flex;
            flex-wrap: wrap;
            gap: 9px;
        }

        .tagcloud a {
            display: inline-flex;
            align-items: center;
            justify-content: center;

            min-height: 38px;
            padding: 7px 16px;

            border: 1px solid rgba(27, 95, 174, .15);
            border-radius: 999px;

            background: #fff;
            color: var(--ink);

            font-size: 13px;
            line-height: 1.2;
            font-weight: 600;

            text-decoration: none;

            transition:
                background .2s ease,
                color .2s ease,
                border-color .2s ease,
                transform .2s ease;
        }

        .tagcloud a:hover {
            background: var(--blue);
            border-color: var(--blue);
            color: #fff;
            transform: translateY(-2px);
        }

        /* Main location */
        .tagcloud .location-primary {
            background: var(--blue);
            border-color: var(--blue);
            color: #fff;
            font-weight: 700;
            box-shadow: 0 5px 14px rgba(27, 95, 174, .18);
        }

        /* =========================================================
   TABLET
========================================================= */

        @media (max-width: 1050px) {

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

            .why-card__image {
                height: 190px;
            }
        }

        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width: 600px) {

            .why-section .head-c {
                margin-bottom: 26px;
            }

            .why-section .section-intro {
                font-size: 14px;
            }

            .why-grid {
                grid-template-columns: 1fr;
                gap: 15px;
            }

            .why-card__image {
                height: 190px;
            }

            .why-card__content {
                padding: 17px 17px 19px;
            }

            .why-card h3 {
                font-size: 17px;
            }

            .why-card p {
                font-size: 13.5px;
                line-height: 1.6;
            }

            .location-area {
                margin-top: 24px;
                padding: 19px 16px;
            }

            .location-area__head {
                align-items: flex-start;
            }

            .location-area__head h3 {
                font-size: 16px;
            }

            .tagcloud {
                gap: 7px;
            }

            .tagcloud a {
                min-height: 36px;
                padding: 7px 13px;
                font-size: 12.5px;
            }
        }

        /* =========================================================
   ABOUT PET CT — FINAL REFINED LAYOUT
   Theme / colors unchanged
========================================================= */

        .pet-about {
            position: relative;
            overflow: hidden;
            background: var(--cloud);
        }

        .pet-about::before {
            content: "";
            position: absolute;
            width: 420px;
            height: 420px;
            right: -220px;
            top: 40px;
            border-radius: 50%;
            background: rgba(27, 95, 174, .035);
            pointer-events: none;
        }

        .pet-about__grid {
            position: relative;
            z-index: 1;

            display: grid;
            grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
            gap: 46px;
            align-items: center;
        }

        /* LEFT */

        .pet-about__content {
            max-width: 680px;
        }

        .pet-about__content .head-l {
            margin-bottom: 18px;
        }

        .pet-about__content .head-l h2 {
            max-width: 620px;
            margin-bottom: 0;

            /* controlled heading size */
            font-size: clamp(27px, 2.7vw, 35px);
            line-height: 1.2;
            letter-spacing: -.018em;
        }

        .pet-about__lead {
            max-width: 650px;
            margin: 0 0 13px;

            color: var(--ink);
            font-family: var(--font-display);
            font-size: 15.5px;
            line-height: 1.68;
            font-weight: 400;
        }

        .pet-about__content>p:not(.pet-about__lead) {
            max-width: 650px;
            margin: 0;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 14px;
            line-height: 1.68;
        }

        /* FOCUS */

        .pet-about__focus {
            margin-top: 24px;
            padding: 18px;

            background: rgba(255, 255, 255, .72);
            border: 1px solid var(--mist);
            border-radius: var(--radius);
            box-shadow: var(--shadow-sm);
        }

        .pet-about__focus-head {
            display: flex;
            align-items: center;
            gap: 9px;
            margin-bottom: 13px;
        }

        .pet-about__focus-line {
            width: 22px;
            height: 2px;
            flex: 0 0 auto;

            background: var(--red);
            border-radius: 2px;
        }

        .pet-about__focus-head strong {
            color: var(--ink);

            font-family: var(--font-display);
            font-size: 11.5px;
            font-weight: 700;
            letter-spacing: .055em;
            text-transform: uppercase;
        }

        .pet-about__points {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 9px;
        }

        .pet-about__point {
            display: flex;
            align-items: center;
            gap: 10px;

            min-height: 52px;
            padding: 9px 11px;

            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius-sm);

            transition:
                transform .2s ease,
                border-color .2s ease,
                box-shadow .2s ease;
        }

        .pet-about__point:hover {
            transform: translateY(-2px);
            border-color: rgba(27, 95, 174, .22);
            box-shadow: var(--shadow-sm);
        }

        .pet-about__point-icon {
            width: 28px;
            height: 28px;
            flex: 0 0 28px;

            display: flex;
            align-items: center;
            justify-content: center;

            border-radius: 8px;
            background: var(--blue-tint);
        }

        .pet-about__point-icon svg {
            width: 15px;
            height: 15px;

            stroke: var(--blue);
            stroke-width: 2.4;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .pet-about__point strong {
            color: var(--ink);

            font-family: var(--font-display);
            font-size: 13px;
            line-height: 1.3;
            font-weight: 600;
        }


        /* RIGHT VISUAL */

        .pet-about__visual {
            display: flex;
            flex-direction: column;
            gap: 13px;
        }

        .pet-about__image-card {
            position: relative;
            overflow: hidden;

            background: var(--blue-deep);
            border: 1px solid rgba(14, 59, 114, .12);
            border-radius: var(--radius-lg);

            box-shadow: var(--shadow-lg);
        }

        .pet-about__image-top {
            min-height: 44px;
            padding: 12px 16px;

            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;

            font-family: var(--font-mono);
            font-size: 10px;
            letter-spacing: .055em;
            color: #CBE0F7;
        }

        .pet-about__status {
            display: inline-flex;
            align-items: center;
            gap: 6px;

            color: #B9F5D0;
            white-space: nowrap;
        }

        .pet-about__status i {
            width: 6px;
            height: 6px;
            flex: 0 0 6px;

            border-radius: 50%;
            background: #35D07F;
        }

        .pet-about__image-card img {
            display: block;
            width: 100%;
            height: 255px;

            object-fit: cover;
            object-position: center;
        }

        .pet-about__image-overlay {
            min-height: 64px;
            padding: 12px 16px;

            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;

            background: var(--blue-deep);
        }

        .pet-about__image-overlay span {
            display: block;
            margin-bottom: 3px;

            color: #9FC0E4;

            font-family: var(--font-mono);
            font-size: 9px;
            letter-spacing: .06em;
        }

        .pet-about__image-overlay strong {
            display: block;

            color: #fff;
            font-family: var(--font-display);
            font-size: 14px;
            line-height: 1.2;
            font-weight: 600;
        }

        .pet-about__scan-icon {
            width: 35px;
            height: 35px;
            flex: 0 0 35px;

            display: flex;
            align-items: center;
            justify-content: center;

            border: 1px solid rgba(255, 255, 255, .12);
            border-radius: 50%;
            background: rgba(255, 255, 255, .08);
        }

        .pet-about__scan-icon svg {
            width: 17px;
            height: 17px;

            stroke: #fff;
            stroke-width: 1.8;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }


        /* MINI CARD */

        .pet-about__mini {
            display: flex;
            align-items: flex-start;
            gap: 12px;

            padding: 15px;

            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius);
            box-shadow: var(--shadow-sm);
        }

        .pet-about__mini-icon {
            width: 39px;
            height: 39px;
            flex: 0 0 39px;

            display: flex;
            align-items: center;
            justify-content: center;

            border-radius: 10px;
            background: var(--red-tint);
        }

        .pet-about__mini-icon svg {
            width: 18px;
            height: 18px;

            stroke: var(--red);
            stroke-width: 2;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .pet-about__mini strong {
            display: block;
            margin-bottom: 3px;

            color: var(--ink);
            font-family: var(--font-display);
            font-size: 13.5px;
            line-height: 1.3;
            font-weight: 650;
        }

        .pet-about__mini span {
            display: block;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 12.5px;
            line-height: 1.5;
        }


        /* =========================================================
   PET SCAN SERVICES — CONSISTENT WITH ABOUT SECTION
========================================================= */

        .services-section {
            position: relative;
            overflow: hidden;
            background: var(--white);
            padding-top: 46px;
        }

        .services-section::before {
            content: "";
            position: absolute;
            width: 380px;
            height: 380px;
            left: -200px;
            top: 35px;
            border-radius: 50%;
            background: rgba(27, 95, 174, .045);
            pointer-events: none;
        }

        .services-section::after {
            content: "";
            position: absolute;
            width: 280px;
            height: 280px;
            right: -150px;
            bottom: -110px;
            border-radius: 50%;
            background: rgba(226, 35, 26, .035);
            pointer-events: none;
        }

        /* Heading */

        .services-section .head-c {
            position: relative;
            z-index: 2;

            max-width: 780px;
            margin: 0 auto 30px;

            text-align: center;
        }

        .services-section .head-c h2 {
            max-width: 720px;
            margin: 0 auto;

            font-size: clamp(27px, 2.7vw, 35px);
            line-height: 1.2;
            letter-spacing: -.018em;
        }


        /* CARDS */

        .svc-grid {
            position: relative;
            z-index: 1;

            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;

            align-items: stretch;
        }

        .svc-card {
            position: relative;
            display: flex;
            flex-direction: column;
            min-width: 0;

            background: var(--cloud);
            border: 1px solid var(--mist);
            border-radius: var(--radius);

            overflow: hidden;
            box-shadow: var(--shadow-sm);

            transition:
                transform .25s ease,
                box-shadow .25s ease,
                border-color .25s ease;
        }

        .svc-card:hover {
            transform: translateY(-5px);
            border-color: rgba(27, 95, 174, .22);
            box-shadow: var(--shadow-md);
        }

        .svc-media {
            position: relative;
            height: 158px;

            overflow: hidden;
            background: linear-gradient(140deg,
                    var(--blue-tint),
                    rgba(226, 35, 26, .05));
        }

        .svc-media img {
            display: block;
            width: 100%;
            height: 100%;

            object-fit: cover;

            transition: transform .5s ease;
        }

        .svc-card:hover .svc-media img {
            transform: scale(1.05);
        }

        .svc-media .svc-tag {
            position: absolute;
            top: 11px;
            right: 11px;

            background: rgba(11, 37, 69, .72);
            color: #fff;

            backdrop-filter: blur(3px);
        }

        .svc-body {
            position: relative;

            display: flex;
            flex-direction: column;
            flex: 1;

            padding: 19px 21px 22px;
        }

        .svc-body::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;

            width: 100%;
            height: 3px;

            background: linear-gradient(90deg,
                    var(--blue),
                    #4B91D5);

            transform: scaleX(0);
            transform-origin: left;

            transition: transform .3s ease;
        }

        .svc-card:hover .svc-body::before {
            transform: scaleX(1);
        }

        .svc-card__top {
            display: flex;
            align-items: center;

            margin-bottom: 13px;
        }

        .svc-icon {
            width: 43px;
            height: 43px;
            flex: 0 0 43px;

            display: flex;
            align-items: center;
            justify-content: center;

            color: var(--blue);
            background: var(--blue-tint);

            border: 1px solid rgba(27, 95, 174, .12);
            border-radius: 11px;

            transition:
                transform .25s ease,
                background .25s ease,
                color .25s ease;
        }

        .svc-icon svg {
            width: 21px;
            height: 21px;

            stroke: currentColor;
            stroke-width: 1.8;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .svc-card:hover .svc-icon {
            transform: scale(1.06) rotate(-3deg);
            background: var(--blue);
            color: #fff;
        }

        .svc-tag {
            display: inline-flex;
            align-items: center;

            padding: 6px 10px;

            border-radius: 999px;
            background: var(--red-tint);
            color: var(--red);

            font-family: var(--font-display);
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .04em;
            text-transform: uppercase;

            white-space: nowrap;
        }

        .svc-card h3 {
            margin: 0 0 7px;

            color: var(--ink);
            font-family: var(--font-display);
            font-size: 18px;
            line-height: 1.3;
            font-weight: 650;
        }

        .svc-desc {
            margin: 0;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 13.5px;
            line-height: 1.58;
        }

        .svc-divider {
            width: 100%;
            height: 1px;

            margin: 16px 0 14px;

            background: var(--mist);
        }

        .svc-card .dotlist {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .svc-card .dotlist li {
            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 13px;
            line-height: 1.42;
        }

        /* =========================================================
   COST SECTION — CLEAN / CONSISTENT / READABLE
   Same theme + same section spacing
========================================================= */

        .cost-section {
            position: relative;
            overflow: hidden;
            background: var(--cloud);
        }


        /* =========================================================
   SECTION HEADING
========================================================= */

        .cost-section>.wrap>.head-l {
            max-width: 720px;
            margin: 0 auto 30px;
            text-align: center;
        }

        .cost-section>.wrap>.head-l h2 {
            max-width: 680px;
            margin: 0 auto;

            font-size: clamp(27px, 2.7vw, 35px);
            line-height: 1.22;
            letter-spacing: -.015em;
        }

        .cost-section>.wrap>.head-l .eyebrow {
            margin-bottom: 11px;
        }


        /* =========================================================
   MAIN GRID
========================================================= */

        .cost-grid {
            display: grid;
            grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
            gap: 38px;
            align-items: stretch;
        }


        /* =========================================================
   LEFT IMAGE
========================================================= */

        .cost-visual {
            position: relative;
            min-height: 390px;

            overflow: hidden;
            border-radius: var(--radius-lg);
            box-shadow: var(--shadow-lg);
        }

        .cost-visual img {
            position: absolute;
            inset: 0;

            width: 100%;
            height: 100%;

            object-fit: cover;
        }

        .cost-visual::after {
            content: "";
            position: absolute;
            inset: 0;

            background:
                linear-gradient(0deg,
                    rgba(9, 32, 61, .88) 0%,
                    rgba(9, 32, 61, .35) 55%,
                    rgba(9, 32, 61, .08) 100%);
        }

        .cost-visual__content {
            position: relative;
            z-index: 1;

            height: 100%;
            padding: 26px;

            display: flex;
            flex-direction: column;
            justify-content: flex-end;

            color: #fff;
        }

        .cost-visual__eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 8px;

            margin-bottom: 8px;

            color: #BFDBF7;
            font-family: var(--font-display);
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .07em;
            line-height: 1.3;
            text-transform: uppercase;
        }

        .cost-visual__eyebrow::before {
            content: "";

            width: 7px;
            height: 7px;
            flex: 0 0 7px;

            border-radius: 50%;
            background: var(--red);
            box-shadow: 0 0 0 4px rgba(226, 35, 26, .25);
        }

        .cost-visual h3 {
            margin: 0 0 7px;

            color: #fff;
            font-family: var(--font-display);
            font-size: 20px;
            line-height: 1.3;
        }

        .cost-visual p {
            max-width: 48ch;
            margin: 0;

            color: #DCE9F7;
            font-family: var(--font-display);
            font-size: 13.5px;
            line-height: 1.58;
        }


        /* =========================================================
   RIGHT CONTENT
========================================================= */

        .cost-right {
            display: flex;
            flex-direction: column;
            gap: 16px;
        }

        .cost-right__head p {
            max-width: 58ch;
            margin: 0;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 14px;
            line-height: 1.65;
        }


        /* =========================================================
   FACTOR CARDS
========================================================= */

        .cost-factors {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 11px;
        }

        .cost-factor {
            display: flex;
            align-items: flex-start;
            gap: 12px;

            min-height: 88px;
            padding: 14px;

            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius);

            transition:
                transform .2s ease,
                box-shadow .2s ease,
                border-color .2s ease;
        }

        .cost-factor:hover {
            transform: translateY(-2px);
            box-shadow: var(--shadow-sm);
            border-color: rgba(27, 95, 174, .22);
        }

        .cost-factor__icon {
            width: 39px;
            height: 39px;
            flex: 0 0 39px;

            border-radius: 11px;
            background: var(--blue-tint);

            display: flex;
            align-items: center;
            justify-content: center;
        }

        .cost-factor__icon svg {
            width: 19px;
            height: 19px;

            stroke: var(--blue);
            stroke-width: 1.9;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .cost-factor strong {
            display: block;
            margin-bottom: 3px;

            color: var(--ink);
            font-family: var(--font-display);
            font-size: 13.5px;
            line-height: 1.35;
            font-weight: 650;
        }

        .cost-factor span {
            display: block;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 12.5px;
            line-height: 1.5;
        }


        /* =========================================================
   BOTTOM CTA
========================================================= */

        .cost-note {
            display: flex;
            align-items: center;
            gap: 17px;
            flex-wrap: wrap;

            padding: 18px 20px;

            background: linear-gradient(120deg,
                    var(--blue-deep),
                    var(--blue));

            border-radius: var(--radius);

            color: #fff;
        }

        .cost-note p {


            margin: 0;

            color: #DCE9F7;
            font-family: var(--font-display);
            font-size: 13px;
            line-height: 1.58;
        }

        .cost-note strong {
            color: #fff;
        }

        .cost-note .btn {
            flex: 0 0 auto;
        }


        /* =========================================================
   TABLET
========================================================= */

        @media (max-width: 980px) {

            .cost-section>.wrap>.head-l {
                margin-bottom: 28px;
            }

            .cost-grid {
                grid-template-columns: 1fr;
                gap: 28px;
            }

            .cost-visual {
                min-height: 300px;
            }

            .cost-visual__content {
                padding: 24px;
            }

            .cost-right {
                max-width: 800px;
                width: 100%;
                margin: 0 auto;
            }
        }


        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width: 640px) {

            .cost-section>.wrap>.head-l {
                margin-bottom: 24px;
                padding: 0 4px;
            }

            .cost-section>.wrap>.head-l h2 {
                font-size: 25px;
                line-height: 1.24;
            }

            .cost-section>.wrap>.head-l .eyebrow {
                margin-bottom: 10px;
            }


            /* IMAGE */

            .cost-grid {
                gap: 22px;
            }

            .cost-visual {
                min-height: 235px;
                border-radius: 16px;
            }

            .cost-note p {


                margin: 0;

                color: #DCE9F7;
                font-family: var(--font-display);
                font-size: 13px;
                line-height: 1.58;
            }

            .cost-visual__content {
                padding: 20px;
            }

            .cost-visual__eyebrow {
                font-size: 10.5px;
                margin-bottom: 7px;
            }

            .cost-visual h3 {
                font-size: 18px;
                line-height: 1.32;
            }

            .cost-visual p {
                font-size: 13px;
                line-height: 1.55;
            }


            /* RIGHT */

            .cost-right {
                gap: 14px;
            }

            .cost-right__head p {
                font-size: 13.5px;
                line-height: 1.65;
            }

            .cost-factors {
                grid-template-columns: 1fr;
                gap: 9px;
            }

            .cost-factor {
                min-height: auto;
                padding: 13px;
                gap: 11px;
            }

            .cost-factor__icon {
                width: 38px;
                height: 38px;
                flex-basis: 38px;
            }

            .cost-factor strong {
                font-size: 13.5px;
            }

            .cost-factor span {
                font-size: 12.5px;
                line-height: 1.5;
            }


            /* CTA */

            .cost-note {
                flex-direction: column;
                align-items: flex-start;
                gap: 13px;
                padding: 17px;
            }

            .cost-note p {
                font-size: 13px;
                line-height: 1.58;
            }

            .cost-note .btn {
                width: 100%;
                justify-content: center;
            }
        }


        /* =========================================================
   SMALL MOBILE
========================================================= */

        @media (max-width: 480px) {

            .cost-section>.wrap>.head-l h2 {
                font-size: 24px;
            }

            .cost-visual {
                min-height: 220px;
            }

            .cost-visual__content {
                padding: 18px;
            }

            .cost-visual h3 {
                font-size: 17.5px;
            }

            .cost-visual p {
                font-size: 12.5px;
            }
        }


        /* =========================================================
   VERY SMALL MOBILE
========================================================= */

        @media (max-width: 360px) {

            .cost-section>.wrap>.head-l h2 {
                font-size: 23px;
            }

            .cost-visual {
                min-height: 205px;
            }

            .cost-factor {
                padding: 12px;
            }

            .cost-note {
                padding: 15px;
            }

        }

        /* =========================================================
   COST SECTION — REDUCE ONLY TOP SPACE
========================================================= */

        .cost-section {
            padding-top: 40px;
        }


        /* TABLET */
        @media (max-width: 980px) {
            .cost-section {
                padding-top: 30px;
            }
        }


        /* MOBILE */
        @media (max-width: 640px) {
            .cost-section {
                padding-top: 26px;
            }
        }


        /* SMALL MOBILE */
        @media (max-width: 480px) {
            .cost-section {
                padding-top: 24px;
            }
        }


        /* VERY SMALL MOBILE */
        @media (max-width: 360px) {
            .cost-section {
                padding-top: 22px;
            }
        }

        /* =========================================================
           NUMBERED "WHY SHOULD YOU CHOOSE" CARDS
        ========================================================= */
        .why-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: var(--gap);
        }

        .why-card {
            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius);
            padding: 24px;
            transition: transform .2s ease, box-shadow .2s ease;
        }

        .why-card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-sm);
        }

        .why-card h3 {
            font-size: 17px;
            margin-bottom: 7px;
        }

        .why-card p {
            font-size: 14.5px;
            margin: 0;
            line-height: 1.55;
        }

        .why-card .num {
            font-family: var(--font-display);
            font-weight: 700;
            font-size: 13px;
            color: var(--blue);
            letter-spacing: .04em;
            display: block;
            margin-bottom: 10px;
        }

        @media (max-width: 980px) {
            .why-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 640px) {
            .why-grid {
                grid-template-columns: 1fr;
            }
        }

        .area-label {
            margin-top: 34px;
            text-align: center;
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 12.5px;
            letter-spacing: .04em;
            text-transform: uppercase;
            color: var(--ink-soft);
        }

        .tagcloud {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            justify-content: center;
            margin-top: 14px;
        }

        .tagcloud a {
            font-size: 13.5px;
            color: var(--blue);
            background: var(--white);
            border: 1px solid var(--mist);
            padding: 8px 15px;
            border-radius: 999px;
            text-decoration: none;
            transition: border-color .2s ease, color .2s ease, transform .2s ease;
        }

        .tagcloud a:hover {
            border-color: var(--blue);
            color: var(--blue-deep);
            transform: translateY(-2px);
        }

        /* =========================================================
   PROCESS — "HOW DOES IT WORK"
   Clean, readable + compact section spacing
========================================================= */

        .process-section {
            position: relative;
            overflow: hidden;

            /* Same existing theme */
            background:
                radial-gradient(circle at 90% 10%,
                    rgba(27, 95, 174, .06),
                    transparent 32%),
                var(--cloud);

            /* Reduced section spacing */
            padding-top: 40px;
            padding-bottom: 40px;
        }

        .steps {
            position: relative;

            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));

            gap: var(--gap);
            margin-top: 12px;
        }

        .step {
            position: relative;
            z-index: 1;

            display: flex;
            flex-direction: column;

            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius-lg);

            overflow: hidden;
            box-shadow: var(--shadow-sm);

            transition:
                transform .3s ease,
                box-shadow .3s ease,
                border-color .3s ease;
        }

        .step:hover {
            transform: translateY(-6px);
            border-color: rgba(27, 95, 174, .3);
            box-shadow: var(--shadow-md);
        }

        .step__media {
            position: relative;
            height: 145px;
            overflow: hidden;
        }

        .step__media img {
            width: 100%;
            height: 100%;
            object-fit: cover;

            transition: transform .5s ease;
        }

        .step:hover .step__media img {
            transform: scale(1.05);
        }

        .step__media::after {
            content: "";
            position: absolute;
            inset: 0;

            background:
                linear-gradient(0deg,
                    rgba(11, 37, 69, .32),
                    transparent 55%);
        }

        .step__body {
            padding: 19px 20px 21px;

            flex: 1;

            display: flex;
            flex-direction: column;
        }

        .step h3 {
            font-size: 17px;
            line-height: 1.32;

            margin: 0 0 7px;
        }

        .step p {
            font-size: 13.5px;
            line-height: 1.58;

            margin: 0;
            flex: 1;
        }


        /* =========================================================
   PROCESS RESPONSIVE
========================================================= */

        @media (max-width: 1100px) {

            .process-section {
                padding-top: 40px;
                padding-bottom: 40px;
            }

            .steps {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 16px;
            }
        }


        @media (max-width: 640px) {

            .process-section {
                padding-top: 34px;
                padding-bottom: 34px;
            }

            .steps {
                grid-template-columns: 1fr;
                gap: 13px;
                margin-top: 8px;
            }

            .step__media {
                height: 175px;
            }

            .step__body {
                padding: 18px;
            }

            .step h3 {
                font-size: 16.5px;
            }

            .step p {
                font-size: 13.5px;
                line-height: 1.58;
            }
        }


        /* =========================================================
   PREPARATION
   Same UI + reduced top/bottom spacing
========================================================= */

        .prep-section {
            position: relative;
            overflow: hidden;

            background: var(--cloud);

            /* Reduced section spacing */
            padding-top: 40px;
            padding-bottom: 40px;
        }

        .prep-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));

            gap: var(--gap);
        }

        .prep-card {
            background: var(--white);

            border: 1px solid var(--mist);
            border-radius: var(--radius);

            overflow: hidden;

            display: flex;
            flex-direction: column;

            box-shadow: var(--shadow-sm);

            transition:
                transform .25s ease,
                box-shadow .25s ease,
                border-color .25s ease;
        }

        .prep-card:hover {
            transform: translateY(-5px);
            border-color: rgba(27, 95, 174, .22);
            box-shadow: var(--shadow-md);
        }

        .prep-media {
            height: 155px;
            overflow: hidden;
        }

        .prep-media img {
            width: 100%;
            height: 100%;

            object-fit: cover;

            transition: transform .5s ease;
        }

        .prep-card:hover .prep-media img {
            transform: scale(1.05);
        }

        .prep-card__body {
            padding: 22px 24px;
        }

        .prep-card__top {
            display: flex;
            align-items: center;

            gap: 12px;
            margin-bottom: 15px;
        }

        .prep-icon {
            width: 42px;
            height: 42px;
            flex: 0 0 42px;

            border-radius: 12px;

            display: flex;
            align-items: center;
            justify-content: center;

            background: var(--blue-tint);
            color: var(--blue);
        }

        .prep-icon svg {
            width: 21px;
            height: 21px;

            stroke: var(--blue);
            stroke-width: 1.8;

            fill: none;

            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .prep-card:last-child .prep-icon {
            background: var(--red-tint);
        }

        .prep-card:last-child .prep-icon svg {
            stroke: var(--red);
        }

        .prep-card__tag {
            display: block;

            margin-bottom: 2px;

            font-family: var(--font-display);
            font-size: 10.5px;
            font-weight: 600;

            letter-spacing: .05em;
            text-transform: uppercase;

            color: var(--ink-soft);
        }

        .prep-card h3 {
            font-size: 17px;
            line-height: 1.3;

            margin: 0;
        }

        .prep-note {
            margin-top: 15px;
            padding-top: 14px;

            border-top: 1px dashed var(--mist);

            font-size: 13.5px;
            line-height: 1.58;

            color: var(--ink-soft);
        }


        /* =========================================================
   PREPARATION RESPONSIVE
========================================================= */

        @media (max-width: 860px) {

            .prep-section {
                padding-top: 38px;
                padding-bottom: 38px;
            }

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


        @media (max-width: 640px) {

            .prep-section {
                padding-top: 34px;
                padding-bottom: 34px;
            }

            .prep-card {
                border-radius: 16px;
            }

            .prep-media {
                height: 220px;
            }

            .prep-card__body {
                padding: 20px;
            }

            .prep-card__top {
                gap: 11px;
                margin-bottom: 14px;
            }

            .prep-icon {
                width: 40px;
                height: 40px;
                flex-basis: 40px;
            }

            .prep-card h3 {
                font-size: 16.5px;
            }

            .prep-note {
                font-size: 13px;
                line-height: 1.55;
            }
        }


        /* =========================================================
   ACCESSIBILITY
========================================================= */

        @media (prefers-reduced-motion: reduce) {

            .step,
            .step__media img,
            .prep-card,
            .prep-media img {
                transition: none;
            }
        }

        /* =========================================================
           PET vs CT COMPARE
        ========================================================= */
        .pet-ct-compare {
            position: relative;
            display: grid;
            grid-template-columns: minmax(0, 1fr) 66px minmax(0, 1fr);
            align-items: stretch;
            max-width: 1050px;
            margin: 0 auto;
        }

        .compare-card {
            position: relative;
            padding: 30px;
            border-radius: var(--radius-lg);
            border: 1px solid var(--mist);
            background: var(--white);
            box-shadow: var(--shadow-sm);
            transition: transform .25s ease, box-shadow .25s ease;
        }

        .compare-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .compare-card--pet {
            border-top: 4px solid var(--red);
        }

        .compare-card--ct {
            border-top: 4px solid var(--blue);
        }

        .compare-card__header {
            display: flex;
            align-items: center;
            gap: 16px;
        }

        .compare-card__icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 54px;
            height: 54px;
            flex: 0 0 54px;
            border-radius: 15px;
        }

        .compare-card--pet .compare-card__icon {
            background: var(--red-tint);
            color: var(--red);
        }

        .compare-card--ct .compare-card__icon {
            background: var(--blue-tint);
            color: var(--blue);
        }

        .compare-card__icon svg {
            width: 26px;
            height: 26px;
            stroke: currentColor;
            stroke-width: 1.7;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .compare-card__eyebrow {
            display: block;
            margin-bottom: 4px;
            color: var(--ink-faint);
            font-family: var(--font-display);
            font-size: 10.5px;
            font-weight: 700;
            letter-spacing: .1em;
        }

        .compare-card h3 {
            margin: 0;
            font-size: 24px;
        }

        .compare-card__description {
            min-height: 48px;
            margin: 22px 0 20px;
            padding-bottom: 18px;
            border-bottom: 1px solid var(--mist);
            font-size: 14.5px;
            line-height: 1.7;
            color: var(--ink-soft);
        }

        .compare-card__features {
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

        .compare-feature {
            display: flex;
            align-items: flex-start;
            gap: 11px;
            color: var(--ink);
            font-size: 14px;
            line-height: 1.5;
            font-weight: 500;
        }

        .compare-feature__check {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 20px;
            height: 20px;
            flex: 0 0 20px;
            margin-top: 1px;
            border-radius: 50%;
            font-size: 11px;
            font-weight: 700;
        }

        .compare-card--pet .compare-feature__check {
            background: var(--red-tint);
            color: var(--red);
        }

        .compare-card--ct .compare-feature__check {
            background: var(--blue-tint);
            color: var(--blue);
        }

        .compare-vs {
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            z-index: 3;
        }

        .compare-vs::before,
        .compare-vs::after {
            content: "";
            position: absolute;
            width: 1px;
            height: 38%;
            background: var(--mist);
        }

        .compare-vs::before {
            top: 0;
        }

        .compare-vs::after {
            bottom: 0;
        }

        .compare-vs span {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: var(--ink);
            color: #fff;
            font-family: var(--font-display);
            font-size: 11px;
            font-weight: 700;
            box-shadow: 0 8px 20px rgba(11, 37, 69, .2);
        }

        .compare-bottom-note {
            display: flex;
            align-items: center;
            gap: 13px;
            max-width: 1050px;
            margin: 26px auto 0;
            padding: 16px 18px;
            border: 1px solid var(--mist);
            border-radius: var(--radius-sm);
            background: var(--cloud);
        }

        .compare-bottom-note__icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 32px;
            height: 32px;
            flex: 0 0 32px;
            color: var(--blue);
        }

        .compare-bottom-note__icon svg {
            width: 22px;
            height: 22px;
            stroke: currentColor;
            stroke-width: 1.7;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .compare-bottom-note p {
            margin: 0;
            color: var(--ink-soft);
            font-size: 14px;
            line-height: 1.6;
        }

        .compare-bottom-note strong {
            color: var(--ink);
        }

        @media (max-width: 800px) {
            .pet-ct-compare {
                grid-template-columns: 1fr;
                gap: 18px;
            }

            .compare-vs {
                height: 42px;
            }

            .compare-vs::before,
            .compare-vs::after {
                display: none;
            }

            .compare-card {
                padding: 25px;
            }
        }

        @media (max-width: 520px) {
            .compare-card {
                padding: 22px;
            }

            .compare-card h3 {
                font-size: 21px;
            }

            .compare-bottom-note {
                align-items: flex-start;
                padding: 14px;
            }
        }

        /* =========================================================
           FAQ
        ========================================================= */
        .faq {
            max-width: 1030px;
            margin: 0 auto;
        }

        .faq details {
            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: 12px;
            padding: 17px 20px;
            margin-bottom: 12px;
            transition: border-color .2s ease;
        }

        .faq details[open] {
            border-color: rgba(27, 95, 174, .28);
        }

        .faq details.faq--featured {
            border-color: rgba(27, 95, 174, .3);
            background: linear-gradient(180deg, var(--blue-tint), transparent);
        }

        .faq summary {
            cursor: pointer;
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 16px;
            list-style: none;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
        }

        .faq summary::-webkit-details-marker {
            display: none;
        }

        .faq summary::after {
            content: "+";
            font-size: 20px;
            color: var(--blue);
            font-weight: 400;
            flex: 0 0 auto;
        }

        .faq details[open] summary::after {
            content: "\2013";
        }

        .faq p {
            margin-top: 12px;
            font-size: 15px;
            line-height: 1.65;
        }

        /* =========================================================
           TRUST BADGES
        ========================================================= */
        .trust-badges {
            position: relative;
            overflow: hidden;
        }

        .trust-badges::before {
            content: "";
            position: absolute;
            width: 320px;
            height: 320px;
            right: -170px;
            top: -150px;
            border-radius: 50%;
            background: rgba(27, 95, 174, .045);
            pointer-events: none;
        }

        .trust-badges ul {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: var(--gap-sm);
            list-style: none;
            position: relative;
            z-index: 1;
        }

        .trust-badges li {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 14px;
            padding: 22px 18px;
            background: var(--cloud);
            border: 1px solid var(--mist);
            border-radius: var(--radius);
            color: var(--ink);
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 14px;
            transition: transform .2s ease, box-shadow .2s ease;
        }

        .trust-badges li:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-sm);
        }

        .trust-badges .check-dot {
            flex: 0 0 34px;
            width: 34px;
            height: 34px;
            background-size: 16px;
        }

        @media (max-width: 1100px) {
            .trust-badges ul {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (max-width: 640px) {
            .trust-badges ul {
                grid-template-columns: 1fr;
            }

            .trust-badges li {
                flex-direction: row;
                align-items: center;
                padding: 16px;
            }
        }

        /* =========================================================
           BOOKING + CONTACT
        ========================================================= */
        .book {
            max-width: 780px;
            margin: 0 auto;
        }

        .book-form {
            position: relative;
            overflow: hidden;
            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: var(--radius-lg);
            padding: 40px;
            box-shadow: var(--shadow-lg);
        }

        .book-form::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 4px;
            background: linear-gradient(90deg, var(--blue), var(--red));
        }

        .book-form__head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            margin-bottom: 26px;
            flex-wrap: wrap;
        }

        .book-form__head h3 {
            font-size: 20px;
            margin: 0;
        }

        .book-form__badge {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-family: var(--font-display);
            font-size: 11.5px;
            font-weight: 600;
            color: var(--blue);
            background: var(--blue-tint);
            border: 1px solid rgba(27, 95, 174, .16);
            padding: 6px 13px;
            border-radius: 999px;
        }

        .book-form__badge::before {
            content: "";
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #25D366;
        }

        .field-row {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
        }

        .field {
            margin-bottom: 16px;
        }

        .field label {
            display: block;
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 12px;
            letter-spacing: .03em;
            color: var(--ink-soft);
            margin-bottom: 7px;
            text-transform: uppercase;
        }

        .field label .optional {
            text-transform: none;
            font-weight: 500;
            color: var(--ink-faint);
            letter-spacing: 0;
        }

        .field input,
        .field select,
        .field textarea {
            width: 100%;
            padding: 13px 14px;
            border-radius: 10px;
            border: 1.5px solid var(--mist);
            font-family: var(--font-body);
            font-size: 15px;
            background: var(--cloud);
            color: var(--ink);
            transition: border-color .15s ease, box-shadow .15s ease;
        }

        .field select {
            appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234F6377' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 14px center;
            background-size: 16px;
            padding-right: 40px;
        }

        .field textarea {
            resize: vertical;
            min-height: 96px;
            font-family: var(--font-body);
        }

        .field input:focus,
        .field select:focus,
        .field textarea:focus {
            outline: none;
            border-color: var(--blue);
            box-shadow: 0 0 0 3px var(--blue-tint);
        }

        .book-form .btn {
            width: 100%;
            margin-top: 8px;
        }

        .book-note {
            display: flex;
            align-items: flex-start;
            gap: 9px;
            font-size: 13px;
            color: var(--ink-soft);
            margin-top: 16px;
            line-height: 1.55;
        }

        .book-note svg {
            flex: 0 0 16px;
            width: 16px;
            height: 16px;
            margin-top: 2px;
            stroke: var(--blue);
            stroke-width: 2;
            fill: none;
        }

        .contact-strip {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 12px;
            margin-top: 24px;
        }

        .contact-strip a {
            display: inline-flex;
            align-items: center;
            gap: 9px;
            padding: 11px 18px;
            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: 999px;
            font-family: var(--font-display);
            font-size: 13.5px;
            font-weight: 600;
            color: var(--ink);
            text-decoration: none;
            transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
        }

        .contact-strip a:hover {
            transform: translateY(-2px);
            border-color: rgba(27, 95, 174, .3);
            box-shadow: var(--shadow-sm);
            color: var(--blue);
        }

        .contact-strip svg {
            width: 16px;
            height: 16px;
            stroke: var(--blue);
            stroke-width: 2;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        @media (max-width: 640px) {
            .book-form {
                padding: 26px 22px;
                border-radius: var(--radius);
            }

            .field-row {
                grid-template-columns: 1fr;
                gap: 0;
            }

            .book-form__head {
                flex-direction: column;
                align-items: flex-start;
                gap: 10px;
            }
        }

        /* =========================================================
           FOOTER
        ========================================================= */
        footer {
            background: var(--blue-deep);
            color: #EAF2FC;
            padding: 60px 0 0;
            margin-top: 8px;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 1.3fr 1fr 1fr 1.1fr;
            gap: 36px;
            padding-bottom: 40px;
            border-bottom: 1px solid rgba(255, 255, 255, .14);
        }

        .footer-brand {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 14px;
        }

        .footer-brand img {
            height: 34px;
            width: auto;
            border-radius: 6px;
            background: #fff;
            padding: 3px;
        }

        .footer-brand strong {
            font-family: var(--font-display);
            font-size: 17px;
            color: #fff;
        }

        .footer-col p {
            color: #D6E6F9;
            font-size: 14.5px;
            line-height: 1.65;
            margin: 0;
        }

        .footer-col h4 {
            font-family: var(--font-display);
            font-size: 12px;
            letter-spacing: .05em;
            text-transform: uppercase;
            color: #9DC1E8;
            margin: 0 0 16px;
            font-weight: 500;
        }

        .footer-col ul {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 11px;
        }

        .footer-col ul a {
            color: #E4F0FC;
            text-decoration: none;
            font-size: 14.5px;
        }

        .footer-col ul a:hover {
            color: #fff;
            text-decoration: underline;
        }

        .footer-col address {
            font-style: normal;
            color: #D6E6F9;
            font-size: 14.5px;
            line-height: 1.65;
            margin: 0 0 12px;
        }

        .footer-bottom {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
            padding: 22px 0;
        }

        .footer-bottom p {
            margin: 0;
            font-size: 13px;
            color: #AFCBE9;
        }

        @media (max-width: 980px) {
            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }
        }

        @media (max-width: 640px) {
            .footer-grid {
                grid-template-columns: 1fr;
                gap: 28px;
            }

            .footer-bottom {
                flex-direction: column;
                align-items: flex-start;
            }
        }

        /* =========================================================
           FLOATING UI (back-to-top / call / whatsapp / mobile bar)
        ========================================================= */
        .to-top {
            position: fixed;
            right: 20px;
            bottom: 136px;
            z-index: 55;
            width: 46px;
            height: 46px;
            border-radius: 50%;
            background: var(--blue-deep);
            color: #fff;
            border: none;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: 0 10px 24px -10px rgba(11, 37, 69, .5);
            opacity: 0;
            visibility: hidden;
            transform: translateY(10px);
            transition: opacity .25s ease, transform .25s ease, visibility .25s, background .2s ease;
        }

        .to-top.is-visible {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .to-top:hover {
            background: var(--blue);
        }

        .float-stack {
            position: fixed;
            right: 20px;
            bottom: 20px;
            z-index: 55;
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

        .float-btn {
            width: 46px;
            height: 46px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            box-shadow: 0 10px 24px -10px rgba(11, 37, 69, .5);
            transition: transform .15s ease;
            text-decoration: none;
        }

        .float-btn:hover {
            transform: translateY(-2px);
        }

        .float-btn--call {
            background: #F2A93C;
        }

        .float-btn--whatsapp {
            background: #25D366;
        }

        .mobile-call {
            display: none;
            position: fixed;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 60;
            background: #fff;
            border-top: 1px solid var(--mist);
            padding: 10px 16px;
            box-shadow: 0 -8px 20px -12px rgba(11, 37, 69, .25);
        }

        .mobile-call .wrap {
            display: flex;
            gap: 10px;
            padding: 0;
        }

        .mobile-call .btn {
            flex: 1;
        }

        @media (max-width: 640px) {
            body {
                padding-bottom: 70px;
            }

            .float-stack {
                right: 16px;
                bottom: 76px;
            }

            .float-btn--call {
                display: none;
            }

            .to-top {
                right: 16px;
                bottom: 134px;
                width: 42px;
                height: 42px;
            }

            .mobile-call {
                display: block;
            }
        }

        /* GENERIC SECTION PADDING TRIM ON MOBILE */
        @media (max-width: 640px) {
            html {
                font-size: 16px;
            }




            .head-c {
                margin-bottom: 30px;
            }
        }

        /* PET Scan Services - Larger Images */
        .svc-media {
            height: 300px;
            /* increase from current height */
            overflow: hidden;
            position: relative;
            border-radius: 18px 18px 0 0;
        }

        .svc-media img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            object-position: center;
        }

        /* Tablet */
        @media (max-width: 900px) {
            .svc-media {
                height: 260px;
            }
        }

        /* Mobile */
        @media (max-width: 600px) {
            .svc-media {
                height: 230px;
            }
        }

        /* CONDITIONS - 4 CARDS IN ONE ROW */
        #conditions .svc-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 24px;
            align-items: stretch;
        }

        #conditions .svc-card {
            width: 100%;
            min-width: 0;
        }

        /* Better image height */
        #conditions .svc-media {
            height: 260px;
            overflow: hidden;
        }

        #conditions .svc-media img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        /* Tablet */
        @media (max-width: 1100px) {
            #conditions .svc-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 22px;
            }

            #conditions .svc-media {
                height: 250px;
            }
        }

        /* Mobile */
        @media (max-width: 600px) {
            #conditions .svc-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            #conditions .svc-media {
                height: 230px;
            }
        }

        /* =========================================
   PET SCAN PREPARATION - IMAGE ENHANCEMENT
   ========================================= */

        .prep-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 30px;
            align-items: stretch;
        }

        .prep-card {
            overflow: hidden;
            border-radius: 22px;
        }

        /* Larger & attractive image area */
        .prep-media {
            height: 360px;
            overflow: hidden;
            position: relative;
            background: #f3f6f8;
        }

        .prep-media img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            object-position: center;
            transition: transform 0.5s ease;
        }

        /* Subtle premium hover effect */
        .prep-card:hover .prep-media img {
            transform: scale(1.04);
        }

        /* Soft overlay for better visual depth */
        .prep-media::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom,
                    rgba(0, 0, 0, 0.02),
                    rgba(0, 0, 0, 0.12));
            pointer-events: none;
        }

        /* Card content spacing */
        .prep-card__body {
            padding: 28px;
        }

        .prep-card__top {
            display: flex;
            align-items: flex-start;
            gap: 16px;
            margin-bottom: 22px;
        }

        /* Tablet */
        @media (max-width: 1000px) {
            .prep-grid {
                gap: 24px;
            }

            .prep-media {
                height: 320px;
            }
        }

        /* Mobile */
        @media (max-width: 700px) {
            .prep-grid {
                grid-template-columns: 1fr;
                gap: 24px;
            }

            .prep-media {
                height: 280px;
            }

            .prep-card__body {
                padding: 24px;
            }
        }

        /* Small mobile */
        @media (max-width: 480px) {
            .prep-media {
                height: 250px;
            }

            .prep-card__body {
                padding: 20px;
            }
        }

        /* Appointment Button - Content Width Only */
        .book-form .btn--red {
            width: fit-content;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 15px 26px;
            white-space: nowrap;
            margin-top: 8px;
        }

        /* Mobile */
        @media (max-width: 600px) {
            .book-form .btn--red {
                width: 100%;
                white-space: normal;
                text-align: center;
            }
        }

        /* =========================================================
   MAIN HEADING - REDUCED SIZE
   ========================================================= */

        .hero__content h1 {
            max-width: 600px;

            margin: 0 0 18px;

            font-size: clamp(34px, 3vw, 48px);
            line-height: 1.10;
            letter-spacing: -0.02em;

            font-weight: 800;
        }

        .hero__content h1 em {
            color: #123B6E;
            font-style: normal;
        }


        /* =========================================================
   DESKTOP BANNER - MORE VISIBLE
   ========================================================= */

        .hero::before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: -2;
            pointer-events: none;

            background:
                linear-gradient(90deg,
                    rgba(255, 255, 255, 0.96) 0%,
                    rgba(255, 255, 255, 0.88) 23%,
                    rgba(255, 255, 255, 0.58) 42%,
                    rgba(255, 255, 255, 0.20) 62%,
                    rgba(255, 255, 255, 0.03) 82%,
                    rgba(255, 255, 255, 0) 100%);
        }

        .hero__banner img {
            width: 100%;
            height: 100%;
            display: block;

            object-fit: cover;
            object-position: center right;
        }

        /* =========================================================
   FINAL MOBILE HERO FIX
   IMAGE FIRST → CONTENT IMMEDIATELY AFTER
   ========================================================= */

        @media (max-width: 700px) {

            /* Hero */
            .hero {
                position: relative;
                display: block;
                min-height: 0 !important;
                height: auto !important;
                padding: 0 !important;
                margin: 0 !important;
                overflow: hidden;
                background: #f5f8fb;
            }

            /* Mobile image */
            .hero__banner {
                position: relative !important;
                inset: auto !important;

                display: block !important;

                width: 100% !important;
                height: 270px !important;

                margin: 0 !important;
                padding: 0 !important;

                z-index: 1;
                overflow: hidden;
            }

            .hero__banner img {
                display: block !important;

                width: 100% !important;
                height: 270px !important;

                margin: 0 !important;
                padding: 0 !important;

                object-fit: cover;
                object-position: center center;
            }

            /* Remove all hero overlays */
            .hero::before,
            .hero::after {
                display: none !important;
                content: none !important;
            }

            /* Content wrapper */
            .hero__inner {
                position: relative !important;

                display: block !important;

                width: 100%;

                min-height: 0 !important;
                height: auto !important;

                margin: 0 !important;

                padding: 0 18px !important;

                z-index: 2;
            }

            /* Content starts immediately after image */
            .hero__content {
                display: block;

                width: 100%;
                max-width: none;

                margin: 0 !important;

                padding: 24px 0 35px !important;
            }

            /* Eyebrow */
            .hero__content .eyebrow {
                margin: 0 0 14px !important;
            }

            /* Heading */
            .hero__content h1 {
                margin: 0 0 16px !important;

                font-size: clamp(29px, 8vw, 36px) !important;
                line-height: 1.1 !important;
            }

            /* Paragraph */
            .hero__content .lead {
                margin: 0 0 12px !important;
            }

            .hero__content>p:not(.lead) {
                margin: 0 !important;
            }

            /* CTA */
            .hero__cta {
                margin: 23px 0 0 !important;

                display: grid;
                grid-template-columns: 1fr;
                gap: 10px;
            }

            .hero__cta .btn {
                width: 100%;
                min-height: 51px;
            }

            /* Facts */
            .hero__facts {
                margin: 21px 0 0 !important;

                display: grid;
                grid-template-columns: 1fr;
                gap: 8px;
            }
        }


        /* =========================================================
   SMALL MOBILE
   ========================================================= */

        @media (max-width: 480px) {

            .hero__banner {
                height: 245px !important;
            }

            .hero__banner img {
                height: 245px !important;
            }

            .hero__inner {
                padding: 0 15px !important;
            }

            .hero__content {
                padding: 20px 0 30px !important;
            }

            .hero__content h1 {
                font-size: 29px !important;
            }
        }


        /* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

        @media (max-width: 360px) {

            .hero__banner {
                height: 225px !important;
            }

            .hero__banner img {
                height: 225px !important;
            }

            .hero__content {
                padding-top: 18px !important;
            }

            .hero__content h1 {
                font-size: 27px !important;
            }
        }

        /* =========================================================
   HERO TEXT VISIBILITY - FINAL
   Add this at the END of your CSS
   ========================================================= */

        /* Main heading */
        .hero__content h1 {
            color: #102a43;
            text-shadow: 0 1px 1px rgba(255, 255, 255, 0.35);
        }

        /* Red highlighted heading text */
        .hero__content h1 em {
            color: #123B6E;
            font-style: normal;
            font-weight: 800;
        }

        /* Lead paragraph */
        .hero__content .lead {
            color: #263746;
            font-weight: 500;
            text-shadow: 0 1px 2px rgba(255, 255, 255, 0.45);
        }

        /* Secondary paragraph */
        .hero__content>p:not(.lead) {
            color: #3e4f5d;
            font-weight: 450;
            text-shadow: 0 1px 2px rgba(255, 255, 255, 0.4);
        }

        /* Eyebrow text */
        .hero__content .eyebrow {
            color: #174a73;
            font-weight: 750;
        }

        /* CTA text */
        .hero__cta .btn {
            font-weight: 700;
        }

        /* Facts text */
        .hero__facts>div {
            color: #243746;
            font-weight: 650;
        }

        @media (min-width: 701px) {
            .hero__content {
                position: relative;
            }

            .hero__content::before {
                content: "";
                position: absolute;
                left: -35px;
                top: 50%;
                width: 720px;
                height: 560px;
                transform: translateY(-50%);
                z-index: -1;
                pointer-events: none;

                background: radial-gradient(ellipse,
                        rgba(255, 255, 255, 0.72) 0%,
                        rgba(255, 255, 255, 0.38) 48%,
                        rgba(255, 255, 255, 0) 75%);
            }
        }

        /* =========================================================
   SECTION ALT
   Same background — layout refinement only
========================================================= */

        .section--alt {
            background: var(--white);
        }


        /* =========================================================
   WHY SHOULD YOU CHOOSE
========================================================= */

        #why-should-choose {
            padding-top: 40px;
            padding-bottom: 52px;
        }


        /* ---------------------------------------------------------
   SECTION HEADING
--------------------------------------------------------- */

        #why-should-choose .head-c {
            max-width: 720px;
            margin: 0 auto 30px;
            text-align: center;
        }

        #why-should-choose .head-c h2 {
            max-width: 680px;
            margin: 0 auto;

            font-size: clamp(27px, 2.7vw, 35px);
            line-height: 1.22;
            letter-spacing: -.015em;
        }

        #why-should-choose .head-c .eyebrow {
            margin-bottom: 11px;
        }


        /* =========================================================
   WHY CARDS
========================================================= */

        #why-should-choose .why-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 16px;
        }

        #why-should-choose .why-card {
            display: flex;
            flex-direction: column;

            min-height: 205px;
            padding: 20px;

            background: var(--white);
            border: 1px solid var(--mist);
            border-radius: 15px;

            transition:
                transform .2s ease,
                box-shadow .2s ease,
                border-color .2s ease;
        }

        #why-should-choose .why-card:hover {
            transform: translateY(-3px);
            box-shadow: var(--shadow-sm);
            border-color: rgba(27, 95, 174, .18);
        }


        /* NUMBER */

        #why-should-choose .why-card .num {
            display: block;

            margin-bottom: 9px;

            color: var(--blue);
            font-family: var(--font-display);
            font-size: 12px;
            font-weight: 700;
            line-height: 1.3;
            letter-spacing: .06em;
        }


        /* TITLE */

        #why-should-choose .why-card h3 {
            margin: 0 0 7px;

            color: var(--ink);
            font-family: var(--font-display);
            font-size: 16px;
            font-weight: 650;
            line-height: 1.35;
        }


        /* DESCRIPTION */

        #why-should-choose .why-card p {
            margin: 0;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 13.5px;
            line-height: 1.58;
        }


        /* =========================================================
   AREA TAGS
========================================================= */

        #why-should-choose .area-label {
            margin: 26px 0 0;

            color: var(--ink-soft);
            font-family: var(--font-display);
            font-size: 12px;
            font-weight: 600;
            line-height: 1.4;
            text-align: center;
        }

        #why-should-choose .tagcloud {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 8px;

            margin-top: 11px;
        }

        #why-should-choose .tagcloud a {
            display: inline-flex;
            align-items: center;
            justify-content: center;

            padding: 7px 13px;

            color: var(--ink-soft);
            background: var(--cloud);
            border: 1px solid var(--mist);
            border-radius: 999px;

            font-family: var(--font-display);
            font-size: 12.5px;
            line-height: 1.3;
            text-decoration: none;

            transition:
                background .2s ease,
                color .2s ease,
                border-color .2s ease;
        }

        #why-should-choose .tagcloud a:hover {
            color: var(--blue);
            border-color: rgba(27, 95, 174, .22);
        }


        /* =========================================================
   TABLET
========================================================= */

        @media (max-width: 980px) {

            #why-should-choose {
                padding-top: 36px;
                padding-bottom: 48px;
            }

            #why-should-choose .why-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 14px;
            }

            #why-should-choose .why-card {
                min-height: 185px;
            }
        }


        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width: 640px) {

            #why-should-choose {
                padding-top: 30px;
                padding-bottom: 40px;
            }

            #why-should-choose .head-c {
                margin-bottom: 24px;
                padding: 0 4px;
            }

            #why-should-choose .head-c h2 {
                font-size: 25px;
                line-height: 1.24;
            }

            #why-should-choose .head-c .eyebrow {
                margin-bottom: 10px;
            }


            /* CARDS */

            #why-should-choose .why-grid {
                grid-template-columns: 1fr;
                gap: 11px;
            }

            #why-should-choose .why-card {
                min-height: auto;
                padding: 18px;
                border-radius: 14px;
            }

            #why-should-choose .why-card .num {
                margin-bottom: 7px;
                font-size: 11.5px;
            }

            #why-should-choose .why-card h3 {
                font-size: 16px;
                line-height: 1.35;
            }

            #why-should-choose .why-card p {
                font-size: 13.5px;
                line-height: 1.58;
            }


            /* AREA */

            #why-should-choose .area-label {
                margin-top: 23px;
                font-size: 12px;
            }

            #why-should-choose .tagcloud {
                gap: 7px;
                margin-top: 10px;
            }

            #why-should-choose .tagcloud a {
                font-size: 12px;
                padding: 7px 12px;
            }
        }


        /* =========================================================
   SMALL MOBILE
========================================================= */

        @media (max-width: 480px) {

            #why-should-choose {
                padding-top: 28px;
                padding-bottom: 36px;
            }

            #why-should-choose .head-c h2 {
                font-size: 24px;
            }

            #why-should-choose .why-card {
                padding: 17px;
            }
        }


        /* =========================================================
   VERY SMALL MOBILE
========================================================= */

        @media (max-width: 360px) {

            #why-should-choose {
                padding-top: 26px;
                padding-bottom: 34px;
            }

            #why-should-choose .head-c h2 {
                font-size: 23px;
            }
        }


        /* =========================================================
   FINAL MOBILE REFINEMENT
   AFTER HERO / BANNER + ALL FOLLOWING SECTIONS
   Keeps desktop-like section rhythm on mobile
========================================================= */

        @media (max-width: 640px) {

            /* -----------------------------------------------------
       GLOBAL MOBILE SECTION SPACING
       Do NOT make sections too compressed
    ----------------------------------------------------- */

            .section,
            .section--tight {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            /* -----------------------------------------------------
       FIRST SECTION AFTER HERO / BANNER
       Gives proper breathing room after image
    ----------------------------------------------------- */

            .hero+.section,
            .hero+section {
                padding-top: 48px !important;
            }

            /* -----------------------------------------------------
       COMMON SECTION HEADINGS
       Consistent readable sizing
    ----------------------------------------------------- */

            .head-c,
            .head-l {
                margin-bottom: 30px !important;
            }

            .head-c h2,
            .head-l h2 {
                font-size: 25px !important;
                line-height: 1.25 !important;
                letter-spacing: -.012em !important;
            }

            .head-c p,
            .head-l p {
                font-size: 14px !important;
                line-height: 1.65 !important;
            }

            .eyebrow {
                font-size: 11.5px !important;
                padding: 7px 13px !important;
                margin-bottom: 11px !important;
            }


            /* =====================================================
       ABOUT PET CT
    ===================================================== */

            .pet-about {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .pet-about__grid {
                grid-template-columns: 1fr !important;
                gap: 28px !important;
            }

            .pet-about__content {
                max-width: 100% !important;
            }

            .pet-about__content .head-l {
                margin-bottom: 16px !important;
                text-align: center !important;
            }

            .pet-about__content .head-l h2 {
                max-width: 100% !important;
                font-size: 25px !important;
                line-height: 1.25 !important;
                margin-left: auto !important;
                margin-right: auto !important;
            }

            .pet-about__lead {
                font-size: 14.5px !important;
                line-height: 1.65 !important;
            }

            .pet-about__content>p:not(.pet-about__lead) {
                font-size: 13.5px !important;
                line-height: 1.65 !important;
            }

            .pet-about__focus {
                margin-top: 20px !important;
                padding: 15px !important;
            }

            .pet-about__points {
                grid-template-columns: 1fr !important;
                gap: 8px !important;
            }

            .pet-about__point {
                min-height: 48px !important;
                padding: 9px 10px !important;
            }

            .pet-about__point strong {
                font-size: 13px !important;
            }

            .pet-about__visual {
                gap: 11px !important;
            }

            .pet-about__image-card img {
                height: 230px !important;
            }

            .pet-about__mini {
                padding: 14px !important;
            }


            /* =====================================================
       SERVICES
    ===================================================== */

            .services-section {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .services-section .head-c {
                margin-bottom: 28px !important;
            }

            .services-section .head-c h2 {
                font-size: 25px !important;
                line-height: 1.25 !important;
            }

            .svc-grid,
            #conditions .svc-grid {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
            }

            .svc-card {
                border-radius: 16px !important;
            }

            /* Keep your larger mobile images */
            .svc-media,
            #conditions .svc-media {
                height: 230px !important;
            }

            .svc-body {
                padding: 18px 18px 20px !important;
            }

            .svc-card h3 {
                font-size: 17px !important;
            }

            .svc-desc {
                font-size: 13.5px !important;
                line-height: 1.6 !important;
            }

            .svc-card .dotlist li {
                font-size: 13px !important;
            }


            /* =====================================================
       COST
    ===================================================== */

            .cost-section {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .cost-section>.wrap>.head-l {
                margin-bottom: 28px !important;
            }

            .cost-section>.wrap>.head-l h2 {
                font-size: 25px !important;
                line-height: 1.25 !important;
            }

            .cost-grid {
                gap: 24px !important;
            }

            .cost-visual {
                min-height: 250px !important;
            }

            .cost-factors {
                gap: 9px !important;
            }


            /* =====================================================
       WHY SHOULD YOU CHOOSE
    ===================================================== */

            #why-should-choose {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            #why-should-choose .head-c {
                margin-bottom: 28px !important;
            }

            #why-should-choose .head-c h2 {
                font-size: 25px !important;
                line-height: 1.25 !important;
            }

            #why-should-choose .why-grid {
                grid-template-columns: 1fr !important;
                gap: 12px !important;
            }

            #why-should-choose .why-card {
                min-height: auto !important;
                padding: 18px !important;
            }

            #why-should-choose .why-card h3 {
                font-size: 16px !important;
            }

            #why-should-choose .why-card p {
                font-size: 13.5px !important;
                line-height: 1.6 !important;
            }

            #why-should-choose .area-label {
                margin-top: 26px !important;
            }


            /* =====================================================
       PROCESS / HOW IT WORKS
    ===================================================== */

            .process-section {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .process-section .head-c,
            .process-section .section__head {
                margin-bottom: 28px !important;
            }

            .steps {
                grid-template-columns: 1fr !important;
                gap: 14px !important;
                margin-top: 0 !important;
            }

            .step__media {
                height: 190px !important;
            }

            .step__body {
                padding: 18px 19px 20px !important;
            }

            .step h3 {
                font-size: 16.5px !important;
            }

            .step p {
                font-size: 13.5px !important;
                line-height: 1.6 !important;
            }


            /* =====================================================
       PREPARATION
    ===================================================== */

            .prep-section {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .prep-grid {
                grid-template-columns: 1fr !important;
                gap: 18px !important;
            }

            .prep-media {
                height: 250px !important;
            }

            .prep-card__body {
                padding: 20px !important;
            }

            .prep-card__top {
                margin-bottom: 15px !important;
            }

            .prep-card h3 {
                font-size: 16.5px !important;
            }

            .prep-note {
                font-size: 13px !important;
                line-height: 1.6 !important;
            }


            /* =====================================================
       PET VS CT
    ===================================================== */

            .pet-ct-compare {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
            }

            .compare-card {
                padding: 20px !important;
            }

            .compare-card h3 {
                font-size: 21px !important;
            }

            .compare-card__description {
                font-size: 14px !important;
                line-height: 1.65 !important;
            }

            .compare-feature {
                font-size: 13.5px !important;
            }

            .compare-bottom-note {
                margin-top: 20px !important;
                padding: 14px !important;
            }

            .compare-bottom-note p {
                font-size: 13.5px !important;
            }


            /* =====================================================
       FAQ
    ===================================================== */

            .faq {
                width: 100% !important;
            }

            .faq details {
                padding: 15px 16px !important;
                margin-bottom: 10px !important;
            }

            .faq summary {
                font-size: 15px !important;
                line-height: 1.45 !important;
            }

            .faq p {
                font-size: 14px !important;
                line-height: 1.65 !important;
            }


            /* =====================================================
       TRUST BADGES
    ===================================================== */

            .trust-badges {
                padding-top: 48px !important;
                padding-bottom: 48px !important;
            }

            .trust-badges ul {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }

            .trust-badges li {
                padding: 15px !important;
                font-size: 13.5px !important;
            }


            /* =====================================================
       BOOKING
    ===================================================== */

            .book-form {
                padding: 24px 20px !important;
            }

            .book-form__head {
                margin-bottom: 22px !important;
            }

            .field-row {
                grid-template-columns: 1fr !important;
                gap: 0 !important;
            }

            .field {
                margin-bottom: 14px !important;
            }

            .field input,
            .field select,
            .field textarea {
                font-size: 14px !important;
                padding: 12px 13px !important;
            }

            .book-form .btn--red {
                width: 100% !important;
                margin-top: 8px !important;
            }


            /* =====================================================
       FOOTER
    ===================================================== */

            footer {
                padding-top: 48px !important;
            }

        }


        /* =========================================================
   SMALL MOBILE — 480px
   Slightly tighter, but still keeps desktop-like rhythm
========================================================= */

        @media (max-width: 480px) {

            .section,
            .section--tight {
                padding-top: 44px !important;
                padding-bottom: 44px !important;
            }

            .hero+.section,
            .hero+section {
                padding-top: 44px !important;
            }

            .head-c,
            .head-l {
                margin-bottom: 26px !important;
            }

            .head-c h2,
            .head-l h2,
            .services-section .head-c h2,
            .cost-section>.wrap>.head-l h2,
            #why-should-choose .head-c h2 {
                font-size: 24px !important;
                line-height: 1.27 !important;
            }

            .pet-about__content .head-l h2 {
                font-size: 24px !important;
            }

            .pet-about__image-card img {
                height: 220px !important;
            }

            .svc-media,
            #conditions .svc-media {
                height: 220px !important;
            }

            .step__media {
                height: 180px !important;
            }

            .prep-media {
                height: 240px !important;
            }

            .cost-visual {
                min-height: 230px !important;
            }
        }


        /* =========================================================
   VERY SMALL MOBILE — 360px
========================================================= */

        @media (max-width: 360px) {

            .section,
            .section--tight {
                padding-top: 40px !important;
                padding-bottom: 40px !important;
            }

            .hero+.section,
            .hero+section {
                padding-top: 40px !important;
            }

            .head-c h2,
            .head-l h2,
            .services-section .head-c h2,
            .cost-section>.wrap>.head-l h2,
            #why-should-choose .head-c h2 {
                font-size: 23px !important;
            }

            .pet-about__content .head-l h2 {
                font-size: 23px !important;
            }

            .pet-about__image-card img {
                height: 205px !important;
            }

            .svc-media,
            #conditions .svc-media {
                height: 205px !important;
            }

            .prep-media {
                height: 225px !important;
            }

            .step__media {
                height: 165px !important;
            }
        }

        /* =========================================================
   FONT SIZE BOOSTER — READABILITY OVERRIDE
   Paste this AFTER your main stylesheet (or link it as a
   second <link> tag right after the existing one).
   Every rule uses !important so it always wins.
========================================================= */

        /* ---------- BASE ---------- */
        html {
            font-size: 18px !important;
        }

        body {
            line-height: 1.7 !important;
        }

        p {
            font-size: 16px !important;
            line-height: 1.7 !important;
        }

        /* ---------- HEADINGS ---------- */
        h2 {
            font-size: clamp(30px, 3.4vw, 40px) !important;
        }

        h3 {
            font-size: 19px !important;
        }

        /* ---------- EYEBROW / LABEL TAGS ---------- */
        .eyebrow {
            font-size: 14.5px !important;
        }

        /* ---------- BUTTONS ---------- */
        .btn {
            font-size: 16.5px !important;
        }

        .btn--sm {
            font-size: 15px !important;
        }

        /* ---------- DOT LISTS (used in many cards) ---------- */
        .dotlist li {
            font-size: 16px !important;
        }

        /* ---------- NAVBAR ---------- */
        .nav__logo-text strong {
            font-size: 19.5px !important;
        }

        .nav__logo-text span {
            font-size: 12.5px !important;
        }

        /* ---------- HERO ---------- */
        .hero h1,
        .hero__content h1 {
            font-size: clamp(38px, 4.2vw, 56px) !important;
        }

        .hero .lead {
            font-size: 18.5px !important;
        }

        .hero__content>p:not(.lead) {
            font-size: 16px !important;
        }

        .hero__facts div {
            font-size: 15.5px !important;
        }

        .hero__status-note {
            font-size: 13px !important;
        }

        /* ---------- WHY CHOOSE / BOOKING CARD ---------- */
        .why-section .head-l h2 {
            font-size: clamp(31px, 3.3vw, 41px) !important;
        }

        .why-list strong {
            font-size: 16.5px !important;
        }

        .why-book h3 {
            font-size: 26px !important;
        }

        .why-book__points li {
            font-size: 15.5px !important;
        }

        .why-book__note {
            font-size: 13px !important;
        }

        /* ---------- ABOUT PET CT ---------- */
        .pet-about__content .head-l h2 {
            font-size: clamp(30px, 3vw, 39px) !important;
        }

        .pet-about__lead {
            font-size: 17.5px !important;
        }

        .pet-about__content>p:not(.pet-about__lead) {
            font-size: 16px !important;
        }

        .pet-about__focus-head strong {
            font-size: 13px !important;
        }

        .pet-about__point strong {
            font-size: 14.5px !important;
        }

        .pet-about__image-overlay strong {
            font-size: 15.5px !important;
        }

        .pet-about__mini strong {
            font-size: 15.5px !important;
        }

        .pet-about__mini span {
            font-size: 14.5px !important;
        }

        /* ---------- SERVICES / CONDITIONS CARDS ---------- */
        .services-section .head-c h2 {
            font-size: clamp(30px, 3vw, 39px) !important;
        }

        .svc-card h3 {
            font-size: 20px !important;
        }

        .svc-desc {
            font-size: 15.5px !important;
        }

        .svc-card .dotlist li {
            font-size: 15px !important;
        }

        .svc-tag {
            font-size: 11.5px !important;
        }

        /* ---------- COST SECTION ---------- */
        .cost-section>.wrap>.head-l h2 {
            font-size: clamp(30px, 3vw, 39px) !important;
        }

        .cost-right__head p {
            font-size: 16px !important;
        }

        .cost-factor strong {
            font-size: 15.5px !important;
        }

        .cost-factor span {
            font-size: 14.5px !important;
        }

        .cost-visual h3 {
            font-size: 22.5px !important;
        }

        .cost-visual p {
            font-size: 15.5px !important;
        }

        .cost-visual__eyebrow {
            font-size: 12.5px !important;
        }

        .cost-note p {
            font-size: 15px !important;
        }

        /* ---------- WHY SHOULD YOU CHOOSE (numbered cards) ---------- */
        #why-should-choose .head-c h2 {
            font-size: clamp(30px, 3vw, 39px) !important;
        }

        #why-should-choose .why-card h3 {
            font-size: 18.5px !important;
        }

        #why-should-choose .why-card p {
            font-size: 15.5px !important;
        }

        #why-should-choose .why-card .num {
            font-size: 13.5px !important;
        }

        #why-should-choose .tagcloud a {
            font-size: 14.5px !important;
        }

        #why-should-choose .area-label {
            font-size: 13.5px !important;
        }

        /* ---------- HOW IT WORKS (process steps) ---------- */
        .step h3 {
            font-size: 19.5px !important;
        }

        .step p {
            font-size: 15.5px !important;
        }

        /* ---------- PREPARATION ---------- */
        .prep-card h3 {
            font-size: 19.5px !important;
        }

        .prep-card__tag {
            font-size: 12px !important;
        }

        .prep-note {
            font-size: 15.5px !important;
        }

        /* ---------- PET vs CT COMPARE ---------- */
        .compare-card h3 {
            font-size: 27px !important;
        }

        .compare-card__eyebrow {
            font-size: 12px !important;
        }

        .compare-card__description {
            font-size: 16.5px !important;
        }

        .compare-feature {
            font-size: 16px !important;
        }

        .compare-bottom-note p {
            font-size: 16px !important;
        }

        /* ---------- FAQ ---------- */
        .faq summary {
            font-size: 18px !important;
        }

        .faq p {
            font-size: 16.5px !important;
        }

        /* ---------- TRUST BADGES ---------- */
        .trust-badges li {
            font-size: 15.5px !important;
        }

        /* ---------- BOOKING FORM ---------- */
        .book-form__head h3 {
            font-size: 23px !important;
        }

        .book-form__badge {
            font-size: 13px !important;
        }

        .field label {
            font-size: 13.5px !important;
        }

        .field input,
        .field select,
        .field textarea {
            font-size: 17px !important;
        }

        .book-note {
            font-size: 14.5px !important;
        }

        .contact-strip a {
            font-size: 15.5px !important;
        }

        /* ---------- FOOTER ---------- */
        .footer-brand strong {
            font-size: 19px !important;
        }

        .footer-col p {
            font-size: 16px !important;
        }

        .footer-col h4 {
            font-size: 13.5px !important;
        }

        .footer-col ul a {
            font-size: 16px !important;
        }

        .footer-col address {
            font-size: 16px !important;
        }

        .footer-bottom p {
            font-size: 14.5px !important;
        }

        /* =========================================================
   TABLET (≤980px)
========================================================= */
        @media (max-width: 980px) {
            html {
                font-size: 17.5px !important;
            }
        }

        /* =========================================================
   MOBILE (≤640px) — this is where most complaints happen
========================================================= */
        @media (max-width: 640px) {
            html {
                font-size: 17px !important;
            }

            body {
                line-height: 1.68 !important;
            }

            p {
                font-size: 15.5px !important;
            }

            .head-c h2,
            .head-l h2 {
                font-size: 27px !important;
                line-height: 1.28 !important;
            }

            .head-c p,
            .head-l p {
                font-size: 15px !important;
            }

            .eyebrow {
                font-size: 13px !important;
            }

            .hero__content h1 {
                font-size: clamp(31px, 8vw, 39px) !important;
            }

            .hero .lead {
                font-size: 16px !important;
            }

            .hero__content>p:not(.lead) {
                font-size: 14.5px !important;
            }

            .hero__facts div {
                font-size: 14.5px !important;
            }

            .why-section .head-l h2 {
                font-size: 29px !important;
            }

            .why-list strong {
                font-size: 15.5px !important;
            }

            .why-book h3 {
                font-size: 23px !important;
            }

            .pet-about__content .head-l h2 {
                font-size: 27px !important;
            }

            .pet-about__lead {
                font-size: 16px !important;
            }

            .pet-about__content>p:not(.pet-about__lead) {
                font-size: 15px !important;
            }

            .services-section .head-c h2 {
                font-size: 27px !important;
            }

            .svc-card h3 {
                font-size: 18.5px !important;
            }

            .svc-desc {
                font-size: 15px !important;
            }

            .svc-card .dotlist li {
                font-size: 14.5px !important;
            }

            .cost-section>.wrap>.head-l h2 {
                font-size: 27px !important;
            }

            .cost-visual h3 {
                font-size: 20px !important;
            }

            .cost-visual p {
                font-size: 14.5px !important;
            }

            .cost-right__head p {
                font-size: 15px !important;
            }

            .cost-factor strong {
                font-size: 15px !important;
            }

            .cost-factor span {
                font-size: 14px !important;
            }

            .cost-note p {
                font-size: 14.5px !important;
            }

            #why-should-choose .head-c h2 {
                font-size: 27px !important;
            }

            #why-should-choose .why-card h3 {
                font-size: 17.5px !important;
            }

            #why-should-choose .why-card p {
                font-size: 15px !important;
            }

            .step h3 {
                font-size: 18px !important;
            }

            .step p {
                font-size: 15px !important;
            }

            .prep-card h3 {
                font-size: 18px !important;
            }

            .prep-note {
                font-size: 14.5px !important;
            }

            .compare-card h3 {
                font-size: 23px !important;
            }

            .compare-card__description {
                font-size: 15.5px !important;
            }

            .compare-feature {
                font-size: 15px !important;
            }

            .compare-bottom-note p {
                font-size: 15px !important;
            }

            .faq summary {
                font-size: 16.5px !important;
            }

            .faq p {
                font-size: 15.5px !important;
            }

            .trust-badges li {
                font-size: 15px !important;
            }

            .book-form__head h3 {
                font-size: 20px !important;
            }

            .field label {
                font-size: 13px !important;
            }

            .field input,
            .field select,
            .field textarea {
                font-size: 16px !important;
            }

            .footer-col p,
            .footer-col ul a,
            .footer-col address {
                font-size: 15px !important;
            }
        }

        /* =========================================================
   SMALL MOBILE (≤480px)
========================================================= */
        @media (max-width: 480px) {

            .head-c h2,
            .head-l h2,
            .services-section .head-c h2,
            .cost-section>.wrap>.head-l h2,
            #why-should-choose .head-c h2 {
                font-size: 26px !important;
            }

            .hero__content h1 {
                font-size: 31px !important;
            }
        }

        /* =========================================================
   VERY SMALL MOBILE (≤360px)
========================================================= */
        @media (max-width: 360px) {

            .head-c h2,
            .head-l h2,
            .services-section .head-c h2,
            .cost-section>.wrap>.head-l h2,
            #why-should-choose .head-c h2 {
                font-size: 25px !important;
            }

            .hero__content h1 {
                font-size: 29px !important;
            }
        }

        /* =========================================================
   FOOTER — CLEAN & RESPONSIVE
========================================================= */

        footer {
            background: #09233f;
            color: #dbe7f2;
            margin-top: 0;
        }

        footer .wrap {
            width: min(100% - 40px, 1440px);
            margin-inline: auto;
        }

        /* =========================================================
   FOOTER GRID
========================================================= */

        .footer-grid {
            display: grid;
            grid-template-columns:
                minmax(230px, 1.35fr) minmax(140px, .8fr) minmax(150px, .9fr) minmax(220px, 1.25fr) minmax(300px, 2fr);

            gap: 42px;
            padding: 60px 0 48px;
            align-items: start;
        }

        /* =========================================================
   FOOTER COLUMNS
========================================================= */

        .footer-col {
            min-width: 0;
        }

        .footer-col h4 {
            margin: 0 0 20px;
            color: #ffffff;
            font-size: 16px;
            font-weight: 700;
            line-height: 1.3;
            letter-spacing: .01em;
        }

        .footer-col p,
        .footer-col address {
            margin: 0;
            color: #b9cad9;
            font-size: 14px;
            line-height: 1.75;
        }

        .footer-col address {
            font-style: normal;
            margin-bottom: 16px;
            max-width: 290px;
        }

        /* =========================================================
   BRAND
========================================================= */

        .footer-brand {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 18px;
        }

        .footer-brand img {
            width: 48px;
            height: 48px;
            object-fit: contain;
            flex: 0 0 48px;
        }

        .footer-brand strong {
            color: #ffffff;
            font-size: 18px;
            font-weight: 700;
            line-height: 1.25;
        }

        .footer-col:first-child>p {
            max-width: 360px;
        }

        /* =========================================================
   FOOTER LINKS
========================================================= */

        .footer-col ul {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .footer-col li {
            margin: 0;
        }

        .footer-col li+li {
            margin-top: 10px;
        }

        .footer-col a {
            color: #b9cad9;
            text-decoration: none;
            font-size: 14px;
            line-height: 1.5;
            transition:
                color .2s ease,
                padding-left .2s ease;
        }

        .footer-col a:hover {
            color: #ffffff;
            padding-left: 4px;
        }

        /* =========================================================
   MAP
========================================================= */

        .footer-map {
            min-width: 0;
        }

        .footer-map h4 {
            margin-bottom: 20px;
        }

        .footer-map-wrap {
            width: 100%;
            height: 205px;
            overflow: hidden;
            border-radius: 14px;
            border: 1px solid rgba(255, 255, 255, .14);
            background: #ffffff;
            box-shadow: 0 10px 30px rgba(0, 0, 0, .16);
        }

        .footer-map-wrap iframe {
            display: block;
            width: 100%;
            height: 100%;
            border: 0;
        }

        /* =========================================================
   FOOTER BOTTOM
========================================================= */

        .footer-bottom {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 20px;

            padding: 20px 0;
            border-top: 1px solid rgba(255, 255, 255, .12);
        }

        .footer-bottom p {
            margin: 0;
            color: #91a8bc;
            font-size: 13px;
            line-height: 1.5;
        }

        .footer-bottom p:last-child {
            text-align: right;
        }

        /* =========================================================
   LARGE TABLET
========================================================= */

        @media (max-width: 1200px) {

            .footer-grid {
                grid-template-columns:
                    1.35fr .85fr .95fr 1.25fr;

                gap: 34px;
            }

            .footer-map {
                grid-column: 1 / -1;
            }

            .footer-map-wrap {
                height: 230px;
            }

            .footer-col:first-child>p {
                max-width: 430px;
            }
        }

        /* =========================================================
   TABLET
========================================================= */

        @media (max-width: 850px) {

            footer .wrap {
                width: min(100% - 32px, 720px);
            }

            .footer-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 36px 28px;
                padding: 48px 0 38px;
            }

            .footer-col:first-child {
                grid-column: 1 / -1;
            }

            .footer-col:first-child>p {
                max-width: 650px;
            }

            .footer-map {
                grid-column: 1 / -1;
            }

            .footer-map-wrap {
                height: 240px;
            }

            .footer-bottom {
                align-items: flex-start;
                flex-direction: column;
                gap: 8px;
            }

            .footer-bottom p:last-child {
                text-align: left;
            }
        }

        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width: 600px) {

            footer .wrap {
                width: min(100% - 28px, 520px);
            }

            .footer-grid {
                grid-template-columns: 1fr;
                gap: 30px;
                padding: 42px 0 32px;
            }

            .footer-col:first-child,
            .footer-map {
                grid-column: auto;
            }

            .footer-brand {
                margin-bottom: 15px;
            }

            .footer-brand img {
                width: 44px;
                height: 44px;
                flex-basis: 44px;
            }

            .footer-brand strong {
                font-size: 17px;
            }

            .footer-col h4 {
                margin-bottom: 14px;
                font-size: 15px;
            }

            .footer-col p,
            .footer-col address,
            .footer-col a {
                font-size: 14px;
            }

            .footer-col li+li {
                margin-top: 9px;
            }

            .footer-map-wrap {
                height: 230px;
                border-radius: 12px;
            }

            .footer-bottom {
                padding: 18px 0;
            }

            .footer-bottom p {
                font-size: 12px;
            }
        }

        /* =========================================================
   SMALL MOBILE
========================================================= */

        @media (max-width: 380px) {

            footer .wrap {
                width: min(100% - 24px, 360px);
            }

            .footer-grid {
                padding-top: 36px;
            }

            .footer-map-wrap {
                height: 210px;
            }
        }

        .nav__logo img {
            height: 75px !important;
            width: auto;
            display: block;
            object-fit: contain;
        }

        @media (max-width: 600px) {
            .nav__logo img {
                height: 52px !important;
            }

            /* =========================================================
   FAQ SECTION — CONSISTENT WITH OTHER SECTIONS
========================================================= */

            .faq-section {
                position: relative;
                overflow: hidden;

                background:
                    radial-gradient(circle at 88% 12%,
                        rgba(27, 95, 174, .055),
                        transparent 30%),
                    #f4f9fd;
            }

            /* Keep same content alignment as other sections */
            .faq-section .wrap {
                width: min(100% - 40px, 1200px);
                margin-inline: auto;
            }

            /* =========================================================
   FAQ HEADER
========================================================= */

            .faq-head {
                max-width: 780px;
                margin: 0 auto 34px;

                text-align: center;
            }

            .faq-head .eyebrow {
                display: inline-flex;
                align-items: center;
                justify-content: center;

                margin-bottom: 12px;
            }

            .faq-head h2 {
                max-width: 760px;

                margin: 0 auto;

                color: var(--ink);

                font-size: clamp(30px, 3.2vw, 42px);
                line-height: 1.18;
                font-weight: 750;

                letter-spacing: -.025em;
            }

            .faq-head .section-intro {
                max-width: 650px;

                margin: 12px auto 0;

                color: var(--ink-soft);

                font-size: 15px;
                line-height: 1.65;
            }


            /* =========================================================
   FAQ LIST
========================================================= */

            .faq {
                width: 100%;
                max-width: 1030px;

                margin: 0 auto;

                display: grid;
                gap: 12px;
            }


            /* =========================================================
   FAQ CARD
========================================================= */

            .faq-item {
                width: 100%;

                overflow: hidden;

                background: #fff;

                border: 1px solid rgba(27, 95, 174, .14);
                border-radius: 14px;

                box-shadow:
                    0 5px 18px rgba(11, 37, 69, .035);

                transition:
                    border-color .2s ease,
                    box-shadow .2s ease,
                    transform .2s ease;
            }

            .faq-item:hover {
                border-color: rgba(27, 95, 174, .25);

                box-shadow:
                    0 9px 25px rgba(11, 37, 69, .065);
            }

            .faq-item[open] {
                border-color: rgba(27, 95, 174, .25);

                box-shadow:
                    0 10px 28px rgba(11, 37, 69, .07);
            }


            /* =========================================================
   FAQ QUESTION
========================================================= */

            .faq-item summary {
                display: grid;

                grid-template-columns: 40px minmax(0, 1fr) 34px;

                align-items: center;

                gap: 14px;

                min-height: 68px;

                padding: 13px 18px;

                cursor: pointer;

                list-style: none;
            }

            .faq-item summary::-webkit-details-marker {
                display: none;
            }

            .faq-item summary::marker {
                display: none;
            }


            /* =========================================================
   NUMBER
========================================================= */

            .faq-number {
                width: 36px;
                height: 36px;

                display: grid;
                place-items: center;

                border-radius: 9px;

                background: rgba(27, 95, 174, .075);

                color: var(--blue);

                font-size: 11px;
                font-weight: 800;
                letter-spacing: .04em;

                transition:
                    background .2s ease,
                    color .2s ease;
            }


            /* =========================================================
   QUESTION TEXT
========================================================= */

            .faq-question {
                color: var(--ink);

                font-size: 16px;
                line-height: 1.45;
                font-weight: 650;
            }


            /* =========================================================
   PLUS / MINUS
========================================================= */

            .faq-toggle {
                position: relative;

                width: 32px;
                height: 32px;

                display: block;

                border: 1px solid rgba(27, 95, 174, .16);
                border-radius: 50%;

                background: #fff;
            }

            .faq-toggle::before,
            .faq-toggle::after {
                content: "";

                position: absolute;

                top: 50%;
                left: 50%;

                width: 11px;
                height: 1.5px;

                background: var(--blue);

                transform: translate(-50%, -50%);
            }

            .faq-toggle::after {
                transform:
                    translate(-50%, -50%) rotate(90deg);

                transition: transform .2s ease;
            }


            /* OPEN STATE */

            .faq-item[open] .faq-number {
                background: var(--blue);
                color: #fff;
            }

            .faq-item[open] .faq-toggle {
                background: var(--blue);
                border-color: var(--blue);
            }

            .faq-item[open] .faq-toggle::before,
            .faq-item[open] .faq-toggle::after {
                background: #fff;
            }

            .faq-item[open] .faq-toggle::after {
                transform:
                    translate(-50%, -50%) rotate(0deg);
            }


            /* =========================================================
   ANSWER
========================================================= */

            .faq-answer {
                margin: 0 18px 18px;

                padding: 0 48px 0 50px;
            }

            .faq-answer p {
                margin: 0;

                padding-top: 14px;

                border-top: 1px solid rgba(27, 95, 174, .10);

                color: var(--ink-soft);

                font-size: 14px;
                line-height: 1.7;
            }


            /* =========================================================
   FAQ CTA
========================================================= */

            .faq-cta {
                width: 100%;
                max-width: 980px;

                margin: 28px auto 0;

                padding: 21px 24px;

                display: flex;
                align-items: center;
                justify-content: space-between;

                gap: 25px;

                border: 1px solid rgba(27, 95, 174, .13);
                border-radius: 15px;

                background:
                    linear-gradient(135deg,
                        rgba(27, 95, 174, .07),
                        rgba(255, 255, 255, .88));
            }

            .faq-cta__content {
                min-width: 0;
            }

            .faq-cta__eyebrow {
                display: block;

                margin-bottom: 4px;

                color: var(--blue);

                font-size: 10px;
                font-weight: 800;

                letter-spacing: .09em;
                text-transform: uppercase;
            }

            .faq-cta h3 {
                margin: 0;

                color: var(--ink);

                font-size: 18px;
                line-height: 1.4;
                font-weight: 700;
            }

            .faq-cta p {
                margin: 5px 0 0;

                max-width: 650px;

                color: var(--ink-soft);

                font-size: 13px;
                line-height: 1.55;
            }

            .faq-cta__button {
                flex: 0 0 auto;

                display: inline-flex;
                align-items: center;
                justify-content: center;
                gap: 9px;

                min-height: 42px;

                padding: 9px 17px;

                border-radius: 9px;

                background: var(--blue);
                color: #fff;

                font-size: 13px;
                font-weight: 700;

                text-decoration: none;

                box-shadow:
                    0 6px 16px rgba(27, 95, 174, .18);

                transition:
                    transform .2s ease,
                    box-shadow .2s ease;
            }

            .faq-cta__button:hover {
                transform: translateY(-2px);

                box-shadow:
                    0 9px 22px rgba(27, 95, 174, .24);
            }


            /* =========================================================
   TABLET
========================================================= */

            @media (max-width: 850px) {

                .faq-section .wrap {
                    width: min(100% - 32px, 720px);
                }

                .faq-head {
                    margin-bottom: 28px;
                }

                .faq-head h2 {
                    font-size: 34px;
                }

                .faq-cta {
                    align-items: flex-start;
                    flex-direction: column;
                }

                .faq-cta__button {
                    width: auto;
                }
            }


            /* =========================================================
   MOBILE
========================================================= */

            @media (max-width: 600px) {

                .faq-section .wrap {
                    width: min(100% - 28px, 520px);
                }

                .faq-head {
                    margin-bottom: 23px;
                }

                .faq-head .eyebrow {
                    margin-bottom: 9px;
                }

                .faq-head h2 {
                    font-size: 27px;
                    line-height: 1.22;
                    letter-spacing: -.02em;
                }

                .faq-head .section-intro {
                    margin-top: 9px;

                    font-size: 13.5px;
                    line-height: 1.6;
                }

                .faq {
                    gap: 9px;
                }

                .faq-item {
                    border-radius: 12px;
                }

                .faq-item summary {
                    grid-template-columns: 34px minmax(0, 1fr) 30px;

                    gap: 10px;

                    min-height: 60px;

                    padding: 11px 13px;
                }

                .faq-number {
                    width: 33px;
                    height: 33px;

                    border-radius: 8px;

                    font-size: 10px;
                }

                .faq-question {
                    font-size: 14px;
                    line-height: 1.4;
                }

                .faq-toggle {
                    width: 29px;
                    height: 29px;
                }

                .faq-toggle::before,
                .faq-toggle::after {
                    width: 10px;
                }

                .faq-answer {
                    margin: 0 13px 15px;

                    padding: 0 43px 0 43px;
                }

                .faq-answer p {
                    padding-top: 12px;

                    font-size: 13px;
                    line-height: 1.65;
                }

                .faq-cta {
                    margin-top: 21px;

                    padding: 18px 16px;

                    border-radius: 13px;

                    gap: 16px;
                }

                .faq-cta h3 {
                    font-size: 16px;
                }

                .faq-cta p {
                    font-size: 12.5px;
                }

                .faq-cta__button {
                    width: 100%;

                    min-height: 41px;

                    font-size: 12.5px;
                }
            }


            /* =========================================================
   SMALL MOBILE
========================================================= */

            @media (max-width: 380px) {

                .faq-section .wrap {
                    width: min(100% - 24px, 360px);
                }

                .faq-head h2 {
                    font-size: 25px;
                }

                .faq-question {
                    font-size: 13.5px;
                }
            }
  

  
        /* =========================================================
   AGRAWAL GOOGLE REVIEWS
========================================================= */

        @keyframes agrawalReviewsSlide {
            from {
                transform: translateX(0);
            }

            to {
                transform: translateX(-50%);
            }
        }


        /* CARD HOVER */
        .google-reviews-section article {
            transition:
                transform .25s ease,
                box-shadow .25s ease,
                border-color .25s ease !important;
        }

        .google-reviews-section article:hover {
            transform: translateY(-5px) !important;
            box-shadow: 0 15px 34px rgba(11, 79, 156, .12) !important;
        }


        /* TOP CTA HOVER */
        .google-reviews-section a:hover {
            opacity: .92 !important;
        }


        /* PAUSE SLIDER ON HOVER */
        .agrawal-review-track:hover {
            animation-play-state: paused !important;
        }


        /* =========================================================
   MOBILE
========================================================= */

        @media (max-width:700px) {

            .google-reviews-section {
                padding: 54px 0 58px !important;
            }

            .google-reviews-section h2 {
                font-size: 29px !important;
                line-height: 1.24 !important;
            }

            .google-reviews-section p {
                font-size: 14px !important;
            }

            .google-reviews-section>div {
                padding-left: 16px !important;
                padding-right: 16px !important;
            }

            .google-reviews-section>div>div:nth-child(2) {
                flex-direction: column !important;
                align-items: flex-start !important;
                gap: 15px !important;
            }

            .google-reviews-section>div>div:nth-child(2)>a {
                width: 100% !important;
                box-sizing: border-box !important;
            }

            .google-reviews-section article {
                width: 280px !important;
                min-width: 280px !important;
                height: 265px !important;
            }

        }


        /* =========================================================
   ACCESSIBILITY
========================================================= */

        @media (prefers-reduced-motion:reduce) {

            .agrawal-review-track {
                animation: none !important;
            }

        }

        @media (max-width: 768px) {
            .footer-grid {
                grid-template-columns: 1fr !important;
                gap: 30px !important;
            }

            .footer-map-wrap {
                max-width: 100% !important;
                height: 220px !important;
            }

            .footer-bottom {
                flex-direction: column !important;
                align-items: flex-start !important;
                text-align: left !important;
                gap: 8px !important;
            }
        }

        /* Default: desktop image dikhega, mobile chupega */
        .hero__banner-img--mobile {
            display: none;
        }

        .hero__banner-img--desktop {
            display: block;
        }

        /* 700px ya usse kam width par mobile image dikhao, desktop chupao */
        @media (max-width: 700px) {
            .hero__banner-img--mobile {
                display: block;
            }

            .hero__banner-img--desktop {
                display: none;
            }
        }
  