/* page-home-redesign.css — 2026 landing page (layouts/home-redesign.php).
   Everything is scoped under .eo-home-rd so nothing leaks site-wide.
   Loaded by Home::index() only when the home page uses the home-redesign layout. */

.eo-home-rd{
    background: #121212;
    font-feature-settings: "lnum";
}
.eo-home-rd .ehr-narrow{
    max-width: 1100px;
    margin: 0 auto;
}
.eo-home-rd .ehr-narrow-sm{
    max-width: 820px;
}
.eo-home-rd .ehr-wide{
    max-width: 1200px;
    margin: 0 auto;
}
.eo-home-rd .ehr-center{
    text-align: center;
}

/* Kickers (small uppercase leads) */
.eo-home-rd .ehr-kicker{
    font-family: 'Archivo', sans-serif;
    font-size: 12px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: #FF4305;
    margin: 0 0 16px;
}
.eo-home-rd .ehr-kicker-grey{
    color: #7A7A7A;
}
.eo-home-rd .ehr-kicker-white{
    color: #fff;
}

/* Section titles (light sections) */
.eo-home-rd .ehr-section-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #121212;
    line-height: 1;
    margin: 0 0 26px;
    font-size: clamp(28px, 4.8vw, 50px);
}
.eo-home-rd .ehr-section-title strong{
    font-weight: 900;
    text-transform: none;
}

/* Buttons */
.eo-home-rd .ehr-btn{
    padding: 12px 26px;
    font-size: 14px;
    cursor: pointer;
}
.eo-home-rd .ehr-btn-sm{
    padding: 11px 22px;
    font-size: 13px;
    cursor: pointer;
}
.eo-home-rd .ehr-btn-ghost{
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
}
.eo-home-rd .ehr-btn-ghost:hover{
    background: #fff;
    color: #121212;
}
.eo-home-rd .ehr-cta-row{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* ---- Hero (swimmer) ---- */
.eo-home-rd .ehr-hero{
    position: relative;
    min-height: 86vh;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    background: #000;
    overflow: hidden;
}
.eo-home-rd .ehr-hero-bg{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: #000 url('../images/home/hero-swimmer.jpg') center 52%/cover no-repeat;
}
.eo-home-rd .ehr-hero-tint{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: rgba(255,255,255,.16);
    pointer-events: none;
}
.eo-home-rd .ehr-hero-shade{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.68));
    pointer-events: none;
}
.eo-home-rd .ehr-hero-content{
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 0 clamp(24px, 6vw, 90px) clamp(74px, 9vh, 110px);
}
.eo-home-rd .ehr-hero-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    color: #fff;
    line-height: .9;
    margin: 0;
    font-size: clamp(40px, 7.6vw, 82px);
}
.eo-home-rd .ehr-hero-title strong{
    font-weight: 900;
    color: #FF4305;
}
@keyframes ehr-bob{
    0%, 100% { transform: translate(-50%, 0); }
    50% { transform: translate(-50%, 9px); }
}
.eo-home-rd .ehr-cue{
    position: absolute;
    bottom: 26px;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    font-size: 20px;
    z-index: 3;
    animation: ehr-bob 1.7s ease-in-out infinite;
}

/* ---- "We're eo" intro ---- */
.eo-home-rd .ehr-intro{
    background: #121212;
    padding: clamp(64px, 9vw, 110px) clamp(24px, 6vw, 90px);
}
.eo-home-rd .ehr-intro-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    line-height: .98;
    margin: 0 0 30px;
    font-size: clamp(30px, 5.4vw, 60px);
}
.eo-home-rd .ehr-intro-title strong{
    font-weight: 700;
    color: #FF4305;
    text-transform: none;
}
.eo-home-rd .ehr-intro-copy{
    font-family: 'Archivo', sans-serif;
    font-size: clamp(17px, 2.2vw, 24px);
    color: #dcdcdc;
    max-width: 820px;
    line-height: 1.55;
    margin: 0;
}

/* ---- Full-height feature sections (SwimBETTER video / SweatTEST) ---- */
.eo-home-rd .ehr-feature{
    position: relative;
    min-height: 86vh;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    background: #000;
    overflow: hidden;
}
.eo-home-rd .ehr-feature-video{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.eo-home-rd .ehr-feature-sweat{
    background: #000 url('../images/home/sweattest-hero.jpg') center/cover no-repeat;
}
.eo-home-rd .ehr-feature-shade{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.1) 60%),
                linear-gradient(0deg, rgba(0,0,0,.7), transparent 55%);
}
.eo-home-rd .ehr-feature-content{
    position: relative;
    z-index: 2;
    padding: 0 clamp(24px, 6vw, 90px) clamp(74px, 9vh, 110px);
    max-width: 820px;
}
.eo-home-rd .ehr-feature .ehr-kicker{
    letter-spacing: .28em;
    margin-bottom: 14px;
}
.eo-home-rd .ehr-feature-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: none;
    color: #fff;
    line-height: .95;
    margin: 0;
    font-size: clamp(38px, 7vw, 76px);
}
.eo-home-rd .ehr-feature-title strong{
    font-weight: 900;
}
.eo-home-rd .ehr-feature-sub{
    font-family: 'Archivo', sans-serif;
    font-size: clamp(16px, 2vw, 21px);
    color: #e8e8e8;
    max-width: 600px;
    margin: 16px 0 26px;
    line-height: 1.45;
}

