/* 1.0.2: shared visual density. Content, behaviour and brand colours unchanged. */
body, .editor-styles-wrapper { font-size: 16px; line-height: 1.5; }
:is(.mala-home,.mala-page,.editor-styles-wrapper) h1 { font-size: clamp(1.85rem,3vw,2.65rem); }
:is(.mala-home,.mala-page,.editor-styles-wrapper) h2 { font-size: clamp(1.4rem,2.1vw,1.85rem); }
:is(.mala-home,.mala-page,.editor-styles-wrapper) h3 { font-size: 1.125rem; }
:is(.mala-home,.mala-page,.editor-styles-wrapper) p { margin-bottom: .85em; }
.mala-lead { font-size: clamp(1.05rem,1.5vw,1.2rem); }
.mala-header { padding: 12px 24px; gap: 16px; }
.mala-brand { flex-basis: 150px; }
.mala-brand img { width: 150px; }
.mala-button,.wp-block-button__link,.mala-header > .mala-button { font-size: 15px; padding: 9px 18px; min-height: 44px; gap: 12px; }
.mala-page { padding-block: 16px; }
:is(.mala-home,.mala-home-en-101,.mala-admissions) .mala-section,
.mala-program-page .mp-section,.mala-about-page .ma-section,
.mala-parents-page .pr-section,.mala-gallery-page .mg-section,
.mala-contact-page :is(.mc-section,.mc-map,.mc-form-section),
.editor-styles-wrapper .mala-section { padding: clamp(16px,1.8vw,24px); margin-block: 14px; }
:is(.mala-program-page,.mala-about-page,.mala-parents-page,.mala-gallery-page,.mala-contact-page,.mala-admissions) > * { margin-block: 14px; }
:is(.mala-home,.mala-home-en-101,.mala-admissions) .mala-hero { padding: 0; margin-top: 0; }
.mala-hero .mala-copy { padding: 24px; }
.mala-hero .mala-copy + .mala-copy { padding: 0; }
.mala-columns { gap: 24px; }
.mala-hero .mala-columns { gap: 0; }
:is(.mala-home,.mala-home-en-101) .mala-funding { padding: 18px 24px; }
.mala-funding h2,.mala-home-en-101 .mala-funding h2 { margin-block: 6px 10px; }
.mala-funding p:last-child { margin-bottom: 0; }
.mala-funding .mala-eyebrow { margin-bottom: 6px; font-size: 12px; }
:is(.mala-home,.mala-home-en-101) .mala-benefits { padding: 8px 0; }
.mala-benefits .mala-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.mala-benefit { padding: 16px; grid-template-columns: 36px minmax(0,1fr); column-gap: 10px; align-content: start; border-radius: 16px; }
.mala-benefit::before { width: 34px; height: 34px; background-size: 24px; }
.mala-benefit h3 { font-size: 1rem; margin: 0 0 6px; }
.mala-benefit p { font-size: .9375rem; line-height: 1.45; margin: 0; }
.mala-tabs { margin: 16px 0 20px; }
.mala-tabs button,.mala-program-page .mp-tabs button { padding: 9px 16px; min-height: 44px; }
.mala-audience-panel .mala-feature-title { margin: 16px 0 6px; }
.mala-home-en-101 .mala-age-card,.mala-support-card,.mala-step,.mala-extra-card,
.mala-program-page :is(.mp-age-card,.mp-routine-group,.mp-extra),
.mala-about-page :is(.ma-message,.ma-team-placeholder),
.mala-parents-page .pr-card,.mala-contact-page .mc-card { padding: 16px; }
.mala-program-page .mp-area { padding: 14px 10px; }
.mala-program-page .mp-routine-group { margin-top: 14px; }
.mala-parents-page .pr-practical { margin-bottom: 16px; }
.mala-gallery-page .mg-grid { gap: 14px; }
.mala-contact-page button { padding: 10px 18px; min-height: 44px; }
.mala-footer { margin-top: 36px; padding: 28px 24px 20px; gap: 20px; }
@media(max-width: 1000px) {
 .mala-benefits .mala-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width: 700px) {
 .mala-header { padding: 8px 12px; gap: 6px 8px; }
 .mala-brand,.mala-brand img { width: 112px; flex-basis: 112px; }
 .mala-menu-toggle { min-height: 44px; padding: 8px; font-size: 14px; }
 .mala-language { gap: 6px; font-size: 14px; align-items: center; }
 .mala-language a { min-width: 28px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
 .mala-header > .mala-button { margin-left: auto; padding: 8px 16px; min-height: 44px; }
 .mala-nav a,.mala-nav span { padding: 10px 8px; }
 :is(.mala-home,.mala-home-en-101,.mala-admissions) .mala-section,
 .mala-program-page .mp-section,.mala-about-page .ma-section,
 .mala-parents-page .pr-section,.mala-gallery-page .mg-section,
 .mala-contact-page :is(.mc-section,.mc-map,.mc-form-section) { margin-block: 12px; padding: 16px; }
 :is(.mala-home,.mala-home-en-101,.mala-admissions) .mala-hero { padding: 0; }
 .mala-hero .mala-copy { padding: 20px; }
 .mala-hero .mala-copy + .mala-copy { padding: 0; }
 :is(.mala-home,.mala-home-en-101) .mala-benefits { padding: 0; }
 .mala-benefit { padding: 12px; grid-template-columns: 1fr; gap: 6px; }
 .mala-benefit::before { grid-row: auto; }
 .mala-footer { margin-top: 20px; }
}
@media(max-width: 380px) {
 .mala-benefits .mala-grid { grid-template-columns: 1fr; gap: 8px; }
 .mala-benefit { grid-template-columns: 34px minmax(0,1fr); gap: 4px 10px; }
 .mala-benefit::before { grid-row: span 2; }
}

@media(min-width: 1001px) {
 .mala-home .mala-funding { padding-block: 30px; }
 .mala-home .mala-home-en-101 .mala-funding { padding-block: 18px; }
}
/* Second review: mobile home is one compact composition, with optional media. */
@media(max-width: 700px) {
 .mala-header > .mala-button { display: none; }
 .mala-home .mala-hero .mala-columns { gap: 0; }
 .mala-home .mala-hero h1 { margin: 0 0 12px; }
 .mala-home .mala-hero .mala-lead { margin-bottom: 16px; }
 .mala-home .mala-hero .mala-copy { padding: 20px; }
 .mala-home .mala-hero .mala-copy + .mala-copy { padding: 0; }
 .mala-home .mala-hero .mala-placeholder:not(:has(img,video)),
 .mala-home .mala-hero .mala-copy + .mala-copy:not(:has(img,video)):not(:has(p,a,figure)) { display: none; }
 .mala-home .mala-hero .mala-placeholder:has(img,video) { min-height: 0; padding: 0; }
 .mala-home .mala-hero figure { margin: 0; }
 .mala-home .mala-hero img { display: block; width: 100%; height: auto; max-height: 220px; object-fit: contain; }
}
