.chakra-page {
    --chakra-ivory: #F7F1E8;
    font-family: "Montserrat", sans-serif;
    color: var(--color-text);
    overflow-wrap: anywhere;
}
.chakra-page p { margin: 0 0 18px; }
.chakra-page p:last-child { margin-bottom: 0; }
.chakra-page h2 { color: var(--color-purple); font: 600 clamp(22px, 2.4vw, 30px)/1.35 "Montserrat", sans-serif; margin-bottom: 20px; }
.chakra-page :focus-visible { outline: 3px solid var(--color-purple); outline-offset: 5px; }
.chakra-hero { background: var(--color-bg); }
.chakra-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: center; padding-block: 36px 18px; }
.chakra-hero__copy { padding-block: 16px; }
.chakra-hero__copy .banner-button { gap: 6px; }
.chakra-hero__title { width: fit-content; max-width: 100%; color: var(--color-purple); font-family: "Minimalist Aesthetic", "Montserrat", sans-serif; font-size: clamp(36px, 4vw, 58px); margin-bottom: 22px; }

.chakra-hero__subtitle { color: var(--color-purple); font-size: 19px; font-weight: 500; line-height: 1.6; }
.chakra-hero__visual { min-width: 0; position: relative; }
.chakra-hero__visual img { width: 100%; height: auto; max-height: 560px; object-fit: contain; }
.chakra-hero__visual > img { transition: opacity .8s ease; }
.chakra-hero__visual .chakra-hero__alternate { position: absolute; inset: 0; height: 100%; opacity: 0; object-position: center; background-color: var(--hero-mid); }
.chakra-hero__visual.is-alternate > img:first-child { opacity: 0; }
.chakra-hero__visual.is-alternate .chakra-hero__alternate { opacity: 1; }
.chakra-hero__image-controls { position: absolute; right: 8px; bottom: 8px; display: flex; gap: 6px; }
.chakra-hero__image-controls[hidden], .chakra-hero__image-controls button[hidden] { display: none; }
.chakra-hero__image-controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--color-purple); border-radius: 50%; background: var(--color-purple); color: var(--color-bg); cursor: pointer; }
.chakra-hero__image-controls button:hover { box-shadow: 0 0 0 2px var(--color-bg); }
.chakra-hero__image-controls .chakra-play-icon,
.chakra-hero__image-controls .is-paused .chakra-pause-icon { display: none; }
.chakra-hero__image-controls .is-paused .chakra-play-icon { display: block; }
@media (prefers-reduced-motion: reduce) {
    .chakra-hero__visual > img { transition: none; }
}
/* Home button colors, borders and interaction; retain this page's approved sizing. */
.chakra-page .chakra-button { min-height: 44px; font: 600 15px/1.5 "Montserrat", sans-serif; padding: 12px 24px; text-align: center; }
.chakra-hero__copy .chakra-button { margin-top: 8px; }
.chakra-section { padding-block: clamp(36px, 5vw, 64px); }
.chakra-hero + .chakra-section { padding-top: clamp(18px, 2.5vw, 32px); }
.chakra-split { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.35fr); gap: clamp(28px, 5vw, 76px); align-items: start; }
.chakra-definitions { background: linear-gradient(90deg, var(--hero-light) 50%, var(--color-primary) 50%); }
.chakra-definitions__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.chakra-definition { padding: clamp(28px, 4vw, 48px); background: var(--hero-light); }
.chakra-definition--aura { background: var(--color-primary); }
.icon-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; list-style: none; padding: 0; margin: 0; font-family: "Montserrat", sans-serif; color: var(--color-text); text-align: left; }
.icon-list--loto { --list-icon-width: 17px; }
.icon-list--luz { --list-icon-width: 13px; }
.icon-list > li { display: grid; grid-template-columns: var(--list-icon-width) minmax(0, 1fr); column-gap: 10px; align-items: start; }
.icon-list__icon { display: block; width: var(--list-icon-width); height: auto; margin-top: .4em; }
.icon-list > li > span { min-width: 0; }
.chakra-audience.icon-list--loto { gap: 0; }
/* Replace the former 1px separator with spacing to preserve each row's height. */
.chakra-audience li { padding: 9px 0 10px; }
.chakra-benefits { background: var(--hero-light); padding-block: clamp(36px, 5vw, 38px); }
.chakra-benefits__inner { display: grid; grid-template-columns: minmax(0, 58%) minmax(0, 1fr); gap: clamp(24px, 4vw, 48px); align-items: center; }
.chakra-benefits__content { min-width: 0; text-align: left; }
.chakra-benefits__image { display: block; width: 100%; max-width: 420px; height: auto; object-fit: contain; justify-self: center; }
.chakra-session { background: var(--color-primary); padding-block: 32px; }
.chakra-session__inner { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2fr); gap: 32px; align-items: center; }
.chakra-session h2 { margin: 0; }
.chakra-page .chakra-session { color: var(--color-purple); }
.chakra-page .chakra-session :is(h2, p, ul, ol, li, dl, dt, dd) {
    color: var(--color-purple);
    -webkit-text-fill-color: currentColor;
    background-image: none;
}
.chakra-session dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; }
.chakra-session dt { font-weight: 600; font-size: 14px; }
.chakra-session dd { margin: 8px 0 0; font-size: 18px; }
.chakra-faq { max-width: 940px; }
.chakra-faq > h2 { text-align: center; margin-bottom: 28px; }
.chakra-faq details { border-bottom: 1px solid var(--hero-mid); }
.chakra-faq summary { padding: 18px 8px; cursor: pointer; font-weight: 600; color: var(--color-purple); }
.chakra-faq details > div { padding: 0 8px 20px; }
@media (max-width: 900px) {
    .chakra-benefits__inner { grid-template-columns: minmax(0, 1fr); }
    .chakra-hero__inner { gap: 28px; }
    .chakra-session__inner { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 700px) {
    .chakra-hero__inner, .chakra-split, .chakra-definitions__inner { grid-template-columns: minmax(0, 1fr); }
    .chakra-hero__inner { padding-block: 24px 12px; }
    .chakra-hero__copy { padding: 0; }
    .chakra-hero__visual { width: 100%; max-width: 520px; margin-inline: auto; }
    .chakra-definitions { background: var(--hero-light); }
}
@media (max-width: 480px) {
    .chakra-session dl { grid-template-columns: minmax(0, 1fr); }
    .chakra-definition { padding: 28px 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .chakra-page .chakra-button { transition: none; }
}
@media (forced-colors: active) {
    .chakra-hero__title { background: none; -webkit-text-fill-color: currentColor; }
    .chakra-page .chakra-button { border-color: ButtonText; }
}

.chakra-page > .chakra-panel { background-color: var(--chakra-ivory); }
.chakra-page > :is(.chakra-section, .chakra-definitions, .chakra-session) { margin-top: 19px; }
