/* CozyGuest - gabarit des pages secteur (Narbonne - Gruissan, puis les suivants).
   S'ajoute a style.css. Chaque page choisit sa couleur d'accent avec --accent. */

.secteur-page {--accent:#5E8F9E;--accent-fond:#E8F0F1;--accent-chaud:#EFA9A3;}

/* ---------- En-tete pleine largeur ---------- */
.secteur-hero {position:relative;isolation:isolate;overflow:hidden;min-height:clamp(560px,82vh,760px);display:flex;align-items:flex-end;color:var(--white);margin-top:0;}
.secteur-hero-media {position:absolute;inset:0;z-index:-2;}
.secteur-hero-media img {width:100%;height:100%;object-fit:cover;object-position:60% 50%;transform-origin:62% 55%;animation:secteur-zoom 26s ease-in-out infinite alternate;}
.secteur-hero::before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(30,43,48,.82) 0%,rgba(30,43,48,.55) 42%,rgba(30,43,48,.08) 75%),linear-gradient(0deg,rgba(30,43,48,.55) 0%,rgba(30,43,48,0) 45%);}
.secteur-hero .wrap {padding-block:clamp(40px,7vw,86px);}
.secteur-hero .breadcrumb {padding:0;margin-bottom:clamp(26px,5vw,56px);}
.secteur-hero .breadcrumb, .secteur-hero .breadcrumb a {color:rgba(255,255,255,.85);}
.secteur-hero .eyebrow {color:#F4D3A0;}
.secteur-hero h1 {color:var(--white);max-width:15ch;margin:10px 0 18px;}
.secteur-hero-copy {max-width:620px;}
.secteur-hero-copy > p {font-size:clamp(1.05rem,1.4vw,1.2rem);color:rgba(255,255,255,.92);max-width:52ch;}
.secteur-hero .actions {margin-top:26px;}
.secteur-hero .btn-outline {border-color:rgba(255,255,255,.7);color:var(--white);background:transparent;}
.secteur-atouts {list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;font-size:.92rem;color:rgba(255,255,255,.9);}
.secteur-atouts li {display:flex;align-items:center;gap:8px;}
.secteur-atouts li::before {content:'';width:8px;height:8px;border-radius:50%;background:#F4D3A0;flex:none;}

/* Vaguelettes animees en bas de l'en-tete */
.secteur-vagues {position:absolute;left:0;right:0;bottom:-1px;height:46px;z-index:-1;color:var(--fond);}
.secteur-vagues svg {width:200%;height:100%;animation:secteur-houle 18s linear infinite;}

/* ---------- Referent ---------- */
.secteur-referent {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(26px,4vw,56px);align-items:center;}
.secteur-referent-carte {position:relative;background:var(--accent-fond);border-radius:22px;padding:clamp(26px,3.5vw,40px);}
.secteur-referent-carte h3 {font-size:1.25rem;margin-bottom:10px;color:var(--petrole);}
.secteur-referent-carte p {color:var(--petrole);margin:0;}
.secteur-pastille {width:64px;height:64px;border-radius:50%;background:var(--white);display:grid;place-items:center;margin-bottom:18px;box-shadow:var(--shadow);}
.secteur-pastille svg {width:30px;height:30px;color:var(--accent);}
.secteur-pastille::after {content:'';position:absolute;width:64px;height:64px;border-radius:50%;border:2px solid var(--accent);opacity:0;animation:secteur-onde 3.2s ease-out infinite;}
.secteur-pastille {position:relative;}

/* ---------- Services ---------- */
.secteur-services {--min:250px;}
.secteur-services .service-card {transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;}
.secteur-services .service-card:hover {transform:translateY(-4px);box-shadow:var(--panel-shadow);border-color:var(--accent);}
.secteur-icone {width:48px;height:48px;border-radius:14px;background:var(--accent-fond);display:grid;place-items:center;margin-bottom:16px;}
.secteur-icone svg {width:24px;height:24px;color:var(--accent);}

/* ---------- Etapes : trait qui relie les etapes ---------- */
.secteur-etapes {position:relative;--min:220px;counter-reset:etape;}
.secteur-etapes .step {position:relative;background:var(--white);border:1px solid var(--filet);}
.secteur-etapes .step-number {background:var(--accent);}
@media (min-width:980px) {
  .secteur-etapes::before {content:'';position:absolute;top:44px;left:4%;right:4%;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-chaud));transform-origin:left;transform:scaleX(0);transition:transform 1.4s cubic-bezier(.22,.61,.36,1) .2s;z-index:0;}
  .secteur-etapes.is-drawn::before {transform:scaleX(1);}
  .secteur-etapes .step {z-index:1;}
}

