/* V7 normal pages: no parent headers/footer, retain Elementor styles/content */
body.azv7-content { margin:0!important; background:#fbfaf8!important; color:#20201d; font-family:Jost,Arial,sans-serif; overflow-x:hidden; }
body.azv7-content #wpadminbar { position:fixed; }
body.azv7-content .azv7-header { position:relative; z-index:50; height:auto; background:#fff; border-bottom:1px solid #ece8e1; box-shadow:none; }
body.azv7-content .azv7-header-inner { width:min(100%,1480px); min-height:92px; margin:auto; padding:14px clamp(20px,3vw,40px); display:flex; align-items:center; justify-content:space-between; gap:28px; }
body.azv7-content .azv7-logo { display:inline-flex; flex:0 0 auto; align-items:center; width:150px; }
body.azv7-content .azv7-logo img { display:block; width:100%; height:64px; object-fit:contain; }
body.azv7-content .azv7-nav { display:flex; flex:1; justify-content:center; align-items:center; gap:clamp(16px,1.9vw,28px); min-width:0; }
body.azv7-content .azv7-nav a { font:600 12px/1.45 Jost,Arial,sans-serif; color:#24384c; white-space:nowrap; text-decoration:none; letter-spacing:.02em; }
body.azv7-content .azv7-nav a:hover { color:#9b7a61; }
body.azv7-content .azv7-booking-link,body.azv7-content .azv7-footer-cta { display:inline-flex; align-items:center; justify-content:center; gap:7px; text-decoration:none; font:600 11px/1.2 Jost,Arial,sans-serif; letter-spacing:.11em; color:#252621; border:1px solid #2b2b28; background:#fff; border-radius:999px; padding:14px 20px; white-space:nowrap; transition:all .2s ease; }
body.azv7-content .azv7-booking-link:hover,body.azv7-content .azv7-footer-cta:hover { color:#fff; background:#292a27; }
body.azv7-content .azv7-mobile-toggle { display:none; }
body.azv7-content .azv7-main { position:relative; min-height:45vh; width:100%; background:#fbfaf8; }
body.azv7-content .azv7-article { margin:0; padding:0; max-width:none; }
body.azv7-content .azv7-entry { margin:0; padding:0; }
/* Elementor often controls its own full-width layout; never globally rewrite its grid/columns. */
body.azv7-content .azv7-entry > .elementor { width:100%; max-width:100%; }
body.azv7-content .azv7-article:not(:has(.elementor)) .azv7-entry { max-width:1220px; padding:50px 25px 85px; margin:0 auto; }
body.azv7-content .azv7-page-intro { text-align:center; padding:54px 18px 28px; background:#f8f6f2; }
body.azv7-content .azv7-page-intro span { display:inline-block; font:600 11px/1.4 Jost,sans-serif; letter-spacing:.20em; color:#9c876f; margin-bottom:10px; }
body.azv7-content .azv7-page-intro h1 { font:400 clamp(44px,5.2vw,72px)/1.04 'Cormorant Garamond',Georgia,serif; color:#171714; margin:0 0 12px; }
body.azv7-content .azv7-page-intro h1 em { font-weight:400; }
body.azv7-content .azv7-page-intro p { max-width:640px; margin:0 auto; color:#66727d; font:400 15px/1.8 Jost,Arial,sans-serif; }
body.azv7-content .azv7-booking-entry { max-width:1200px; margin:0 auto; padding:12px 25px 95px!important; }
body.azv7-content .azv7-footer { background:#f0eeea; padding:48px max(4%,calc((100% - 1440px)/2)) 20px; border-top:1px solid #e6e2dc; }
body.azv7-content .azv7-footer-main { display:flex; align-items:center; justify-content:space-between; gap:38px; }
body.azv7-content .azv7-footer-main img { height:90px; width:185px; object-fit:contain; }
body.azv7-content .azv7-footer-main h2 { font:400 clamp(26px,3vw,44px)/1.1 'Cormorant Garamond',Georgia,serif; margin:0 0 8px; color:#20201d; }
body.azv7-content .azv7-footer-main p { margin:0; font:400 13px Jost,sans-serif; color:#77736e; }
body.azv7-content .azv7-footer-bottom { border-top:1px solid #dcd6ce; margin-top:33px; padding-top:16px; display:flex; justify-content:space-between; gap:20px; font:400 11px Jost,sans-serif; color:#77736e; }
body.azv7-content .azv7-footer-bottom a { color:inherit; }
/* Narrow fixes for previously oversized Artale headings on album content. */
body.azv7-content .azv7-entry .elementor-widget-heading .elementor-heading-title { overflow-wrap:anywhere; }
@media(max-width:1060px) {
 body.azv7-content .azv7-header-inner { flex-wrap:wrap; gap:16px; min-height:88px; }
 body.azv7-content .azv7-mobile-toggle { display:block; margin-left:auto; border:1px solid #ddd; background:#fff; padding:10px 16px; color:#222; }
 body.azv7-content .azv7-nav { display:none; width:100%; flex-basis:100%; order:5; background:#fff; flex-direction:column; align-items:flex-start; gap:0; padding:12px; }
 body.azv7-content .azv7-nav.is-open { display:flex; }
 body.azv7-content .azv7-nav a { padding:10px; }
 body.azv7-content .azv7-booking-link { margin-left:0; }
}
@media(max-width:720px) {
 body.azv7-content .azv7-header-inner { padding:12px 5%; }
 body.azv7-content .azv7-logo { width:116px; }
 body.azv7-content .azv7-logo img { height:65px; }
 body.azv7-content .azv7-booking-link { font-size:10px; padding:10px 12px; }
 body.azv7-content .azv7-footer-main { flex-direction:column; text-align:center; gap:15px; }
 body.azv7-content .azv7-footer-bottom { flex-direction:column; text-align:center; }
}

/* V10: refined booking page presentation */
body.azv7-content .azv7-booking-article .azv7-page-intro{border-bottom:1px solid #ece8e1;}
body.azv7-content .azv7-booking-entry .az-booking-v2 > .az-kicker,
body.azv7-content .azv7-booking-entry .az-booking-v2 > h2,
body.azv7-content .azv7-booking-entry .az-booking-v2 > p{display:none!important;}
body.azv7-content .azv7-booking-entry .az-booking-v2{padding-top:28px!important;}
body.azv7-content .azv7-booking-entry .az-booking-v2 .az-wizard-progress{margin-top:0!important;}
body.azv7-content .azv7-booking-entry .az-booking-v2 .az-step-header{padding-top:4px!important;}
@media(max-width:1060px){body.azv7-content .azv7-header-inner{min-height:82px;padding:12px 20px;}body.azv7-content .azv7-nav{border-top:1px solid #ece8e1;}body.azv7-content .azv7-nav a,body.azv7-content .azv7-nav .azv8-price-trigger{width:100%;padding:12px 6px!important;font-size:12px!important;}body.azv7-content .azv7-page-intro{padding:42px 16px 24px;}body.azv7-content .azv7-page-intro h1{font-size:clamp(38px,10vw,56px);}body.azv7-content .azv7-booking-link{font-size:10px;padding:11px 14px;}}
@media(max-width:720px){body.azv7-content .azv7-page-intro p{font-size:14px;line-height:1.7;}body.azv7-content .azv7-booking-entry{padding:10px 15px 70px!important;}}

/* V11: wedding-inspired booking CTA and premium menu */
body.azv7-content .azv7-booking-link{background:#b78e74!important;border-color:#b78e74!important;color:#fff!important;box-shadow:0 8px 22px rgba(152,105,78,.20)!important;padding:15px 23px!important}
body.azv7-content .azv7-booking-link:hover,body.azv7-content .azv7-booking-link:focus-visible{background:#946c54!important;border-color:#946c54!important;transform:translateY(-1px)}
body.azv7-content .azv7-nav{gap:clamp(12px,1.6vw,25px)!important}
body.azv7-content .azv7-nav a{font-size:12px!important}
@media(max-width:1060px){body.azv7-content .azv7-booking-link{padding:12px 14px!important}}
