/* =====================================================================
   Les Chroniques de Myrthara — Le Registre
   Feuille de style unifiée (desktop + mobile, responsive)
   Bascule principale : 860px
   ===================================================================== */

:root{
  --gold:#c8a14a;
  --gold-light:#e6cf90;
  --gold-bright:#f2dfa6;
  --cream:#d9cfb4;
  --cream-dim:#b9ad8f;
  --ink:#0a0806;
  --ink-soft:#13100b;
  --line:rgba(200,161,74,.28);
}

*{margin:0;padding:0;box-sizing:border-box}
a{color:inherit;text-decoration:none}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  padding-top:88px;
  background:var(--ink);
  color:var(--cream);
  font-family:'Cormorant Garamond',serif;
  font-size:19px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

em {
  color: #C9993A;
  font-weight: 500;
}

/* ============== NAV (identique au site principal) ============== */
.nav{
  position:fixed;top:0;left:0;right:0;
  z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 48px;
  background:rgba(10,8,6,.82);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
/* décalage du contenu sous la nav fixe */
body > *:not(.nav):not(.nav-drawer):first-of-type,
.confirm-body { padding-top:0 }
.nav + * { margin-top:0 }

.nav-brand{
  display:flex;align-items:center;gap:14px;
  font-family:'Cinzel',serif;font-weight:500;
  font-size:14px;letter-spacing:.32em;color:var(--cream);
  text-decoration:none;
}
.nav-brand em{font-style:normal;color:var(--gold)}
.nav-logo{
  width:40px;height:40px;flex-shrink:0;
  -webkit-mask:url('https://www.kreigstellar.com/assets/kreig-stellar-mark.webp') center/contain no-repeat;
  mask:url('https://www.kreigstellar.com/assets/kreig-stellar-mark.webp') center/contain no-repeat;
  background:var(--gold);
}
.nav-links{
  display:flex;gap:36px;align-items:center;
}
.nav-links a{
  font-family:'Cinzel',serif;font-size:11px;
  letter-spacing:.3em;text-transform:uppercase;
  color:var(--cream-dim);text-decoration:none;transition:color .2s;
}
.nav-links a:hover{color:var(--gold)}
.lang-switch{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Cinzel',serif;font-size:11px;
  letter-spacing:.28em;text-transform:uppercase;
}
.lang-switch a{color:var(--cream-dim);transition:color .2s}
.lang-switch a:hover{color:var(--gold)}
.lang-switch a.current{color:var(--gold);pointer-events:none}
.lang-switch .sep{color:var(--cream-dim);opacity:.5}
.nav-right{display:flex;align-items:center;gap:28px}

/* burger mobile */
.nav-burger{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:32px;height:32px;cursor:pointer;background:none;border:none;padding:4px;
}
.nav-burger span{
  display:block;height:1px;background:var(--cream);
  transition:transform .25s ease, opacity .25s ease;
}
.nav-burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* drawer mobile */
.nav-drawer{
  display:none;
  position:fixed;top:84px;left:0;right:0;z-index:99;
  background:rgba(10,8,6,.97);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
  padding:24px 22px 32px;
  flex-direction:column;gap:0;
}
.nav-drawer.open{display:flex}
.nav-drawer a{
  font-family:'Cinzel',serif;font-size:.88rem;letter-spacing:.22em;
  text-transform:uppercase;color:var(--cream-dim);text-decoration:none;
  padding:14px 0;border-bottom:1px solid rgba(200,161,74,.1);
  transition:color .2s;
}
.nav-drawer a:last-child{border-bottom:none}
.nav-drawer a:hover{color:var(--gold)}
.nav-drawer .lang-switch{
  padding-top:12px;justify-content:flex-start;
}

/* ===== grain / atmosphere (repris de la version mobile) ===== */
body::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;z-index:50;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");
}

.display{
  font-family:'Cinzel',serif;
  color:var(--gold-light);
  letter-spacing:.04em;
  line-height:1.05;
  text-shadow:0 2px 18px rgba(0,0,0,.6);
}

.eyebrow{
  font-family:'Cinzel',serif;
  color:var(--gold);
  letter-spacing:.42em;
  font-size:.74rem;
  font-weight:500;
  text-transform:uppercase;
}

/* ===== ornement diviseur avec losange ===== */
.ornament{
  display:flex;align-items:center;justify-content:center;
  gap:14px;color:var(--gold);
}
.ornament::before,.ornament::after{
  content:"";height:1px;flex:0 0 auto;width:46px;
  background:linear-gradient(90deg,transparent,var(--gold));
}
.ornament::after{background:linear-gradient(90deg,var(--gold),transparent)}
.diamond{
  width:9px;height:9px;background:var(--gold-light);
  transform:rotate(45deg);box-shadow:0 0 10px rgba(200,161,74,.7);
  flex:0 0 auto;
}

