
:root{
  --ink:#17324a; --muted:#617081; --sea:#0f6f8f; --deep:#0b4f68;
  --sand:#f4efe6; --paper:#fffdf9; --line:#dfe6e8; --white:#fff;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:inherit;text-decoration:none} img{display:block;width:100%}
.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:18px 5vw;background:rgba(255,253,249,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,50,74,.08)}
.brand{font-family:"Playfair Display",serif;font-weight:700;font-size:1.35rem}
.nav nav{display:flex;gap:26px;font-size:.95rem}.nav nav a:hover{color:var(--sea)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;background:var(--sea);color:white;font-weight:700;box-shadow:0 8px 24px rgba(15,111,143,.2)}
.btn:hover{background:var(--deep)}.btn-small{padding:10px 17px}
.hero{min-height:82vh;display:grid;grid-template-columns:1.08fr .92fr;background:linear-gradient(120deg,#f8f4ec,#edf7f8)}
.hero-media{min-height:620px;overflow:hidden}.hero-media img{height:100%;object-fit:cover}
.hero-copy{padding:8vw 7vw;display:flex;flex-direction:column;justify-content:center}
.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:700;color:var(--sea);margin-bottom:14px}
h1,h2,h3{font-family:"Playfair Display",serif;line-height:1.08;margin:0} h1{font-size:clamp(3rem,6vw,6rem);max-width:900px} h2{font-size:clamp(2.3rem,4vw,4.5rem);max-width:850px} h3{font-size:1.55rem}
.lead{font-size:1.2rem;max-width:650px;color:var(--muted);margin:28px 0}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.text-link{font-weight:700;color:var(--sea)}
.trust{margin-top:54px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid var(--line);padding-top:26px}
.trust div{display:flex;flex-direction:column}.trust strong{font-size:1.25rem}.trust span{font-size:.9rem;color:var(--muted)}
.section{padding:100px 7vw}.section-head{max-width:850px}.section-head p{font-size:1.1rem;color:var(--muted);max-width:740px}
.stats{margin-top:55px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats article{padding:28px 20px;border-right:1px solid var(--line)}.stats article:last-child{border-right:none}.stats span{font-family:"Playfair Display",serif;font-size:2.5rem;font-weight:700}.stats p{margin:0;color:var(--muted)}
.sand{background:var(--sand)}.cards{margin-top:55px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{padding:32px;border-radius:24px;background:rgba(255,255,255,.68);border:1px solid rgba(23,50,74,.08)}.card p{color:var(--muted);margin-bottom:0}
.gallery{margin-top:45px;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:14px}
.gallery-main{grid-row:1/3;height:100%;object-fit:cover;border-radius:24px}
.gallery-placeholder{border-radius:24px;background:linear-gradient(135deg,#dcebed,#f6efe2);display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:600}
.split{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.split p{color:var(--muted);max-width:700px}.note{font-size:.95rem}
.map-card{min-height:360px;border-radius:28px;padding:42px;background:linear-gradient(145deg,var(--sea),var(--deep));color:white;display:flex;flex-direction:column;justify-content:flex-end}
.map-card span{font-size:1rem;opacity:.8}.map-card strong{font-family:"Playfair Display",serif;font-size:3rem}.map-card p{color:white;opacity:.85}
.booking{margin:0 5vw 80px;padding:64px;border-radius:30px;background:var(--ink);color:white;display:flex;justify-content:space-between;gap:40px;align-items:center}
.booking p{max-width:650px;color:#d9e2e8}.booking .eyebrow{color:#8bd1e2}.booking-actions{display:flex;gap:12px;flex-wrap:wrap}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.45);box-shadow:none}
footer{padding:30px 5vw 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted)} footer div{display:flex;flex-direction:column} footer strong{color:var(--ink)}
@media (max-width:900px){.nav nav{display:none}.hero{grid-template-columns:1fr}.hero-media{min-height:50vh}.hero-copy{padding:70px 7vw}.cards{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.booking{flex-direction:column;align-items:flex-start}}
@media (max-width:620px){.section{padding:72px 6vw}.trust{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(2){border-right:none}.cards{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:280px 160px 160px}.gallery-main{grid-column:1/3;grid-row:auto}.booking{margin:0 4vw 50px;padding:38px 28px}footer{flex-direction:column}}


.nav-actions{display:flex;align-items:center;gap:10px}
.lang-btn{border:1px solid var(--line);background:transparent;border-radius:999px;padding:9px 12px;font:inherit;font-weight:700;cursor:pointer;color:var(--ink)}
.hero-media{position:relative}.hero-badge{position:absolute;left:28px;bottom:28px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);padding:10px 16px;border-radius:999px;font-weight:700}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.feature-grid article{background:rgba(255,255,255,.68);padding:28px;border-radius:24px;border:1px solid rgba(23,50,74,.08)}
.feature-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:white;color:var(--sea);font-size:1.3rem;margin-bottom:18px}
.feature-grid p{color:var(--muted)}
.location-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.location-pills span{background:var(--sand);border-radius:999px;padding:9px 13px;font-size:.92rem}
.review-summary{margin-top:40px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;background:white;border-radius:24px;padding:28px;border:1px solid rgba(23,50,74,.08)}
.score{width:92px;height:92px;border-radius:24px;display:grid;place-items:center;background:var(--sea);color:white;font-family:"Playfair Display",serif;font-size:2.3rem;font-weight:700}
.review-summary p{margin:.3rem 0 0;color:var(--muted)}
.rate-box{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.rate-box>div{padding:30px;border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column}.rate-box strong{font-size:1.2rem}.rate-box span{color:var(--muted)}
.booking{align-items:flex-start;flex-wrap:wrap}.booking-copy{flex:1 1 430px}.inquiry-form{flex:1 1 520px;background:white;color:var(--ink);padding:28px;border-radius:24px;display:grid;gap:14px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inquiry-form label{display:grid;gap:6px;font-weight:600}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;padding:13px 14px;border:1px solid #cfd9df;border-radius:12px;font:inherit;color:var(--ink);background:#fff}.inquiry-form textarea{resize:vertical}.form-note{font-size:.85rem;color:var(--muted);margin:0}.contact-hidden{display:none}
.booking-actions{width:100%;justify-content:flex-end}
@media(max-width:900px){.feature-grid{grid-template-columns:1fr 1fr}.review-summary{grid-template-columns:auto 1fr}.review-summary .text-link{grid-column:1/3}.rate-box{grid-template-columns:1fr}}
@media(max-width:620px){.feature-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.review-summary{grid-template-columns:1fr}.review-summary .text-link{grid-column:auto}.score{width:80px;height:80px}.nav-actions .btn{display:none}}

/* Accusé de réception du formulaire — visibilité renforcée */
#formNote {
  color: #17324a !important;
  background: #e8f5f7 !important;
  border: 2px solid #0f6f8f !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  margin-top: 10px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
}

