/* Gabarit : Fiche pierre */
.fiche-hero{display:grid; grid-template-columns:0.9fr 1.1fr; gap:0; border-bottom:1px solid var(--line-dark);
  background:radial-gradient(80% 90% at 25% 10%, rgba(74,50,112,0.45), transparent 60%);}
.fiche-hero .vis{position:relative; min-height:520px; border-right:1px solid var(--line-dark); background:radial-gradient(60% 55% at 50% 42%, rgba(200,165,88,0.14), transparent 70%), var(--ink-2); display:flex; align-items:center; justify-content:center;}
.fiche-hero .vis image-slot{width:78%; aspect-ratio:4/5; border:1px solid var(--gold-2);}
.fiche-hero .vis .vis-img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;}
.fiche-hero .vis .vis-credit{position:absolute; bottom:0; left:0; right:0; z-index:2; font-size:11px; color:var(--silver); background:linear-gradient(transparent,rgba(8,12,17,.8)); padding:18px 14px 8px; text-align:right; letter-spacing:.02em;}
.fiche-hero .vis .plno{position:absolute; top:24px; left:24px; font-size:12px; letter-spacing:0.22em; text-transform:uppercase; color:var(--silver);}
.fiche-hero .txt{padding:60px 56px; display:flex; flex-direction:column; justify-content:center;}
.fiche-hero h1{font-size:clamp(52px,8vw,104px); font-weight:300; line-height:0.95; margin-top:8px;}
.fiche-hero .latin{font-style:italic; color:var(--silver); font-size:20px; margin-top:6px;}
.fiche-hero .lede{margin-top:24px; max-width:520px;}
.badge-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:26px;}
@media(max-width:880px){ .fiche-hero{grid-template-columns:1fr;} .fiche-hero .vis{min-height:340px; border-right:none; border-bottom:1px solid var(--line-dark);} .fiche-hero .txt{padding:40px 28px;} }

.crumb-bar{border-bottom:1px solid var(--line-dark-soft); padding:16px 0;}
.layout{display:grid; grid-template-columns:1fr 320px; gap:60px; align-items:start;}
@media(max-width:980px){ .layout{grid-template-columns:1fr;} }
.aside{position:sticky; top:88px; display:flex; flex-direction:column; gap:24px;}
.block{margin-bottom:60px;}
.block > h2{font-size:clamp(30px,3.6vw,46px); font-weight:300; margin-bottom:6px;}
.block .rule{margin:18px 0 30px;}

.vertus{display:grid; grid-template-columns:repeat(2,1fr); gap:0; border:1px solid var(--line-dark);}
.vertus .v{padding:30px 28px; border-right:1px solid var(--line-dark);}
.vertus .v:last-child{border-right:none;}
.vertus .v svg{width:32px; height:32px; color:var(--gold-1); margin-bottom:14px;}
.vertus .v h3,.vertus .v h4{font-size:24px; margin-bottom:10px;}
.vertus .v p{margin:0; color:var(--silver); font-size:17px;}
@media(max-width:760px){ .vertus{grid-template-columns:1fr;} .vertus .v{border-right:none; border-bottom:1px solid var(--line-dark);} .vertus .v:last-child{border-bottom:none;} }

.purif{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.purif .col{border:1px solid var(--line-dark); padding:28px;}
.purif .col.yes{border-color:var(--absinthe);}
.purif .col.no{border-color:var(--oxblood);}
.purif .col h3,.purif .col h4{display:flex; align-items:center; gap:12px; font-size:22px; margin-bottom:16px;}
.purif .col .mk{width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex:0 0 auto; font-size:15px;}
.purif .yes .mk{background:rgba(92,115,85,0.25); color:#a7c39c;}
.purif .no .mk{background:rgba(122,49,40,0.25); color:#e0a39a;}
.purif p{margin:0; color:var(--parchment); font-size:17px;}
@media(max-width:680px){ .purif{grid-template-columns:1fr;} }

.howto{display:grid; grid-template-columns:repeat(2,1fr); gap:0; border:1px solid var(--line-dark);}
.howto .h{padding:26px 28px; border-right:1px solid var(--line-dark); border-bottom:1px solid var(--line-dark);}
.howto .h:nth-child(2n){border-right:none;}
.howto .h:nth-last-child(-n+2){border-bottom:none;}
.howto .h .n{font-family:var(--serif); font-size:28px; color:var(--gold-2);}
.howto .h h3,.howto .h h4{font-size:21px; margin:6px 0 6px;}
.howto .h p{font-size:15px; color:var(--silver); margin:0;}
@media(max-width:680px){ .howto{grid-template-columns:1fr;} .howto .h{border-right:none !important;} }

.aff-disc{font-size:13px; color:var(--silver-dim); font-style:italic; margin-top:14px;}

/* Bloc sourcé Wikipédia */
.wiki-note{margin-top:24px; border:1px solid var(--line-dark); border-left:3px solid var(--gold-2); background:rgba(200,165,88,0.04); padding:22px 26px;}
.wiki-note .wn-head{font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--silver-dim); margin-bottom:10px;}
.wiki-note p{margin:0; color:var(--parchment); font-size:16.5px; line-height:1.7;}
.wiki-note .wn-src{margin-top:12px; font-size:13px; color:var(--silver-dim); font-style:italic;}
.wiki-note .wn-src a{color:var(--gold-soft);}

/* Prose longue (histoire & symbolisme, champs rédigés) */
.longread{font-size:18px; line-height:1.8; color:var(--parchment);}
.longread p{margin:0 0 1.1em;}
.longread p:last-child{margin-bottom:0;}

/* FAQ accordéon */
.faq details{border:1px solid var(--line-dark); border-bottom:none;}
.faq details:last-child{border-bottom:1px solid var(--line-dark);}
.faq summary{cursor:pointer; padding:20px 24px; font-family:var(--serif); font-size:20px; color:var(--parchment); list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; color:var(--gold-1); font-size:24px; line-height:1; flex:0 0 auto;}
.faq details[open] summary::after{content:"-";}
.faq summary:hover{color:var(--gold-soft);}
.faq details > p{margin:0; padding:0 24px 22px; color:var(--silver); font-size:16.5px; line-height:1.7;}
.faq details > p a.inline, .faq details > p a{color:var(--gold-soft);}
