/*
Theme Name: ERCU Hydroplanes
Theme URI: https://www.ercu-hydros.com/
Author: ERCU
Description: A high-energy WordPress theme for Electric Radio Controlled Unlimiteds.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: ercu-hydroplanes
*/

:root{
  --navy:#071827;
  --blue:#0877c9;
  --cyan:#17b7e8;
  --red:#d9272e;
  --gold:#f4c542;
  --white:#fff;
  --ink:#10202f;
  --muted:#627181;
  --light:#f3f6f8;
  --border:#dce4e9;
  --shadow:0 14px 40px rgba(7,24,39,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--red)}
img{max-width:100%;height:auto;display:block}
.container{width:min(1180px,92%);margin:0 auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(7,24,39,.97);box-shadow:0 3px 18px rgba(0,0,0,.18)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.site-brand img{max-height:54px;width:auto}
.site-brand-text{font-size:1.05rem;line-height:1.05}
.site-brand-text span{display:block;color:var(--cyan);font-size:.72rem;letter-spacing:1.4px;margin-top:4px}
.main-nav > ul {display:flex;list-style:none;margin:0;padding:0}
.main-nav a{color:#fff;font-weight:700;font-size:.92rem}
.main-nav a:hover{color:var(--cyan)}
.menu-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.4);color:#fff;padding:8px 11px;border-radius:5px}
.hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden;background:
linear-gradient(90deg,rgba(7,24,39,.96) 0%,rgba(7,24,39,.82) 43%,rgba(7,24,39,.15) 100%),
linear-gradient(135deg,#0b3150,#071827 58%,#0b6b9f)}
.hero:after{content:"";position:absolute;right:-10%;bottom:-35%;width:70%;height:85%;background:radial-gradient(ellipse,rgba(23,183,232,.28),transparent 62%);transform:rotate(-8deg)}
.hero-content{position:relative;z-index:2;color:#fff;max-width:720px;padding:90px 0}
.eyebrow{display:inline-block;color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:2px;font-size:.8rem;margin-bottom:14px}
.hero h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.92;margin:0 0 22px;letter-spacing:-3px;text-transform:uppercase}
.hero h1 span{color:var(--cyan)}
.hero p{font-size:1.25rem;max-width:650px;color:#e6f0f6;margin:0 0 30px}
.btn{display:inline-block;border-radius:5px;padding:13px 21px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin:4px 7px 4px 0}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:#b91f25;color:#fff}
.btn-secondary{background:#fff;color:var(--navy)}.btn-secondary:hover{background:#e8f7fc;color:var(--navy)}
.section{padding:76px 0}
.section.alt{background:var(--light)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
.section-kicker{color:var(--red);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:1.8px}
.section h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:6px 0 0;text-transform:uppercase;letter-spacing:-1px}
.section-intro{max-width:700px;color:var(--muted)}
.race-card{background:var(--navy);color:#fff;border-radius:10px;padding:34px;display:grid;grid-template-columns:1.3fr .7fr;gap:35px;box-shadow:var(--shadow)}
.race-card .date{color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:1px}
.race-card h3{font-size:2.3rem;margin:7px 0 10px}
.race-meta{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.race-meta div{border-left:3px solid var(--cyan);padding-left:13px}
.race-meta strong{display:block;text-transform:uppercase;font-size:.72rem;color:#9fb4c4;letter-spacing:1px}
.race-meta span{font-weight:800}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.stat{padding:25px;border:1px solid var(--border);border-radius:8px;background:#fff}
.stat strong{display:block;font-size:2.2rem;color:var(--blue);line-height:1}
.stat span{display:block;margin-top:7px;color:var(--muted);font-weight:700}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-card{border:1px solid var(--border);border-radius:9px;overflow:hidden;background:#fff;box-shadow:0 5px 20px rgba(7,24,39,.05)}
.news-thumb{aspect-ratio:16/9;background:#dfe8ee;overflow:hidden}
.news-thumb img{width:100%;height:100%;object-fit:cover}
.news-body{padding:22px}
.news-date{font-size:.75rem;font-weight:800;color:var(--red);text-transform:uppercase}
.news-card h3{font-size:1.25rem;line-height:1.2;margin:8px 0 10px}
.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.class-card{position:relative;background:var(--navy);color:#fff;border-radius:9px;padding:28px;min-height:180px;overflow:hidden}
.class-card:after{content:"";position:absolute;width:170px;height:170px;border:24px solid rgba(23,183,232,.12);border-radius:50%;right:-60px;bottom:-70px}
.class-card h3{font-size:1.55rem;margin:0 0 10px}
.class-card p{color:#c7d8e2;margin:0}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.about-panel{background:linear-gradient(145deg,#071827,#0c3c5d);border-radius:12px;min-height:380px;padding:42px;color:#fff;display:flex;flex-direction:column;justify-content:end;box-shadow:var(--shadow)}
.about-panel .big-number{font-size:6rem;line-height:.8;font-weight:900;color:var(--cyan);opacity:.9}
.cta{background:var(--red);color:#fff;text-align:center;padding:62px 0}
.cta h2{font-size:clamp(2rem,4vw,3.4rem);margin:0 0 12px;text-transform:uppercase}
.cta p{max-width:700px;margin:0 auto 25px;color:#ffe7e7}
.sponsor-strip{background:#f7f9fa;padding:35px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sponsor-list{display:flex;justify-content:center;align-items:center;gap:45px;flex-wrap:wrap;font-weight:900;color:#667784;text-transform:uppercase;letter-spacing:1px}
.site-footer{background:#06131f;color:#aebfcb;padding:55px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.site-footer h3{color:#fff;margin-top:0}
.site-footer a{color:#cde4ef}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:18px;font-size:.85rem}
.single-wrap{padding:70px 0}.single-wrap article{max-width:900px;margin:auto}.single-wrap h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05}.single-meta{color:var(--muted);margin-bottom:25px}
.wp-block-button__link{background:var(--red)}
@media(max-width:850px){
 .header-inner{min-height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:68px;background:var(--navy);padding:15px 4%}.main-nav.open{display:block}.main-nav ul{display:block}.main-nav li{padding:10px 0}
 .hero{min-height:580px}.hero-content{padding:70px 0}.race-card,.about-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.news-grid,.class-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .hero h1{letter-spacing:-1px}.section{padding:55px 0}.section-head{display:block}.race-meta{grid-template-columns:1fr}.stat-grid,.news-grid,.class-grid,.footer-grid{grid-template-columns:1fr}
}

.standings-wrap{overflow-x:auto;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow)}
.ercu-standings{width:100%;border-collapse:collapse;min-width:650px}
.ercu-standings th{background:var(--navy);color:#fff;text-align:left;text-transform:uppercase;font-size:.75rem;letter-spacing:.8px;padding:15px}
.ercu-standings td{padding:15px;border-bottom:1px solid var(--border)}
.ercu-standings tr:last-child td{border-bottom:0}
.ercu-standings tbody tr:nth-child(even){background:#f7f9fa}
/* =========================================================
   ERCU HOMEPAGE - ADDITIONAL STYLES
   ========================================================= */

/* Section headings */
.section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 34px;
}

.section-heading > div {
    flex: 1;
}

.section-heading .btn {
    flex-shrink: 0;
    margin-bottom: 4px;
}


/* =========================================================
   STATS
   ========================================================= */

.stats-section {
    background: var(--navy);
    color: #fff;
    padding-top: 48px;
    padding-bottom: 48px;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}

.stat {
    padding: 12px 30px;
    border-right: 1px solid rgba(255,255,255,.18);
}

.stat:last-child {
    border-right: 0;
}

.stat strong {
    display: block;
    font-size: 3rem;
    line-height: 1;
    font-weight: 900;
    color: #ffffff;
    margin-bottom: 10px;
}

.stat span {
    display: block;
    color: #ffffff;
    font-size: .95rem;
    line-height: 1.4;
}

.stat:first-child {
    padding-left: 0;
}

.stat:last-child {
    border-right: 0;
}

.stat strong {
    display: block;
    font-size: 3rem;
    line-height: 1;
    font-weight: 900;
    color: var(--cyan);
    margin-bottom: 10px;
}

.stat span {
    display: block;
    color: rgba(255,255,255,.78);
    font-size: .95rem;
    line-height: 1.4;
}


/* =========================================================
   RACING FEATURE CARDS
   ========================================================= */

.feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.feature-card {
    display: block;
    position: relative;
    padding: 34px;
    background: #fff;
    border: 1px solid #e3e7eb;
    border-top: 4px solid var(--red);
    text-decoration: none;
    color: var(--navy);
    transition: transform .2s ease, box-shadow .2s ease;
}

.feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 35px rgba(7,24,39,.12);
}

.feature-number {
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: 2px;
    color: var(--red);
    margin-bottom: 22px;
}

.feature-card h3 {
    font-size: 1.45rem;
    margin: 0 0 12px;
}

.feature-card p {
    color: #53606c;
    line-height: 1.65;
    margin-bottom: 25px;
}

.feature-link {
    display: inline-block;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: 1px;
    color: var(--red);
}


/* =========================================================
   BOATS & DRIVERS
   ========================================================= */

.section-dark {
    background: var(--navy);
    color: #fff;
}

.section-dark .section-kicker {
    color: var(--gold);
}

.section-dark h2 {
    color: #fff;
}

.class-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.class-card {
    padding: 30px;
    min-height: 180px;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.12);
    border-left: 3px solid var(--cyan);
    transition: background .2s ease, transform .2s ease;
}

.class-card:hover {
    background: rgba(255,255,255,.09);
    transform: translateY(-3px);
}

.class-card h3 {
    color: #fff;
    font-size: 1.2rem;
    margin: 0 0 12px;
}

.class-card p {
    color: rgba(255,255,255,.72);
    line-height: 1.6;
    margin: 0;
}


/* =========================================================
   NEWS
   ========================================================= */

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

.news-card {
    background: #fff;
    border: 1px solid #e3e7eb;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}

.news-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(7,24,39,.1);
}

.news-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #e8edf1;
}

.news-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}

.news-card:hover .news-image img {
    transform: scale(1.04);
}

.news-content {
    padding: 26px;
}

.news-date {
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--red);
    margin-bottom: 10px;
}

.news-content h3 {
    font-size: 1.25rem;
    line-height: 1.25;
    margin: 0 0 12px;
}

.news-content h3 a {
    color: var(--navy);
    text-decoration: none;
}

.news-content h3 a:hover {
    color: var(--red);
}

.news-content p {
    color: #596570;
    line-height: 1.6;
}

.news-placeholder {
    grid-column: 1 / -1;
}


/* =========================================================
   ABOUT
   ========================================================= */

.about-section {
    background: #f2f5f7;
}

.about-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.about-grid h2 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: 1.05;
    margin: 0;
}

.large-copy {
    font-size: 1.25rem;
    line-height: 1.55;
    color: var(--navy);
}

.about-grid p {
    line-height: 1.7;
    color: #53606c;
}


/* =========================================================
   SPONSOR SECTION
   ========================================================= */

.sponsor-section {
    background:
        radial-gradient(
            ellipse at 80% 50%,
            rgba(23,183,232,.18),
            transparent 55%
        ),
        var(--navy);
    color: #fff;
    text-align: center;
}

.sponsor-content {
    max-width: 820px;
    margin: 0 auto;
}

.sponsor-content .section-kicker {
    color: var(--gold);
}

.sponsor-content h2 {
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.4rem);
    line-height: 1.05;
    margin: 0 0 22px;
}

.sponsor-content p {
    max-width: 680px;
    margin: 0 auto 30px;
    color: rgba(255,255,255,.78);
    font-size: 1.05rem;
    line-height: 1.7;
}

.sponsor-content .hero-buttons {
    justify-content: center;
}


/* =========================================================
   NEXT RACE
   ========================================================= */

.next-race-section {
    background: #fff;
}

.race-card {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    background: var(--navy);
    color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 15px 40px rgba(7,24,39,.14);
}

.race-main {
    padding: 38px;
}

.race-date {
    color: var(--gold);
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.race-main h3 {
    color: #fff;
    font-size: 2rem;
    margin: 0 0 10px;
}

.race-location {
    color: rgba(255,255,255,.75);
    margin-bottom: 25px;
}

.race-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-content: center;
    padding: 30px;
    background: rgba(255,255,255,.035);
}

.race-detail {
    padding: 18px;
    border-left: 2px solid var(--cyan);
}

.race-detail strong {
    display: block;
    font-size: .68rem;
    letter-spacing: 1.5px;
    color: var(--cyan);
    margin-bottom: 7px;
}

.race-detail span {
    display: block;
    color: rgba(255,255,255,.88);
    font-size: .9rem;
    line-height: 1.4;
}


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

@media (max-width: 900px) {

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 0;
    }

    .stat:nth-child(2) {
        border-right: 0;
    }

    .feature-grid,
    .class-grid,
    .news-grid {
        grid-template-columns: 1fr;
    }

    .about-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .race-card {
        grid-template-columns: 1fr;
    }

    .race-details {
        grid-template-columns: 1fr 1fr;
    }
}


@media (max-width: 600px) {

    .section-heading {
        display: block;
    }

    .section-heading .btn {
        margin-top: 18px;
    }

    .stats-grid {
        grid-template-columns: 1fr;
    }

    .stat,
    .stat:first-child {
        padding-left: 0;
        padding-right: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.15);
        padding-bottom: 20px;
    }

    .stat:last-child {
        border-bottom: 0;
    }

    .race-main {
        padding: 28px;
    }

    .race-details {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .race-main h3 {
        font-size: 1.6rem;
    }

    .feature-card,
    .class-card,
    .news-content {
        padding: 25px;
    }
}


.race-details {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 28px;
}

.race-detail {
    padding-top: 14px;
    border-top: 2px solid var(--red);
}

.race-detail strong {
    display: block;
    color: var(--cyan);
    font-size: 12px;
    letter-spacing: 1.5px;
    margin-bottom: 8px;
}

.race-detail span {
    color: var(--ink);
    font-size: 15px;
    line-height: 1.5;
    display: block;
    margin-top: 6px;
}
.race-details .race-detail span {
    color: var(--ink) !important;
    font-size: 15px;
    line-height: 1.5;
    display: block;
    margin-top: 6px;
}
.race-details .race-detail span {
    color: #10202f !important;
    font-size: 15px !important;
    line-height: 1.5;
    display: block;
    margin-top: 6px;
}
.race-details .race-detail span {
    display: block !important;
    color: #10202f !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    margin-top: 6px !important;
}
.boat-card {
    display: block;
    padding: 22px;
    background: #142638;
    border: 1px solid rgba(255,255,255,.08);
    border-left: 2px solid #29b6e6;
    border-radius: 5px;
    text-decoration: none;
    color: #fff;
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}

.boat-card:hover {
    transform: translateY(-4px);
    background: #193044;
    border-color: #29b6e6;
    text-decoration: none;
}

.boat-card h3 {
    color: #fff;
    margin: 0 0 12px;
}

.boat-card p {
    color: #d6dee5;
    margin: 0;
}
/* SIX WAYS TO RACE - CLICKABLE CARDS */
section .boat-card {
    display: block !important;
    padding: 22px !important;
    background: #142638 !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-left: 2px solid #29b6e6 !important;
    border-radius: 5px !important;
    text-decoration: none !important;
    color: #ffffff !important;
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}

section .boat-card h3 {
    color: #ffffff !important;
    margin: 0 0 12px !important;
}

section .boat-card p {
    color: #d6dee5 !important;
    margin: 0 !important;
}

section .boat-card:hover {
    transform: translateY(-4px);
    background: #193044 !important;
    border-color: #29b6e6 !important;
    text-decoration: none !important;
}
/* HOMEPAGE — SIX WAYS TO RACE CARDS */

.class-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.class-grid .boat-card {
    position: relative;
    display: block;
    min-height: 150px;
    padding: 24px 22px 20px;
    background: #132536;
    border: 1px solid #21415a;
    border-left: 3px solid #17b7e8;
    border-radius: 5px;
    color: #ffffff;
    text-decoration: none;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.class-grid .boat-card::after {
    content: "";
    position: absolute;
    right: -25px;
    bottom: -45px;
    width: 120px;
    height: 120px;
    border: 18px solid rgba(23, 183, 232, 0.08);
    border-radius: 50%;
}

.class-grid .boat-card:hover {
    transform: translateY(-3px);
    background: #172c40;
    border-color: #17b7e8;
}

.class-grid .boat-card .card-number {
    display: block;
    margin-bottom: 22px;
    color: #d9272e;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 1px;
}

.class-grid .boat-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 10px;
    color: #ffffff;
    font-size: 1rem;
}

.class-grid .boat-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #c4ced6;
    font-size: 0.82rem;
    line-height: 1.55;
}

.class-grid .boat-card .card-arrow {
    position: absolute;
    right: 20px;
    bottom: 18px;
    z-index: 2;
    color: #17b7e8;
    font-size: 1.1rem;
    font-weight: 700;
}

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

@media (max-width: 520px) {
    .class-grid {
        grid-template-columns: 1fr;
    }
}
/* =========================================
   SIX WAYS TO RACE — HOMEPAGE CARDS
   ========================================= */

.class-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 28px;
}

.class-grid .boat-card {
    display: block;
    position: relative;
    min-height: 145px;
    padding: 26px 24px;
    background: #10263a;
    border: 1px solid #24445c;
    border-left: 3px solid #08aeea;
    border-radius: 6px;
    text-decoration: none !important;
    color: #fff !important;
    transition: transform 0.2s ease,
                border-color 0.2s ease,
                background 0.2s ease;
    overflow: hidden;
}

.class-grid .boat-card:hover {
    transform: translateY(-3px);
    background: #163149;
    border-color: #08aeea;
}

.class-grid .boat-card::after {
    content: "";
    position: absolute;
    right: -35px;
    bottom: -55px;
    width: 130px;
    height: 130px;
    border: 16px solid rgba(8, 174, 234, 0.10);
    border-radius: 50%;
    pointer-events: none;
}

.class-grid .boat-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 14px;
    color: #fff !important;
    font-size: 1.05rem;
    line-height: 1.2;
}

.class-grid .boat-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #d5e0e8 !important;
    font-size: 0.88rem;
    line-height: 1.5;
}

.class-grid .boat-card .card-arrow {
    display: block;
    position: relative;
    z-index: 2;
    margin-top: 18px;
    color: #08aeea !important;
    font-size: 0.85rem;
    font-weight: 700;
}

/* Tablet */
@media (max-width: 900px) {
    .class-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Phone */
@media (max-width: 600px) {
    .class-grid {
        grid-template-columns: 1fr;
    }

    .class-grid .boat-card {
        min-height: auto;
    }
}
/* Six Ways to Race — card hover and arrow polish */
.boat-card {
    position: relative;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.boat-card::after {
    left: 16px;
    right: auto;
    bottom: 14px;
    top: auto;
    position: absolute;
}

.boat-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    border-color: var(--cyan);
}

.boat-card:hover::after {
    transform: translateX(4px);
}
/* WHY ERCU CARDS */

.why-ercu-section {
background: #e8eff4;
	padding: 80px 0;
}

.why-ercu-grid {
    margin-top: 30px;
}

.why-card {
    position: relative;
    min-height: 215px;
    padding: 30px;
    background: #ffffff;
    border: 1px solid #d9e0e6;
    border-top: 3px solid #e31e24;
    box-shadow: 0 8px 24px rgba(7, 24, 39, 0.06);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.why-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(7, 24, 39, 0.12);
}

.why-card .card-number {
    margin-bottom: 22px;
    color: #e31e24;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.why-card h3 {
    margin: 0 0 14px;
    color: #071827;
    font-size: 20px;
    font-weight: 800;
}

.why-card p {
    margin: 0;
    color: #4d5d6d;
    font-size: 14px;
    line-height: 1.7;
}

@media (max-width: 768px) {
    .why-ercu-section {
        padding: 60px 0;
    }

    .why-card {
        min-height: auto;
    }
}
.race-detail span {
    color: #ffffff !important;
}
.stat-text {
    color: #ffffff !important;
}
/* STATS SECTION - FINAL STYLING */

.stats-grid .stat-card .stat-number {
	display: block;
font-size: 3rem !important;
	line-height: 1 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    margin-bottom: 10px;
}

.stats-section .stat-label {
    display: block;
    font-size: 0.9rem !important;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 6px;
}

.stats-section .stat-text {
    display: block;
    font-size: 0.9rem !important;
    line-height: 1.4;
    color: #ffffff !important;
}
/* STATS NUMBERS */
.stats-section .stat-number {
    font-size: 2.5rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    margin-bottom: 8px !important;
}
/* SIX WAYS TO RACE — CARD STYLE */
.race-card {
    background: #ffffff !important;
    color: #102235 !important;
    border: 1px solid #d9dfe5 !important;
    border-top: 3px solid #ed1c24 !important;
}

.race-card h3 {
    color: #102235 !important;
}

.race-card p {
    color: #435466 !important;
}

.race-card .card-number {
    color: #ed1c24 !important;
}