/* ========== RESET ========== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
    overflow-y: scroll;
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    overflow-x: hidden;
    overflow-y: auto;
    /* ✅ allow body scroll */
    background: #000;
    font-family: "Montserrat", sans-serif;
    /* font-family: "Oswald", sans-serif; */
}

a,
a:link {
    color: #fff;
    text-decoration: none;
}

a:hover {
    color: #ed3237;
    text-decoration: none;
}

a img {
    border: none;
    outline: none;
}

ul li {
    list-style: none;
}

/* ========== PRELOADER ========== */
#preloader {
    position: fixed;
    inset: 0;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

/* your svg */
svg {
    width: 300px;
    height: 300px;
    visibility: hidden;
}

/* ========== INTRO VIDEO ========== */

#introVideoWrapper,
#introVideoWrapper * {
    cursor: none !important;
}


#introVideoWrapper {
    position: fixed;
    inset: 0;
    background: #000;
    z-index: 100000;
    display: none;
    cursor: none;
    /* hide normal cursor */
}

#introVideo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===== CURSOR SKIP ORB ===== */
#skipOrb {
    position: fixed !important;
    /* 🔥 critical */
    top: 0;
    left: 0;
    pointer-events: none;
    transform: translate(-50%, -50%);
    z-index: 99999;

    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(8px);
    /* IMPORTANT FIX */
    mix-blend-mode: normal;
    /* ❗ remove screen */
    border: 2px solid rgba(255, 0, 0, 0.9);
    box-shadow: 0 0 20px rgba(255, 0, 0, 0.6);
}

/* mirror glass effect */
#skipOrb .orb-glass {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.4);
    /* stronger contrast */
    border: 1px solid rgba(255, 255, 255, 0.3);
}


/* SKIP text */
#skipOrb .orb-text {
    position: relative;
    font-size: 13px;
    letter-spacing: 3px;
    font-weight: 600;
    color: white;
    z-index: 2;
    text-align: center;
}

/* red-black racing particle ring */
#skipOrb .orb-particles {
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 2px dashed rgba(255, 0, 0, 0.9);
    animation: spin 2s linear infinite;
    filter: drop-shadow(0 0 8px red);
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Video Headlines */
.video-headlines {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
    z-index: 1;
    pointer-events: none;
}

.v-head {
    font-family: "Oswald", sans-serif;
    font-size: 5rem;
    color: #fff;
    text-transform: uppercase;
    text-shadow: 0 0 20px rgba(255, 0, 0, 0.5);
    margin-bottom: 20px;
}

.v-sub {
    font-family: "Montserrat", sans-serif;
    font-size: 1.5rem;
    color: #ed3237;
    letter-spacing: 2px;
    font-weight: 400;
}

@media (max-width: 768px) {
    .v-head {
        font-size: 2.5rem;
    }

    .v-sub {
        font-size: 1rem;
    }
}


/* ========== MAIN SITE ========== */
#site {
    position: relative;
    height: auto;
    z-index: 1;
    overflow: visible;
    /* ✅ remove inner scroll */
    scroll-behavior: smooth;
    /* scroll-snap-type: none; */
    display: none;
}

/* Reveal overlay */
#circleReveal {
    position: fixed;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: black;
    left: 50%;
    bottom: -200px;
    transform: translateX(-50%) scale(1);
    z-index: 99999;
    /* circle on top */
    display: none;
}

.container {
    width: 96%;
    position: relative;
    z-index: 1;
}

p {
    font-size: 0.9rem;
    font-weight: 400;
    margin-bottom: 1rem;
    color: #aaa;
}

