/*
Theme Name: Smart Sports Child
Theme URI: https://mysmartsports.ptcreativestudio.com
Description: Astra child theme for Smart Sports — custom design tokens, Poppins font, branded buttons. Ported from Next.js demo at https://smartsports.vercel.app.
Author: Smart Sports
Author URI: https://mysmartsports.ptcreativestudio.com
Template: astra
Version: 1.1.8
Text Domain: smart-sports-child
*/

:root {
    --font-open-sans: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-montserrat: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}


/* =========================================================
   1. DESIGN TOKENS (CSS variables)
   ========================================================= */
:root {
    --brand-blue: #0064b0;
    --brand-blue-deep: #004d8a;
    --brand-blue-card: #0052a3;
    --brand-orange: #fc4c00;
    --brand-orange-dark: #e64500;
    --brand-green: #9ad600;
    --brand-green-dark: #7ab800;
    --brand-ink: #0E1B3D;
    --brand-muted: #5B6B8A;
    --brand-surface: #F5F7FB;
    --amber-400: #FBBF24;
    --brand-yellow: #ffcc00;

    --shadow-card: 0 6px 24px rgba(15, 27, 61, 0.08);
    --radius-card: 16px;
    --radius-card-lg: 24px;
    --radius-pill: 9999px;
    --container-max: 1200px;
}

/* =========================================================
   2. BASE
   ========================================================= */
html, body {
    font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--brand-ink);
    line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Open Sans', sans-serif;
    color: var(--brand-ink);
    line-height: 1.15;
}

/* Section heading style (UPPERCASE blue) */
.ss-section-title {
    color: var(--brand-blue);
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: center;
    font-size: clamp(32px, 4.5vw, 44px);
    margin-bottom: 16px;
}

.ss-section-sub {
    color: var(--brand-muted);
    text-align: center;
    max-width: 720px;
    margin: 0 auto 48px;
    font-size: 16px;
}

/* =========================================================
   3. BUTTONS (pill)
   ========================================================= */
