/* v1.44 — scope to existing page components. Preserve design/photography and copy. */

/* Homepage: match inner service-page package proportions and show every inclusion. */
html body.page-home main .packages-section .packages-grid { align-items:stretch; gap:24px; }
html body.page-home main .packages-section .packages-grid > .package-card { min-width:0; height:100%; box-sizing:border-box; }
html body.page-home main .packages-section .packages-grid > .package-card .package-body { min-width:0; }
html body.page-home main .packages-section .packages-grid > .package-card h3 { font-size:clamp(20px,1.7vw,26px)!important; line-height:1.3; font-weight:600; }
html body.page-home main .packages-section .packages-grid > .package-card .package-sub { font-size:clamp(14px,1.05vw,17px)!important; }
html body.page-home main .packages-section .packages-grid > .package-card .package-price { font-size:clamp(23px,1.9vw,31px)!important; }
html body.page-home main .packages-section .packages-grid > .package-card .feature-list { font-size:clamp(13px,1vw,15px)!important; line-height:1.44!important; gap:8px!important; }
html body.page-home main .packages-section .packages-grid > .package-card .card-actions { align-self:stretch; margin-top:auto!important; }
html body.page-home main .packages-section .packages-grid > .package-card .card-actions>* { min-height:46px!important; font-size:clamp(12px,.95vw,15px)!important; display:inline-flex; justify-content:center; align-items:center; gap:6px; }
html body.page-home main .packages-section .packages-grid > .package-card .package-photo .original-image { display:block; aspect-ratio:3/2; min-height:0; }
html body.page-home main .packages-section .packages-grid > .package-card .package-photo .image-crop { overflow:hidden; }
/* Both the desktop and mobile rendering of VIP cards contain full original Figma inclusions. */
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.v25-feature-set,
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.feature-list,
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-mobile-layout .package-body>.feature-list { max-height:none!important; overflow:visible!important; height:auto!important; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.v25-feature-set:after,
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.feature-list:after { content:none!important; display:none!important; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .home-features-toggle { display:none!important; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .v25-feature-set { gap:16px; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .v25-feature-group { gap:9px; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .v25-feature-label { font-size:clamp(14px,1.05vw,16px)!important; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-top { min-height:0; }
html body.page-home main .home-vip-packages-v42 .home-vip-card .feature-list li { overflow-wrap:break-word; }
html body.page-home main .home-vip-packages-v42 .home-vip-card>.package-photo,
html body.page-home main .home-vip-packages-v42 .home-vip-card .package-mobile-layout .package-photo { margin-bottom:14px; }

/* CTA above footer: buttons have the same rhythm across all 13 templates. */
html body .source-closing-cta .actions,
html body .source-closing-cta .actions.legal-desktop-actions { display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch; gap:14px!important; width:100%; }
html body .source-closing-cta .actions>.button { box-sizing:border-box; display:inline-flex; flex:0 1 272px!important; width:272px!important; max-width:100%; min-height:56px!important; height:auto!important; padding:12px 17px!important; justify-content:center; align-items:center; gap:10px!important; font-size:17px!important; line-height:1.22!important; white-space:normal; text-align:center; }
html body .source-closing-cta .actions>.button .cta-action-icon { flex:0 0 auto; width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; }
html body .source-closing-cta .actions>.button .cta-action-icon .design-mask { width:24px!important; height:24px!important; aspect-ratio:1!important; }
html body .source-closing-cta .actions>.button .cta-action-icon img { width:24px!important; max-height:24px; object-fit:contain; }
/* Gallery CTA now has one action row, visible in the frontend and Gutenberg preview. */
html body.page-gallery .legal-cta .actions.legal-desktop-actions { display:flex!important; }

/* Booking form sizing: remove legacy fixed section/min-height and clipped bottom space. */
html body main .booking-section { height:auto!important; min-height:0!important; overflow:visible!important; }
html body main .booking-section .enquiry-layout.source-enquiry-layout { min-height:0!important; height:auto!important; align-items:center!important; }
html body main .booking-section .enquiry-layout.source-enquiry-layout>.inline-enquiry { height:auto!important; min-height:0!important; align-self:center!important; margin:0; }
html body main .booking-section .enquiry-layout.source-enquiry-layout>.inline-enquiry .form-status:empty { display:none; }
html body main .booking-section .enquiry-layout.source-enquiry-layout>.inline-enquiry .arabians-honeypot { display:none; }
html body main .booking-section .enquiry-layout.source-enquiry-layout>.inline-enquiry .source-enquiry-submit { margin-bottom:0!important; }
html body main .booking-section .enquiry-layout.source-enquiry-layout>.enquiry-copy { align-self:center; }
/* The form's landscape artwork is decorative: it must not force its parent taller. */
html body main .booking-section .source-enquiry-layer { pointer-events:none; }

@media (max-width:900px){
 html body.page-home main .packages-section .packages-grid { gap:18px; }
 html body.page-home main .packages-section .packages-grid > .package-card .feature-list { font-size:14px!important; }
 html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.v25-feature-set,
 html body.page-home main .home-vip-packages-v42 .home-vip-card .package-body>.feature-list { max-height:none!important; }
 html body .source-closing-cta .actions>.button { min-height:52px!important; font-size:15px!important; }
 html body main .booking-section .enquiry-layout.source-enquiry-layout { grid-template-columns:minmax(0,1fr)!important; gap:28px!important; }
}
@media (max-width:620px){
 html body.page-home main .packages-section .packages-grid { grid-template-columns:minmax(0,1fr); }
 html body.page-home main .packages-section .packages-grid > .package-card { width:100%; max-width:540px; margin-inline:auto; }
 html body.page-home main .packages-section .packages-grid > .package-card h3 { font-size:21px!important; }
 html body.page-home main .packages-section .packages-grid > .package-card .feature-list { font-size:13px!important; }
 html body .source-closing-cta .actions { gap:10px!important; }
 html body .source-closing-cta .actions>.button { flex:1 1 100%!important; width:100%!important; max-width:350px; min-height:50px!important; }
 html body main .booking-section .enquiry-layout.source-enquiry-layout>.inline-enquiry { max-width:100%; }
}
