/*
Theme Name: La Conciergerie B&B Signature
Theme URI: https://laconciergeriebnb.fr
Author: La Conciergerie B&B Signature
Description: Thème WordPress indépendant, léger et responsive pour une conciergerie de locations saisonnières. Formulaire de devis intégré, installation guidée, sans dépendance à Elementor.
Version: 1.2.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: bbs-signature
License: GPL-2.0-or-later
*/
:root{--ink:#24221f;--text:#55514c;--sand:#e7ddcb;--gold:#b39769;--gold-dark:#94774d;--paper:#fff;--cream:#f9f7f2;--cream2:#f0ece4;--line:#e8e2d7;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif;--radius:5px;--max:1180px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.section{padding:92px 0}.section-sm{padding:70px 0}.cream{background:var(--cream)}.cream2{background:var(--cream2)}.eyebrow{font:700 11px/1.4 var(--sans);letter-spacing:.21em;text-transform:uppercase;color:var(--gold-dark);margin:0 0 17px}.serif{font-family:var(--serif)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-weight:400;letter-spacing:-.035em}h1{font:400 clamp(42px,5.1vw,74px)/1.08 var(--serif)}h2{font:400 clamp(34px,3.5vw,52px)/1.15 var(--serif)}h3{font:400 26px/1.22 var(--serif)}p{color:var(--text)}.intro{max-width:720px;font-size:17px;line-height:1.8}.muted{color:#77716a}.gold{color:var(--gold-dark)}.lead{font-size:18px;line-height:1.8}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:11px 23px;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:#fff;font-weight:700;font-size:12px;letter-spacing:.065em;text-transform:uppercase;transition:.2s}.btn:hover{background:#403b35;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover{color:#fff}.btn-gold{background:var(--gold-dark);border-color:var(--gold-dark)}.btn-gold:hover{background:#79613f}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:6px}.text-link:hover{color:var(--gold-dark)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.topnote{background:var(--cream2);padding:8px 0;text-align:center;color:#575047;letter-spacing:.11em;text-transform:uppercase;font-size:10px}.site-head{background:#fff;position:relative;z-index:5;border-bottom:1px solid var(--line)}.head-inner{height:112px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{width:300px;flex:none;display:block}.brand img{width:100%;height:auto;max-height:83px;object-fit:contain;object-position:left}.nav{display:flex;gap:25px;align-items:center;margin-left:auto}.nav a{font-weight:600;font-size:12px;letter-spacing:.012em;white-space:nowrap;color:#403b36}.nav a:hover,.nav a[aria-current=page]{color:var(--gold-dark)}.head-cta{white-space:nowrap;font-size:11px;padding:9px 18px;min-height:42px}.menu-toggle{display:none;border:1px solid var(--line);padding:8px 11px;background:#fff;color:var(--ink);font-size:13px}.hero{overflow:hidden;background:var(--cream)}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;min-height:560px;max-width:1440px;margin:auto}.hero-content{padding:89px 7% 83px max(5vw,32px);align-self:center}.hero-content h1{max-width:630px}.hero-content .lead{max-width:550px}.hero-photo{min-height:520px;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,29,24,.06),transparent 45%)}.hero-float{position:absolute;bottom:22px;left:22px;background:rgba(255,255,255,.93);padding:13px 18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#5d5043;z-index:2}.benefits{border-block:1px solid var(--line)}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr)}.benefit{padding:25px 20px 25px 0;font-size:13px;color:#615c54}.benefit+.benefit{border-left:1px solid var(--line);padding-left:30px}.benefit strong{display:block;color:var(--ink);font-family:var(--serif);font-size:21px;font-weight:400;margin-bottom:4px}.title-row{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:33px}.title-row h2{max-width:650px;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:#fff;overflow:hidden;border:1px solid var(--line)}.card-photo{width:100%;height:225px;object-fit:cover}.card-body{padding:24px 24px 29px}.card-body h3{margin-bottom:12px}.card-body p{font-size:14px;min-height:80px}.card .text-link{margin-top:6px}.feature-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw}.feature-split.reverse .feature-image{order:2}.feature-image{height:470px;width:100%;object-fit:cover}.checks{list-style:none;margin:23px 0;padding:0}.checks li{position:relative;padding:8px 0 8px 27px;color:#514b43}.checks li:before{content:'✓';color:var(--gold-dark);position:absolute;left:0}.strip{padding:55px 0;background:#282721;color:white}.strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:36px}.strip h2{margin:0;color:#fff;font-size:38px}.strip p{color:#e0d8cb;margin:8px 0 0}.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.pricing article{background:white;border:1px solid var(--line);padding:32px}.pricing article.featured{background:#292821;color:#fff}.pricing article.featured p,.pricing article.featured li{color:#ddd8cd}.pricing article h3{margin:0 0 8px}.pricing small{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--gold-dark);font-weight:700}.pricing ul{list-style:none;margin:20px 0 25px;padding:0}.pricing li{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.pricing article.featured li{border-color:#514f46}.pricing article.featured .btn{background:#fff;color:#292821}.page-hero{background:var(--cream);padding:78px 0 73px;border-bottom:1px solid var(--line)}.page-hero h1{max-width:870px;margin-bottom:18px}.page-hero p{max-width:750px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-item{display:grid;grid-template-columns:175px 1fr;gap:22px;background:#fff;border:1px solid var(--line);padding:16px}.service-item img{height:170px;width:175px;object-fit:cover}.service-item h3{font-size:23px;margin:6px 0 11px}.service-item p{font-size:14px;margin:0}.list-sectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sector{position:relative;background:var(--cream2);min-height:260px;overflow:hidden}.sector img{height:260px;width:100%;object-fit:cover}.sector .shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,20,21,.65),transparent 65%)}.sector h3{position:absolute;bottom:16px;left:23px;color:#fff;font-size:29px;margin:0}.notice{border-left:3px solid var(--gold);background:var(--cream);padding:20px 25px;margin:22px 0;color:#5e584e;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.step{border-top:1px solid var(--gold);padding-top:17px}.step b{color:var(--gold-dark);font-family:var(--serif);font-size:36px;font-weight:400}.step h3{margin:12px 0 10px}.form-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.form-box{background:#fff;border:1px solid var(--line);padding:36px}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;margin-bottom:17px}.field label{font-weight:700;font-size:12px;color:#4b4741;letter-spacing:.03em;margin-bottom:6px}.field input,.field textarea,.field select{border:1px solid #dad4c9;border-radius:2px;background:#fff;padding:11px 12px;width:100%;font-size:15px;color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid rgba(179,151,105,.35);border-color:var(--gold-dark)}.field textarea{min-height:140px;resize:vertical}.consent{display:flex;gap:10px;align-items:start;font-size:12px;color:#5a564e;margin:12px 0 20px}.consent input{margin-top:5px}.consent a{text-decoration:underline}.success{background:#e9f3eb;color:#184a2b;border:1px solid #a7cfb0;padding:16px;margin-bottom:25px}.error{background:#fcece9;color:#79392c;border:1px solid #dfb8b0;padding:16px;margin-bottom:25px}.footer{background:#f6f4ee;padding:65px 0 28px;border-top:1px solid var(--line)}.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:65px}.foot-brand{max-width:320px;margin-bottom:16px}.foot-grid h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin:13px 0 14px}.foot-grid a{display:block;font-size:14px;color:#554f47;padding:4px 0}.foot-grid a:hover{color:var(--gold-dark)}.foot-grid p{font-size:14px;max-width:380px}.foot-bottom{border-top:1px solid var(--line);margin-top:35px;padding-top:19px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:12px;color:#797166}.foot-bottom a{color:inherit}.entry{max-width:830px;margin:auto}.entry img{height:auto}.subtle{font-size:13px;color:#7e766e}.wp-block-image{margin:1em 0}.alignwide{max-width:1100px;margin-left:auto;margin-right:auto}.screen-reader-text{clip-path:inset(50%);position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap}.screen-reader-text:focus{clip-path:none;position:fixed;top:10px;left:10px;width:auto;height:auto;background:white;padding:12px;z-index:100}.copy{max-width:830px}.copy p{margin-bottom:18px}.copy h2{font-size:34px;margin-top:33px}
@media(max-width:1120px){.head-inner{height:99px}.brand{width:255px}.nav{gap:14px}.nav a{font-size:11px}.head-cta{padding:8px 13px}.hero-content{padding:70px 5%}.hero-grid{min-height:500px}}
@media(max-width:900px){.brand{width:240px}.menu-toggle{display:block}.head-inner{height:90px}.head-cta{display:none}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 16px 30px #0002;padding:20px 24px;flex-direction:column;align-items:stretch;gap:15px}.nav.is-open{display:flex}.nav a{font-size:15px;padding:5px 0}.hero-grid{grid-template-columns:1fr}.hero-content{padding:65px 5% 60px}.hero-photo{min-height:360px;height:390px}.feature-split,.form-grid{grid-template-columns:1fr;gap:35px}.feature-split.reverse .feature-image{order:initial}.feature-image{height:390px}.cards,.pricing{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:1fr 1fr}.foot-grid{gap:30px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.section{padding:60px 0}.section-sm{padding:48px 0}.topnote{font-size:9px;padding:7px 9px}.brand{width:205px}.head-inner{height:77px}.hero-content{padding:55px 22px}.hero-content h1{font-size:45px}.hero-photo{height:290px;min-height:290px}.hero-float{font-size:9px}.benefit-grid,.cards,.pricing,.service-grid,.list-sectors,.steps,.foot-grid,.field-grid{grid-template-columns:1fr}.benefit{padding:17px 0}.benefit+.benefit{padding-left:0;border-left:0;border-top:1px solid var(--line)}.title-row{display:block}.title-row .text-link{margin-top:18px}.card-photo{height:220px}.card-body p{min-height:0}.feature-image{height:290px}.service-item{grid-template-columns:115px 1fr;gap:13px;padding:11px}.service-item img{width:115px;height:145px}.service-item h3{font-size:21px}.service-item p{font-size:13px}.page-hero{padding:53px 0}.form-box{padding:21px}.strip .wrap{flex-direction:column;align-items:start}.strip h2{font-size:32px}.foot-grid{gap:17px}.foot-bottom{display:block}.foot-bottom span{display:block;margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
/* Navigation WordPress classique */
.nav-list{list-style:none;display:flex;align-items:center;gap:25px;margin:0;padding:0}.nav-list li{list-style:none;margin:0;padding:0}
@media(max-width:1120px){.nav-list{gap:14px}}
@media(max-width:900px){.nav-list{flex-direction:column;align-items:stretch;gap:15px}}


/* ---------------------------------------------------------------
   VERSION 1.1 — identité Signature
   Logo horizontal agrandi et centré, navigation sur une deuxième rangée.
   Les images de l’en-tête restent sur fond blanc ; le pied utilise un PNG
   réellement transparent afin de se fondre dans la couleur sable.
   --------------------------------------------------------------- */
@media (min-width:901px) {
  .site-head .head-inner {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    grid-template-rows: auto auto;
    height: auto;
    min-height: 0;
    gap: 7px 24px;
    padding-top: 20px;
    padding-bottom: 15px;
    align-items: center;
  }
  .site-head .brand {
    grid-row: 1;
    grid-column: 1 / -1;
    justify-self: center;
    width: min(620px,100%);
    max-width: 100%;
  }
  .site-head .nav {
    grid-row: 2;
    grid-column: 2;
    margin: 0;
    justify-self: center;
  }
  .site-head .head-cta {
    grid-row: 2;
    grid-column: 3;
    justify-self: end;
  }
}
.site-head .brand img {
  display: block;
  margin: auto;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
.site-head .nav-list {
  display: flex;
  gap: 24px;
  list-style: none;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.site-head .nav-list li { list-style: none; }
.footer .foot-brand {
  display: block;
  width: 100%;
  max-width: 365px;
  height: auto;
  background: transparent;
  margin-bottom: 19px;
}
@media (max-width:900px) {
  .site-head .head-inner {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    gap: 5px 0;
    height: auto;
    min-height: 0;
    padding-top: 15px;
    padding-bottom: 12px;
    align-items: center;
  }
  .site-head .brand {
    grid-row: 1;
    grid-column: 1 / -1;
    justify-self: center;
    width: min(510px, 100%);
    max-width: 100%;
    margin: auto;
  }
  .site-head .menu-toggle {
    grid-row: 2;
    grid-column: 2;
    justify-self: end;
    display: block;
  }
  .site-head .nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: 0;
  }
  .site-head .nav.is-open { display: flex; }
  .site-head .nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    width: 100%;
  }
}
@media (max-width:650px) {
  .site-head .head-inner { padding-top: 12px; padding-bottom: 12px; row-gap: 4px; }
  .site-head .brand { width: min(370px,100%); }
  .site-head .menu-toggle { padding: 8px 14px; }
  .footer .foot-brand { max-width: min(390px,100%); }
}

/* Version 1.2.0 — Photographies personnalisées pour La Conciergerie B&B Signature.
   Le thème utilise désormais des visuels optimisés au format WebP. */
.hero-photo img { object-position: center 38%; }
.card-photo,.service-item img,.feature-image { background-color:#eeeae2; }
@media(max-width:900px) { .hero-photo img { object-position: center 36%; } }
@media(max-width:650px) { .hero-photo img { object-position: center 28%; } }