.ss-btn,
.elementor-button.ss-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: var(--radius-pill);
    padding: 12px 28px;
    transition: all .2s ease;
    gap: 8px;
    text-decoration: none;
    line-height: 1;
    font-family: 'Open Sans', sans-serif;
    border: 2px solid transparent;
}
.ss-btn-orange { background: var(--brand-orange); color: #fff; }
.ss-btn-orange:hover { background: var(--brand-orange-dark); color: #fff; }
.ss-btn-green { background: var(--brand-green); color: #fff; }
.ss-btn-green:hover { background: var(--brand-green-dark); color: #fff; }
.ss-btn-blue { background: var(--brand-blue-card); color: #fff; }
.ss-btn-blue:hover { background: var(--brand-blue-deep); color: #fff; }
.ss-btn-outline-white { border-color: #fff; color: #fff; background: transparent; }
.ss-btn-outline-white:hover { background: #fff; color: var(--brand-blue); }
.ss-btn-outline-orange { border-color: var(--brand-orange); color: var(--brand-orange); background: transparent; }
.ss-btn-outline-orange:hover { background: var(--brand-orange); color: #fff; }
.ss-btn-outline-blue { border-color: var(--brand-blue-card); color: var(--brand-blue-card); background: transparent; }
.ss-btn-outline-blue:hover { background: var(--brand-blue-card); color: #fff; }
.bg-brand-yellow { background-color: var(--brand-yellow) !important; }

/* =========================================================
   4. HEADER — Support the Work button override
   ========================================================= */
.ss-header-cta a,
a.ss-header-cta {
    display: inline-flex;
    align-items: center;
    background: var(--brand-green) !important;
    color: #fff !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: var(--radius-pill);
    padding: 12px 28px;
    font-size: 14px;
    transition: background .2s;
}
.ss-header-cta a:hover { background: var(--brand-green-dark) !important; }

/* =========================================================
   5. HOME — HERO
   ========================================================= */
.ss-home-hero {
    position: relative;
    min-height: 680px; /* Taller home hero for a more premium look */
    color: #fff;
    display: flex;
    align-items: center;
    background-color: #0E1B3D;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: 80% 15% !important; /* Shipped horizontal (80%) and vertical (15%) focal point to show coach and kids clearly */
}
.ss-home-hero h1,
.ss-home-hero p,
.ss-home-hero div {
    text-align: left !important; /* Force left text-alignment */
}
.ss-home-hero::before {
    content: "";
    position: absolute; inset: 0;
    background: linear-gradient(to right, rgba(0,0,0,0.55), rgba(0,0,0,0.25) 50%, transparent 80%);
    pointer-events: none;
    z-index: 1;
}
.ss-home-hero > .elementor-container,
.ss-home-hero .ss-hero-inner {
    position: relative;
    z-index: 2;
}
.ss-home-hero h1 {
    color: #fff;
    font-size: clamp(36px, 6vw, 64px);
    font-weight: 800;
    line-height: 1.08;
    max-width: 600px;
}
.ss-home-hero p {
    color: rgba(255,255,255,0.92);
    max-width: 480px;
    font-size: 16px;
}
@media (min-width: 1024px) {
    .ss-home-hero .ss-hero-inner { max-width: 42%; }
}

/* =========================================================
   5b. SUBPAGE HERO
   ========================================================= */
.ss-subpage-hero {
    position: relative;
    width: 100% !important;
    height: 540px !important; /* Taller hero height on mobile */
    overflow: hidden;
    background-size: cover !important;
    background-position: center 30% !important; /* Shift vertical focus to show faces and prevent top crop */
    background-repeat: no-repeat !important;
    color: #fff !important;
    text-align: left !important;
}
.ss-subpage-hero h1,
.ss-subpage-hero h2,
.ss-subpage-hero p,
.ss-subpage-hero div,
.ss-subpage-hero .entry-title {
    text-align: left !important; /* Hard override of theme text center-alignments */
}
.ss-subpage-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.6) 60%, rgba(0,0,0,0.85) 100%) !important; /* Slightly darker overlay at the bottom for readability */
    pointer-events: none;
    z-index: 1;
}
.ss-subpage-hero > .ss-container {
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: var(--container-max) !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    padding-bottom: 40px !important;
    text-align: left !important;
}
.ss-subpage-hero .ss-hero-inner {
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: 580px !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}
.ss-subpage-hero,
.ss-subpage-hero * {
    color: #fff !important;
}
@media (min-width: 640px) {
    .ss-subpage-hero {
        height: 620px !important; /* Taller hero height on tablet */
    }
    .ss-subpage-hero::before {
        background: linear-gradient(to right, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.6) 45%, rgba(0,0,0,0.15) 100%) !important; /* Stronger horizontal gradient on left side for text contrast */
    }
    .ss-subpage-hero > .ss-container {
        justify-content: center !important;
        padding-bottom: 0 !important;
    }
}
@media (min-width: 1024px) {
    .ss-subpage-hero {
        height: 700px !important; /* Taller hero height on desktop */
    }
}

/* =========================================================
   6. HOW IT WORKS
   ========================================================= */
.ss-how-card,
.ss-card {
    background: #fff;
    border: 1px solid #E5EAF2;
    border-radius: var(--radius-card-lg);
    padding: 28px;
    box-shadow: var(--shadow-card);
    height: 100%;
}
.ss-how-card {
    display: block;
}
.ss-card {
    display: grid;
    grid-template-columns: 56px 1fr;
    column-gap: 16px;
    row-gap: 12px;
    align-items: center;
}
.ss-how-card .ss-icon-wrap,
.ss-card .ss-icon-circle {
    width: 56px; height: 56px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
    flex: 0 0 56px;
}
.ss-card .ss-icon-circle {
    grid-column: 1;
    grid-row: 1;
}
.ss-how-card .ss-icon-wrap img,
.ss-card .ss-icon-circle img {
    width: 30px; height: 30px;
    filter: brightness(0) invert(1);
    display: block;
    margin: 0 auto;
}
.ss-how-card .ss-icon-bg-blue,
.ss-card .ss-bg-blue     { background: var(--brand-blue-card); }
.ss-how-card .ss-icon-bg-orange,
.ss-card .ss-bg-orange   { background: var(--brand-orange); }
.ss-how-card .ss-icon-bg-green,
.ss-card .ss-bg-green    { background: var(--brand-green); }
.ss-how-card .ss-icon-bg-amber,
.ss-card .ss-bg-amber    { background: var(--amber-400); }

.ss-how-card h3,
.ss-card .ss-card-title {
    color: var(--brand-blue);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0;
}
.ss-card .ss-card-title {
    grid-column: 2;
    grid-row: 1;
}
.ss-how-card .ss-card-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 16px;
}
.ss-how-card p,
.ss-card .ss-card-desc {
    color: var(--brand-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}
.ss-card .ss-card-desc {
    grid-column: 1 / span 2;
    grid-row: 2;
}

/* =========================================================
   7. WHY IT MATTERS (dark with US map)
   ========================================================= */
.ss-why-matters,
.ss-why {
    position: relative;
    background: var(--brand-blue);
    color: #fff;
    padding: 80px 0;
    overflow: hidden;
}
.ss-why-matters::before,
.ss-why::before {
    content: "";
    position: absolute; inset: 0;
    background-image: url('images/us-map-dots.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0.6;
    pointer-events: none;
}
.ss-why-matters > .elementor-container { position: relative; z-index: 1; }
.ss-why-matters h2 { color: #fff !important; }

.ss-stat-card {
    border-radius: var(--radius-card);
    padding: 32px 20px;
    text-align: center;
    color: #fff;
}
.ss-stat-card .ss-stat-num {
    font-size: clamp(48px, 6vw, 72px);
    font-weight: 800;
    line-height: 1;
}
.ss-stat-card .ss-stat-num.ss-text-stat {
    font-size: clamp(22px, 3.2vw, 36px) !important;
    white-space: normal !important;
    word-break: break-word !important;
    line-height: 1.15 !important;
}
@media (max-width: 380px) {
    .ss-stat-card {
        padding: 24px 16px !important;
    }
    .ss-stat-card .ss-stat-num.ss-text-stat {
        font-size: 20px !important;
    }
}
.ss-stat-card .ss-stat-title {
    margin-top: 12px;
    font-size: 16px;
    line-height: 1.35;
    white-space: pre-line;
}
.ss-stat-card .ss-stat-source {
    margin-top: 16px;
    font-size: 11px;
    font-style: italic;
    opacity: 0.9;
}
.ss-stat-card.bg-blue   { background: var(--brand-blue-card); }
.ss-stat-card.bg-orange { background: var(--brand-orange); }
.ss-stat-card.bg-green  { background: var(--brand-green); }

/* =========================================================
   8. WHAT MAKES US DIFFERENT
   ========================================================= */
.ss-diff-card {
    background: #fff;
    border-radius: var(--radius-card);
    overflow: hidden;
    box-shadow: var(--shadow-card);
    height: 100%;
    display: flex; flex-direction: column;
}
.ss-diff-card img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
}
.ss-diff-card .ss-card-body { padding: 20px; }
.ss-diff-card h3 { color: var(--brand-blue); font-size: 18px; font-weight: 700; margin: 0 0 8px; }
.ss-diff-card p  { color: var(--brand-muted); font-size: 14px; margin: 0; }

/* =========================================================
   9. SUCCESS LOOKS LIKE
   ========================================================= */
.ss-success {
    background: var(--brand-surface);
    padding: 80px 0;
}
.ss-success ul {
    list-style: none;
    padding: 0; margin: 24px 0 0;
}
.ss-success li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: var(--brand-ink);
    font-size: 16px;
}
.ss-success li:not(.elementor-icon-list-item)::before {
    content: "";
    width: 24px; height: 24px;
    flex: 0 0 24px;
    border-radius: 50%;
    background: var(--brand-green) url("data:image/svg+xml;utf8,<svg 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'><polyline points='20 6 9 17 4 12'/></svg>") center/14px no-repeat;
    margin-top: 2px;
}
.ss-success .elementor-icon-list-item::before {
    content: none !important;
}

/* =========================================================
   9b. HOW WE MEASURE
   ========================================================= */
.ss-measure-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 24px;
}
.ss-measure-card {
    background: var(--brand-surface);
    border-radius: var(--radius-card);
    padding: 28px 24px;
    text-align: center;
    box-shadow: var(--shadow-card);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ss-measure-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(15, 27, 61, 0.12);
}
.ss-measure-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    transition: transform 0.2s ease;
}
.ss-measure-card:hover .ss-measure-icon {
    transform: scale(1.1);
}
.ss-measure-icon.color-orange {
    background: rgba(242, 107, 42, 0.1);
    color: var(--brand-orange);
}
.ss-measure-icon.color-blue {
    background: rgba(27, 80, 168, 0.1);
    color: var(--brand-blue-card);
}
.ss-measure-icon.color-green {
    background: rgba(22, 193, 114, 0.1);
    color: var(--brand-green);
}
.ss-measure-icon.color-amber {
    background: rgba(251, 191, 36, 0.1);
    color: var(--amber-400);
}
.ss-measure-card h3 {
    color: var(--brand-blue);
    font-weight: 700;
    margin: 0 0 8px;
    font-size: 16px;
}
.ss-measure-card p {
    color: var(--brand-muted);
    font-size: 13px;
    margin: 0;
    line-height: 1.4;
}

/* =========================================================
   10. TESTIMONIALS
   ========================================================= */
.ss-testimonial-card {
    background: #fff;
    border-radius: var(--radius-card);
    padding: 24px;
    box-shadow: var(--shadow-card);
}
.ss-testimonial-card .ss-quote {
    color: var(--brand-ink);
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 16px;
}
.ss-testimonial-card .ss-divider {
    border-top: 1px dashed var(--brand-orange);
    margin: 16px 0;
}
.ss-testimonial-card .ss-name { color: var(--brand-orange); font-weight: 700; font-size: 14px; margin: 0; }
.ss-testimonial-card .ss-role { color: var(--brand-muted); font-size: 12px; margin: 4px 0 0; }

/* =========================================================
   11. LET'S BUILD WHAT COMES NEXT (dark + court bg)
   ========================================================= */
.ss-build-next,
.ss-cta {
    position: relative;
    background: var(--brand-blue);
    color: #fff;
    padding: 80px 0;
    overflow: hidden;
    text-align: center;
}
.ss-build-next::before,
.ss-cta::before {
    content: "";
    position: absolute; inset: 0;
    background-image: url('images/basketball-court.svg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.2;
    pointer-events: none;
}
.ss-build-next > .elementor-container,
.ss-cta > .elementor-container { position: relative; z-index: 1; }
.ss-build-next h2,
.ss-cta h2 { color: #fff !important; }
.ss-cta h2 span { color: var(--brand-yellow) !important; }
.ss-build-next p,
.ss-cta p  { color: rgba(255,255,255,0.92); }
.ss-build-next .ss-btn-group,
.ss-cta .ss-btn-group {
    display: flex; justify-content: center; flex-wrap: wrap;
    gap: 16px; margin-top: 32px;
}

/* =========================================================
   12. EVENTS HERO
   ========================================================= */
.ss-events-hero {
    position: relative;
    min-height: 660px; /* Taller events hero */
    color: #fff;
    display: flex; align-items: flex-end;
    padding-bottom: 64px;
}
.ss-events-hero::before {
    content: "";
    position: absolute; inset: 0;
    background: linear-gradient(to right, rgba(0,0,0,0.55), rgba(0,0,0,0.25) 60%, transparent 100%);
    z-index: 1;
}
.ss-events-hero > .elementor-container { position: relative; z-index: 2; }
.ss-events-hero h1 {
    color: #fff;
    font-size: clamp(48px, 8vw, 80px);
    font-weight: 800;
    margin: 0 0 8px;
}

/* =========================================================
   13. UPCOMING EVENTS
   ========================================================= */
.ss-event-card {
    background: #fff;
    border-radius: var(--radius-card);
    overflow: hidden;
    box-shadow: var(--shadow-card);
    height: 100%;
    display: flex; flex-direction: column;
    position: relative;
}
.ss-event-card .ss-event-img {
    position: relative;
}
.ss-event-card .ss-event-img img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    display: block;
}
.ss-event-badge {
    position: absolute;
    top: 12px; left: 12px;
    padding: 4px 12px;
    border-radius: 6px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    z-index: 2;
}
.ss-event-badge.bg-blue   { background: var(--brand-blue-card); }
.ss-event-badge.bg-green  { background: var(--brand-green); }
.ss-event-badge.bg-orange { background: var(--brand-orange); }
.ss-event-card .ss-event-body { padding: 20px; }
.ss-event-card .ss-event-meta {
    color: var(--brand-blue);
    font-size: 13px;
    font-weight: 600;
    display: flex; align-items: center; gap: 6px;
}
.ss-event-card h3 {
    color: var(--brand-blue);
    font-size: 18px;
    font-weight: 700;
    margin: 8px 0;
}
.ss-event-card .ss-event-desc {
    color: var(--brand-muted);
    font-size: 14px;
    margin: 0 0 12px;
}
.ss-event-card .ss-event-loc {
    color: var(--brand-blue);
    font-size: 13px;
    display: flex; align-items: center; gap: 6px;
}
.ss-event-card .ss-event-link {
    color: var(--brand-blue-deep);
    font-weight: 700;
    font-size: 14px;
    margin-top: 12px;
    display: inline-block;
}

/* =========================================================
   14. HOST AN EVENT
   ========================================================= */
.ss-host-event { background: var(--brand-surface); padding: 80px 0; }
.ss-host-event h2 { text-align: left; }

/* =========================================================
   15. EVENT CATEGORIES
   ========================================================= */
.ss-cat-card {
    background: #fff;
    border-radius: var(--radius-card);
    padding: 24px;
    text-align: center;
    box-shadow: var(--shadow-card);
    height: 100%;
}
.ss-cat-card .ss-cat-icon {
    width: 64px; height: 64px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: #fff;
}
.ss-cat-card .ss-cat-icon svg { width: 32px; height: 32px; stroke: #fff; }
.ss-cat-card .bg-blue   { background: var(--brand-blue-card); }
.ss-cat-card .bg-orange { background: var(--brand-orange); }
.ss-cat-card .bg-green  { background: var(--brand-green); }
.ss-cat-card .bg-amber  { background: var(--amber-400); }
.ss-cat-card h3 { color: var(--brand-blue); font-size: 16px; font-weight: 700; margin: 0 0 8px; }
.ss-cat-card p { color: var(--brand-muted); font-size: 14px; margin: 0; }

/* =========================================================
   16. STAY CONNECTED
   ========================================================= */
.ss-stay-connected { padding: 48px 0; background: #fff; }
.ss-stay-connected h2 { text-align: left; }
.ss-stay-connected .wpforms-field input[type="email"] {
    border-radius: 8px;
    border: 1px solid #D5DCE8;
    padding: 12px 16px;
    font-size: 16px;
}
.ss-stay-connected .wpforms-submit {
    background: var(--brand-blue) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 12px 28px !important;
    font-weight: 700 !important;
    border: none !important;
    text-transform: none !important;
}
.ss-stay-connected .wpforms-submit:hover { background: var(--brand-blue-deep) !important; }

/* =========================================================
   17. FOOTER
   ========================================================= */
.ss-site-footer .ss-social-pill,
.site-footer .ss-social-pill {
    display: inline-flex;
    width: 36px; height: 36px;
    border-radius: 50%;
    background: var(--brand-orange);
    color: #fff !important;
    align-items: center; justify-content: center;
    margin-right: 8px;
    transition: opacity .2s;
}
.ss-site-footer .ss-social-pill:hover,
.site-footer .ss-social-pill:hover { opacity: .9; }
.ss-site-footer .ss-contact-icon,
.site-footer .ss-contact-icon {
    display: inline-flex;
    width: 32px; height: 32px;
    border-radius: 50%;
    background: var(--brand-orange);
    color: #fff;
    align-items: center; justify-content: center;
    flex: 0 0 32px;
    margin-right: 12px;
}
.ss-site-footer .ss-footer-copyright-wrap,
.site-footer .ss-footer-copyright-wrap {
    border-top: 2px solid var(--brand-orange);
}
.ss-site-footer h4,
.site-footer h4 { color: var(--brand-blue); font-weight: 700; margin-bottom: 16px; }
.ss-site-footer a,
.site-footer a { color: var(--brand-ink); }
.ss-site-footer a:hover,
.site-footer a:hover { color: var(--brand-blue); }

/* =========================================================
   18. CONTAINER + UTILITY
   ========================================================= */
.ss-container { max-width: var(--container-max); margin: 0 auto; padding: 0 24px; }
.ss-py-20 { padding-top: 80px; padding-bottom: 80px; }

/* Mobile tweaks */
@media (max-width: 767px) {
    .ss-home-hero { min-height: 540px; } /* Taller home hero on mobile */
    .ss-home-hero .ss-hero-inner { max-width: 100%; }
    .ss-events-hero { min-height: 500px; } /* Taller events hero on mobile */
    .ss-build-next .ss-btn-group { flex-direction: column; align-items: center; }
}

/* =========================================================
   19. EFFECTS — Typing animation
   ========================================================= */
.ss-typing-tagline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--brand-orange);
    margin-bottom: 16px;
    background: rgba(255, 255, 255, 0.08);
    padding: 8px 16px;
    border-radius: 9999px;
    border: 1px solid rgba(242, 107, 42, 0.4);
    backdrop-filter: blur(6px);
}
.ss-typing-tagline .ss-typing-prefix {
    color: #fff;
    font-weight: 400;
    opacity: 0.9;
}
.ss-typing-word {
    color: var(--brand-orange);
    position: relative;
    min-width: 100px;
}
.ss-typing-word::after {
    content: "|";
    color: var(--brand-orange);
    margin-left: 2px;
    animation: ss-blink 0.9s steps(2) infinite;
    font-weight: 300;
}
@keyframes ss-blink {
    0%, 49% { opacity: 1; }
    50%, 100% { opacity: 0; }
}

/* =========================================================
   20. EFFECTS — Page transition preloader
   ========================================================= */
.ss-page-transition {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    opacity: 1;
    transition: opacity .6s ease, visibility .6s ease;
}
.ss-page-transition.ss-loaded {
    opacity: 0;
    visibility: hidden;
}
.ss-page-transition__logo {
    max-width: 200px;
    height: auto;
    animation: ss-pulse 1.4s ease-in-out infinite;
}
@keyframes ss-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.05); opacity: 0.85; }
}

/* =========================================================
   21. EFFECTS — Scroll to top button
   ========================================================= */
/* Scroll-to-top — heavy !important to win against Astra's universal button styles */
button.ss-scroll-top,
.ss-scroll-top {
    position: fixed !important;
    right: 24px !important;
    bottom: 24px !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border-radius: 50% !important;
    background: var(--brand-orange) !important;
    color: #fff !important;
    border: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 20px rgba(242, 107, 42, 0.4) !important;
    opacity: 0;
    transform: translateY(20px);
    pointer-events: none;
    transition: all .3s ease;
    z-index: 9998 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    font-family: inherit !important;
}
.ss-scroll-top.ss-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}
button.ss-scroll-top:hover,
.ss-scroll-top:hover {
    background: var(--brand-orange-dark) !important;
    transform: translateY(-3px) !important;
    color: #fff !important;
}
.ss-scroll-top svg,
button.ss-scroll-top svg {
    width: 22px !important;
    height: 22px !important;
    stroke: #fff !important;
    stroke-width: 2.5 !important;
    fill: none !important;
    stroke-linecap: round;
    stroke-linejoin: round;
    display: block !important;
}
.ss-scroll-top svg polyline {
    fill: none !important;
    stroke: #fff !important;
}

/* =========================================================
   22. EFFECTS — Fade-in on scroll
   ========================================================= */
.ss-reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity .8s ease, transform .8s ease;
    will-change: opacity, transform;
}
.ss-reveal.ss-in-view {
    opacity: 1;
    transform: translateY(0);
}
.ss-reveal-delay-1 { transition-delay: .1s; }
.ss-reveal-delay-2 { transition-delay: .2s; }
.ss-reveal-delay-3 { transition-delay: .3s; }
.ss-reveal-delay-4 { transition-delay: .4s; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
    .ss-reveal { opacity: 1; transform: none; transition: none; }
    .ss-page-transition { display: none; }
    .ss-typing-word::after { animation: none; }
}

