/* ============================================================
   Kayser Header — CSS scoppé (préfixe .kh-*)
   Modifiable librement. Tokens en début de fichier.
   ============================================================ */

/* Tokens exposés globalement pour être utilisables par la page auth (hors .kh) */
:root{
  --kh-ink:          #0B0B0B;
  --kh-ink-soft:     #1A1A1A;
  --kh-ivory:        #FFF5E9;
  --kh-paper:        #FFF5E9;
  --kh-gold:         #B4914E;
  --kh-gold-soft:    #C9A968;
  --kh-gold-deep:    #8E6E33;
  --kh-muted:        #6B6864;
  --kh-hairline:     rgba(11,11,11,.08);
  --kh-hairline-strong: rgba(11,11,11,.16);

  --kh-font-serif:   'Cormorant Garamond', Georgia, serif;
  --kh-font-sans:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --kh-nav-tracking: .22em;
  --kh-ease:         cubic-bezier(.2,.7,.2,1);
  --kh-container:    1280px;
}

.kh{
  font-family: var(--kh-font-sans);
  color: var(--kh-ink);
  -webkit-font-smoothing: antialiased;
}
.kh *, .kh *::before, .kh *::after{box-sizing:border-box}
.kh a{color:inherit;text-decoration:none;transition:color .25s var(--kh-ease)}
.kh a:hover, .kh a:focus, .kh a:active{text-decoration:none}
.kh button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
.kh img, .kh svg{display:block;max-width:100%}

.kh-container{max-width:var(--kh-container);margin:0 auto;padding:0 32px}

/* ============ TOP BAR ============ */
.kh-topbar{
  background:var(--kh-ivory);color:var(--kh-ink);
  font-size:12px;letter-spacing:.06em;
  border-bottom:1px solid rgba(180,145,78,.15);
}
.kh-topbar__inner{display:flex;align-items:center;justify-content:space-between;height:38px}
.kh-topbar__left,.kh-topbar__right{display:flex;align-items:center;gap:28px}
.kh-topbar__item{display:inline-flex;align-items:center;gap:8px;color:#3a3833 !important}
.kh-topbar a.kh-topbar__item:hover{color:var(--kh-gold-deep) !important}
.kh-topbar__item svg{width:14px;height:14px;stroke:var(--kh-gold-deep) !important;flex:none}
.kh-topbar__sep{width:1px;height:14px;background:rgba(0,0,0,.12)}

/* Language switcher */
.kh-lang{position:relative}
.kh-lang__btn{
  display:inline-flex;align-items:center;gap:8px;padding:6px 4px;
  font-size:12px !important;letter-spacing:.14em;text-transform:uppercase;
  color:var(--kh-ink) !important;line-height:1 !important;
  transition:color .2s var(--kh-ease);
}
.kh-lang__btn:hover{color:var(--kh-gold-deep) !important}
.kh-lang__btn svg{width:14px;height:14px}
.kh-lang__btn .kh-chev{width:10px;height:10px;transition:transform .25s var(--kh-ease)}
.kh-lang[data-open="true"] .kh-lang__btn .kh-chev{transform:rotate(180deg)}
.kh-lang__menu{
  position:absolute;top:calc(100% + 10px);right:0;
  background:#fff;border:1px solid var(--kh-hairline-strong);min-width:140px;padding:6px 0;
  box-shadow:0 20px 40px -20px rgba(0,0,0,.18);
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .25s var(--kh-ease),transform .25s var(--kh-ease),visibility .25s;
  z-index:60;
}
.kh-lang[data-open="true"] .kh-lang__menu{opacity:1;visibility:visible;transform:translateY(0)}
.kh-lang__menu a{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 16px !important;
  font-size:12px !important;letter-spacing:.14em !important;text-transform:uppercase !important;
  color:var(--kh-ink) !important;line-height:1.3 !important;
  transition:background .2s,color .2s;
  white-space:nowrap;
}
.kh-lang__menu a:hover{background:var(--kh-ivory) !important;color:var(--kh-gold-deep) !important}
.kh-lang__menu a.kh-active{color:var(--kh-gold-deep) !important}
.kh-lang__menu a.kh-active::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--kh-gold)}

/* ============ HEADER ============ */
.kh-header{
  position:relative;z-index:50;background:#fff;
  border-bottom:1px solid var(--kh-hairline);
  transition:box-shadow .3s var(--kh-ease),background .3s var(--kh-ease);
}
.kh-header.kh-sticky{position:sticky;top:0}
.kh-header.kh-is-scrolled{box-shadow:0 12px 32px -20px rgba(0,0,0,.14)}
.kh-header__inner{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  height:120px;gap:24px;
  transition:height .3s var(--kh-ease);
}
.kh-header.kh-is-scrolled .kh-header__inner{height:78px}
.kh-header__left{display:flex;align-items:center;gap:20px}
.kh-header__right{display:flex;align-items:center;gap:8px;justify-content:flex-end}

