/* =================================================================
   GRIMORIUM - Univers PIERRES & LITHOTHÉRAPIE
   « Onyx facetté » - cabinet de minéralogie ésotérique
   Skin de la rubrique Pierres. Garde l'ADN de marque (logo GRIMORIUM
   + baseline, duo Garamond, OR de marque, petites capitales
   .eyebrow/.kicker, filets à losange .rule, structure des pages) -
   habillage : NOIR MINÉRAL (onyx / graphite froid), reflets de
   CRISTAL, géométrie FACETTÉE, planches de CRISTALLOGRAPHIE gravées.

   ACCENT ADAPTATIF - la page « respire » selon la pierre : poser une
   classe .acc-* sur <body> (ou sur une section) pour teinter les
   accents (lueurs, glyphes, filets, surlignages) :
     .acc-violet (améthyste, défaut) .acc-indigo .acc-bleu .acc-vert
     .acc-or (citrine) .acc-orange .acc-rouge .acc-rose .acc-argent (tourmaline)

   Scope : tout est préfixé .univers-pierres → poser sur <body> :
     body.univers-pierres.acc-violet
   Intensité de la texture : .tex-1 (discrète) · .tex-2 (défaut) · .tex-3 (dense)
   En prod WordPress : charger cette feuille UNIQUEMENT sur /pierres/.
   ================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');

/* =======================================================
   TOKENS
   ======================================================= */