/* =========================================================
   23. CUSTOM HEADER (replaces Astra default)
   ========================================================= */
.ss-site-header {
    background: #fff;
    padding: 10px 0 8px;
    position: relative;
    z-index: 100;
}
.ss-site-header > .ss-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}
.ss-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.ss-header-logo {
    flex-shrink: 0;
    display: inline-block;
    line-height: 0;
}
.ss-header-logo img {
    max-width: 130px;
    height: auto;
    display: block;
}
.ss-header-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}
.ss-header-top {
    display: flex;
    align-items: center;
    gap: 14px;
}
.ss-header-toplink {
    color: var(--brand-blue);
    font-weight: 600;
    text-decoration: none;
    font-size: 13px;
}
.ss-header-toplink:hover { text-decoration: underline; }
.ss-header-sep { color: rgba(27, 58, 138, 0.35); font-size: 13px; }
.ss-header-cta-btn {
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 11px !important;
    padding: 8px 18px !important;
    margin-left: 6px;
    font-weight: 700;
}
.ss-header-nav {
    display: flex;
    align-items: center;
    gap: 24px;
}
.ss-header-nav a {
    color: var(--brand-ink);
    font-weight: 600;
    text-decoration: none;
    font-size: 13px;
    transition: color .2s;
}
.ss-header-nav a:hover { color: var(--brand-blue); }