/* TAG Heuer badge */
.kh-tagheuer{display:inline-flex;align-items:center;justify-content:center;min-height:70px;transition:transform .3s var(--kh-ease)}
.kh-tagheuer :is(img,svg){max-height:64px;width:auto}
.kh-tagheuer iframe{border:0;width:150px;height:70px;display:block}
.kh-header.kh-is-scrolled .kh-tagheuer{transform:scale(.82);transform-origin:left center}

/* Brand — spécificité renforcée pour survivre aux styles Elementor */
.kh .kh-brand{display:inline-flex;align-items:center;justify-content:center;line-height:0}
.kh .kh-brand__img{
  height:88px !important;
  width:auto !important;
  max-width:none !important;
  max-height:88px !important;
  object-fit:contain;
  transition:height .3s var(--kh-ease);
}
.kh .kh-header.kh-is-scrolled .kh-brand__img{
  height:52px !important;
  max-height:52px !important;
}

/* Icônes */
.kh-icon-btn{
  width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;color:var(--kh-ink);
  transition:background .25s var(--kh-ease),color .25s var(--kh-ease);
}
.kh-icon-btn{color:var(--kh-ink) !important}
.kh-icon-btn:hover, .kh-icon-btn:focus{background:var(--kh-ivory) !important;color:var(--kh-gold-deep) !important}
.kh-icon-btn svg{width:20px;height:20px;stroke-width:1.4;stroke:currentColor !important}
.kh-icon-btn:hover svg, .kh-icon-btn:focus svg{stroke:var(--kh-gold-deep) !important}
.kh-icon-btn--cart{position:relative}
.kh-icon-btn__badge{
  position:absolute;top:4px;right:4px;
  min-width:18px;height:18px;padding:0 5px;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--kh-gold);color:#fff;
  font-family:var(--kh-font-sans);font-size:10px;font-weight:600;
  border-radius:999px;border:1.5px solid #fff;line-height:1;
}

/* ============ NAV ============ */
.kh-nav{border-top:1px solid var(--kh-hairline);background:#fff;position:relative}
.kh-nav__list{
  display:flex;justify-content:center;align-items:center;gap:44px;
  list-style:none;margin:0;padding:0;height:56px;
}
.kh-nav__item{position:static}
.kh-nav__link{
  display:inline-flex;align-items:center;gap:6px;height:56px;
  font-family:var(--kh-font-sans);font-size:12px;font-weight:500;
  letter-spacing:var(--kh-nav-tracking);text-transform:uppercase;
  color:var(--kh-ink) !important;
  position:relative;transition:color .25s var(--kh-ease);
}
.kh-nav__link .kh-chev{width:9px;height:9px;opacity:.55;transition:transform .3s var(--kh-ease)}
.kh-nav__link::after{
  content:"";position:absolute;left:50%;bottom:16px;width:0;height:1px;background:var(--kh-gold);
  transition:width .35s var(--kh-ease),left .35s var(--kh-ease);
}
.kh-nav__item:hover .kh-nav__link,
.kh-nav__link:focus,
.kh-nav__link.kh-active{color:var(--kh-gold-deep) !important}
.kh-nav__item:hover .kh-nav__link::after,
.kh-nav__link.kh-active::after{width:24px;left:calc(50% - 12px)}
.kh-nav__item:hover .kh-nav__link .kh-chev{transform:rotate(180deg)}

/* ============ MEGA MENU ============ */
.kh-mega{
  position:absolute;left:0;right:0;top:100%;background:#fff;
  border-top:1px solid var(--kh-hairline);border-bottom:1px solid var(--kh-hairline);
  box-shadow:0 24px 40px -24px rgba(0,0,0,.18);
  opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);
  transition:opacity .3s var(--kh-ease),transform .3s var(--kh-ease),visibility .3s;
  z-index:40;
}
.kh-nav__item.kh-has-mega:hover .kh-mega,
.kh-nav__item.kh-has-mega:focus-within .kh-mega{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);
}
.kh-mega__inner{
  display:grid;grid-template-columns:1.05fr 1.05fr 1fr;gap:64px;
  padding:44px 32px 48px;max-width:var(--kh-container);margin:0 auto;
}
.kh-mega__col h4{
  font-family:var(--kh-font-sans);font-size:11px;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--kh-gold-deep);
  margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--kh-hairline);
}
.kh-mega__list{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.kh-mega__list a{
  display:inline-flex;align-items:center;padding:8px 0;
  font-family:var(--kh-font-serif);font-size:17px;color:#26241f !important;
  transition:color .2s var(--kh-ease),padding-left .3s var(--kh-ease);position:relative;
}
.kh-mega__list a::before{
  content:"";width:0;height:1px;background:var(--kh-gold);margin-right:0;
  transition:width .3s var(--kh-ease),margin-right .3s var(--kh-ease);
}
.kh-mega__list a:hover{color:var(--kh-gold-deep) !important;padding-left:4px}
.kh-mega__list a:hover::before{width:20px;margin-right:12px}

.kh-mega__feature{
  position:relative;overflow:hidden;min-height:320px;color:#fff !important;padding:32px;
  display:flex;flex-direction:column;justify-content:flex-end;
  background:#1a1a1a center/cover no-repeat;
  transition:background-size .8s var(--kh-ease);
}
.kh .kh-mega__feature, .kh .kh-mega__feature *{color:#fff}
.kh-mega__feature::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.85) 100%),
    radial-gradient(circle at 75% 20%,rgba(180,145,78,.22),transparent 60%);
}
.kh-mega__feature:hover{background-size:108%}
.kh-mega__feature > *{position:relative}
.kh .kh-mega__feature .kh-eyebrow{
  font-size:10px !important;letter-spacing:.32em !important;text-transform:uppercase !important;
  color:var(--kh-gold-soft) !important;margin-bottom:12px;display:block;
}
.kh .kh-mega__feature h3{
  font-family:var(--kh-font-serif) !important;font-weight:500;font-size:32px !important;
  line-height:1.1 !important;margin:0 0 12px !important;letter-spacing:-.01em;
  color:#fff !important;
}
.kh .kh-mega__feature p{
  font-size:13px !important;color:rgba(255,255,255,.72) !important;
  margin:0 0 22px !important;max-width:26ch;
}
.kh .kh-mega__cta{
  display:inline-flex !important;align-items:center;gap:10px;
  font-size:11px !important;letter-spacing:.24em !important;text-transform:uppercase !important;
  color:#fff !important;font-weight:500;
  padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.4) !important;
  align-self:flex-start;
  transition:border-color .25s var(--kh-ease),color .25s var(--kh-ease);
}
.kh .kh-mega__cta:hover{color:var(--kh-gold-soft) !important;border-bottom-color:var(--kh-gold-soft) !important}
.kh .kh-mega__cta svg{width:14px;height:14px;stroke:currentColor !important}

