.comments-area a,.page-content a{text-decoration:underline}.alignright{float:right;margin-left:1rem}.alignleft{float:left;margin-right:1rem}.aligncenter{clear:both;display:block;margin-inline:auto}.alignwide{margin-inline:-80px}.alignfull{margin-inline:calc(50% - 50vw);max-width:100vw}.alignfull,.alignfull img{width:100vw}.wp-caption{margin-block-end:1.25rem;max-width:100%}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{display:block;margin-inline:auto}.wp-caption-text{margin:0}.gallery-caption{display:block;font-size:.8125rem;line-height:1.5;margin:0;padding:.75rem}.pagination{display:flex;justify-content:space-between;margin:20px auto}.sticky{display:block;position:relative}.bypostauthor{font-size:inherit}.hide{display:none!important}.post-password-form{margin:50px auto;max-width:500px}.post-password-form p{align-items:flex-end;display:flex;width:100%}.post-password-form [type=submit]{margin-inline-start:3px}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}.post .entry-title a{text-decoration:none}.post .wp-post-image{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}@media(max-width:991px){.post .wp-post-image{max-height:400px}}@media(max-width:575px){.post .wp-post-image{max-height:300px}}#comments .comment-list{font-size:.9em;list-style:none;margin:0;padding:0}#comments .comment,#comments .pingback{position:relative}#comments .comment .comment-body,#comments .pingback .comment-body{border-block-end:1px solid #ccc;display:flex;flex-direction:column;padding-block-end:30px;padding-block-start:30px;padding-inline-end:0;padding-inline-start:60px}#comments .comment .avatar,#comments .pingback .avatar{border-radius:50%;left:0;margin-inline-end:10px;position:absolute}body.rtl #comments .comment .avatar,body.rtl #comments .pingback .avatar,html[dir=rtl] #comments .comment .avatar,html[dir=rtl] #comments .pingback .avatar{left:auto;right:0}#comments .comment-meta{display:flex;justify-content:space-between;margin-block-end:.9rem}#comments .comment-metadata,#comments .reply{font-size:11px;line-height:1}#comments .children{list-style:none;margin:0;padding-inline-start:30px;position:relative}#comments .children li:last-child{padding-block-end:0}#comments ol.comment-list .children:before{content:"↪";display:inline-block;font-size:1em;font-weight:400;left:0;line-height:100%;position:absolute;top:45px;width:auto}body.rtl #comments ol.comment-list .children:before,html[dir=rtl] #comments ol.comment-list .children:before{content:"↩";left:auto;right:0}@media(min-width:768px){#comments .comment-author,#comments .comment-metadata{line-height:1}}@media(max-width:767px){#comments .comment .comment-body{padding:30px 0}#comments .children{padding-inline-start:20px}#comments .comment .avatar{float:left;position:inherit}body.rtl #comments .comment .avatar,html[dir=rtl] #comments .comment .avatar{float:right}}.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{margin-inline-end:auto;margin-inline-start:auto;width:100%}@media(max-width:575px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{padding-inline-end:10px;padding-inline-start:10px}}@media(min-width:576px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:500px}.site-footer.footer-full-width .footer-inner,.site-header.header-full-width .header-inner{max-width:100%}}@media(min-width:768px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:600px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:992px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:800px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:1200px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:1140px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}.site-header+.elementor{min-height:calc(100vh - 320px)}


