/* Size Optimization - Reduce oversized elements */

/* Typography - Reduce heading sizes to modern standards */
h1 {
    font-size: 2.2em !important; /* Reduced from 3em */
    font-weight: 900;
}

h2 {
    font-size: 1.8em !important; /* Reduced from 2.5em */
}

h3 {
    font-size: 1.4em !important; /* Reduced from 2em */
}

h4 {
    font-size: 1.2em !important;
}

h5 {
    font-size: 1.1em !important;
}

h6 {
    font-size: 1em !important;
}

/* Hero Section - Reduce oversized text but preserve headline rotator functionality */
#hero .hero-headline-stack span:first-child {
    font-size: clamp(1em, 2vw, 1.4em) !important; /* Reduced from clamp(1.2em, 2.5vw, 1.8em) */
}

#hero .hero-headline-stack span:nth-child(2),
#hero .hero-headline-stack span:last-child {
    font-size: clamp(1.5em, 4vw, 2.2em) !important; /* Reduced from clamp(1.8em, 5vw, 3em) */
    transition: opacity 0.5s ease-in-out !important; /* Preserve headline rotator transition */
}

#hero .hero-subheadline {
    font-size: clamp(0.85em, 1.8vw, 1.1em) !important; /* Reduced from clamp(0.9em, 2vw, 1.2em) */
}

/* Button sizes - Make more reasonable */
.cta-button {
    padding: 10px 20px !important; /* Reduced from 12px 25px */
    font-size: 0.95em !important;
}

#hero .primary-cta {
    padding: clamp(10px, 1.2vw, 12px) clamp(20px, 2.5vw, 28px) !important; /* Reduced padding */
    font-size: clamp(0.85em, 1.5vw, 1em) !important; /* Reduced from clamp(0.9em, 1.8vw, 1.1em) */
}

/* Header logo - Reduce size */
header .logo {
    font-size: 1.4em !important; /* Reduced from 1.6em */
}

/* Navigation text */
header nav ul li a {
    font-size: 0.95em !important;
}

/* Section content - Reduce oversized text */
.ideal-clients-subtext,
.core-offer-subtext {
    font-size: 1em !important; /* Reduced from 1.1em */
}

/* Team cards */
.team-card h4 {
    font-size: 1.15em !important; /* Reduced from 1.3em */
}

/* Niche items */
.niche-item h3 {
    font-size: 1.1em !important; /* Reduced from 1.25em */
}

/* Key promise text */
.key-promise {
    font-size: 1.15em !important; /* Reduced from 1.3em */
}

/* Mechanism explanation */
.unique-mechanism-explanation .mechanism-headline {
    font-size: 1.4em !important; /* Reduced from 1.6em */
}

.unique-mechanism-explanation p {
    font-size: 0.95em !important; /* Reduced from 1.05em */
}

/* Deeper benefit explanation */
.deeper-benefit-explanation p {
    font-size: 1em !important; /* Reduced from 1.1em */
}

/* Hero tagline */
#hero .hero-tagline {
    font-size: 1em !important; /* Reduced from 1.1em */
}

/* Quiz and form elements */
.quiz-results-container h1 {
    font-size: 1.8em !important;
}

.quiz-results-container h2 {
    font-size: 1.5em !important;
}

.quiz-results-container h3 {
    font-size: 1.3em !important;
}

/* ROI Calculator */
.roi-calculator h2 {
    font-size: 1.6em !important;
}

.roi-calculator h3 {
    font-size: 1.2em !important;
}

/* Booking page */
.booking-header h1 {
    font-size: 2em !important; /* Reduced from 36px */
}

.booking-header p {
    font-size: 1em !important; /* Reduced from 18px */
}

/* Mobile adjustments */
@media (max-width: 768px) {
    h1 {
        font-size: 1.8em !important;
    }

    h2 {
        font-size: 1.5em !important;
    }

    h3 {
        font-size: 1.3em !important;
    }

    h4 {
        font-size: 1.1em !important;
    }

    /* Hero section mobile */
    #hero .hero-headline-stack span:first-child {
        font-size: clamp(0.9em, 3vw, 1.2em) !important;
    }

    #hero .hero-headline-stack span:nth-child(2),
    #hero .hero-headline-stack span:last-child {
        font-size: clamp(1.3em, 3.5vw, 1.8em) !important;
        transition: opacity 0.5s ease-in-out !important; /* Preserve headline rotator transition */
    }

    #hero .hero-subheadline {
        font-size: clamp(0.8em, 2.5vw, 1em) !important;
    }

    #hero .hero-tagline {
        font-size: 0.9em !important;
    }

    /* Mobile buttons */
    .cta-button {
        padding: 8px 16px !important;
        font-size: 0.9em !important;
    }

    #hero .primary-cta {
        padding: 10px 20px !important;
        font-size: 0.9em !important;
    }

    /* Mobile navigation */
    header .logo {
        font-size: 1.2em !important;
    }

    /* Mobile quiz and forms */
    .quiz-results-container h1 {
        font-size: 1.5em !important;
    }

    .quiz-results-container h2 {
        font-size: 1.3em !important;
    }

    .quiz-results-container h3 {
        font-size: 1.1em !important;
    }

    /* Mobile booking page */
    .booking-header h1 {
        font-size: 1.6em !important;
    }

    .booking-header p {
        font-size: 0.9em !important;
    }

    /* Mobile ROI calculator */
    .roi-calculator h2 {
        font-size: 1.4em !important;
    }

    .roi-calculator h3 {
        font-size: 1.1em !important;
    }
}

/* Extra small mobile devices */
@media (max-width: 480px) {
    h1 {
        font-size: 1.6em !important;
    }

    h2 {
        font-size: 1.3em !important;
    }

    h3 {
        font-size: 1.1em !important;
    }

    #hero .hero-headline-stack span:nth-child(2),
    #hero .hero-headline-stack span:last-child {
        font-size: clamp(1.2em, 4vw, 1.6em) !important;
        transition: opacity 0.5s ease-in-out !important; /* Preserve headline rotator transition */
    }

    .cta-button {
        padding: 8px 14px !important;
        font-size: 0.85em !important;
    }
}
