/* Mobile-only refinements. Desktop declarations remain untouched. */
@media (max-width:680px){
 body.dom-theme{--dom-gutter:16px;--dom-mobile-title:28px;--dom-mobile-section:24px;--dom-mobile-card:18px;--dom-mobile-body:16px;}
 body.dom-theme :is(.dom-section-heading h2,.dom-ed-heading h2,.dom-news-heading h2,.dom-directory-heading h1,.dom-directory-heading h2,.dom-products-heading h2,.dom-course-section h2,.dom-contact-copy h2,.dom-course-help h2,.dom-prices-callout h3,.dom-learning h2,.dom-services-heading h1,.dom-services-heading h2,.dom-courses-cover h1,.dom-page-banner h1,.dom-page-banner h2){font-family:var(--dom-heading-font,var(--dcf-heading,Arial,sans-serif))!important;font-size:24px!important;font-weight:400!important;line-height:1.25!important;letter-spacing:normal!important;max-width:100%;overflow-wrap:break-word;}
 body.dom-theme :is(.dom-section-heading,.dom-ed-heading,.dom-news-heading){text-align:center;}
 body.dom-theme :is(.dom-section-heading h2,.dom-ed-heading h2,.dom-news-heading h2){max-width:100%!important;}
 body.dom-theme :is(.dom-section-intro,.dom-ed-intro){font-size:16px!important;line-height:1.5!important;}
 body.dom-theme :is(.dom-service-card h3,.dom-direction-copy h3,.dom-help-copy h3,.dom-course-card h3,.dom-feature-card h3){font-size:18px!important;line-height:1.35!important;}
 /* Header: true central logo independent of the burger width. */
 body.dom-theme .dom-header .dom-header-inner{position:relative;min-height:78px;padding:10px 60px!important;justify-content:center!important;gap:0!important;}
 body.dom-theme .dom-header .dom-header-inner>.dom-brand{margin:0 auto!important;align-items:center!important;max-width:100%;}
 body.dom-theme .dom-header .dom-brand img{width:160px!important;max-width:100%!important;max-height:58px!important;height:auto!important;object-fit:contain;}
 body.dom-theme .dom-header .dom-header-actions{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0;gap:0;}
 body.dom-theme .dom-header .dom-burger{width:44px;height:44px;padding:5px;font-size:32px;}
 body.dom-theme .dom-header .dom-burger svg{width:30px;height:30px;stroke-width:2;}
 body.dom-theme #dom-mobile-menu{inset:0 0 auto auto!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - 16px)!important;margin:0!important;padding:48px 20px 36px!important;overflow-y:auto;box-sizing:border-box;}
 body.dom-theme #dom-mobile-menu .dom-mobile-booking .dom-button{justify-content:center;text-align:center;}
 body.dom-theme #dom-mobile-menu .dom-drawer-socials{margin-bottom:0;}
 /* Booking colour panels only; form labels retain their alignment. */
 body.dom-theme :is(.dom-course-booking-intro,.dom-product-order-intro){align-items:center!important;text-align:center!important;}
 body.dom-theme :is(.dom-course-booking-intro,.dom-product-order-intro) :is(h2,p,strong){text-align:center!important;max-width:100%;}
 body.dom-theme .dom-course-booking-intro h2,body.dom-theme .dom-product-order-intro h2{font-size:24px!important;line-height:1.25!important;}
 body.dom-theme .dom-course-booking-intro .dom-course-booking-name{font-size:18px!important;line-height:1.4!important;}
 body.dom-theme :is(.dom-course-booking-rule,.dom-product-rule){margin-inline:auto;}
 body.dom-theme .dom-course-page .dom-course-info{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:16px;}
 body.dom-theme .dom-course-page .dom-course-info>div{min-width:0;padding:10px 0!important;border:0!important;border-bottom:1px solid #eee!important;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:14px;align-items:baseline;}
 body.dom-theme .dom-course-info>div span{font-size:13px!important;line-height:1.4;margin:0;}
 body.dom-theme .dom-course-info>div strong{font-size:16px!important;line-height:1.4;text-align:right;overflow-wrap:anywhere;}
 body.dom-theme .dom-course-page .dom-course-info>.dom-button{width:100%;margin:16px 0 0!important;justify-content:center;box-sizing:border-box;}
 body.dom-theme .dom-course-page .dom-course-info>.dom-button:before{display:none;}
 /* Price immediately below its cover. */
 body.dom-theme .dom-page-banner:has(+.dom-canvas .dom-price_list),body.dom-theme .dom-page-banner:has(+.dom-native .dom-prices-table){margin-bottom:0!important;}
 body.dom-theme:has(.dom-prices-table) .dom-native,body.dom-theme .dom-price_list{padding-top:12px!important;margin-top:0!important;}
 body.dom-theme .dom-prices-heading:empty{display:none;}
 body.dom-theme .dom-prices-table{margin-top:0!important;}
 body.dom-theme .dom-prices-table tr:first-child{padding-top:0;}
 body.dom-theme .dom-prices-table .dom-prices-action{text-align:center!important;}
 body.dom-theme .dom-prices-table .dom-prices-order{display:flex!important;justify-content:center!important;align-items:center;gap:16px;width:min(100%,280px)!important;margin:8px auto 0!important;border:1px solid var(--dom-cta-bg,#603640)!important;border-radius:8px!important;padding:11px 18px!important;text-align:center!important;color:var(--dom-cta-bg,#603640)!important;background:transparent!important;}
 /* Profile and directory. */
 body.dom-theme .dom-profile-crumbs{display:none!important;}
 body.dom-theme .dom-profile-hero h1{font-size:28px!important;line-height:1.2!important;text-align:center;margin-bottom:14px!important;max-width:none;}
 body.dom-theme .dom-mobile-surname,body.dom-theme .dom-mobile-given{display:block;}
 body.dom-theme .dom-profile-hero :is(.dom-eyebrow,.dom-profile-specialization){text-align:center!important;}
 body.dom-theme .dom-profile-specialization{font-size:16px!important;line-height:1.5!important;}
 body.dom-theme .dom-profile-hero .dom-button{display:flex;width:100%;box-sizing:border-box;justify-content:center;text-align:center;background:var(--dom-cta-bg,#603640)!important;color:#fff!important;border-color:var(--dom-cta-bg,#603640)!important;}
 body.dom-theme .dom-directory .dom-directory-grid{grid-template-columns:minmax(0,1fr);}
 body.dom-theme .dom-directory-card{text-align:center;}
 body.dom-theme .dom-directory .dom-directory-photo{width:min(100%,320px);margin-inline:auto;}
 body.dom-theme :is(.dom-course-help,.dom-contact-copy,.dom-question-banner,.dom-prices-callout-copy){text-align:center!important;}
 body.dom-theme .dom-course-help>div{max-width:none!important;}
 body.dom-theme :is(.dom-course-help,.dom-question-banner,.dom-contact-copy,.dom-prices-callout-copy) .dom-button{justify-content:center;margin-inline:auto;}
 body.dom-theme .dom-prices-contact{margin-inline:auto;justify-content:center;}
 /* Shop: controls vertically aligned, native iOS blue removed. */
 body.dom-theme .dom-product-page .dom-product-price{text-align:center;}
 body.dom-theme .dom-product-page .dom-product-quantity-row{flex-direction:column;align-items:center!important;gap:16px;}
 body.dom-theme .dom-product-page .dom-product-quantity-row>label{text-align:center;}
 body.dom-theme .dom-product-page .dom-product-quantity-row>.dom-product-button{align-self:center!important;min-width:220px;justify-content:center;}
 body.dom-theme .dom-product-stepper button{color:var(--dom-cta-bg,#603640)!important;background:#f8f4f5!important;}
 body.dom-theme .dom-product-button{background:var(--dom-cta-bg,#603640)!important;color:#fff!important;}
 body.dom-theme .dom-product-card-bottom{justify-content:center;text-align:center;flex-direction:column;gap:12px;}
 /* Footer accordions are enhanced only on mobile; without JS links stay visible. */
 body.dom-theme .dom-reference-footer{padding:28px 16px 20px!important;text-align:center;}
 body.dom-theme .dom-reference-footer .dom-reference-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:20px!important;}
 body.dom-theme .dom-reference-footer .dom-reference-identity{width:100%!important;max-width:none!important;text-align:center;}
 body.dom-theme .dom-reference-footer .dom-footer-logo{justify-content:center;margin:auto;}
 body.dom-theme .dom-reference-footer .dom-reference-description{width:100%;max-width:none;text-align:center!important;font-size:14px!important;line-height:1.6;}
 body.dom-theme .dom-reference-footer .dom-reference-grid>.dom-footer-column{padding:0!important;border-left:0!important;}
 body.dom-theme .dom-reference-footer nav.dom-footer-column{border-bottom:1px solid #e8dfe1;padding-bottom:12px!important;}
 body.dom-theme .dom-reference-footer nav.dom-footer-column h2{margin:0!important;}
 body.dom-theme .dom-mobile-footer-toggle{font:inherit!important;color:inherit!important;display:flex;justify-content:center;align-items:center;gap:12px;background:transparent!important;border:0!important;border-radius:0!important;padding:10px!important;width:100%;min-height:44px;}
 body.dom-theme .dom-mobile-footer-toggle:after{content:'⌄';font-size:20px;}
 body.dom-theme .dom-mobile-footer-toggle[aria-expanded=true]:after{transform:rotate(180deg);}
 body.dom-theme .dom-reference-footer nav[data-mobile-collapsed=true]>:not(h2){display:none!important;}
 body.dom-theme .dom-reference-footer .dom-menu{align-items:center!important;gap:0!important;}
 body.dom-theme .dom-reference-footer .dom-menu a{padding:10px 0!important;min-height:40px!important;font-size:14px!important;}
 body.dom-theme .dom-reference-footer .dom-footer-help{padding:20px!important;}
 body.dom-theme .dom-reference-footer .dom-reference-contacts{justify-self:stretch!important;text-align:center;}
 body.dom-theme .dom-reference-footer .dom-footer-actions{justify-content:center;}
 body.dom-theme .dom-reference-footer .dom-reference-bottom{justify-content:center!important;align-items:center;gap:14px;}
 body.dom-theme .dom-reference-footer .dom-reference-legal{justify-content:center!important;flex-wrap:wrap;gap:10px 0;}
 body.dom-theme .dom-reference-footer .dom-reference-legal a{white-space:normal;}
 /* One specialist at a time, including previously selected grid variants. */
 body.dom-theme .dom-team .dom-section-heading h2{text-transform:uppercase;font-size:24px!important;}
 body.dom-theme .dom-team .dom-section-intro{font-size:16px!important;line-height:1.45!important;text-align:center;}
 body.dom-theme .dom-team .dom-staff .dom-staff-track{display:grid!important;grid-auto-flow:column!important;grid-template-columns:none!important;grid-auto-columns:100%!important;overflow-x:auto!important;gap:16px;}
 body.dom-theme .dom-team .dom-staff-photo{width:min(100%,320px);margin:auto;}
 body.dom-theme .dom-team{padding-bottom:16px!important;}
 body.dom-theme .dom-team+.dom-section{padding-top:20px!important;}
 body.dom-theme .dom-team .dom-staff-controls{left:0!important;right:0!important;}
 /* Direction link has its own single centered line. */
 body.dom-theme .dom-directions .dom-section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;}
 body.dom-theme .dom-directions .dom-section-heading .dom-text-link{max-width:none!important;white-space:nowrap;font-size:14px!important;min-height:44px;}
 body.dom-theme .dom-directions>.dom-mobile-direction-link{display:flex;justify-content:center;align-items:center;gap:10px;margin:18px auto 0;font-size:14px;white-space:nowrap;}
 /* Compact hero, photo below copy; no desktop text changes. */
 body.dom-theme .dom-atmosphere-scene{display:flex;flex-direction:column;min-height:0;}
 body.dom-theme .dom-atmosphere-copy{width:100%;padding:28px 16px!important;text-align:center;background:#faf7f4;}
 body.dom-theme .dom-atmosphere-copy h1{font-family:var(--dom-heading-font,var(--dcf-heading,Arial,sans-serif))!important;font-size:32px!important;line-height:1.15!important;letter-spacing:normal!important;max-width:380px;margin:0 auto 18px!important;}
 body.dom-theme .dom-atmosphere-copy h1 br{display:none;}
 body.dom-theme .dom-atmosphere-body{font-size:16px!important;line-height:1.5!important;margin:0 auto 22px;max-width:360px;}
 body.dom-theme .dom-atmosphere-photo{position:relative;inset:auto;order:2;width:100%;height:220px;z-index:0;}
 body.dom-theme .dom-atmosphere-photo img{object-position:right center;}
 body.dom-theme .dom-atmosphere .dom-button{font-size:15px;padding:12px 20px;justify-content:center;}
 body.dom-theme .dom-atmosphere-features{padding:20px 16px;}
 body.dom-theme .dom-header.dom-chrome-header .dom-header-inner{display:flex!important;}
 body.dom-theme .dom-header .dom-header-identity{margin:0 auto!important;justify-content:center!important;grid-column:auto!important;}
 body.dom-theme .dom-header .dom-header-brand,body.dom-theme .dom-header .dom-header-brand .dom-brand{display:flex;justify-content:center;align-items:center!important;}
 body.dom-theme .dom-header .dom-header-tools{position:static!important;width:0;}
 body.dom-theme .dom-ed-title{font-size:24px!important;line-height:1.25!important;font-weight:400!important;letter-spacing:normal!important;text-align:center;}
 body.dom-theme .dom-question-banner-copy h2{font-size:24px!important;line-height:1.25!important;}
 body.dom-theme .dom-question-banner-inner{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 16px;}
 body.dom-theme .dom-question-banner-action{justify-self:center;width:100%;}
 body.dom-theme .dom-question-banner .dom-question-banner-button{justify-content:center!important;min-width:0;width:100%;box-sizing:border-box;}
 body.dom-theme .dom-profile-portrait{width:220px!important;height:220px!important;max-width:100%;aspect-ratio:1;margin:0 auto!important;}
 body.dom-theme .dom-learning h2{text-align:center;font-size:24px!important;line-height:1.25!important;}
 body.dom-theme .dom-course-help .dom-button{display:flex;max-width:100%;width:fit-content;}
 body.dom-theme .dom-prices-heading h2{font-size:24px!important;line-height:1.25!important;}
}

/* 1.8.124: compact mobile catalogue, typography and footer. Hero is unchanged. */
@media(max-width:680px){
 body.dom-theme.dom-theme :is(.dom-section:not(.dom-hero):not(.dom-atmosphere) h2[data-field="title"],.dom-section-heading h2,.dom-ed-title,.dom-ed-heading h2,.dom-news-heading h2,.dom-learning h2,.dom-courses-heading h2,.dom-services h1,.dom-services-heading h1,.dom-services-heading h2,.dom-directory-heading h1,.dom-directory-heading h2,.dom-products-heading h2,.dom-course-section h2){font-size:28px!important;font-family:var(--dom-heading-font,Arial,sans-serif)!important;font-weight:400!important;line-height:1.25!important;letter-spacing:normal!important;max-width:100%!important;}
 body.dom-theme.dom-theme .dom-circles h2{font-size:26px!important;line-height:1.25!important;}
 body.dom-theme.dom-theme .dom-circles header{margin-bottom:20px;}
 body.dom-theme.dom-theme .dom-circles-wrap{padding:0 22px;}
 body.dom-theme.dom-theme .dom-circles-track{gap:10px;padding:4px 0 10px;}
 body.dom-theme.dom-theme .dom-circle-card{flex:0 0 calc((100% - 20px)/3)!important;min-width:0!important;max-width:calc((100% - 20px)/3);}
 body.dom-theme.dom-theme .dom-circle-photo{width:100%!important;height:auto!important;aspect-ratio:1;padding:3px;}
 body.dom-theme.dom-theme .dom-circle-label{font-size:12px!important;line-height:1.35!important;margin-top:10px;overflow-wrap:break-word;}
 body.dom-theme.dom-theme .dom-circles-arrow{top:4px;width:20px;height:clamp(44px,22vw,100px);font-size:30px!important;}
 body.dom-theme.dom-theme .dom-profile-aside{text-align:center!important;}
 body.dom-theme.dom-theme .dom-profile-aside :is(h2,p,strong){text-align:center!important;}
 body.dom-theme.dom-theme :is(.dom-profile-aside,.dom-profile-booking,.dom-booking-form,.dom-contact-form,.dom-course-booking-form,.dom-form) .dom-button,
 body.dom-theme.dom-theme main :is(.dom-button,.dom-product-button):not(.dom-hero *):not(.dom-atmosphere *){background:var(--dom-cta-bg,#603640)!important;color:#fff!important;border-color:var(--dom-cta-bg,#603640)!important;justify-content:center!important;text-align:center!important;gap:12px;}
 body.dom-theme.dom-theme :is(.dom-profile-aside,.dom-profile-booking,.dom-booking-form,.dom-contact-form,.dom-course-booking-form,.dom-form) .dom-button{display:flex!important;width:100%!important;box-sizing:border-box;}
 body.dom-theme.dom-theme :is(.dom-button,.dom-product-button)>span{color:inherit;}
 body.dom-theme.dom-theme .dom-prices-table tbody th{text-align:center!important;}
 body.dom-theme.dom-theme .dom-prices-table .dom-prices-order{width:100%!important;max-width:none!important;justify-content:center!important;text-align:center!important;box-sizing:border-box;background:transparent!important;color:var(--dom-cta-bg,#603640)!important;border:1px solid var(--dom-cta-bg,#603640)!important;}
 body.dom-theme.dom-theme .dom-reference-footer{padding:28px 16px 20px!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-reference-grid{gap:16px!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-reference-identity{width:100%!important;max-width:none!important;padding:0!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-footer-logo{display:flex!important;justify-content:center!important;width:100%!important;max-width:none!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-footer-logo img{width:190px!important;max-width:80%!important;height:auto!important;max-height:none!important;object-fit:contain;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-reference-description{display:block;width:100%!important;max-width:none!important;margin:16px 0 8px!important;padding:0!important;font-size:14px!important;line-height:1.55!important;letter-spacing:normal!important;text-align:center!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-footer-help{border:0!important;border-radius:0!important;padding:12px 0!important;background:transparent!important;}
 body.dom-theme.dom-theme .dom-reference-footer .dom-reference-bottom{margin-top:20px!important;}
}
