/* Shared presentation system. Content and behavior remain in their original files. */
:root{--saw-blue:#003893;--saw-yellow:#FCD116;--saw-red:#CE1126;--saw-light:#f3f5f8;--saw-text:#131b29;--saw-muted:#4f5c70;--saw-line:#dae0e8;--saw-radius:18px;--saw-shadow:0 7px 22px #0038930d;--saw-blue-shadow:0 7px 0 #00245e}
.site-main{background:#fff;color:var(--saw-text)}
.site-main .section{padding-top:clamp(48px,6vw,80px);padding-bottom:clamp(48px,6vw,80px)}
.site-main h1{font-size:clamp(40px,4.8vw,66px);line-height:1.13;letter-spacing:-2px;font-weight:700}
.site-main h2{font-size:clamp(30px,3.4vw,44px);line-height:1.2;letter-spacing:-1.2px;font-weight:600;color:var(--saw-blue)}
.site-main h3{font-size:22px;line-height:1.35;color:var(--saw-blue)}
.site-main p{color:var(--saw-muted);line-height:1.75}
.site-main .eyebrow{font-size:15px;line-height:1.6;font-weight:700;letter-spacing:1.6px;color:var(--saw-blue)}
.site-main header{border-bottom:1px solid var(--saw-line);box-shadow:0 3px 18px #00389306}
.site-main .nav nav>a:not(.nav-cta){padding:10px 0;text-underline-offset:6px}
.site-main .nav nav>a:not(.nav-cta):hover{text-decoration:underline;color:var(--saw-blue)}
.site-main .nav-cta,.site-main .button{border-radius:12px;background:var(--saw-yellow);color:var(--saw-text);box-shadow:0 4px 0 #d5ad00;font-weight:600;min-height:50px;display:inline-flex;align-items:center;justify-content:center}
.site-main .nav-cta{padding:12px 20px}
.site-main .button:hover,.site-main .nav-cta:hover{background:#ffe04a}
.site-main .hero{gap:54px}
.site-main .portrait{isolation:isolate}
.site-main .portrait img,.site-main .portrait:before{border-radius:24px}
.site-main .portrait:before{inset:20px -12px 0 30px}
.site-main .photo-tag{border-radius:12px;border:1px solid var(--saw-line);box-shadow:var(--saw-shadow);color:var(--saw-blue)}
.site-main .hero-note{font-weight:600;color:var(--saw-blue)}
.site-main .strip{background:var(--saw-blue)}
.site-main .video-shell{border-radius:var(--saw-radius);box-shadow:var(--saw-blue-shadow);background:var(--saw-blue)}
.site-main .play{box-shadow:0 5px 18px #0002}
.site-main main>section.soft,.site-main main>section.program{background:var(--saw-light)}
.site-main .problem-grid{gap:20px}
.site-main .problem-grid article{background:#fff;border:1px solid var(--saw-line);border-top:5px solid var(--saw-yellow);border-radius:var(--saw-radius);padding:26px 22px;box-shadow:var(--saw-shadow);min-width:0}
.site-main .problem-grid article>span{display:inline-flex;align-items:center;justify-content:center;background:var(--saw-yellow);border-radius:12px;width:44px;height:44px;font-size:22px;margin-bottom:18px}
.site-main .problem-grid h3{font-size:22px;line-height:1.35}
.site-main .problem-grid p{margin-bottom:0;font-size:16px;line-height:1.75}
.site-main .benefit-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0;padding-top:12px;margin-top:24px}
.site-main .benefit-row>h3{grid-column:1/-1;margin-bottom:0;font-size:24px}
.site-main .benefit-row>div{padding:22px;background:#fff;border:1px solid var(--saw-line);border-radius:var(--saw-radius);box-shadow:var(--saw-shadow);min-width:0}
.site-main .benefit-row b{color:var(--saw-blue)}
.site-main .method{gap:56px}
.site-main .method-photo{width:100%;max-width:360px;border-radius:var(--saw-radius);box-shadow:var(--saw-shadow)}
.site-main .steps{display:grid;gap:16px;min-width:0}
.site-main .steps article{background:#fff;border:1px solid var(--saw-line);border-top:5px solid var(--saw-yellow);border-radius:var(--saw-radius);padding:24px;gap:18px;box-shadow:var(--saw-shadow)}
.site-main .steps article>div{min-width:0}
.site-main .steps article>span{border-radius:12px;min-width:50px;height:50px;font-size:26px}
.site-main .steps h3{font-size:22px;overflow-wrap:break-word}
.site-main .steps small{font-size:16px;margin-top:5px;font-weight:600}
.site-main main details{background:#fff;border:1px solid var(--saw-line);border-radius:14px;padding:20px 22px;margin:12px 0;box-shadow:0 4px 14px #00389306}
.site-main main summary{font-weight:600;line-height:1.6;padding-right:30px;color:var(--saw-blue)}
.site-main main summary:after{right:0;top:0;line-height:1.4;color:var(--saw-blue)}
.site-main main details p,.site-main main details ul{font-size:16px;line-height:1.75}
.site-main .steps details{margin:0}
.site-main .program .two-col{gap:56px}
.site-main .program-meta span{background:#fff;color:var(--saw-blue);border-color:var(--saw-line);font-weight:600;border-radius:12px;box-shadow:0 3px 0 var(--saw-yellow)}
.site-main main>section.soft:has(>.testimonials){background:var(--saw-blue)}
.site-main .testimonials h2,.site-main .testimonials p,.site-main .testimonials #student-name{color:#fff}
.site-main .testimonials .eyebrow{color:var(--saw-yellow)}
.site-main .carousel-nav button{width:44px;height:44px;border-radius:12px;background:#fff;color:var(--saw-blue);border:1px solid #fff;box-shadow:0 4px 0 #00245e;font-size:20px}
.site-main #dots button{width:11px;height:11px;background:#ffffff80}
.site-main #dots button[aria-current=true]{background:var(--saw-yellow)}
.site-main .about{background:#fff;gap:64px}
.site-main main>.about::before{background:#fff;box-shadow:0 0 0 100vmax #fff}
.site-main .about-photo img{border-radius:24px;box-shadow:var(--saw-shadow)}
.site-main .about-photo>span{border-radius:12px;transform:none;font-size:22px;box-shadow:0 4px 0 #d5ad00}
.site-main #plans{position:relative;isolation:isolate;background:var(--saw-blue)}
.site-main #plans::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--saw-blue);box-shadow:0 0 0 100vmax var(--saw-blue);clip-path:inset(0 -100vmax)}
.site-main #plans>.section-title h2,.site-main #plans>.section-title p{color:#fff}
.site-main #plans>.section-title .eyebrow{color:var(--saw-yellow)}
.site-main #plans .plans{gap:24px;align-items:start}
.site-main #plans .plan{background:#fff;color:var(--saw-text);border:1px solid var(--saw-line);border-top:6px solid var(--saw-yellow);border-radius:var(--saw-radius);box-shadow:var(--saw-blue-shadow);padding:32px;min-width:0}
.site-main #plans .plan p{color:var(--saw-muted)}
.site-main #plans .plan .eyebrow{color:var(--saw-blue)}
.site-main #plans .plan h3{color:var(--saw-blue)}
.site-main #plans .plan-type{border-color:var(--saw-line);color:var(--saw-blue);background:var(--saw-light);font-size:15px}
.site-main #plans .plan-top{gap:12px;flex-wrap:wrap}
.site-main #plans .plan li:before{color:var(--saw-blue)}
.site-main #plans .plan h3 strong{font-size:44px}
.site-main .start{background:var(--saw-light);border:0}
.site-main main>.start::before{background:var(--saw-light);box-shadow:0 0 0 100vmax var(--saw-light)}
.site-main .start-grid{gap:20px}
.site-main .start-grid article{display:block;padding:26px;background:#fff;border:1px solid var(--saw-line);border-top:5px solid var(--saw-yellow);border-radius:var(--saw-radius);box-shadow:var(--saw-shadow);min-width:0}
.site-main .start-grid article>span{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--saw-yellow);font-size:19px;margin:0 0 18px}
.site-main .start-grid h3{font-size:22px;margin:0 0 14px}
.site-main .faq{background:#fff;gap:56px}
.site-main .group-schedule .schedule-zone-card{border-radius:14px;box-shadow:0 5px 0 #00245e}
.site-main .group-schedule li{border-radius:14px;background:var(--saw-light)}
.site-main .booking{background:var(--saw-light)}
.site-main .booking .section-title{padding:32px;background:#fff;border:1px solid var(--saw-line);border-top:5px solid var(--saw-yellow);border-radius:var(--saw-radius);box-shadow:var(--saw-shadow);margin-bottom:28px}
.site-main .booking .section-title p:last-child{margin-bottom:0}
.site-main .final{background:var(--saw-blue)}
.site-main .final .section{text-align:center}
.site-main .final h2,.site-main .final p{color:#fff}
.site-main .final .eyebrow{color:var(--saw-yellow)}
.site-main .final h2{font-size:clamp(30px,3.4vw,44px)}
.site-main .final p{max-width:760px;margin-left:auto;margin-right:auto}
.site-main #library{background:var(--saw-light)}
.site-main #library .library-resource{border-radius:var(--saw-radius);box-shadow:var(--saw-shadow)}
.site-main #library .library-cover-title{color:#fff}
.site-main #library h3{font-size:clamp(24px,2.7vw,32px)}
.site-main #conversation-topics article,.site-main #why-practise-together article{border-radius:var(--saw-radius)}
.site-main #conversation-topics h2{color:#fff}
.site-main #conversation-topics .eyebrow{color:var(--saw-yellow)}
.site-main #conversation-topics .topics-intro{color:#fff}
.site-main #why-practise-together{background:var(--saw-light)}
.site-main #why-practise-together .group-benefits-invitation{border-radius:0 14px 14px 0}
.site-main>footer{border-top:1px solid var(--saw-line)}
.site-main .consent{border-radius:16px;box-shadow:0 0 0 1px var(--saw-line),0 12px 36px #00389320}
.site-main .consent button{border-radius:10px;font-weight:600}
.site-main dialog{border-radius:var(--saw-radius)}
/* The interactive guide uses the same surfaces and controls. */
.resource-page{--blue:var(--saw-blue);--yellow:var(--saw-yellow);--red:var(--saw-red)}
.resource-page h2{font-size:clamp(30px,3.4vw,44px);font-weight:600;line-height:1.2}
.resource-page .eyebrow{font-size:15px;font-weight:700;letter-spacing:1.6px}
.resource-page .hero-example,.resource-page .challenge-card{border-radius:var(--saw-radius);box-shadow:var(--saw-blue-shadow)}
.resource-page .expression{border-radius:var(--saw-radius);border-top:5px solid var(--saw-yellow);box-shadow:var(--saw-shadow)}
.resource-page .button,.resource-page .outline,.resource-page .secondary,.resource-page .answer{border-radius:12px;min-height:50px}
.resource-page .button{box-shadow:0 4px 0 #d5ad00}
.resource-page .explore{background:var(--saw-light)}
.resource-page .filters button{border-radius:12px}
.resource-page .intro h2,.resource-page .explore h2,.resource-page .takeaway h2{color:var(--saw-blue)}
@media(max-width:1000px){
 .site-main .problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-main .hero,.site-main .method,.site-main .program .two-col,.site-main .testimonials,.site-main .about,.site-main .faq{gap:36px}
}
@media(max-width:700px){
 .site-main .wrap{width:calc(100% - 40px)}
 .site-main .hero,.site-main .video-intro,.site-main .method,.site-main .program .two-col,.site-main .testimonials,.site-main .about,.site-main .faq{grid-template-columns:1fr;gap:30px}
 .site-main .hero{padding-top:36px;padding-bottom:44px}
 .site-main h1{font-size:clamp(38px,8vw,48px);letter-spacing:-1.4px}
 .site-main h2{font-size:32px;letter-spacing:-.8px}
 .site-main .eyebrow{font-size:14px}
 .site-main .portrait{width:88%;max-width:430px;margin:auto}
 .site-main .portrait img{max-height:430px}
 .site-main .photo-tag{left:-14px;padding:12px 16px;font-size:15px}
 .site-main .benefit-row{grid-template-columns:1fr}
 .site-main .benefit-row>h3{font-size:24px}
 .site-main .method-photo{max-width:none;max-height:300px;object-fit:cover}
 .site-main .steps article{padding:22px}
 .site-main .program .accordion{min-width:0}
 .site-main #plans .plans{grid-template-columns:1fr}
 .site-main #plans .plan{padding:26px}
 .site-main .start-grid{grid-template-columns:1fr}
 .site-main .start-grid article{padding:24px}
 .site-main .about-photo{width:85%;max-width:400px;margin:auto}
 .site-main .booking .section-title{padding:26px 22px}
 .site-main .final-secondary{display:block;margin:24px 0 0}
 .site-main #conversation-topics h2{font-size:32px}
 .site-main #why-practise-together h2{font-size:32px}
 .resource-page .eyebrow{font-size:14px}
}
@media(max-width:480px){
 .site-main .wrap{width:calc(100% - 36px)}
 .site-main .problem-grid{grid-template-columns:1fr}
 .site-main .nav-cta{padding:10px 13px;font-size:15px;min-height:44px}
 .site-main .problem-grid article{padding:24px}
 .site-main .steps article{gap:14px;padding:20px}
 .site-main .steps h3{font-size:21px}
 .site-main main details{padding:18px}
 .site-main #plans .plan h3 strong{font-size:40px}
 .site-main .photo-tag{font-size:14px}
}

/* Prominent WhatsApp contact control. */
.site-main .float-wa{width:60px;height:60px;background:#25D366;color:#fff;border:2px solid #fff;box-shadow:0 5px 18px #128c7e55;transition:transform .2s,background .2s}
.site-main .float-wa svg{width:35px;height:35px}
.site-main .float-wa:hover{background:#1ebe5d;transform:scale(1.06)}
.site-main .float-wa:focus-visible{outline:3px solid #003893;outline-offset:4px}
@media(max-width:700px){.site-main .float-wa{width:56px;height:56px}.site-main .float-wa svg{width:33px;height:33px}}

/* Optional introduction before the FAQ, between light and white sections. */
.site-main .intro-call-section{background:var(--saw-blue)}
.site-main .intro-call-option{max-width:760px;margin:0 auto;padding:32px;border:1px solid var(--saw-line);border-top:5px solid var(--saw-yellow);border-radius:var(--saw-radius);background:#fff;text-align:center;box-shadow:var(--saw-blue-shadow)}
.site-main .intro-call-option h3{margin:8px 0 16px}.site-main .intro-call-option .eyebrow{font-size:13px}.site-main .intro-call-option p{margin:12px 0}
.site-main .button.intro-call-button{background:var(--saw-blue);color:#fff;box-shadow:0 4px 0 #00245e;max-width:100%;box-sizing:border-box;text-align:center}
.site-main .button.intro-call-button:hover{background:#0048b8}.site-main .intro-call-button:focus-visible{outline:3px solid var(--saw-blue);outline-offset:4px}
@media(max-width:700px){.site-main .intro-call-option{padding:26px 22px}.site-main .intro-call-button{width:100%}}

/* Equal prominence for the two independent entry paths. */
.site-main .conversion-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;align-items:stretch;max-width:900px}
.site-main .center .conversion-choices,.site-main .final .conversion-choices{margin-left:auto;margin-right:auto}
.site-main .conversion-choices .button{width:100%;box-sizing:border-box;min-height:60px;padding:15px 18px;font-size:16px;line-height:1.5;text-align:center;text-decoration:none}
.site-main .nav-cta.intro-call-button{background:var(--saw-blue);color:white;box-shadow:0 4px 0 #00245e}
.site-main .nav-cta.intro-call-button:hover{background:#0048b8}
.site-main .entry-paths-heading{text-align:center;max-width:800px;margin:0 auto 32px}
.site-main .entry-paths-heading h2,.site-main .entry-paths-heading p{color:#fff}
.site-main .entry-paths-heading .eyebrow{color:var(--saw-yellow)}
.site-main .entry-paths-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.site-main .entry-paths-grid .intro-call-option{max-width:none;width:auto;margin:0;display:flex;flex-direction:column;min-width:0}
.site-main .entry-paths-grid .button{margin-top:auto;min-height:60px;font-size:16px;padding:15px 18px;line-height:1.5;text-decoration:none;box-sizing:border-box}
@media(max-width:1000px){.site-main .nav{flex-wrap:wrap}.site-main .nav nav{flex-wrap:wrap;justify-content:center}}
@media(max-width:700px){.site-main .conversion-choices,.site-main .entry-paths-grid{grid-template-columns:1fr}.site-main .nav nav .nav-cta{font-size:14px;min-height:48px;padding:10px 12px}.site-main .nav nav .intro-call-button{width:auto}}

.site-main .nav nav .nav-cta{width:160px;box-sizing:border-box;text-align:center}
@media(max-width:700px){.site-main .nav nav .nav-cta{width:145px}}

/* WhatsApp appears only in the footer, in normal document flow. */
.site-main footer .float-wa{position:static;right:auto;bottom:auto;flex:0 0 60px;margin:0;z-index:auto}
@media(max-width:700px){.site-main footer .float-wa{flex-basis:56px}}
/* Commercial clarity and consistent, alternating surfaces. */
.site-main .audience-note{font-size:17px;color:var(--saw-blue);line-height:1.65}
.site-main main>.about{background:var(--saw-light)}
.site-main main>.about::before{background:var(--saw-light);box-shadow:0 0 0 100vmax var(--saw-light)}
.site-main main>.club-difference{background:#fff}
.site-main .weekly-preparation{margin:26px 0 0;font-size:17px}
.site-main main>section.soft:has(>.testimonials){background:var(--saw-light)}
.site-main .testimonials h2,.site-main .testimonials p,.site-main .testimonials #student-name{color:var(--saw-blue)}
.site-main .testimonials .eyebrow{color:var(--saw-blue)}
.site-main .intro-call-section{background:var(--saw-light)}
.site-main .entry-paths-heading h2,.site-main .entry-paths-heading p,.site-main .entry-paths-heading .eyebrow{color:var(--saw-blue)}
.site-main .entry-paths-grid .intro-call-option{box-shadow:var(--saw-shadow)}
.site-main .conversion-choices .cta-choice{display:flex;flex-direction:column;min-width:0;text-align:center}
.site-main .conversion-choices .cta-choice .button{flex:0 0 auto;min-height:78px}
.site-main .cta-choice>p{font-size:16px;line-height:1.65;margin:12px 0 0}
.site-main .cta-choice .trial-terms-note{font-size:15px}
.site-main .final .cta-choice>p{color:#fff}
.site-main #conversation-topics .schedule-base{color:var(--saw-yellow);font-weight:600;font-size:18px}
.site-main .schedule-table-wrap{border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--saw-line)}
.site-main .weekly-schedule{width:100%;border-collapse:collapse;color:var(--saw-text);table-layout:fixed;font-size:17px;line-height:1.6}
.site-main .weekly-schedule th,.site-main .weekly-schedule td{padding:18px;text-align:left;overflow-wrap:break-word;border-bottom:1px solid var(--saw-line)}
.site-main .weekly-schedule thead{background:var(--saw-yellow);color:#131b29}
.site-main .weekly-schedule tr:last-child td,.site-main .weekly-schedule tr:last-child th{border-bottom:0}
.site-main .weekly-schedule th:nth-child(1){width:26%}.site-main .weekly-schedule th:nth-child(2){width:44%}
.site-main .visible-schedule .group-schedule{margin-top:30px;padding:26px;background:#fff;border-radius:18px}
.site-main .visible-schedule .group-schedule h3{margin-top:0}
.site-main .visible-schedule .group-schedule p{color:var(--saw-muted);font-size:16px}
.site-main .membership-practice-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}
.site-main .membership-practice-benefits h3{font-size:21px}
.site-main .membership-practice-benefits article{min-width:0}
.site-main .membership-practice-benefits .group-benefit-icon{font-size:28px}
.site-main #plans .practice-benefits{margin-top:30px}
.site-main #plans .practice-benefits p{color:var(--saw-muted)}
.site-main .eyebrow,.site-main .micro{opacity:1}
@media(max-width:700px){
 .site-main .conversion-choices .cta-choice .button{min-height:60px}
 .site-main .conversion-choices{gap:26px}
 .site-main .weekly-schedule{font-size:15px}
 .site-main .weekly-schedule th,.site-main .weekly-schedule td{padding:14px 9px}
 .site-main .weekly-schedule th:nth-child(1){width:28%}.site-main .weekly-schedule th:nth-child(2){width:43%}
 .site-main .visible-schedule .group-schedule{padding:22px 18px}
 .site-main .membership-practice-benefits{grid-template-columns:1fr}
}

.site-main #why-practise-together.club-difference{background:#fff}

/* One shared notice below the two entry cards. */
.site-main .entry-conditions{max-width:900px;margin:24px auto 0;padding:18px 24px;background:#fff;border:1px solid var(--saw-line);border-radius:14px;text-align:center}
.site-main .entry-conditions p{font-size:16px;line-height:1.65;color:var(--saw-muted);margin:0}
.site-main .entry-conditions p+p{margin-top:8px}
@media(max-width:700px){.site-main .entry-conditions{padding:18px}}

/* A single timetable per location: local time, or Colombia fallback. */
.site-main .visible-schedule #session-times-local{padding:0;background:transparent;margin-top:26px}
.site-main #session-times-local .schedule-zone-card{background:#fff;color:var(--saw-blue);box-shadow:none}
.site-main #session-times-local .schedule-zone-card small,.site-main #session-times-local .schedule-zone-card span{color:var(--saw-blue);opacity:1}
.site-main .weekly-schedule small{display:block;font-size:14px;line-height:1.5;margin-top:5px;font-weight:400;color:var(--saw-muted)}
.site-main #schedule-output .schedule-base{color:var(--saw-blue)}
.site-main #schedule-output .weekly-schedule{font-size:16px}
@media(max-width:700px){.site-main .weekly-schedule th:nth-child(1){width:29%}.site-main .weekly-schedule th:nth-child(2){width:39%}.site-main #schedule-output .weekly-schedule{font-size:15px}}

/* Align the schedule explanation with the full timetable width. */
.site-main #conversation-topics .schedule-explanation{max-width:none;width:100%;box-sizing:border-box;margin:24px 0 0;line-height:1.75}
@media(max-width:700px){.site-main #conversation-topics .schedule-explanation{margin-top:20px}}

.site-main .weekly-schedule thead th:last-child{overflow-wrap:anywhere}

/* Explain the two experiences once, then distribute single CTAs. */
.site-main .hero-entry-options{margin-top:28px;display:grid;gap:20px;max-width:620px}
.site-main .hero-entry-options .entry-options-label{font-size:14px;font-weight:700;letter-spacing:1.5px;color:var(--saw-blue);margin:0}
.site-main .hero-entry-option{padding:22px 24px;border:1px solid var(--saw-line);border-radius:18px;background:var(--saw-light);min-width:0}
.site-main .hero-entry-option h3{font-size:21px;margin:0 0 10px}
.site-main .hero-entry-option p{font-size:16px;line-height:1.65;margin:0 0 18px}
.site-main .hero-entry-option .button{min-height:54px;padding:15px 20px;font-size:16px;line-height:1.5;text-align:center;text-decoration:none;max-width:100%;box-sizing:border-box}
.site-main .hero-choice-note{font-size:15px;line-height:1.65;margin:0}
.site-main .single-conversion{margin-top:22px}
.site-main .single-conversion .button{min-height:54px;font-size:16px;text-align:center;line-height:1.5;text-decoration:none;max-width:100%;box-sizing:border-box}
.site-main #plans .entry-conditions{margin-top:30px}
@media(max-width:700px){.site-main .hero-entry-option{padding:22px}.site-main .hero-entry-option .button,.site-main .single-conversion .button{width:100%}.site-main .hero-entry-options{gap:18px}}

.site-main .hero-entry-options{grid-column:1/-1;max-width:none;width:100%;margin-top:0}
.site-main .hero-entry-option{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:center}
.site-main .hero-entry-option h3,.site-main .hero-entry-option p{grid-column:1}
.site-main .hero-entry-option p{margin-bottom:0}
.site-main .hero-entry-option .button{grid-column:2;grid-row:1/span 2;width:285px}
@media(max-width:700px){.site-main .hero-entry-option{grid-template-columns:1fr;gap:0}.site-main .hero-entry-option .button{grid-column:1;grid-row:auto;width:100%;margin-top:18px}}

/* Membership practice benefits stay visible as a regular card. */
.site-main #plans article.practice-benefits{padding:28px;background:#fff;border:1px solid var(--saw-line);border-radius:var(--saw-radius);box-shadow:var(--saw-shadow)}
.site-main #plans article.practice-benefits>h3{margin:0;color:var(--saw-blue);font-size:24px}
@media(max-width:700px){.site-main #plans article.practice-benefits{padding:24px 22px}}

/* The visible practice-benefits card spans both membership columns. */
.site-main #plans .plans>article.practice-benefits{grid-column:1/-1;width:100%;max-width:none;box-sizing:border-box}

/* Full-width practice benefits follow the ROL explanation. */
.site-main .method>article.practice-benefits{grid-column:1/-1;width:100%;max-width:none;box-sizing:border-box;padding:28px;background:#fff;border:1px solid var(--saw-line);border-radius:var(--saw-radius);box-shadow:var(--saw-shadow)}
.site-main .method>article.practice-benefits>h3{margin:0;color:var(--saw-blue);font-size:24px}
@media(max-width:700px){.site-main .method>article.practice-benefits{padding:24px 22px}}

/* Balanced membership and weekly-routine cards. */
.site-main #plans .plans{align-items:stretch}
.site-main #plans .plans>.plan{display:flex;flex-direction:column;height:100%;box-sizing:border-box}
.site-main #plans .plans>.plan>.single-conversion{margin-top:auto;padding-top:22px}
.site-main #plans .plans>.plan>.single-conversion .button{width:100%;min-height:60px}
.site-main #plans .plans>.plan>h3{min-height:60px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}

@media(min-width:701px){.site-main #plans .plans>.plan>p{min-height:90px}}

/* Let wrapped mobile navigation occupy its actual height, then separate the hero. */
@media(max-width:700px){.site-main header .nav{height:auto;min-height:70px;box-sizing:border-box;padding-top:14px;padding-bottom:8px;row-gap:14px}.site-main .hero{padding-top:24px}}

/* A single centered trial CTA after the practice-benefits card. */
.site-main .method>.method-trial-cta{grid-column:1/-1;text-align:center;margin-top:-24px}
.site-main .method-trial-cta .button{min-height:54px;font-size:16px;line-height:1.5;text-align:center;text-decoration:none;max-width:100%;box-sizing:border-box}
@media(max-width:700px){.site-main .method>.method-trial-cta{margin-top:0}.site-main .method-trial-cta .button{width:100%}}

/* The trial invitation finishes the benefits card itself. */
.site-main .practice-benefits>.method-trial-cta{text-align:center;margin-top:28px;padding-top:24px;border-top:1px solid var(--saw-line)}

/* Keep WhatsApp at the end of the page, aligned to the footer's lower right. */
.site-main footer .float-wa{margin-left:auto;align-self:flex-end}

/* End-of-page actions stay in document flow: trial on the left, WhatsApp on the right. */
.site-main>footer{flex-wrap:wrap}
.site-main footer .footer-actions{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;width:100%;flex:0 0 auto;margin-top:16px}
.site-main footer .footer-trial{position:static;flex:1;max-width:380px;min-width:0;min-height:54px;font-size:16px;text-align:center;line-height:1.35}
.site-main footer .footer-actions .float-wa{position:static;align-self:center;margin-left:auto}
@media(max-width:700px){.site-main footer .footer-actions{gap:14px}.site-main footer .footer-trial{padding:14px 12px;font-size:15px}}

/* Repeat the footer actions immediately before the library, without floating. */
.site-main .library-entry-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:28px;padding-bottom:28px}
.site-main .library-entry-actions .footer-trial{position:static;flex:1;max-width:380px;min-width:0;min-height:54px;font-size:16px;text-align:center;line-height:1.35}
.site-main .library-entry-actions .float-wa{position:static;right:auto;bottom:auto;flex:0 0 60px;margin:0 0 0 auto;z-index:auto}
@media(max-width:700px){.site-main .library-entry-actions{gap:14px;padding-top:24px;padding-bottom:24px}.site-main .library-entry-actions .footer-trial{padding:14px 12px;font-size:15px}.site-main .library-entry-actions .float-wa{flex-basis:56px}}

/* White call invitation card contrasts with its blue button and section. */
.site-main #booking .final-call-card{background:#fff;border:1px solid var(--saw-line);border-radius:22px;padding:42px 40px;box-shadow:0 12px 30px #001f5a22;max-width:900px;margin:0 auto}
.site-main #booking .final-call-card h2,.site-main #booking .final-call-card .eyebrow{color:var(--saw-blue)}
.site-main #booking .final-call-card>p:not(.eyebrow){color:var(--saw-text);max-width:720px;margin-left:auto;margin-right:auto}
.site-main #booking .final-call-card .intro-call-button{background:var(--saw-blue);color:#fff}
@media(max-width:700px){.site-main #booking .final-call-card{padding:28px 22px;border-radius:18px}}

/* One floating WhatsApp; the remaining trial CTA stays centered in the footer. */
.site-main footer .footer-actions .float-wa{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));margin:0;z-index:25;flex:none}
@media(max-width:700px){
 .site-main footer .footer-actions{justify-content:center;padding-bottom:70px}
 .site-main footer .footer-trial{flex:0 1 100%;width:100%;max-width:380px;margin-left:auto;margin-right:auto}
 .site-main footer .footer-actions .float-wa{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
}

/* Updated brand name with the retained brand symbol and Poppins typography. */
.site-main .brand-lockup{display:inline-flex;align-items:center;gap:7px;color:var(--saw-blue);font-family:Poppins,Arial,sans-serif;font-size:24px;font-weight:700;line-height:1.15;white-space:nowrap}
.site-main .brand-lockup>img{display:block;width:46px;height:46px;flex:0 0 46px;object-fit:contain}
.site-main header .nav>a{text-decoration:none}
@media(max-width:700px){.site-main header .brand-lockup{display:flex;gap:0}.site-main header .brand-lockup>img{width:36px;height:36px;flex-basis:36px}.site-main header .brand-lockup>span{display:none}}
