/* One consistent inner-page hero system, sized against the unchanged homepage.
   Supersedes historical per-page hero styles. Only body.malwa-subpage. */
body.malwa-subpage{--hero-brand:#bb0029;--hero-type:'Plus Jakarta Sans','DM Sans',Arial,sans-serif;}
body.malwa-subpage main>section.hero,body.malwa-subpage main>section.booking-page-hero{box-sizing:border-box!important;background:linear-gradient(140deg,#fff 8%,#f7f8f5 100%)!important;}
body.malwa-subpage main>section.hero h1,body.malwa-subpage main>section.booking-page-hero h1{
 font-family:var(--hero-type)!important;font-weight:850!important;letter-spacing:-.062em!important;text-transform:none!important;line-height:1.035!important;color:#101514!important;text-wrap:balance;
}
body.malwa-subpage main>section.hero h1 em,body.malwa-subpage main>section.booking-page-hero h1 em{color:var(--hero-brand)!important;font-style:normal!important;}
body.malwa-subpage main>section.hero .eyebrow,body.malwa-subpage main>section.booking-page-hero .booking-page-tag{
 font-family:var(--hero-type)!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-size:11px!important;font-weight:800!important;color:var(--hero-brand)!important;line-height:1.4!important;}
body.malwa-subpage main>section.hero .lead,body.malwa-subpage main>section.booking-page-hero .booking-page-intro>p{
 font-family:var(--hero-type)!important;font-size:15px!important;font-weight:400!important;line-height:1.72!important;color:#5b6560!important;}
body.malwa-subpage main>section.hero .actions,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions{
 display:flex!important;justify-content:flex-start!important;align-items:center!important;flex-wrap:wrap!important;gap:12px!important;}
body.malwa-subpage main>section.hero .actions a,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a{
 display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;box-sizing:border-box!important;
 min-height:56px!important;height:56px!important;padding:0 20px!important;border-radius:3px!important;white-space:nowrap!important;
 font-family:var(--hero-type)!important;font-weight:800!important;font-size:10px!important;letter-spacing:.045em!important;text-transform:uppercase!important;text-decoration:none!important;
}
body.malwa-subpage main>section.hero .actions a:first-child,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a:first-child{background:var(--hero-brand)!important;color:#fff!important;border:1px solid var(--hero-brand)!important;min-width:229px!important;}
body.malwa-subpage main>section.hero .actions a:nth-child(2),body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a:nth-child(2){background:transparent!important;color:#161c1a!important;border:1px solid #c4cbc5!important;min-width:190px!important;}
body.malwa-subpage main>section.hero .actions a:hover,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a:hover{filter:brightness(.93);}
/* Inline crumb remains available to screen readers, but is not another visual row absent from homepage. */
body.malwa-subpage main>section.hero .breadcrumb,body.malwa-subpage main>section.booking-page-hero .booking-breadcrumb{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;padding:0!important;border:0!important;}
body.malwa-subpage .malwa-service-ribbon{margin:0!important;max-width:none!important;width:100%!important;border-radius:0!important;}
@media(min-width:901px){
 body.malwa-subpage main>section.hero,body.malwa-subpage main>section.booking-page-hero{height:571px!important;max-height:571px!important;min-height:571px!important;padding:0!important;display:block!important;overflow:hidden!important;}
 body.malwa-subpage main>section.hero>.wrap,body.malwa-subpage main>section.booking-page-hero>.wrap{width:calc(100% - 64px)!important;max-width:1408px!important;height:100%!important;min-height:0!important;margin:0 auto!important;padding:0!important;}
 body.malwa-subpage main>section.hero .hero-grid,body.malwa-subpage main>section.booking-page-hero .booking-page-hero-grid{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,40%) minmax(0,60%)!important;gap:0!important;align-items:center!important;}
 body.malwa-subpage main>section.hero .hero-grid>div:first-child,body.malwa-subpage main>section.booking-page-hero .booking-page-intro{width:100%!important;height:410px!important;min-height:410px!important;box-sizing:border-box!important;padding:0 30px 38px 0!important;margin:0!important;align-self:center!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;}
 body.malwa-subpage main>section.hero .eyebrow,body.malwa-subpage main>section.booking-page-hero .booking-page-tag{margin:0 0 14px!important;min-height:15px!important;max-height:none!important;}
 body.malwa-subpage main>section.hero h1,body.malwa-subpage main>section.booking-page-hero h1{font-size:clamp(53px,5.25vw,75.6px)!important;line-height:1.025!important;margin:0 0 15px!important;max-width:570px!important;}
 body.malwa-subpage main>section.hero .lead,body.malwa-subpage main>section.booking-page-hero .booking-page-intro>p{max-width:470px!important;margin:0!important;}
 body.malwa-subpage main>section.hero .actions,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions{margin:22px 0 0!important;flex-shrink:0!important;min-height:56px!important;}
 body.malwa-subpage main>section.hero .hero-media,body.malwa-subpage main>section.booking-page-hero .booking-hero-media{position:relative!important;min-width:0!important;max-width:none!important;width:100%!important;box-sizing:border-box!important;height:520px!important;min-height:520px!important;max-height:520px!important;aspect-ratio:auto!important;margin:0!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;}
 body.malwa-subpage main>section.hero .hero-media img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-hero-media img{display:block!important;width:auto!important;max-width:100%!important;height:500px!important;max-height:500px!important;object-fit:contain!important;object-position:center!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-media-caption{left:clamp(5px,5%,48px)!important;bottom:20px!important;max-width:calc(100% - 90px)!important;}
}
@media(min-width:901px) and (max-width:1120px){
 body.malwa-subpage main>section.hero h1,body.malwa-subpage main>section.booking-page-hero h1{font-size:clamp(43px,5vw,55px)!important;}
 body.malwa-subpage main>section.hero .actions a,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a{min-width:0!important;padding:0 12px!important;font-size:9px!important;}
}
@media(max-width:900px){
 body.malwa-subpage main>section.hero,body.malwa-subpage main>section.booking-page-hero{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;overflow:hidden!important;}
 body.malwa-subpage main>section.hero>.wrap,body.malwa-subpage main>section.booking-page-hero>.wrap{width:calc(100% - 32px)!important;max-width:none!important;height:auto!important;min-height:0!important;padding:0!important;margin:0 auto!important;}
 body.malwa-subpage main>section.hero .hero-grid,body.malwa-subpage main>section.booking-page-hero .booking-page-hero-grid{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto!important;gap:8px!important;align-items:start!important;height:auto!important;min-height:0!important;}
 body.malwa-subpage main>section.hero .hero-grid>div:first-child,body.malwa-subpage main>section.booking-page-hero .booking-page-intro{width:100%!important;box-sizing:border-box!important;height:auto!important;min-height:0!important;max-height:none!important;padding:27px 0 0!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;align-self:auto!important;}
 body.malwa-subpage main>section.hero .eyebrow,body.malwa-subpage main>section.booking-page-hero .booking-page-tag{margin:0 0 12px!important;min-height:0!important;font-size:10px!important;}
 body.malwa-subpage main>section.hero h1,body.malwa-subpage main>section.booking-page-hero h1{font-size:clamp(43px,5.5vw,58px)!important;line-height:1.035!important;margin:0 0 13px!important;}
 body.malwa-subpage main>section.hero .lead,body.malwa-subpage main>section.booking-page-hero .booking-page-intro>p{max-width:620px!important;font-size:14px!important;line-height:1.65!important;margin:0!important;}
 body.malwa-subpage main>section.hero .actions,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions{margin:17px 0 0!important;display:grid!important;grid-template-columns:1fr 1fr!important;min-height:0!important;gap:10px!important;}
 body.malwa-subpage main>section.hero .actions a,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a{width:100%!important;min-width:0!important;max-width:none!important;min-height:54px!important;height:54px!important;padding:0 15px!important;}
 body.malwa-subpage main>section.hero .hero-media,body.malwa-subpage main>section.booking-page-hero .booking-hero-media{width:100%!important;min-height:0!important;max-height:none!important;height:350px!important;aspect-ratio:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;margin:0!important;background:transparent!important;}
 body.malwa-subpage main>section.hero .hero-media img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-hero-media img{width:auto!important;max-width:100%!important;height:100%!important;object-fit:contain!important;}
}
@media(max-width:520px){
 body.malwa-subpage main>section.hero .hero-grid>div:first-child,body.malwa-subpage main>section.booking-page-hero .booking-page-intro{padding-top:26px!important;}
 body.malwa-subpage main>section.hero h1,body.malwa-subpage main>section.booking-page-hero h1{font-size:clamp(40px,11.8vw,46px)!important;line-height:1.04!important;}
 body.malwa-subpage main>section.hero .actions,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions{grid-template-columns:1fr!important;gap:9px!important;}
 body.malwa-subpage main>section.hero .actions a,body.malwa-subpage main>section.booking-page-hero .booking-hero-actions a{height:52px!important;min-height:52px!important;}
 body.malwa-subpage main>section.hero .hero-media,body.malwa-subpage main>section.booking-page-hero .booking-hero-media{height:220px!important;min-height:0!important;max-height:220px!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-media-caption{bottom:10px!important;left:10px!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-media-caption strong{font-size:16px!important;}
}
@media(prefers-reduced-motion:reduce){body.malwa-subpage main>section.hero *,body.malwa-subpage main>section.booking-page-hero *{transition:none!important;animation:none!important;}}

/* Keep captions inside photo boundaries, not across the empty image column. */
body.malwa-subpage main>section.hero .hero-media:after,
body.malwa-subpage main>section.booking-page-hero .booking-hero-media:after{display:none!important;content:none!important;}
body.malwa-subpage main>section.hero .media-caption,
body.malwa-subpage main>section.hero .faq-hero-caption{
 bottom:16px!important;left:16px!important;padding:9px 12px!important;
 max-width:calc(100% - 32px)!important;
 background:rgba(14,20,18,.78)!important;color:#fff!important;
 font-size:10px!important;letter-spacing:.09em!important;line-height:1.35!important;
 z-index:2!important;
}
body.malwa-subpage .booking-photo-frame{
 position:relative!important;display:flex!important;flex-direction:column!important;
 align-items:stretch!important;justify-content:center!important;
 height:500px!important;min-height:0!important;max-height:100%!important;
 width:auto!important;max-width:100%!important;overflow:hidden!important;
}
body.malwa-subpage .booking-photo-frame>img{
 display:block!important;width:auto!important;height:100%!important;
 max-width:100%!important;object-fit:contain!important;object-position:center!important;
}
body.malwa-subpage .booking-photo-frame .booking-media-caption{
 position:absolute!important;left:0!important;right:0!important;bottom:0!important;
 width:100%!important;max-width:none!important;box-sizing:border-box!important;
 padding:14px 18px!important;background:linear-gradient(transparent,rgba(0,0,0,.8))!important;
 color:white!important;text-shadow:0 1px 3px #0007!important;
}
body.malwa-subpage .booking-photo-frame .booking-media-caption span{
 font-size:9px!important;letter-spacing:.12em!important;
}
body.malwa-subpage .booking-photo-frame .booking-media-caption strong{
 font-family:var(--hero-type)!important;font-size:clamp(14px,1.7vw,22px)!important;line-height:1.1!important;letter-spacing:-.02em!important;
}
@media(max-width:900px){
 body.malwa-subpage .booking-photo-frame{height:350px!important;max-width:100%!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-hero-media{overflow:hidden!important;}
 body.malwa-subpage main>section.booking-page-hero .booking-hero-media .booking-photo-frame>img{height:100%!important;object-fit:contain!important;}
}
@media(max-width:520px){
 body.malwa-subpage .booking-photo-frame{height:220px!important;}
 body.malwa-subpage .booking-photo-frame .booking-media-caption{padding:8px 10px!important;}
 body.malwa-subpage .booking-photo-frame .booking-media-caption strong{font-size:12px!important;}
 body.malwa-subpage .booking-photo-frame .booking-media-caption span{font-size:8px!important;}
}

/* Visually fill the unused sides of the full storefront photo on small screens, without cropping the source image. */
@media(max-width:520px){
body.malwa-subpage main>section.booking-page-hero .booking-hero-media{position:relative!important;isolation:isolate!important;}
body.malwa-subpage main>section.booking-page-hero .booking-hero-media::before{content:''!important;display:block!important;position:absolute!important;inset:-18px!important;background:url('malwa-storefront-what-drives-us.png') center center / cover no-repeat!important;filter:blur(15px) brightness(.95)!important;opacity:.2!important;z-index:-1!important;}
body.malwa-subpage main>section.booking-page-hero .booking-photo-frame{z-index:1!important;}
}
@media(max-width:520px){
  body.malwa-subpage main>section.booking-page-hero .booking-hero-media{margin-bottom:6px!important;}
}