/* Mobile header */
@media (max-width: 900px) {
    .ss-header-inner { flex-direction: column; align-items: center; gap: 10px; }
    .ss-header-right { align-items: center; }
    .ss-header-nav { flex-wrap: wrap; justify-content: center; gap: 8px 16px; }
    .ss-header-cta-btn { font-size: 11px !important; padding: 8px 16px !important; }
    .ss-header-logo img { max-width: 100px; }
}

/* =========================================================
   24. CUSTOM FOOTER
   ========================================================= */
.ss-site-footer {
    background: #fff;
    color: var(--brand-ink);
    margin-top: 0;
}
.ss-footer-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr 1.3fr;
    gap: 40px;
    padding: 56px 0 32px;
}
.ss-footer-col h4 {
    color: var(--brand-blue);
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 14px;
}
.ss-footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
    line-height: 2.1;
}
.ss-footer-col ul a {
    color: var(--brand-ink);
    text-decoration: none;
    font-size: 14px;
}
.ss-footer-col ul a:hover { color: var(--brand-blue); }
.ss-footer-contact li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 14px;
    font-size: 14px;
    line-height: 1.4;
}
.ss-footer-contact .ss-contact-icon {
    margin-top: 2px;
}
.ss-footer-bar {
    border-top: 2px solid var(--brand-orange);
    padding: 18px 0;
    text-align: center;
    font-size: 13px;
    color: var(--brand-muted);
}

