/*
Theme Name: Oh Bon Gîte
Theme URI: https://ohbongite.fr
Description: Thème enfant de Hello Elementor pour le gîte Oh Bon Gîte (Brignac-la-Plaine). Compatible Elementor Free.
Author: Oh Bon Gîte
Template: hello-elementor
Version: 1.0.0
Text Domain: ohbongite
*/
:root{--obg-creme:#F8F4EC;--obg-beige:#EFE6D6;--obg-vert:#3B5F49;--obg-ocre:#C27A3E;--obg-encre:#1F3226;--obg-texte:#3A2F25;--obg-texte2:#7A6A58;--obg-bord:#DCCFB8;--obg-sable:#E3D3B5}
body{background:var(--obg-creme);color:var(--obg-texte);font-family:"Figtree",system-ui,sans-serif;font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.elementor-heading-title{font-family:"Fraunces",Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:inherit}
a{color:var(--obg-vert)}
:focus-visible{outline:2px solid var(--obg-vert);outline-offset:3px}
img{max-width:100%;height:auto}

/* Sections */
.obg-section{padding:5rem 0}
@media(min-width:1024px){.obg-section{padding:7rem 0}}
.obg-hero{padding:3.5rem 0;border-bottom:1px solid var(--obg-bord)}
.obg-bg-alt{background:var(--obg-beige)}
.obg-bg-primary{background:var(--obg-vert);color:var(--obg-creme)}
.obg-bg-ink{background:var(--obg-encre);color:#F1EADB}
.obg-bg-primary .obg-eyebrow .elementor-heading-title{color:var(--obg-sable)}
.obg-hero-photo{min-height:82vh;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(to top,rgba(31,50,38,.85),rgba(31,50,38,.15) 60%),url(images/jardin1.jpg) center/cover no-repeat}
.obg-hero-photo .elementor-heading-title,.obg-hero-photo .obg-eyebrow .elementor-heading-title{color:#fff}

/* Typo */
.obg-eyebrow .elementor-heading-title{font-family:"Figtree",sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--obg-ocre);display:inline-flex;align-items:center;gap:.75rem}
.obg-eyebrow .elementor-heading-title::before{content:"";width:2rem;height:1px;background:currentColor}
.obg-h-display .elementor-heading-title{font-size:clamp(2.6rem,6vw,5rem)}
.obg-h-section .elementor-heading-title{font-size:clamp(2rem,4vw,3.1rem)}
.obg-h-section em{color:var(--obg-vert)}
.obg-h-card .elementor-heading-title{font-size:1.6rem;margin-top:1.25rem}
.obg-lead{font-size:1.2rem;color:var(--obg-texte2)}
.obg-hero-photo .obg-lead{color:#fff;opacity:.9}
.obg-fact-value .elementor-heading-title{font-family:"Fraunces",serif;font-size:3rem;color:var(--obg-vert)}
.obg-fact-label{font-size:.9rem;color:var(--obg-texte2)}
.obg-facts{padding:3rem 0;border-bottom:1px solid var(--obg-bord)}

/* Photos */
.obg-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}
.obg-gallery img{aspect-ratio:4/3;object-fit:cover;border-radius:6px;border:0!important}

/* Boutons */
.obg-btn{display:inline-block;margin:.5rem .5rem 0 0}
.obg-btn .elementor-button{font-family:"Figtree",sans-serif;font-weight:600;font-size:.95rem;padding:.95rem 1.6rem;border-radius:999px;border:1.5px solid transparent;transition:background .2s,color .2s}
.obg-btn-primary .elementor-button{background:var(--obg-vert);color:var(--obg-creme)}
.obg-btn-primary .elementor-button:hover{background:var(--obg-encre)}
.obg-btn-accent .elementor-button{background:var(--obg-ocre);color:#fff}
.obg-btn-accent .elementor-button:hover{background:#A9652F}
.obg-btn-outline .elementor-button{background:transparent;color:inherit;border-color:currentColor}
.obg-btn-outline .elementor-button:hover{background:rgba(255,255,255,.12)}
.obg-bg-primary .obg-btn-outline .elementor-button,.obg-hero-photo .obg-btn-outline .elementor-button{color:#fff}

/* Listes, cartes, avis, tarifs */
.obg-list{list-style:none;padding:0;margin:0}
.obg-list li{padding:.7rem 0;border-bottom:1px solid var(--obg-bord)}
.obg-bg-ink .obg-list li{border-color:rgba(241,234,219,.18)}
.obg-card-ink{background:var(--obg-encre);color:#F1EADB;padding:2rem;border-radius:6px}
.obg-card-ink h3{font-size:2rem;margin-top:0}
.obg-card-ink a{color:var(--obg-sable)}
.obg-card-ink .obg-list li{border-color:rgba(241,234,219,.2)}
.obg-reviews .elementor-widget-container{display:grid;gap:1.5rem;margin-top:2rem}
@media(min-width:768px){.obg-reviews .elementor-widget-container{grid-template-columns:1fr 1fr}}
.obg-review{margin:0;background:var(--obg-creme);padding:2rem;border-radius:6px;border-left:3px solid var(--obg-ocre)}
.obg-review cite{font-style:normal;font-weight:600;color:var(--obg-vert)}
.obg-prices{width:100%;border-collapse:collapse}
.obg-prices th,.obg-prices td{padding:1.25rem 0;border-bottom:1px solid var(--obg-bord);text-align:left;vertical-align:top}
.obg-prices th{font-family:"Fraunces",serif;font-weight:400;font-size:1.25rem}
.obg-prices th span{display:block;font-family:"Figtree",sans-serif;font-size:.875rem;color:var(--obg-texte2)}
.obg-prices td{text-align:right;font-family:"Fraunces",serif;font-size:1.9rem;color:var(--obg-vert)}
.obg-faq .elementor-tab-title{font-family:"Fraunces",serif;font-size:1.2rem;border-color:var(--obg-bord)!important}
.obg-faq .elementor-tab-title a{color:var(--obg-texte)}
.obg-faq .elementor-tab-content{border-color:var(--obg-bord)!important;color:var(--obg-texte2)}
.obg-prose h3{font-size:1.6rem;margin-top:2rem}

/* En-tête & pied de page */
.obg-container{max-width:1200px;margin:0 auto;padding:0 1.25rem}
@media(min-width:768px){.obg-container{padding:0 2rem}}
.obg-header{position:sticky;top:0;z-index:40;background:rgba(248,244,236,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--obg-bord)}
.admin-bar .obg-header{top:32px}
.obg-header .obg-container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:80px}
.obg-logo img{height:44px;width:auto;display:block}
.obg-nav ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}
.obg-nav a{color:var(--obg-texte);text-decoration:none;font-weight:500;font-size:.95rem}
.obg-nav a:hover,.obg-nav .current-menu-item>a{color:var(--obg-vert);text-decoration:underline;text-decoration-color:var(--obg-ocre);text-underline-offset:8px}
.obg-cta-head{background:var(--obg-vert);color:var(--obg-creme)!important;padding:.75rem 1.3rem;border-radius:999px;font-weight:600;font-size:.9rem;text-decoration:none;white-space:nowrap}
.obg-burger{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--obg-texte)}
@media(max-width:1023px){
 .obg-burger{display:block}
 .obg-nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--obg-creme);border-bottom:1px solid var(--obg-bord);padding:1rem 1.25rem}
 .obg-nav.is-open{display:block}
 .obg-nav ul{flex-direction:column;gap:0}
 .obg-nav a{display:block;padding:.8rem 0;font-family:"Fraunces",serif;font-size:1.5rem;border-bottom:1px solid var(--obg-bord)}
}
@media(max-width:639px){.obg-cta-head{display:none}}
.obg-footer{background:var(--obg-encre);color:#F1EADB;padding-top:4rem}
.obg-footer a{color:#F1EADB}
.obg-footer-grid{display:grid;gap:3rem}
@media(min-width:768px){.obg-footer-grid{grid-template-columns:2fr 1fr 1fr}}
.obg-footer h2{font-family:"Figtree",sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--obg-ocre);margin:0 0 1rem}
.obg-footer ul{list-style:none;padding:0;margin:0;font-size:.9rem;line-height:2}
.obg-footer p{opacity:.8;max-width:24rem}
.obg-footer-bottom{border-top:1px solid rgba(241,234,219,.15);margin-top:3rem;padding:1.5rem 0;font-size:.8rem;opacity:.7;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}