/* ============================================================
   AUTH PAGE (connexion / création de compte)
   Activation via <body class="kh-auth-on">
   ============================================================ */
body.kh-auth-on{background:#fff}
body.kh-auth-on #wrapper{padding:0 !important;margin:0 !important}
body.kh-auth-on .kh-auth-hide-orig,
body.kh-auth-on #wrapper > .container:not(.kh-auth):not(.kh-auth *),
body.kh-auth-on .breadcrumb,
body.kh-auth-on .notifications-container.container{display:none !important}
/* Le form a été déplacé HORS de son container.card, on le pose bien */
body.kh-auth-on .kh-auth .kh-auth__section{
  padding:64px 32px !important;background:#fff;
  display:flex !important;flex-direction:column !important;
  justify-content:center !important;align-items:center !important;
  max-width:none;
  border:0 !important;box-shadow:none !important;
  min-height:100%;
}
body.kh-auth-on .kh-auth .kh-auth__section > *{width:100% !important;max-width:440px}
body.kh-auth-on .kh-auth .kh-auth__section form{display:block !important}

.kh-auth{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:calc(100vh - 220px);
  font-family:var(--kh-font-sans);
}
.kh-auth__visual{
  position:relative;overflow:hidden;color:#fff !important;
  background:
    linear-gradient(180deg, rgba(11,11,11,.35) 0%, rgba(11,11,11,.75) 100%),
    url('https://www.kayser.lu/img/cms/Kayser-Reinert-Joaillerie-Horlogerie-Luxembourg-04.webp') center/cover no-repeat;
  padding:64px 56px;min-height:600px;
  display:flex;flex-direction:column;justify-content:center;
}
.kh-auth__visual::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 20% 30%,rgba(180,145,78,.22),transparent 55%);
}
.kh-auth__visual > *{position:relative;z-index:1}
.kh-auth__eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10px;letter-spacing:.36em;text-transform:uppercase;
  color:var(--kh-gold-soft) !important;margin-bottom:20px;
}
.kh-auth__eyebrow::before{content:"";width:32px;height:1px;background:var(--kh-gold-soft)}
.kh-auth__visual h2{
  font-family:var(--kh-font-serif) !important;font-weight:400 !important;
  font-size:44px !important;line-height:1.1 !important;letter-spacing:-.01em;
  margin:0 0 20px !important;color:#fff !important;
}
.kh-auth__visual h2 em{font-style:italic;color:var(--kh-gold-soft) !important}
.kh-auth__visual p{
  font-size:15px !important;line-height:1.7 !important;
  color:rgba(255,255,255,.78) !important;margin:0 !important;max-width:36ch;
}

/* (styles login-form définis plus haut avec .kh-auth pour scoper au bon container) */