h2 {
    font-size: 2rem;
    color: #ED3237;
    background-image: linear-gradient(135deg, #ED3237 30%, #E8E8E8 40%, #ED3237 60%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    font-weight: 200;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.flxMid {
    align-items: center;
    justify-content: center;
}

.imgAdj {
    width: 100%;
    height: auto;
}

.imgVh {
    width: 60vh;
    height: auto;
}

.mouse {
    width: 30px;
    height: 60px;
    border: 3px solid #ed3237;
    border-radius: 60px;
    position: absolute;
    bottom: 2%;
    z-index: 1;

    &::before {
        content: '';
        width: 12px;
        height: 12px;
        position: absolute;
        top: 10px;
        left: 50%;
        transform: translateX(-50%);
        background-color: #ed3237;
        border-radius: 50%;
        opacity: 1;
        animation: wheel 2s infinite;
        -webkit-animation: wheel 2s infinite;
    }
}

@keyframes wheel {
    to {
        opacity: 0;
        top: 55px;
    }
}

@-webkit-keyframes wheel {
    to {
        opacity: 0;
        top: 55px;
    }
}

#logo {
    position: fixed;
    /* stays top left */
    top: 20px;
    /* final position */
    left: 60px;
    z-index: 999999;
    transform: translateY(50%);
    /* start 50% down */
    opacity: 0;
}

#logo img {
    width: 15%;
    /* adjust size as needed */
    height: auto;
}

#logo.active img {
    filter: contrast(0) brightness(2);
    transition: opacity 0.3s ease, transform 0.4s ease;
}

/* overlapping sections */
.section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    position: relative;
    padding: 80px 0;
    /* Add balanced padding */
}

/* Ensure the home slider stays full screen without extra padding */
.sec1 {
    height: 100vh;
    padding: 0;
}

/* ✅ Sticky only for sec1 → sec4 */
.sec1,
.sec2,
.sec3,
.sec4 {
    position: sticky;
    top: 0;
}

.sec1,
.sec2,
.sec3,
.sec4 {
    scroll-snap-align: start;
}


.sec1 {
    z-index: 1;
}

.sec2 {
    background: #1a1a1a;
    z-index: 2;
    overflow: hidden;
}

.sec3 {
    background: url(../images/sec3_bg.jpg) center top;
    background-size: cover;
    z-index: 3;
}
.sec3.ccPg {
    background: url(../images/bg-cc.png) center top;
    background-size: cover;
}

.sec4 {
    background: #2a2a2a;
    z-index: 4;
}

.sec5 {
    /* background: #2a2a2a; */
    z-index: 5;
}

/* cinematic overlay effect */
.section::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.7));
    pointer-events: none;
}

/* slider */
.slider {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #000;
}

/* Slides wrapper */
.slides {
    display: flex;
    height: 100%;
    transition: transform 1s ease-in-out;
}

/* Each slide */
.slide {
    min-width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}

/* slide content  */
.slide-content {
    position: absolute;
    left: 60px;
    bottom: 140px;
    color: #fff;
    max-width: 600px;
    z-index: 10;
}

.slide-content .content {
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: all .6s ease;
}