/* ---- Our story ---- */
.eo-home-rd .ehr-story{
    background: #F3F3F3;
    color: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 90px);
}
.eo-home-rd .ehr-story .ehr-kicker{
    margin-bottom: 16px;
}
.eo-home-rd .ehr-story .ehr-section-title{
    margin-bottom: 28px;
}
.eo-home-rd .ehr-story-copy{
    font-family: 'Archivo', sans-serif;
    font-size: clamp(15px, 1.7vw, 18px);
    color: #121212;
    line-height: 1.65;
    margin: 0 0 18px;
}
.eo-home-rd .ehr-story-copy:last-child{
    margin-bottom: 0;
}

/* ---- What we do (pillars) ---- */
.eo-home-rd .ehr-pillars{
    background: #121212;
    padding: clamp(60px, 8vw, 96px) 0 clamp(64px, 8vw, 100px);
}
.eo-home-rd .ehr-pillars-head{
    text-align: center;
    padding: 0 24px;
    margin: 0 0 clamp(40px, 5vw, 60px);
}
.eo-home-rd .ehr-pillars-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    line-height: 1.02;
    margin: 0 auto;
    max-width: 760px;
    font-size: clamp(26px, 4.4vw, 46px);
}
.eo-home-rd .ehr-pillars-grid{
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(auto-fit, minmax(258px, 1fr));
    background: rgba(255,255,255,.12);
}
.eo-home-rd .ehr-pillar{
    background: #121212;
    padding: clamp(30px, 4vw, 46px) clamp(24px, 3vw, 38px);
}
.eo-home-rd .ehr-pillar-num{
    font-family: 'Univers LT', sans-serif;
    font-weight: 900;
    font-size: 34px;
    color: #FF4305;
    margin: 0 0 18px;
}
.eo-home-rd .ehr-pillar-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    font-size: 19px;
    margin: 0 0 12px;
}
.eo-home-rd .ehr-pillar-copy{
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
    color: #a9a9a9;
    line-height: 1.55;
    margin: 0;
}

/* ---- Why we do it ---- */
.eo-home-rd .ehr-why{
    background: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 90px);
}
.eo-home-rd .ehr-why .ehr-kicker{
    margin-bottom: 18px;
}
.eo-home-rd .ehr-why-statement{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #FF4305;
    line-height: 1.05;
    margin: 0;
    font-size: clamp(26px, 4.6vw, 52px);
}
.eo-home-rd .ehr-why-statement strong{
    font-weight: 900;
    text-transform: none;
}

/* ---- Science of defiance ---- */
.eo-home-rd .ehr-defiance{
    background: #F3F3F3;
    color: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 90px);
}
.eo-home-rd .ehr-defiance .ehr-narrow{
    max-width: 900px;
}
.eo-home-rd .ehr-defiance .ehr-kicker{
    margin-bottom: 18px;
}
.eo-home-rd .ehr-defiance .ehr-section-title .mamba{
    text-transform: none;
}
.eo-home-rd .ehr-defiance-copy{
    font-family: 'Archivo', sans-serif;
    font-size: clamp(15px, 1.7vw, 18px);
    color: #121212;
    line-height: 1.6;
    margin: 0 0 30px;
}