/* ============ Villa Agapanthe — CookieYes Veloria charter ============ */
.cky-consent-bar{background-color:#FDFCFB!important;border-color:#D9D2C1!important;font-family:Inter,sans-serif!important}
.cky-title{color:#3A2E1F!important;font-family:"EB Garamond",serif!important;font-weight:500!important;font-size:18px!important}
.cky-notice-des{color:#3A2E1F!important;font-family:Inter,sans-serif!important;font-size:13px!important}
.cky-notice-des p{color:#3A2E1F!important}
.cky-notice-des a{color:#1D5BD7!important;text-decoration:underline!important}
.cky-btn-accept{background-color:#3A2E1F!important;color:#FFFFFF!important;border-color:#3A2E1F!important;border-radius:4px!important;font-family:Inter,sans-serif!important;font-weight:600!important;letter-spacing:.5px!important;padding:10px 20px!important}
.cky-btn-accept:hover{background-color:#2a2014!important;border-color:#2a2014!important}
.cky-btn-reject{background-color:transparent!important;color:#3A2E1F!important;border-color:#3A2E1F!important;border-radius:4px!important;font-family:Inter,sans-serif!important;font-weight:600!important;letter-spacing:.5px!important;padding:10px 20px!important}
.cky-btn-reject:hover{background-color:#3A2E1F!important;color:#FFFFFF!important}
.cky-btn-customize{background-color:transparent!important;color:#3A2E1F!important;border-color:transparent!important;font-family:Inter,sans-serif!important;font-weight:500!important;text-decoration:underline!important;padding:10px 16px!important}
.cky-btn-customize:hover{color:#1D5BD7!important;background-color:transparent!important}
.cky-btn-revisit-wrapper{background-color:#3A2E1F!important;box-shadow:0 2px 8px rgba(58,46,31,.25)!important}
.cky-preference-center{background-color:#FDFCFB!important;border-color:#D9D2C1!important}
.cky-preference-title,.cky-preference-header span{color:#3A2E1F!important;font-family:"EB Garamond",serif!important;font-weight:500!important}
.cky-preference-content-wrapper{color:#3A2E1F!important;font-family:Inter,sans-serif!important;font-size:13px!important}
.cky-accordion-header,.cky-accordion-btn,.cky-accordion-chevron{color:#3A2E1F!important}
.cky-switch label{background-color:#A89D85!important}
.cky-switch input[type="checkbox"]:checked + label{background-color:#3A2E1F!important}
.cky-btn-preferences{background-color:#3A2E1F!important;color:#FFFFFF!important;border-color:#3A2E1F!important;border-radius:4px!important;font-family:Inter,sans-serif!important;font-weight:600!important}
.cky-consent-container .cky-consent-bar{border-radius:8px!important;box-shadow:0 4px 16px rgba(58,46,31,.15)!important;padding:20px!important}
@media(min-width:768px){.cky-consent-container{max-width:560px!important;right:20px!important;left:auto!important;bottom:20px!important}}
@media(max-width:767px){.cky-consent-container{max-width:calc(100vw - 24px)!important;right:12px!important;left:12px!important;bottom:12px!important}.cky-title{font-size:16px!important}.cky-notice-des{font-size:12px!important}}


/* ============ Villa Agapanthe — Language Switcher (glassmorphism white gradient) ============ */
.va-lang-switcher{position:fixed;top:24px;right:240px;left:auto;transform:none;z-index:9999;display:flex;gap:4px;padding:6px;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(253,252,251,.85) 50%,rgba(255,255,255,.92) 100%);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);box-shadow:0 4px 20px rgba(58,46,31,.18),0 1px 2px rgba(58,46,31,.08),inset 0 1px 0 rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.7);font-family:Inter,sans-serif}
.va-lang-switcher a{color:#3A2E1F;text-decoration:none;font-size:11px;font-weight:600;letter-spacing:1.2px;padding:6px 12px;border-radius:18px;transition:all .25s cubic-bezier(.4,0,.2,1);background:transparent}
.va-lang-switcher a:hover{background:linear-gradient(135deg,rgba(58,46,31,.08),rgba(58,46,31,.04));color:#3A2E1F}
.va-lang-switcher a.active{background:linear-gradient(135deg,#3A2E1F 0%,#2a2014 100%);color:#fff;box-shadow:0 2px 8px rgba(58,46,31,.3),inset 0 1px 0 rgba(255,255,255,.15)}
@media(max-width:1100px){
  .va-lang-switcher{top:24px;right:24px;font-size:10px;padding:5px}
  .va-lang-switcher a{padding:5px 10px;font-size:10px}
}
@media(max-width:768px){
  .va-lang-switcher{top:auto;bottom:80px;right:12px;font-size:10px}
}

/* RTL adjustments for AR pages */
html[lang="ar"] body,html[dir="rtl"] body{direction:rtl;text-align:right}
html[lang="ar"] .elementor-button-text,html[dir="rtl"] .elementor-button-text{direction:rtl}
html[lang="ar"] .elementor-widget-text-editor,html[dir="rtl"] .elementor-widget-text-editor{text-align:right}
html[lang="ar"] .elementor-heading-title,html[dir="rtl"] .elementor-heading-title{text-align:right}
html[lang="ar"] .va-action-btns,html[dir="rtl"] .va-action-btns{flex-direction:row-reverse}

/* ============ Villa Agapanthe — Fix mobile (2026-08) ============ */
/* 1. Visite virtuelle : l'embed Matterport #mp-cover (hack padding-bottom:56.25%)
   s'effondre à 0px dans les conteneurs flex Elementor sur mobile → la section
   suivante recouvrait la visite. Le ratio est porté par le wrapper du widget,
   le cover devient absolu à l'intérieur. Rendu desktop identique (16:9). */
.elementor-widget-html:has(> #mp-cover),
.elementor-element-g0002b7d.elementor-widget-html{position:relative;aspect-ratio:16/9;width:100%;height:auto!important}
#mp-cover{position:absolute!important;inset:0!important;height:100%!important;padding-bottom:0!important}

/* 2. Mobile : animations d'entrée Elementor désactivées — en scroll rapide elles
   laissaient des sections invisibles (zones blanches). Desktop inchangé. */
@media(max-width:767px){
  .elementor-invisible{visibility:visible!important;opacity:1!important;animation:none!important;transform:none!important}
}

/* 3. Footer : bande logos paiement (254x25) écrasée en 25x25 sur mobile */
.elementor-location-footer img[alt="payment_logo.png"]{width:auto!important;height:25px!important;max-width:100%;object-fit:contain}

/* 4. Checkout : bouton "Payer avec PayPal" injecté avec un lien Knit Pay périmé
   (paiement de test de juin, annulé) — masqué en attendant le nettoyage du plugin
   injecteur. Le paiement passe par le radio Paypal natif de VikBooking. */
.vbo-oconfirm-paymentopts a[href*="payment_redirect"]{display:none!important}

/* ============ Villa Agapanthe — Tunnel réservation (2026-08) ============ */
/* 5. Coupon de réduction retiré du checkout */
.vbentercoupon{display:none!important}

/* 6. Boutons Retour + Confirmer : même hauteur, alignés sur une rangée */
.vboconfirmbottom{display:flex!important;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px}
.vboconfirmbottom .goback{margin:0!important;order:1}
.vboconfirmbottom input.booknow,.vboconfirmbottom .btn.booknow{order:2}
.vboconfirmbottom .vbo-goback-link,
.vboconfirmbottom input.booknow,
.vboconfirmbottom .btn.booknow{
  display:inline-flex!important;align-items:center;justify-content:center;
  height:50px!important;min-width:210px;padding:0 30px!important;
  font-size:15px!important;font-weight:500!important;line-height:1!important;
  border-radius:8px!important;box-sizing:border-box!important;margin:0!important;
  letter-spacing:.3px;cursor:pointer;text-align:center;width:auto;
}
@media(max-width:560px){
  .vboconfirmbottom{flex-direction:column-reverse}
  .vboconfirmbottom .vbo-goback-link,.vboconfirmbottom input.booknow,.vboconfirmbottom .btn.booknow{width:100%!important}
}

/* ============ Villa Agapanthe — Audit visuel (2026-08-17) ============ */
/* 7. Hero mobile noir : la vidéo de fond (YouTube) ne s'autoplay pas sur mobile
   et recouvrait l'image de fond de la section → hero entièrement noir derrière
   le titre. On masque le conteneur vidéo sur mobile ; l'image de fond de la
   section (ex. piscine) s'affiche à la place. Desktop inchangé (vidéo OK). */
@media(max-width:767px){
  .elementor-background-video-container{display:none!important}
}

/* 8. Page Réservation : le hero a un contenu court ("RÉSERVEZ") qui, avec le
   padding Elementor (160px) mangé par le header transparent (137px), se calait
   trop haut et chevauchait le logo. On rééquilibre le padding vertical du hero
   (desktop ≥1025px) pour centrer le bloc dans l'image piscine. Le sélecteur
   reproduit + surpasse la règle Elementor (page-id-1336 … !important).
   Mobile/tablette : padding Elementor d'origine conservé. */
@media(min-width:1025px){
  body.page-id-1336 .elementor.elementor-1336 > .elementor-element.elementor-element-g0002b01.e-con.e-parent{
    padding-top:344px!important;
    padding-bottom:70px!important;
  }
}