@media (max-width: 900px) {
    .ss-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; padding: 40px 0 24px; }
}
@media (max-width: 540px) {
    .ss-footer-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   25. RESPONSIVE GRID FIXES (2-col → 1-col on mobile)
   ========================================================= */
@media (max-width: 767px) {
    .ss-success-grid,
    .ss-host-grid,
    .ss-stay-grid { grid-template-columns: 1fr !important; }
}

/* =========================================================
   26. AUTO-HIDE WP ADMIN BAR PUSH-DOWN (prevent layout shift)
   ========================================================= */
.admin-bar .ss-site-header { margin-top: 0; }

/* =========================================================
   27. DECORATIVE CORNER ARCS + HEADING OVERRIDES
   ========================================================= */
/* Decorative corner arc SVG backgrounds for sections */
.ss-how-section,
.ss-diff {
    position: relative !important;
    overflow: hidden !important;
}

.ss-how-section::before,
.ss-diff::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 256px;
    height: 256px;
    background-image: url('images/corner-arc.svg') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: top left !important;
    pointer-events: none;
    z-index: 0;
    opacity: 1;
}

.ss-how-section::after,
.ss-diff::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 256px;
    height: 256px;
    background-image: url('images/corner-arc.svg') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: top left !important;
    transform: rotate(180deg) !important;
    pointer-events: none;
    z-index: 0;
    opacity: 1;
}

