/*
Theme Name: The Cayman Academy
Theme URI: https://caymanisacademy.com/
Description: A professional Registered Office training solution for the Cayman Islands.
Version: 1.6
Author: Andre Gutierrez
Author URI: https://toctoc.ky/
Text Domain: cayman-academy
*/

/* Reset any default WP styles if needed */
body {
    min-height: max(884px, 100dvh);
}

.font-serif {
    font-family: 'DM Serif Text', serif;
}

.font-sans {
    font-family: 'DM Sans', sans-serif;
}

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.text-dm-serif-text {
    font-family: 'DM Serif Text', serif;
}

.glass-header {
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

/* Floating Stars Animation */
@keyframes floating {
    0% {
        transform: translate(0, 0px);
    }

    50% {
        transform: translate(0, 15px);
    }

    100% {
        transform: translate(0, -0px);
    }
}

.star-float {
    animation: floating 4s ease-in-out infinite;
}

.star-float-delayed {
    animation: floating 4s ease-in-out 1s infinite alternate;
}

/* Star Blue Color Filter (#0A184A) */
.star-blue {
    filter: invert(10%) sepia(85%) saturate(5479%) hue-rotate(228deg) brightness(91%) contrast(100%);
}

/* Custom Typography for Headers */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'DM Serif Text', serif !important;
    font-weight: 400 !important;
    color: #0A184A !important;
}

h1 {
    font-size: 76px !important;
    line-height: 1.1 !important;
    margin-bottom: 2.5rem !important;
}

h2 {
    font-size: 52px !important;
    line-height: 1.2 !important;
    margin-bottom: 2rem !important;
}

h3 {
    font-size: 36px !important;
    line-height: 1.3 !important;
    margin-bottom: 1.5rem !important;
}

h4 {
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 800 !important;
    font-size: 20px !important;
    line-height: 1.4 !important;
    margin-bottom: 1rem !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

p {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px !important;
    line-height: 28px !important;
    color: #45464f;
}

/* Hero Subheadings - 20px override */
p.hero-subheading,
p.cta-text-large {
    font-size: 20px !important;
    line-height: 32px !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    h1 {
        font-size: 52px !important;
        line-height: 1.1 !important;
    }

    h2 {
        font-size: 40px !important;
    }

    h3 {
        font-size: 30px !important;
    }

    h4 {
        font-size: 18px !important;
    }

    p {
        font-size: 16px;
    }
}

/* Global Hero Background */
.hero-bg-custom {
    background-color: #EEECFD !important;
}

/* Home Hero Radial Gradient: White center to Lavender edge */
.hero-bg-home-gradient {
    background: radial-gradient(circle at center, #ffffff 0%, #EEECFD 100%) !important;
}

/* Helper for dark sections to override global heading color */
.on-dark h1,
.on-dark h2,
.on-dark h3,
.on-dark h4,
.on-dark h5,
.on-dark h6 {
    color: #EAD292 !important;
}

.on-dark p {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px !important;
    line-height: 28px !important;
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Ensure CTA text is 20px even in on-dark sections */
#cta-final-text,
.on-dark p.cta-text-large {
    font-size: 20px !important;
    line-height: 32px !important;
}