/* NORUBI polish : douceur, boutons simples, fluidité.
   Chargé APRÈS les styles des pages. Ne change ni les textes ni la structure.
   Accessibilité : contrastes AA, focus visible, mouvement réduit respecté. */
:root{--np-line:rgba(20,56,76,.10);--np-ink:#12233f;--np-blue:#2f72b7;--np-blue-dark:#25609c}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid #1d4f8f;outline-offset:3px}

/* ---- boutons simples : aplats, coins doux, pas de dégradé brillant ---- */
.btn,.submit,.mini-button,.map-link,.nrb-contact,.nrb-line{
  background-image:none !important;box-shadow:none !important;border-radius:14px !important;
  min-height:52px;font-weight:800;letter-spacing:.02em;
  transition:background-color .15s ease,transform .15s ease}
body .btn.blue,body .submit,body .mini-button,body .nrb-contact{background:var(--np-blue) !important;color:#fff !important}
body .btn.blue:hover,body .submit:hover,body .mini-button:hover,body .nrb-contact:hover{background:var(--np-blue-dark) !important}
body .btn.line,body .nrb-line{background:#06C755 !important;color:#04210f !important}
body .btn.line:hover,body .nrb-line:hover{background:#05b24c !important}
.nrb-linebar-line,.nrb-linebar-contact{background-image:none !important;box-shadow:none !important;border-radius:14px !important;font-weight:800}
body .nrb-linebar-line{background:#06C755 !important;color:#04210f !important}
body .nrb-linebar-contact{background:var(--np-blue) !important;color:#fff !important}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:none}

/* ---- panneaux plus doux, sans flou (plus fluide) ---- */
.hero{border-radius:32px !important;border:1px solid var(--np-line) !important;
  background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(244,250,255,.92)) !important;
  box-shadow:0 10px 30px rgba(20,56,76,.08) !important}
.hero-side{border-radius:26px !important;background:rgba(255,255,255,.8) !important}
.section-panel,.form-card{border-radius:28px !important;border:1px solid var(--np-line) !important;
  box-shadow:0 8px 24px rgba(20,56,76,.07) !important;
  -webkit-backdrop-filter:none !important;backdrop-filter:none !important}
.info,.feature,.teacher-card,.review-card,.price-card,.action-card{border-radius:20px !important;
  border:1px solid var(--np-line) !important;box-shadow:0 4px 14px rgba(20,56,76,.06) !important}
.eyebrow{box-shadow:none !important;border:1px solid var(--np-line)}
.section-title::after{content:"";display:block;width:44px;height:4px;border-radius:4px;background:#ffc44d;margin:12px auto 0}
.nrb-header-inner{box-shadow:0 6px 20px rgba(20,56,76,.08) !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}

/* ---- tuiles de la home : simples et douces ---- */
.home-tile{border-radius:20px !important;background:#fff !important;border:1px solid var(--np-line) !important;
  box-shadow:0 6px 16px rgba(20,56,76,.10) !important;transition:transform .15s ease,box-shadow .15s ease}
.home-tile:hover{transform:translateY(-2px) !important;box-shadow:0 10px 22px rgba(20,56,76,.14) !important}
.home-tile--blue{background:#e6f0fd !important}
.home-tile--gold{background:#fff1cf !important}
.home-tile--shop{background:#e5f5ea !important}
.home-tile--contact{background:var(--np-blue) !important;color:#fff !important}
.home-tile--contact .note,.home-tile--contact .latin,.home-tile--contact .jp{color:#fff !important}
.home-panel{border-radius:26px !important;border:1px solid var(--np-line) !important;
  box-shadow:0 8px 24px rgba(20,56,76,.07) !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}

@media (max-width:640px){
  .hero{border-radius:24px !important}
  .section-panel,.form-card{border-radius:22px !important}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important;animation:none !important}
  .btn:hover,.home-tile:hover{transform:none !important}
}

/* ---- retour visuel au survol et au clic (home, boutons, barre LINE) ---- */
.btn:active,.submit:active,.mini-button:active,.nrb-linebar-line:active,.nrb-linebar-contact:active,.nrb-line:active,.nrb-contact:active{transform:translateY(2px) !important;filter:brightness(.94)}
.home-tile:active{transform:translateY(1px) scale(.985) !important;box-shadow:0 2px 6px rgba(20,56,76,.14) !important;filter:brightness(.96)}
.home-tile:hover .jp{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.nrb-nav li a:active{transform:translateY(1px)}
@media (prefers-reduced-motion:reduce){.btn:active,.home-tile:active,.nrb-nav li a:active{transform:none !important}}
