/* Couche client Jonathan Renaudin, posée sur le modèle « accueil-premium » de la bibliothèque.
   Palette : lagoon blue (boutons), cloud white (fonds), noir en accent.
   Police : Outfit (variable 300–800), hébergée dans fonts/. */
@font-face{font-family:"Outfit";font-style:normal;font-weight:300 800;font-display:swap;src:url(fonts/outfit-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Outfit";font-style:normal;font-weight:300 800;font-display:swap;src:url(fonts/outfit-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Repli au gabarit proche d'Outfit pour limiter le saut à l'affichage. */
@font-face{font-family:"Outfit repli";src:local("Arial");size-adjust:97%;ascent-override:100%;descent-override:26%}

html{scrollbar-color:#a7adab #f4f3ee}
.vw-root.jr-client{
  --jr-lagoon:#10809e;
  --jr-lagoon-fonce:#0a4f66;
  --jr-noir:#121616;
  --jr-cloud:#f4f3ee;
  --jr-cloud-clair:#fbfaf7;
  --vw-bg:var(--jr-cloud);
  --vw-surface:var(--jr-cloud-clair);
  --vw-ink:var(--jr-noir);
  --vw-muted:#4f5657;
  --vw-accent:var(--jr-lagoon);
  --vw-on-accent:#fff;
  --vw-line:#dcd9cf;
  --vw-soft:#eae8e0;
  --vw-radius:8px;
  --vw-font:"Outfit","Outfit repli",system-ui,sans-serif;
  --vw-display:var(--vw-font);
  font-size:1.0625rem;line-height:1.6;
  background:var(--vw-bg);
  caret-color:var(--jr-lagoon);
}

/* Rôles typographiques */
.vw-root.jr-client h1,.vw-root.jr-client h2{font-weight:650;letter-spacing:-.02em;line-height:1.08}
.vw-root.jr-client h1{font-size:clamp(2.3rem,4vw,3.5rem);max-width:16ch}
.vw-root.jr-client h2{font-size:clamp(1.9rem,3.3vw,2.9rem)}
.vw-root.jr-client h3{font-weight:600;letter-spacing:-.015em;line-height:1.2}
.vw-root.jr-client p,.vw-root.jr-client li{text-wrap:pretty}
.vw-root.jr-client .vw-lead{font-size:1.15rem;line-height:1.6}
.vw-root.jr-client .vw-btn{font-weight:600;letter-spacing:.005em}

/* Surfaces du navigateur */
.vw-root.jr-client ::selection{background:var(--jr-lagoon);color:#fff}
.vw-root.jr-client :focus-visible{outline:3px solid var(--jr-lagoon);outline-offset:3px}
.vw-root.jr-client a{text-underline-offset:.22em;text-decoration-thickness:1px}
.vw-root.jr-client .jr-ico{width:1.15em;height:1.15em;flex:none}

/* Boutons : dégradé lagoon blue, foyer décalé sur la gauche, plus foncé vers la droite. */
.vw-root.jr-client .vw-btn:not(.vw-btn-secondary):not(.vw-btn-light){
  background:radial-gradient(140% 190% at 16% 30%,var(--jr-lagoon) 0%,var(--jr-lagoon) 34%,var(--jr-lagoon-fonce) 100%);
  background-size:150% 150%;background-position:0 0;
  border-color:var(--jr-lagoon-fonce);color:#fff;text-shadow:none;
  box-shadow:0 10px 22px -14px #0a4f66cc;
  transition:background-position .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)
}
.vw-root.jr-client .vw-btn:not(.vw-btn-secondary):not(.vw-btn-light):hover{filter:none;background-position:100% 100%;box-shadow:0 14px 26px -14px #0a4f66e6}
.vw-root.jr-client .vw-btn:not(.vw-btn-secondary):not(.vw-btn-light):active{box-shadow:0 6px 14px -10px #0a4f66cc}
.vw-root.jr-client .vw-btn-secondary{background:transparent;color:var(--jr-noir);border-color:var(--jr-noir)}
.vw-root.jr-client .vw-btn-secondary:hover{filter:none;background:#1216160d}
/* Bouton clair, sur fond noir ou photo sombre */
.vw-root.jr-client .vw-btn-light{background:var(--jr-cloud);color:var(--jr-noir);border-color:var(--jr-cloud)}
.vw-root.jr-client .vw-btn-light:hover{filter:none;background:#fff}

/* En-tête posé sur le héros, plein au défilement ; logo blanc puis logo d'origine. */
.vw-root.jr-client .vw-nav-overlay{min-height:84px;margin-bottom:-84px}
.vw-root.jr-client .vw-nav-overlay:not(.vw-is-solid):not(:has(.vw-is-open)){background:linear-gradient(180deg,#0d1314b8 0%,#0d131470 60%,#0d131400 100%)}
.vw-root.jr-client .jr-insecable{white-space:nowrap}
.vw-root.jr-client .vw-nav-overlay.vw-is-solid{box-shadow:0 1px 0 var(--vw-line),0 8px 24px -20px #12161640}
.vw-root.jr-client .jr-brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.vw-root.jr-client .jr-logo{display:grid}
.vw-root.jr-client .jr-logo img{grid-area:1/1;width:auto;height:52px;transition:opacity .25s ease}
.vw-root.jr-client .vw-nav-overlay .jr-logo-fonce{opacity:0}
.vw-root.jr-client .vw-nav-overlay.vw-is-solid .jr-logo-fonce,.vw-root.jr-client .vw-nav-overlay:has(.vw-is-open) .jr-logo-fonce{opacity:1}
.vw-root.jr-client .vw-nav-overlay.vw-is-solid .jr-logo-clair,.vw-root.jr-client .vw-nav-overlay:has(.vw-is-open) .jr-logo-clair{opacity:0}
.vw-root.jr-client .jr-brand .vw-brand-stack{padding-left:14px;border-left:1px solid currentColor;border-left-color:color-mix(in srgb,currentColor 30%,transparent);letter-spacing:-.01em}
.vw-root.jr-client .jr-brand .vw-brand-stack span{font-size:1.05rem;font-weight:650}
.vw-root.jr-client .jr-brand .vw-brand-stack small{font-size:.85rem;color:inherit;opacity:.78}
.vw-root.jr-client .vw-nav-links{gap:28px;font-size:.98rem;font-weight:500}
.vw-root.jr-client .vw-nav-links>a:not(.vw-btn):hover{text-decoration:underline}

/* Héros : la carte descend sous l'en-tête posé dessus */
.vw-root.jr-client .vw-hero-card .vw-cover{object-position:50% 55%}
.vw-root.jr-client .vw-hero-card-inner{padding-top:132px}
.vw-root.jr-client .vw-hero-card-box{padding:48px}
.vw-root.jr-client .vw-hero-card-box .vw-lead{margin-top:18px}
.vw-root.jr-client .jr-reperes{display:flex;flex-wrap:wrap;gap:6px 22px;margin:26px 0 0;padding:20px 0 0;border-top:1px solid var(--vw-line);list-style:none;font-size:.92rem;color:var(--vw-muted)}
.vw-root.jr-client .jr-reperes li{white-space:nowrap}
.vw-root.jr-client .jr-reperes li:first-child{color:var(--jr-noir);font-weight:600}

/* Prestations : quatre cartes */
.vw-root.jr-client .vw-card{background:var(--vw-surface);border:1px solid var(--vw-line);border-radius:var(--vw-radius);overflow:hidden}
.vw-root.jr-client .vw-card-body h3{font-size:1.3rem}
.vw-root.jr-client .vw-card-body p{font-size:1rem;line-height:1.6}
.vw-root.jr-client .vw-card-body a,.vw-root.jr-client .jr-lien{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:18px;min-height:44px;font-weight:600;color:var(--jr-lagoon-fonce);text-decoration:none}
.vw-root.jr-client .vw-card-body a:hover,.vw-root.jr-client .jr-lien:hover{text-decoration:underline}

/* Secteur : bandeau sur photo, voile noir */
.vw-root.jr-client .vw-band{--vw-deep:#0d1314}
.vw-root.jr-client .vw-band h2{max-width:20ch}
.vw-root.jr-client .vw-band p{color:#e4e8e6;line-height:1.7}
.vw-root.jr-client .vw-band .vw-btn{margin-top:30px}

/* Salles de bains : trois grandes photos */
.vw-root.jr-client .vw-tile-text h3{font-size:1.3rem;font-weight:600}

/* Un seul interlocuteur : fond flou plus clair, titre de point en gras, texte dessous */
.vw-root.jr-client .vw-blur::after{background:color-mix(in srgb,var(--vw-bg) 84%,transparent)}
.vw-root.jr-client .jr-points{gap:22px;margin-top:30px}
.vw-root.jr-client .jr-points li{font-weight:400;color:var(--vw-muted)}
.vw-root.jr-client .jr-points li::before{border-color:var(--jr-noir)}
.vw-root.jr-client .jr-points strong{display:block;margin-bottom:4px;color:var(--jr-noir);font-weight:600;font-size:1.1rem}

/* Ça fuit, ou un projet : bento */
.vw-root.jr-client .vw-bento-cell{justify-content:flex-start;background:var(--vw-surface)}
.vw-root.jr-client .vw-bento-cell::before{background:var(--jr-noir);margin-bottom:0}
.vw-root.jr-client .vw-bento-cell h3{margin-top:24px;font-size:1.2rem}
.vw-root.jr-client .vw-bento-cell p{font-size:.98rem;line-height:1.6}
.vw-root.jr-client .vw-bento-accent{background:var(--jr-noir);border-color:var(--jr-noir);color:#f4f3ee}
.vw-root.jr-client .vw-bento-accent h3{margin-top:0}
.vw-root.jr-client .vw-bento-accent p{color:#d9dcda;opacity:1}
.vw-root.jr-client .vw-bento-img img{object-position:50% 45%}

/* Finitions de près */
.vw-root.jr-client .vw-plain h3{font-size:1.25rem}
.vw-root.jr-client .vw-plain p{margin-top:8px;color:var(--vw-muted)}

/* Avis : le premier mis en avant, textes complets, couleurs de la palette */
@media(min-width:1081px){.vw-root.jr-client .jr-avis{grid-template-columns:1.4fr 1fr 1fr;gap:20px}}
.vw-root.jr-client .jr-avis .vw-review{padding:24px;background:var(--vw-surface);border:1px solid var(--vw-line)}
.vw-root.jr-client .jr-avis .vw-review-head{grid-template-columns:40px minmax(0,1fr)}
.vw-root.jr-client .jr-avis .vw-review-avatar{background:var(--jr-noir);font-weight:600}
.vw-root.jr-client .jr-avis .vw-review:nth-child(2) .vw-review-avatar{background:var(--jr-lagoon-fonce)}
.vw-root.jr-client .jr-avis .vw-review:nth-child(3) .vw-review-avatar{background:#3d4647}
.vw-root.jr-client .jr-etoiles{display:inline-flex;gap:2px;color:#e5a50a}
.vw-root.jr-client .jr-etoiles svg{width:17px;height:17px;fill:currentColor}
.vw-root.jr-client .jr-avis .vw-review-text{display:block;margin-top:14px;-webkit-line-clamp:unset;overflow:visible;line-height:1.6}
.vw-root.jr-client .jr-avis .vw-review:first-child .vw-review-text{font-size:1.12rem}
.vw-root.jr-client .vw-reviews-all{gap:8px;color:var(--jr-lagoon-fonce)}
.vw-root.jr-client .vw-reviews-all:hover{text-decoration:underline}

/* Étapes : fond noir, nuance lagoon en haut à droite */
.vw-root.jr-client .vw-steps-band{background:radial-gradient(110% 90% at 100% 0%,#0a4f6699 0%,transparent 60%),var(--jr-noir);color:#f4f3ee}
.vw-root.jr-client .vw-steps-list p{color:#d9dcda}

/* Contact */
.vw-root.jr-client .vw-form-tel{font-weight:650;letter-spacing:-.02em}
.vw-root.jr-client .vw-form-tel a{text-decoration:none}
.vw-root.jr-client .vw-field input:focus,.vw-root.jr-client .vw-field textarea:focus{outline:2px solid var(--jr-lagoon);outline-offset:1px;border-color:var(--jr-lagoon)}
.vw-root.jr-client input[type=file]{min-height:0;padding:10px;border:1px dashed var(--vw-muted);background:var(--vw-surface);font-size:.95rem;color:var(--vw-muted)}
.vw-root.jr-client input[type=file]::file-selector-button{margin-right:14px;padding:8px 14px;border:1px solid var(--jr-noir);border-radius:6px;background:transparent;color:var(--jr-noir);font:600 .92rem var(--vw-font);cursor:pointer}
.vw-root.jr-client input[type=file]::file-selector-button:hover{background:#1216160d}

/* Pied de page sur photo, voile noir */
.vw-root.jr-client .vw-footer-photo{--vw-deep:#0d1314}
.vw-root.jr-client .vw-footer-photo .jr-logo img{height:44px}
.vw-root.jr-client .vw-footer-photo .jr-brand{color:#f4f3ee}
.vw-root.jr-client .vw-footer-tel{color:#f4f3ee;font-size:1.05rem;font-weight:600}
.vw-root.jr-client .jr-legal{margin-top:36px;padding-top:22px;border-top:1px solid #f4f3ee26;font-size:.85rem;line-height:1.7;color:#b9bfbd;max-width:none}

@media(max-width:767px){
  .vw-root.jr-client .vw-hero-card-inner{padding-top:0}
  .vw-root.jr-client .vw-hero-card-box{padding:26px}
  .vw-root.jr-client h1{font-size:2.05rem}
  .vw-root.jr-client .jr-logo img{height:40px}
  .vw-root.jr-client .jr-brand{gap:10px}
  .vw-root.jr-client .jr-brand .vw-brand-stack{padding-left:10px}
  .vw-root.jr-client .jr-reperes{flex-direction:column;gap:4px}
}