/* ---- Founders ---- */
.eo-home-rd .ehr-founders{
    background: #E3E3E3;
    color: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 90px);
}
.eo-home-rd .ehr-founders .ehr-kicker{
    margin-bottom: 40px;
}
.eo-home-rd .ehr-founders-grid{
    display: grid;
    gap: 36px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.eo-home-rd .ehr-founder-photo{
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    overflow: hidden;
    margin: 0 0 20px;
    background-color: #000;
    background-position: center;
    background-size: cover;
}
.eo-home-rd .ehr-founder-name{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #121212;
    font-size: 20px;
    margin: 0 0 4px;
}
.eo-home-rd .ehr-founder-role{
    font-family: 'Archivo', sans-serif;
    font-size: 12px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #FF4305;
    font-weight: 700;
    margin: 0 0 12px;
}
.eo-home-rd .ehr-founder-short{
    font-family: 'Archivo', sans-serif;
    font-size: 14px;
    color: #121212;
    line-height: 1.55;
    margin: 0 0 14px;
}
.eo-home-rd .ehr-readmore{
    font-family: 'Archivo', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #2404F2;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease-in-out;
}
.eo-home-rd .ehr-readmore:hover{
    color: #121212;
}
.eo-home-rd .ehr-readmore i{
    font-size: 10px;
}

/* ---- Products ---- */
.eo-home-rd .ehr-products{
    background: #F3F3F3;
    color: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 64px);
}
.eo-home-rd .ehr-products-head{
    text-align: center;
    margin: 0 0 clamp(36px, 4vw, 52px);
}
.eo-home-rd .ehr-products-head .ehr-kicker{
    margin-bottom: 12px;
}
.eo-home-rd .ehr-products-head .ehr-section-title{
    margin-bottom: 0;
    font-size: clamp(28px, 4.6vw, 48px);
}
.eo-home-rd .ehr-products-grid{
    display: grid;
    gap: 28px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    max-width: 1000px;
    margin: 0 auto;
}
.eo-home-rd .ehr-product-card{
    background: #fff;
    border: 1px solid #B8B8B8;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.eo-home-rd .ehr-product-img{
    aspect-ratio: 4 / 3;
    background-color: #000;
    background-size: cover;
    background-repeat: no-repeat;
}
.eo-home-rd .ehr-product-img-swim{
    background-image: url('../images/home/product-swimbetter.jpg');
    background-position: center;
}
.eo-home-rd .ehr-product-img-sweat{
    background-image: url('../images/home/product-sweattest.jpg');
    background-position: center 20%;
}
.eo-home-rd .ehr-product-body{
    padding: 28px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.eo-home-rd .ehr-product-name{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: none;
    color: #121212;
    font-size: 24px;
    margin: 0 0 8px;
}
.eo-home-rd .ehr-product-name strong{
    font-weight: 900;
}
.eo-home-rd .ehr-product-copy{
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
    color: #121212;
    line-height: 1.5;
    margin: 0 0 16px;
}
.eo-home-rd .ehr-product-price{
    font-family: 'Univers LT', sans-serif;
    color: #FF4305;
    font-weight: 700;
    font-size: 20px;
    margin: 0 0 22px;
}
.eo-home-rd .ehr-product-cta{
    margin-top: auto;
}
.eo-home-rd .ehr-product-cta-soon{
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}
.eo-home-rd .ehr-soon-pill{
    display: inline-block;
    font-family: 'Archivo', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #FF4305;
    border: 1px solid #FF4305;
    border-radius: 50px;
    padding: 7px 16px;
}

/* ---- Media / press ---- */
.eo-home-rd .ehr-media{
    background: #F3F3F3;
    color: #121212;
    padding: clamp(60px, 8vw, 96px) clamp(24px, 6vw, 64px);
}
.eo-home-rd .ehr-media-head{
    margin: 0 0 clamp(32px, 4vw, 48px);
}
.eo-home-rd .ehr-media-head .ehr-kicker{
    margin-bottom: 12px;
}
.eo-home-rd .ehr-media-head .ehr-section-title{
    margin-bottom: 0;
    font-size: clamp(28px, 4.6vw, 48px);
}
.eo-home-rd .ehr-media-grid{
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.eo-home-rd .ehr-media-card{
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #B8B8B8;
    text-decoration: none !important;
    color: inherit;
    transition: all 0.3s ease-in-out;
}
.eo-home-rd .ehr-media-card:hover{
    border-color: #2404F2;
}
.eo-home-rd .ehr-media-thumb{
    aspect-ratio: 16 / 10;
    background: #d5d5d5;
    overflow: hidden;
}
.eo-home-rd .ehr-media-thumb img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: transform 0.3s ease-in-out;
}
.eo-home-rd .ehr-media-card:hover .ehr-media-thumb img{
    transform: scale(1.04);
}
.eo-home-rd .ehr-media-body{
    padding: 22px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.eo-home-rd .ehr-media-date{
    font-family: 'Archivo', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #7A7A7A;
}
.eo-home-rd .ehr-media-outlet{
    font-family: 'Archivo', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #FF4305;
}
.eo-home-rd .ehr-media-headline{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    color: #121212;
    font-size: 18px;
    line-height: 1.2;
    margin: 2px 0 0;
}
.eo-home-rd .ehr-media-card.is-off{
    display: none;
}
.eo-home-rd .ehr-media-pager{
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: clamp(28px, 3.5vw, 40px) 0 0;
}
.eo-home-rd .ehr-media-pager:empty{
    display: none;
}
.eo-home-rd .ehr-page-btn{
    min-width: 38px;
    height: 38px;
    padding: 0 8px;
    font-family: 'Archivo', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: #121212;
    background: transparent;
    border: 1px solid #B8B8B8;
    border-radius: 2px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}
.eo-home-rd .ehr-page-btn:hover{
    border-color: #2404F2;
    color: #2404F2;
}
.eo-home-rd .ehr-page-btn.is-active{
    background: #2404F2;
    border-color: #2404F2;
    color: #fff;
}

.eo-home-rd .ehr-media-more{
    margin: clamp(32px, 4vw, 44px) 0 0;
}

/* ---- Modals (founders + notify) ---- */
.eo-home-rd .ehr-modal{
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 80;
    visibility: hidden;
}
.eo-home-rd .ehr-modal.open{
    visibility: visible;
}
.eo-home-rd .ehr-modal-scrim{
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    background: rgba(0,0,0,.7);
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.eo-home-rd .ehr-modal.open .ehr-modal-scrim{
    opacity: 1;
}
.eo-home-rd .ehr-modal-card{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -46%);
    width: min(92vw, 460px);
    max-height: 90vh;
    overflow: auto;
    background: #F3F3F3;
    padding: clamp(28px, 5vw, 44px);
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.eo-home-rd .ehr-modal.open .ehr-modal-card{
    transform: translate(-50%, -50%);
    opacity: 1;
}
.eo-home-rd .ehr-modal-card-wide{
    width: min(94vw, 620px);
}
.eo-home-rd .ehr-modal-close{
    position: absolute;
    top: 16px;
    right: 18px;
    background: none;
    border: 0;
    font-size: 22px;
    color: #121212;
    cursor: pointer;
    padding: 4px;
}
.eo-home-rd .ehr-modal-founder-head{
    display: flex;
    gap: 22px;
    align-items: center;
    margin: 0 0 22px;
}
.eo-home-rd .ehr-modal-founder-photo{
    width: 96px;
    height: 96px;
    flex: none;
    border-radius: 8px;
    overflow: hidden;
    background: #000;
}
.eo-home-rd .ehr-modal-founder-photo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.eo-home-rd .ehr-modal-founder-name{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #121212;
    font-size: 26px;
    line-height: 1;
    margin: 0 0 6px;
}
.eo-home-rd .ehr-modal-copy{
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
    color: #121212;
    line-height: 1.65;
    margin: 0;
}

/* Notify modal states — .sent toggles form/success */
.eo-home-rd .SweatTEST-notify-success{
    display: none;
    text-align: center;
    padding: 20px 0;
}
.eo-home-rd .ehr-modal.sent .SweatTEST-notify-success{
    display: block;
}
.eo-home-rd .ehr-modal.sent .SweatTEST-notify-form{
    display: none;
}
.eo-home-rd .SweatTEST-notify-success-icon{
    font-size: 34px;
    color: #FF4305;
    margin: 0 0 16px;
}
.eo-home-rd .SweatTEST-notify-success-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #121212;
    font-size: 26px;
    margin: 0 0 10px;
}
.eo-home-rd .SweatTEST-notify-form .ehr-kicker{
    margin-bottom: 10px;
}
.eo-home-rd .SweatTEST-notify-title{
    font-family: 'Univers LT', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #121212;
    font-size: clamp(24px, 4vw, 30px);
    line-height: 1;
    margin: 0 0 8px;
}
.eo-home-rd .SweatTEST-notify-title strong{
    font-weight: 900;
    text-transform: none;
}
.eo-home-rd .SweatTEST-notify-title span{
    text-transform: none;
}
.eo-home-rd .SweatTEST-notify-sub{
    margin: 0 0 22px;
    font-size: 14px;
    line-height: 1.5;
}
.eo-home-rd .ehr-field-label{
    display: block;
    font-family: 'Archivo', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #7a7a7a;
    margin: 0 0 6px;
}
.eo-home-rd .ehr-field{
    width: 100%;
    box-sizing: border-box;
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
    padding: 12px 14px;
    border: 1px solid #b8b8b8;
    background: #fff;
    color: #121212;
    border-radius: 2px;
    margin: 0 0 18px;
}
.eo-home-rd .ehr-sports{
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 6px 0 26px;
}
.eo-home-rd .ehr-check{
    display: flex;
    align-items: center;
    gap: 11px;
    font-family: 'Archivo', sans-serif;
    font-size: 15px;
    color: #121212;
    cursor: pointer;
    margin: 0;
}
.eo-home-rd .ehr-check input{
    width: 18px;
    height: 18px;
    accent-color: #2404F2;
    margin: 0;
}
.eo-home-rd .ehr-other-field{
    display: none;
    margin: 2px 0 0 29px;
    max-width: calc(100% - 29px);
    padding: 10px 14px;
}
.eo-home-rd .ehr-sports.other-on .ehr-other-field{
    display: block;
}
.eo-home-rd .SweatTEST-notify-submit{
    width: 100%;
    padding: 13px;
    font-size: 14px;
}
