/* Yova Nord : feuille de style de la page d'accueil */

  html { scroll-behavior:smooth; scroll-padding-top:90px; }
  body { margin:0; background:#FFFFFF; font-family:'Lato',sans-serif; -webkit-font-smoothing:antialiased; }
  a { color:#0D2549; text-decoration:none; }
  a:hover { color:#CDBB91; }
  @keyframes yn-team-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  @media (max-width:860px){
    [data-yn-2col]{grid-template-columns:minmax(0,1fr) !important}
    [data-yn-2col]>div{border-right:0 !important}
  }
  @media (hover:none){
    /* pas de survol au doigt : la fonction reste visible sous le nom */
    [data-yn-team]>div>div:last-child>span:last-child{opacity:1 !important;transform:none !important}
    [data-yn-hoverhint]{display:none}
  }
  @media (max-width:900px){
    [data-yn-solutions]{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
    [data-yn-steps]{padding-left:24px !important;padding-right:24px !important}
  }
  @media (max-width:760px){
    html{scroll-padding-top:112px}
    /* en-tête : logo + réservation + téléphone, puis la navigation sur une ligne */
    [data-yn-header]{padding:12px 16px !important;gap:10px 12px !important}
    [data-yn-logo] img{height:26px !important}
    [data-yn-headright]{display:contents !important}
    [data-yn-cta]{margin-left:auto;font-size:9.5px !important;letter-spacing:.14em !important;padding:11px 12px !important;white-space:nowrap}
    [data-yn-tel]{width:38px !important;height:38px !important}
    [data-yn-nav]{display:flex !important;order:3;flex:0 0 100%;justify-content:space-between;gap:8px;border-top:1px solid rgba(205,187,145,.25);padding-top:10px}
    [data-yn-nav] a{font-size:9.5px !important;letter-spacing:.14em !important;padding:4px 0;white-space:nowrap}

    /* continuum : frise verticale au lieu des cinq colonnes */
    [data-yn-continuum]{padding:44px 20px 48px !important}
    [data-yn-hide-m]{display:none !important}
    [data-yn-stepswrap]{margin-top:24px !important}
    [data-yn-steps]{grid-template-columns:minmax(0,1fr) !important;padding:0 !important;border-bottom:1px solid rgba(205,187,145,.6)}
    [data-yn-steps]>div{display:grid !important;grid-template-columns:44px minmax(0,1fr) 34px;column-gap:14px;row-gap:6px;align-items:start !important;text-align:left !important;height:auto !important;padding:18px 0;border-top:1px solid rgba(205,187,145,.6)}
    [data-yn-steps]>div>span:nth-child(1){grid-column:1;grid-row:1 / span 2;height:auto !important;font-size:30px !important}
    [data-yn-steps]>div>div:nth-child(2),[data-yn-steps]>div>span:nth-child(4){display:none !important}
    [data-yn-steps]>div>span:nth-child(3){grid-column:2;grid-row:1;margin-top:6px !important;font-size:12px !important}
    [data-yn-steps]>div>p{grid-column:2;grid-row:2;max-width:none !important}
    [data-yn-steps]>div>button{grid-column:3;grid-row:1 / span 2;margin-top:2px !important;width:34px !important;height:34px !important}
    [data-yn-stepdetail]{grid-template-columns:minmax(0,1fr) !important;gap:12px !important;margin-top:28px !important;scroll-margin-top:120px}

    [data-yn-terr]{border-left:0 !important;border-top:1px solid #0D2549;min-height:260px !important}
    [data-yn-2col]>div:first-child{border-bottom:1px solid #0D2549}
  }
  @media (max-width:640px){
    h2{font-size:22px !important;letter-spacing:.14em !important;line-height:1.25}
    /* héros : la hauteur suit le texte */
    [data-yn-hero]{height:auto !important;min-height:min(560px,calc(100svh - 110px))}
    [data-yn-hero]>.yn-img{position:absolute !important;inset:0}
    [data-yn-herobody]{position:relative !important;inset:auto !important;padding:56px 20px !important;min-height:inherit;box-sizing:border-box}
    [data-yn-herobody]>div{gap:20px !important}
    [data-yn-eyebrow]{letter-spacing:.2em !important;line-height:1.7}
    [data-yn-h1]{font-size:clamp(30px,9.4vw,40px) !important;letter-spacing:.06em !important;line-height:1.12 !important}
    [data-yn-herocta]{flex-direction:column;align-items:stretch;gap:10px !important}
    [data-yn-herocta] a{text-align:center;padding-left:16px !important;padding-right:16px !important}

    [data-yn-sechead]{flex-wrap:wrap;gap:10px 20px !important;margin-bottom:24px !important}
    [data-yn-sechead]>a{white-space:nowrap;margin-left:0 !important}
    [data-yn-solutions]{grid-template-columns:minmax(0,1fr) !important}
    [data-yn-solutions]>div>div:first-child{height:200px !important}
    [data-yn-solutions] p{font-size:14px !important}
    [data-yn-solutions] h3{font-size:14px !important;letter-spacing:.2em !important}

    [data-yn-team]>div{flex-basis:230px !important;height:310px !important}
    [data-yn-logos]{grid-template-columns:repeat(2,minmax(0,1fr)) !important}

    /* 16px évite le zoom automatique d'iOS dans les champs */
    #yn-contact-form input,#yn-contact-form select,#yn-contact-form textarea{font-size:16px !important}

    [data-yn-cal]{width:calc(100vw - 16px) !important;max-height:calc(100dvh - 16px) !important}
    [data-yn-calhead]{padding:16px !important;gap:14px !important}
    [data-yn-calhead] h3{font-size:17px !important;letter-spacing:.1em !important}
    [data-yn-calbody]{min-height:0 !important;height:72dvh}
  }
  @media (max-width:420px){
    h1{letter-spacing:.06em !important;overflow-wrap:break-word;hyphens:auto}
  }
  @media (max-width:360px){
    [data-yn-header]{padding:12px !important;gap:10px 8px !important}
    [data-yn-logo] img{height:22px !important}
    [data-yn-cta]{font-size:9px !important;letter-spacing:.04em !important;padding:11px 8px !important}
    [data-yn-tel]{width:36px !important;height:36px !important}
    [data-yn-nav] a{letter-spacing:.08em !important}
  }
  @media (prefers-reduced-motion:reduce){
    [data-yn-team]{animation:none !important}
  }

  /* images */
  .yn-img{display:block;position:relative;width:100%;height:100%;aspect-ratio:3/2;overflow:hidden;background:rgba(127,127,127,.08)}
  .yn-img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;object-position:var(--yn-pos,50% 50%)}
  .yn-img-vide{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:12px;box-sizing:border-box;font:500 13px/1.3 system-ui,-apple-system,sans-serif;letter-spacing:.01em;color:inherit}
  .yn-img-vide>svg{opacity:.45}
  .yn-img-vide>span:last-child{max-width:90%;opacity:.75}
  .yn-img-ring{position:absolute;inset:0;border:1.5px dashed currentColor;opacity:.35;pointer-events:none}
  [data-yn-stepdetail][hidden],[data-cal-overlay][hidden]{display:none !important}

  /* survols */
  .hv1:hover{background:#0D2549 !important;border-color:#0D2549 !important}
  .hv2:hover{color:#CDBB91 !important}
  .hv3:hover{background:#CDBB91 !important;color:#0D2549 !important}
  .hv4:hover{background:#FFFFFF !important;color:#0D2549 !important}
  .hv5:hover{background:#CDBB91 !important}
  .hv6:hover{border-color:#CDBB91 !important;color:#CDBB91 !important}
  .hv7:hover{--yn-hv:1 !important}
  .hv8:hover{background:#0D2549 !important;transform:scale(1.35) !important;box-shadow:0 0 0 9px rgba(205,187,145,.3) !important}
  .hv9:hover{animation-play-state:paused !important}
  .hv10:hover{--yn-tv:1 !important}
  .hv11:hover{background:#F7F3EC !important}

/* En-tête blanc : survol lisible sur fond clair */
[data-yn-nav] a:hover{color:#8C7A45 !important}

/* Bouton « réserver un échange » et téléphone : remplissage doré progressif au survol */
[data-yn-cta],[data-yn-tel]{background-image:linear-gradient(#CDBB91,#CDBB91);background-repeat:no-repeat;background-position:left center;background-size:0% 100%;transition:background-size .4s ease,color .3s ease,border-color .3s ease}
[data-yn-cta]:hover,[data-yn-tel]:hover{background-size:100% 100% !important;border-color:#CDBB91 !important;color:#0D2549 !important}
@media (prefers-reduced-motion:reduce){[data-yn-cta],[data-yn-tel]{transition:none}}
