/* Home v7: page layout and components. */
:root {

--purple:#7551b7;

--purple-dark:#4e2d7f;

--purple-deep:#372052;

--lav:#f6f1fb;

--lav-2:#eee6f8;

--lav-3:#d7c8ea;

--ink:#24202a;

--muted:#6c6674;

--line:#e8e0ee;

--white:#fff;

--green:#3f806a;

--shadow:0 18px 48px rgba(63,34,90,.11);

--shadow-sm:0 8px 24px rgba(63,34,90,.08);

--max:1240px;


}


* {
box-sizing:border-box
}


html {
scroll-behavior:smooth
}


body {
margin:0;
font-family:Inter,"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
color:var(--ink);
background:#fff;
line-height:1.55
}


a {
color:inherit
}

.skip-link {
position:absolute;
left:-9999px
}

.skip-link:focus {
left:12px;
top:12px;
background:#fff;
padding:10px;
z-index:99
}


img {
display:block;
max-width:100%
}

.wrap {
max-width:var(--max);
margin:auto;
padding:0 28px
}

.section {
padding:84px 0
}

.soft {
background:linear-gradient(180deg,#fff 0%,#faf7fd 100%)
}


.eyebrow {
margin:0 0 12px;
color:#8057c5;
font-size:12px;
font-weight:850;
letter-spacing:.16em;
text-transform:uppercase
}


h1,h2,h3 {
margin:0;
color:var(--purple-dark);
letter-spacing:-.03em;
line-height:1.06
}

h1 {
font-size:clamp(48px,6.8vw,84px)
}

h2 {
font-size:clamp(34px,4.5vw,58px)
}

h3 {
font-size:24px
}

.lead {
font-size:clamp(19px,2vw,23px);
color:#514a58;
max-width:790px
}

.muted {
color:var(--muted)
}


.btn {
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;
border-radius:999px;
padding:14px 22px;
border:1px solid transparent;
text-decoration:none;
font-weight:800;
cursor:pointer;
font-size:16px
}

.btn-primary {
background:linear-gradient(135deg,#6240a5,#875fc9);
color:#fff;
box-shadow:0 10px 24px rgba(117,81,183,.2)
}

.btn-secondary {
background:linear-gradient(45deg, #21b35f, #339760, #1b9b55);
border-color:#339760;
color:#fff
}

.btn-small {
padding:10px 16px;
font-size:14px
}

.text-link {
font-weight:800;
color:var(--purple-dark);
text-decoration:none
}


.site-header {
top:0;
z-index:30;
background:rgba(255,255,255,.92);
backdrop-filter:blur(12px);
border-bottom:1px solid rgba(232,224,238,.8)
}

.header-inner {
height:74px;
display:flex;
align-items:center;
justify-content:space-between;
gap:24px
}

.brand {
display:flex;
align-items:center;
gap:10px;
text-decoration:none;
font-weight:850;
color:var(--purple-dark)
}

.brand img {
width:46px;
height:46px;
object-fit:contain
}

.nav {
display:flex;
gap:24px;
font-size:14px;
font-weight:700
}

.nav a {
text-decoration:none;
color:#544d5d
}

.nav a:hover {
color:var(--purple-dark)
}


.hero {
padding:68px 0 54px;
background:radial-gradient(circle at 84% 34%,rgba(205,188,233,.5),transparent 31%),linear-gradient(180deg,#fff 0%,#faf7fd 100%)
}

.hero-grid {
display:grid;
grid-template-columns:1.06fr .94fr;
align-items:center;
gap:52px
}

.hero h2 {
font-size:clamp(25px,3.1vw,42px);
margin-top:18px;
max-width:760px
}

.hero p {
font-size:18px;
color:#564f5c;
max-width:720px
}

.hero-actions {
display:flex;
align-items:center;
gap:16px;
flex-wrap:wrap;
margin:30px 0 20px
}

.proof-row {
display:flex;
gap:14px;
flex-wrap:wrap
}

.proof-chip {
border:1px solid #dacfe8;
background:rgba(255,255,255,.72);
padding:9px 12px;
border-radius:999px;
font-size:13px;
color:#5f5766
}

.hero-image {
position:relative
}

.hero-image img {
filter:drop-shadow(0 28px 38px rgba(68,41,94,.12))
}

.hero-stamp {
position:absolute;
left:2%;
bottom:2%;
background:#fff;
padding:14px 16px;
border-radius:14px;
box-shadow:var(--shadow);
max-width:255px
}

.hero-stamp strong {
display:block;
color:var(--purple-dark);
font-size:18px
}


.trust-strip {
background:#fff
}

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

.trust-item {
padding:22px 24px;
border-right:1px solid var(--line)
}

.trust-item:last-child {
border-right:0
}

.trust-item strong {
display:block;
color:var(--purple-dark);
font-size:15px
}

.trust-item span {
font-size:13px;
color:var(--muted)
}


.start-section {
background:linear-gradient(180deg,#fbf8fe 0%,#f5effb 100%)
}

.section-head {
text-align:center;
max-width:800px;
margin:0 auto 30px
}

.section-head p {
color:var(--muted);
font-size:18px
}

.flow-line {
display:flex;
justify-content:center;
align-items:center;
gap:9px;
flex-wrap:wrap;
font-size:14px;
color:#62586a;
margin-top:18px
}

.flow-line strong {
color:var(--purple-dark)
}


.solver {
max-width:880px;
margin:auto;
background:#fff;
border:1px solid var(--line);
border-radius:22px;
box-shadow:var(--shadow);
padding:26px
}

.solver-top {
display:flex;
justify-content:space-between;
gap:16px;
align-items:center
}

.solver-top strong {
font-size:20px;
color:var(--purple-dark)
}

.progress {
height:7px;
background:#eee8f4;
border-radius:99px;
margin:16px 0 20px;
overflow:hidden
}

.progress i {
display:block;
height:100%;
background:linear-gradient(90deg,#6846aa,#8a64cc);
width:18%;
transition:.25s
}

.choices {
display:grid;
grid-template-columns:1fr 1fr;
gap:12px
}

.choice {
border:1px solid #ddd2e9;
background:#fff;
border-radius:15px;
padding:18px;
text-align:left;
cursor:pointer;
transition:.15s
}

.choice:hover,.choice.active {
border-color:#8b61ca;
box-shadow:0 8px 18px rgba(117,81,183,.11);
transform:translateY(-1px)
}

.choice strong {
display:block;
color:var(--purple-dark);
font-size:17px
}

.choice span {
display:block;
color:var(--muted);
font-size:14px;
margin-top:3px
}

.solver-result {
display:none;
background:var(--lav);
border-radius:16px;
padding:22px;
margin-top:18px
}

.solver-result.show {
display:block
}

.solver-result h3 {
margin:8px 0
}

.small {
font-size:13px
}

.disclaimer {
text-align:center;
color:#77717d;
font-size:12px;
max-width:780px;
margin:16px auto 0
}


.tools-section {
padding:82px 0;
background:linear-gradient(180deg,#faf7fd 0%,#efe8f4 100%)
}

.tools-section .wrap {
max-width: 1524px;
}


.tools-intro {
display:grid;
grid-template-columns:.8fr 1.2fr;
gap:34px;
align-items:end;
margin-bottom:30px
}

.tools-intro p {
font-size:18px;
color:#5f5865
}

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

.product-card {
display: flex;
grid-column: span 2;
min-height: 290px;
background: #fff;
border-radius: 24px;
overflow: hidden;
box-shadow: var(--shadow-sm);
border: 1px solid rgba(226, 216, 236, .9);
}

.product-card:nth-child(n+4) {
grid-column: span 3;
}

.product-media {
background:#b7abd2;
display:flex;
align-items:center;
justify-content:center;
padding:28px;
min-height:290px;
max-width: 197px;
flex-shrink: 0;
width: 100%;
}

.product-media img {
max-height:190px;
object-fit:contain;
transform: scale(1.3);
}

.product-copy {
padding:30px 30px 26px;
display:flex;
flex-direction:column;
align-items:flex-start;
flex-grow: 1;
}

.product-kicker {
font-size:12px;
letter-spacing:.14em;
text-transform:uppercase;
color:#7653c0;
font-weight:850
}

.product-copy h3 {
font-family:Georgia,"Times New Roman",serif;
color:#272031;
letter-spacing:-.02em;
margin:8px 0 10px
}

.product-copy p {
color:#66606d;
margin:0 0 22px
}

.product-copy .btn {
margin-top:auto
}

.cookbook-card {
grid-column:1/-1;
grid-template-columns:26% 74%;
min-height:220px
}

.cookbook-card .product-media {
min-height:220px
}

.cookbook-card .product-media img {
max-height:165px
}

.tools-note {
font-size:13px;
color:#756e7a;
text-align:center;
margin-top:24px;
text-wrap: balance;
}


.continuity {
background:#fff
}

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

.bullet-list {
display:grid;
gap:10px;
margin:22px 0
}

.bullet-list span:before {
content:"✓";
color:#8c62ca;
font-weight:900;
margin-right:9px
}

.member-preview {
background:linear-gradient(150deg,#eee4f8,#f8f5fc);
padding:22px;
border-radius:22px;
border:1px solid #dfd2ec
}

.member-card {
background:#fff;
border-radius:14px;
padding:18px;
box-shadow:var(--shadow-sm)
}

.member-bar {
height:8px;
background:#eee8f3;
border-radius:99px;
margin:10px 0
}

.member-bar i {
display:block;
width:52%;
height:100%;
background:#7f58c2;
border-radius:99px
}

.member-mini {
display:grid;
grid-template-columns:1fr 1fr;
gap:10px;
margin-top:10px
}

.member-mini>div {
background:#fff;
padding:14px;
border-radius:12px
}

.member-mini strong {
display:block;
color:var(--purple-dark);
font-size:14px
}

.member-mini span {
color:var(--muted);
font-size:12px
}


.body-type {
background:#f8f4fc
}

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

.body-grid p {
font-size:18px;
color:#5f5865
}

.body-callout {
background:#fff;
border-left:4px solid #835ec4;
padding:18px;
border-radius:10px;
margin:20px 0;
color:#554d5c
}

.body-type-img { 
max-width: 400px;
width: 100%;
margin-top: 16px;
}

.why-free {
padding:86px 0 60px;
background:linear-gradient(180deg,#faf7fd 0%,#fff 100%);
position: relative;
}

.why-free:before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: '';
    background: url(../../images/mbs-home/mbs-home-12.webp) right bottom / contain no-repeat;
    background-size: auto 90%;
}

.why-grid {
display:grid;
grid-template-columns:.9fr 1.1fr;
gap:50px;
align-items:center;
position: relative;
}

.why-grid p {
font-size:18px;
color:#5e5665
}

.why-grid .mission {
font-size:22px;
color:var(--purple-dark);
font-weight:800
}


.library-block {
padding-top:10px
}

.library-header {
display:grid;
grid-template-columns:1fr 1fr;
gap:36px;
align-items:end;
margin-bottom:24px
}

.library-header p {
font-size:18px;
color:#655e6a
}

.library-tabs {
display:flex;
gap:8px;
overflow-x:auto;
padding-bottom:10px;
margin-bottom:14px;
flex-wrap: wrap;
}

.library-tab {
white-space:nowrap;
border:1px solid #d6c9e5;
background:#fff;
color:#5b476c;
border-radius:999px;
padding:9px 14px;
font-weight:750;
cursor:pointer
}

.library-tab.active {
background:#5d3c8e;
color:#fff;
border-color:#5d3c8e
}

.products-shell {
position:relative
}

.products-track {
display:grid;
grid-auto-flow:column;
grid-auto-columns:minmax(210px,23%);
gap:14px;
overflow-x:auto;
scroll-snap-type:x proximity;
padding:6px 2px 18px;
scrollbar-width:thin
}

.program-card {
scroll-snap-align:start;
position:relative;
background:#fff;
border-radius:16px;
overflow:hidden;
border:1px solid #e6ddec;
box-shadow:0 8px 18px rgba(59,35,80,.07);
text-decoration:none;
min-height:318px
}

.program-card img {
width:100%;
height:174px;
object-fit:contain;
background:linear-gradient(160deg,#f0e7f8,#d8cae8);
padding:18px
}

.program-body {
padding:16px
}

.program-body .value {
font-size:11px;
color:#7c5ab5;
text-transform:uppercase;
letter-spacing:.08em;
font-weight:850
}

.program-body h3 {
font-size:19px;
margin:6px 0;
color:#3b2a4e
}

.program-body p {
font-size:13px;
color:#6d6672;
margin:0
}

.free-badge {
position:absolute;
top:12px;
right:12px;
background:#fff;
color:#4e2d7f;
padding:6px 9px;
border-radius:999px;
font-size:11px;
font-weight:900;
box-shadow:var(--shadow-sm)
}

.library-footer {
display:flex;
justify-content:center;
margin-top:18px
}


.testimonials {
background:#f7f2fb
}

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

.quote {
background:#fff;
border:1px solid var(--line);
border-radius:16px;
padding:22px
}

.stars {
color:#a47737
}

.quote blockquote {
margin:12px 0 0;
font-size:16px
}

.quote cite {
display:block;
margin-top:14px;
color:#6e6673;
font-style:normal;
font-weight:700
}


.about {
background:#fff
}

.about-grid {
display:grid;
grid-template-columns:.8fr 1.2fr;
gap:54px;
align-items:center
}

.about-photo img {
border-radius:24px;
box-shadow:var(--shadow)
}

.about p {
font-size:18px;
color:#5e5864
}


.newsletter {
background:#f2ebf8
}

.newsletter-grid {
display:grid;
grid-template-columns:1fr auto;
gap:28px;
align-items:center
}

.subscribe {
display:flex;
gap:10px
}

.subscribe input {
min-width:320px;
border:1px solid #cdbfe0;
border-radius:999px;
padding:14px 18px;
font:inherit
}


footer {
background:#3d2558;
color:#fff;
padding:34px 0
}

.footer-grid {
display:flex;
justify-content:space-between;
gap:24px;
flex-wrap:wrap;
font-size:13px
}

.footer-grid a {
color:#fff;
text-decoration:none
}

@media (max-width: 1540px) {
    .product-grid { grid-template-columns: 1fr 1fr; }
    .product-card, .product-card:nth-child(4) { grid-column: span 1; }
    .product-card:nth-child(5) { grid-column: span 2; }
    .tools-section .wrap { max-width: var(--max); }
}

@media(max-width:980px) {
.nav {
display:none
}

.hero-grid,.tools-intro,.continuity-grid,.body-grid,.why-grid,.library-header,.about-grid,.newsletter-grid {
grid-template-columns:1fr
}

.about-photo { max-width: 200px; margin: 0 auto; }
.about-grid, .why-grid, .body-grid { gap: 24px; }
.library-header { gap: 0px; }
.about-grid .eyebrow, .about-grid h2 { text-align: center; }
.body-type-img { margin: 24px auto 0; }
.body-grid h2, .body-grid .eyebrow { text-align: center; }

.why-free:before { opacity: 0.1; }

.product-grid {
grid-template-columns:1fr
}

.product-card, .product-card:nth-child(4) { grid-column: 1; }
.product-card:nth-child(5) { grid-column: 1; }

.cookbook-card {
grid-column:auto
}

.products-track {
grid-auto-columns:minmax(220px,42%)
}

.quote-grid {
grid-template-columns:1fr 1fr
}

.trust-grid {
grid-template-columns:1fr 1fr
}

.trust-item:nth-child(2) {
border-right:0
}

.tools-intro {
align-items:start
}


}


@media(max-width:640px) {
.wrap {
padding:0 18px
}

.section {
padding:62px 0
}

.hero {
padding-top:42px
}

.header-inner {
height:66px
}

.brand span {
display:none
}

.choices {
grid-template-columns:1fr
}

.product-card,.cookbook-card {
grid-template-columns:1fr;
flex-direction: column;
}

.product-media,.cookbook-card .product-media {
min-height:190px;
width: 100%;
max-width: 100%;
}

.product-media img,.cookbook-card .product-media img {
max-height:145px;
max-width: 160px;
}

.trust-grid {
grid-template-columns:1fr
}

.trust-item {
border-right:0;
border-bottom:1px solid var(--line)
}

.products-track {
grid-auto-columns:78%
}

.quote-grid {
grid-template-columns:1fr
}

.member-mini {
grid-template-columns:1fr
}

.subscribe {
flex-direction:column
}

.subscribe input {
min-width:0;
width:100%
}

.hero-actions {
align-items:flex-start;
flex-direction:column
}

.why-grid {
margin-bottom:40px
}


}


/* Visual treatment follows index.php: serif headings, lavender, and soft cards. */
:root {
    --purple: #7354cf;
    --purple-dark: #50399e;
    --purple-deep: #261f3d;
    --ink: #222136;
    --muted: #6d6b7f;
    --line: #e9e6f0;
    --lav: #f3f0ff;
    --max: 1180px;
}
body {
    font-family: Poppins, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    line-height: 1.75;
}
h1, h2, h3 {
    font-family: "DM Serif Display", Georgia, serif;
    font-weight: 400;
    color: var(--ink);
    letter-spacing: -.025em;
    line-height: 1.16;
    text-wrap: balance;
}
h1 { font-size: clamp(3rem, 5.2vw, 4.65rem); }
h2 { font-size: clamp(2.15rem, 4.2vw, 3.15rem); }
button, input { font-family: inherit; }
button { line-height: 1.55; }
.section { padding: 92px 0; }
section[id] { scroll-margin-top: 95px; }
.eyebrow, .product-kicker {
    color: var(--purple);
    font-size: .74rem;
    font-weight: 700;
    letter-spacing: .12em;
}
.header-inner { height: 86px; }
.brand img { width: 58px; height: 58px; }
.brand span { font-size: 15px; }
.nav { gap: 20px; font-size: 13px; }
.btn { font-size: .88rem; font-weight: 600; transition: transform .2s, box-shadow .2s; }
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: linear-gradient(110deg, #8265df, #6245bd); }
.btn-secondary { border-color: #339760; background: linear-gradient(45deg, #21b35f, #339760, #1b9b55); }
.hero {
    padding: 85px 0 70px;
    overflow: hidden;
    background: radial-gradient(ellipse at 76% 49%, #e6dfff 0, rgba(237,232,251,.62) 27%, transparent 56%), linear-gradient(112deg, #fcfbff, #f8f6ff 48%, #f5f2fc);
}
.hero-grid { grid-template-columns: 1.05fr 1fr; gap: 28px; min-height: 560px; }
.hero h1 { color: var(--purple); }
.hero h2 { font-family: Poppins, sans-serif; font-size: clamp(1.35rem, 2.2vw, 1.85rem); font-weight: 600; line-height: 1.4; }
.hero p { font-size: 1rem; }
.hero-image { align-self: end; }
.hero-image img { width: 100%; }
.hero-stamp { bottom: 0; border: 1px solid var(--line); }
.proof-chip { font-size: 11px; padding: 7px 11px; }
.trust-item strong { font-size: 14px; }
.trust-item span { font-size: 12px; }
.start-section { background: radial-gradient(ellipse at 0 15%, #ebe6ff, transparent 40%), #fdfdff; }
.section-head p, .tools-intro p, .body-grid p, .why-grid p, .library-header p, .about p { font-size: 1rem; }
.solver { border-radius: 18px; box-shadow: 0 16px 45px rgba(39,31,77,.09); }
.solver-eyebrow { margin: 0 0 3px; }
.choice strong { font-size: 16px; font-weight: 600; }
.choice span { font-size: 13px; line-height: 1.65; }
.tools-section {
    position: relative;
    padding: 92px 0;
    background: linear-gradient(rgba(248,247,252,.9), rgba(248,247,252,.92)), url('../../images/mbs-home/mbs-home-8.webp') center / cover;
}
.product-card { border-radius: 18px; box-shadow: 0 5px 20px rgba(47,39,83,.12); }
.product-media { background: radial-gradient(#e0dbec, #9f92c1); padding: 20px; }
.product-media img { width: 100%; max-height: 245px; }
.product-copy { padding: 24px; }
.product-copy h3 { font-family: "DM Serif Display", Georgia, serif; font-size: 1.4rem; }
.product-copy p { font-size: .88rem; line-height: 1.75; }
.product-kicker { font-size: .65rem; }
.product-copy .btn { font-size: .8rem; }
.member-preview { background: linear-gradient(150deg, #eee8ff, #f8f6ff); }
.body-type { background: #f6f4ff; }
.quote-grid { gap: 20px; }
.testimonials {
    background: linear-gradient(rgba(246,244,255,.88), rgba(246,244,255,.92)), url('../../images/mbs-home/mbs-home-9.webp') center / cover;
}
.quote { border-radius: 18px; padding: 28px; box-shadow: 0 12px 30px rgba(47,39,83,.09); }
.quote blockquote { font-size: .94rem; color: #4e4c63; }
.stars { color: #e6a52f; letter-spacing: .1em; }
.about-photo img { width: 100%; max-height: 480px; object-fit: cover; border-radius: 360px; padding: 6px; }
.newsletter { background: linear-gradient(115deg, #261f3d, #463775); color: #fff; }
.newsletter h2 { color: #fff; }
.newsletter .eyebrow { color: #cbbdff; }
.newsletter .muted { color: #d9d5e7; }
.subscribe { flex-wrap: wrap; }
.subscribe input { min-width: 0; width: 270px; max-width: 100%; }
footer { background: #261f3d; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #9279df; outline-offset: 4px; }
@media (max-width: 1100px) {
    .brand span { display: none; }
    .newsletter-grid { grid-template-columns: 1fr; }
}
@media (max-width: 980px) {
    .hero-grid { grid-template-columns: 1fr; min-height: 0; }
    .hero-image { max-width: 600px; margin: 0 auto; }
    .hero { padding-top: 52px; }
}
@media (max-width: 640px) {
    .section, .tools-section { padding: 60px 0; }
    .header-inner { height: 72px; gap: 12px; }
    .brand img { width: 46px; height: 46px; }
    .hero-grid { gap: 40px; }
    .hero-stamp { position: relative; left: auto; max-width: none; margin-top: 16px; }
    .solver { padding: 20px; }
    .solver-top { align-items: flex-start; flex-direction: column; gap: 6px; }
    .trust-grid { grid-template-columns: 1fr 1fr; }
    .trust-item { padding: 18px 12px; }
    .subscribe, .subscribe input, .subscribe button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition: none !important; }
}

/* V7 hero, testimonial carousel, and social newsletter components. */
:root { --v7-ink: #222136; --v7-muted: #6d6b7f; --v7-purple: #7354cf; --v7-purple-dark: #50399e; --v7-lavender: #f3f0ff; --v7-line: #e9e6f0; --v7-shadow: 0 16px 45px rgba(39,31,77,.09); }
.v7-wrap { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.v7-kicker { margin: 0 0 13px; color: var(--v7-purple); font-size: .76rem; font-weight: 700; letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; }
.v7-button { display: inline-flex; min-height: 49px; align-items: center; justify-content: center; gap: 12px; padding: 0 20px; border-radius: 99px; font-size: .91rem; font-weight: 700; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.v7-button:hover { transform: translateY(-2px); }
.v7-button-primary { color: #fff; background: linear-gradient(110deg, #8265df, #6245bd); box-shadow: 0 11px 24px rgba(99, 69, 192, .23); }
.v7-button-primary:hover { box-shadow: 0 14px 28px rgba(99, 69, 192, .32); }
.v7-button-plain { color: #554d73; background: rgba(255,255,255,.82); }
.v7-section-intro { max-width: 720px; margin: 0 auto 42px; text-align: center; }
.v7-section-intro h2 { margin: 0 0 13px; font-size: clamp(2.15rem, 4.2vw, 3.15rem); letter-spacing: -.02em; line-height: 1.16; }
.v7-section-intro h2 span { color: var(--v7-purple); }
.v7-section-intro > p:last-child { max-width: 700px; margin: 0 auto; color: var(--v7-muted); font-size: 1.02rem; }
.v7-button-light { flex: 0 0 auto; color: #4e378e; background: #fff; }
.text-balance { text-wrap: balance; }
@media (max-width: 680px) {
.v7-wrap { width: min(100% - 36px, 540px); }
.v7-section-intro { margin-bottom: 30px; }
}
@media (max-width: 520px) {
.v7-section-intro h2 br { display: none; }
}
.v7-hero-bg { background: radial-gradient(ellipse at 76% 49%, #e6dfff 0, rgba(237, 232, 251, .62) 27%, transparent 56%), linear-gradient(112deg, #fcfbff 0%, #f8f6ff 48%, #f5f2fc 100%); }
.v7-hero { max-width: 1980px; margin: 0 auto; position: relative; display: flex; min-height: 760px; align-items: center; overflow: hidden; padding: 150px clamp(24px, 10vw, 150px) 100px; }
.v7-hero-copy { position: relative; z-index: 2; width: min(620px, 48%); }
.v7-hero .v7-kicker { display: flex; align-items: center; gap: 10px; }
.v7-hero .v7-kicker span { width: 8px; height: 8px; border-radius: 50%; background: #8a70e2; box-shadow: 0 0 0 5px rgba(138, 112, 226, .13); }
.v7-hero h1 { max-width: 680px; margin: 0 0 20px; font-size: clamp(2.85rem, 5.2vw, 4.65rem); letter-spacing: -.025em; line-height: 1.02; }
.v7-hero h1 span { color: var(--v7-purple); }
.v7-hero-copy > p:not(.v7-kicker) { max-width: 535px; margin: 0 0 14px; color: var(--v7-muted); font-size: 1.08rem; }
.v7-hero-copy .v7-hero-intro { color: #423e59 !important; font-size: 1.22rem !important; font-weight: 600; line-height: 1.55; }
.v7-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 26px; }
.v7-hero-quote { display: flex; max-width: 510px; align-items: flex-start; gap: 12px; margin-top: 37px; padding-top: 19px; border-top: 1px solid rgba(105, 88, 165, .15); }
.v7-quote-mark { color: #9279df; font-family: Georgia, serif; font-size: 2.5rem; line-height: .9; }
.v7-hero-quote p { margin: 0; color: #737084; font-size: .9rem; line-height: 1.65; }
.v7-hero-quote strong { display: block; margin-top: 1em; color: #4a465d; font-weight: 700; }
.v7-hero-art { position: absolute; top: 76px; right: 0; bottom: 0; display: flex; width: 58%; align-items: flex-end; justify-content: flex-end; }
.v7-hero-art > img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: right bottom; }
.v7-focus > .v7-wrap { width: min(1050px, calc(100% - 48px)); }
.v7-catalog-heading h2, .v7-articles-heading h2, .v7-social h2, .v7-closing h2 { margin: 0 0 13px; font-size: clamp(2.15rem, 4.2vw, 3.15rem); letter-spacing: -.02em; line-height: 1.16; }
.v7-focus .v7-section-intro { margin-bottom: 26px; }
.v7-focus .v7-section-intro .v7-kicker { margin-bottom: 9px; font-size: .7rem; }
.v7-focus .v7-section-intro h2 { margin-bottom: 9px; font-family: Poppins, "Segoe UI", sans-serif; font-size: clamp(2rem, 4vw, 2.65rem); font-weight: 700; letter-spacing: -.055em; line-height: 1.12; }
.v7-focus .v7-section-intro > p:last-child { max-width: 650px; font-size: .91rem; line-height: 1.6; }
.v7-featured > .v7-wrap { position: relative; }
.v7-featured .v7-section-intro { margin-bottom: 38px; }
.v7-feature-copy .v7-kicker { margin-bottom: 7px; font-size: .7rem; }
.v7-feature-copy > p:not(.v7-kicker) { margin: 0 0 15px; color: var(--v7-muted); font-size: .88rem; line-height: 1.65; }
.v7-more-offers .v7-section-intro { margin-bottom: 35px; }
.v7-carousel-controls, .v7-testimonial-controls { display: flex; flex: 0 0 auto; align-items: center; gap: 9px; }
.v7-arrow.v7-product-next, .v7-arrow.v7-testimonial-next, .v7-arrow.v7-article-next { background: var(--v7-purple); color: #fff; }
.v7-arrow.v7-product-next:hover, .v7-arrow.v7-testimonial-next:hover, .v7-arrow.v7-article-next:hover { background: var(--v7-purple-dark); }
.v7-product-swiper, .v7-testimonial-swiper, .v7-article-swiper { overflow: hidden; padding: 8px 4px 10px; }
.v7-product-swiper:not(.swiper-initialized), .v7-testimonial-swiper:not(.swiper-initialized), .v7-article-swiper:not(.swiper-initialized) { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-color: #8c72d2 #eeeaf7; scrollbar-width: auto; }
.v7-product-swiper:not(.swiper-initialized)::-webkit-scrollbar, .v7-testimonial-swiper:not(.swiper-initialized)::-webkit-scrollbar, .v7-article-swiper:not(.swiper-initialized)::-webkit-scrollbar { height: 9px; }
.v7-product-swiper:not(.swiper-initialized)::-webkit-scrollbar-track, .v7-testimonial-swiper:not(.swiper-initialized)::-webkit-scrollbar-track, .v7-article-swiper:not(.swiper-initialized)::-webkit-scrollbar-track { border-radius: 99px; background: #eeeaf7; }
.v7-product-swiper:not(.swiper-initialized)::-webkit-scrollbar-thumb, .v7-testimonial-swiper:not(.swiper-initialized)::-webkit-scrollbar-thumb, .v7-article-swiper:not(.swiper-initialized)::-webkit-scrollbar-thumb { border: 2px solid #eeeaf7; border-radius: 99px; background: #8c72d2; }
.v7-product-swiper:not(.swiper-initialized) .swiper-wrapper, .v7-testimonial-swiper:not(.swiper-initialized) .swiper-wrapper, .v7-article-swiper:not(.swiper-initialized) .swiper-wrapper { display: flex; gap: 16px; width: max-content; }
.v7-testimonial-swiper:not(.swiper-initialized) .swiper-slide { width: min(82vw, 360px); flex: 0 0 min(82vw, 360px); scroll-snap-align: start; }
.v7-product-pagination, .v7-testimonial-pagination, .v7-article-pagination { position: static !important; display: flex; min-height: 18px; align-items: center; justify-content: center; gap: 3px; margin-top: 13px; }
.v7-product-pagination .swiper-pagination-bullet, .v7-testimonial-pagination .swiper-pagination-bullet, .v7-article-pagination .swiper-pagination-bullet { width: 9px; height: 9px; margin: 0 3px !important; background: #c9c2d9; opacity: 1; transition: width .2s ease, border-radius .2s ease, background .2s ease; }
.v7-product-pagination .swiper-pagination-bullet-active, .v7-testimonial-pagination .swiper-pagination-bullet-active, .v7-article-pagination .swiper-pagination-bullet-active { width: 25px; border-radius: 99px; background: var(--v7-purple); }
.v7-testimonials { position: relative; padding: 82px 0 88px; background: #f6f4ff; overflow: hidden; }
.v7-testimonials:before { opacity: 0.3; filter: blur(3px); position: absolute; width: 100%; height: 100%; top: 0; left: 0; content: ''; background: linear-gradient(90deg, rgba(255, 250, 246, .08) 0%, rgb(255 255 255 / 26%) 25%, rgba(255, 250, 246, .78) 75%, rgba(255, 250, 246, .08) 100%), url(../../images/mbs-home/mbs-home-9.webp) center / cover no-repeat, #f8f2ed; }
.v7-testimonials > .v7-wrap { position: relative; }
.v7-testimonials .v7-section-intro { margin-bottom: 27px; }
.v7-testimonials .v7-section-intro .v7-kicker { color: #7652cf; }
.v7-testimonials .v7-section-intro h2 { color: #222136; }
.v7-testimonials .v7-section-intro > p:last-child { color: #666377; }
.v7-testimonial-controls { justify-content: flex-end; margin: 0 3px 5px; }
.v7-testimonial-card { position: relative; display: flex; height: auto; min-height: 315px; flex-direction: column; padding: 23px 25px 18px; border: 1px solid rgba(113, 91, 130, .2); border-radius: 18px; background: rgba(255, 255, 255, .95); box-shadow: 0 12px 30px rgba(47, 39, 83, .12); }
.v7-testimonial-card::after { position: absolute; top: 16px; right: 22px; color: #b69ce7; content: "”"; font-family: Georgia, serif; font-size: 3.2rem; font-weight: 700; line-height: 1; }
.v7-testimonial-card > img { position: absolute; bottom: 19px; left: 25px; width: 39px; height: 39px; border: 2px solid #f1edf8; border-radius: 50%; object-fit: cover; }
.v7-stars { margin: 0 0 14px; color: #e6a52f; font-size: 1.08rem; letter-spacing: .1em; line-height: 1.2; }
.v7-testimonial-card blockquote { flex: 1; margin: 0 0 17px; color: #4e4c63; font-size: .89rem; line-height: 1.68; }
.v7-testimonial-card > p { min-height: 54px; margin: auto 0 0; padding: 15px 0 0 53px; border-top: 1px solid rgba(112, 91, 130, .18); color: var(--v7-ink); font-size: .86rem; font-weight: 700; }
.v7-button-outline { min-height: 43px; margin: 18px auto 0; border: 1px solid #dcd5ee; color: var(--v7-purple-dark); background: #fff; }
.v7-credentials .v7-wrap { position: relative; }
.v7-credentials .v7-section-intro { margin-bottom: 38px; }
.v7-social-bg { position: relative; overflow: hidden; background: radial-gradient(ellipse at 12% 10%, rgba(150, 120, 235, .35), transparent 45%), radial-gradient(ellipse at 90% 95%, rgba(210, 150, 230, .22), transparent 42%), linear-gradient(115deg, #261f3d, #463775); color: #fff; }
.v7-social { position: relative; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 56px; padding-top: 88px; padding-bottom: 90px; }
.v7-social h2 { font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
.v7-social .v7-kicker { color: #cbbdff; }
.v7-social-copy > p:not(.v7-kicker):not(.v7-social-label) { max-width: 610px; margin: 0; color: #d9d5e7; font-size: .96rem; }
.v7-social-label { margin: 28px 0 12px; color: #cbbdff; font-size: .74rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.v7-social-links { display: flex; flex-wrap: wrap; gap: 12px; }
.v7-social-links a { display: grid; width: 50px; height: 50px; place-items: center; border: 1px solid rgba(255, 255, 255, .28); border-radius: 50%; color: #fff; background: rgba(255, 255, 255, .1); text-decoration: none; transition: transform .25s ease, background .25s ease, color .25s ease, box-shadow .25s ease, border-color .25s ease; }
.v7-social-links a svg { display: block; width: 21px; height: 21px; fill: currentColor; }
.v7-social-links a:hover, .v7-social-links a:focus-visible { transform: translateY(-4px); border-color: #fff; color: #3d2f78; background: #fff; box-shadow: 0 10px 22px rgba(15, 8, 40, .35); outline: none; }
.v7-social-links a svg .fill-1 { fill: #443c5e; }
.v7-social-links a:hover  .fill-1 { fill: #fff; }
.v7-subscribe-card { position: relative; overflow: hidden; padding: 34px 32px; border: 1px solid rgba(255, 255, 255, .25); border-radius: 24px; background: rgba(255, 255, 255, .96); box-shadow: 0 24px 55px rgba(12, 6, 36, .38); color: var(--v7-ink); text-align: center; }
.v7-subscribe-icon { display: grid; width: 58px; height: 58px; margin: 0 auto 14px; place-items: center; border-radius: 50%; background: linear-gradient(145deg, #efe9ff, #dcd0fa); color: var(--v7-purple-dark); }
.v7-subscribe-icon svg { width: 27px; height: 27px; }
.v7-subscribe-card h3 { margin: 0 0 6px; font-size: 1.5rem; line-height: 1.25; }
.v7-subscribe-note { text-wrap: balance; margin: 0 0 20px; color: var(--v7-muted); font-size: .86rem; line-height: 1.55; }
.v7-subscribe-form { display: flex; flex-direction: column; gap: 12px; margin: 0; }
.v7-subscribe-form .form-control { width: 100%; height: 52px; padding: 0 18px; border: 1.5px solid #ddd3f7; border-radius: 12px; background: #faf8ff; color: var(--v7-ink); font: inherit; font-size: .94rem; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.v7-subscribe-form .form-control:focus { border-color: var(--v7-purple); background: #fff; box-shadow: 0 0 0 4px rgba(115, 84, 207, .16); outline: none; }
.v7-subscribe-form .btn_1 { position: relative; display: inline-flex; width: 100%; min-height: 52px; align-items: center; justify-content: center; overflow: hidden; border: 0; border-radius: 12px; color: #fff; background: linear-gradient(110deg, #8265df, #6245bd); box-shadow: 0 11px 24px rgba(99, 69, 192, .3); cursor: pointer; font: inherit; font-size: .96rem; font-weight: 700; transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease; }
.v7-subscribe-form .btn_1::after { position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .35), transparent); content: ""; transform: skewX(-20deg); transition: left .6s ease; }
.v7-subscribe-form .btn_1:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 15px 30px rgba(99, 69, 192, .4); }
.v7-subscribe-form .btn_1:hover:not(:disabled)::after { left: 120%; }
.v7-subscribe-form .btn_1:focus-visible { outline: 3px solid #bbaaf3; outline-offset: 3px; }
.v7-subscribe-form .btn_1:disabled { cursor: progress; opacity: .85; }
.v7-btn-spinner { display: none; width: 20px; height: 20px; border: 3px solid rgba(255, 255, 255, .4); border-top-color: #fff; border-radius: 50%; animation: v7-spin .7s linear infinite; }
.v7-subscribe-form.is-loading .v7-btn-label { display: none; }
.v7-subscribe-form.is-loading .v7-btn-spinner { display: block; }
.v7-form-error { margin: 0; color: #c0344f; font-size: .84rem; font-weight: 600; }
.v7-form-error[hidden], .v7-thanks[hidden], .v7-subscribe-form[hidden], .v7-subscribe-card.is-subscribed > .v7-form-wrap { display: none; }
.v7-subscribe-form.is-shaking { animation: v7-shake .4s ease; }
.v7-thanks { padding: 6px 0 4px; animation: v7-pop .5s cubic-bezier(.2, .9, .3, 1.2) both; }
.v7-thanks h3 { margin-bottom: 8px; }
.v7-thanks p { text-wrap: balance; margin: 0; color: var(--v7-muted); font-size: .9rem; line-height: 1.65; }
.v7-thanks-check { width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: #efe9ff; box-shadow: 0 0 0 0 rgba(115, 84, 207, .35); animation: v7-pulse 1.2s ease-out .4s 1; }
.v7-thanks-check svg { display: block; width: 100%; height: 100%; }
.v7-thanks-check circle { stroke: #7354cf; stroke-width: 2.5; stroke-dasharray: 151; stroke-dashoffset: 151; animation: v7-draw .6s ease .15s forwards; }
.v7-thanks-check path { stroke: #7354cf; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 40; stroke-dashoffset: 40; animation: v7-draw .4s ease .6s forwards; }
.v7-subscribe-card.is-subscribed::after { position: absolute; top: 0; right: 0; left: 0; height: 100%; background: radial-gradient(circle at 50% 0, rgba(155, 127, 232, .22), transparent 60%); content: ""; pointer-events: none; animation: v7-fade .8s ease both; }
.v7-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@keyframes v7-spin { to { transform: rotate(360deg); } }
@keyframes v7-shake { 0%, 100% { transform: translateX(0); } 20%, 60% { transform: translateX(-7px); } 40%, 80% { transform: translateX(7px); } }
@keyframes v7-pop { from { opacity: 0; transform: translateY(14px) scale(.94); } to { opacity: 1; transform: none; } }
@keyframes v7-draw { to { stroke-dashoffset: 0; } }
@keyframes v7-pulse { to { box-shadow: 0 0 0 22px rgba(115, 84, 207, 0); } }
@keyframes v7-fade { from { opacity: 0; } to { opacity: 1; } }
.v7-closing .v7-kicker { color: #cbbdff; }
@keyframes v7-scroll { 0%, 100% { opacity: .4; transform: translateY(0); } 50% { opacity: 1; transform: translateY(5px); } }
@media (max-width: 980px) {
.v7-hero { min-height: 700px; padding-right: 6vw; padding-left: 7vw; }
.v7-hero-copy { width: 51%; }
.v7-hero-art { top: 88px; width: 55%; }
}
@media (max-width: 680px) {
.v7-hero { min-height: 0; align-items: flex-start; flex-direction: column; padding: 122px 24px 0; }
.v7-hero-copy { width: 100%; }
.v7-hero h1 { font-size: clamp(2.7rem, 11vw, 4rem); }
.v7-hero-copy > p:not(.v7-kicker) { font-size: .98rem; }
.v7-hero-copy .v7-hero-intro { font-size: 1.1rem !important; }
.v7-hero-quote { margin-top: 24px; }
.v7-hero-art { position: relative; top: auto; right: auto; bottom: auto; width: calc(100% + 48px); height: min(76vw, 410px); align-self: center; justify-content: center; margin: 16px -24px 0; }
.v7-hero-art > img { object-position: center bottom; }
.v7-focus > .v7-wrap { width: min(100% - 36px, 540px); }
.v7-feature-copy > p:not(.v7-kicker) { font-size: .84rem; }
.v7-carousel-controls, .v7-testimonial-controls { width: 100%; flex-wrap: wrap; justify-content: flex-end; }
.v7-testimonial-card { min-height: 285px; }
.v7-social { grid-template-columns: 1fr; gap: 32px; padding-top: 70px; padding-bottom: 75px; }
.v7-subscribe-card { padding: 28px 20px; }
}
@media (max-width: 520px) {
.v7-hero { padding-top: 108px; }
.v7-hero-actions { flex-direction: column; }
.v7-hero-actions .v7-button { width: 100%; }
}
@media (max-width: 380px) {
.v7-social-links a { width: 46px; height: 46px; }
}

/* The v7 header occupies its own space; keep all of the v7 hero copy readable. */
.v7-hero { padding-top: 80px; padding-bottom: 80px; }
.v7-hero-copy > h2 { margin: 0 0 18px; font-family: Poppins, sans-serif; font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.4; font-weight: 600; }
.v7-hero-copy .proof-row { margin-top: 22px; }
.v7-hero-art .hero-stamp { z-index: 1; bottom: 30px; left: 20%; }
.v7-social h2 { color: #fff; }
.v7-social h3 { color: var(--v7-ink); }
@media (max-width: 680px) {
    .v7-hero { padding-top: 48px; padding-bottom: 0; }
    .v7-hero-art { height: auto; flex-direction: column; align-items: center; }
    .v7-hero-art > img { height: min(76vw, 410px); }
    .v7-hero-art .hero-stamp { position: relative; left: auto; bottom: auto; margin: 0 24px 24px; }
}

/* Footer and product carousel for this page. */
.footer-bg { background: #fff; }
.v7-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 24px clamp(22px, 7vw, 108px); color: #858295; font-size: .8rem; max-width: 1440px; margin: 0 auto; }
.v7-footer p { margin: 0; }
.v7-footer > div { display: flex; flex-wrap: wrap; gap: 13px; }
.v7-footer a { color: inherit; text-decoration: none; }
.v7-footer a:hover { color: var(--v7-purple); }
@media (max-width: 680px) {
.v7-footer { flex-wrap: wrap; padding: 23px; }
.v7-footer p { order: 3; width: 100%; }
}
@media (max-width: 520px) {
.v7-footer { flex-direction: column; align-items: center; gap: 14px; text-align: center; }
.v7-footer > div { justify-content: center; }
}

.v7-footer { background: #fff; }
.v7-product-swiper { padding: 8px 4px 10px; overflow: hidden; }
.v7-product-swiper .products-track { display: flex; gap: 0; overflow: visible; padding: 0; scroll-snap-type: none; }
.v7-product-swiper .program-card { height: auto; flex-shrink: 0; }
.v7-product-swiper:not(.swiper-initialized) { overflow-x: auto; scroll-snap-type: x mandatory; }
.v7-product-swiper:not(.swiper-initialized) .products-track { gap: 16px; width: max-content; }
.v7-product-swiper:not(.swiper-initialized) .program-card { width: min(82vw, 280px); flex: 0 0 min(82vw, 280px); scroll-snap-align: start; }
.v7-product-pagination { position: static; display: flex; min-height: 18px; align-items: center; justify-content: center; gap: 3px; margin-top: 13px; }
.v7-product-pagination .swiper-pagination-bullet { width: 9px; height: 9px; margin: 0 3px; background: #c9c2d9; opacity: 1; }
.v7-product-pagination .swiper-pagination-bullet-active { width: 25px; border-radius: 99px; background: var(--v7-purple); }

/* Why free: lavender editorial section and a purple free-access card. */
.why-free {
    padding: clamp(48px, 4.3vw, 78px) 0;
    background: radial-gradient(ellipse at 15% 20%, #f2edfc, transparent 65%), #eee8f8;
}

/* Trust strip: circular illustrations and inset lavender dividers. */
.trust-strip .trust-grid {
    max-width: 1540px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 10px 20px;
}
.trust-strip .trust-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
    padding: 0 34px;
    border: 0;
}
.trust-strip .trust-item:first-child { padding-left: 0; }
.trust-strip .trust-item:last-child { padding-right: 0; }
.trust-strip .trust-item + .trust-item::before {
    position: absolute;
    top: 6px;
    bottom: 6px;
    left: 0;
    width: 1px;
    background: #e7ddfb;
    content: '';
}
.trust-strip .trust-icon {
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    object-fit: contain;
}
.trust-strip .trust-copy { min-width: 0; }
.trust-strip .trust-item strong {
    margin: 0 0 4px;
    color: #301080;
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
}
.trust-strip .trust-item span {
    display: block;
    color: #8980b1;
    font-size: 14px;
    line-height: 1.5;
}
@media (max-width: 1250px) {
    .trust-strip .trust-item { gap: 16px; padding: 0 20px; }
    .trust-strip .trust-icon { flex-basis: 68px; width: 68px; height: 68px; }
    .trust-strip .trust-item strong { font-size: 16px; }
}
@media (max-width: 980px) {
    .trust-strip .trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 0; padding: 20px; }
    .trust-strip .trust-item:nth-child(odd) { padding-left: 0; }
    .trust-strip .trust-item:nth-child(even) { padding-right: 0; }
    .trust-strip .trust-item:nth-child(3)::before { display: none; }
}
@media (max-width: 540px) {
    .trust-strip .trust-grid { grid-template-columns: 1fr; gap: 0; padding: 0 20px; }
    .trust-strip .trust-item { gap: 20px; padding: 16px 0; }
    .trust-strip .trust-item + .trust-item { border-top: 1px solid #e7ddfb; }
    .trust-strip .trust-item + .trust-item::before { display: none; }
}

/* Guided program finder. */
#start { background: radial-gradient(ellipse at 5% 15%, #eae4ff, transparent 52%), #faf9fd; }
#start .start-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; max-width: 900px; margin: 0 auto; }
#start .start-intro { max-width: 780px; margin: 0 auto; text-align: center; }
#start .start-intro h2 { margin: 14px 0 22px; color: #30244d; font-size: clamp(2.3rem, 3.7vw, 3.6rem); line-height: 1.12; letter-spacing: -.035em; }
#start .start-intro > p:not(.eyebrow) { color: #736c86; line-height: 1.8; max-width: 590px; margin-left: auto; margin-right: auto; }
#start .start-steps { list-style: none; margin: 28px 0 20px; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 18px 26px; }
#start .start-steps li { display: flex; align-items: center; gap: 14px; color: #4a3d65; font-size: 18px; font-weight: 600; }
#start .start-steps span { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #dcd2f6; border-radius: 50%; color: #7354cf; background: #f4f0ff; font-size: 11px; }
#start .start-note { font-size: 12px; }
#start .solver { width: 100%; max-width: 900px; margin: 0 auto; padding: clamp(24px, 4vw, 48px); font-size: 16px; border: 1px solid #e7e0f3; border-radius: 24px; background: #fff; box-shadow: 0 22px 65px #3e285412; }
#start .solver-top { gap: 12px; align-items: center; }
#start .solver .small { font-size: 14px; }
#start .solver .btn { font-size: 16px; padding: 14px 24px; }
#start .solver-eyebrow { font-size: 12px; letter-spacing: .12em; }
#start .progress { height: 5px; margin: 16px 0 28px; background: #eee9f7; }
#start .progress i { width: 0; background: #8060d1; }
#start [data-stage] h3, #start [data-result] h3 { margin: 0 0 10px; color: #30244d; font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.3; }
#start h3:focus { outline: none; }
#start .solver-hint { margin: 0 0 22px; font-size: 16px; color: #80758f; }
#start .choices { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
#start .choice { display: flex; align-items: center; gap: 14px; width: 100%; padding: 20px 22px; text-align: left; border: 1px solid #e8e2ef; border-radius: 13px; background: #fff; cursor: pointer; transition: background .2s, border-color .2s, transform .2s; }
#start .choice:hover, #start .choice.active { background: #f6f2ff; border-color: #a48adc; transform: translateX(3px); }
#start .choice-number { flex: 0 0 30px; color: #a08cbf; font-size: 14px; font-weight: 600; }
#start .choice-copy { flex: 1; }
#start .choice strong { color: #47335f; font-size: 14px; }
#start .choice-copy > span { display: block; margin-top: 3px; color: #80758f; font-size: 16px; line-height: 1.6; }
#start .choice-arrow { color: #8d70bf; }
#start .solver-nav { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 24px; }
#start .solver-nav > span { margin-left: auto; font-size: 14px; }
#start .solver-back, #start .solver-restart { border: 0; background: none; padding: 8px 0; color: #7453b2; cursor: pointer; font: inherit; font-size: 13px; font-weight: 600; }
#start .solver-restart { margin-left: 20px; }
#start .solver-result { padding: 0; border: 0; background: none; }
#start .start-match { display: flex; align-items: center; gap: 20px; margin: 20px 0; }
#start .start-match img { width: 115px; height: 135px; object-fit: contain; flex-shrink: 0; }
#start .start-match p, #start .start-reason p { margin: 8px 0 0; font-size: 13px; color: #736883; line-height: 1.7; }
#start .start-reason { padding: 18px; background: #f7f4fc; border-radius: 14px; font-size: 13px; color: #503a70; }
#start .start-answer-tags { display: flex; flex-wrap: wrap; gap: 7px; list-style: none; padding: 0; margin: 18px 0 24px; }
#start .start-answer-tags li { padding: 5px 10px; border: 1px solid #e7dff4; border-radius: 99px; color: #7d6b98; font-size: 13px; }
#start [hidden] { display: none !important; }
#start .disclaimer { max-width: 800px; margin: 28px auto 0; font-size: 11px; line-height: 1.7; text-wrap: balance; }
@media (max-width: 980px) {
    #start .start-layout { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 768px) {
    #start .start-result-copy > .eyebrow { text-align: center; }
    #start .start-product-item { flex-direction: column; text-align: center; text-wrap: balance; margin-bottom: 16px; }
    #start .start-result-copy .start-reason { flex-direction: column; align-items: center; text-align: center; text-wrap: balance; gap: 16px; }
    #start .choices { grid-template-columns: 1fr; }
    #start .is-result .solver-top [data-step-label] { display: none; }
}
@media (max-width: 540px) {
    #start .solver-top .small { font-size: 13px; }
    #start .start-steps { display: none; }
    #start .choice strong { font-size: 17px; }
    #start .choice-copy > span { font-size: 15px; }
    #start .solver-nav { flex-wrap: wrap; }
    #start .choice { padding: 14px 12px; gap: 8px; }
    #start .choice-number { flex-basis: 22px; }
    #start .start-match { align-items: flex-start; gap: 14px; }
    #start .start-match img { width: 78px; height: 100px; }
    #start .solver-restart { margin-left: 12px; }
}

/* Program match: product artwork beside the recommendation details. */
#start .is-result [data-step-label] { display: inline-flex; align-items: center; gap: 6px; color: #5b478b; font-size: 17px; }
#start .is-result [data-step-label]::before { width: 24px; height: 24px; background: url('../../images/mbs-home/mbs-home-18.webp') center / contain no-repeat; content: ''; }
#start .is-result .progress { margin: 16px 0 28px; }
#start .is-result .solver-nav { display: none; }
#start .start-result-card { display: grid; grid-template-columns: minmax(0, 1.55fr); gap: 28px; padding: 0; border: 0; background: transparent; }
#start .start-product-panel { display: flex; align-items: center; justify-content: center; min-height: 440px; padding: 36px 24px; border-radius: 20px; background: radial-gradient(ellipse at center, #faf8ff, #eee7fa); }
#start .start-product-panel > img { display: block; width: 100%; max-width: 300px; height: auto; max-height: 440px; object-fit: contain; filter: drop-shadow(0 16px 18px #4d367425); }
#start .start-result-copy { min-width: 0; padding: 8px 0; }
#start .start-result-copy > .eyebrow { display: block; margin-bottom: 18px; color: #8053dc; font-size: 13px; letter-spacing: .09em; }
#start [data-result] .start-result-copy h3 { margin: 0 0 10px; color: #180e30; font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.12; font-weight: 400; letter-spacing: -.025em; }
#start .start-result-description { margin: 0; color: #807397; font-size: 18px; line-height: 1.65; }
#start .start-result-copy .start-reason { display: flex; align-items: center; gap: 18px; padding: 22px; border-radius: 18px; background: #f7f3fe; }
#start .start-reason > img { flex: 0 0 64px; width: 64px; height: 64px; object-fit: contain; margin-top: 3px; }
#start .start-reason strong { color: #6843b3; font-size: 19px; }
#start .start-result-copy .start-reason p { margin-top: 7px; font-size: 16px; line-height: 1.6; color: #807397; }
#start .start-result-copy .start-answer-tags { gap: 10px; margin: 20px 0 26px; }
#start .start-result-copy .start-answer-tags li { display: inline-flex; align-items: center; gap: 10px; padding: 10px 15px; border-color: #e5dafa; background: #fcfaff; color: #66518e; font-size: 14px; }
#start .start-answer-tags img { flex: 0 0 26px; width: 26px; height: 26px; object-fit: contain; }
#start .start-result-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; }
#start .start-result-actions .btn-primary { padding: 17px 34px; border-radius: 99px; background: linear-gradient(115deg, #9267e9, #6740ba); box-shadow: 0 12px 26px #7851bb25; font-size: 18px; }
#start .start-result-actions .solver-restart { margin: 0; color: #8255d3; font-size: 16px; }
#start .start-result-footnote { margin: 18px 0 0; color: #887a9e; font-size: 15px; text-align: center; }

#start .start-product-item { margin-bottom: 12px; display: flex; gap: 16px; align-items: center; }
#start .start-product-item img { width: 180px; height: auto; display: block; }

@media (max-width: 760px) {
    #start .start-result-card { grid-template-columns: minmax(0, 1fr); gap: 4px; }
    #start .start-product-panel { min-height: 0; padding: 28px; }
    #start .start-product-panel > img { max-width: 210px; max-height: 270px; }
    #start .start-result-copy { padding: 24px 0 0; }
    #start .is-result .solver-top { padding: 0; flex-wrap: wrap; }
}
@media (max-width: 440px) {
    #start .start-result-copy .start-reason { padding: 16px; gap: 12px; }
    #start .start-reason > img { flex-basis: 30px; width: 30px; height: 38px; }
    #start .start-result-actions { gap: 12px; }
    #start .start-result-actions .btn-primary { width: 100%; text-align: center; }
    #start .start-result-actions .solver-restart { margin: 0 auto; }
}

/* Keep the result in its original order: program, reason, answers, actions. */
#start [data-result] .start-product-item { margin-bottom: 28px; }
#start [data-result] .start-product-item img { width: 140px; }
#start [data-result] .start-result-actions .solver-restart {
    padding: 0;
    border: 0;
    background: transparent;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}
/* Membership continuity: benefits and dashboard preview. */
.continuity.section { overflow: hidden; background: radial-gradient(ellipse at 78% 48%, #f0e9ff, transparent 62%), #fdfcff; }
.continuity .continuity-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(32px,5vw,76px); padding-top: 12px; padding-bottom: 12px; }
.continuity .membership-copy { min-width: 0; }
.continuity .membership-copy .eyebrow { margin: 0 0 16px; color: #6835c5; font-size: 12px; font-weight: 700; letter-spacing: .13em; }
.continuity .membership-copy h2 { margin: 0 0 24px; color: #180e30; font-family: 'DM Serif Display',Georgia,serif; font-size: clamp(34px,3.7vw,54px); font-weight: 400; line-height: 1.12; letter-spacing: -.025em; }
.continuity .membership-copy h2 span { color: #6536be; }
.continuity p.membership-description { margin: 0 0 24px; color: #665d78; font-size: 17px; line-height: 1.75; }
.continuity .membership-benefits { display: grid; gap: 18px; margin: 0 0 28px; padding: 0; list-style: none; }
.continuity .membership-benefits li { display: flex; align-items: center; gap: 20px; color: #241b36; font-size: 15px; line-height: 1.55; }
.continuity .membership-benefit-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 52px; height: 52px; border-radius: 13px; background: #f0e9fc; color: #6835c5; }
.continuity .membership-benefit-icon svg { width: 32px; height: 32px; }
.continuity .membership-dashboard-link { gap: 18px; padding: 16px 30px; background: linear-gradient(110deg,#6835c5,#5a30ad); color: #fff; font-size: 16px; font-weight: 600; }
.continuity .membership-dashboard-link svg { width: 24px; height: 24px; }
.continuity .membership-dashboard-link:hover { background: #50309b; }
.continuity .membership-preview { position: relative; isolation: isolate; min-width: 0; padding: 24px; border: 1px solid #dcd0f3; border-radius: 26px; background: linear-gradient(135deg,#f7f3ffeb,#f3edfff5); box-shadow: inset 0 1px 0 #fff,0 20px 50px #5834a21a; }
.continuity .membership-preview::before { content: ''; position: absolute; z-index: -1; inset: -38px -40px -38px 28%; border-radius: 52px; background: #eee6fc80; }
.continuity .membership-preview-label { display: flex; align-items: center; gap: 16px; margin: 6px 8px 22px; color: #6835c5; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.continuity .membership-preview-label svg { flex: 0 0 28px; width: 28px; height: 28px; }
.continuity .membership-preview-card { padding: 22px; border-radius: 17px; background: #fff; box-shadow: 0 8px 24px #5834a208; }
.continuity .membership-current-heading { display: flex; align-items: center; gap: 16px; }
.continuity .membership-preview-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 54px; height: 54px; border-radius: 50%; background: #f1eafd; color: #6835c5; }
.continuity .membership-preview-icon svg { width: 32px; height: 32px; }
.continuity .membership-preview h3 { margin: 0; color: #180e30; font-family: 'DM Serif Display',Georgia,serif; font-size: 25px; font-weight: 400; line-height: 1.25; letter-spacing: -.02em; }
.continuity .membership-current-heading p { margin: 0 0 7px; color: #514365; font-size: 10px; font-weight: 500; letter-spacing: .05em; }
.continuity .membership-preview-progress { height: 12px; margin: 22px 0 16px; border-radius: 99px; background: #e9e1f7; overflow: hidden; }
.continuity .membership-preview-progress span { display: block; width: 62%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#9267e5,#8050d6); }
.continuity .membership-preview-card > p { margin: 0; color: #706382; font-size: 14px; line-height: 1.65; }
.continuity .membership-preview-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 14px 0; }
.continuity .membership-preview-pair .membership-preview-card { display: flex; align-items: flex-start; gap: 16px; padding: 22px 18px; }
.continuity .membership-preview-pair h3 { margin-bottom: 8px; color: #6536be; font-size: 22px; }
.continuity .membership-preview-pair p { margin: 0; color: #706382; font-size: 13px; line-height: 1.65; }
.continuity .membership-preview-pair .membership-preview-icon { flex-basis: 44px; height: 44px; }
.continuity .membership-profile { display: flex; align-items: center; gap: 20px; }
@media(max-width:1000px) {
    .continuity .continuity-grid { grid-template-columns: minmax(0,1fr); gap: 48px; }
    .continuity .continuity-grid h2 br { display: none; }
    .continuity .membership-copy { max-width: 680px; }
    .continuity .membership-preview { max-width: 700px; width: 100%; box-sizing: border-box; margin: 0 auto; }
}
@media(max-width:540px) {
    .continuity .membership-copy h2 { font-size: 36px; }
    .continuity p.membership-description { font-size: 15px; }
    .continuity .membership-benefits li { gap: 14px; font-size: 14px; }
    .continuity .membership-dashboard-link { width: 100%; box-sizing: border-box; }
    .continuity .membership-preview { padding: 16px; border-radius: 20px; }
    .continuity .membership-preview-label { gap: 10px; margin: 4px 0 18px; font-size: 10px; }
    .continuity .membership-preview h3 { font-size: 22px; }
    .continuity .membership-preview-pair { grid-template-columns: minmax(0,1fr); }
    .continuity .membership-preview-pair .membership-preview-card { align-items: center; }
}

/* Image-led program value card in the Why Free section. */
.why-free .mission-card {
    overflow: hidden;
    padding: 0;
    border: 5px solid #fff;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(80, 57, 158, .1);
    text-align: center;
}
.why-free .mission-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 600 / 239;
    max-height: 198px;
    object-fit: cover;
}
.why-free .mission-card .mission {
    margin: 0;
    padding: 24px 20px 26px;
    color: #625571;
    font-family: Poppins, "Segoe UI", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
}
.why-free .mission-intro { display: block; font-size: 1.25em; }
.why-free .mission-value { color: #44245f; font-weight: 700; font-size: 1.2em; }
.why-free .mission strong {
    display: block;
    margin-top: 8px;
    color: #44245f;
    font-family: Poppins, "Segoe UI", sans-serif;
    font-size: clamp(2.5rem, 4.2vw, 3.7rem);
    font-weight: 800;
    letter-spacing: -.04em;
    line-height: 1.1;
}
@media (max-width: 680px) {
    .why-free .mission-card { border-radius: 22px; }
    .why-free .mission-card .mission { padding: 20px 16px 24px; }
}

/* Responsive refinements scoped to the home page. */
@media (max-width: 980px) {
    body.home-v7-page #main .product-card { min-width: 0; }
    body.home-v7-page #main .product-copy { min-width: 0; }
    body.home-v7-page #main .why-grid, body.home-v7-page #main .body-grid, body.home-v7-page #main .about-grid { gap: 32px; }
    body.home-v7-page #main .why-grid { margin-bottom: 0; }
    body.home-v7-page #main .about-photo img { display: block; width: 100%; max-width: 420px; height: auto; margin-inline: auto; }
}
@media (max-width: 800px) {
    body.home-v7-page #main .v7-hero { min-height: 0; flex-direction: column; align-items: stretch; padding: 44px 24px 0; }
    body.home-v7-page #main .v7-hero-copy { width: 100%; max-width: 650px; margin-inline: auto; }
    body.home-v7-page #main .v7-hero h1 { font-size: clamp(2.5rem, 7.5vw, 3.6rem); }
    body.home-v7-page #main .v7-hero-art { position: relative; inset: auto; width: 100%; height: auto; margin: 24px 0 0; flex-direction: column; align-items: center; }
    body.home-v7-page #main .v7-hero-art > img { width: 100%; max-width: 600px; height: auto; max-height: 400px; object-fit: contain; object-position: center bottom; }
    body.home-v7-page #main .v7-hero-art .hero-stamp { position: relative; inset: auto; width: 100%; max-width: 360px; margin: 0 auto 28px; text-align: center; }
    body.home-v7-page #main .v7-social { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    body.home-v7-page #main .library-header { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 640px) {
    body.home-v7-page #main > .section, body.home-v7-page #main .tools-section, body.home-v7-page #main .why-free { padding-block: 48px; }
    body.home-v7-page #main .wrap { width: 100%; padding-inline: 20px; }
    body.home-v7-page #main .v7-wrap { width: calc(100% - 40px); }
    body.home-v7-page #main h2, body.home-v7-page #main .continuity .membership-copy h2 { font-size: clamp(1.9rem, 7.5vw, 2.5rem); line-height: 1.18; }
    body.home-v7-page #main .v7-hero { padding: 36px 20px 0; }
    body.home-v7-page #main .v7-hero h1 { margin-bottom: 16px; font-size: clamp(2.5rem, 10.5vw, 3.4rem); line-height: 1.06; }
    body.home-v7-page #main .v7-hero-copy > h2 { font-size: 1.2rem; line-height: 1.45; }
    body.home-v7-page #main .v7-hero-copy > p:not(.v7-kicker) { font-size: 1rem; line-height: 1.7; }
    body.home-v7-page #main .v7-hero-actions { flex-direction: column; align-items: stretch; gap: 12px; margin-top: 22px; }
    body.home-v7-page #main .v7-hero-actions .v7-button { width: 100%; min-height: 48px; height: auto; padding: 12px 16px; text-align: center; white-space: normal; line-height: 1.5; }
    body.home-v7-page #main .v7-hero-actions .v7-button-plain { font-size: .88rem; }
    body.home-v7-page #main .v7-hero-actions .mbs-arrow-right { flex-shrink: 0; }
    body.home-v7-page #main .proof-row { gap: 8px; }
    body.home-v7-page #main .proof-chip { padding: 7px 10px; font-size: .75rem; }
    body.home-v7-page #main .trust-strip .trust-grid { padding: 8px 20px; }
    body.home-v7-page #main .trust-strip .trust-item { padding: 14px 0; }
    body.home-v7-page #main .section-head { margin-bottom: 24px; }
    body.home-v7-page #main .section-head p, body.home-v7-page #main .tools-intro p, body.home-v7-page #main .body-grid p,
    body.home-v7-page #main .why-grid > div > p:not(.eyebrow):not(.mission), body.home-v7-page #main .about p,
    body.home-v7-page #main .continuity p.membership-description { font-size: 1rem; line-height: 1.75; }

    /* Flex cards need a column layout as well as a single-column grid. */
    body.home-v7-page #main .product-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    body.home-v7-page #main .product-card, body.home-v7-page #main .product-card:nth-child(n) { grid-column: auto; flex-direction: column; min-height: 0; border-radius: 20px; }
    body.home-v7-page #main .product-media, body.home-v7-page #main .cookbook-card .product-media { width: 100%; max-width: none; min-height: 0; height: 200px; padding: 24px; }
    body.home-v7-page #main .product-media img, body.home-v7-page #main .cookbook-card .product-media img { width: auto; max-width: 100%; height: 100%; max-height: 160px; transform: none; }
    body.home-v7-page #main .product-copy { padding: 22px; }
    body.home-v7-page #main .product-copy h3 { font-size: 1.5rem; }
    body.home-v7-page #main .product-copy p { font-size: 1rem; line-height: 1.7; }
    body.home-v7-page #main .product-copy .btn { min-height: 46px; padding: 12px 20px; font-size: .94rem; }

    body.home-v7-page #main #start .start-layout { gap: 24px; }
    body.home-v7-page #main #start .flow-line { flex-direction: column; gap: 8px; margin-block: 20px; }
    body.home-v7-page #main #start .flow-line > span { display: inline-flex; transform: rotate(90deg); }
    body.home-v7-page #main #start .solver { min-width: 0; padding: 20px 16px; border-radius: 20px; }
    body.home-v7-page #main #start .solver-top { flex-wrap: wrap; gap: 8px; }
    body.home-v7-page #main #start .choices { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    body.home-v7-page #main #start .choice { min-width: 0; padding: 16px 12px; gap: 10px; }
    body.home-v7-page #main #start .choice-copy { flex: 1; min-width: 0; }
    body.home-v7-page #main #start .choice strong, body.home-v7-page #main #start .choice-copy > span { font-size: 1rem; }
    body.home-v7-page #main #start .choice-arrow { flex-shrink: 0; }
    body.home-v7-page #main #start .solver-hint { font-size: 1rem; }
    body.home-v7-page #main #start .start-result-actions { flex-direction: column; align-items: stretch; gap: 12px; }
    body.home-v7-page #main #start .start-result-actions .btn { width: 100%; min-height: 48px; padding: 12px 16px; font-size: 1rem; text-align: center; white-space: normal; }
    body.home-v7-page #main #start .start-result-actions .solver-restart { margin: 0; min-height: 44px; }
    body.home-v7-page #main #start .disclaimer { font-size: .75rem; text-wrap: pretty; }

    body.home-v7-page #main .continuity .membership-benefits li { font-size: .94rem; }
    body.home-v7-page #main .continuity .membership-preview { min-width: 0; }
    body.home-v7-page #main .continuity .membership-preview-card { min-width: 0; padding: 18px; }
    body.home-v7-page #main .continuity .membership-current-heading > div { min-width: 0; }
    body.home-v7-page #main .continuity .membership-profile { gap: 12px; }
    body.home-v7-page #main .why-free .mission-intro { font-size: 1rem; }
    body.home-v7-page #main .why-free .mission-image { max-height: none; }
    body.home-v7-page #main .library-tabs { max-width: 100%; padding: 4px 2px 12px; scroll-padding-inline: 2px; }
    body.home-v7-page #main .library-tab { flex: 0 0 auto; min-height: 44px; font-size: .88rem; }
    body.home-v7-page #main .library-header > div, body.home-v7-page #main .products-shell { min-width: 0; }
    body.home-v7-page #main .v7-testimonials { padding-block: 48px; }
    body.home-v7-page #main .v7-testimonial-card { min-height: 0; padding: 24px 20px; }
    body.home-v7-page #main .v7-testimonial-card blockquote { font-size: .94rem; }
    body.home-v7-page #main .v7-social { padding-block: 48px; }
    body.home-v7-page #main .v7-social-copy > p:not(.v7-kicker):not(.v7-social-label) { font-size: 1rem; }
    body.home-v7-page #main .v7-social-links { flex-wrap: wrap; gap: 10px; }
    body.home-v7-page #main .v7-subscribe-card { min-width: 0; padding: 24px 20px; border-radius: 20px; }
    body.home-v7-page #main .v7-subscribe-form input { min-width: 0; width: 100%; font-size: 16px; }
    body.home-v7-page #main .v7-subscribe-form .btn_1 { min-height: 48px; }
}
@media (max-width: 360px) {
    body.home-v7-page #main .wrap { padding-inline: 16px; }
    body.home-v7-page #main .v7-wrap { width: calc(100% - 32px); }
    body.home-v7-page #main .v7-hero { padding-inline: 16px; }
    body.home-v7-page #main .product-copy { padding: 18px; }
    body.home-v7-page #main .continuity .membership-preview { padding: 12px; }
    body.home-v7-page #main .continuity .membership-preview-pair .membership-preview-card { gap: 10px; padding: 16px 12px; }
}