/* Ensure section contents sit above corner backgrounds */
.ss-how-section > .elementor-container,
.ss-diff > .elementor-container {
    position: relative !important;
    z-index: 1 !important;
}

@media (max-width: 640px) {
    .ss-how-section::before,
    .ss-diff::before,
    .ss-how-section::after,
    .ss-diff::after {
        width: 160px;
        height: 160px;
    }
}

/* Force section title typography and transformation (uppercase) to match Vercel */
.ss-section-title .elementor-heading-title,
.elementor-widget-heading.ss-section-title h2,
.ss-section-title {
    color: var(--brand-blue) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: clamp(32px, 4.5vw, 44px) !important;
    text-align: center !important;
}



/* =========================================================
   28. ELEMENTOR & ASTRA FULL WIDTH CONTAINER OVERRIDES
   Force parent page, site-content, and columns containing
   our custom components (prefixed with "ss-") to be 100% full-width.
   ========================================================= */
body:has([class*="ss-"]) #content,
body:has([class*="ss-"]) #content > .ast-container,
body:has([class*="ss-"]) #primary,
body:has([class*="ss-"]) #main,
body:has([class*="ss-"]) .site-content,
body:has([class*="ss-"]) .site-content > .ast-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-section:has([class*="ss-"]),
.e-con-boxed:has([class*="ss-"]),
.e-con:has([class*="ss-"]) {
    width: 100% !important;
    max-width: 100% !important;
    --content-width: 100% !important;
    --container-max-width: 100% !important;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.elementor-section:has([class*="ss-"]) > .elementor-container,
.e-con-inner:has([class*="ss-"]) {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-column:has([class*="ss-"]),
.elementor-widget-wrap:has([class*="ss-"]) {
    padding: 0 !important;
    margin: 0 !important;
}

/* =========================================================
   29. PARTNERS / HOW WE WORK CARD GRID
   ========================================================= */
.ss-partner-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 32px;
}
@media (min-width: 640px) {
    .ss-partner-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        margin-top: 40px;
    }
}
.ss-partner-card {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    border: 1px solid #f1f5f9;
    box-shadow: 0 6px 24px rgba(15,27,61,0.08);
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
@media (min-width: 640px) {
    .ss-partner-card {
        padding: 28px;
    }
}
.ss-partner-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    flex-shrink: 0;
}
.ss-partner-icon svg {
    width: 26px;
    height: 26px;
    color: #fff;
}