.univers-pierres{
  /* - onyx / graphite froid - */
  --onyx:#0e1216;           /* noir minéral (fond) */
  --onyx-2:#151b20;         /* graphite (panneaux) */
  --onyx-3:#080a0d;         /* noir profond */
  --slate:#1d262c;          /* ardoise */
  --slate-2:#26323a;
  /* - cristal (lumière froide / réfraction) - */
  --cristal:#d2e6e2;
  --cristal-dim:#9bb2af;
  --cristal-line:rgba(186,214,209,0.30);
  /* - or de marque - */
  --gold-1:#b89243;
  --gold-2:#8a6e30;
  --gold-soft:#d8b15a;
  /* - texte - */
  --text-c:#c2cdc9;
  --cream:#eef3f1;
  --muted:#84938f;
  --dim:#586863;

  /* - ACCENT (défaut : améthyste) - */
  --accent:#9a6fc4;
  --accent-soft:#bd9fe0;
  --accent-deep:#5b3f82;

  /* - rôles (les composants n'utilisent que ceux-ci) - */
  --bg:var(--onyx);
  --panel:rgba(29,38,44,0.45);
  --panel-2:#171d22;
  --plate-bg:#141a1f;
  --plate-mat:#080b0e;
  --header-bg:linear-gradient(180deg, rgba(13,17,21,0.96), rgba(8,10,13,0.80));
  --header-text:#eef3f1;
  --header-line:rgba(184,146,67,0.42);
  --footer-bg:linear-gradient(180deg,#0d1115,#070a0c);
  --footer-text:#84938f;
  --band-1-bg:radial-gradient(120% 90% at 50% -10%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 60%), linear-gradient(180deg, rgba(21,27,32,0.6), rgba(8,10,13,0.6));
  --band-2-bg:radial-gradient(120% 90% at 50% -10%, rgba(40,52,60,0.4), transparent 60%), linear-gradient(180deg, rgba(15,19,23,0.7), rgba(7,9,12,0.7));
  --card-bg:linear-gradient(180deg, rgba(29,38,44,0.40), rgba(8,10,13,0.40));
  --card-bg-hover:linear-gradient(180deg, color-mix(in srgb, var(--accent) 16%, transparent), rgba(8,10,13,0.40));
  --tag-c:var(--muted);

  /* - filets - */
  --line:rgba(184,146,67,0.24);
  --line-soft:rgba(186,214,209,0.14);
  --line-strong:rgba(184,146,67,0.44);
  --line-gold:rgba(184,146,67,0.5);
  --line-cristal:rgba(186,214,209,0.22);

  /* - texture facettée - */
  --tex-op:0.5;
  --glow-op:1;

  /* - typo (charte commune) - */
  --display:"Cormorant Garamond", Georgia, serif;
  --serif:"Cormorant Garamond", Georgia, serif;
  --text:"EB Garamond", Georgia, serif;
  --maxw:1180px;
  --maxw-wide:1320px;
}

/* ---- ACCENTS ADAPTATIFS (par pierre / chakra) ---- */
.univers-pierres.acc-violet { --accent:#9a6fc4; --accent-soft:#bd9fe0; --accent-deep:#5b3f82; }
.univers-pierres.acc-indigo { --accent:#6f7fd0; --accent-soft:#9fabe6; --accent-deep:#3f4a86; }
.univers-pierres.acc-bleu   { --accent:#4f97b8; --accent-soft:#8fc2d8; --accent-deep:#2c5d74; }
.univers-pierres.acc-vert   { --accent:#5fa67e; --accent-soft:#96cfae; --accent-deep:#356048; }
.univers-pierres.acc-or     { --accent:#cf9f3e; --accent-soft:#e6c878; --accent-deep:#7a5d22; }
.univers-pierres.acc-orange { --accent:#d18a4e; --accent-soft:#e8b487; --accent-deep:#7c4d27; }
.univers-pierres.acc-rouge  { --accent:#c25a4a; --accent-soft:#e09084; --accent-deep:#722c22; }
.univers-pierres.acc-rose   { --accent:#d488a4; --accent-soft:#ecb6cb; --accent-deep:#7c4a5c; }
.univers-pierres.acc-argent { --accent:#9aa7ad; --accent-soft:#c6d0d4; --accent-deep:#5a666b; }

/* =======================================================
   BASE + FOND ONYX FACETTÉ
   ======================================================= */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.univers-pierres{
  margin:0;
  color:var(--text-c);
  font-family:var(--text);
  font-size:20px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  background-color:var(--onyx);
  background-image:
    radial-gradient(80% 55% at 80% -6%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 60%),
    radial-gradient(70% 50% at 12% 6%, rgba(60,90,96,0.22), transparent 62%),
    radial-gradient(120% 120% at 50% 116%, rgba(184,146,67,0.08), transparent 55%),
    linear-gradient(180deg, var(--onyx), var(--onyx-3));
  background-attachment:fixed;
}
.univers-pierres img{max-width:100%; display:block;}

/* lueurs douces (réfraction) */
.univers-pierres::before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:var(--glow-op);
  background-image:
    radial-gradient(46% 30% at 22% 24%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 70%),
    radial-gradient(40% 28% at 82% 74%, rgba(82,120,124,0.14), transparent 72%);
}
/* texture facettée (fines arêtes de cristal) */
.univers-pierres::after{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:var(--tex-op);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cg fill='none' stroke='%23bad6d1' stroke-width='0.6'%3E%3Cpath d='M0 150 L90 70 L150 130 L220 60'/%3E%3Cpath d='M30 220 L110 130 L150 130 L210 200'/%3E%3Cpath d='M90 70 L110 130 M150 130 L130 0 M90 70 L60 0'/%3E%3C/g%3E%3C/svg%3E");
  background-size:440px 440px;
  mix-blend-mode:screen;
}
.univers-pierres.tex-1{--tex-op:0.25; --glow-op:0.7;}
.univers-pierres.tex-2{--tex-op:0.5; --glow-op:1;}
.univers-pierres.tex-3{--tex-op:0.85; --glow-op:1.2;}

.univers-pierres .page{position:relative; z-index:1;}
.univers-pierres .container{max-width:var(--maxw); margin:0 auto; padding:0 36px;}
.univers-pierres .container-wide{max-width:var(--maxw-wide); margin:0 auto; padding:0 36px;}

/* ----- typographie ----- */
.univers-pierres h1,.univers-pierres h2,.univers-pierres h3,.univers-pierres h4,.univers-pierres h5{
  font-family:var(--display); font-weight:400; margin:0; line-height:1.06; color:var(--cream);}
.univers-pierres p{margin:0 0 1.15em;}
.univers-pierres a{color:inherit; text-decoration:none;}
.univers-pierres em,.univers-pierres i{font-style:italic;}
.univers-pierres sup,.univers-pierres sub{font-size:0.66em;}

.univers-pierres .eyebrow{font-family:var(--text); text-transform:uppercase; letter-spacing:0.32em; font-size:13px; font-weight:600; color:var(--gold-soft);}
.univers-pierres .kicker{font-family:var(--text); font-size:13px; text-transform:uppercase; letter-spacing:0.26em; color:var(--accent-soft); font-weight:600;}
.univers-pierres .lede{font-size:24px; line-height:1.55; color:var(--cream); font-family:var(--serif);}
.univers-pierres .muted{color:var(--muted);}
.univers-pierres .faint{color:var(--dim);}
.univers-pierres .italic{font-style:italic;}
.univers-pierres .center{text-align:center;}
.univers-pierres .latin{font-style:italic; font-family:var(--serif); color:var(--muted);}
.univers-pierres .gold{color:var(--gold-soft);}
.univers-pierres .accent{color:var(--accent-soft);}

/* filet à losange (marque) */
.univers-pierres .rule{display:flex; align-items:center; gap:20px; color:var(--gold-2);}
.univers-pierres .rule::before,.univers-pierres .rule::after{content:""; height:1px; flex:1;
  background:linear-gradient(90deg,transparent,var(--line-strong),transparent);}
.univers-pierres .rule .dot{width:8px; height:8px; transform:rotate(45deg); background:var(--accent); flex:0 0 auto;
  box-shadow:0 0 10px color-mix(in srgb, var(--accent) 70%, transparent);}

/* séparateur à glyphe (cristal) */
.univers-pierres .glyph-div{display:flex; align-items:center; justify-content:center; gap:18px; color:var(--gold-2); margin:0 auto;}
.univers-pierres .glyph-div::before,.univers-pierres .glyph-div::after{content:""; height:1px; width:min(120px,18vw);
  background:linear-gradient(90deg,transparent,var(--line-strong),transparent);}
.univers-pierres .glyph-div svg{width:30px; height:34px; color:var(--accent-soft); flex:0 0 auto;}

/* ----- sections ----- */
.univers-pierres section{position:relative; padding:88px 0;}
.univers-pierres .section-head{max-width:760px; margin:0 0 14px;}
.univers-pierres .section-head.center{text-align:center; margin-left:auto; margin-right:auto;}
.univers-pierres .section-head h2{font-size:clamp(34px,4.4vw,56px); margin-top:14px; font-weight:300; letter-spacing:0.01em;}
.univers-pierres .section-head p{margin-top:14px; color:var(--muted); font-size:21px;}

/* bandes rythmiques */
.univers-pierres .band-facet{background:var(--band-1-bg);
  border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}
.univers-pierres .band-onyx{background:var(--band-2-bg);
  border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}

/* ----- en-tête ----- */
.univers-pierres .site-header{position:sticky; top:0; z-index:50; backdrop-filter:blur(9px);
  background:var(--header-bg); border-bottom:1px solid var(--header-line);
  box-shadow:0 2px 18px rgba(4,6,8,0.5);}
.univers-pierres .site-header .inner{display:flex; align-items:center; justify-content:space-between;
  padding:15px 36px; max-width:var(--maxw-wide); margin:0 auto;}
.univers-pierres .brand{display:flex; align-items:center; gap:13px; color:var(--header-text);}
.univers-pierres .brand .mark{width:30px; height:30px; color:var(--gold-soft); flex:0 0 auto;}
.univers-pierres .brand .word{font-family:var(--display); font-size:26px; letter-spacing:0.18em; line-height:1;}
.univers-pierres .brand .word small{display:block; font-family:var(--text); font-size:10px; letter-spacing:0.30em;
  color:var(--gold-soft); margin-top:2px; text-transform:uppercase; opacity:0.85;}
.univers-pierres .main-nav{display:flex; gap:30px; font-size:13px; text-transform:uppercase; letter-spacing:0.18em; color:rgba(194,205,201,0.72);}
.univers-pierres .main-nav a{transition:color .2s;}
.univers-pierres .main-nav a:hover,.univers-pierres .main-nav a.active{color:var(--gold-soft);}
.univers-pierres .header-tools{display:flex; align-items:center; gap:16px;}
.univers-pierres .icon-btn{width:36px; height:36px; border:1px solid var(--header-line); display:flex; align-items:center;
  justify-content:center; color:var(--gold-soft); transition:.2s;}
.univers-pierres .icon-btn:hover{background:rgba(184,146,67,0.14);}
@media(max-width:920px){ .univers-pierres .main-nav{display:none;} }

/* ----- fil d'ariane ----- */
.univers-pierres .crumb{display:flex; gap:12px; align-items:center; font-size:13px; text-transform:uppercase;
  letter-spacing:0.16em; color:var(--dim); flex-wrap:wrap;}
.univers-pierres .crumb a:hover{color:var(--gold-soft);}
.univers-pierres .crumb .sep{color:var(--gold-2);}
.univers-pierres .crumb .here,.univers-pierres .crumb .gold{color:var(--accent-soft);}

/* ----- boutons ----- */
.univers-pierres .btn{display:inline-flex; align-items:center; gap:12px; padding:15px 30px;
  border:1px solid var(--gold-2); color:var(--gold-soft); background:transparent;
  font-family:var(--text); text-transform:uppercase; letter-spacing:0.2em; font-size:12.5px; font-weight:600;
  cursor:pointer; transition:.22s; white-space:nowrap;}
.univers-pierres .btn:hover{background:rgba(184,146,67,0.12); border-color:var(--gold-1); color:var(--cream);}
.univers-pierres .btn-solid{background:var(--gold-1); color:#15110a; border-color:var(--gold-1);}
.univers-pierres .btn-solid:hover{background:var(--gold-soft); color:#15110a;}
.univers-pierres .btn-accent{background:var(--accent); color:#0c0f12; border-color:var(--accent);}
.univers-pierres .btn-accent:hover{background:var(--accent-soft); border-color:var(--accent-soft); color:#0c0f12;}
.univers-pierres .link-more{display:inline-flex; align-items:center; gap:10px; color:var(--accent-soft);
  font-family:var(--text); text-transform:uppercase; letter-spacing:0.18em; font-size:12.5px; font-weight:600;}
.univers-pierres .link-more:hover{color:var(--cream);}

/* ----- étiquettes ----- */
.univers-pierres .tag{display:inline-block; border:1px solid var(--line); padding:6px 14px; font-size:12px;
  text-transform:uppercase; letter-spacing:0.14em; color:var(--tag-c); white-space:nowrap;}
.univers-pierres .tag.gold{border-color:var(--line-gold); color:var(--gold-soft);}
.univers-pierres .tag.accent{border-color:color-mix(in srgb, var(--accent) 55%, transparent); color:var(--accent-soft);}
.univers-pierres .taglist{display:flex; flex-wrap:wrap; gap:9px;}

/* ----- planche (cristallographie / photo de spécimen) ----- */
.univers-pierres .plate{position:relative; background:var(--plate-bg); padding:16px;
  border:1px solid var(--line-strong);
  box-shadow:0 1px 0 rgba(184,146,67,0.16) inset, 0 22px 50px rgba(4,6,8,0.55);}
.univers-pierres .plate::after{content:""; position:absolute; inset:8px; border:1px solid var(--line-cristal); pointer-events:none;}
.univers-pierres .plate .img-wrap{position:relative; overflow:hidden;
  background:radial-gradient(60% 60% at 50% 45%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), var(--plate-mat);}
.univers-pierres .plate img,.univers-pierres .plate image-slot{display:block; width:100%; height:100%;}
.univers-pierres .plate .plate-no{position:absolute; top:22px; left:22px; z-index:2; font-family:var(--text);
  font-size:12px; letter-spacing:0.14em; color:var(--cristal-dim); text-transform:uppercase; white-space:nowrap;
  background:rgba(8,11,14,0.6); padding:2px 8px;}
.univers-pierres .plate .cap{margin-top:13px; text-align:center; font-style:italic; font-family:var(--serif);
  font-size:16px; color:var(--muted);}
.univers-pierres .plate .cap b{font-style:normal; letter-spacing:0.04em; color:var(--text-c);}
/* figure de cristallographie dessinée (trait) */
.univers-pierres .crystallo{width:100%; height:100%; color:var(--cristal); display:block; padding:8%;}
.univers-pierres .crystallo .axis{stroke:var(--accent-soft);}

/* ----- carte générique (portes / blocs) ----- */
.univers-pierres .card{border:1px solid var(--line); background:var(--card-bg);
  padding:30px 32px; position:relative; transition:.25s;}
.univers-pierres .card .frame{position:absolute; inset:8px; border:1px solid var(--line-soft); pointer-events:none;}
.univers-pierres .card:hover{border-color:var(--gold-2); background:var(--card-bg-hover);}
.univers-pierres .card .gly{width:36px; height:40px; color:var(--accent-soft); margin-bottom:14px;}
.univers-pierres .card h3,.univers-pierres .card h4{font-size:27px; margin-bottom:8px;}
.univers-pierres .card p{margin:0; color:var(--muted); font-size:17px;}

/* portes d'entrée */
.univers-pierres .entry{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
@media(max-width:820px){ .univers-pierres .entry{grid-template-columns:1fr;} }
.univers-pierres .entry a{border:1px solid var(--line); background:var(--card-bg); padding:34px 30px; display:block; transition:.22s; position:relative;}
.univers-pierres .entry a:hover{border-color:var(--gold-2); background:var(--card-bg-hover); transform:translateY(-3px);}
.univers-pierres .entry svg{width:44px; height:44px; color:var(--accent-soft); margin-bottom:16px;}
.univers-pierres .entry h3{font-size:27px; margin-bottom:8px;}
.univers-pierres .entry p{color:var(--muted); font-size:16px; margin:0 0 14px;}

/* ----- carte pierre (grille) ----- */
.univers-pierres .stone-card{display:block; transition:.25s; background:var(--plate-bg);
  border:1px solid var(--line); overflow:hidden; position:relative;}
.univers-pierres .stone-card:hover{transform:translateY(-4px); border-color:var(--gold-1);
  box-shadow:0 18px 38px rgba(4,6,8,0.5);}
.univers-pierres .stone-card .ph{aspect-ratio:5/4; position:relative; overflow:hidden;
  background:radial-gradient(60% 70% at 50% 45%, color-mix(in srgb, var(--accent) 20%, transparent), transparent 70%), var(--plate-mat);
  display:flex; align-items:center; justify-content:center;}
.univers-pierres .stone-card .ph img,.univers-pierres .stone-card .ph image-slot{width:100%; height:100%; object-fit:cover;}
.univers-pierres .stone-card .ph svg{width:46%; height:auto; color:var(--cristal); opacity:0.92;}
.univers-pierres .stone-card .ph::after{content:""; position:absolute; inset:7px; border:1px solid var(--line-cristal); pointer-events:none;}
.univers-pierres .stone-card .body{padding:16px 18px 20px;}
.univers-pierres .stone-card h3,.univers-pierres .stone-card h4{font-size:24px; margin-bottom:2px;}
.univers-pierres .stone-card .sub{font-style:italic; font-family:var(--serif); color:var(--muted); font-size:15px;}
.univers-pierres .stone-card .props{display:flex; gap:8px; margin-top:12px; flex-wrap:wrap;}

/* ----- carte produit (affiliation) ----- */
.univers-pierres .product-card{border:1px solid var(--line); background:var(--card-bg); overflow:hidden; transition:.22s;}
.univers-pierres .product-card:hover{border-color:var(--gold-2);}
.univers-pierres .product-card .ph{aspect-ratio:4/3; background:var(--plate-mat); position:relative; overflow:hidden;}
.univers-pierres .product-card .body{padding:18px 20px 20px;}
.univers-pierres .product-card .label{font-size:11px; text-transform:uppercase; letter-spacing:0.16em; color:var(--accent-soft); margin-bottom:6px;}
.univers-pierres .product-card h5{font-size:19px; font-weight:500; margin:0 0 10px; color:var(--cream);}
.univers-pierres .product-card .price{font-family:var(--serif); font-size:24px; color:var(--gold-soft);}
.univers-pierres .product-card .aff{font-size:12px; text-transform:uppercase; letter-spacing:0.14em; color:var(--dim); margin-top:6px;}

/* ----- carte article/guide ----- */
.univers-pierres .article-card{display:block; border:1px solid var(--line); background:var(--card-bg); overflow:hidden; transition:.22s;}
.univers-pierres .article-card:hover{border-color:var(--gold-2); transform:translateY(-3px);}
.univers-pierres .article-card .ph{aspect-ratio:16/10; background:radial-gradient(70% 80% at 50% 30%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 70%), var(--plate-mat); position:relative;}
.univers-pierres .article-card .ph::after{content:""; position:absolute; inset:8px; border:1px solid var(--line-cristal);}
.univers-pierres .article-card .kicker{margin:18px 22px 0;}
.univers-pierres .article-card h4{font-size:22px; margin:8px 22px 6px; color:var(--cream);}
.univers-pierres .article-card p{margin:0 22px 20px; color:var(--muted); font-size:15px;}

/* ----- table de correspondances ----- */
.univers-pierres .datasheet{border:1px solid var(--line);}
.univers-pierres .datasheet .row{display:grid; grid-template-columns:0.9fr 1.3fr; border-bottom:1px solid var(--line-soft);}
.univers-pierres .datasheet .row:last-child{border-bottom:none;}
.univers-pierres .datasheet .k{padding:15px 20px; font-size:12px; text-transform:uppercase; letter-spacing:0.16em;
  color:var(--accent-soft); border-right:1px solid var(--line-soft);}
.univers-pierres .datasheet .v{padding:15px 20px; color:var(--text-c); font-size:18px;}

/* ----- vertus (3 colonnes) ----- */
.univers-pierres .vertus{display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line);}
.univers-pierres .vertus .v{padding:30px 28px; border-right:1px solid var(--line-soft);}
.univers-pierres .vertus .v:last-child{border-right:none;}
.univers-pierres .vertus .v svg{width:34px; height:34px; color:var(--accent-soft); margin-bottom:14px;}
.univers-pierres .vertus .v h3,.univers-pierres .vertus .v h4{font-size:24px; margin-bottom:10px;}
.univers-pierres .vertus .v ul{list-style:none; padding:0; margin:0;}
.univers-pierres .vertus .v li{padding:8px 0; border-top:1px solid var(--line-soft); color:var(--muted); font-size:16px;}
.univers-pierres .vertus .v li:first-child{border-top:none;}
@media(max-width:760px){ .univers-pierres .vertus{grid-template-columns:1fr;} .univers-pierres .vertus .v{border-right:none; border-bottom:1px solid var(--line-soft);} }

/* ----- purification oui / non ----- */
.univers-pierres .purif{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.univers-pierres .purif .col{border:1px solid var(--line); background:var(--card-bg); padding:28px;}
.univers-pierres .purif .col.yes{border-color:rgba(95,166,126,0.5);}
.univers-pierres .purif .col.no{border-color:rgba(194,90,74,0.5);}
.univers-pierres .purif .col h4{display:flex; align-items:center; gap:12px; font-size:22px; margin-bottom:16px;}
.univers-pierres .purif .col .mk{width:28px; height:28px; transform:rotate(45deg); display:flex; align-items:center; justify-content:center; flex:0 0 auto; font-size:14px; border:1px solid currentColor;}
.univers-pierres .purif .col .mk span{transform:rotate(-45deg);}
.univers-pierres .purif .yes h4{color:#8fcfa8;}
.univers-pierres .purif .no h4{color:#e0978a;}
.univers-pierres .purif ul{list-style:none; padding:0; margin:0;}
.univers-pierres .purif li{padding:10px 0; border-top:1px solid var(--line-soft); color:var(--text-c); font-size:16.5px;}
.univers-pierres .purif li:first-child{border-top:none;}
@media(max-width:680px){ .univers-pierres .purif{grid-template-columns:1fr;} }

/* ----- comment l'utiliser ----- */
.univers-pierres .howto{display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--line);}
.univers-pierres .howto .h{padding:26px 28px; border-right:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}
.univers-pierres .howto .h:nth-child(2n){border-right:none;}
.univers-pierres .howto .h:nth-last-child(-n+2){border-bottom:none;}
.univers-pierres .howto .h .n{font-family:var(--serif); font-size:28px; color:var(--accent-soft);}
.univers-pierres .howto .h h3,.univers-pierres .howto .h h4{font-size:21px; margin:6px 0 6px;}
.univers-pierres .howto .h p{font-size:15px; color:var(--muted); margin:0;}
@media(max-width:680px){ .univers-pierres .howto{grid-template-columns:1fr;} .univers-pierres .howto .h{border-right:none !important;} }

/* ----- bandeau chakras ----- */
.univers-pierres .chakras{display:flex; gap:12px; align-items:flex-start; flex-wrap:wrap; margin-top:8px;}
.univers-pierres .chk{display:flex; flex-direction:column; align-items:center; gap:8px; opacity:.32; transition:.2s;}
.univers-pierres .chk.on{opacity:1;}
.univers-pierres .chk .dot{width:26px; height:26px; transform:rotate(45deg); border:1px solid var(--line-cristal);}
.univers-pierres .chk.on .dot{box-shadow:0 0 12px color-mix(in srgb, var(--accent) 70%, transparent);}
.univers-pierres .chk small{font-size:11px; text-transform:uppercase; letter-spacing:0.10em; color:var(--muted);}

/* ----- prose ----- */
.univers-pierres .prose{font-size:20px; line-height:1.78; color:var(--text-c); max-width:760px;}
.univers-pierres .prose p{margin:0 0 1.3em;}
.univers-pierres .prose .drop::first-letter{float:left; font-family:var(--display); font-size:94px; line-height:0.64;
  padding:12px 14px 0 0; color:var(--accent-soft); font-weight:600;}
.univers-pierres .prose strong{font-weight:600; color:var(--cream);}

/* encadré précautions */
.univers-pierres .callout{border:1px solid rgba(184,146,67,0.45); background:rgba(184,146,67,0.06);
  padding:24px 28px; margin:0; position:relative;}
.univers-pierres .callout .kicker{color:var(--gold-soft); margin-bottom:8px;}
.univers-pierres .callout p{margin:0; font-size:18px; color:var(--text-c);}

/* ----- FAQ ----- */
.univers-pierres .faq{max-width:800px; margin:0 auto;}
.univers-pierres .faq .item{border-top:1px solid var(--line-soft); padding:26px 0;}
.univers-pierres .faq .item:last-child{border-bottom:1px solid var(--line-soft);}
.univers-pierres .faq h3{font-size:25px; color:var(--cream); margin-bottom:10px;}
.univers-pierres .faq p{color:var(--muted); font-size:18px; margin:0; line-height:1.65;}

/* ----- pied ----- */
.univers-pierres .site-footer{border-top:1px solid var(--header-line); padding:64px 0 44px;
  background:var(--footer-bg); color:var(--footer-text);}
.univers-pierres .site-footer .col-h{font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:0.22em; color:var(--gold-soft); margin:0 0 16px;}
.univers-pierres .site-footer .word{font-family:var(--display); font-size:28px; letter-spacing:0.18em; color:#eef3f1;}
.univers-pierres .footer-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px;}
.univers-pierres .site-footer .col a{display:block; color:var(--footer-text); padding:5px 0; font-size:16px; transition:color .2s;}
.univers-pierres .site-footer .col a:hover{color:var(--gold-soft);}
.univers-pierres .site-footer .tagline{color:var(--footer-text); margin-top:16px; max-width:300px; font-size:16px; font-style:italic;}
.univers-pierres .footer-base{border-top:1px solid var(--line-soft); margin-top:46px; padding-top:24px;
  display:flex; justify-content:space-between; color:rgba(132,147,143,0.8); font-size:13px; letter-spacing:0.04em; gap:20px;}
.univers-pierres .footer-base .disc{max-width:560px;}
@media(max-width:820px){ .univers-pierres .footer-grid{grid-template-columns:1fr 1fr;} .univers-pierres .footer-base{flex-direction:column; gap:14px;} }

/* ----- grilles ----- */
.univers-pierres .grid{display:grid; gap:26px;}
.univers-pierres .g2{grid-template-columns:repeat(2,1fr);}
.univers-pierres .g3{grid-template-columns:repeat(3,1fr);}
.univers-pierres .g4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){ .univers-pierres .g3,.univers-pierres .g4{grid-template-columns:repeat(2,1fr);} }
@media(max-width:600px){ .univers-pierres .g2,.univers-pierres .g3,.univers-pierres .g4{grid-template-columns:1fr;} }

@media(prefers-reduced-motion:reduce){ .univers-pierres *{animation:none !important; transition:none !important;} html{scroll-behavior:auto;} }


/* =======================================================
   GABARITS DE PAGE (consolidés depuis les maquettes de handoff)
   Chargés uniquement sur /pierres/ via bodyClass - non préfixés.
   ======================================================= */

/* ---- PILIER (/pierres/) ---- */
  /* ---- Gabarit : Pilier Pierres ---- */
  .pilier-hero{padding:54px 0 30px; text-align:center; position:relative; overflow:hidden;}
  .pilier-hero .eyebrow{display:block; margin-bottom:20px;}
  .pilier-hero h1{font-size:clamp(48px,7vw,98px); line-height:0.96; font-weight:300; margin:0 auto 22px; max-width:14ch;}
  .pilier-hero h1 em{color:var(--accent-soft);}
  .pilier-hero .sub{font-family:var(--serif); font-size:23px; line-height:1.5; color:var(--muted); max-width:50ch; margin:0 auto 32px;}
  .emblem{width:132px; height:160px; margin:0 auto 24px; display:block; color:var(--cristal);}
  .emblem .axis{stroke:var(--accent-soft);}
  .hero-ornament{position:absolute; inset:0; z-index:0; pointer-events:none; color:var(--cristal-dim); opacity:0.5;}
  .hero-ornament .s{position:absolute;}
  .intro-text{max-width:740px; margin:0 auto; padding:44px 0 0; position:relative; z-index:1;}
  .portes .entry{margin-top:44px;}
  .toutes{padding:34px 0;}
  .incontournables .section-head{display:flex; justify-content:space-between; align-items:flex-end; max-width:none; gap:20px;}
  .guides .grid,.incontournables .grid{margin-top:40px;}
  .faq-sec{padding:90px 0;}

/* ---- FICHE PIERRE (/pierres/{slug}/) ---- */
  /* ---- Gabarit : Fiche pierre ---- */
  .fiche-hero{padding:44px 0 66px;}
  .hero-grid{display:grid; grid-template-columns:0.82fr 1.18fr; gap:58px; align-items:center;}
  @media(max-width:900px){ .hero-grid{grid-template-columns:1fr; gap:38px;} }
  .hero-card{max-width:330px; margin:0 auto;}
  .hero-text .eyebrow{display:block; margin-bottom:18px;}
  .hero-text h1{font-size:clamp(56px,8vw,104px); line-height:0.92; font-weight:300; margin-bottom:10px;}
  .hero-text .latin{font-size:21px; display:block; margin-bottom:22px;}
  .hero-text .lede{font-family:var(--serif); font-size:23px; line-height:1.5; color:var(--cream); max-width:40ch; margin-bottom:26px;}

  .fiche-body{padding:64px 0 86px;}
  .layout{display:grid; grid-template-columns:1fr 330px; gap:60px; align-items:start;}
  @media(max-width:980px){ .layout{grid-template-columns:1fr; gap:48px;} }
  .aside{position:sticky; top:96px; display:flex; flex-direction:column; gap:24px;}
  .block{margin-bottom:60px;}
  .block:last-child{margin-bottom:0;}
  .block .eyebrow{display:block; margin-bottom:6px;}
  .block h2{font-size:clamp(30px,3.6vw,46px); font-weight:300; margin-bottom:6px;}
  .block .rule{margin:18px 0 28px;}
  .block > p{font-size:19px; line-height:1.7;}

/* ---- INDEX FILTRABLE (/pierres/toutes/) ---- */
.cat-hero{padding:54px 0 30px; text-align:center; position:relative;}
.cat-hero .eyebrow{display:block; margin-bottom:18px;}
.cat-hero h1{font-size:clamp(44px,7vw,92px); font-weight:300; margin:0 auto 16px;}
.cat-hero p{margin:0 auto; max-width:620px; color:var(--muted); font-size:19px;}
.cat-hero p .gold{color:var(--gold-soft);}
.cat-layout{display:grid; grid-template-columns:260px 1fr; gap:44px; align-items:start;}
@media(max-width:880px){ .cat-layout{grid-template-columns:1fr;} }
.filters{position:sticky; top:92px;}
.filters .fg{border-top:1px solid var(--line-soft); padding:22px 0;}
.filters .fg:first-child{border-top:none;}
.filters .fg h2{font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.2em; color:var(--gold-soft); margin-bottom:14px;}
.filters .chips{display:flex; flex-wrap:wrap; gap:8px;}
.chip-f{border:1px solid var(--line); padding:7px 13px; font-size:13px; letter-spacing:0.04em; color:var(--muted); cursor:pointer; transition:.18s; user-select:none;}
.chip-f:hover{border-color:var(--gold-2); color:var(--gold-soft);}
.chip-f.on{background:var(--accent); color:#0c0f12; border-color:var(--accent);}
.searchbar{display:flex; align-items:center; gap:12px; border:1px solid var(--gold-2); background:rgba(8,11,14,0.4); padding:14px 18px; margin-bottom:24px;}
.searchbar svg{color:var(--gold-soft);}
.searchbar input{flex:1; background:transparent; border:none; outline:none; color:var(--cream); font-family:var(--text); font-size:17px;}
.searchbar input::placeholder{color:var(--dim);}
.result-meta{display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; color:var(--muted); font-size:15px;}
.result-meta a{color:var(--accent-soft); cursor:pointer;}
.stone-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
@media(max-width:1100px){ .stone-grid{grid-template-columns:repeat(2,1fr);} }
@media(max-width:560px){ .stone-grid{grid-template-columns:1fr;} }
.stone-card.hide{display:none;}
.nores{padding:50px; text-align:center; color:var(--dim); font-style:italic; border:1px solid var(--line);}

/* ---- FICHE PIERRE : ajustements de contenu (prose, FAQ, wiki) ---- */
.univers-pierres .vertus .v p{color:var(--muted); font-size:16px; line-height:1.6; margin:0;}
.univers-pierres .purif .col.moon{border-color:color-mix(in srgb, var(--accent) 45%, transparent);}
.univers-pierres .purif .moon h4{color:var(--accent-soft);}
.univers-pierres .faq details{border-top:1px solid var(--line-soft);}
.univers-pierres .faq details:last-child{border-bottom:1px solid var(--line-soft);}
.univers-pierres .faq details summary{padding:20px 0; cursor:pointer; color:var(--cream);
  font-family:var(--serif); font-size:23px; list-style:none; transition:color .2s;}
.univers-pierres .faq details summary::-webkit-details-marker{display:none;}
.univers-pierres .faq details[open] summary{color:var(--accent-soft);}
.univers-pierres .faq details p{color:var(--muted); font-size:17px; line-height:1.65; margin:0; padding:0 0 20px;}
.univers-pierres .faq details a.inline{color:var(--accent-soft); border-bottom:1px solid var(--line-cristal);}
.univers-pierres .longread{font-size:18px; line-height:1.75; color:var(--text-c);}
.univers-pierres .longread p{margin:0 0 1.2em;}
.univers-pierres .wiki-note{border:1px solid var(--line-soft); background:var(--panel); padding:20px 24px; margin-top:18px;}
.univers-pierres .wiki-note .wn-head{font-size:12px; text-transform:uppercase; letter-spacing:0.18em; color:var(--accent-soft); margin-bottom:10px;}
.univers-pierres .wiki-note p{font-size:16px; color:var(--muted); margin:0 0 10px;}
.univers-pierres .wiki-note .wn-src{font-size:13px; color:var(--dim);}
.univers-pierres .wiki-note .wn-src a{color:var(--gold-soft); border-bottom:1px solid var(--line-gold);}
.univers-pierres .aff-disc{margin-top:16px; font-size:14px; font-style:italic; color:var(--dim);}
.univers-pierres .block .inline{color:var(--accent-soft); border-bottom:1px solid var(--line-cristal);}

.univers-pierres .plate img{object-fit:cover;}