/* ===== media <picture> partage : recadrage par taille d'ecran ===== */
.media-pic{display:contents}
.media-pic img{display:block}

/* ===== formulaire partage ===== */
.signup{
  display:flex;gap:0;max-width:460px;margin:0 auto;
  border:1px solid var(--line);border-radius:4px;
  background:rgba(10,8,6,.55);backdrop-filter:blur(3px);
  overflow:hidden;
}
.signup input{
  flex:1;background:transparent;border:none;outline:none;
  color:var(--cream);font-family:'Cormorant Garamond',serif;
  font-size:1.05rem;padding:12px 18px;letter-spacing:.02em;min-width:0;
}
.signup input::placeholder{color:var(--cream-dim);opacity:.8}
.signup button{
  border:none;cursor:pointer;
  font-family:'Cinzel',serif;font-weight:600;
  letter-spacing:.14em;font-size:.82rem;color:#211705;
  padding:0 30px;white-space:nowrap;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold));
  transition:filter .25s ease, transform .25s ease;
}
.signup button:hover{filter:brightness(1.12);transform:translateY(-1px)}

.confidential{
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin-top:14px;color:var(--cream-dim);font-size:.94rem;font-style:italic;
}
.confidential svg{width:13px;height:13px;fill:var(--gold)}

/* ============== HERO ============== */
.hero{
  position:relative;overflow:hidden;
  min-height:50vh;
  display:flex;align-items:center;
  padding:clamp(20px,2.5vw,36px) clamp(24px,7vw,120px);
  padding-top:clamp(20px,2.5vw,36px);
  background:#000;
}
.hero .media-pic img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:right center;z-index:0;
}
.hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(96deg, #000 0%, #000 30%, rgba(0,0,0,.82) 44%, rgba(0,0,0,.30) 60%, rgba(0,0,0,0) 75%);
}
.hero-card{
  position:relative;z-index:2;
  max-width:560px;text-align:center;
  animation:rise 1.1s cubic-bezier(.2,.7,.2,1) both;
}
.hero-icon{
  width:44px;height:auto;margin:0 auto 14px;display:block;
  filter:drop-shadow(0 0 14px rgba(200,161,74,.45));
  opacity:0;animation:rise 1s .15s both;
}
.hero .eyebrow{display:block;margin-bottom:12px;opacity:0;animation:rise 1s .3s both}
.hero h1{font-size:clamp(2rem,4.4vw,3.2rem);margin-bottom:10px}
.hero h1 span:first-child,.hero h1 .newsletter{display:block}
.a-la-row{
  display:flex;align-items:center;justify-content:center;gap:18px;
  margin:6px 0 4px;
}
.a-la-row .bar{height:1px;width:60px;background:var(--line)}
.a-la-row .txt{
  font-family:'Cinzel',serif;color:var(--gold-light);
  font-size:1.25rem;letter-spacing:.22em;
}
.hero-sep{margin:16px auto;width:max-content}
.hero p.lede{
  color:var(--cream);font-size:1.12rem;line-height:1.45;
  max-width:420px;margin:0 auto 22px;
}

/* ============== CHRONIQUEUR ============== */
.chronicler{
  position:relative;overflow:hidden;
  display:flex;justify-content:flex-end;align-items:center;
  min-height:480px;
  padding:clamp(40px,5vw,80px) clamp(28px,7vw,110px);
  background:#060503;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.chronicler .media-pic img{
  position:absolute;inset:0;height:100%;object-fit:cover;object-position:center top;z-index:0;
}
.chronicler::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(265deg, rgba(6,5,3,.94) 0%, rgba(6,5,3,.82) 34%, rgba(6,5,3,.25) 62%, rgba(6,5,3,0) 100%);
}
.chronicler .body{
  position:relative;z-index:2;
  max-width:520px;
  display:flex;flex-direction:column;justify-content:center;
  padding-top:clamp(24px,3vw,48px);
}
.chronicler h2{
  font-size:clamp(1.5rem,2.6vw,2.05rem);letter-spacing:.08em;
  margin-bottom:30px;max-width:18ch;
}
.chronicler .body > p{
  color:var(--cream);font-size:1.18rem;max-width:46ch;margin-bottom:34px;
}
blockquote{
  border-left:2px solid var(--gold);
  padding-left:26px;margin:8px 0 14px;
  font-style:italic;color:var(--gold-light);
  font-size:1.28rem;line-height:1.45;max-width:36ch;
}
.signature{
  font-family:'Great Vibes',cursive;color:var(--gold-light);
  font-size:2.1rem;margin-top:10px;padding-left:26px;
}

