/* ===== Common: restrained typography, accessible contrast, and consistent page rhythm ===== */
.eqiflo-site { --eqi-ink:#202725; --eqi-blue:#526bd0; --eqi-pale:#edf1f9; --eqi-muted:#5c6561; background:#fbfcf9; color:var(--eqi-ink); font-family:Arial,Helvetica,sans-serif; font-size:17px; line-height:1.65; }
.eqiflo-site * { box-sizing:border-box; }
.eqiflo-site h1,.eqiflo-site h2,.eqiflo-site h3,.eqiflo-site p { margin-top:0; }
.eqiflo-site h1,.eqiflo-site h2,.eqiflo-site h3 { color:var(--eqi-ink); font-family:Arial,Helvetica,sans-serif; font-weight:600; }
.eqiflo-site h1 { font-size:clamp(46px,5.2vw,78px); line-height:1.03; letter-spacing:-4px; }
.eqiflo-site h2 { font-size:clamp(32px,3.2vw,46px); line-height:1.13; letter-spacing:-1.8px; margin-bottom:24px; }
.eqiflo-site h3 { font-size:25px; line-height:1.25; letter-spacing:-.7px; margin-bottom:15px; }
.eqiflo-site p { margin-bottom:22px; }
.eqiflo-site a { color:inherit; text-underline-offset:5px; }
.eqiflo-site a:hover { color:var(--eqi-blue); }
.eqiflo-site :focus-visible { outline:3px solid #3857cc; outline-offset:5px; }
.eqiflo-site .wp-block-columns { gap:40px; margin-bottom:0; }
.eqiflo-site .wp-block-column { min-width:0; }
.eqiflo-site .eqi-section { padding:88px max(6vw,24px); margin:0; }
/* Current Gutenberg groups store their children directly, without legacy wrappers. */
.eqiflo-site .eqi-section > :where(*) { max-width:1240px;margin-left:auto;margin-right:auto; }
.eqiflo-site .eqi-section > .eqi-intro {margin-left:max(0px,calc((100% - 1240px)/2));margin-right:0;}
.eqiflo-site .eqi-eyebrow { font-size:12px; font-weight:700; letter-spacing:2.4px; color:var(--eqi-blue); margin-bottom:20px; text-transform:uppercase; }
.eqiflo-site .eqi-intro { max-width:640px; color:var(--eqi-muted); font-size:19px; }
.eqiflo-site .eqi-note { color:var(--eqi-muted); font-size:13px; }
.eqiflo-site .wp-block-buttons { gap:15px; margin:28px 0; }
.eqiflo-site .wp-block-button__link,.eqiflo-site .eqi-form button { background:var(--eqi-blue); border:1px solid var(--eqi-blue); color:white; border-radius:3px; padding:15px 24px; font-size:15px; font-weight:600; text-decoration:none; }
.eqiflo-site .wp-block-button__link:hover,.eqiflo-site .eqi-form button:hover { background:#3d53ad; color:white; }
.eqiflo-site .is-style-outline .wp-block-button__link { background:transparent; color:var(--eqi-ink); border:1px solid #bbc1bc; }
.eqiflo-site .eqi-skip { position:absolute; top:-100px; left:12px; z-index:100; padding:12px; background:white; }
.eqiflo-site .eqi-skip:focus { top:10px; }
/* ===== Header and navigation, including the compact mobile menu ===== */
.eqiflo-site .eqi-demo-bar { background:#e9edf8; padding:7px 6vw; font-size:11px; letter-spacing:.5px; display:flex; justify-content:space-between; color:#3e4c73; }
.eqiflo-site .eqi-header { min-height:102px; padding:20px 5vw; display:flex; align-items:center; gap:30px; border-bottom:1px solid #e3e7e1; background:#fbfcf9; }
.eqiflo-site .eqi-brand { text-decoration:none; display:flex; align-items:center; gap:10px; color:#617ee1; font-size:32px; letter-spacing:-1.7px; line-height:1; white-space:nowrap; }
.eqiflo-site .eqi-brand small { display:block; font-size:8px; letter-spacing:1.65px; margin-top:8px; color:#637a90; }
.eqiflo-site .eqi-mark { width:43px; height:43px; object-fit:contain; }
.eqiflo-site #eqi-navigation { margin-left:auto; }
.eqiflo-site #eqi-navigation ul { display:flex; gap:27px; list-style:none; margin:0; padding:0; }
.eqiflo-site #eqi-navigation a { text-decoration:none; font-size:13px; font-weight:500; }
.eqiflo-site #eqi-navigation .current-menu-item a { color:var(--eqi-blue); text-decoration:underline; }
.eqiflo-site .eqi-header-cta { text-decoration:none; background:var(--eqi-ink); color:white; padding:12px 19px; font-size:13px; border-radius:3px; }
.eqiflo-site .eqi-header-cta span { margin-left:20px; }
.eqiflo-site .eqi-menu-toggle { display:none; }
@media(max-width:1000px) { .eqiflo-site .eqi-header { flex-wrap:wrap;gap:16px; } .eqiflo-site .eqi-menu-toggle { display:block;margin-left:auto;background:transparent;color:var(--eqi-ink);border:1px solid #bcc5bd;padding:9px 14px; } .eqiflo-site #eqi-navigation { display:none;order:4;width:100%; } .eqiflo-site #eqi-navigation.is-open { display:block; } .eqiflo-site #eqi-navigation ul { flex-direction:column;gap:0; } .eqiflo-site #eqi-navigation a { display:block;padding:12px 0; } }
/* ===== Hero: editorial split, coastal image and small image caption ===== */
.eqiflo-site .eqi-hero { padding-top:58px;padding-bottom:60px; }
.eqiflo-site .eqi-hero .wp-block-columns { align-items:center;gap:5vw; }
.eqiflo-site .eqi-hero h1 em { color:var(--eqi-blue);font-style:normal; }
.eqiflo-site .eqi-hero .eqi-intro { font-size:17px; max-width:430px; }
.eqiflo-site .eqi-hero-image { margin:0; }
.eqiflo-site .eqi-hero-image img { width:100%;height:550px;object-fit:cover;object-position:51% center;border-radius:150px 4px 4px 4px; }
.eqiflo-site .eqi-hero-image figcaption { text-align:right;font-size:11px;letter-spacing:1.2px;color:#606962;margin-top:12px; }
.eqiflo-site .eqi-proof { font-size:12px;color:var(--eqi-muted);margin-top:25px; }
.eqiflo-site .eqi-ribbon { padding:23px 6vw;background:#e9eef7;border-top:1px solid #d9e0ed;border-bottom:1px solid #d9e0ed; }
.eqiflo-site .eqi-ribbon p { margin:0;text-align:center;font-size:12px;letter-spacing:2px;font-weight:600; }
@media(max-width:781px) { .eqiflo-site h1 {letter-spacing:-2.5px;} .eqiflo-site .eqi-section {padding:55px 24px;} .eqiflo-site .eqi-hero {padding-top:36px;} .eqiflo-site .eqi-hero-image img {height:390px;border-top-left-radius:100px;} .eqiflo-site .eqi-hero .wp-block-columns {gap:28px;} .eqiflo-site .eqi-header-cta {display:none;} .eqiflo-site .eqi-demo-bar {font-size:10px;} .eqiflo-site .eqi-demo-bar > span {display:none;} .eqiflo-site .eqi-ribbon {padding:20px;} .eqiflo-site .eqi-ribbon p {font-size:10px;letter-spacing:1px;} }
/* ===== Benefits, cards and the visual flow sequence ===== */
.eqiflo-site .eqi-benefits .wp-block-columns { margin-top:44px;gap:0; }
.eqiflo-site .eqi-benefit { border-top:1px solid #cdd5cd;padding:28px 30px 0 0; }
.eqiflo-site .eqi-benefit + .eqi-benefit {padding-left:30px;border-left:1px solid #dce2da;}
.eqiflo-site .eqi-number { color:var(--eqi-blue);font-size:15px;font-weight:600;letter-spacing:2px;margin-bottom:34px; }
.eqiflo-site .eqi-benefit p:last-child {color:var(--eqi-muted);font-size:16px;}
.eqiflo-site .eqi-tint {background:#eef1e9;}
.eqiflo-site .eqi-flow-circle {border:1px solid #afbbc9;border-radius:50%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;max-width:240px;margin:0 auto 25px;background:#f5f7fc;}
.eqiflo-site .eqi-flow-circle p {font-size:30px;margin:0;color:var(--eqi-blue);letter-spacing:-1px;}
.eqiflo-site .eqi-flow-card {text-align:center;}
.eqiflo-site .eqi-flow-card p {font-size:16px;color:var(--eqi-muted);}
.eqiflo-site .eqi-card {border:1px solid #dce1e7;padding:34px;background:white;border-radius:4px;}
.eqiflo-site .eqi-card .eqi-number {margin-bottom:42px;}
.eqiflo-site .eqi-card p {font-size:16px;color:var(--eqi-muted);}
.eqiflo-site .eqi-card a {font-size:14px;font-weight:600;}
.eqiflo-site .eqi-card .eqi-time {padding-top:18px;border-top:1px solid #dde2e8;color:var(--eqi-blue);font-size:13px;font-weight:600;}
@media(max-width:781px) { .eqiflo-site .eqi-benefit + .eqi-benefit {padding-left:0;border-left:0;} .eqiflo-site .eqi-benefit {padding-bottom:18px;} .eqiflo-site .eqi-flow-circle {max-width:180px;} }
/* ===== Studio section and closing invitation ===== */
.eqiflo-site .eqi-studio-image {margin:0;}
.eqiflo-site .eqi-studio-image img {width:100%;height:430px;object-fit:cover;border-radius:4px 100px 4px 4px;}
.eqiflo-site .eqi-studio .wp-block-columns {align-items:center;gap:70px;}
.eqiflo-site .eqi-cta {background:#586fcd;text-align:center;color:white;}
.eqiflo-site .eqi-cta h2,.eqiflo-site .eqi-cta p {color:white;}
.eqiflo-site .eqi-cta .wp-block-buttons {justify-content:center;}
.eqiflo-site .eqi-cta .wp-block-button__link {background:#fff;color:#334a9f;border-color:#fff;}
.eqiflo-site .eqi-cta > .eqi-intro {margin-left:auto;margin-right:auto;}
@media(max-width:781px) { .eqiflo-site .eqi-studio-image img {height:auto;border-top-right-radius:60px;} }
/* ===== Inner pages, FAQ accordions and inquiry preview ===== */
.eqiflo-site .eqi-page-hero {background:var(--eqi-pale);padding-top:75px;padding-bottom:66px;}
.eqiflo-site .eqi-page-hero h1 {margin-left:max(0px,calc((100% - 1240px)/2));margin-right:0;max-width:940px;font-size:clamp(44px,5vw,68px);}
.eqiflo-site .eqi-page-hero .eqi-intro {max-width:700px;}
.eqiflo-site .eqi-section > .eqi-reading {max-width:820px;margin:auto;}
.eqiflo-site .wp-block-details {border-bottom:1px solid #cfd7d1;padding:22px 0;}
.eqiflo-site .wp-block-details summary {font-size:20px;font-weight:600;cursor:pointer;}
.eqiflo-site .wp-block-details p {margin:18px 0 5px;color:var(--eqi-muted);}
.eqiflo-site .eqi-form {background:#edf1fa;padding:36px;border:1px solid #dce3f1;border-radius:4px;}
.eqiflo-site .eqi-form h2 {font-size:30px;}
.eqiflo-site .eqi-form label {display:block;margin:18px 0 7px;font-size:14px;font-weight:600;}
.eqiflo-site .eqi-form label span {font-weight:400;color:var(--eqi-muted);}
.eqiflo-site .eqi-form input,.eqiflo-site .eqi-form select,.eqiflo-site .eqi-form textarea {width:100%;background:#fff;border:1px solid #a9b4c7;border-radius:3px;color:var(--eqi-ink);font:inherit;padding:12px;}
/* Prevent Astra’s fixed select height from clipping its option text. */
.eqiflo-site .eqi-form select {height:auto;min-height:52px;line-height:1.5;}
.eqiflo-site .eqi-form button {margin-top:23px;cursor:pointer;}
.eqiflo-site .eqi-form-result {background:#fff;border-left:3px solid var(--eqi-blue);padding:20px;margin:22px 0 0;overflow-wrap:anywhere;}
.eqiflo-site #eqi-form-note {font-size:14px;color:var(--eqi-muted);}
/* ===== Footer: full navigation and transparent demo attribution ===== */
.eqiflo-site .eqi-footer {padding:62px 6vw 20px;background:#f0f2ec;}
.eqiflo-site .eqi-footer-top {display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:60px;max-width:1240px;margin:auto;}
.eqiflo-site .eqi-footer h2 {font-size:15px;letter-spacing:0;margin:5px 0 18px;}
.eqiflo-site .eqi-footer p {font-size:14px;color:var(--eqi-muted);margin:22px 0;}
.eqiflo-site .eqi-footer ul {padding:0;margin:0;list-style:none;}
.eqiflo-site .eqi-footer li {margin-bottom:8px;}
.eqiflo-site .eqi-footer a:not(.eqi-brand) {font-size:13px;text-decoration:none;}
.eqiflo-site .eqi-footer-bottom {border-top:1px solid #d6dcd2;margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#606961;}
@media(max-width:781px) { .eqiflo-site .eqi-footer-top {grid-template-columns:1fr;gap:25px;} .eqiflo-site .eqi-footer-bottom {flex-direction:column;} .eqiflo-site .eqi-form {padding:24px;} .eqiflo-site .eqi-studio .wp-block-columns {gap:30px;} }

/* ===== Exercise video gallery: eight native image blocks in a four-by-two desktop grid ===== */
.eqiflo-site .eqi-video-gallery .eqi-video-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
.eqiflo-site .eqi-video-grid > .wp-block-image {margin:0;min-width:0;}
.eqiflo-site .eqi-video-grid figure a {display:block;position:relative;overflow:hidden;border-radius:5px;background:#202725;aspect-ratio:4/5;}
.eqiflo-site .eqi-video-grid img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease;}
.eqiflo-site .eqi-video-grid figure a:hover img {transform:scale(1.035);}
.eqiflo-site .eqi-video-grid figure a:focus-visible {outline:3px solid var(--eqi-blue);outline-offset:5px;}
.eqiflo-site .eqi-video-play {position:absolute;inset:0;display:grid;place-items:center;color:white;font-size:22px;background:linear-gradient(transparent 45%,rgba(0,0,0,.35));}
.eqiflo-site .eqi-video-play::before {content:"";position:absolute;width:62px;height:62px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(20,27,31,.45);}
.eqiflo-site .eqi-video-play {isolation:isolate;}
.eqiflo-site .eqi-video-play::before {z-index:-1;}
@media(max-width:900px) {.eqiflo-site .eqi-video-gallery .eqi-video-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}}
@media(max-width:420px) {.eqiflo-site .eqi-video-gallery .eqi-video-grid {gap:12px;} .eqiflo-site .eqi-video-play::before {width:48px;height:48px;}}
@media(prefers-reduced-motion:reduce) {.eqiflo-site .eqi-video-grid img {transition:none;} .eqiflo-site .eqi-video-grid figure a:hover img {transform:none;}}

/* ===== Video lightbox: native modal focus handling, visible close control and responsive player ===== */
.eqiflo-site.eqi-video-open {overflow:hidden;}
.eqiflo-site .eqi-video-lightbox {width:min(460px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:8px;background:white;color:var(--eqi-ink);box-shadow:0 24px 80px rgba(0,0,0,.35);}
.eqiflo-site .eqi-video-lightbox::backdrop {background:rgba(13,20,28,.82);}
.eqiflo-site .eqi-video-toolbar {display:flex;align-items:center;justify-content:flex-end;padding:8px 14px;border-bottom:1px solid #e1e5ea;}
.eqiflo-site .eqi-video-close {display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:3px;background:#edf1f9;color:#202725;font-size:30px;line-height:1;cursor:pointer;}
.eqiflo-site .eqi-video-close:hover {background:#dbe3f6;}
/* Fit portrait and landscape footage within the viewport without cropping the exercise. */
.eqiflo-site .eqi-video-player video {display:block;width:100%;height:auto;max-height:calc(100dvh - 96px);object-fit:contain;background:#111;}

/* ===== Lessons: five-column photo study with numbered caption bands ===== */
.eqiflo-site .eqi-lessons { max-width:1440px; margin:0 auto; padding:48px 28px 72px; }
.eqiflo-site .eqi-lessons h1 { text-align:center; font-size:clamp(34px,4vw,52px); letter-spacing:-1.5px; margin:0 0 32px; color:#122641; }
.eqiflo-site .eqi-lessons-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.eqiflo-site .eqi-lessons-grid .eqi-lesson-card { margin:0; min-width:0; display:flex; flex-direction:column; border:1px solid #a6b3c3; background:#fff; }
.eqiflo-site .eqi-lesson-card img { display:block; width:100%; height:auto; aspect-ratio:337 / 599; object-fit:contain; margin:0; }
.eqiflo-site .eqi-lesson-card figcaption { display:grid; grid-template-columns:44px minmax(0,1fr); align-items:center; gap:10px; margin:0; padding:0 9px 0 0; border-top:1px solid #a6b3c3; color:#122641; text-align:left; font-size:13px; line-height:1.35; flex:1; min-height:70px; }
.eqiflo-site .eqi-lesson-card figcaption strong { display:flex; align-items:center; justify-content:center; align-self:stretch; background:#dce5ee; border-right:1px solid #bdcad7; font-size:23px; font-weight:700; }
/* Lessons responsive grid preserves readable captions and uncropped stills. */
@media(max-width:1000px) { .eqiflo-site .eqi-lessons-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .eqiflo-site .eqi-lessons { padding:32px 16px 48px; } .eqiflo-site .eqi-lessons-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .eqiflo-site .eqi-lesson-card figcaption { grid-template-columns:34px minmax(0,1fr); gap:7px; font-size:12px; min-height:78px; } .eqiflo-site .eqi-lesson-card figcaption strong { font-size:20px; } }

/* ===== Lessons lightbox: linked thumbnails and full notes-image display ===== */
.eqiflo-site .eqi-lessons-grid .eqi-lesson-card > a { display:block; position:relative; cursor:zoom-in; }
.eqiflo-site .eqi-lessons-grid .eqi-lesson-card > a:focus-visible { outline:3px solid #3857cc; outline-offset:3px; }
.eqiflo-site .eqi-image-lightbox { width:min(900px,calc(100vw - 24px)); }
.eqiflo-site .eqi-image-lightbox .eqi-video-player img { display:block; width:100%; height:auto; max-height:calc(100dvh - 96px); object-fit:contain; }