/* Titre "Connexion" injecté */
body.kh-auth-on .kh-auth__title{
  font-family:var(--kh-font-serif) !important;font-weight:500;
  font-size:44px !important;line-height:1.1;letter-spacing:-.01em;
  margin:0 0 8px !important;color:var(--kh-ink) !important;
}
body.kh-auth-on .kh-auth__sub{
  font-size:15px !important;color:var(--kh-muted) !important;
  margin:0 0 44px !important;
}
body.kh-auth-on .kh-auth__sub a{
  color:var(--kh-gold-deep) !important;
  border-bottom:1px solid var(--kh-gold);padding-bottom:1px;
  transition:color .25s,border-color .25s;
}
body.kh-auth-on .kh-auth__sub a:hover{color:var(--kh-ink) !important;border-bottom-color:var(--kh-ink)}

/* Champs PS refondus — override total du grid Bootstrap */
body.kh-auth-on .form-group,
body.kh-auth-on .form-group.row{
  display:block !important;margin:0 0 32px !important;
  width:100% !important;max-width:none !important;
}
body.kh-auth-on .form-group > label,
body.kh-auth-on .form-group > .js-input-column,
body.kh-auth-on .form-group > .form-control-comment,
body.kh-auth-on .form-group > [class*="col-"]{
  display:block !important;
  width:100% !important;max-width:100% !important;
  flex:none !important;padding:0 !important;margin:0 !important;
  text-align:left !important;
}
body.kh-auth-on .form-group .form-control-comment{display:none !important}
body.kh-auth-on .input-group.js-parent-focus{
  display:flex !important;align-items:center;width:100% !important;
}
body.kh-auth-on .input-group.js-parent-focus > .form-control{flex:1 1 auto !important}
body.kh-auth-on .input-group-btn{flex:none !important;width:auto !important}
body.kh-auth-on .form-control-label{
  display:block !important;padding:0 !important;
  font-size:10px !important;letter-spacing:.28em !important;
  text-transform:uppercase !important;color:var(--kh-muted) !important;
  font-weight:500 !important;margin-bottom:10px !important;
  text-align:left !important;
}
body.kh-auth-on .form-control-label::after{content:"" !important}
body.kh-auth-on .form-control,
body.kh-auth-on input.form-control{
  display:block !important;
  width:100% !important;height:auto !important;min-height:52px !important;
  padding:14px 0 !important;
  border:0 !important;border-radius:0 !important;
  border-bottom:1px solid var(--kh-hairline-strong) !important;
  background:transparent !important;box-shadow:none !important;
  font-family:var(--kh-font-serif) !important;font-size:20px !important;
  line-height:1.2 !important;color:var(--kh-ink) !important;letter-spacing:.01em;
  transition:border-color .3s var(--kh-ease);
  opacity:1 !important;visibility:visible !important;
}
body.kh-auth-on .form-control:focus{
  border-bottom-color:var(--kh-gold) !important;outline:0 !important;
  box-shadow:none !important;
}
body.kh-auth-on .input-group{
  border-bottom:1px solid var(--kh-hairline-strong);
  transition:border-color .3s var(--kh-ease);
}
body.kh-auth-on .input-group:focus-within{border-bottom-color:var(--kh-gold)}
body.kh-auth-on .input-group .form-control{border-bottom:0 !important}
body.kh-auth-on .input-group-btn{position:relative}
body.kh-auth-on .input-group-btn .btn{
  background:transparent !important;border:0 !important;box-shadow:none !important;
  padding:0 8px !important;
  font-size:10px !important;letter-spacing:.24em !important;
  text-transform:uppercase !important;color:var(--kh-muted) !important;
  height:auto !important;
}
body.kh-auth-on .input-group-btn .btn:hover{color:var(--kh-gold-deep) !important}

/* Forgot password */
body.kh-auth-on .forgot-password{
  text-align:right !important;margin:-16px 0 32px !important;
}
body.kh-auth-on .forgot-password a{
  font-size:12px !important;letter-spacing:.14em !important;
  text-transform:uppercase !important;color:var(--kh-ink) !important;
  border-bottom:1px solid transparent;padding-bottom:2px;
  transition:color .25s,border-color .25s;
}
body.kh-auth-on .forgot-password a:hover{
  color:var(--kh-gold-deep) !important;border-bottom-color:var(--kh-gold);
}

/* Boutons */
body.kh-auth-on .form-footer,
body.kh-auth-on footer.form-footer{
  padding:0 !important;background:transparent !important;
  text-align:left !important;margin:0 !important;
}
body.kh-auth-on #submit-login,
body.kh-auth-on button[type="submit"].btn-primary,
body.kh-auth-on .btn-primary{
  display:inline-flex !important;align-items:center;justify-content:center;gap:12px;
  padding:18px 28px !important;width:100% !important;
  min-height:56px !important;
  font-family:var(--kh-font-sans) !important;font-size:11px !important;font-weight:500 !important;
  letter-spacing:.28em !important;text-transform:uppercase !important;
  background:var(--kh-ink) !important;color:#fff !important;
  border:1px solid var(--kh-ink) !important;border-radius:0 !important;
  transition:all .3s var(--kh-ease) !important;
  box-shadow:none !important;
  opacity:1 !important;visibility:visible !important;
}
body.kh-auth-on #submit-login:hover,
body.kh-auth-on button[type="submit"].btn-primary:hover,
body.kh-auth-on .btn-primary:hover{
  background:var(--kh-gold) !important;border-color:var(--kh-gold) !important;color:#fff !important;
}