.slide-content .content.active {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

.slide-content h1 {
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.1;
}

/* .slide-content p {
    margin: 15px 0 25px;
    font-size: 1rem;
    opacity: .65;
    font-weight: 400;
} */

.slide-content .content h1,
.slide-content .content p {
    opacity: 0;
    transform: translateX(-50px);
    /* h1 starts from left */
}

.slide-content .content p {
    transform: translateY(30px);
    /* p starts from bottom */
}


/* .slide-content .btn {
    display: inline-block;
    padding: 12px 28px;
    border: 2px solid #fff;
    color: #fff;
    text-decoration: none;
    transition: .3s;
}

.slide-content .btn:hover {
    background: #fff;
    color: #000;
} */


/* Tabs */
.tabs {
    position: absolute;
    bottom: 40px;
    left: 60px;
    display: flex;
    gap: 30px;
    z-index: 1;
}

.tab {
    position: relative;
    color: #fff;
    font-size: 1rem;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    padding-bottom: 12px;
    opacity: .6;
}

.tab.active {
    opacity: 1;
}

/* Loader border */
.tab .progress {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 4px;
    width: 0%;
    background: #ed3237;
}

/* image holder */
.imglayout {
    width: 100%;
    padding: 0 6rem;
    position: relative;
}

.imglayColorBg {
    width: 100%;
    min-height: 70vh;
    background: #ed3237;
    position: relative;
}

/* .imgholder {position: absolute; left: 0; top: 50%; transform: translate(0, -50%); z-index: 1;} */
.imgholder {
    position: absolute;
    left: 0;
    top: 10%;
    transform: translateY(-50%);
    z-index: 1;
}

.txtColorBg {
    width: 100%;
    padding: 2rem;
    margin: 1rem 0;
    background: #ed3237;
    position: relative;
}

.txtslDng {
    position: relative;
    height: 175px;
    overflow: hidden;
}

.v-slider {
    position: relative;
    height: 100%;
}

.v-slide {
    position: absolute !important;
    /* FORCE THIS */
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease;
}

.v-slide.active {
    opacity: 1;
}

.txtslDng,
.v-slider {
    display: block !important;
}

/* h3 animation (TOP → CENTER) */
.v-slide h3 {
    font-size: 2rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;

    /* racing glow */
    text-shadow:
        0 0 6px rgba(237, 50, 55, 0.6),
        0 0 12px rgba(237, 50, 55, 0.5),
        0 0 24px rgba(237, 50, 55, 0.4);

    transform: translateY(-50px);
    opacity: 0;
    transition: all 0.7s cubic-bezier(.2, .8, .2, 1);
}


/* p animation (BOTTOM → CENTER) */
.v-slide p {
    color: #fff;
    transform: translateY(40px);
    opacity: 0;
    transition: all 1.7s cubic-bezier(.2, .8, .2, 1);
}

/* when active */
.v-slide.active h3,
.v-slide.active p {
    transform: translateY(0);
    opacity: 1;
}

/* delay like cinematic titles */
.v-slide.active h3 {
    transition-delay: 0s;
}

.v-slide.active p {
    transition-delay: 0.25s;
    /* movie-style delay */
}


/* exit animation */
.v-slide.exit h3 {
    transform: translateY(-50px);
    opacity: 0;
    transition-delay: 0.02s;
}

.v-slide.exit p {
    transform: translateY(50px);
    opacity: 0;
    transition-delay: 0.05s;
}

.strngHglght {
    color: #ed3237;
}

.readySec {
    padding: 2rem;
    border: 1px solid #ed3237;
    margin-top: 4rem;
    margin-bottom: 2rem;
    /* Reduced from 5rem to avoid too much gap */
}

.padtb {
    padding: 3rem 0;
}

.btnN {
    background-color: rgb(255 255 255 / 5%);
    padding: 1rem;
    margin-top: 1rem;
    display: inline-block;
    position: relative;

}

span.btnTxt {
    position: relative;
    z-index: 1;
    transition: all 0.5s ease-in-out;
}

span.btnNbgHvr {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background: #ed3237;
    height: 100%;
    z-index: 0;
    transition: all 0.5s ease-in-out;
}

.btnN:hover span.btnNbgHvr {
    width: 2%;
    transition: all 0.5s cubic-bezier(.2, .8, .2, 1);
}

.btnN:hover span.btnTxt {
    color: #ed3237;
}

/*car anim footer */

footer {
    background-color: #222;
    position: relative;
    border-top: 1px solid #333;
    z-index: 1;
}

/* .carAnim {
    width: 25%;
    position: absolute;
    left: 50%;
    top: -50px;
    transform: translate(-50%, 0);
}
.ftyre {
    position: absolute;
    
    width: 6%;
    z-index: 2;
}
.ftyre.f1 {left: 30px; bottom: 13px;}
.ftyre.f2 {right: 55px; bottom: 13px;}
.fcar {position: relative;} */

footer p,
footer a:link,
footer a {
    font-size: 0.8rem;
    color: #fff;
    transition: color 0.3s;
}

footer p {
    color: #ed3237;
    margin-bottom: 0;
}

footer a:hover {
    color: #ed3237;
}

footer ul {
    display: flex;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.flxEnd {
    justify-content: flex-end;
    display: flex;
}

.value-card {
    padding: 25px;
    background: #fff;
    border-radius: 10px;
    height: 100%;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}

.core-values-slider {
    padding: 40px 0;
}
.swiper-pagination-bullet {background: #aaaaaa;}
.swiper-pagination-bullet-active {background: #ed3237;}

/* ========================================= */
/* ============ RESPONSIVE ================= */
/* ========================================= */

/* ---------- Large Tablets ---------- */
@media (max-width: 1200px) {

    .slide-content {
        left: 40px;
        bottom: 120px;
        max-width: 500px;
    }

    .slide-content h1 {
        font-size: 2rem;
    }

    .tabs {
        left: 40px;
    }

    #logo img {
        width: 120px;
    }
}


/* ---------- Tablets ---------- */
@media (max-width: 992px) {

    /* remove sticky stacking */
    .sec1,
    .sec2,
    .sec3,
    .sec4 {
        position: relative;
    }

    .section {
        height: auto;
        padding: 100px 0;
    }

    .section.sec1 {
        padding: 0;
    }

    /* .slider {
    height: 80vh;
  } */

    .slide-content {
        left: 30px;
        bottom: 100px;
        max-width: 90%;
    }

    .slide-content h1 {
        font-size: 1.8rem;
    }

    .tabs {
        left: 30px;
        bottom: 30px;
        gap: 20px;
    }

    .imglayout {
        padding: 2rem 1rem;
        position: relative;
    }

    .imgholder {
        position: relative;
        transform: none !important;
        top: 0;
        width: 100%;
        z-index: 1;
    }

    .imglayColorBg {
        position: absolute;
        top: 1rem;
        left: 5%;
        width: 90%;
        height: calc(100% - 2rem);
        min-height: 0;
        /* override the 70vh from desktop */
        z-index: 0;
    }

    .imgVh {
        width: 100%;
        height: auto;
    }

    .txtslDng {
        height: 250px;
    }

    .v-slide {
        position: relative;
    }

    footer ul {
        flex-wrap: wrap;
        justify-content: center;
    }

    .flxEnd {
        justify-content: center;
        margin-top: 15px;
    }

}


/* ---------- Mobile ---------- */
@media (max-width: 768px) {

    html,
    body {
        overflow-x: hidden;
    }

    #logo {
        left: 20px;
        top: 24px;
        transform: none !important;
        opacity: 1 !important;
    }

    #logo img {
        width: 120px;
    }

    .nav-toggle {
        top: 24px;
        /* Matches logo top */
        right: 20px;
    }

    .section {
        padding: 60px 20px 40px 20px;
        /* Reduced top/bottom padding */
    }

    .slider {
        height: 70vh;
    }

    .slide-content {
        left: 20px;
        bottom: 80px;
    }

    .slide-content h1 {
        font-size: 1.5rem;
    }

    .slide-content p {
        font-size: 0.9rem;
    }

    .tabs {
        left: 20px;
        gap: 15px;
        font-size: 0.8rem;
    }

    h2 {
        font-size: 1.5rem;
    }

    p {
        font-size: 0.85rem;
    }

    .imglayout {
        padding: 2rem 1rem;
    }

    .imglayColorBg {
        width: 90%;
        min-height: 0;
    }

    .txtColorBg {
        padding: 1.2rem;
    }

    .v-slide h3 {
        font-size: 1.4rem;
    }

    .mouse {
        display: none;
    }

    footer .row {
        text-align: center;
    }

    .padtb.sec5 {
        padding: 20px 0;
    }

}

/* ---------- Small Mobile ---------- */
@media (max-width: 480px) {

    #logo img {
        width: 35%;
    }

    .imgholder {
        align-items: center;
        justify-content: center;
        display: flex;
    }


    /* Removed redundant .site-ready #logo reset to prevent misalignment */

    .nav-toggle {
        top: 24px;
    }

    .mbtm3 {
        margin-bottom: 3rem;
    }

    .nav-wrapper {
        left: 50px;
        transform: translate(-8%, -50%);
        width: 100%;
    }

    .nav-wrapper .row {
        width: 100%;
    }

    .imgVh {
        width: 50vh;
    }

    .imgMb .imgAdj {
        width: 57%;
    }

    .imglayout {
        padding: 0 3rem;
    }

    #logo.active {
        background-color: transparent;
    }

    .slider {
        height: 100svh;
    }

    .slide-content {
        bottom: 60px;
    }

    .slide-content h1 {
        font-size: 1.3rem;
    }

    .txtslDng {
        height: 150px;
    }

    /* .tabs {
    flex-direction: row;
    gap: 10px;
  } */

    .txtslDng {
        height: 150px;
        /* increase as needed */
    }

    .v-slide {
        position: relative;
        display: block !important;
    }

    footer ul {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px 15px;
    }
    .imglayout.shop {padding: 0;}
    .shop .merch-card {padding: 0;}
    .shoptxt {padding: 20px;}
}

