/* Phase 7A: exclusively candidate pages; existing homepage/CSS remain intact. */
body.a7-candidate { --a7-linen:#EFEAE2; --a7-slate:#3F5256; --a7-dark:#253438; --a7-chalk:#F8F5F0; }
body.a7-candidate .elementor .a7-section { padding:48px 32px!important; margin:0!important; background:var(--a7-linen)!important; color:var(--a7-dark); }
body.a7-candidate .elementor .a7-section>.elementor-container { max-width:1160px; gap:48px; }
body.a7-candidate .elementor .a7-section .elementor-column { min-width:0; }
body.a7-candidate .elementor .a7-section .elementor-widget-wrap { padding:0!important; align-content:start; gap:20px; }
body.a7-candidate .elementor .a7-section .elementor-widget { margin:0!important; width:100%; min-width:0; }
body.a7-candidate .elementor .a7-section h1,body.a7-candidate .elementor .a7-section h2,body.a7-candidate .elementor .a7-section h3 { font-family:'Alaburic Heritage Cormorant Garamond',Georgia,serif!important; font-weight:500!important; color:var(--a7-dark)!important; line-height:1.08!important; letter-spacing:-.02em; margin:0!important; text-transform:none!important; }
body.a7-candidate .elementor .a7-section h1 { font-size:clamp(52px,5.4vw,78px)!important; }
body.a7-candidate .elementor .a7-section h2 { font-size:clamp(36px,3.5vw,49px)!important; }
body.a7-candidate .elementor .a7-section h3 { font-size:32px!important; }
body.a7-candidate .a7-section p,body.a7-candidate .a7-section li,body.a7-candidate .a7-section label,body.a7-candidate .a7-section input,body.a7-candidate .a7-section select { font-family:'Alaburic Heritage Plus Jakarta Sans',sans-serif!important; font-size:15px; line-height:1.85; color:var(--a7-slate); }
body.a7-candidate .a7-section p { margin:0 0 16px; }
body.a7-candidate .a7-section p:last-child { margin-bottom:0; }
body.a7-candidate .elementor .a7-eyebrow .elementor-heading-title { font:600 11px/1.7 'Alaburic Heritage Plus Jakarta Sans',sans-serif!important; letter-spacing:.17em; color:var(--a7-slate)!important; }
body.a7-candidate .elementor .a7-intro { padding-top:56px!important; padding-bottom:56px!important; }
body.a7-candidate .a7-intro-copy { align-self:center; }
body.a7-candidate .a7-section .elementor-widget-image img { display:block; width:100%; height:auto; border-radius:20px; }
body.a7-candidate .a7-section figure { margin:0; }
body.a7-candidate .a7-section figcaption { margin:12px 0 0; text-align:left; color:var(--a7-slate); font:400 12px/1.7 'Alaburic Heritage Plus Jakarta Sans',sans-serif; }
body.a7-candidate .a7-section .elementor-button,body.a7-candidate .a7-section input[type=submit],body.a7-candidate .a7-section button[type=submit] { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:14px 24px!important; border:1px solid var(--a7-dark)!important; border-radius:7px!important; background:var(--a7-dark)!important; color:var(--a7-chalk)!important; font:600 12px/1.5 'Alaburic Heritage Plus Jakarta Sans',sans-serif!important; text-transform:uppercase; letter-spacing:.08em; white-space:normal; }
body.a7-candidate .a7-section .elementor-button:hover,body.a7-candidate .a7-section input[type=submit]:hover { background:var(--a7-slate)!important; }
body.a7-candidate .a7-section .elementor-widget-text-editor a { color:var(--a7-dark); text-decoration:underline; text-underline-offset:3px; }
body.a7-candidate .a7-section :is(a,button,input,select,textarea):focus-visible { outline:3px solid var(--a7-slate)!important; outline-offset:4px!important; }
body.a7-candidate .a7-location p,body.a7-candidate .a7-small p { font-size:12px!important; line-height:1.8; }
body.a7-candidate .elementor .a7-amenities .elementor-widget-wrap { background:var(--a7-chalk); padding:32px!important; border:1px solid #d4d8d2; border-radius:20px; }
body.a7-candidate .a7-amenities .elementor-icon-list-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
body.a7-candidate .a7-amenities .elementor-icon-list-item { align-items:flex-start; margin:0!important; padding:0!important; font-size:13px; }
body.a7-candidate .a7-amenities .elementor-icon-list-icon { color:#5e6c61; padding-top:5px; }
body.a7-candidate .a7-amenities .elementor-icon-list-icon i { color:#5e6c61; }
body.a7-candidate .elementor .a7-gallery-heading { padding-bottom:24px!important; }
body.a7-candidate .elementor .a7-gallery-row { padding-top:0!important; padding-bottom:28px!important; }
body.a7-candidate .elementor .a7-gallery-row>.elementor-container { gap:24px; }
body.a7-candidate .a7-gallery-row img { aspect-ratio:3/2; object-fit:cover; }
body.a7-candidate .elementor .a7-booking { padding-top:64px!important; }
body.a7-candidate .elementor .a7-section .a7-booking-copy>.elementor-widget-wrap,body.a7-candidate .elementor .a7-section .a7-calendar-copy>.elementor-widget-wrap { background:var(--a7-chalk); border:1px solid #d4d8d2; border-radius:20px; padding:28px!important; }
body.a7-candidate .a7-section .mphb-booking-form { margin:0; padding:0; width:100%; }
body.a7-candidate .a7-section .mphb-booking-form>p { margin:0 0 20px!important; width:100%; float:none; }
body.a7-candidate .a7-section .mphb-booking-form input:not([type=hidden]):not([type=submit]),body.a7-candidate .a7-section .mphb-booking-form select { box-sizing:border-box; width:100%; min-width:0; height:48px; background:var(--a7-chalk); border:1px solid #758478; border-radius:6px; padding:10px 12px; font-size:16px!important; color:var(--a7-dark); }
body.a7-candidate .a7-section .mphb-required-fields-tip,body.a7-candidate .a7-section .mphb-errors-wrapper { font-size:13px; }
body.a7-candidate .a7-section .datepick { box-sizing:border-box; width:100%!important; max-width:100%; background:var(--a7-chalk); font-family:'Alaburic Heritage Plus Jakarta Sans',sans-serif; }
body.a7-candidate .a7-section .datepick-month { width:100%!important; max-width:100%; }
body.a7-candidate .a7-section .datepick-month table { width:100%; table-layout:fixed; }
body.a7-candidate .a7-section .datepick-month td { padding:2px; }
body.a7-candidate .a7-section .datepick-month td a,body.a7-candidate .a7-section .datepick-month td span { font-size:13px; padding:10px 0; }
/* Native availability classes/colors/states intentionally retained. */
body.a7-candidate .a7-section .datepick-nav a { text-decoration:none; font-size:12px; min-height:32px; }
body.a7-candidate .a7-section .datepick-month-header,body.a7-candidate .a7-section .datepick-month-header select { font-size:13px!important; }
body.a7-candidate .a7-section .datepick-ctrl { min-height:30px; }
body.a7-candidate .a7-section .mphb_sc_room_rates-wrapper p { margin:0; font-size:14px; }
body.a7-candidate .a7-section[id] { scroll-margin-top:140px; }
body.a7-candidate .a7-questions { text-align:center; }
body.a7-candidate .a7-questions #frm_form_2_container { margin-bottom:0; }
@media(max-width:1024px) {
 body.a7-candidate .elementor .a7-section { padding:36px 24px!important; }
 body.a7-candidate .elementor .a7-section>.elementor-container { gap:30px; }
 body.a7-candidate .a7-amenities .elementor-icon-list-items { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.a7-candidate .elementor .a7-section .a7-booking-copy>.elementor-widget-wrap,body.a7-candidate .elementor .a7-section .a7-calendar-copy>.elementor-widget-wrap { padding:20px!important; }
}
@media(max-width:800px) {
 body.a7-candidate .elementor .a7-intro>.elementor-container,body.a7-candidate .elementor .a7-overview>.elementor-container,body.a7-candidate .elementor .a7-booking>.elementor-container { flex-wrap:wrap; gap:28px; }
 body.a7-candidate .elementor :is(.a7-intro,.a7-overview,.a7-booking)>.elementor-container>.elementor-column { width:100%!important; }
}
@media(max-width:767px) {
 body.a7-candidate .elementor .a7-section { padding:32px 20px!important; }
 body.a7-candidate .elementor .a7-intro { padding-top:32px!important; }
 body.a7-candidate .elementor .a7-section h1 { font-size:52px!important; }
 body.a7-candidate .elementor .a7-gallery-row>.elementor-container { gap:24px; }
 body.a7-candidate .a7-section .elementor-widget-image img { border-radius:14px; }
 body.a7-candidate .a7-section p { font-size:14px; }
 body.a7-candidate .elementor .a7-amenities .elementor-widget-wrap { padding:24px 20px!important; }
 body.a7-candidate .a7-amenities .elementor-icon-list-items { gap:18px 14px; }
 body.a7-candidate .a7-amenities .elementor-icon-list-text { font-size:12px; line-height:1.7; }
 body.a7-candidate .a7-section .datepick-month td a,body.a7-candidate .a7-section .datepick-month td span { font-size:11px; padding:8px 0; }
 body.a7-candidate .a7-section .datepick-month td { padding:1px; }
 body.a7-candidate .a7-section .datepick-nav a { font-size:11px; }
}

/* Existing site-wide booking promotion is not repeated inside candidate cards. */
body.a7-candidate .a7-section .mphb-booking-form::before { content:none!important; display:none!important; }
body.a7-candidate .a7-section .mphb_sc_booking_form-wrapper { padding:0!important; background:transparent!important; border:0!important; box-shadow:none!important; border-radius:0!important; max-width:100%!important; }
body.a7-candidate .a7-section .mphb_sc_booking_form-wrapper::before { content:none!important; display:none!important; }

/* Phase 7B.1: only the existing six-photo candidate galleries.
   Legacy percentage columns must share the space left after the gutters. */
@media (min-width:768px) {
 body.a7-candidate .elementor .a7-gallery-row > .elementor-container {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
 }
 body.a7-candidate .elementor .a7-gallery-row > .elementor-container > .elementor-column {
  width:auto;
  min-width:0;
 }
}

/* Phase 7C: residual theme/consent presentation on the two integrated types only. */
body.a7-integrated header.banner .navbar-toggle {
 background-color:#F8F5F0;
 border-color:#3F5256;
}
body.a7-integrated header.banner .navbar-toggle:hover,
body.a7-integrated header.banner .navbar-toggle:focus {
 background-color:#EFEAE2;
 border-color:#253438;
}
/* Cookie Law Info applies these colors inline; preserve behavior, override colors only. */
body.a7-integrated #cookie-law-info-bar {
 background-color:#253438!important;
 color:#F8F5F0!important;
}
body.a7-integrated #cookie-law-info-bar .cli-plugin-main-link {
 color:#F8F5F0!important;
 text-decoration:underline;
}