/* Section "no-account" masquée (on injecte notre propre CTA plus haut) */
body.kh-auth-on .no-account{display:none !important}

/* ============================================================
   Cacher le bloc Customer Reassurance vide sur la page panier
   (placeholders "Security policy / edit with the Customer…")
   ============================================================ */
body.page-cart .blockreassurance_product{display:none !important}

/* ============================================================
   FORGOT PASSWORD — carte centrée single-column
   ============================================================ */
body.kh-auth-on.kh-auth-forgot #wrapper{padding:60px 0 !important;background:var(--kh-paper)}
body.kh-auth-on.kh-auth-forgot #main,
body.kh-auth-on.kh-auth-forgot section#main{padding:0 !important}
.kh-forgot{
  max-width:520px;margin:60px auto;padding:56px 48px;
  background:#fff;border:1px solid var(--kh-hairline);
  box-shadow:0 30px 60px -30px rgba(0,0,0,.12);
  font-family:var(--kh-font-sans);
}
.kh-forgot__head{text-align:center;margin-bottom:36px}
.kh-forgot__icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:64px;height:64px;
  border:1px solid var(--kh-gold);border-radius:50%;
  color:var(--kh-gold-deep);margin-bottom:22px;
}
.kh-forgot__icon svg{width:26px;height:26px}
.kh-forgot__title{
  font-family:var(--kh-font-serif);font-weight:500;
  font-size:32px;line-height:1.1;letter-spacing:-.01em;
  margin:0 0 12px;color:var(--kh-ink);
}
.kh-forgot__sub{
  font-size:14px;color:var(--kh-muted);line-height:1.6;margin:0;max-width:38ch;margin:0 auto;
}
/* Le form PS embarqué */
body.kh-auth-on.kh-auth-forgot .forgotten-password{padding:0 !important;background:none !important;box-shadow:none !important;border:0 !important}
body.kh-auth-on.kh-auth-forgot .forgotten-password header,
body.kh-auth-on.kh-auth-forgot .send-renew-password-link{display:none !important}
body.kh-auth-on.kh-auth-forgot .form-fields{padding:0 !important}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields{
  display:block !important;margin:0 !important;text-align:left;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields > *{
  display:block !important;width:100% !important;max-width:100% !important;
  padding:0 !important;margin:0 !important;text-align:left !important;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields .col-md-3{
  font-size:10px !important;letter-spacing:.28em !important;text-transform:uppercase !important;
  color:var(--kh-muted) !important;font-weight:500 !important;margin-bottom:10px !important;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields .col-md-3::after{content:"" !important}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields .email{margin-bottom:24px !important}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields input.form-control{
  padding:14px 0 !important;min-height:52px !important;
  border:0 !important;border-bottom:1px solid var(--kh-hairline-strong) !important;
  border-radius:0 !important;background:transparent !important;box-shadow:none !important;
  font-family:var(--kh-font-serif) !important;font-size:20px !important;
  color:var(--kh-ink) !important;width:100% !important;
  transition:border-color .3s var(--kh-ease);
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields input.form-control:focus{
  border-bottom-color:var(--kh-gold) !important;outline:0 !important;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields button.btn{
  display:inline-flex !important;align-items:center;justify-content:center;gap:10px;
  width:100% !important;padding:18px 28px !important;min-height:56px !important;
  font-family:var(--kh-font-sans) !important;font-size:11px !important;font-weight:500 !important;
  letter-spacing:.28em !important;text-transform:uppercase !important;
  background:var(--kh-ink) !important;color:#fff !important;
  border:1px solid var(--kh-ink) !important;border-radius:0 !important;
  box-shadow:none !important;transition:all .3s var(--kh-ease) !important;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields button.btn:hover{
  background:var(--kh-gold) !important;border-color:var(--kh-gold) !important;
}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields button.hidden-xs-down{display:inline-flex !important}
body.kh-auth-on.kh-auth-forgot .form-group.center-email-fields button.hidden-sm-up{display:none !important}
body.kh-auth-on.kh-auth-forgot .ps-alert-error{margin:0 0 16px !important;padding:0 !important;list-style:none;font-size:12px}
body.kh-auth-on.kh-auth-forgot .ps-alert-error:empty{display:none}

.kh-forgot__back{
  display:inline-flex;align-items:center;gap:10px;
  margin-top:28px;
  font-size:11px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;
  color:var(--kh-muted) !important;
  padding-bottom:2px;border-bottom:1px solid transparent;
  transition:color .25s,border-color .25s;
}
.kh-forgot__back:hover{color:var(--kh-gold-deep) !important;border-bottom-color:var(--kh-gold)}
.kh-forgot__back svg{width:14px;height:14px;transition:transform .25s var(--kh-ease)}
.kh-forgot__back:hover svg{transform:translateX(-4px)}

body.kh-auth-on.kh-auth-forgot .breadcrumb,
body.kh-auth-on.kh-auth-forgot .notifications-container.container,
body.kh-auth-on.kh-auth-forgot .page-header{display:none !important}

@media (max-width:600px){
  .kh-forgot{padding:44px 26px;margin:20px 16px}
  .kh-forgot__title{font-size:26px}
}

/* Radio inline (Titre M./Mme) refondu en pills */
body.kh-auth-on .radio-inline{
  display:inline-flex !important;align-items:center;justify-content:center;
  margin:0 8px 0 0 !important;padding:0 !important;position:relative;cursor:pointer;
}
body.kh-auth-on .radio-inline .custom-radio{
  position:absolute;opacity:0;pointer-events:none;
}
body.kh-auth-on .radio-inline > .custom-radio ~ *,
body.kh-auth-on .radio-inline{
  font-size:11px !important;font-weight:500 !important;letter-spacing:.24em !important;
  text-transform:uppercase !important;color:var(--kh-ink) !important;
}
body.kh-auth-on .radio-inline{
  padding:12px 22px !important;min-width:80px;
  border:1px solid var(--kh-hairline-strong);
  transition:all .3s var(--kh-ease);
}
body.kh-auth-on .radio-inline:has(input:checked){
  background:var(--kh-ink);color:#fff !important;border-color:var(--kh-ink);
}
body.kh-auth-on .radio-inline:hover{border-color:var(--kh-gold-deep)}
body.kh-auth-on .form-control-valign{display:flex;gap:12px;flex-wrap:wrap}

/* Checkbox PS custom — case en absolute pour ne pas casser sur les checkbox multi-lignes */
body.kh-auth-on .custom-checkbox{display:block !important;margin-bottom:14px !important}
body.kh-auth-on .custom-checkbox > label{
  display:block !important;position:relative;cursor:pointer;
  padding:0 0 0 28px !important;margin:0 !important;
  font-size:13px !important;color:var(--kh-muted) !important;line-height:1.5 !important;
  font-weight:400 !important;text-transform:none !important;letter-spacing:0 !important;
}
body.kh-auth-on .custom-checkbox > label > em{
  display:block;font-size:12px;color:var(--kh-muted);opacity:.85;
  margin-top:4px;font-style:italic;
}
body.kh-auth-on .custom-checkbox > label br{display:none}
body.kh-auth-on .custom-checkbox input[type="checkbox"]{
  position:absolute;opacity:0;pointer-events:none;
}
body.kh-auth-on .custom-checkbox > label > span{
  position:absolute !important;left:0;top:2px;
  width:16px;height:16px;
  border:1px solid var(--kh-hairline-strong);
  display:inline-flex !important;align-items:center;justify-content:center;
  transition:border-color .25s,background .25s;
}
body.kh-auth-on .custom-checkbox > label > span i{display:none !important}
body.kh-auth-on .custom-checkbox input:checked ~ span{
  background:var(--kh-gold);border-color:var(--kh-gold);
}
body.kh-auth-on .custom-checkbox input:checked ~ span::after{
  content:"";width:8px;height:8px;background:#fff;display:block;
  clip-path:polygon(14% 44%,0 60%,40% 100%,100% 20%,84% 4%,40% 68%);
}

/* Cacher le "Vous avez déjà un compte" natif PS sur register */
body.kh-auth-on.kh-auth-register .register-form > p:first-child,
body.kh-auth-on .register-form > p:first-of-type{display:none !important}

/* Image spécifique page inscription */
body.kh-auth-on.kh-auth-register .kh-auth__visual{
  background:
    linear-gradient(180deg, rgba(11,11,11,.30) 0%, rgba(11,11,11,.75) 100%),
    url('https://www.kayser.lu/img/cms/Kayser-Reinert-Joaillerie-Horlogerie-Luxembourg-10.webp') center/cover no-repeat !important;
}
body.kh-auth-on .custom-checkbox a{
  color:var(--kh-ink) !important;border-bottom:1px solid var(--kh-gold);
  padding-bottom:1px;transition:color .25s;
}
body.kh-auth-on .custom-checkbox a:hover{color:var(--kh-gold-deep) !important}

/* Champ Password : afficher le bouton "Afficher" propre */
body.kh-auth-on .input-group .btn[data-action="show-password"]{
  align-self:center;margin-left:12px;
}

/* Divider + create account custom (injecté via JS) */
body.kh-auth-on .kh-auth__divider{
  display:flex;align-items:center;gap:16px;margin:32px 0 24px;
  font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--kh-muted);
}
body.kh-auth-on .kh-auth__divider::before,
body.kh-auth-on .kh-auth__divider::after{content:"";flex:1;height:1px;background:var(--kh-hairline)}
body.kh-auth-on .kh-auth__create{text-align:center;font-size:14px;color:var(--kh-muted)}
body.kh-auth-on .kh-auth__create > a{
  display:inline-flex;align-items:center;gap:10px;margin-top:6px;
  font-family:var(--kh-font-sans);font-size:11px;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--kh-ink) !important;
  padding:12px 22px;border:1px solid var(--kh-hairline-strong);
  transition:all .3s var(--kh-ease);
}
body.kh-auth-on .kh-auth__create > a:hover{
  background:var(--kh-ivory);border-color:var(--kh-gold);color:var(--kh-gold-deep) !important;
}
body.kh-auth-on .kh-auth__create > a svg{width:12px;height:12px}

@media (max-width:960px){
  .kh-auth{grid-template-columns:1fr}
  .kh-auth__visual{min-height:280px;padding:40px 32px}
  .kh-auth__visual h2{font-size:32px !important}
  body.kh-auth-on .login-form{padding:48px 24px !important}
  body.kh-auth-on .kh-auth__title{font-size:34px !important}
}

/* ============ SEARCH OVERLAY ============ */
.kh-search{
  position:fixed;inset:0;z-index:110;
  background:rgba(11,11,11,.94);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  opacity:0;visibility:hidden;
  transition:opacity .35s var(--kh-ease),visibility .35s;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  padding:24px;
}
.kh-search.kh-is-open{opacity:1;visibility:visible}
.kh-search__close{
  position:absolute;top:24px;right:24px;
  width:44px;height:44px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;color:#fff !important;
  border:1px solid rgba(255,255,255,.2);
  transition:border-color .25s var(--kh-ease),color .25s var(--kh-ease);
}
.kh-search__close:hover{border-color:var(--kh-gold-soft) !important;color:var(--kh-gold-soft) !important}
.kh-search__form{width:min(720px,100%)}
.kh-search__label{
  display:block;text-align:center;
  font-size:11px !important;letter-spacing:.32em;text-transform:uppercase;
  color:var(--kh-gold-soft) !important;
  margin-bottom:22px;
}
.kh-search__field{
  display:flex;align-items:center;gap:16px;
  padding:16px 4px 20px;
  border-bottom:1px solid rgba(255,255,255,.25);
  transition:border-color .3s var(--kh-ease);
}
.kh-search__field:focus-within{border-bottom-color:var(--kh-gold-soft)}
.kh-search__field svg{width:24px;height:24px;stroke:rgba(255,255,255,.6) !important;flex:none}
.kh-search__field input{
  flex:1;background:transparent;border:0;outline:0;
  font-family:var(--kh-font-serif) !important;
  font-size:32px !important;color:#fff !important;
  font-weight:400;letter-spacing:-.01em;
  padding:4px 0;
}
.kh-search__field input::placeholder{color:rgba(255,255,255,.35);font-style:italic}
@media (max-width:600px){
  .kh-search__field input{font-size:22px !important}
}

/* ============ MOBILE / DRAWER ============ */
.kh-hamburger{
  display:none;width:40px;height:40px;
  flex-direction:column;justify-content:center;align-items:center;gap:5px;
}
.kh-hamburger span{
  width:22px;height:1.5px;background:var(--kh-ink);
  transition:transform .3s var(--kh-ease),opacity .3s var(--kh-ease);
}
body.kh-menu-open{overflow:hidden}
body.kh-menu-open .kh-hamburger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
body.kh-menu-open .kh-hamburger span:nth-child(2){opacity:0}
body.kh-menu-open .kh-hamburger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

.kh-drawer{position:fixed;inset:0;background:rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:opacity .3s var(--kh-ease),visibility .3s;z-index:100}
.kh-drawer.kh-is-open{opacity:1;visibility:visible}
.kh-drawer__panel{
  position:absolute;top:0;left:0;bottom:0;width:min(420px,90vw);
  background:#fff;padding:32px 28px 40px;overflow-y:auto;
  transform:translateX(-100%);transition:transform .4s var(--kh-ease);
  display:flex;flex-direction:column;
}
.kh-drawer.kh-is-open .kh-drawer__panel{transform:translateX(0)}
.kh-drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}
.kh-drawer__brand{display:inline-flex;align-items:center;line-height:0;text-decoration:none}
.kh-drawer__brand img{height:70px;width:auto;max-height:70px;display:block;object-fit:contain}
.kh-drawer__close{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}
.kh-drawer__nav{list-style:none;margin:0;padding:0;flex:1}
.kh-drawer__nav > li{border-bottom:1px solid var(--kh-hairline)}
.kh-drawer__nav > li > a,
.kh-drawer__nav > li > button{
  display:flex;align-items:center;justify-content:space-between;
  width:100%;padding:18px 0;
  font-family:var(--kh-font-serif);font-size:22px;font-weight:500;color:var(--kh-ink);
  transition:color .2s;
}
.kh-drawer__nav > li > a:hover,
.kh-drawer__nav > li > button:hover{color:var(--kh-gold-deep)}
.kh-drawer__sub{list-style:none;margin:0;padding:4px 0 16px 4px;display:none}
.kh-drawer__nav > li.kh-is-open .kh-drawer__sub{display:block}
.kh-drawer__nav > li > button .kh-chev{transition:transform .3s var(--kh-ease)}
.kh-drawer__nav > li.kh-is-open > button .kh-chev{transform:rotate(180deg)}
.kh-drawer__sub a{
  display:block;padding:8px 0;
  font-family:var(--kh-font-sans);font-size:14px;color:#4a4a4a;
  transition:color .2s,padding-left .25s var(--kh-ease);
}
.kh-drawer__sub a:hover{color:var(--kh-gold-deep);padding-left:8px}
.kh-drawer__foot{
  margin-top:24px;padding-top:24px;border-top:1px solid var(--kh-hairline);
  display:flex;flex-direction:column;gap:16px;
  font-size:12px;color:var(--kh-muted);letter-spacing:.06em;
}
.kh-drawer__langs{display:flex;gap:16px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.kh-drawer__langs a.kh-active{color:var(--kh-gold-deep)}

/* ============ RESPONSIVE ============ */
@media (max-width:960px){
  .kh-container{padding:0 20px}
  .kh-topbar__inner{height:36px}
  .kh-topbar__left .kh-topbar__item:not(:first-child){display:none}
  .kh-topbar__left .kh-topbar__sep{display:none}
  .kh-hamburger{display:inline-flex}
  .kh-nav{display:none}
  .kh-tagheuer{display:none}
  .kh-header{margin-top:15px}

  /* Layout 2 lignes : (hamburger  logo  vide) puis (icônes centrées) */
  .kh-header__inner{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    grid-template-areas:
      "left brand rightempty"
      "actions actions actions";
    align-items:center;
    height:auto;
    padding:12px 0 10px;
    row-gap:10px;
    gap:12px;
  }
  .kh-header__left{grid-area:left;justify-self:start;gap:0}
  .kh-brand{grid-area:brand;justify-self:center}
  .kh-header__right{
    grid-area:actions;justify-self:center;
    display:flex;gap:22px;
  }
  .kh .kh-brand__img{height:64px !important;max-height:64px !important}
  .kh .kh-header.kh-is-scrolled .kh-brand__img{height:48px !important;max-height:48px !important}
}
@media (max-width:520px){
  .kh-container{padding:0 14px}
  .kh-drawer__panel{width:100vw;padding:24px 22px 32px}
  .kh-drawer__nav > li > a,
  .kh-drawer__nav > li > button{font-size:19px;padding:16px 0}
  .kh-drawer__brand{font-size:20px}
  .kh-drawer__sub a{font-size:13.5px}
}

/* ============ HOURS wrap on small screens ============ */
.kh-hours-brk{display:none}
@media (max-width:640px){
  .kh-topbar__inner{height:auto !important;min-height:36px;padding:6px 0}
  .kh-topbar__hours{align-items:flex-start !important}
  .kh-topbar__hours > svg{margin-top:3px;flex:none}
  .kh-hours-content{display:block;line-height:1.4}
  .kh-hours-brk{display:block;line-height:0;margin:0}
  .kh-hours-sep{display:none}
}

/* ============ FOOTER — couleur hover des liens (or clair vs bleu par défaut) ============ */
#footer a:hover, #footer a:focus,
#footer a:hover *, #footer a:focus *{
  color:#C9A968 !important;
}

/* ============ MEGA — CTA "Découvrez tous" (bouton bordé) ============ */
.kh .kh-mega__all-cta{
  display:inline-flex;align-items:center;gap:12px;
  margin-top:22px;padding:12px 22px;
  font-family:var(--kh-font-sans) !important;
  font-size:11px !important;font-weight:500 !important;
  letter-spacing:.24em !important;text-transform:uppercase !important;
  color:var(--kh-ink) !important;
  border:1px solid var(--kh-ink);
  transition:background .3s var(--kh-ease),color .3s var(--kh-ease);
  align-self:flex-start;
}
.kh .kh-mega__all-cta:hover,
.kh .kh-mega__all-cta:focus{
  background:var(--kh-ink);color:#fff !important;
}
.kh .kh-mega__all-cta svg{width:14px;height:14px;stroke:currentColor}

/* ============ Cacher fil d'Ariane sur pages produits ============ */
body.page-product .breadcrumb,
body.page-product nav.breadcrumb,
body.page-product .breadcrumb.hidden-sm-down{
  display:none !important;
}