/* ---------- Le secteur ---------- */
.secteur-lieu {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(26px,4vw,56px);align-items:center;}
.secteur-lieu figure {border-radius:22px;overflow:hidden;box-shadow:var(--hero-shadow);aspect-ratio:4/3;}
.secteur-lieu figure img {width:100%;height:100%;object-fit:cover;object-position:75% 70%;transition:transform 1.2s ease;}
.secteur-lieu figure:hover img {transform:scale(1.04);}

/* ---------- Revenus ---------- */
.secteur-revenus .two-col {align-items:center;}
.secteur-flux {display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:Poppins,sans-serif;font-weight:500;}
.secteur-flux span {background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:99px;padding:10px 16px;}
.secteur-flux i {font-style:normal;opacity:.7;}

/* ---------- Communes ---------- */
.secteur-page .tags li {transition:background .3s ease,border-color .3s ease;}
.secteur-page .tags li:hover {background:var(--accent-fond);border-color:var(--accent);}

/* ---------- Animations ---------- */
@keyframes secteur-zoom {from {transform:scale(1);} to {transform:scale(1.08);}}
@keyframes secteur-houle {from {transform:translateX(0);} to {transform:translateX(-50%);}}
@keyframes secteur-onde {0% {transform:scale(1);opacity:.55;} 100% {transform:scale(1.7);opacity:0;}}
@keyframes secteur-entree {from {opacity:0;transform:translateY(18px);} to {opacity:1;transform:none;}}
.secteur-hero-copy > * {animation:secteur-entree .9s cubic-bezier(.22,.61,.36,1) both;}
.secteur-hero-copy > :nth-child(2) {animation-delay:.08s;}
.secteur-hero-copy > :nth-child(3) {animation-delay:.16s;}
.secteur-hero-copy > :nth-child(4) {animation-delay:.24s;}
.secteur-hero-copy > :nth-child(5) {animation-delay:.32s;}

@media (prefers-reduced-motion:reduce) {
  .secteur-hero-media img, .secteur-vagues svg, .secteur-pastille::after, .secteur-hero-copy > * {animation:none!important;}
  .secteur-etapes::before {transform:scaleX(1)!important;transition:none!important;}
  .secteur-services .service-card, .secteur-lieu figure img {transition:none!important;}
}

/* ---------- Page Nos secteurs : cartes ---------- */
.secteurs-cartes {--min:300px;}
.secteur-carte {display:flex;flex-direction:column;background:var(--white);border:1px solid var(--filet);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:transform .35s ease,box-shadow .35s ease;}
.secteur-carte:hover {transform:translateY(-4px);box-shadow:var(--panel-shadow);}
.secteur-carte figure {aspect-ratio:16/10;overflow:hidden;}
.secteur-carte figure img {width:100%;height:100%;object-fit:cover;transition:transform 1s ease;}
.secteur-carte:hover figure img {transform:scale(1.05);}
.secteur-carte-corps {padding:24px;display:flex;flex-direction:column;gap:10px;flex:1;}
.secteur-carte-corps h3 {font-size:1.25rem;color:var(--petrole);}
.secteur-carte-corps p {margin:0;color:var(--sourd);}
.secteur-carte-corps .btn {margin-top:auto;align-self:flex-start;}
.secteur-carte.bientot {background:var(--creme);}
.secteur-carte .small-label {color:var(--petrole);}
@media (prefers-reduced-motion:reduce) {.secteur-carte, .secteur-carte figure img {transition:none!important;}}

/* Ajustements */
.secteur-hero .breadcrumb li, .secteur-hero .breadcrumb li[aria-current] {color:rgba(255,255,255,.85);}
.secteur-vagues svg {max-width:none;}
.secteur-pastille::after {inset:0;width:auto;height:auto;}
.secteur-services {--min:300px;}
.secteur-page .faq {padding-top:clamp(56px,7vw,88px);}
@media (max-width:760px) {
  .secteur-hero::before {background:linear-gradient(180deg,rgba(30,43,48,.72) 0%,rgba(30,43,48,.78) 100%);}
  .secteur-hero-media img {object-position:70% 50%;}
}
