/* Page d'accueil publique, version commerciale (demande du 05/11/2026, 12 h 55) : grandes photos de chalets
   et de montagne, couleurs du logo. Pour tous les établissements touristiques (13 h 03). Les photos sont dans /assets/accueil/ ; sans elles, un dégradé les remplace. */
.home-body{--navy:#12386e;--navy-deep:#0b2447;--teal:#22c7b8;--snow:#f6f8fb;--text:#1d2b3a;--soft:#5b6b7c;
  margin:0;background:#fff;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.55}
.home-body *{box-sizing:border-box}
.home-body h1,.home-body h2,.home-body h3{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-weight:600;letter-spacing:-.01em}
.home-body a{color:inherit}

/* En-tête : photo plein écran */
.home-hero{position:relative;min-height:min(92vh,820px);display:flex;flex-direction:column;color:#fff;overflow:hidden;
  background:linear-gradient(180deg,rgba(6,22,44,.55) 0%,rgba(6,22,44,.25) 38%,rgba(6,22,44,.72) 100%),
    url(/assets/accueil/hero.jpg) center 40%/cover no-repeat,
    linear-gradient(160deg,#5f88b3 0%,#a9c4dd 45%,#e9f0f6 70%,#5d7690 100%)}
.home-nav{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px max(16px,4vw) 0;max-width:1240px;width:100%;margin:0 auto}
.home-brand{display:inline-flex;padding:6px 10px;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.home-brand img{display:block;height:44px;width:auto}
.home-nav-links{display:flex;align-items:center;gap:22px;font-size:15px;font-weight:600}
.home-nav-links a{text-decoration:none;opacity:.92}.home-nav-links a:hover{opacity:1}
.home-nav-signin{padding:9px 16px;border:1px solid rgba(255,255,255,.7);border-radius:999px;backdrop-filter:blur(6px);background:rgba(255,255,255,.08)}
.home-hero-text{position:relative;z-index:2;margin:auto auto 0;padding:48px max(16px,4vw) 140px;max-width:1240px;width:100%}
.home-eyebrow{margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#bff3ec}
.home-eyebrow-dark{color:#0f8f84}
.home-hero h1{margin:0;max-width:760px;font-size:clamp(38px,6.4vw,74px);line-height:1.04;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.home-lead{margin:20px 0 0;max-width:600px;font-size:clamp(17px,1.7vw,20px);color:#eef4fa}
.home-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.home-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;border-radius:999px;
  font-size:16px;font-weight:700;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.home-btn:hover{transform:translateY(-1px)}
.home-btn-light{background:#fff;color:var(--navy)!important;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.home-btn-ghost{border:1.5px solid rgba(255,255,255,.85);color:#fff!important;background:rgba(255,255,255,.1);backdrop-filter:blur(6px)}
.home-btn-dark{background:var(--navy);color:#fff!important;box-shadow:0 10px 24px rgba(18,56,110,.25)}
.home-btn-outline{border:1.5px solid var(--navy);color:var(--navy)!important;background:#fff}
.home-peaks{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:90px;z-index:1}
.home-peaks path{fill:#fff}

/* Engagements */
.home-promises{position:relative;z-index:3;max-width:1180px;margin:-70px auto 0;padding:0 max(16px,3vw);
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-promise{padding:28px 26px;border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(15,39,71,.12);border:1px solid #edf1f5}
.home-promise svg{width:44px;height:44px;padding:10px;border-radius:14px;background:#e6faf7;fill:none;stroke:#0f8f84;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.home-promise h2{margin:16px 0 6px;font-size:22px;color:var(--navy-deep)}
.home-promise p{margin:0;color:var(--soft)}

/* Services : une photo par service */
.home-section{max-width:1180px;margin:0 auto;padding:96px max(16px,3vw) 40px}
.home-title{margin:0 0 34px;font-size:clamp(30px,4vw,46px);line-height:1.1;color:var(--navy-deep);max-width:760px}
.home-services{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.home-service{position:relative;display:flex;align-items:flex-end;min-height:360px;border-radius:24px;overflow:hidden;text-decoration:none;color:#fff!important;
  background-size:cover;background-position:center;box-shadow:0 14px 40px rgba(15,39,71,.14);transition:transform .2s ease,box-shadow .2s ease}
.home-service:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(15,39,71,.2)}
.home-service-text{display:grid;gap:6px;width:100%;padding:28px;background:linear-gradient(180deg,rgba(6,22,44,0) 0%,rgba(6,22,44,.78) 55%)}
.home-service strong{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:26px;font-weight:600;line-height:1.15}
.home-service small{font-size:15px;color:#e3ebf3}
.home-more{margin-top:6px;font-size:14px;font-weight:700;color:#bff3ec}
.home-photo-chalets{background-image:url(/assets/accueil/chalet-interieur.jpg),linear-gradient(150deg,#7a5a3c,#c8a27a 55%,#3e2b1d)}
.home-photo-residences{background-image:url(/assets/accueil/residence.jpg),linear-gradient(150deg,#6d8296,#c9d6e2 55%,#3b4d5f)}
.home-photo-hotellerie{background-image:url(/assets/accueil/hotel-chambre.jpg),linear-gradient(150deg,#2c6f73,#8fd0c9 55%,#173c40)}
.home-photo-coproprietes{background-image:url(/assets/accueil/copropriete.jpg),linear-gradient(150deg,#45556b,#a8b6c7 55%,#232f3d)}

/* Méthode */
.home-method{margin-top:70px;background:linear-gradient(180deg,var(--snow),#eef3f8)}
.home-method-inner{max-width:1180px;margin:0 auto;padding:90px max(16px,3vw)}
.home-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:none}
.home-steps li{padding:30px 26px;border-radius:22px;background:#fff;border:1px solid #e3e9f0}
.home-steps span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}
.home-steps h3{margin:16px 0 6px;font-size:22px;color:var(--navy-deep)}
.home-steps p{margin:0;color:var(--soft)}

/* Code de devis, sur fond de montagne */
.home-quote{padding:110px max(16px,3vw);
  background:linear-gradient(90deg,rgba(6,22,44,.78) 0%,rgba(6,22,44,.35) 70%),url(/assets/accueil/montagne.jpg) center/cover no-repeat,
    linear-gradient(160deg,#27486b,#7da1c4 60%,#d7e3ee)}
.home-quote-card{max-width:520px;margin:0 auto 0 max(0px,calc((100% - 1180px)/2));padding:36px;border-radius:24px;
  background:rgba(255,255,255,.94);backdrop-filter:blur(8px);box-shadow:0 20px 60px rgba(0,0,0,.25)}
.home-quote-card h2{margin:0 0 10px;font-size:32px;color:var(--navy-deep)}
.home-quote-card p{margin:0 0 24px;color:var(--soft)}

/* Contact */
.home-contact{max-width:860px;margin:0 auto;padding:96px max(16px,3vw);text-align:center}
.home-contact .home-title{margin:0 auto 14px}
.home-contact p{margin:0 auto 28px;max-width:600px;color:var(--soft);font-size:18px}
.home-contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}

/* Pied de page */
.home-footer{padding:48px max(16px,3vw) 56px;background:var(--navy-deep);color:#c9d6e5;text-align:center;font-size:15px}
.home-footer img{height:64px;width:auto;padding:6px 10px;border-radius:14px;background:#fff}
.home-footer p{margin:12px 0 0}.home-footer a{color:#bff3ec;font-weight:700}

/* Page d'un service */
.home-hero-small{min-height:min(62vh,560px)}
.home-hero-small .home-hero-text{padding-bottom:110px}
.home-hero.home-photo-chalets,.home-hero.home-photo-residences,.home-hero.home-photo-hotellerie,.home-hero.home-photo-coproprietes{background-size:cover;background-position:center}
.home-hero.home-photo-chalets{background-image:linear-gradient(180deg,rgba(6,22,44,.5),rgba(6,22,44,.75)),url(/assets/accueil/chalet-interieur.jpg),linear-gradient(150deg,#7a5a3c,#c8a27a 55%,#3e2b1d)}
.home-hero.home-photo-residences{background-image:linear-gradient(180deg,rgba(6,22,44,.5),rgba(6,22,44,.75)),url(/assets/accueil/residence.jpg),linear-gradient(150deg,#6d8296,#c9d6e2 55%,#3b4d5f)}
.home-hero.home-photo-hotellerie{background-image:linear-gradient(180deg,rgba(6,22,44,.5),rgba(6,22,44,.75)),url(/assets/accueil/hotel-chambre.jpg),linear-gradient(150deg,#2c6f73,#8fd0c9 55%,#173c40)}
.home-hero.home-photo-coproprietes{background-image:linear-gradient(180deg,rgba(6,22,44,.5),rgba(6,22,44,.75)),url(/assets/accueil/copropriete.jpg),linear-gradient(150deg,#45556b,#a8b6c7 55%,#232f3d)}
.home-points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.home-points li{display:flex;gap:14px;align-items:flex-start;padding:22px;border-radius:18px;background:var(--snow);border:1px solid #e6ecf2;font-size:17px}
.home-points svg{flex:0 0 26px;width:26px;height:26px;fill:none;stroke:#0f8f84;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.home-service-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

@media (max-width:860px){
  .home-nav-links a:not(.home-nav-signin){display:none}
  .home-promises,.home-steps{grid-template-columns:1fr}
  .home-services,.home-points{grid-template-columns:1fr}
  .home-service{min-height:280px}
  .home-hero-text{padding-bottom:120px}
  .home-quote-card{padding:28px 22px}
}
@media (max-width:480px){
  .home-brand img{height:36px}
  .home-btn{width:100%}
  .home-section{padding-top:72px}
}
@media (prefers-reduced-motion:reduce){.home-btn,.home-service{transition:none}.home-btn:hover,.home-service:hover{transform:none}}
.home-body main{display:block;max-width:none;margin:0;padding:0;width:auto}
.home-method .home-eyebrow{color:#0f8f84}
.home-brand img{height:52px}
@media (max-width:480px){.home-brand img{height:42px}.home-promises{margin-top:-50px}}

/* Accès aux espaces et formulaire de contact (05/11/2026, 13 h 06) */
.home-access{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.home-access .home-quote-card{max-width:none;margin:0;display:flex;flex-direction:column;align-items:flex-start}
.home-access .home-quote-card p{flex:1}
.home-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;text-align:left;padding:30px;border-radius:24px;
  background:#fff;border:1px solid #e3e9f0;box-shadow:0 18px 50px rgba(15,39,71,.08)}
.home-field{display:grid;gap:6px}.home-field-wide,.home-form-error,.home-form-note{grid-column:1/-1}
.home-field label{font-size:14px;font-weight:700;color:var(--navy-deep)}
.home-field input,.home-field select,.home-field textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid #cfd9e3;border-radius:12px;
  font:inherit;font-size:16px;color:var(--text);background:#fbfcfe}
.home-field textarea{resize:vertical}
.home-field input:focus,.home-field select:focus,.home-field textarea:focus{outline:3px solid rgba(34,199,184,.35);border-color:#22c7b8}
.home-form .home-btn{justify-self:start;border:0;cursor:pointer;font-family:inherit}
.home-form-note{margin:0!important;font-size:14px!important;color:var(--soft)}
.home-form-error{margin:0!important;padding:12px 14px;border-radius:12px;background:#fdecec;color:#9b1c1c!important;font-weight:650;font-size:15px!important}
.home-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.home-contact{position:relative}
.home-contact-done{display:grid;gap:4px;padding:26px;border-radius:20px;background:#e6faf7;color:#0b5c55;font-size:17px}
@media (max-width:860px){.home-access,.home-form{grid-template-columns:1fr}.home-form{padding:22px}}
@media (max-width:480px){.home-form .home-btn{justify-self:stretch}}
/* Sans logo (demande du 05/11/2026, 19 h 31) : le nom en texte, dans la navigation et le pied de page.
   Sans la classe .home-brand ni fond (19 h 44 : le texte blanc apparaissait sur le fond blanc du logo). */
.home-brand-text{display:inline-flex;background:none;color:#fff;font-weight:800;font-size:22px;letter-spacing:-.3px;text-decoration:none}
.home-footer-name{font-weight:800;font-size:20px;margin:0 0 6px}
