/* Community, editable testimonials and footer share the site theme tokens. */
.testimonials-heading{max-width:650px}.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.testimonial{margin:0;padding:28px;background:var(--surface);border-radius:12px;overflow-wrap:anywhere}.testimonial blockquote{margin:0}.testimonial blockquote p{font-size:1rem;line-height:1.8;margin-bottom:26px}.testimonial figcaption{display:flex;flex-direction:column;gap:6px;font-size:.88rem}.testimonial figcaption>span{color:var(--muted)}.testimonial .review-rating{color:var(--clay);letter-spacing:3px}
.site-footer{display:block;background:var(--subtle,var(--sage));border-top:1px solid var(--line);padding:56px 0 24px;color:var(--ink);font-size:.9rem}
.site-footer .footer-top{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-bottom:40px;border-bottom:1px solid var(--line)}
.footer-brand{font-family:var(--display);font-size:1.7rem;font-weight:600;letter-spacing:-.03em;text-decoration:none}.footer-intro p{max-width:38ch;margin:18px 0 22px}.footer-signup h2{font-size:1.55rem;margin-bottom:12px}.footer-signup p{font-size:.9rem}
.newsletter-fields{display:flex;gap:10px;align-items:stretch}.newsletter-fields input{flex:1;min-width:0}.site-footer input[type=email],.editor-form input:not([type=checkbox]),.editor-form textarea,.editor-form select{border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:12px 14px;font:inherit;width:100%}
.newsletter-fields .btn{flex-shrink:0}.site-footer label{display:block;margin-bottom:8px}.newsletter-consent{display:flex!important;align-items:flex-start;gap:10px;margin-top:14px;font-size:.8rem;line-height:1.6;color:var(--muted)}.newsletter-consent input{flex:0 0 18px;width:18px;height:18px;margin-top:3px}.newsletter-consent span{display:inline;margin:0}.newsletter-consent a{display:inline}
.newsletter-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.newsletter-feedback{min-height:1.6em;margin:12px 0 0;font-size:.85rem}
.footer-links{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:40px;padding-block:36px}.footer-links h3{font-size:1rem;margin-bottom:16px}.footer-links nav{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.footer-links a{display:inline-flex;align-items:center;min-height:36px;text-underline-offset:4px}.footer-links p{font-size:.88rem}.payment-methods{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.payment-methods span{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:7px 11px;font-size:.8rem;margin:0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:24px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.footer-bottom span{margin:0}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}
.editor-form{padding:24px;background:var(--subtle);border-radius:12px;margin:24px 0}.editor-form h3{font-size:1.25rem}.editor-form label{display:block;margin-bottom:18px;font-size:.88rem}.editor-form input,.editor-form textarea,.editor-form select{display:block;margin-top:7px}.editor-form textarea{resize:vertical;min-height:150px}.editor-form .editor-check{display:flex;align-items:center;gap:10px}.editor-check input{width:18px;height:18px;margin:0}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor-actions,.review-row-actions{display:flex;flex-wrap:wrap;gap:10px}.review-editor-row{padding:24px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.review-editor-row .pill{margin-left:12px}.review-editor-row p{white-space:pre-wrap;margin-top:15px}.review-row-actions{margin-top:18px}.community-status{min-height:1.5em;font-size:.9rem}.community-status:empty{display:none}
.newsletter-result{margin:0;padding:24px;font:17px/1.7 "Segoe UI",sans-serif;background:var(--paper,#f7f8f3);color:var(--ink,#252b28)}.newsletter-result main{max-width:640px;margin:12vh auto}.newsletter-result h1{line-height:1.2;font-size:2.4rem;margin-top:32px}.newsletter-result a{color:inherit}.newsletter-result .btn{border:0;border-radius:100px;padding:14px 24px;min-height:48px;font:inherit;cursor:pointer}.newsletter-result p{color:var(--muted,#586159)}
@media(max-width:1000px){.testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer .footer-top{gap:32px}.newsletter-fields{flex-wrap:wrap}.newsletter-fields input{flex-basis:100%}}
@media(max-width:700px){.site-footer{padding-top:36px}.site-footer .footer-top{grid-template-columns:1fr;gap:32px}.footer-links{grid-template-columns:1fr 1fr;gap:28px}.footer-payments{grid-column:1/-1}.testimonials-grid{grid-template-columns:1fr;gap:16px}.testimonial{padding:24px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}.editor-grid{grid-template-columns:1fr;gap:0}.editor-form{padding:18px}.newsletter-fields .btn{width:100%}.newsletter-fields input{font-size:16px}}
@media(max-width:380px){.footer-links{grid-template-columns:1fr}.footer-payments{grid-column:auto}.editor-actions .btn,.review-row-actions .btn{width:100%}}

/* Reviews: readable excerpts, full text available by keyboard, no stretched empty cards. */
.testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}
.testimonial{min-width:0;padding:28px 32px;border-radius:12px}
.testimonial blockquote p{margin:0 0 20px;line-height:1.75;white-space:pre-line}
.testimonial .review-quote.is-collapsed{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.review-more{display:inline-flex;align-items:center;min-height:44px;border:0;padding:0 0 8px;background:none;color:var(--green);font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.review-more:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.testimonial figcaption{padding-top:16px;border-top:1px solid var(--line);gap:5px}
.testimonial figcaption>span{line-height:1.55}
.review-editor-row{min-width:0}.review-row-actions .btn{white-space:normal}
@media(max-width:700px){.testimonials-grid{grid-template-columns:1fr;gap:16px}.testimonial{padding:24px}.testimonials-heading h2{font-size:clamp(1.8rem,7vw,2.5rem)}}

#coaching-card .appointment-list{list-style:none;padding:0;margin:16px 0}#coaching-card .appointment-heading{margin-top:32px}
#coaching-card .appointment-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);min-width:0}
#coaching-card .appointment-row>div{min-width:0}#coaching-card .appointment-row p{margin:6px 0 0}#coaching-card .appointment-row h3{margin:0}#coaching-card .appointment-row .btn{flex-shrink:0;white-space:normal;text-align:center}
#coaching-calendar{scroll-margin-top:96px}#coaching-calendar:empty{display:none}
@media(max-width:700px){#coaching-card .appointment-row{align-items:flex-start;flex-direction:column}#coaching-card .appointment-row .btn{width:100%}}
