/*
Theme Name: Glow by Elo
Theme URI: https://example.invalid/glow-by-elo
Author: D3D Concept
Description: Thème WordPress léger, mobile-first et orienté conversion locale pour Glow by Elo.
Version: 1.2.1
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: glow-by-elo
*/

:root{
  --gbe-terracotta:#B57A66;
  --gbe-terracotta-dark:#9E6654;
  --gbe-rose:#F2E7E1;
  --gbe-cream:#FBF8F4;
  --gbe-sand:#D9C3B7;
  --gbe-ink:#2B2927;
  --gbe-muted:#6B6865;
  --gbe-sage:#A6B19B;
  --gbe-white:#FFFFFF;
  --gbe-border:#E9DED7;
  --gbe-radius:18px;
  --gbe-shadow:0 10px 35px rgba(58,45,37,.08);
  --gbe-max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--gbe-cream);color:var(--gbe-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.gbe-shell{width:min(calc(100% - 32px),var(--gbe-max));margin-inline:auto}
.gbe-section{padding:72px 0}
.gbe-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;color:var(--gbe-terracotta-dark);font-weight:700}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;font-weight:500;margin:0 0 .5em}
h1{font-size:clamp(2.6rem,6vw,5.6rem)}
h2{font-size:clamp(2rem,4vw,3.4rem)}
h3{font-size:1.45rem}
p{margin:.4em 0 1em}.gbe-muted{color:var(--gbe-muted)}
.gbe-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;padding:.95rem 1.35rem;border:1px solid transparent;font-weight:700;cursor:pointer;min-height:48px;transition:.2s ease}
.gbe-btn:hover{transform:translateY(-1px)}
.gbe-btn--primary{background:var(--gbe-terracotta);color:white}.gbe-btn--primary:hover{background:var(--gbe-terracotta-dark)}
.gbe-btn--secondary{border-color:var(--gbe-terracotta);color:var(--gbe-terracotta-dark);background:transparent}
.gbe-grid{display:grid;gap:24px}.gbe-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.gbe-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.gbe-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.gbe-card{background:var(--gbe-white);border:1px solid var(--gbe-border);border-radius:var(--gbe-radius);overflow:hidden;box-shadow:var(--gbe-shadow)}
.gbe-card__body{padding:22px}.gbe-card__media{aspect-ratio:4/3;background:linear-gradient(135deg,#efe4dd,#f8f2ed);overflow:hidden}.gbe-card__media img{width:100%;height:100%;object-fit:cover}
.gbe-card__meta{display:flex;gap:14px;flex-wrap:wrap;font-size:.9rem;color:var(--gbe-muted)}
.gbe-header{position:sticky;top:0;z-index:50;background:rgba(251,248,244,.93);backdrop-filter:blur(10px);border-bottom:1px solid rgba(233,222,215,.8)}
.gbe-nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.gbe-brand{display:flex;align-items:center;gap:12px;min-width:170px}.gbe-brand img{max-height:52px;width:auto}.gbe-brand__text{font-family:Georgia,serif;font-size:1.25rem}.gbe-menu{display:flex;gap:24px;align-items:center}.gbe-menu a{font-size:.95rem}.gbe-menu-toggle{display:none;background:none;border:0;font-size:1.5rem}
.gbe-hero{padding:36px 0 30px}.gbe-hero__wrap{display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;background:linear-gradient(90deg,#f6ede7 0%,#fbf8f4 52%,#f0dfd4 100%);border-radius:28px;overflow:hidden;min-height:560px}.gbe-hero__copy{padding:64px}.gbe-hero__media{min-height:420px;background:linear-gradient(135deg,#eadbd0,#f7efe9)}.gbe-hero__media img{width:100%;height:100%;object-fit:cover}.gbe-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.gbe-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.gbe-trust__item{display:flex;gap:10px;align-items:flex-start;font-size:.9rem}
.gbe-split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.gbe-portrait{border-radius:24px;overflow:hidden;min-height:480px;background:linear-gradient(135deg,#eadbd0,#f7efe9)}.gbe-portrait img{width:100%;height:100%;object-fit:cover}
.gbe-local{background:var(--gbe-white);border-top:1px solid var(--gbe-border);border-bottom:1px solid var(--gbe-border)}
.gbe-map-placeholder{min-height:360px;border-radius:24px;background:radial-gradient(circle at 50% 50%,#efd9cd 0 15%,#f6ebe5 16% 34%,#f8f3ef 35% 100%);position:relative;overflow:hidden}.gbe-map-placeholder:after{content:"Clarensac · Vaunage";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);background:var(--gbe-white);padding:12px 18px;border-radius:999px;box-shadow:var(--gbe-shadow);font-weight:700}
.gbe-faq details{background:white;border:1px solid var(--gbe-border);border-radius:14px;padding:0 18px;margin:10px 0}.gbe-faq summary{cursor:pointer;padding:16px 0;font-weight:700}.gbe-faq details p{padding-bottom:16px}
.gbe-cta{border-radius:26px;background:linear-gradient(135deg,#e7cdbf,#b57a66);color:#2f2622;text-align:center;padding:52px 24px}.gbe-cta .gbe-btn{background:white;color:var(--gbe-terracotta-dark)}
.gbe-footer{padding:34px 0 110px;border-top:1px solid var(--gbe-border);font-size:.9rem}.gbe-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.gbe-footer a{text-decoration:underline;text-decoration-color:rgba(181,122,102,.35)}
.gbe-mobile-actions{display:none;position:fixed;z-index:60;left:12px;right:12px;bottom:12px;background:white;border:1px solid var(--gbe-border);border-radius:18px;box-shadow:0 18px 50px rgba(38,28,23,.18);padding:8px}.gbe-mobile-actions a{flex:1;text-align:center;padding:10px 6px;font-size:.78rem;font-weight:700}.gbe-mobile-actions span{display:block;font-size:1.1rem}
.gbe-page-hero{padding:56px 0 20px}.gbe-breadcrumbs{font-size:.84rem;color:var(--gbe-muted);margin-bottom:20px}.gbe-prose{max-width:780px}.gbe-price-table{background:white;border:1px solid var(--gbe-border);border-radius:18px;overflow:hidden}.gbe-price-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:16px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--gbe-border)}.gbe-price-row:last-child{border-bottom:0}
.gbe-form{display:grid;gap:14px}.gbe-field label{display:block;font-weight:700;margin-bottom:6px}.gbe-field input,.gbe-field textarea,.gbe-field select{width:100%;padding:13px 14px;border:1px solid #d8cbc3;border-radius:12px;background:#fff}.gbe-field textarea{min-height:150px}.gbe-notice{padding:14px 16px;border-radius:12px;background:#eef4eb;border:1px solid #cedbc7}.gbe-notice--error{background:#f8ece8;border-color:#e6c0b5}
.gbe-consent{position:fixed;z-index:100;inset:auto 16px 16px 16px;max-width:760px;margin:auto;background:white;border:1px solid var(--gbe-border);border-radius:20px;box-shadow:0 24px 70px rgba(25,17,13,.22);padding:18px;display:none}.gbe-consent.is-open{display:block}.gbe-consent__actions{display:flex;gap:10px;flex-wrap:wrap}.gbe-consent__prefs{display:none;margin-top:12px;padding-top:12px;border-top:1px solid var(--gbe-border)}.gbe-consent__prefs.is-open{display:block}
.gbe-visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
@media(max-width:980px){.gbe-grid--4{grid-template-columns:repeat(2,1fr)}.gbe-grid--3{grid-template-columns:1fr 1fr}.gbe-menu{display:none}.gbe-menu.is-open{display:flex;position:absolute;top:76px;left:0;right:0;background:var(--gbe-cream);padding:20px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--gbe-border)}.gbe-menu-toggle{display:block}.gbe-nav>.gbe-btn{display:none}.gbe-hero__wrap{grid-template-columns:1fr}.gbe-hero__copy{padding:42px 28px}.gbe-hero__media{order:-1;min-height:360px}.gbe-trust{grid-template-columns:1fr 1fr}.gbe-split{grid-template-columns:1fr}.gbe-footer__grid{grid-template-columns:1fr 1fr}.gbe-mobile-actions{display:flex}.gbe-price-row{grid-template-columns:1fr 1fr}.gbe-price-row .gbe-btn{grid-column:1/-1}.gbe-footer{padding-bottom:120px}}
@media(max-width:640px){.gbe-section{padding:52px 0}.gbe-shell{width:min(calc(100% - 24px),var(--gbe-max))}.gbe-grid--4,.gbe-grid--3,.gbe-grid--2{grid-template-columns:1fr}.gbe-hero{padding-top:12px}.gbe-hero__wrap{border-radius:20px}.gbe-hero__copy{padding:30px 22px 26px}.gbe-hero__media{min-height:300px}.gbe-trust{grid-template-columns:1fr}.gbe-footer__grid{grid-template-columns:1fr}.gbe-price-row{grid-template-columns:1fr}.gbe-portrait{min-height:360px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Premium composition, with editable content and mobile-first touch targets. */
@font-face{font-family:Playfair;src:url('assets/fonts/playfair-display-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-latin-500-normal.woff2') format('woff2');font-weight:500 700;font-style:normal;font-display:swap}
@font-face{font-family:Allura;src:url('assets/fonts/allura-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
h1,h2,h3{font-family:Playfair,Georgia,serif}
:root{--gbe-terracotta:#A86B5B;--gbe-terracotta-dark:#885142;--gbe-rose:#F3E7E1;--gbe-cream:#FDFBF9;--gbe-sand:#D9C3B7;--gbe-ink:#2B2B2B;--gbe-muted:#6B6B6B;--gbe-sage:#9EA88E;--gbe-radius:6px;--gbe-shadow:none;--gbe-max:1240px}
body{font-size:15px;line-height:1.65}h1,h2,h3{letter-spacing:-.04em}h1{font-size:clamp(2.7rem,4.5vw,4.6rem)}h2{font-size:clamp(2rem,3.2vw,3rem)}h3{font-size:1.5rem}.gbe-shell{width:min(calc(100% - 64px),var(--gbe-max))}.gbe-section{padding:48px 0}.gbe-eyebrow{font-size:.65rem;letter-spacing:.2em;margin-bottom:14px}.gbe-icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.gbe-btn{font-size:.86rem;min-height:46px;padding:.7rem 1.45rem;font-weight:500;gap:14px}.gbe-btn--primary{background:linear-gradient(105deg,#a36351,#b77f6d);border:1px solid #a36351}.gbe-btn--secondary{background:rgba(253,251,249,.5)}.gbe-btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gbe-terracotta);outline-offset:4px}.gbe-header{background:rgba(253,251,249,.98);backdrop-filter:none}.admin-bar .gbe-header{top:32px}.gbe-nav{height:88px;gap:20px}.gbe-brand__text{font-size:2.2rem;letter-spacing:-.06em;line-height:1.05}.gbe-brand__text small{display:block;font-family:Arial,sans-serif;font-size:.48rem;letter-spacing:.22em;text-transform:uppercase;text-align:center;color:var(--gbe-terracotta);margin-top:8px}.gbe-menu{gap:24px}.gbe-menu a{font-size:.79rem;padding:6px 0}.gbe-menu a:hover{color:var(--gbe-terracotta-dark)}.gbe-menu .current-menu-item>a{border-bottom:1px solid var(--gbe-terracotta)}.gbe-menu li{list-style:none}.gbe-menu-toggle{color:var(--gbe-terracotta-dark)}
.gbe-hero-premium{position:relative;isolation:isolate;min-height:525px;overflow:hidden;background:var(--gbe-rose)}.gbe-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 50%;z-index:-2}.gbe-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(253,251,249,.98) 0%,rgba(253,251,249,.92) 32%,rgba(253,251,249,.22) 67%,transparent)}.gbe-hero-inner{min-height:525px;display:flex;align-items:center;position:relative;padding-block:48px}.gbe-hero-copy{width:56%;max-width:650px}.gbe-hero-copy h1{max-width:600px;line-height:1.02;font-weight:400}.gbe-hero-intro{font-size:1.06rem;max-width:455px;line-height:1.55}.gbe-hero__actions{margin:24px 0;gap:12px}.gbe-reassurance{display:flex;gap:24px;margin-top:35px}.gbe-reassurance>span{display:flex;align-items:center;gap:10px;max-width:160px}.gbe-reassurance .gbe-icon{width:31px;height:31px;color:var(--gbe-terracotta-dark)}.gbe-reassurance small{font-size:.65rem;line-height:1.5}.gbe-handwritten{position:absolute;right:0;top:28%;width:220px;color:white;font-family:"Segoe Print","Bradley Hand",cursive;font-style:italic;font-size:1.4rem;line-height:1.35;transform:rotate(-8deg);text-shadow:0 1px 8px #493023}.gbe-handwritten span{display:block;text-align:right;font-size:2rem}
.gbe-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.gbe-section-heading h2{margin:0}.gbe-text-link{color:var(--gbe-terracotta-dark);text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;gap:10px;font-size:.8rem}.gbe-text-link .gbe-icon{width:18px}.gbe-grid{gap:18px}.gbe-card{border:1px solid #e7dfd9;background:#fff;transition:box-shadow .2s ease,transform .2s ease}.gbe-card:hover{box-shadow:0 10px 25px #3928170a}.gbe-card__media{aspect-ratio:1.65}.gbe-card__media img{transition:transform .5s ease}.gbe-card:hover .gbe-card__media img{transform:scale(1.025)}.gbe-card:nth-child(2) .gbe-card__media img{object-position:80% 45%}.gbe-card:nth-child(3) .gbe-card__media img{object-position:100% 45%}.gbe-card__body{padding:18px}.gbe-card__body h3{font-size:1.45rem;letter-spacing:-.04em;margin-bottom:8px}.gbe-card__body p{font-size:.86rem;line-height:1.5}.gbe-card__meta{flex-direction:column;gap:5px;margin:14px 0}.gbe-card__meta span{display:flex;gap:9px;align-items:center;font-size:.8rem}.gbe-card__meta .gbe-icon{width:18px;height:18px;color:var(--gbe-terracotta)}.gbe-card__body>p:last-child{margin:15px 0 0}.gbe-admin-note{font-size:12px;background:#f5ece6;padding:8px 12px;border-left:2px solid var(--gbe-terracotta);margin-top:14px}
.gbe-about-section{background:linear-gradient(90deg,#f4ebe5,#fdfbf9);padding-block:36px}.gbe-about-layout{display:grid;grid-template-columns:.9fr 1.25fr 1fr;gap:32px;align-items:center}.gbe-about-photo{height:320px;border-radius:6px;overflow:hidden}.gbe-about-photo img{width:100%;height:100%;object-fit:cover;object-position:72%}.gbe-about-copy p{font-size:.94rem}.gbe-about-copy h2{font-size:2.45rem}.gbe-about-aside blockquote{position:relative;background:#f5ece7;border-radius:12px;margin:0 0 25px;padding:35px 25px 20px 40px;font-family:Georgia,serif;font-size:1.25rem;line-height:1.5}.gbe-quote-mark{position:absolute;left:12px;top:-4px;font-size:4rem;color:#d9b6a7}.gbe-about-aside cite{display:block;text-align:right;margin-top:15px;color:var(--gbe-terracotta-dark);font-size:1.4rem}.gbe-values{display:flex;justify-content:space-around;gap:12px}.gbe-values span{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;font-size:.65rem}.gbe-values svg{color:var(--gbe-terracotta);width:29px;height:29px}.gbe-local-layout{display:grid;grid-template-columns:1.25fr 1fr .85fr;gap:25px;align-items:stretch}.gbe-local-layout p{font-size:.9rem}.gbe-location-art{background:repeating-linear-gradient(35deg,transparent 0 54px,#fff8 55px 57px,transparent 58px 100px),repeating-linear-gradient(110deg,#eae0d8 0 65px,#f9f3ed 66px 70px,#eae0d8 72px 120px);min-height:235px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:6px;gap:6px}.gbe-location-art svg{width:45px;height:45px;color:var(--gbe-terracotta)}.gbe-location-art strong{font:1.65rem Georgia,serif}.gbe-location-art small{color:#766459;font-size:.72rem}.gbe-local-card{border:1px solid var(--gbe-border);border-radius:6px;overflow:hidden;background:#fff}.gbe-local-card>img{height:120px;width:100%;object-fit:cover;object-position:70% 70%}.gbe-local-card>div{padding:18px}.gbe-local-card h3{font-size:1.55rem}.gbe-local-card p{margin:0;font-size:.78rem}.gbe-faq-section{border-top:1px solid var(--gbe-border)}.gbe-faq{max-width:820px}.gbe-faq details{border-radius:0;border-width:0 0 1px;padding:0;background:transparent}.gbe-faq summary{font-size:.95rem;font-weight:500}.gbe-faq details p{font-size:.88rem;color:var(--gbe-muted)}.gbe-final-cta{text-align:center;background-size:cover;background-position:center 65%;padding:42px 0}.gbe-final-cta h2{font-size:2.35rem}.gbe-final-cta p{font-size:.86rem}.gbe-footer{padding:30px 0 35px;font-size:.75rem}.gbe-footer__grid{grid-template-columns:1.5fr 1fr 1fr}.gbe-footer strong{font-weight:500}.gbe-footer__grid>div:first-child strong{font:1.75rem Georgia,serif}.gbe-mobile-actions{bottom:0;left:0;right:0;border-radius:0;border-width:1px 0 0;box-shadow:0 -4px 15px #31241808;padding-bottom:max(8px,env(safe-area-inset-bottom));background:#fdfbf9}.gbe-mobile-actions a{border-right:1px solid #eaded7;font-weight:400;font-size:.7rem}.gbe-mobile-actions a:last-child{border-right:0}.gbe-mobile-actions span{color:var(--gbe-terracotta);margin-bottom:3px}.gbe-page-hero{padding:60px 0 20px}.gbe-page-hero h1{font-size:clamp(2.6rem,5vw,4rem)}.gbe-page-hero .gbe-portrait{min-height:320px}.gbe-booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.gbe-booking-card{background:var(--gbe-rose);border:1px solid var(--gbe-border);border-radius:12px;padding:50px 35px;text-align:center}.gbe-booking-icon svg{width:44px;height:44px;color:var(--gbe-terracotta);margin-bottom:20px}.gbe-booking-card h2{font-size:2.3rem}.gbe-booking-disclosure{font-size:.72rem;margin-top:18px}.gbe-booking-steps ol{counter-reset:steps;padding:0;list-style:none}.gbe-booking-steps li{counter-increment:steps;position:relative;padding:0 0 25px 50px}.gbe-booking-steps li:before{content:"0" counter(steps);position:absolute;left:0;font:1.5rem Georgia,serif;color:var(--gbe-terracotta)}.gbe-booking-steps strong,.gbe-booking-steps span{display:block}.gbe-booking-steps strong{font-weight:500}.gbe-booking-steps span{font-size:.87rem;color:var(--gbe-muted)}
@media(max-width:1050px){.gbe-menu{gap:15px}.gbe-nav>.gbe-btn{display:none}.gbe-about-layout{grid-template-columns:1fr 1.3fr}.gbe-about-aside{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px}.gbe-about-aside blockquote{margin:0}.gbe-reassurance{gap:15px}.gbe-handwritten{right:15px}.gbe-local-layout{grid-template-columns:1.1fr 1fr}.gbe-local-card{display:none}}
@media(max-width:782px){.admin-bar .gbe-header{top:46px}.gbe-shell{width:calc(100% - 36px)}.gbe-section{padding:32px 0}.gbe-nav{height:76px}.gbe-brand__text{font-size:1.8rem}.gbe-hero-premium{display:flex;flex-direction:column;min-height:0}.gbe-hero-photo{position:relative;height:285px;object-position:70% 50%;z-index:0}.gbe-hero-shade{display:none}.gbe-hero-inner{min-height:0;padding:28px 0 24px;position:static}.gbe-hero-copy{width:100%;max-width:none;text-align:center}.gbe-hero-copy h1{font-size:2.8rem;max-width:420px;margin-inline:auto}.gbe-hero-copy .gbe-eyebrow{font-size:.6rem}.gbe-hero-intro{font-size:.95rem;max-width:370px;margin-inline:auto}.gbe-hero__actions{justify-content:center}.gbe-hero__actions .gbe-btn{width:100%;max-width:370px}.gbe-reassurance{justify-content:center;gap:18px;margin-top:25px}.gbe-reassurance>span{flex:1;flex-direction:column;gap:7px}.gbe-reassurance small{font-size:.62rem}.gbe-handwritten{top:155px;right:20px;width:190px;font-size:1.2rem}.gbe-section-heading{gap:12px;align-items:center}.gbe-section-heading .gbe-eyebrow{display:none}.gbe-section-heading h2{font-size:2.1rem}.gbe-section-heading>.gbe-text-link{font-size:.65rem;max-width:130px}.gbe-services-section .gbe-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px;gap:14px}.gbe-services-section .gbe-card{flex:0 0 78%;max-width:340px;scroll-snap-align:start}.gbe-card__media{aspect-ratio:1.7}.gbe-about-layout{gap:20px}.gbe-about-photo{height:280px}.gbe-about-copy h2{font-size:2.1rem}.gbe-about-copy p{font-size:.82rem}.gbe-about-copy .gbe-btn{font-size:.75rem;padding:.65rem 1rem}.gbe-about-aside{gap:20px}.gbe-about-aside blockquote{font-size:1rem;padding:25px 20px 18px 34px}.gbe-local-layout{gap:20px}.gbe-location-art{min-height:220px}.gbe-local-layout h2{font-size:2rem}.gbe-local-layout .gbe-btn{font-size:.74rem}.gbe-final-cta h2{font-size:2rem}.gbe-footer{padding-bottom:110px}.gbe-booking-layout{grid-template-columns:1fr;gap:35px}.gbe-booking-card{padding:35px 22px}.gbe-booking-steps h2{font-size:2rem}.gbe-portrait{min-height:300px}.gbe-page-hero{padding-top:35px}}
@media(max-width:520px){.gbe-about-layout{grid-template-columns:1fr}.gbe-about-photo{height:260px}.gbe-about-aside{grid-template-columns:1fr}.gbe-values{padding:8px 0}.gbe-local-layout{grid-template-columns:1fr}.gbe-location-art{min-height:200px}.gbe-footer__grid{grid-template-columns:1fr 1fr}.gbe-footer__grid>div:first-child{grid-column:1/-1}.gbe-hero-photo{height:250px}.gbe-handwritten{top:125px}.gbe-hero-copy h1{font-size:2.65rem}.gbe-card__body{padding:16px}.gbe-mobile-actions{display:flex}}
@media(prefers-reduced-motion:reduce){.gbe-card__media img{transition:none}.gbe-card:hover .gbe-card__media img{transform:none}}
.gbe-handwritten{font-family:Allura,cursive;font-style:normal;font-size:2rem}.gbe-brand__text{font-family:Playfair,Georgia,serif}.gbe-brand__text i,.gbe-about-aside cite{font-family:Allura,cursive;font-weight:400;font-size:1.15em}.gbe-handwritten{line-height:1.15}.gbe-about-aside cite{font-size:2rem}
/* Entreprises */
.gbe-business-section{background:#f3e7e1;scroll-margin-top:110px}.gbe-business-details{background:#fdfbf9;border:1px solid #d9c3b7;padding:32px;border-radius:10px}.gbe-business-details li{margin-bottom:12px}.gbe-form input,.gbe-form textarea{max-width:100%}.gbe-card a[href^="mailto:"]{overflow-wrap:anywhere}
/* Logo original : cadrage des marges transparentes sans modifier le fichier. */
.gbe-official-logo{display:block;position:relative;width:200px;aspect-ratio:720/300;overflow:hidden;flex-shrink:0}.gbe-official-logo img{position:absolute;max-width:none;max-height:none;width:177.7778%;height:auto;left:-38.8889%;top:-88.3333%}.gbe-footer .gbe-official-logo{width:220px}.gbe-btn--primary:hover{background:#945b4a;color:#fff}.gbe-form .gbe-btn{justify-self:start}.gbe-section .gbe-split:has(.gbe-form){align-items:start}
@media(max-width:700px){.gbe-official-logo{width:165px}.gbe-nav{gap:12px}.gbe-footer .gbe-official-logo{width:190px}}

/* Mobile: keep the signature inside the hero photo and show Elodie's full portrait. */
@media(max-width:782px){
.gbe-handwritten{top:24px;right:18px;width:min(54%,230px);margin:0;padding:10px 12px;font-size:clamp(1.35rem,5.5vw,1.8rem);line-height:1.12;transform:rotate(-4deg);border-radius:12px;background:rgba(55,38,27,.18);text-shadow:0 2px 5px rgba(30,20,15,.65)}
.gbe-handwritten span{font-size:1.55rem;margin-top:4px}
.gbe-about-photo{height:auto;aspect-ratio:1/1}
.gbe-about-photo img{object-position:50% 50%;object-fit:contain}
}

/* Actual area map, with readable attribution and no scroll capture. */
.gbe-local-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);align-items:center;gap:36px}
.gbe-area-card{margin:0;min-width:0;background:#fff;border:1px solid var(--gbe-border);border-radius:12px;overflow:hidden}
.gbe-area-card figcaption{padding:18px 20px;background:#f5ece7;display:flex;flex-direction:column;gap:4px}
.gbe-area-card figcaption strong{font:1.5rem Playfair,Georgia,serif}
.gbe-area-card figcaption span{font-size:.78rem;color:var(--gbe-muted)}
.gbe-area-map{height:360px;width:100%;position:relative;z-index:0;background:#efe9e0;font-family:Inter,sans-serif}
.gbe-map-fallback{padding:45px 24px;text-align:center}.gbe-map-fallback a{text-decoration:underline}
.gbe-area-card .gbe-area-note{padding:14px 20px;margin:0;font-size:.75rem;line-height:1.6;color:var(--gbe-muted)}
.gbe-area-note>span{color:#a86b5b;margin-right:5px}.gbe-map-label{font-family:Inter,sans-serif;font-weight:500}
.gbe-area-map .leaflet-control-attribution{font-size:10px}.gbe-area-map .leaflet-control-attribution a{text-decoration:underline}
.gbe-zone-map{max-width:1000px}
@media(max-width:782px){.gbe-local-layout{grid-template-columns:1fr;gap:24px}.gbe-area-map{height:340px}.gbe-area-card figcaption{padding:16px}.gbe-area-card figcaption strong{font-size:1.35rem}.gbe-area-card .gbe-area-note{padding:12px 16px}}

/* Package offers use the existing service cards. */
.gbe-cures{margin-top:36px;padding-top:28px;border-top:1px solid var(--gbe-border)}.gbe-cures h2{font-size:clamp(1.8rem,3vw,2.4rem)}.gbe-cures .gbe-card{background:#fdfbf9}.gbe-cures .gbe-cure-price{font:2rem Playfair,Georgia,serif;color:var(--gbe-terracotta-dark);margin:14px 0 0}.gbe-cure-price small{display:block;font: .78rem Inter,sans-serif;color:var(--gbe-muted);margin-top:4px}.gbe-cure-terms{font-size:.85rem;color:var(--gbe-muted);margin-top:18px}

/* Five native service cards, preserving the mobile horizontal layout. */
@media(min-width:1200px){.gbe-services-section .gbe-grid--5{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.gbe-services-section .gbe-grid--5 .gbe-service-card h3{font-size:27px}}
@media(min-width:783px) and (max-width:1199px){.gbe-services-section .gbe-grid--5{grid-template-columns:repeat(2,minmax(0,1fr))}}
