/* Shared phone and tablet layout. Desktop presentation is preserved. */
.menu-toggle{display:none}
@media(max-width:900px){
 body{overflow-wrap:break-word}
 nav{flex-wrap:wrap;align-items:center;gap:12px;padding:14px 6%}
 nav .brand{font-size:18px;letter-spacing:.4px;max-width:calc(100% - 90px)}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:78px;min-height:44px;padding:9px 12px;border:1px solid #bcacd1;border-radius:8px;background:#fcfaff;color:#241043;font:600 14px Arial,sans-serif;cursor:pointer}
 nav .links{display:none;flex:0 0 100%;width:100%;max-width:none;gap:0;flex-direction:column;align-items:stretch;padding:8px 0 0;border-top:1px solid #ded3ef;font-size:15px}
 nav .links.is-open{display:flex}
 nav .links a{display:flex;align-items:center;min-height:46px;padding:10px 8px;border-radius:6px;text-decoration:none}
 nav .links a:hover,nav .links a:focus-visible{background:#eee6fa}
 .hero,.intro,.faq,.prepare,.about-cindy,.service-grid,.service-two,.group-columns{grid-template-columns:minmax(0,1fr);gap:28px}
 .hero{min-height:auto;padding:36px 6% 44px}
 .hero h1{font-size:clamp(40px,8vw,64px);letter-spacing:-1.8px}
 .section,.service-hero{padding:52px 6%}
 h2{font-size:clamp(32px,6.8vw,46px);letter-spacing:-1.2px}
 .service-hero h1,.group-hero h1,.article h1,.blogwrap h1{font-size:clamp(36px,7.7vw,58px);letter-spacing:-1.4px;line-height:1.14}
 .grid{grid-template-columns:minmax(0,1fr);gap:26px;margin-top:28px}
 .section-head{display:block}
 .panel,.service-card{padding:24px;min-width:0}
 .service-card h3{font-size:30px}
 .btn{min-height:48px;max-width:100%;padding:13px 20px;text-align:center;font-size:15px;white-space:normal}
 .hero .btn,.service-card .btn,.group-cta .btn{width:100%}
 .hero .textlink{display:block;margin:12px 0 0;padding:10px 0;min-height:44px}
 .caption{font-size:9px;letter-spacing:.5px;gap:12px;flex-wrap:wrap}
 .art{max-width:560px}.portrait,.pauline-portrait{max-width:320px}
 .profile-link a{overflow-wrap:anywhere}
 .ribbon{font-size:10px;gap:10px;letter-spacing:.5px;padding:18px 5%;flex-wrap:wrap}
 .quote{padding:52px 6%}
 summary{font-size:21px;min-height:44px}
 select,textarea{font-size:16px;max-width:100%}
 .blogwrap,.article,.group-wrap{width:auto;max-width:100%;margin-left:auto;margin-right:auto}
 .postlist,.facts,.outcomes{grid-template-columns:minmax(0,1fr)}
 footer{flex-direction:column;gap:22px;padding:30px 6%}
 footer .brand{white-space:normal}
 main>*,section>*,.service-wrap>*{min-width:0}
 img{max-width:100%}
 .pauline-portrait img{max-width:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:900px){.group-hero .btn{display:block;width:100%}.group-hero .textlink{display:block;margin:12px 0 0;padding:10px 0;min-height:44px}}

.hero-cindy-photo{display:none}
@media(max-width:900px){.hero-cindy-photo{display:block;width:160px;height:192px;object-fit:cover;object-position:center;border-radius:18px;margin:24px 0 12px;box-shadow:0 10px 28px #49257520}}

/* Shared Services navigation submenu. */
nav .services-menu{position:relative;border:0;padding:0;margin:0}
nav .services-menu>summary{font:inherit;line-height:inherit;min-height:0;padding:0;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}
nav .services-menu>summary::-webkit-details-marker{display:none}
nav .services-menu>summary::after{content:'⌄';font-size:14px}
nav .services-menu[open]>summary::after{content:'⌃'}
nav .services-submenu{position:absolute;top:calc(100% + 14px);left:0;z-index:100;min-width:225px;display:flex;flex-direction:column;gap:0;padding:8px;background:#fcfaff;color:#283e36;border:1px solid #ded3ef;border-radius:10px;box-shadow:0 10px 28px #24104318}
nav .services-submenu a{display:block;padding:12px;border-radius:6px;white-space:nowrap}
nav .services-submenu a:hover,nav .services-submenu a:focus-visible{background:#eee6fa}
nav .services-menu>summary:focus-visible{outline:2px solid #6734c6;outline-offset:5px;border-radius:3px}
@media(max-width:900px){nav .services-menu>summary{padding:10px 8px;min-height:46px;justify-content:space-between}nav .services-submenu{position:static;min-width:0;margin:0 0 8px 14px;box-shadow:none;border-left:2px solid #bcacd1;border-top:0;border-right:0;border-bottom:0;border-radius:0;padding:0 0 0 10px}nav .services-submenu a{white-space:normal}}
