@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@400;500;600;700&display=swap');

/* Editorial direction: the original Fala CoMIgo forest, linen and blush palette. */
:root {
  --forest:#123f34;
  --forest-dark:#0c3028;
  --sage:#c8d9ca;
  --cream:#f8f4ec;
  --paper:#fffaf4;
  --rose:#e4a7ae;
  --blush:#efd5d4;
  --ink:#193f35;
  --muted:#557168;
  --border:#d8ddd3;
  --shadow:0 20px 55px rgba(16,53,43,.10);
}

body {background:#fbf8fa;color:var(--ink)}
::selection {background:#cbb5d5;color:#352b3d}
.site-header {background:rgba(251,248,250,.96);border-bottom:1px solid #e3dae7}
.header-inner {min-height:88px}
.logo {color:#65476d;font-family:'DM Serif Display',Georgia,serif;font-size:30px;letter-spacing:-.065em}
.logo em {color:#b87891}
.logo small {letter-spacing:.25em;color:#8d6b86;font-size:8px}
.desktop-nav a {color:#594762}
.desktop-nav a:hover,.desktop-nav .current {color:#a775a1}
.header-contact,.button-dark {background:#634770;color:#fff}
.header-contact:hover,.button-dark:hover {background:#765581}
.language {color:#634770;border-color:#d2c3d6}
.menu-toggle span {background:#60456c}
.announcement {background:#5f476d;color:#fff8fb;font-size:9px}
.announce-icon {color:#e6b8d0}
.site-footer {background:#f3ebf4;color:#5b4863}
.site-footer a,.site-footer p {color:#705b75}
.site-footer .logo {color:#60476c}
.contact-float a {box-shadow:0 8px 25px rgba(66,40,73,.19)}
.contact-float a:last-child {background:#60476c;color:white}
.contact-float a:first-child {background:#c391ac}
.interior-hero {background:#f0e8f3}
.interior-hero h1,.section h2,.section h3,.step-card h3,.plan-card h3,
.contact-method h2,.faq-list summary,.cta-section h2 {font-family:'DM Serif Display',Georgia,serif;color:#60476e;letter-spacing:-.045em}
.interior-hero h1 em,.section h2 em,.cta-section h2 em {color:#ad7997}
.interior-hero .lead {color:#73617b}
.section p,.single-note p,.contact-footnote p {color:#705e76}
.pale,.section.pale {background:#f4eef6}
.plan-card {border-color:#dacdde;background:#fffdfc;box-shadow:0 15px 30px #6f4f7d0c}
.plan-card .plan-price strong {color:#5e476b}
.editorial-link {color:#60476e;border-color:#bc9fbe}
.contact-method {background:#f2eaf4}
.mail-method {background:#eddee9}
.contact-symbol {background:#634770}
.mail-method .contact-symbol {background:#9d7194}
.faq-list details {border-color:#d7c8db}
.faq-list details p {color:#715f7b}
.cta-section {background:#60476c}
.button-line {border-color:#b7a2be;color:#614a6e}

/* The actual homepage is one seamless editorial narrative. */
.ed-section {position:relative}
.ed-overline,.ed-kicker,.ed-cover-top,.ed-cover-bottom,.ed-no,.ed-wave-caption {
  font:700 11px/1.6 'DM Sans',sans-serif;
  text-transform:uppercase;
  letter-spacing:.18em;
}
.ed-cover {min-height:780px;position:relative;isolation:isolate;overflow:hidden;color:#553d61}
.ed-cover-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.ed-cover-wash {position:absolute;inset:0;background:linear-gradient(90deg,rgba(236,221,238,.94) 0%,rgba(235,217,238,.85) 43%,rgba(233,211,231,.38) 100%);z-index:-1}
.ed-cover-inner {min-height:780px;display:flex;flex-direction:column}
.ed-cover-top {display:flex;justify-content:space-between;gap:20px;padding:28px 0;border-bottom:1px solid #6f4e7442}
.ed-cover-main {padding:70px 0 85px;max-width:790px;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.ed-kicker {font-size:11px;color:#72567e;margin-bottom:32px}
.ed-cover h1 {font:400 clamp(78px,8vw,132px)/.87 'DM Serif Display',Georgia,serif;letter-spacing:-.072em;margin:0 0 38px;color:#5b3f6a}
.ed-cover h1 i {font-style:italic;color:#a06a8e}
.ed-cover-main p {font:500 17px/1.8 'DM Sans',sans-serif;max-width:575px;margin:0 0 31px;color:#604b69}
.ed-cover-actions,.ed-contact-actions {display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ed-pill {display:inline-flex;align-items:center;justify-content:center;gap:30px;border-radius:100px;padding:15px 29px;text-decoration:none;font:700 13px 'DM Sans',sans-serif;transition:transform .25s,background .25s,box-shadow .25s}
.ed-pill:hover {transform:translateY(-3px);box-shadow:0 10px 25px #5a426b2c}
.ed-pill-filled {background:#61476e;color:white}
.ed-pill-light {background:#fffafc;color:#60476e}
.ed-text-link,.ed-underlink {display:inline-flex;align-items:center;gap:17px;color:#664a71;text-decoration:none;padding-bottom:6px;border-bottom:1px solid #80648b;font:700 13px 'DM Sans',sans-serif}
.ed-text-link:hover,.ed-underlink:hover {gap:24px}
.ed-cover-bottom {display:flex;justify-content:space-between;padding:24px 0;gap:15px;border-top:1px solid #6e557b45}
.ed-marquee {overflow:hidden;background:#6b5178;color:#faf3fa;white-space:nowrap;border-block:1px solid #6b5178}
.ed-marquee-track {width:max-content;padding:20px 0;font:700 12px/1 'DM Sans',sans-serif;letter-spacing:.25em;animation:ed-marquee-scroll 18s linear infinite}
@keyframes ed-marquee-scroll {to{transform:translateX(-50%)}}
.ed-intro {background:#faf7fb;padding:150px 0 95px}
.ed-intro-grid {display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:end}
.ed-intro h2,.ed-section-heading h2,.ed-pricing-head h2,.ed-faq h2,.ed-contact h2,.ed-about h2,.ed-about-copy h2 {
  font:400 clamp(55px,6vw,98px)/1.01 'DM Serif Display',Georgia,serif;
  letter-spacing:-.055em;color:#634973;margin:27px 0 0;
}
.ed-intro h2 em,.ed-section-heading h2 em,.ed-pricing-head h2 em,.ed-faq h2 em,.ed-contact h2 em,.ed-about-copy h2 em {
  font-style:italic;color:#a6769d;
}
.ed-intro-copy {padding-bottom:12px}
.ed-mini-rule {display:block;width:48px;height:2px;background:#b68ba9;margin-bottom:30px}
.ed-intro-copy p {font-size:20px;line-height:1.75;color:#74617f;margin-bottom:34px}
.ed-rotating-line {display:flex;align-items:center;gap:20px;flex-wrap:nowrap;margin-top:100px;padding:38px 0 0;border-top:1px solid #ddcfe1;font:400 clamp(47px,6.2vw,96px)/1.1 'DM Serif Display',serif;color:#624971;letter-spacing:-.05em}
.ed-word-window {height:1.14em;min-width:6.3em;display:block;overflow:hidden;color:#b37e9d}
.ed-word-track {display:flex;flex-direction:column;will-change:transform;transition:transform .58s cubic-bezier(.22,.8,.28,1)}
.ed-word-track>span {height:1.14em;display:block;white-space:nowrap;font-style:italic}
.ed-dot {font:400 38px 'DM Sans',sans-serif;color:#a777a3;margin-left:auto}
.ed-about-band {background:#eee6f0;padding:100px 0}
.ed-about-grid {display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:10%}
.ed-about-portrait {height:580px;max-width:475px;position:relative;padding:15px;background:#fbf8fb;box-shadow:0 22px 55px #624d6c22;transform:rotate(-2deg)}
.ed-about-portrait img {width:100%;height:100%;object-fit:cover;object-position:50% 60%;filter:saturate(.87)}
.ed-about-portrait span {position:absolute;right:-25px;bottom:34px;transform:rotate(6deg);background:#cdb1ce;color:#5b4267;padding:13px 20px;font:700 12px 'DM Sans',sans-serif;letter-spacing:.12em}
.ed-about-copy h2 {font-size:clamp(58px,5vw,85px);margin-bottom:35px}
.ed-about-copy p {font:400 18px/1.9 'DM Sans',sans-serif;color:#715c7b;max-width:560px;margin:0 0 36px}
.ed-sessions {background:#fcf9fc;padding:135px 0 120px}
.ed-section-heading {max-width:870px}
.ed-section-heading h2 {margin-bottom:30px}
.ed-section-heading p {font-size:18px;color:#806d86}
.ed-session-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin:75px 0 105px}
.ed-session-grid article {border-top:1px solid #cdbad4;padding-top:24px}
.ed-no {color:#a77aa3}
.ed-session-grid h3 {font:400 clamp(30px,2.5vw,45px)/1.1 'DM Serif Display',serif;color:#604770;letter-spacing:-.04em;margin:42px 0 22px}
.ed-session-grid p {font-size:15px;line-height:1.8;color:#74617e}
.ed-session-photo {min-height:510px;background:#ded2e4;position:relative;overflow:hidden}
.ed-session-photo>img {position:absolute;right:0;top:0;width:49%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.8)}
.ed-session-photo>div {position:relative;width:51%;padding:68px 7%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:510px}
.ed-session-photo small {font-size:10px;letter-spacing:.2em;font-weight:700;color:#745882}
.ed-session-photo strong {font:400 clamp(50px,4vw,75px)/1.02 'DM Serif Display',serif;letter-spacing:-.055em;color:#5b406b;margin:45px 0}
.ed-session-photo .ed-pill {background:#634770;color:#fff}
.ed-pricing {background:#f1e9f4;padding:140px 0 125px}
.ed-pricing-head {display:grid;grid-template-columns:1.5fr .5fr;gap:50px;align-items:end;margin-bottom:65px}
.ed-pricing-head h2 {margin-top:30px;font-size:clamp(53px,5.3vw,88px)}
.ed-pricing-head p {font-size:17px;line-height:1.75;color:#796782;max-width:270px;margin:0 0 12px}
.ed-pricing-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.ed-price-card {background:#fffdfd;border:1px solid #e1d6e5;min-height:575px;padding:35px 33px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .3s ease,box-shadow .3s ease}
.ed-price-card:hover {transform:translateY(-6px);box-shadow:0 22px 50px #654d7620}
.ed-price-top {width:100%;display:flex;justify-content:space-between;font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em;color:#8e7997}
.ed-price-top span:last-child {font-size:20px;font-weight:400}
.ed-price-card h3 {font:400 clamp(40px,3.2vw,59px)/1.05 'DM Serif Display',serif;color:#604771;letter-spacing:-.04em;margin:38px 0 18px;min-height:125px}
.ed-price-card p {color:#83718a;font:400 14px/1.8 'DM Sans',sans-serif;min-height:55px}
.ed-price-amount {display:flex;align-items:baseline;gap:7px;color:#5b4368;margin:26px 0 8px}
.ed-price-amount small {font:600 20px 'DM Sans',sans-serif;align-self:flex-start;margin-top:15px}
.ed-price-amount strong {font:400 clamp(57px,4.2vw,82px)/1 'DM Serif Display',serif;letter-spacing:-.065em}
.ed-price-amount>span {font:500 13px 'DM Sans',sans-serif;color:#8d7995}
.ed-price-detail {font:600 12px 'DM Sans',sans-serif;color:#82708d;margin-bottom:38px}
.ed-price-link {margin-top:auto;width:100%;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d9cbdf;padding-top:20px;text-decoration:none;color:#624875;font-size:13px;font-weight:700}
.ed-price-link:hover {color:#a76d98}
.ed-pricing-foot {display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:32px}
.ed-pricing-foot p {font:400 12px/1.7 'DM Sans',sans-serif;color:#82708b;max-width:720px}
.ed-pricing-foot .ed-underlink {white-space:nowrap}
.ed-wave {background:#ceb5d9;color:#654578;height:390px;overflow:hidden;position:relative;display:flex;align-items:center}
.ed-wave-caption {position:absolute;top:27px;left:max(35px,calc((100% - 1280px)/2));z-index:2;color:#745582}
.ed-wave svg {width:110%;min-width:1080px;position:relative;left:-5%;overflow:visible;animation:ed-wave-float 5.5s ease-in-out infinite alternate}
.ed-wave-text {font:400 105px 'DM Serif Display',serif;letter-spacing:-.055em;fill:#684c79}
@keyframes ed-wave-float {from{transform:translateX(-8%) translateY(8px)}to{transform:translateX(8%) translateY(-8px)}}
.ed-faq {background:#faf7fa;padding:135px 0}
.ed-faq-layout {display:grid;grid-template-columns:.9fr 1.1fr;gap:12%}
.ed-faq h2 {font-size:clamp(53px,4.8vw,79px);margin-bottom:28px}
.ed-faq-layout>div:first-child>p {color:#806c88;font-size:17px}
.ed-faq-questions details {border-bottom:1px solid #d7cadc;padding:25px 0}
.ed-faq-questions summary {display:flex;align-items:center;gap:18px;list-style:none;cursor:pointer;font:400 clamp(22px,2vw,30px)/1.2 'DM Serif Display',serif;color:#604770}
.ed-faq-questions summary::-webkit-details-marker {display:none}
.ed-faq-questions summary span {font:700 10px 'DM Sans',sans-serif;color:#b28aaa;min-width:25px}
.ed-faq-questions summary b {margin-left:auto;font:400 26px 'DM Sans',sans-serif;transition:transform .2s ease}
.ed-faq-questions details[open] summary b {transform:rotate(45deg)}
.ed-faq-questions details p {font:400 15px/1.85 'DM Sans',sans-serif;padding:22px 40px 5px;color:#806b8a}
.ed-contact {background:#634771;color:#fff8fc;text-align:center;padding:125px 0 135px}
.ed-contact .ed-overline {color:#e5c0d9}
.ed-contact h2 {color:#fff8fc;margin:30px 0 32px}
.ed-contact h2 em {color:#dcb3d3}
.ed-contact p {font-size:17px;color:#f2e7f3;margin:0 0 38px}
.ed-contact-actions {justify-content:center}
.ed-contact-mail {color:#fff8fc;text-decoration:none;border-bottom:1px solid #baa4c3;padding-bottom:5px;font-size:13px;font-weight:700}

/* This is a functional WhatsApp invitation, never a fake email collection form. */
.ed-popup {position:fixed;right:28px;bottom:103px;z-index:120;width:min(365px,calc(100vw - 40px));padding:31px;background:#fffaff;border:1px solid #e3d4e6;box-shadow:0 22px 70px #46304b45;color:#59446a;opacity:0;visibility:hidden;transform:translateY(24px) scale(.97);transition:opacity .45s ease,transform .45s ease,visibility .45s ease}
.ed-popup.visible {opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.ed-popup-close {border:0;background:transparent;position:absolute;right:16px;top:9px;font:400 29px 'DM Sans',sans-serif;color:#765981}
.ed-popup-kicker {font:700 10px 'DM Sans',sans-serif;letter-spacing:.19em;color:#ad7ea0}
.ed-popup h2 {font:400 42px/1.1 'DM Serif Display',serif;color:#604770;letter-spacing:-.045em;margin:18px 0}
.ed-popup p {color:#7c6985;font:400 14px/1.7 'DM Sans',sans-serif;margin:0 0 24px}
.ed-popup-action {display:flex;align-items:center;justify-content:space-between;background:#624773;color:#fff;padding:14px 20px;border-radius:100px;text-decoration:none;font-weight:700;font-size:12px}

@media(max-width:1100px){
  .ed-cover h1 {font-size:clamp(76px,9vw,115px)}
  .ed-pricing-head {grid-template-columns:1fr}
  .ed-pricing-head p {max-width:650px}
  .ed-price-card {padding:29px 23px}
  .ed-price-card h3 {min-height:145px}
  .ed-about-grid {gap:7%}
}
@media(max-width:900px){
  .ed-cover,.ed-cover-inner {min-height:680px}
  .ed-cover-main {padding:72px 0}
  .ed-intro-grid,.ed-about-grid,.ed-faq-layout {grid-template-columns:1fr;gap:55px}
  .ed-about-portrait {max-width:520px}
  .ed-session-grid {gap:20px}
  .ed-pricing-grid {grid-template-columns:1fr;max-width:670px;margin:auto}
  .ed-price-card {min-height:0}
  .ed-price-card h3 {min-height:0}
  .ed-price-card p {min-height:0}
  .ed-pricing-foot {flex-direction:column;align-items:flex-start}
  .ed-session-photo>div {padding:45px 5%}
}
@media(max-width:600px){
  .site-header .logo {font-size:26px}
  .ed-cover,.ed-cover-inner {min-height:665px}
  .ed-cover-photo {object-position:57% center}
  .ed-cover-wash {background:linear-gradient(90deg,rgba(236,221,238,.95),rgba(236,221,238,.79))}
  .ed-cover-top {padding:18px 0;font-size:8px}
  .ed-cover-main {padding:66px 0 50px}
  .ed-cover h1 {font-size:clamp(62px,13vw,84px)}
  .ed-cover-main p {font-size:14px}
  .ed-kicker {font-size:9px;letter-spacing:.13em}
  .ed-cover-bottom {font-size:8px}
  .ed-cover-bottom span:last-child {display:none}
  .ed-cover-actions {gap:18px}
  .ed-pill {padding:13px 21px;font-size:12px}
  .ed-intro {padding:90px 0 65px}
  .ed-intro h2,.ed-section-heading h2,.ed-pricing-head h2,.ed-about-copy h2,.ed-faq h2 {font-size:clamp(48px,11vw,68px)}
  .ed-intro-copy p,.ed-about-copy p {font-size:16px}
  .ed-rotating-line {margin-top:70px;gap:10px;font-size:clamp(35px,8vw,50px)}
  .ed-word-window {min-width:6.2em}
  .ed-dot {display:none}
  .ed-about-band {padding:75px 0}
  .ed-about-portrait {height:420px;max-width:calc(100% - 20px)}
  .ed-about-portrait span {right:-10px;bottom:26px}
  .ed-sessions {padding:88px 0}
  .ed-session-grid {grid-template-columns:1fr;gap:28px;margin:50px 0 70px}
  .ed-session-grid h3 {margin:24px 0 12px}
  .ed-session-photo {display:flex;flex-direction:column-reverse}
  .ed-session-photo>img {position:relative;width:100%;height:330px;object-position:center 22%}
  .ed-session-photo>div {width:100%;min-height:350px;padding:35px 28px}
  .ed-session-photo strong {font-size:54px;margin:25px 0}
  .ed-pricing {padding:90px 0}
  .ed-pricing-grid {gap:12px}
  .ed-price-card {padding:32px 29px}
  .ed-price-card h3 {font-size:47px;margin:28px 0 14px}
  .ed-price-amount strong {font-size:71px}
  .ed-pricing-foot {padding-top:23px}
  .ed-wave {height:270px}
  .ed-wave svg {width:1100px;min-width:1100px;left:-270px}
  .ed-wave-text {font-size:96px}
  .ed-faq {padding:90px 0}
  .ed-faq-questions summary {font-size:23px}
  .ed-faq-questions details p {padding:17px 0 3px 42px}
  .ed-contact {padding:90px 0 100px}
  .ed-contact h2 {font-size:clamp(53px,11vw,72px)}
  .ed-popup {right:20px;bottom:83px;padding:24px}
  .ed-popup h2 {font-size:35px}
}
@media(prefers-reduced-motion:reduce){
  .ed-marquee-track,.ed-wave svg {animation:none!important}
  .ed-popup,.ed-price-card,.ed-pill {transition:none!important}
}

/* Brand restoration — editorial layout, original cream / forest / rose identity. */
body {background:#f8f4ec;color:#193f35}
::selection {background:#e4a7ae;color:#123f34}
.site-header {background:rgba(248,244,236,.97);border-color:#d4d9ce}
.logo,.site-footer .logo {color:#123f34}
.logo em {color:#b87881}
.logo small {color:#5e7c6e}
.desktop-nav a {color:#214d40}
.desktop-nav a:hover,.desktop-nav .current {color:#b46f7d}
.header-contact,.button-dark {background:#123f34;color:#fffaf4}
.header-contact:hover,.button-dark:hover {background:#245a49}
.language {color:#123f34;border-color:#b9cbbc}
.menu-toggle span {background:#123f34}
.announcement {background:#123f34;color:#fffaf4}
.announce-icon {color:#e4a7ae}
.announcement .announce-icon {display:none}
.site-footer {background:#e8eee5;color:#193f35}
.site-footer a,.site-footer p {color:#375d4c}
.contact-float a {box-shadow:0 8px 25px #123f342c}
.contact-float a:last-child {background:#123f34;color:#fff}
.contact-float a:first-child {background:#e4a7ae;color:#123f34}
.interior-hero {background:#e9eee5}
.interior-hero h1,.section h2,.section h3,.step-card h3,.plan-card h3,.contact-method h2,.faq-list summary,.cta-section h2 {color:#123f34}
.interior-hero h1 em,.section h2 em,.cta-section h2 em {color:#b67881}
.interior-hero .lead,.section p,.single-note p,.contact-footnote p {color:#4a695d}
.pale,.section.pale {background:#f0e9e0}
.plan-card {border-color:#d4d9ce;background:#fffaf4;box-shadow:0 15px 30px #123f340c}
.plan-card .plan-price strong,.editorial-link {color:#123f34}
.editorial-link {border-color:#94ac9c}
.contact-method {background:#e5ede3}
.mail-method {background:#f4e1df}
.contact-symbol {background:#123f34}
.mail-method .contact-symbol {background:#b4757d}
.faq-list details {border-color:#c9d2c6}
.faq-list details p {color:#4e6d60}
.cta-section {background:#123f34}
.button-line {border-color:#9ab09b;color:#123f34}

/* A typographic cover in place of generic stock photography. */
.ed-cover {color:#123f34;background:#f8f4ec;min-height:810px}
.ed-cover-inner {min-height:810px;position:relative;z-index:2}
.ed-cover-wash {background:linear-gradient(130deg,#f8f4ec 5%,#f7f2ea 52%,#f0e7df 100%)}
.ed-cover-edition {position:absolute;right:max(-40px,calc((100vw - 1450px)/2));top:10%;display:flex;align-items:center;gap:0;opacity:.11;color:#4c7761;font:400 clamp(260px,32vw,580px)/1 'DM Serif Display',serif;letter-spacing:-.2em;pointer-events:none;z-index:0;transform:rotate(-8deg)}
.ed-cover-top,.ed-cover-bottom {border-color:#a8b5a72c}
.ed-cover-main {max-width:920px}
.ed-kicker {color:#47715d}
.ed-cover h1 {color:#123f34;font-size:clamp(77px,8.4vw,139px);max-width:900px}
.ed-cover h1 i {color:#b57982}
.ed-cover-main p {color:#355a4b;max-width:560px}
.ed-pill:hover {box-shadow:0 10px 25px #123f3426}
.ed-pill-filled {background:#123f34;color:#fffaf4}
.ed-pill-light {background:#fffaf4;color:#123f34}
.ed-text-link,.ed-underlink {color:#123f34;border-color:#688974}
.ed-marquee {background:#123f34;color:#fffaf4;border-color:#123f34}
.ed-intro {background:#fffaf4}
.ed-intro h2,.ed-section-heading h2,.ed-pricing-head h2,.ed-faq h2,.ed-contact h2,.ed-about-copy h2 {color:#123f34}
.ed-intro h2 em,.ed-section-heading h2 em,.ed-pricing-head h2 em,.ed-faq h2 em,.ed-about-copy h2 em {color:#b5767d}
.ed-mini-rule {background:#b5767d}
.ed-intro-copy p,.ed-section-heading p,.ed-about-copy p,.ed-session-grid p,.ed-faq-layout>div:first-child>p {color:#4e6c5d}
.ed-rotating-line {border-color:#cbd7cb;color:#123f34}
.ed-word-window {color:#b5757d}
.ed-dot {color:#b5757d}
.ed-about-band {background:#e8eee5}
.ed-about-portrait {background:#fffaf4;box-shadow:0 22px 55px #123f3421}
.ed-about-portrait span {background:#efd5d4;color:#123f34}
.ed-sessions {background:#f8f4ec}
.ed-session-grid article {border-color:#b4c6b5}
.ed-no {color:#8e6966}
.ed-session-grid h3 {color:#123f34}

/* Fashion-editorial typographic interlude, without an unrelated stock photo. */
.ed-session-editorial {min-height:460px;background:#d9e4d7;color:#123f34;display:flex;flex-direction:column;justify-content:space-between;padding:32px 48px 40px;position:relative;overflow:hidden}
.ed-session-editorial::after {content:'“';position:absolute;right:10%;top:-125px;color:#abcab5;font:400 600px/.8 'DM Serif Display',serif;opacity:.55;pointer-events:none}
.ed-session-editorial-label,.ed-session-editorial-end {font:700 10px/1.5 'DM Sans',sans-serif;letter-spacing:.2em;position:relative;z-index:1}
.ed-session-editorial>div {display:flex;align-items:flex-start;flex-direction:column;position:relative;z-index:1}
.ed-session-editorial small {font:700 11px 'DM Sans',sans-serif;letter-spacing:.16em;color:#526f5a}
.ed-session-editorial strong {font:400 clamp(56px,6vw,100px)/.98 'DM Serif Display',serif;letter-spacing:-.055em;margin:22px 0 29px}
.ed-session-editorial em {color:#9e666c}
.ed-session-editorial .ed-pill {background:#123f34;color:#fffaf4}

/* Clear, truthful sale presentation, based on four R$100 individual sessions. */
.ed-pricing {background:#efe9df}
.ed-pricing-head p {color:#4e6c5d}
.ed-pricing-intro {display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #9cad98;border-bottom:1px solid #9cad98;padding:20px 0;margin-bottom:34px;color:#123f34}
.ed-pricing-intro span {font:700 10px/1.5 'DM Sans',sans-serif;letter-spacing:.18em;color:#995e68}
.ed-pricing-intro strong {font:400 clamp(19px,2.3vw,30px)/1.25 'DM Serif Display',serif;max-width:565px}
.ed-pricing-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ed-price-card {background:#fffaf4;border:1px solid #cbd6ca;min-height:485px;padding:34px 38px}
.ed-price-card:hover {box-shadow:0 22px 48px #123f341c}
.ed-price-top {color:#597568;align-items:center}
.ed-price-top span:last-child {font:700 10px/1.4 'DM Sans',sans-serif;letter-spacing:.14em;color:#ad6f78}
.ed-price-card h3 {color:#123f34;margin:30px 0 12px;min-height:0;font-size:clamp(46px,4vw,68px)}
.ed-price-card p {color:#4e6c5d;min-height:0}
.ed-regular-rate {display:flex;align-items:baseline;gap:18px;font:500 12px 'DM Sans',sans-serif;color:#6e8175;margin-top:26px}
.ed-regular-rate del {font-size:18px;color:#8b8580;text-decoration-color:#b57881}
.ed-regular-rate b {font-size:18px;font-weight:500;color:#123f34}
.ed-price-amount {color:#123f34;margin:4px 0}
.ed-price-amount strong {font-size:clamp(66px,5vw,92px)}
.ed-price-amount>span {color:#5b7567}
.ed-price-saving {background:#e8eee5;color:#123f34;padding:9px 14px;display:inline-flex;align-items:center;font:700 11px 'DM Sans',sans-serif;letter-spacing:.1em;margin:12px 0 18px}
.ed-price-saving.is-regular {background:#f0ece4;color:#52705e}
.ed-price-detail {color:#4f6a5d;margin-bottom:30px;line-height:1.6}
.ed-price-link {border-color:#b5c7b5;color:#123f34}
.ed-price-link:hover {color:#b5757d}
.ed-pricing-foot p {color:#4f6a5d}
.ed-price-card.is-featured {background:#123f34;color:#fffaf4;border-color:#123f34}
.ed-price-card.is-featured h3,.ed-price-card.is-featured .ed-price-amount,.ed-price-card.is-featured .ed-price-link {color:#fffaf4}
.ed-price-card.is-featured .ed-price-top,.ed-price-card.is-featured .ed-regular-rate,.ed-price-card.is-featured .ed-price-amount>span,.ed-price-card.is-featured .ed-price-detail,.ed-price-card.is-featured p {color:#e0e9dc}
.ed-price-card.is-featured .ed-price-top span:last-child {color:#e4a7ae}
.ed-price-card.is-featured .ed-regular-rate del {color:#d6ddce}
.ed-price-card.is-featured .ed-price-saving {background:#efd5d4;color:#123f34}
.ed-price-card.is-featured .ed-price-link {border-color:#7d9f8b}
.ed-frequency-heading {display:flex;align-items:baseline;justify-content:space-between;gap:25px;border-top:1px solid #b0bdad;padding-top:54px;margin-top:76px}
.ed-frequency-heading h3 {font:400 clamp(31px,3.5vw,51px)/1.1 'DM Serif Display',serif;color:#123f34;letter-spacing:-.04em;margin:0 0 26px}
.ed-frequency-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ed-frequency-card {display:flex;flex-direction:column;align-items:flex-start;background:#fffaf4;border:1px solid #c6d1c2;min-height:385px;padding:31px 34px;color:#123f34;text-decoration:none;transition:background .25s,transform .25s}
.ed-frequency-card.is-weekly {background:#dfe9dc}
.ed-frequency-card:hover {background:#d5e2d5;transform:translateY(-3px)}
.ed-frequency-card>span {font:700 10px 'DM Sans',sans-serif;letter-spacing:.16em;color:#526f5d}
.ed-frequency-card h3 {font:400 clamp(33px,3vw,48px)/1.1 'DM Serif Display',serif;letter-spacing:-.045em;margin:28px 0 2px}
.ed-frequency-card strong {font:400 clamp(42px,4.3vw,65px)/1.1 'DM Serif Display',serif;letter-spacing:-.045em;margin:14px 0 8px}
.ed-frequency-card strong small {font:500 13px 'DM Sans',sans-serif;letter-spacing:0;color:#587260}
.ed-frequency-card p {font:400 13px/1.5 'DM Sans',sans-serif;color:#4e695b;margin:0 0 25px}
.ed-frequency-card b {font:700 12px 'DM Sans',sans-serif;margin-top:auto;border-top:1px solid #aabfaa;padding-top:13px;width:100%}
.ed-discount-heading {border-top:1px solid #b0bdad;margin:85px 0 30px;padding-top:55px;max-width:950px}
.ed-discount-heading h3 {font:400 clamp(43px,4.8vw,72px)/1.06 'DM Serif Display',serif;letter-spacing:-.045em;margin:18px 0 20px;color:#123f34}
.ed-discount-heading h3 em {font-weight:400;color:#b5757d}
.ed-discount-heading p {font:400 16px/1.75 'DM Sans',sans-serif;color:#4e6c5d;max-width:650px}
.ed-discount-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.ed-discount-grid .ed-price-card {padding:30px 28px;min-height:480px}
.ed-discount-grid .ed-price-card h3 {font-size:clamp(37px,3.4vw,59px)}
.ed-discount-grid .ed-price-amount strong {font-size:clamp(60px,5vw,85px)}
.ed-wave {background:#e4a7ae;color:#123f34}
.ed-wave-caption {color:#684b4c}
.ed-wave-text {fill:#123f34}
.ed-faq {background:#fffaf4}
.ed-faq-questions details {border-color:#cad6c8}
.ed-faq-questions summary {color:#123f34}
.ed-faq-questions summary span {color:#ae7078}
.ed-faq-questions details p {color:#4e6c5d}
.ed-contact {background:#123f34;color:#fffaf4}
.ed-contact .ed-overline {color:#e4a7ae}
.ed-contact h2 {color:#fffaf4}
.ed-contact h2 em {color:#e4a7ae}
.ed-contact p {color:#e3e9db}
.ed-contact-mail {color:#fffaf4;border-color:#98b5a3}
.ed-popup {background:#fffaf4;border-color:#cbd7c8;color:#123f34;box-shadow:0 22px 70px #123f3440}
.ed-popup-close,.ed-popup h2 {color:#123f34}
.ed-popup-kicker {color:#b4757d}
.ed-popup p {color:#4e6c5d}
.ed-popup-action {background:#123f34;color:#fffaf4}

.ed-plans-cover {padding:128px 0 55px;background:#f8f4ec;color:#123f34}
.ed-plans-cover h1 {font:400 clamp(75px,9vw,145px)/.95 'DM Serif Display',serif;letter-spacing:-.065em;margin:35px 0 78px}
.ed-plans-cover h1 em {color:#b5757d}
.ed-plans-cover-bottom {display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:22px;border-top:1px solid #c2cfc1}
.ed-plans-cover-bottom p {font-size:18px;line-height:1.5;max-width:430px}
.ed-plans-cover-bottom span {font-size:11px;letter-spacing:.14em;font-weight:700}
.ed-pricing-inner {padding-top:100px}
.ed-plans-details p {font:400 17px/1.85 'DM Sans',sans-serif;color:#4e6c5d;margin:0 0 30px}

/* Two-step lesson/commitment selector: one answer, no wall of price cards. */
.ed-configurator {display:grid;grid-template-columns:1.08fr .92fr;background:#fffaf4;border:1px solid #bcccbc;box-shadow:0 20px 65px #123f340e;align-items:stretch}
.ed-configurator-choices {padding:52px 47px 37px;display:flex;flex-direction:column;gap:46px}
.ed-choice-group {display:flex;flex-direction:column;gap:24px}
.ed-choice-heading {display:flex;flex-direction:column;gap:13px}
.ed-choice-heading>span {font:700 10px/1.3 'DM Sans',sans-serif;letter-spacing:.17em;color:#9d6670}
.ed-choice-heading h3 {font:400 clamp(30px,3vw,46px)/1.13 'DM Serif Display',serif;letter-spacing:-.045em;color:#123f34;margin:0}
.ed-frequency-choices,.ed-duration-choices {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ed-choice {border:1px solid #c6d3c5;background:#f8f4ec;color:#123f34;min-height:108px;padding:20px 13px;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:14px;transition:background .22s,color .22s,border-color .22s,transform .22s}
.ed-choice:hover {border-color:#759783;transform:translateY(-2px)}
.ed-choice:focus-visible {outline:3px solid #b5757d;outline-offset:3px}
.ed-choice span {font:700 13px/1.35 'DM Sans',sans-serif}
.ed-choice small {font:500 11px/1.35 'DM Sans',sans-serif;color:#5e7868}
.ed-choice.selected {background:#123f34;border-color:#123f34;color:#fffaf4}
.ed-choice.selected small {color:#efd5d4}
.ed-configurator-hint {font:400 13px/1.8 'DM Sans',sans-serif;color:#577364;max-width:500px;margin:0;padding-top:20px;border-top:1px solid #d0dacf}
.ed-configurator-summary {background:#123f34;color:#fffaf4;padding:43px 48px 45px;display:flex;flex-direction:column;min-width:0}
.ed-configurator-top {display:flex;justify-content:space-between;gap:20px;font:700 10px/1.5 'DM Sans',sans-serif;letter-spacing:.14em;color:#b8d4c3}
.ed-configurator-summary h3 {font:400 clamp(41px,4.5vw,66px)/1.03 'DM Serif Display',serif;letter-spacing:-.05em;margin:48px 0 20px;color:#fffaf4}
.ed-configurator-summary h3 em {color:#e4a7ae}
.ed-configurator-selection {font:600 14px/1.6 'DM Sans',sans-serif;color:#e8eee5;margin:0 0 34px}
.ed-configurator-standard {font:700 12px/1.5 'DM Sans',sans-serif;letter-spacing:.1em;color:#d0dace;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ed-configurator-standard del {font-size:26px;letter-spacing:0;color:#f2c5c9;text-decoration-color:#ed8e9b;text-decoration-thickness:3px;text-decoration-line:line-through}
.ed-configurator-standard span {font-size:11px;letter-spacing:0;font-weight:400}
.ed-configurator-current {display:flex;align-items:baseline;gap:7px;margin:10px 0 15px;white-space:nowrap}
.ed-configurator-current small {font:600 24px 'DM Sans',sans-serif;align-self:flex-start;margin-top:23px}
.ed-configurator-current strong {font:400 clamp(80px,7vw,115px)/.98 'DM Serif Display',serif;letter-spacing:-.07em;color:#fffaf4}
.ed-configurator-current span {font:500 13px 'DM Sans',sans-serif;color:#d6e4d7}
.ed-configurator-savings {display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 24px}
.ed-configurator-savings span {background:#efd5d4;color:#123f34;font:700 11px 'DM Sans',sans-serif;letter-spacing:.055em;padding:10px 13px}
.ed-configurator-savings span+span {background:transparent;color:#efd5d4;border:1px solid #b9878c}
.ed-configurator-includes {font:500 13px/1.8 'DM Sans',sans-serif;color:#e3ebdc;margin:0 0 9px}
.ed-configurator-total {font:400 15px/1.5 'DM Serif Display',serif;color:#efd5d4;margin:0 0 30px}
.ed-configurator-cta {display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fffaf4;color:#123f34;padding:18px 22px;text-decoration:none;font:700 13px/1.4 'DM Sans',sans-serif;transition:transform .25s,background .25s}
.ed-configurator-cta:hover {background:#efd5d4;transform:translateY(-2px)}
.ed-configurator-cta span {font-size:18px}
.ed-configurator-disclaimer {display:block;font:400 11px/1.7 'DM Sans',sans-serif;color:#bad0bf;margin-top:24px}

/* The Mesa: the warm, hospitality-led heart of Fala CoMIgo. */
.ed-mesa {background:#f8f4ec;padding:120px 0 135px}
.ed-mesa-heading {display:flex;justify-content:space-between;align-items:flex-end;gap:38px;border-bottom:1px solid #bdccba;padding-bottom:35px;margin-bottom:54px}
.ed-mesa-heading>.ed-overline {color:#a06970;align-self:flex-start;padding-top:14px}
.ed-mesa-heading>div {text-align:right}
.ed-mesa-heading h2 {font:400 clamp(96px,11vw,172px)/.95 'DM Serif Display',serif;letter-spacing:-.07em;color:#123f34;margin:0 0 22px}
.ed-mesa-heading h2 em {color:#b5757d}
.ed-mesa-heading p {font:700 11px 'DM Sans',sans-serif;letter-spacing:.21em;color:#557262;margin:0}
.ed-mesa-grid {display:grid;grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:7%}
.ed-mesa-photo {position:relative;min-height:610px;overflow:hidden;background:#e3dfd3}
.ed-mesa-photo img {width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 58%;filter:saturate(.93)}
.ed-mesa-photo img {object-position:50% 55%;filter:brightness(1.01) saturate(.88) contrast(1.01)}
.ed-mesa-photo::after {content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(18,42,34,.45))}
.ed-mesa-photo>span {position:absolute;bottom:33px;left:33px;right:33px;z-index:1;color:#fffaf4;font:700 11px 'DM Sans',sans-serif;letter-spacing:.18em}
.ed-mesa-copy {padding:22px 0 20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.ed-mesa-copy .ed-overline {color:#a06970}
.ed-mesa-copy h3 {font:400 clamp(60px,5.4vw,90px)/1.01 'DM Serif Display',serif;letter-spacing:-.06em;color:#123f34;margin:28px 0 31px}
.ed-mesa-copy h3 em {color:#b5757d}
.ed-mesa-copy>p {font:400 17px/1.85 'DM Sans',sans-serif;color:#4c6b5d;max-width:570px;margin:0 0 29px}
.ed-mesa-details {width:100%;margin-bottom:33px}
.ed-mesa-details>div {display:flex;align-items:baseline;gap:22px;border-top:1px solid #bfcebf;padding:14px 0}
.ed-mesa-details b {font:700 10px 'DM Sans',sans-serif;color:#a06970}
.ed-mesa-details span {font:500 14px/1.5 'DM Sans',sans-serif;color:#234c3e}
.ed-mesa-actions {display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-bottom:27px}
.ed-mesa-copy>small {font:400 11px/1.8 'DM Sans',sans-serif;color:#678073;max-width:515px}

.ed-mesa-page-hero {background:#f0e9e0;padding:145px 0 65px}
.ed-mesa-page-hero h1 {font:400 clamp(115px,18vw,275px)/.86 'DM Serif Display',serif;letter-spacing:-.082em;color:#123f34;margin:42px 0 82px}
.ed-mesa-page-hero h1 em {color:#b5757d}
.ed-mesa-page-subline {display:flex;justify-content:space-between;align-items:center;gap:40px;padding-top:25px;border-top:1px solid #abbfae}
.ed-mesa-page-subline>span {font:700 12px 'DM Sans',sans-serif;letter-spacing:.15em}
.ed-mesa-page-subline p {font:400 17px/1.65 'DM Sans',sans-serif;max-width:450px;color:#4d6a5d}
.ed-mesa-page-story {background:#fffaf4;padding:125px 0}
.ed-mesa-page-grid {display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:9%}
.ed-mesa-page-image {height:730px;position:relative;overflow:hidden}
.ed-mesa-page-image img {width:100%;height:100%;object-fit:cover;object-position:center}
.ed-mesa-page-image img {object-position:50% 55%;filter:brightness(1.01) saturate(.88) contrast(1.01)}
.ed-mesa-page-image>span {position:absolute;bottom:25px;left:20px;right:20px;background:#efd5d4;color:#123f34;padding:17px 21px;font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em;text-align:center}
.ed-mesa-page-copy h2,.ed-mesa-page-how h2,.ed-mesa-membership h2 {font:400 clamp(55px,5.6vw,88px)/1.04 'DM Serif Display',serif;letter-spacing:-.055em;color:#123f34;margin:26px 0 40px}
.ed-mesa-page-copy h2 em,.ed-mesa-page-how h2 em,.ed-mesa-membership h2 em {color:#b5757d}
.ed-mesa-page-copy p {font:400 17px/1.9 'DM Sans',sans-serif;color:#4b695b;margin:0 0 28px}
.ed-mesa-page-how {background:#e6eee4;padding:120px 0}
.ed-mesa-steps {display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:65px}
.ed-mesa-steps article {border-top:1px solid #9eb5a3;padding-top:20px}
.ed-mesa-steps span {font:700 11px 'DM Sans',sans-serif;color:#aa6c75}
.ed-mesa-steps h3 {font:400 clamp(33px,3vw,49px)/1.1 'DM Serif Display',serif;color:#123f34;margin:34px 0 20px}
.ed-mesa-steps p {font:400 14px/1.8 'DM Sans',sans-serif;color:#4b695b}
.ed-mesa-membership {background:#123f34;color:#fffaf4;padding:115px 0}
.ed-mesa-membership-grid {display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:10%}
.ed-mesa-membership .ed-overline {color:#e4a7ae}
.ed-mesa-membership h2 {color:#fffaf4;margin-bottom:0}
.ed-mesa-membership h2 em {color:#e4a7ae}
.ed-mesa-membership p {font:400 18px/1.85 'DM Sans',sans-serif;color:#e3ebe1;margin:0 0 28px}
.ed-mesa-membership .ed-pill {margin-bottom:24px}
.ed-mesa-membership small {display:block;color:#b5cebc;font:400 12px/1.6 'DM Sans',sans-serif}

/* Actual vertical wave morphing: full words remain inside the visible panel. */
.ed-wave {height:410px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e4a7ae}
.ed-wave svg {width:100%!important;min-width:0!important;left:0!important;position:relative;display:block;overflow:hidden;animation:none!important}
.ed-wave svg.ed-wave-mobile {display:none}
.ed-wave svg.ed-wave-desktop {display:block}
.ed-wave-text {font:400 83px 'DM Serif Display',serif;letter-spacing:-.05em;fill:#123f34}
.ed-wave-caption {top:25px;color:#684b4c}

/* School-first partnerships: editorial proposal, not a generic contact page. */
.ed-partners-cover {background:#f8f4ec;color:#123f34;position:relative;overflow:hidden}
.ed-partners-cover::after {content:'CONNECT';position:absolute;right:-2vw;bottom:150px;transform:rotate(-90deg) translateX(30%);font:400 190px/.8 'DM Serif Display',serif;letter-spacing:-.1em;color:#e8e4d9;pointer-events:none}
.ed-partners-cover-inner {position:relative;z-index:1;padding-top:120px;padding-bottom:75px}
.ed-partners-edition {display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #b8c8b8;font:700 10px/1.5 'DM Sans',sans-serif;letter-spacing:.18em;margin-bottom:67px}
.ed-partners-cover .ed-overline {color:#af7580}
.ed-partners-cover h1 {font:400 clamp(89px,10vw,166px)/.91 'DM Serif Display',serif;letter-spacing:-.072em;margin:29px 0 74px;max-width:1100px}
.ed-partners-cover h1 em {color:#b5757d}
.ed-partners-cover-foot {border-top:1px solid #b8c8b8;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:35px}
.ed-partners-cover-foot p {font:400 18px/1.7 'DM Sans',sans-serif;max-width:540px;color:#49685a;margin:0}
.ed-partners-intro {padding:132px 0;background:#fffaf4}
.ed-partners-intro-grid {display:grid;grid-template-columns:1fr .83fr;gap:11%;align-items:start}
.ed-partners-intro h2,.ed-partners-model h2,.ed-partners-extra h2,.ed-partners-contact h2 {font:400 clamp(64px,6.4vw,100px)/1 'DM Serif Display',serif;letter-spacing:-.06em;margin:28px 0 0;color:#123f34}
.ed-partners-intro h2 em,.ed-partners-model h2 em,.ed-partners-extra h2 em {color:#b5757d}
.ed-partners-intro-grid>div+div {padding-top:58px}
.ed-partners-intro p,.ed-partners-extra p {font:400 17px/1.9 'DM Sans',sans-serif;color:#4d695b;margin:0 0 25px}
.ed-partners-model {background:#e7eee5;padding:115px 0 125px}
.ed-partners-model h2 {margin-bottom:75px}
.ed-partners-model-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:33px}
.ed-partners-model-grid article {padding:27px 0 10px;border-top:1px solid #9bb19c}
.ed-partners-model-grid article>span {font:700 10px 'DM Sans',sans-serif;letter-spacing:.13em;color:#a46973}
.ed-partners-model-grid h3 {font:400 clamp(34px,3.1vw,49px)/1.04 'DM Serif Display',serif;letter-spacing:-.04em;color:#123f34;margin:42px 0 18px}
.ed-partners-model-grid p {font:400 14px/1.9 'DM Sans',sans-serif;color:#4a695b;max-width:340px}
.ed-partners-extra {background:#f8f4ec;padding:130px 0}
.ed-partners-extra-grid {display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:9%}
.ed-partners-extra h2 {margin-bottom:33px}
.ed-partners-extra .ed-underlink {display:inline-block;margin-top:14px}
.ed-partners-quote {background:#e7b5b4;padding:63px 55px;min-height:510px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(1deg)}
.ed-partners-quote>span,.ed-partners-quote>small {font:700 10px 'DM Sans',sans-serif;letter-spacing:.15em;color:#234f43}
.ed-partners-quote p {font:400 clamp(49px,4.7vw,76px)/1.12 'DM Serif Display',serif;letter-spacing:-.055em;color:#123f34;margin:25px 0}
.ed-partners-quote p em {color:#8b4f5a}
.ed-partners-contact {background:#123f34;color:#fffaf4;padding:120px 0 130px}
.ed-partners-contact-inner {max-width:1020px;text-align:center}
.ed-partners-contact .ed-overline {color:#e7afb7}
.ed-partners-contact h2 {color:#fffaf4;margin:28px 0 28px}
.ed-partners-contact h2 em {color:#e7afb7}
.ed-partners-contact p {font:400 17px/1.85 'DM Sans',sans-serif;color:#d3e2d4;max-width:620px;margin:0 auto 35px}
.ed-partners-contact-actions {display:flex;gap:28px;align-items:center;justify-content:center;flex-wrap:wrap}
.ed-partners-contact-actions .ed-underlink {color:#fffaf4;border-color:#d3e2d4}
.desktop-nav {gap:clamp(10px,1.35vw,21px)}
.desktop-nav a {font-size:11px}

@media(max-width:900px){
  .ed-cover,.ed-cover-inner {min-height:720px}
  .ed-cover-edition {opacity:.075;right:-80px;top:20%}
  .ed-price-card h3 {min-height:0}
  .ed-frequency-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .ed-discount-grid {grid-template-columns:1fr;max-width:670px;margin:auto}
  .ed-configurator {grid-template-columns:1fr;max-width:720px;margin:auto}
  .ed-configurator-summary {padding:47px}
  .ed-mesa-heading {align-items:flex-start;flex-direction:column;gap:18px}
  .ed-mesa-heading>div {text-align:left}
  .ed-mesa-grid,.ed-mesa-page-grid {grid-template-columns:1fr;gap:45px}
  .ed-mesa-photo {min-height:620px}
  .ed-mesa-copy {padding:10px 0}
  .ed-mesa-page-image {height:620px}
  .ed-mesa-membership-grid {grid-template-columns:1fr;gap:35px}
  .ed-mesa-steps {grid-template-columns:1fr;gap:23px}
  .ed-partners-intro-grid,.ed-partners-extra-grid {grid-template-columns:1fr;gap:35px}
  .ed-partners-intro-grid>div+div {padding-top:0}
  .ed-partners-cover::after {opacity:.5}
  .ed-partners-model-grid {gap:20px}
}
@media(max-width:670px){
  .ed-cover,.ed-cover-inner {min-height:650px}
  .ed-cover-edition {right:-160px;font-size:370px;top:23%}
  .ed-cover h1 {font-size:clamp(61px,12.5vw,86px)}
  .ed-pricing-grid {grid-template-columns:1fr;gap:14px}
  .ed-pricing-intro {align-items:flex-start;flex-direction:column;gap:10px}
  .ed-price-card {padding:30px 28px;min-height:0}
  .ed-price-card h3 {font-size:51px}
  .ed-price-amount strong {font-size:77px}
  .ed-frequency-heading {flex-direction:column;gap:13px}
  .ed-frequency-grid {grid-template-columns:1fr}
  .ed-frequency-card {min-height:210px;padding:28px}
  .ed-frequency-card h3 {font-size:41px;margin-top:18px}
  .ed-frequency-card strong {font-size:58px}
  .ed-discount-heading {margin-top:60px;padding-top:40px}
  .ed-discount-heading h3 {font-size:clamp(43px,9vw,60px)}
  .ed-configurator-choices {padding:31px 20px 28px;gap:36px}
  .ed-choice-group {gap:18px}
  .ed-choice-heading h3 {font-size:clamp(30px,7vw,40px)}
  .ed-frequency-choices,.ed-duration-choices {gap:7px}
  .ed-choice {padding:13px 9px;min-height:98px}
  .ed-choice span {font-size:12px}
  .ed-choice small {font-size:10px}
  .ed-configurator-summary {padding:38px 26px 31px}
  .ed-configurator-summary h3 {font-size:clamp(47px,10vw,63px);margin-top:35px}
  .ed-configurator-current strong {font-size:clamp(79px,19vw,109px)}
  .ed-configurator-standard {font-size:10px}
  .ed-configurator-standard del {font-size:23px}
  .ed-session-editorial {min-height:410px;padding:25px}
  .ed-session-editorial strong {font-size:clamp(54px,11vw,75px)}
  .ed-session-editorial::after {font-size:400px;top:-60px;right:0}
  .ed-plans-cover {padding:80px 0 35px}
  .ed-plans-cover h1 {font-size:clamp(59px,11vw,84px);margin-bottom:55px}
  .ed-plans-cover-bottom {align-items:flex-start;flex-direction:column}
  .ed-mesa {padding:77px 0 85px}
  .ed-mesa-heading h2 {font-size:clamp(80px,17vw,130px)}
  .ed-mesa-heading p {font-size:9px}
  .ed-mesa-grid {gap:34px}
  .ed-mesa-photo {min-height:470px}
  .ed-mesa-copy h3 {font-size:clamp(53px,11vw,75px)}
  .ed-mesa-copy>p {font-size:15px}
  .ed-mesa-page-hero {padding:90px 0 45px}
  .ed-mesa-page-hero h1 {font-size:clamp(98px,20vw,150px);margin:40px 0 55px}
  .ed-mesa-page-subline {align-items:flex-start;flex-direction:column;gap:14px}
  .ed-mesa-page-subline p {font-size:15px}
  .ed-mesa-page-story,.ed-mesa-page-how,.ed-mesa-membership {padding:80px 0}
  .ed-mesa-page-image {height:490px}
  .ed-mesa-page-copy h2,.ed-mesa-page-how h2,.ed-mesa-membership h2 {font-size:clamp(52px,11vw,72px)}
  .ed-mesa-page-copy p,.ed-mesa-membership p {font-size:15px}
  .ed-wave {height:290px}
  .ed-wave svg.ed-wave-desktop {display:none}
  .ed-wave svg.ed-wave-mobile {display:block}
  .ed-wave-text {font-size:115px}
  .ed-wave-caption {top:20px;left:20px;font-size:9px}
  .ed-partners-cover-inner {padding-top:75px;padding-bottom:55px}
  .ed-partners-edition {font-size:8px;margin-bottom:45px}
  .ed-partners-cover h1 {font-size:clamp(67px,12.4vw,100px);margin:30px 0 55px}
  .ed-partners-cover-foot {align-items:flex-start;flex-direction:column}
  .ed-partners-cover-foot p {font-size:15px}
  .ed-partners-cover::after {display:none}
  .ed-partners-intro,.ed-partners-extra,.ed-partners-model,.ed-partners-contact {padding:78px 0}
  .ed-partners-intro h2,.ed-partners-model h2,.ed-partners-extra h2,.ed-partners-contact h2 {font-size:clamp(52px,11vw,73px)}
  .ed-partners-intro p,.ed-partners-extra p,.ed-partners-contact p {font-size:15px}
  .ed-partners-model h2 {margin-bottom:50px}
  .ed-partners-model-grid {grid-template-columns:1fr;gap:26px}
  .ed-partners-model-grid h3 {margin-top:22px}
  .ed-partners-quote {min-height:380px;padding:40px 30px}
  .ed-partners-quote p {font-size:clamp(48px,9vw,65px)}
}

/* Show the owner's actual overhead Mesa photo as an immersive editorial spread. */
.ed-mesa-grid {grid-template-columns:minmax(0,1fr);gap:51px}
.ed-mesa-photo {min-height:0;aspect-ratio:1.52}
.ed-mesa-photo img,.ed-mesa-page-image img {object-position:50% 50%;filter:brightness(1.15) saturate(.96) contrast(1.04)}
.ed-mesa-copy {display:grid;grid-template-columns:.89fr 1.11fr;gap:0 7.5%;align-items:start;justify-content:initial;padding-top:2px}
.ed-mesa-copy .ed-overline {grid-column:1/-1;margin-bottom:25px}
.ed-mesa-copy h3 {grid-column:1;grid-row:2/6;margin:2px 0 0}
.ed-mesa-copy>p {grid-column:2;grid-row:2;margin-bottom:24px}
.ed-mesa-details {grid-column:2;grid-row:3;margin-bottom:24px}
.ed-mesa-actions {grid-column:2;grid-row:4}
.ed-mesa-copy>small {grid-column:2;grid-row:5}
.ed-mesa-page-grid {grid-template-columns:minmax(0,1fr);gap:64px}
.ed-mesa-page-image {height:auto;aspect-ratio:1.52}
.ed-mesa-page-copy {display:grid;grid-template-columns:.92fr 1.08fr;gap:0 8%;align-items:start}
.ed-mesa-page-copy .ed-overline {grid-column:1/-1;margin-bottom:25px}
.ed-mesa-page-copy h2 {grid-column:1;grid-row:2/6;margin:0}
.ed-mesa-page-copy>p {grid-column:2;margin:0 0 23px}
.ed-mesa-page-copy>.ed-pill {grid-column:2;justify-self:start;margin-top:7px}
@media(max-width:900px){
  .ed-mesa-copy {display:flex;flex-direction:column;gap:0;align-items:flex-start}
  .ed-mesa-copy h3 {margin:0 0 27px}
  .ed-mesa-page-copy {display:block}
  .ed-mesa-page-copy h2 {margin:25px 0 33px}
}
@media(max-width:670px){
  .ed-mesa-grid {gap:33px}
  .ed-mesa-photo {min-height:0;aspect-ratio:1.2}
  .ed-mesa-page-image {height:auto;aspect-ratio:1.2}
  .ed-mesa-page-grid {gap:37px}
  .ed-mesa-copy .ed-overline {margin-bottom:23px}
}

/* Owner's brunch photograph: editorial table-only crop, not the overhead replacement. */
.ed-mesa-photo,.ed-mesa-page-image {width:min(100%,1020px);margin-inline:auto;aspect-ratio:1.68}
.ed-mesa-photo img,.ed-mesa-page-image img {object-fit:cover;object-position:50% 76%;filter:brightness(1.03) saturate(.88) contrast(1.02)}
.ed-mesa-page-grid {gap:55px}

/* Every informative session card leads to an actual inquiry. */
.ed-session-grid .ed-session-card {display:block;border-top:1px solid #b4c6b5;padding-top:24px;text-decoration:none;color:inherit;transition:transform .25s ease,border-color .25s ease}
.ed-session-card h3 {font:400 clamp(30px,2.5vw,45px)/1.1 'DM Serif Display',serif;color:#123f34;letter-spacing:-.04em;margin:42px 0 22px}
.ed-session-card p {font-size:15px;line-height:1.8;color:#4e6c5d}
.ed-card-action {display:inline-block;margin-top:18px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:8px;color:#123f34}
.ed-session-card:hover,.ed-session-card:focus-visible {transform:translateY(-5px);border-color:#123f34}
.ed-session-card:focus-visible,.ed-popup-action:focus-visible,.ed-lead-form button:focus-visible {outline:3px solid #b4757d;outline-offset:4px}

/* The lettering moves sideways AND each character rises and falls along the way. */
.ed-wave {height:350px;justify-content:flex-start;background:#e4a7ae;isolation:isolate}
.ed-wave-ticker {display:flex;align-items:center;flex:0 0 auto;width:max-content;animation:ed-wave-drift 18s linear infinite;will-change:transform}
.ed-wave-segment {display:flex;align-items:center;flex:0 0 auto;width:max-content;white-space:nowrap}
.ed-wave-letter {display:inline-block;flex:0 0 auto;min-width:.26em;font:400 clamp(74px,10vw,158px)/1.45 'DM Serif Display',serif;letter-spacing:-.06em;color:#123f34;animation:ed-wave-bob 2.7s ease-in-out infinite;animation-delay:var(--wave-delay);will-change:transform}
@keyframes ed-wave-drift {to {transform:translateX(-50%)}}
@keyframes ed-wave-bob {0%,100% {transform:translateY(0)}25% {transform:translateY(-31px)}75% {transform:translateY(31px)}}
.ed-wave-caption {z-index:2;left:max(25px,calc((100% - 1280px)/2));top:23px}

/* A concise first-person note about the purpose behind The Mesa. */
.ed-mesa-origin {background:#f2e4dd;padding:112px 0;border-top:1px solid #e1c9c3;border-bottom:1px solid #e1c9c3}
.ed-mesa-origin-inner {display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start}
.ed-mesa-origin h2 {font:400 clamp(58px,6.8vw,106px)/.98 'DM Serif Display',serif;letter-spacing:-.065em;color:#123f34;margin:25px 0 0}
.ed-mesa-origin h2 em,.ed-lead-layout h2 em {font-weight:400;color:#ae737b}
.ed-mesa-origin blockquote {border:0;margin:10px 0 31px;padding:0;font:400 clamp(27px,3.2vw,47px)/1.24 'DM Serif Display',serif;color:#123f34;letter-spacing:-.035em}
.ed-mesa-origin p {font:400 16px/1.88 'DM Sans',sans-serif;color:#445d50;margin:0 0 20px;max-width:630px}
.ed-mesa-signature {display:block;margin-top:37px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.19em;color:#123f34}

/* One no-subscription inquiry form; the visitor confirms the outbound message. */
.ed-lead-section {padding:105px 0;background:#f2e4dd}
.ed-lead-layout {display:grid;grid-template-columns:.86fr 1.14fr;gap:8%;align-items:start}
.ed-lead-layout h2 {font:400 clamp(65px,7vw,103px)/.97 'DM Serif Display',serif;color:#123f34;letter-spacing:-.065em;margin:25px 0 29px}
.ed-lead-layout p {font-size:16px;line-height:1.85;color:#4e6c5d;max-width:390px}
.ed-lead-form {background:#fffaf4;border:1px solid #d7c9bd;padding:clamp(27px,4vw,53px);display:grid;gap:25px;box-shadow:0 15px 55px #543d3020}
.ed-lead-form label {display:grid;gap:10px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.11em;color:#123f34}
.ed-lead-form input,.ed-lead-form select,.ed-lead-form textarea {width:100%;padding:16px 14px;border:1px solid #cbd7c8;border-radius:0;background:#fff;color:#123f34;font:400 15px/1.45 'DM Sans',sans-serif;letter-spacing:normal;min-width:0}
.ed-lead-form textarea {resize:vertical}
.ed-lead-actions {display:flex;flex-wrap:wrap;gap:13px;align-items:center}
.ed-lead-actions button {padding:17px 24px;border:1px solid #123f34;border-radius:100px;cursor:pointer;font:700 11px 'DM Sans',sans-serif;letter-spacing:.03em}
.ed-lead-submit {background:#123f34;color:#fffaf4}
.ed-lead-email {background:transparent;color:#123f34}
.ed-lead-form small {font-size:11px;color:#4e6c5d;line-height:1.55}
.ed-popup-alt {display:block;text-align:center;color:#123f34;font:700 11px 'DM Sans',sans-serif;margin-top:16px;text-decoration:underline;text-underline-offset:4px}

@media(max-width:900px){.ed-mesa-origin-inner,.ed-lead-layout {grid-template-columns:1fr;gap:48px}}
@media(max-width:670px){
  .ed-mesa-photo,.ed-mesa-page-image {aspect-ratio:1.15}
  .ed-mesa-photo img,.ed-mesa-page-image img {object-position:50% 78%}
  .ed-wave {height:260px}
  .ed-wave-letter {font-size:85px}
  .ed-wave-ticker {animation-duration:14s}
  @keyframes ed-wave-bob {0%,100% {transform:translateY(0)}25% {transform:translateY(-21px)}75% {transform:translateY(21px)}}
  .ed-mesa-origin,.ed-lead-section {padding:77px 0}
  .ed-mesa-origin h2,.ed-lead-layout h2 {font-size:clamp(56px,13vw,76px)}
  .ed-session-card h3 {margin:24px 0 12px}
}
@media(prefers-reduced-motion:reduce){.ed-wave-ticker,.ed-wave-letter {animation:none!important;will-change:auto}}

/* Three independent invitations, shown one at a time from different corners. */
.ed-popup-campaign {width:min(310px,calc(100vw - 32px));padding:23px 24px 24px;border-radius:2px}
.ed-popup-campaign h2 {font-size:28px;line-height:1.06;margin:12px 0 9px}
.ed-popup-campaign p {font-size:12px;line-height:1.55;margin-bottom:15px}
.ed-popup-campaign .ed-popup-action {padding:12px 16px;font-size:10px}
.ed-popup-hello {left:24px;right:auto;top:102px;bottom:auto;transform:translateX(-30px) scale(.97)}
.ed-popup-school {right:24px;bottom:91px;background:#f2e4dd;border-color:#d6bdbc;transform:translateX(30px) scale(.97)}
.ed-popup-consult {right:24px;top:102px;bottom:auto;background:#fffaf4;border-color:#cbd7c8;transform:translateY(-30px) scale(.97)}
.ed-popup-campaign.visible {transform:translate(0,0) scale(1)}
.ed-popup-school .ed-popup-kicker {color:#93656b}
.ed-popup-school .ed-popup-action,.ed-popup-consult .ed-popup-action {background:#123f34;color:#fffaf4}

@media(max-width:760px){
  .ed-popup-campaign {left:14px;right:14px;width:auto;padding:18px 20px}
  .ed-popup-campaign h2 {font-size:24px}
  .ed-popup-campaign p {margin-bottom:11px}
  .ed-popup-consult,.ed-popup-school,.ed-popup-hello {top:76px;bottom:auto}
}

/* The founder's story gets a proper editorial page. */
.ed-founder-intro {padding:105px 0 114px}
.ed-founder-intro-grid {display:grid;grid-template-columns:.87fr 1.13fr;gap:8%;align-items:start}
.ed-founder-photo {height:620px;min-height:0;position:sticky;top:105px}
.ed-founder-photo img {width:100%;height:100%;object-fit:cover;object-position:center 38%}
.ed-founder-copy h2,.ed-founder-why h2 {font:400 clamp(65px,7vw,107px)/.96 'DM Serif Display',serif;letter-spacing:-.06em;color:#123f34;margin:29px 0 40px}
.ed-founder-copy h2 em,.ed-founder-why h2 em {color:#ad737c;font-weight:400}
.ed-founder-copy p,.ed-founder-why p {font:400 16px/1.93 'DM Sans',sans-serif;color:#445d50;margin:0 0 23px}
.ed-founder-meta {display:flex;flex-wrap:wrap;gap:9px;margin-top:35px}
.ed-founder-meta span {font:700 10px 'DM Sans',sans-serif;letter-spacing:.08em;border:1px solid #b4c6b5;border-radius:100px;padding:12px 15px;color:#123f34}
.ed-founder-quote {background:#123f34;color:#fffaf4;padding:115px 0;text-align:center}
.ed-founder-quote .ed-overline {color:#e8b6b8}
.ed-founder-quote blockquote {border:0;margin:30px auto 31px;padding:0;max-width:1050px;font:400 clamp(42px,6.2vw,90px)/1.12 'DM Serif Display',serif;letter-spacing:-.05em}
.ed-founder-quote blockquote em {color:#e8b6b8}
.ed-founder-quote span:last-child {font:700 10px 'DM Sans',sans-serif;letter-spacing:.2em}
.ed-founder-why {background:#f3e6dd;padding:112px 0 120px}
.ed-founder-why-grid {display:grid;grid-template-columns:.94fr 1.06fr;gap:8%}
.ed-founder-links {display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px}
@media(max-width:900px){
  .ed-founder-intro-grid,.ed-founder-why-grid {grid-template-columns:1fr;gap:55px}
  .ed-founder-photo {position:relative;top:auto;height:520px}
}
@media(max-width:670px){
  .ed-founder-intro,.ed-founder-why,.ed-founder-quote {padding:78px 0}
  .ed-founder-photo {height:410px}
  .ed-founder-copy h2,.ed-founder-why h2 {font-size:clamp(60px,12vw,83px)}
  .ed-founder-quote blockquote {font-size:clamp(40px,9vw,59px)}
}

/* Carry the logo's exact dusty-rose accent into Mirella's name. */
.ed-about-copy h2 em,.ed-founder-copy h2 em {color:#b87881}