/* ============== COMMUNAUTE / FEATURES ============== */
.community{
  text-align:center;
  padding:clamp(48px,5vw,72px) clamp(24px,6vw,90px);
  background:
    radial-gradient(ellipse 70% 38% at 50% 0%, rgba(40,32,16,.45), transparent 70%),
    #000;
}
.community .head{
  display:flex;align-items:center;justify-content:center;gap:24px;
  margin-bottom:46px;
}
.community .head h2{
  font-family:'Cinzel',serif;color:var(--gold-light);
  letter-spacing:.2em;font-size:clamp(1.1rem,2vw,1.45rem);font-weight:500;
  white-space:nowrap;
}
.community .head .bar{
  height:1px;flex:1;max-width:160px;
  background:linear-gradient(90deg,transparent,var(--line));
}
.community .head .bar.r{background:linear-gradient(90deg,var(--line),transparent)}

.features{
  display:grid;grid-template-columns:repeat(3,1fr);
  max-width:1000px;margin:0 auto;
}
/* affichage "pilier" sur grand ecran */
.feature{
  position:relative;text-decoration:none;color:inherit;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:0 clamp(20px,3vw,46px);
}
.feature + .feature::before{
  content:"";position:absolute;left:0;top:6%;bottom:6%;width:1px;
  background:linear-gradient(180deg,transparent,var(--line),transparent);
}
.feature-ico{
  display:grid;place-items:center;margin-bottom:22px;background:none;border:none;
}
.feature-ico img{
  width:92px;height:92px;object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(200,161,74,.3));
}
.feature-body h3{
  font-family:'Cinzel',serif;color:var(--gold-light);
  letter-spacing:.16em;font-size:1.18rem;font-weight:600;margin-bottom:12px;
}
.feature-body .strong{color:var(--cream);font-size:1.16rem;display:block;margin-bottom:6px}
.feature-body p{color:var(--cream-dim);font-size:1.08rem;line-height:1.45}
.feature-arrow{display:none;color:var(--gold);opacity:.65}
.feature-arrow svg{width:16px;height:16px;stroke:currentColor;fill:none}

/* ============== REGISTRE ============== */
.registre{
  position:relative;overflow:hidden;
  min-height:420px;
  display:flex;align-items:center;
  padding:clamp(48px,5vw,80px) clamp(24px,7vw,110px);
  background:#060503;
  border-top:1px solid var(--line);
}
.registre .media-pic img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;
}
.registre::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(95deg, rgba(6,5,3,.94) 0%, rgba(6,5,3,.78) 38%, rgba(6,5,3,.2) 62%, rgba(6,5,3,0) 100%);
}
.registre .panel{position:relative;z-index:2;max-width:440px}
.registre .top-orn{color:var(--gold);margin-bottom:24px;justify-content:flex-start}
.registre h2{
  font-family:'Cinzel',serif;color:var(--gold-light);
  font-size:clamp(2rem,4.4vw,3.1rem);letter-spacing:.05em;
  line-height:1.08;margin-bottom:30px;
  text-shadow:0 2px 18px rgba(0,0,0,.7);
}
.registre .panel > p{color:var(--cream);font-size:1.2rem;max-width:40ch;margin-bottom:20px}
.registre-signup{margin:30px 0 0 0;max-width:420px}
.registre .foot{
  width:46px;margin-top:30px;
  filter:drop-shadow(0 0 12px rgba(200,161,74,.4));
}

@keyframes rise{
  from{opacity:0;transform:translateY(26px)}
  to{opacity:1;transform:translateY(0)}
}

/* =====================================================================
   ====================  MOBILE  ( <= 860px )  ========================
   ===================================================================== */
