/* Extra layouts for the English Flow library, practice and about pages. */
.explore-section { display: grid; grid-template-columns: 1.13fr .87fr; gap: 18px; padding: 0 0 102px; }
.explore-card { position: relative; min-height: 300px; padding: 36px 39px; overflow: hidden; border-radius: 20px; }
.explore-card h2 { max-width: 440px; margin-bottom: 13px; font-size: 36px; line-height: 1.03; }
.explore-card p:not(.eyebrow) { max-width: 460px; color: #53727a; font-size: 14px; line-height: 1.58; }
.explore-practice { background: #e0f0ed; }.explore-practice .button { margin-top: 7px; }
.explore-library { background: #fce3d6; }.explore-library h2 { max-width: 310px; }
.explore-library ul { display: grid; gap: 9px; padding: 0; list-style: none; font-size: 12px; font-weight: 600; }
.explore-library li span { display: inline-block; width: 29px; color: #d77259; font-size: 9px; font-weight: 700; }
.explore-library .text-link { margin-top: 13px; }
.explore-art { position: absolute; right: 30px; bottom: -21px; color: rgba(255,255,255,.76); font-family: Fraunces, serif; font-size: 200px; transform: rotate(-18deg); }

.page-hero { padding: 94px 0 88px; }.page-hero .section-shell > p:not(.eyebrow) { max-width: 535px; color: #5f7c88; font-size: 17px; line-height: 1.6; }
.page-hero-library { background: linear-gradient(110deg, #e1f4ef 0%, #fff8e7 100%); }.page-hero-practice { background: linear-gradient(110deg, #fbe4da 0%, #fff7e7 100%); }.page-hero-about { background: linear-gradient(110deg, #e6e1fe 0%, #f4edf8 100%); }
.page-hero h1 { max-width: 730px; margin-bottom: 21px; }.library-stat-row { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 32px; }
.library-stat-row span { padding: 10px 14px; border: 1px solid rgba(24,46,68,.11); border-radius: 10px; background: rgba(255,255,255,.65); color: #5c7781; font-size: 12px; }.library-stat-row b { margin-right: 4px; color: var(--teal); font-size: 16px; }
.library-content { padding: 86px 0 96px; }.library-top { display: flex; align-items: end; justify-content: space-between; gap: 25px; }.library-top h2 { max-width: 560px; margin-bottom: 0; font-size: 42px; line-height: 1.05; }
.channel-link { padding-bottom: 4px; border-bottom: 1px solid var(--ink); color: var(--ink); font-size: 13px; font-weight: 700; white-space: nowrap; }.channel-link span { margin-left: 5px; color: var(--coral); }
.filter-bar { display: flex; flex-wrap: wrap; gap: 9px; margin: 37px 0 30px; }.filter-bar button { padding: 9px 13px; border: 1px solid #d1dfdb; border-radius: 999px; background: #fff; color: #65808a; font-size: 12px; font-weight: 700; cursor: pointer; transition: .2s; }.filter-bar button:hover, .filter-bar .is-current { border-color: var(--teal); color: #fff; background: var(--teal); }
.library-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px 21px; }.library-card { display: flex; flex-direction: column; }.library-card[hidden] { display: none; }
.library-card.library-feature { grid-column: span 2; display: grid; grid-template-columns: 1.25fr 1fr; gap: 23px; padding: 14px; border-radius: 17px; background: #e9f3ef; }
.library-image { position: relative; display: block; aspect-ratio: 1.62; overflow: hidden; border-radius: 11px; background: #d8e1df; }.library-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(6,33,36,.03), rgba(6,33,36,.26)); }.library-image img { width: 100%; height: 100%; object-fit: cover; }.library-image span { position: absolute; z-index: 1; right: 9px; bottom: 9px; padding: 4px 6px; border-radius: 4px; color: #fff; background: rgba(7,22,24,.76); font-size: 9px; font-weight: 700; }
.library-card .card-label { margin: 14px 0 7px; color: #6d9690; font-size: 9px; font-weight: 700; letter-spacing: 1.1px; }.library-card h3 { margin-bottom: 8px; font-size: 20px; line-height: 1.12; }.library-card > p:not(.card-label) { margin-bottom: 12px; color: #657f89; font-size: 12px; line-height: 1.48; }.library-card > a:not(.library-image) { color: var(--teal); font-size: 12px; font-weight: 700; }.library-card > a:not(.library-image) b { margin-left: 4px; }.library-feature > div { align-self: center; }.library-feature h3 { font-size: 27px; }.library-feature > div > p:not(.card-label) { font-size: 13px; }
.library-banner, .practice-cta { padding: 47px 0; color: #fff; background: var(--ink); }.library-banner .section-shell, .practice-cta .section-shell { display: flex; align-items: center; justify-content: space-between; gap: 24px; }.library-banner h2, .practice-cta h2 { margin: 0; color: #fff; font-size: 39px; }.button-sun { color: var(--ink); background: var(--yellow); white-space: nowrap; }

.five-days { padding: 87px 0 100px; }.plan-note { max-width: 300px; margin: 0 0 5px; color: #67818b; font-size: 14px; line-height: 1.55; }.day-list { display: grid; gap: 0; margin: 41px 0 0; padding: 0; list-style: none; border-top: 1px solid #dce5e2; }.day-list li { display: grid; grid-template-columns: 87px 1fr 225px; align-items: center; gap: 24px; padding: 24px 0; border-bottom: 1px solid #dce5e2; }.day-no { align-self: start; padding-top: 4px; color: var(--coral); font-size: 10px; font-weight: 700; letter-spacing: 1px; }.day-list h3 { margin-bottom: 6px; font-size: 23px; }.day-list p { max-width: 600px; margin-bottom: 10px; color: #607c86; font-size: 13px; line-height: 1.53; }.day-tip { color: var(--teal); font-size: 9px; font-weight: 700; letter-spacing: .8px; }.day-list a { justify-self: end; color: var(--teal); font-size: 12px; font-weight: 700; text-align: right; }.day-list a b { margin-left: 5px; color: var(--coral); }
.phrase-section { padding: 83px 0 93px; background: #e5f3ef; }.phrase-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; margin-top: 39px; }.phrase-flip { position: relative; min-height: 230px; padding: 25px; border-radius: 16px; background: #fffefa; }.phrase-flip > p { max-width: 220px; color: #5b7380; font-family: Fraunces, Georgia, serif; font-size: 21px; line-height: 1.15; }.phrase-answer { position: absolute; right: 25px; bottom: 69px; left: 25px; display: grid; gap: 7px; opacity: 0; transform: translateY(7px); transition: .25s; }.phrase-answer span { color: var(--deep-teal); font-family: Fraunces, Georgia, serif; font-size: 20px; line-height: 1.1; }.phrase-answer small { color: #779198; font-size: 10px; }.phrase-flip button { position: absolute; bottom: 22px; left: 25px; border: 0; padding: 0; background: transparent; color: var(--teal); font-size: 12px; font-weight: 700; cursor: pointer; }.phrase-flip.is-revealed > p { opacity: .12; }.phrase-flip.is-revealed .phrase-answer { opacity: 1; transform: translateY(0); }
.method-section { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; padding: 99px 0; }.method-section h2 { font-size: 48px; line-height: 1.03; }.method-steps { display: grid; gap: 17px; }.method-steps article { display: grid; grid-template-columns: 39px 1fr; column-gap: 14px; padding: 20px 0; border-bottom: 1px solid #d9e4e1; }.method-steps span { grid-row: span 2; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; color: var(--teal); background: #dff2ed; font-size: 10px; font-weight: 700; }.method-steps h3 { margin: 0 0 5px; font-size: 19px; }.method-steps p { margin: 0; color: #66808a; font-size: 13px; line-height: 1.5; }

.about-intro { display: grid; grid-template-columns: .9fr 1.1fr; gap: 86px; padding: 102px 0; }.about-quote { position: relative; align-self: start; padding: 26px 15px 13px 41px; border-left: 3px solid var(--coral); background: #fff5e9; }.about-quote span { position: absolute; top: -18px; left: 17px; color: var(--coral); font-family: Fraunces, Georgia, serif; font-size: 58px; }.about-quote p { margin: 0; font-family: Fraunces, Georgia, serif; font-size: 25px; line-height: 1.2; }.about-text h2 { margin-bottom: 17px; font-size: 46px; }.about-text > p:not(.eyebrow) { color: #627e89; font-size: 14px; line-height: 1.66; }.values-section { padding: 82px 0; background: #f2edff; }.values-heading h2 { margin-bottom: 37px; font-size: 46px; }.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; }.values-grid article { min-height: 207px; padding: 25px; border-radius: 17px; background: rgba(255,255,255,.78); }.value-icon { display: grid; place-items: center; width: 35px; height: 35px; margin-bottom: 28px; border-radius: 10px; color: #705caf; background: #e5dcff; font-size: 19px; }.values-grid h3 { margin-bottom: 8px; font-size: 21px; }.values-grid p { margin: 0; color: #66808a; font-size: 13px; line-height: 1.55; }.how-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; padding: 101px 0; }.how-section h2 { font-size: 46px; }.how-list { display: grid; gap: 3px; }.how-list div { display: grid; grid-template-columns: 45px 1fr; gap: 14px; padding: 20px 0; border-bottom: 1px solid #d9e4e1; }.how-list span { color: var(--coral); font-size: 10px; font-weight: 700; }.how-list p { margin: 0; color: #647e88; font-size: 14px; line-height: 1.55; }.how-list p b { color: var(--ink); }.connect-panel { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; padding: 54px 58px; border-radius: 20px; color: #fff; background: var(--ink); }.connect-panel h2 { margin: 0; color: #fff; font-size: 43px; line-height: 1.03; }.connect-panel > div:last-child { display: grid; align-content: center; }.connect-panel a { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.17); color: #d7e6eb; font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }.connect-panel a > span { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 9px; color: #97ded3; background: rgba(255,255,255,.09); }.connect-panel a b { margin-left: auto; color: var(--yellow); }

@media (max-width: 850px) { .explore-section, .about-intro, .method-section, .how-section, .connect-panel { grid-template-columns: 1fr; gap: 38px; }.library-grid { grid-template-columns: repeat(2, 1fr); }.day-list li { grid-template-columns: 70px 1fr; }.day-list a { justify-self: start; grid-column: 2; text-align: left; }.connect-panel { padding: 42px; } }
@media (max-width: 570px) { .explore-section { grid-template-columns: 1fr; padding-bottom: 65px; }.explore-card { min-height: 270px; padding: 29px 25px; }.explore-card h2 { font-size: 31px; }.page-hero { padding: 65px 0; }.page-hero h1 { font-size: 52px; }.library-content { padding: 62px 0; }.library-top { display: block; }.library-top h2 { font-size: 35px; }.channel-link { display: inline-block; margin-top: 20px; }.filter-bar { margin: 27px 0 25px; overflow: auto; flex-wrap: nowrap; padding-bottom: 5px; }.filter-bar button { white-space: nowrap; }.library-grid { grid-template-columns: 1fr; }.library-card.library-feature { grid-column: auto; grid-template-columns: 1fr; gap: 7px; }.library-feature h3 { font-size: 24px; }.library-banner .section-shell, .practice-cta .section-shell { align-items: flex-start; flex-direction: column; }.library-banner h2, .practice-cta h2 { font-size: 33px; }.five-days { padding: 63px 0; }.day-list li { grid-template-columns: 1fr; gap: 8px; }.day-list a { grid-column: auto; padding-top: 4px; }.phrase-section { padding: 62px 0; }.phrase-grid, .values-grid { grid-template-columns: 1fr; margin-top: 27px; }.phrase-flip { min-height: 204px; }.method-section, .about-intro, .how-section { padding: 64px 0; }.method-section h2, .about-text h2, .values-heading h2, .how-section h2 { font-size: 38px; }.about-quote p { font-size: 22px; }.values-section { padding: 62px 0; }.connect-panel { padding: 34px 25px; margin-bottom: 60px; }.connect-panel h2 { font-size: 36px; } }

/* Products & Gear Page Layout & Highlight */
.page-hero-gear, .page-hero-products { background: linear-gradient(110deg, #fcedd8 0%, #fff6e4 100%); }
.gear-card, .product-card { position: relative; display: flex; flex-direction: column; padding: 16px; border-radius: 17px; background: #fffefa; border: 2px solid transparent; transition: transform .25s ease, box-shadow .25s ease, border-color .3s ease; }
.gear-card:hover, .product-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(24,46,68,.09); }
.gear-card.gear-highlight, .product-card.product-highlight, .gear-card.product-highlight { border-color: var(--coral) !important; box-shadow: 0 0 0 4px rgba(255,114,94,.3), 0 20px 42px rgba(24,46,68,.16) !important; transform: translateY(-5px); }
.product-card .library-image { background: #fdfdfd; display: flex; align-items: center; justify-content: center; }
.product-card .library-image img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }
.gear-btn, .product-btn { margin-top: auto; padding: 11px 18px; border-radius: 999px; font-size: 12px; font-weight: 700; color: #fff; background: var(--teal); display: inline-flex; align-items: center; justify-content: space-between; gap: 8px; text-decoration: none; transition: background .2s, transform .2s; }
.gear-btn:hover, .product-btn:hover { background: var(--deep-teal); transform: translateY(-1px); }
.affiliate-disclosure { margin: 65px 0 30px; padding: 22px 26px; border-radius: 15px; border: 1px dashed #cfded9; background: #fdfaf3; color: #647d87; font-size: 12px; line-height: 1.6; }
.affiliate-disclosure b { color: var(--ink); }