/* ================= INNER PAGES GLOBAL STYLES ================= */
.inner-intro {
    height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    z-index: 1;

    background-image: url(../images/inerbg.png);
    background-size: cover;
    background-position: center;
}

.inner-intro h1 {
    font-family: "Oswald", sans-serif;
    font-size: 4rem;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.1;
}

.inner-intro p {
    font-size: 1.2rem;
    color: #ed3237;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.about-section,
.ms-section,
.comm-section,
.contact-section {
    padding: 100px 0;
    background: #000;
}

.heritage-box {
    background: #111;
    border-left: 5px solid #ed3237;
    padding: 40px;
    margin-bottom: 50px;
}

.core-values-grid,
.merch-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.value-card,
.merch-card {
    background: #1a1a1a;
    padding: 30px;
    border: 1px solid #333;
    transition: all 0.3s ease;
}

.value-card:hover,
.merch-card:hover {
    border-color: #ed3237;
    transform: translateY(-10px);
}

.value-card h3,
.merch-card h3 {
    color: #ed3237;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.imgReverse {transform: scaleX(-1);}

.quote-block,
.paddock-hero {
    padding: 80px 0;
    text-align: center;
    position: relative;
    z-index: 1;
}

.lab-section {
    padding: 100px 0;
    background: #050505;
    position: relative;
    z-index: 1;
}

.quote-block h2,
.paddock-hero h2 {
    -webkit-text-fill-color: #fff;
    background: none;
    font-size: 2.5rem;
    margin-bottom: 0;
    text-transform: none;
}

.lab-section h2 {
    color: #fff !important;
    font-size: 3.5rem;
    margin-bottom: 30px;
    text-align: left;
    font-family: 'Oswald', sans-serif;
}

.lab-section p,
.lab-section li {
    color: #f0f0f0 !important;
    font-size: 1.25rem;
    line-height: 1.8;
    text-align: left;
}

.lab-section strong {
    color: #ed3237 !important;
    font-weight: 700;
}

.lab-section .text-danger {
    color: #ed3237 !important;
    opacity: 1;
    display: block;
    margin-bottom: 10px;
}

.feature-box {
    background: #111;
    padding: 40px;
    margin-bottom: 30px;
    border: 1px solid #222;
    transition: all 0.4s ease;
    height: 100%;
}

.feature-box h3 {
    color: #fff;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    font-size: 1.6rem;
    margin-bottom: 20px;
}

.feature-box ul {
    padding-left: 0;
    list-style: none;
}

.feature-box ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 15px;
    color: #aaa;
}

.feature-box ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 15px;
    height: 2px;
    background: #ed3237;
}