@media (max-width:860px){


.confirm-body {
  background-size: 60%;
  background-position: bottom right;
}

  /* ---- NAV mobile (bascule 720px comme le site principal) ---- */
  .nav-links > a{display:none}
  .nav-links{gap:0}
  .nav-burger{display:flex}
  .nav{padding:16px 22px}

  /* ---- HERO : sur mobile texte en haut, image en bas ---- */
  .hero{
    flex-direction:column-reverse;align-items:stretch;
    min-height:0;padding:0;justify-content:flex-start;text-align:center;
    background:var(--ink);
  }
  /* l'image quitte le flux absolu et redevient un bloc normal */
  .hero .media-pic{
    display:block;width:100%;position:relative;z-index:0;
  }
  .hero .media-pic img{
    position:static;width:100%;height:auto;
    object-fit:cover;object-position:center top;
  }
  /* fondu haut sur l'image pour raccorder depuis la carte */
  .hero .media-pic::before{
    content:"";display:block;
    position:absolute;left:0;right:0;top:-1px;height:80px;
    background:linear-gradient(180deg, var(--ink) 5%, rgba(10,8,6,0));
    pointer-events:none;z-index:1;
  }
  /* fondu bas pour dissoudre le bas de l'image */
  .hero .media-pic::after{
    content:"";display:block;
    position:absolute;left:0;right:0;bottom:-1px;height:120px;
    background:linear-gradient(180deg, rgba(10,8,6,0), var(--ink) 95%);
    pointer-events:none;z-index:1;
  }
  /* désactiver l'overlay absolu global du hero */
  .hero::after{display:none}
  .hero-card{
    max-width:520px;margin:0 auto;
    padding:48px 24px 28px;
  }

  /* ---- CHRONIQUEUR : texte en haut, image en bas ---- */
  .chronicler{
    flex-direction:column-reverse;justify-content:center;align-items:center;
    text-align:center;min-height:0;border-top:none;
  }
  .chronicler::after{display:none}
  .chronicler .media-pic{display:block;width:100%;max-width:520px;margin:26px auto 0}
  .chronicler .media-pic img{
    position:static;width:100%;height:auto;border-radius:8px;
    border:1px solid rgba(200,161,74,.28);
    box-shadow:0 12px 40px rgba(0,0,0,.55);
  }
  .chronicler .body{max-width:560px;align-items:center}
  .chronicler h2{max-width:none}
  blockquote{
    text-align:left;border-left:none;padding-left:0;
    max-width:28em;margin:24px auto 0;
  }
  .signature{padding-left:0;text-align:center}

  /* ---- COMMUNAUTE : cartes empilees avec fleche ---- */
  .community .head{gap:14px}
  .community .head .bar{max-width:50px}
  .community .head h2{white-space:normal;font-size:clamp(.95rem,4vw,1.2rem)}
  .features{
    display:flex;flex-direction:column;gap:16px;max-width:480px;
  }
  .feature{
    flex-direction:row;align-items:center;text-align:left;gap:16px;
    padding:18px;border-radius:12px;
    background:linear-gradient(180deg, rgba(24,28,20,.72), rgba(10,12,9,.72));
    border:1px solid rgba(200,161,74,.16);
    transition:border-color .25s, transform .2s, box-shadow .25s;
  }
  .feature:hover{
    border-color:rgba(200,161,74,.5);transform:translateY(-2px);
    box-shadow:0 10px 26px rgba(0,0,0,.45);
  }
  .feature + .feature::before{display:none}
  .feature-ico{
    flex:none;width:58px;height:58px;border-radius:50%;margin-bottom:0;
    background:radial-gradient(circle at 50% 38%, rgba(200,161,74,.2), rgba(0,0,0,.35));
    border:1px solid rgba(200,161,74,.3);
  }
  .feature-ico img{width:54px;height:54px;filter:none}
  .feature-body{flex:1}
  .feature-body h3{font-size:1.04rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
  .feature-body .strong{font-size:1.02rem;color:var(--cream-dim);font-weight:400}
  .feature-body p{display:none}
  .feature-arrow{display:block;flex:none}

  /* ---- REGISTRE : titre, texte, image encadree, formulaire ---- */
  .registre{
    flex-direction:column;text-align:center;padding:60px 24px;min-height:0;
  }
  .registre::after{display:none}
  .registre .panel{max-width:560px}
  .registre .top-orn{justify-content:center}
  .registre .media-pic{display:block;width:100%;margin:6px auto 26px}
  .registre .media-pic img{
    position:static;width:100%;height:auto;border-radius:8px;
    border:1px solid rgba(200,161,74,.28);
    box-shadow:0 12px 40px rgba(0,0,0,.55);
  }
  .registre .panel > p{margin-left:auto;margin-right:auto}
  .registre-signup{margin-left:auto;margin-right:auto}
  .registre .foot{display:block;margin-left:auto;margin-right:auto}
}

@media (max-width:480px){
  body{font-size:18px}
  .signup{flex-direction:column}
  .signup button{padding:14px}
  .a-la-row .bar{width:40px}
}

/* sur grand ecran, l'image mobile encadree ne doit pas s'afficher en double */
@media (min-width:861px){
  .chronicler .media-pic,
  .registre .media-pic{display:contents}
}