/* =========================================================
   COMPILED NEXT.JS TAILWIND CSS STYLES
   ========================================================= */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-open-sans),system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{scroll-behavior:smooth}body{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));font-family:var(--font-open-sans),system-ui,sans-serif;--tw-text-opacity:1;color:rgb(14 27 61/var(--tw-text-opacity,1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none}h1,h2{font-family:var(--font-montserrat),system-ui,sans-serif}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em}h3,h4,h5,h6{font-family:var(--font-open-sans),system-ui,sans-serif}.container-x{margin-left:auto;margin-right:auto;width:100%;max-width:1200px;padding-left:1.25rem;padding-right:1.25rem}@media (min-width:640px){.container-x{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-x{padding-left:2.5rem;padding-right:2.5rem}}.btn,.btn-orange{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.75rem 1.5rem;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-orange{--tw-bg-opacity:1;background-color:rgb(252 76 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-orange:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.btn-green{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.75rem 1.5rem;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;--tw-bg-opacity:1;background-color:rgb(154 214 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-green:hover{--tw-bg-opacity:1;background-color:rgb(122 184 0/var(--tw-bg-opacity,1))}.btn-outline-white{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.75rem 1.5rem;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-width:2px;--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-outline-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1}.btn-outline-blue,.btn-outline-white:hover{color:rgb(0 100 176/var(--tw-text-opacity,1))}.btn-outline-blue{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.75rem 1.5rem;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-width:2px;--tw-border-opacity:1;border-color:rgb(0 100 176/var(--tw-border-opacity,1));--tw-text-opacity:1}.btn-outline-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 100 176/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-20{bottom:-5rem}.-bottom-32{bottom:-8rem}.-left-28{left:-7rem}.-right-20{right:-5rem}.-right-32{right:-8rem}.-top-28{top:-7rem}.-top-6{top:-1.5rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-3{left:.75rem}.left-4{left:1rem}.left-6{left:1.5rem}.left-\[14\%\]{left:14%}.left-\[6\%\]{left:6%}.right-0{right:0}.right-4{right:1rem}.right-\[6\%\]{right:6%}.top-0{top:0}.top-10{top:2.5rem}.top-24{top:6rem}.top-3{top:.75rem}.top-4{top:1rem}.top-full{top:100%}.z-10{z-index:10}.z-40{z-index:40}.z-\[9999\]{z-index:9999}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-4{margin-bottom:-1rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-20{height:5rem}.h-28{height:7rem}.h-3{height:.75rem}.h-4{height:1rem}.h-48{height:12rem}.h-56{height:14rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[260px\]{height:260px}.h-\[280px\]{height:280px}.h-\[300px\]{height:300px}.h-\[480px\]{height:480px}.h-\[640px\]{height:640px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\[90vh\]{max-height:90vh}.w-1{width:.25rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-20{width:5rem}.w-28{width:7rem}.w-3{width:.75rem}.w-4{width:1rem}.w-48{width:12rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[110px\]{width:110px}.w-\[180px\]{width:180px}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-container{max-width:1200px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.rotate-12{--tw-rotate:12deg}.rotate-12,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.-scale-x-100{--tw-scale-x:-1}.-scale-x-100,.-scale-y-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-scale-y-100{--tw-scale-y:-1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-brand-blue{--tw-border-opacity:1;border-color:rgb(0 100 176/var(--tw-border-opacity,1))}.border-brand-blue\/20{border-color:rgba(0,100,176,.2)}.border-brand-green\/20{border-color:rgba(154,214,0,.2)}.border-brand-orange{--tw-border-opacity:1;border-color:rgb(252 76 0/var(--tw-border-opacity,1))}.border-brand-orange\/20{border-color:rgba(252,76,0,.2)}.border-brand-yellow\/20{border-color:rgba(255,204,0,.2)}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-brand-blue{--tw-bg-opacity:1;background-color:rgb(0 100 176/var(--tw-bg-opacity,1))}.bg-brand-blue-card{--tw-bg-opacity:1;background-color:rgb(0 82 163/var(--tw-bg-opacity,1))}.bg-brand-blue\/0{background-color:rgba(0,100,176,0)}.bg-brand-blue\/10{background-color:rgba(0,100,176,.1)}.bg-brand-blue\/15{background-color:rgba(0,100,176,.15)}.bg-brand-blue\/25{background-color:rgba(0,100,176,.25)}.bg-brand-green{--tw-bg-opacity:1;background-color:rgb(154 214 0/var(--tw-bg-opacity,1))}.bg-brand-green\/10{background-color:rgba(154,214,0,.1)}.bg-brand-orange{--tw-bg-opacity:1;background-color:rgb(252 76 0/var(--tw-bg-opacity,1))}.bg-brand-orange\/10{background-color:rgba(252,76,0,.1)}.bg-brand-surface{--tw-bg-opacity:1;background-color:rgb(245 247 251/var(--tw-bg-opacity,1))}.bg-brand-yellow{--tw-bg-opacity:1;background-color:rgb(255 204 0/var(--tw-bg-opacity,1))}.bg-brand-yellow\/10{background-color:rgba(255,204,0,.1)}.bg-brand-yellow\/30{background-color:rgba(255,204,0,.3)}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-\[\#FFF6E2\]{--tw-gradient-from:#fff6e2 var(--tw-gradient-from-position);--tw-gradient-to:rgba(255,246,226,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-black\/10{--tw-gradient-from:rgba(0,0,0,.1) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-black\/30{--tw-gradient-from:rgba(0,0,0,.3) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-black\/40{--tw-gradient-from:rgba(0,0,0,.4) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-blue\/50{--tw-gradient-from:rgba(0,100,176,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,100,176,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-black\/30{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,.3) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-black\/55{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,.55) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-\[\#E6F0FA\]{--tw-gradient-to:#e6f0fa var(--tw-gradient-to-position)}.to-black\/50{--tw-gradient-to:rgba(0,0,0,.5) var(--tw-gradient-to-position)}.to-black\/75{--tw-gradient-to:rgba(0,0,0,.75) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-top{-o-object-position:top;object-position:top}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-10{padding-bottom:2.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-5{padding-left:1.25rem}.pt-1{padding-top:.25rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.font-serif{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}.font-title{font-family:var(--font-montserrat),system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.08\]{line-height:1.08}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-brand-blue{--tw-text-opacity:1;color:rgb(0 100 176/var(--tw-text-opacity,1))}.text-brand-blue\/20{color:rgba(0,100,176,.2)}.text-brand-blue\/50{color:rgba(0,100,176,.5)}.text-brand-blue\/60{color:rgba(0,100,176,.6)}.text-brand-green{--tw-text-opacity:1;color:rgb(154 214 0/var(--tw-text-opacity,1))}.text-brand-ink{--tw-text-opacity:1;color:rgb(14 27 61/var(--tw-text-opacity,1))}.text-brand-ink\/80{color:rgba(14,27,61,.8)}.text-brand-ink\/85{color:rgba(14,27,61,.85)}.text-brand-muted{--tw-text-opacity:1;color:rgb(91 107 138/var(--tw-text-opacity,1))}.text-brand-orange{--tw-text-opacity:1;color:rgb(252 76 0/var(--tw-text-opacity,1))}.text-brand-yellow{--tw-text-opacity:1;color:rgb(255 204 0/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.text-white\/90{color:hsla(0,0%,100%,.9)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-90{opacity:.9}.opacity-\[0\.04\]{opacity:.04}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(15\2c 27\2c 61\2c 0\.12\)\]{--tw-shadow:0 4px 12px rgba(15,27,61,.12);--tw-shadow-colored:0 4px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(15\2c 27\2c 61\2c 0\.15\)\]{--tw-shadow:0 4px 12px rgba(15,27,61,.15);--tw-shadow-colored:0 4px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_6px_20px_rgba\(15\2c 27\2c 61\2c 0\.06\)\]{--tw-shadow:0 6px 20px rgba(15,27,61,.06);--tw-shadow-colored:0 6px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_6px_22px_rgba\(15\2c 27\2c 61\2c 0\.08\)\]{--tw-shadow:0 6px 22px rgba(15,27,61,.08);--tw-shadow-colored:0 6px 22px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_6px_24px_rgba\(0\2c 100\2c 176\2c 0\.10\)\]{--tw-shadow:0 6px 24px rgba(0,100,176,.1);--tw-shadow-colored:0 6px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_6px_24px_rgba\(15\2c 27\2c 61\2c 0\.08\)\]{--tw-shadow:0 6px 24px rgba(15,27,61,.08);--tw-shadow-colored:0 6px 24px var(--tw-shadow-color)}.shadow-\[0_6px_24px_rgba\(15\2c 27\2c 61\2c 0\.08\)\],.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.brightness-0{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-0{--tw-brightness:brightness(0)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes reveal-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}@keyframes text-swap-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes loader-exit{0%{opacity:1}to{opacity:0;pointer-events:none}}.placeholder\:text-brand-muted::-moz-placeholder{--tw-text-opacity:1;color:rgb(91 107 138/var(--tw-text-opacity,1))}.placeholder\:text-brand-muted::placeholder{--tw-text-opacity:1;color:rgb(91 107 138/var(--tw-text-opacity,1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:gap-3:hover{gap:.75rem}.hover\:border-brand-blue:hover{--tw-border-opacity:1;border-color:rgb(0 100 176/var(--tw-border-opacity,1))}.hover\:border-slate-200:hover{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.hover\:bg-brand-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 100 176/var(--tw-bg-opacity,1))}.hover\:bg-brand-blue-deep:hover{--tw-bg-opacity:1;background-color:rgb(0 77 138/var(--tw-bg-opacity,1))}.hover\:bg-brand-orange:hover{--tw-bg-opacity:1;background-color:rgb(252 76 0/var(--tw-bg-opacity,1))}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-400:hover{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:text-brand-blue:hover{--tw-text-opacity:1;color:rgb(0 100 176/var(--tw-text-opacity,1))}.hover\:text-brand-orange:hover{--tw-text-opacity:1;color:rgb(252 76 0/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_10px_30px_rgba\(15\2c 27\2c 61\2c 0\.1\)\]:hover{--tw-shadow:0 10px 30px rgba(15,27,61,.1);--tw-shadow-colored:0 10px 30px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_12px_32px_rgba\(15\2c 27\2c 61\2c 0\.14\)\]:hover{--tw-shadow:0 12px 32px rgba(15,27,61,.14);--tw-shadow-colored:0 12px 32px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_6px_20px_rgba\(15\2c 27\2c 61\2c 0\.10\)\]:hover{--tw-shadow:0 6px 20px rgba(15,27,61,.1);--tw-shadow-colored:0 6px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-brand-blue:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(0 100 176/var(--tw-ring-opacity,1))}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-brand-orange:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(252 76 0/var(--tw-ring-opacity,1))}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.group:hover .group-hover\:scale-105,.group:hover .group-hover\:scale-110{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1}.group:hover .group-hover\:bg-brand-blue\/30{background-color:rgba(0,100,176,.3)}.group:hover .group-hover\:text-brand-orange{--tw-text-opacity:1;color:rgb(252 76 0/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:left-\[10\%\]{left:10%}.sm\:right-\[8\%\]{right:8%}.sm\:mb-10{margin-bottom:2.5rem}.sm\:mb-12{margin-bottom:3rem}.sm\:mb-16{margin-bottom:4rem}.sm\:mt-10{margin-top:2.5rem}.sm\:mt-12{margin-top:3rem}.sm\:mt-4{margin-top:1rem}.sm\:mt-5{margin-top:1.25rem}.sm\:mt-7{margin-top:1.75rem}.sm\:block{display:block}.sm\:h-10{height:2.5rem}.sm\:h-12{height:3rem}.sm\:h-14{height:3.5rem}.sm\:h-16{height:4rem}.sm\:h-24{height:6rem}.sm\:h-44{height:11rem}.sm\:h-56{height:14rem}.sm\:h-60{height:15rem}.sm\:h-64{height:16rem}.sm\:h-9{height:2.25rem}.sm\:h-\[320px\]{height:320px}.sm\:h-\[340px\]{height:340px}.sm\:h-\[360px\]{height:360px}.sm\:h-\[520px\]{height:520px}.sm\:h-\[540px\]{height:540px}.sm\:h-\[600px\]{height:600px}.sm\:h-auto{height:auto}.sm\:w-10{width:2.5rem}.sm\:w-14{width:3.5rem}.sm\:w-16{width:4rem}.sm\:w-24{width:6rem}.sm\:w-36{width:9rem}.sm\:w-44{width:11rem}.sm\:w-64{width:16rem}.sm\:w-9{width:2.25rem}.sm\:w-\[140px\]{width:140px}.sm\:w-\[220px\]{width:220px}.sm\:max-w-\[80\%\]{max-width:80%}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-5{gap:1.25rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-20>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(5rem * var(--tw-space-y-reverse))}.sm\:bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.sm\:from-black\/50{--tw-gradient-from:rgba(0,0,0,.5) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.sm\:from-black\/55{--tw-gradient-from:rgba(0,0,0,.55) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.sm\:via-black\/20{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.sm\:via-black\/25{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,.25) var(--tw-gradient-via-position),var(--tw-gradient-to)}.sm\:to-black\/5{--tw-gradient-to:rgba(0,0,0,.05) var(--tw-gradient-to-position)}.sm\:to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:py-16{padding-top:4rem;padding-bottom:4rem}.sm\:py-20{padding-top:5rem;padding-bottom:5rem}.sm\:py-24{padding-top:6rem;padding-bottom:6rem}.sm\:pb-0{padding-bottom:0}.sm\:pb-16{padding-bottom:4rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:mt-12{margin-top:3rem}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:max-w-\[55\%\]{max-width:55%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}}@media (min-width:1024px){.lg\:left-16{left:4rem}.lg\:flex{display:flex}.lg\:h-64{height:16rem}.lg\:h-\[380px\]{height:380px}.lg\:h-\[400px\]{height:400px}.lg\:h-\[420px\]{height:420px}.lg\:h-\[440px\]{height:440px}.lg\:h-\[460px\]{height:460px}.lg\:h-\[580px\]{height:580px}.lg\:h-\[600px\]{height:600px}.lg\:w-\[180px\]{width:180px}.lg\:w-\[260px\]{width:260px}.lg\:max-w-\[42\%\]{max-width:42%}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:justify-end{justify-content:flex-end}.lg\:gap-12{gap:3rem}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:gap-8{gap:2rem}.lg\:to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.lg\:py-28{padding-top:7rem;padding-bottom:7rem}.lg\:py-4{padding-top:1rem;padding-bottom:1rem}.lg\:pl-10{padding-left:2.5rem}.lg\:pr-0{padding-right:0}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}.lg\:\[\&\>\*\:first-child\]\:order-2>:first-child{order:2}}