/* FORM STYLES */
.form-card {
    background: #111;
    padding: 60px;
    border: 1px solid #333;
    max-width: 900px;
    margin: -100px auto 0;
    position: relative;
    z-index: 10;
}

.form-header {
    margin-bottom: 40px;
    border-bottom: 1px solid #ed3237;
    padding-bottom: 20px;
}

.form-group {
    margin-bottom: 25px;
}

.form-group label {
    display: block;
    color: #ed3237 !important;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    font-size: 0.9rem;
    margin-bottom: 8px;
    letter-spacing: 1px;
}

.radio-group {
    display: flex;
    gap: 30px;
}

.radio-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.radio-item label {
    display: inline !important;
    color: #aaa !important;
    text-transform: none !important;
    margin-bottom: 0 !important;
    font-family: inherit !important;
    font-size: 1rem !important;
}

.radio-item input[type="radio"] {
    width: auto;
    margin: 0;
}

.form-control,
.form-select {
    background: #1a1a1a !important;
    border: 1px solid #333 !important;
    border-radius: 0 !important;
    color: #fff !important;
    padding: 12px !important;
    font-size: 1rem !important;
}

.form-control::placeholder {
    color: #666 !important;
    opacity: 1;
}

.form-control:focus,
.form-select:focus {
    border-color: #ed3237 !important;
    box-shadow: none !important;
    outline: none !important;
    background: #222 !important;
}

