/* Shared mobile layout safeguards. Loaded after page styles. */
@media(max-width:760px){
body{overflow-wrap:break-word}
main,section,article,aside,form,.hero-copy,.detail-editorial,.course-card-copy{min-width:0}
input,select,textarea{max-width:100%;box-sizing:border-box;font-size:16px}
button,a{-webkit-tap-highlight-color:transparent}
.hero-highlights,.hero-tags,.detail-tags,.course-tags,.course-filters{flex-wrap:wrap}
.relationship-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding-top:22px}
.relationship-hero .hero-copy{width:100%;min-width:0;text-align:left}
.relationship-hero .hero-copy>.eyebrow{max-width:none;line-height:1.8}
.relationship-hero h1{max-width:none;font-size:clamp(30px,7.5vw,43px);line-height:1.16;overflow-wrap:normal;margin:13px 0 18px}
.relationship-hero p.hero-summary{max-width:none;font-size:14px;line-height:1.8}
.relationship-hero .relationship-illustration{position:relative;inset:auto;right:auto;top:auto;width:100%;min-height:165px;margin:0;transform:none;align-self:center}
.relationship-hero .relationship-mandala{width:170px;height:170px;max-width:none}
.relationship-hero .relationship-illustration:before{width:130px;height:130px}
.relationship-hero .relationship-illustration img{width:118px;height:118px;box-shadow:none}
.relationship-hero .relationship-illustration .art-star{display:none}
.relationship-hero .hero-highlights li{max-width:100%;white-space:normal}
.relationship-hero .hero-text-link{margin-top:18px}
.booking-column,.booking-summary,.personalise-summary,.course-info{position:static;max-width:100%;min-width:0}
.detail-layout,.course-detail-layout,.booking-layout,.personalise-layout,.calendar-layout{min-width:0}
.course-card{aspect-ratio:auto;min-height:345px;display:flex;flex-direction:column}
.course-card-copy{position:relative;inset:auto;margin-top:auto;padding:20px 22px}
.course-card-top{flex-wrap:wrap;gap:10px}
.course-symbol{height:140px;width:42%;top:50px;right:5%;opacity:.55}
.course-card .course-overlay{background:linear-gradient(0deg,var(--course-color) 42%,transparent 100%)}
.course-detail-hero{grid-template-columns:1fr}
.course-detail-layout{grid-template-columns:1fr}
.course-detail-art{min-width:0}
.course-next,.booking-location{flex-wrap:wrap}
.footer-legal{flex-wrap:wrap}
}
@media(max-width:480px){
.wrap{padding-left:22px;padding-right:22px}
.hero-copy .actions{gap:16px;flex-wrap:wrap}
.hero-copy .actions .btn{max-width:100%}
.relationship-hero .hero-highlights{gap:7px}
.relationship-hero .hero-highlights li{font-size:10px;padding:6px 10px}
.booking-benefits{grid-template-columns:1fr}
.fit-comparison,.session-steps{grid-template-columns:1fr}
.step-label{gap:8px}.step-painting{width:70px;height:70px}
.landscape-home .how .steps{gap:28px 20px}
.landscape-home .how .step h3{font-size:21px}
.landscape-home .how-bottom{align-items:flex-start;gap:13px}
}
@media(max-width:700px){
.sidebar{flex-wrap:wrap;align-items:flex-start}
.sidebar>.admin-brand{width:100%;margin-bottom:8px}
.sidebar .sidebar-bottom{width:100%;margin-top:0;padding:8px}
.sidebar .nav-item{margin-bottom:0;padding:9px 11px}
.sidebar>div:not(.sidebar-bottom){min-width:0;max-width:100%}
.topbar,.section-heading,.tools,.topbar-actions{flex-wrap:wrap}
.tools input{max-width:100%;min-width:0}
}
@media(max-width:360px){
header .nav{gap:7px}
header .nav .approved-brand{width:110px;min-width:0;max-width:110px}
header .nav .menu{padding:8px 9px}
header .nav .login-trigger{padding:8px 9px;gap:4px}
header .nav .login-wrap{flex-shrink:0;gap:4px}
}
@media(max-width:480px){.booking-panel h2{font-size:28px;line-height:1.25;overflow-wrap:normal}.booking-panel h2 br{display:none}}