.file-upload-wrapper {
    border: 2px dashed #333;
    padding: 30px;
    text-align: center;
    background: #0a0a0a;
}

/* CONTACT INFO GRID */
.contact-info-grid {
    margin-top: 80px;
    border-top: 1px solid #222;
    padding-top: 60px;
}

.info-card {
    padding: 20px;
    transition: transform 0.3s ease;
}

.info-card h4 {
    font-family: "Oswald", sans-serif;
    color: #ed3237;
    text-transform: uppercase;
    font-size: 1.4rem;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

.info-card p {
    color: #aaa;
    line-height: 1.6;
    font-size: 0.95rem;
}

.info-card:hover {
    transform: translateY(-5px);
}

/* ================= EXTRA RESPONSIVE ================= */
@media (max-width: 991px) {
    .inner-intro h1 {
        font-size: 3rem;
    }

    .form-card {
        margin-top: 0;
        padding: 40px 20px;
    }

    .heritage-box {
        padding: 30px;
    }

    .mission-text {
        border-right: none;
        border-bottom: 1px solid #333;
        padding-right: 0;
        padding-bottom: 40px;
        margin-bottom: 40px;
    }
}

@media (max-width: 767px) {
    .inner-intro {
        height: 40vh;
        /* Reduced from 50vh to remove top gap */
        padding-top: 60px;
        /* Added some breathing room for fixed header */
    }

    .inner-intro h1 {
        font-size: 2rem;
    }

    .inner-intro p {
        font-size: 1rem;
    }

    .quote-block h2,
    .lab-section h2 {
        font-size: 1.8rem !important;
        text-align: center !important;
    }

    .about-section,
    .ms-section,
    .comm-section,
    .contact-section {
        padding: 60px 0;
    }

    .feature-box {
        padding: 25px;
    }

    .form-header h2 {
        font-size: 1.8rem;
    }

    .form-card {
        margin-top: 0;
    }
}

@media (max-width: 480px) {
    .inner-intro h1 {
        font-size: 1.8rem;
    }

    .core-values-grid,
    .merch-grid {
        grid-template-columns: 1fr;
    }

    .value-card,
    .merch-card {
        padding: 20px;
    }

    .paddock-hero h2 {
        font-size: 1.8rem;
    }
}