/* Dare-Dare 2026 · gabarit des pages intérieures (services, villes, idées, mariage).
   Complète dd-2026.css : mêmes couleurs, mêmes polices, titres en deux lignes. */
body{background:var(--ink);color:var(--paper)}
main{display:block}
.crumb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,242,238,.9);margin-bottom:26px}
.crumb a{border-bottom:1px solid rgba(246,242,238,.35)}

/* héros de page */
.pghero{position:relative;min-height:86svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink)}
.pghero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pghero.has-img::after{content:"";position:absolute;inset:0;background:rgba(10,10,10,.62)}
.pghero__in{position:relative;z-index:2;padding:150px clamp(20px,5vw,72px) clamp(48px,9vh,96px);max-width:1200px}
.pghero .sur{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rose);margin-bottom:18px}
.pghero h1{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(56px,9vw,150px);line-height:.9;letter-spacing:-.01em}
.pghero h1 .lt{font-size:.78em}
.pghero .hero__lead{max-width:620px;margin-top:26px;font-size:17px;color:rgba(246,242,238,.9)}
.pghero .hero__sig{font-family:"Instrument Serif",serif;font-style:italic;font-size:24px;margin-top:14px}
.pghero .hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.pghero .hero__promise{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(246,242,238,.9);margin-top:14px}
.pghero.has-img .sur{color:var(--paper)}

/* sections : rythme encre / papier */
.sec{padding:clamp(90px,14vh,150px) clamp(20px,5vw,72px)}
.sec:not(.dark):not(.contact):not(.faq){background:var(--paper);color:var(--ink)}
.sec.dark{background:var(--ink);color:var(--paper)}
.sec>.sur,.sec .sur{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--mute);margin-bottom:18px}
.sec:not(.dark):not(.contact):not(.faq) .sur{color:#6B645F}
.sec h2{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(40px,5.6vw,88px);line-height:.95;letter-spacing:-.01em;max-width:1100px;margin-bottom:28px}
.sec h2 .lt{font-size:.8em}
.sec h3{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(24px,2.2vw,32px);line-height:1.1;margin-bottom:10px}
.sec .sub,.sec .lead{font-size:17px;max-width:720px;margin-bottom:28px;opacity:.85}
.sec p{max-width:72ch}
.sec .lnk{border-bottom:1px solid currentColor}
.below{margin-top:30px}

/* réponse courte */
.ans dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;margin:30px 0;padding:30px 0;border-top:1px solid rgba(10,10,10,.14);border-bottom:1px solid rgba(10,10,10,.14)}
.ans dt,.dl2 dt{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#6B645F;margin-bottom:8px}
.ans dd,.dl2 dd{margin:0;font-size:15px}
.dl2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;margin-top:24px}
details.more{margin-top:24px}
details.more>summary{cursor:pointer;list-style:none;display:inline-flex;gap:10px;align-items:center;font-size:12px;letter-spacing:.18em;text-transform:uppercase}
details.more>summary::-webkit-details-marker{display:none}
details.more>summary::after{content:"+";font-size:16px;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
details[open].more>summary::after{transform:rotate(45deg)}

/* ce que nous faisons : lignes */
.rows{border-top:1px solid rgba(10,10,10,.14)}
.sec.dark .rows{border-top-color:var(--line)}
.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) 120px;gap:24px;align-items:baseline;padding:24px 0;border-bottom:1px solid rgba(10,10,10,.14)}
.sec.dark .row{border-bottom-color:var(--line)}
.row b{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(24px,2.4vw,36px);line-height:1.05}
.row span{font-size:15px;opacity:.85}
.row i{font-style:normal;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#A3122A;text-align:right}
.sec.dark .row i{color:var(--rose)}
.lx{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;margin-top:26px}
.lst{list-style:none;padding:0;margin:0}
.lst li{padding:8px 0 8px 18px;position:relative;font-size:15px;border-bottom:1px solid rgba(10,10,10,.08)}
.sec.dark .lst li{border-bottom-color:var(--line)}
.lst li::before{content:"";position:absolute;left:0;top:1.05em;width:8px;height:1px;background:#A3122A}
.sec.dark .lst li::before{background:var(--rose)}

/* preuves */
.stats{display:none}
.refs{font-size:15px;opacity:.8;max-width:900px}
.proofline{font-family:"Instrument Serif",serif;font-style:italic;font-size:clamp(22px,2.2vw,32px);line-height:1.2;margin:18px 0 34px;max-width:900px}
.tri4,.tri3d,.tri{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.tri4 figure,.tri3d figure,.tri figure{margin:0}
.tri4 img,.tri3d img,.tri img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.tri4 figure:hover img,.tri3d figure:hover img{transform:scale(1.04)}
.tri4 p,.tri3d p,.tri p{font-size:14px;margin-top:10px;opacity:.85}
.cap{font-size:11px;opacity:.6;margin-top:6px}

/* idées */
.ideas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.ideas article{padding:26px;border:1px solid rgba(10,10,10,.14);border-radius:4px;display:flex;flex-direction:column;gap:10px}
.sec.dark .ideas article{border-color:var(--line)}
.ideas .num,.cols4 .num{font:800 13px Inter,sans-serif;letter-spacing:.06em;color:#A3122A}
.sec.dark .ideas .num,.sec.dark .cols4 .num{color:var(--rose)}
.ideas h3{font-size:clamp(22px,2vw,28px)}
.ideas p{font-size:15px;opacity:.85}
.ideas .note{font-size:13px;opacity:.7}
.ideas figure{margin:8px 0 0}
.ideas img{width:100%;aspect-ratio:4/3;object-fit:cover}

/* lieux */
.ou{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;border-top:1px solid rgba(10,10,10,.14);padding-top:30px}
.ou p{font-size:15px;opacity:.85;margin-bottom:12px}
.cal{width:100%;border-collapse:collapse;margin-top:20px;font-size:15px}
.cal td{padding:12px 10px;border-bottom:1px solid rgba(10,10,10,.12);vertical-align:top}
.cal td:first-child{font-weight:600;white-space:nowrap;width:180px}
.src{font-size:12px;opacity:.6;margin-top:18px}

/* méthode */
.steps{font-size:14px;letter-spacing:.06em}
.steps b{color:var(--rose);margin-right:4px}

/* FAQ : reprend le style de l'accueil */
.sec.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;background:var(--ink)}
.sec.faq>.sur,.sec.faq>h2{grid-column:1}
.sec.faq>details{grid-column:2;border-top:1px solid var(--line)}
.sec.faq>details:last-of-type{border-bottom:1px solid var(--line)}
.sec.faq>details>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-family:"Instrument Serif",serif;font-size:clamp(20px,1.8vw,26px)}
.sec.faq>details>summary::-webkit-details-marker{display:none}
.sec.faq>details>summary::after{content:"+";font-family:Inter,sans-serif;transition:transform .4s}
.sec.faq>details[open]>summary::after{transform:rotate(45deg)}
.sec.faq>details>p{padding:0 0 24px;color:rgba(246,242,238,.75);max-width:62ch}
.sec.faq>.sur{grid-row:1}.sec.faq>h2{grid-row:2;align-self:start}
.sec.faq>details:nth-of-type(1){grid-row:1}

/* liens utiles */
.vig{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 30px;border-top:1px solid rgba(10,10,10,.14)}
.vig li{border-bottom:1px solid rgba(10,10,10,.14)}
.vig a{display:block;padding:16px 0;font-size:15px}
.vig a:hover{color:#A3122A}

/* page Nos idées */
.idees-head{padding:150px clamp(20px,5vw,72px) 60px}
.idees-head h1{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(56px,9vw,150px);line-height:.9}
.idees-head h1 .lt{font-size:.78em}
.idees-head .chap{max-width:680px;margin-top:22px;color:rgba(246,242,238,.8)}
.idees-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;padding:0 clamp(20px,5vw,72px) 100px}
.idee p{font-family:"Instrument Serif",serif;font-size:22px;line-height:1.2;margin:12px 0 6px}
.cta-band{padding:clamp(90px,14vh,150px) clamp(20px,5vw,72px);text-align:center;background:var(--paper)!important;color:var(--ink)!important}

@media (max-width:900px){
 .row{grid-template-columns:1fr}.row i{text-align:left}
 .sec.faq{grid-template-columns:1fr;gap:20px}
 .sec.faq>.sur,.sec.faq>h2,.sec.faq>details{grid-column:1;grid-row:auto}
}

.sec .refs{padding:0;border:0;max-width:900px}
.sec h2:not(:has(.lt)){font-size:clamp(32px,3.8vw,58px);line-height:1.05}

/* Défi sur la page (defi.js) : même geste que l'accueil, adapté aux pages services */
.dd-defi{background:var(--ink);color:var(--paper);padding:clamp(80px,12vh,140px) clamp(20px,5vw,72px);border-top:1px solid var(--line)}
.dd-defi .sur{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rose);margin-bottom:18px}
.dd-defi__q{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(44px,7vw,112px);line-height:.92;letter-spacing:-.01em;margin:0}
.dd-defi__q .lt{font-size:.8em}
.dd-defi__q em{font-style:italic}
.dd-defi__row{display:flex;gap:16px;align-items:center;margin-top:34px;border-bottom:1px solid rgba(246,242,238,.45);padding-bottom:10px;max-width:1100px}
.dd-defi__row:focus-within{border-bottom-color:var(--rose)}
.dd-defi__in{flex:1;min-width:0;background:transparent;border:0;color:var(--paper);font:400 clamp(20px,2.4vw,34px)/1.2 "Instrument Serif",serif;font-style:italic;padding:8px 0}
.dd-defi__in::placeholder{color:rgba(246,242,238,.45)}
.dd-defi__in:focus{outline:none}
.dd-defi__go{flex:none;background:var(--paper);color:var(--ink);border:1px solid var(--paper);padding:14px 26px;font:700 12px/1 Inter,Helvetica,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s}
.dd-defi__go:hover,.dd-defi__go:focus-visible{background:transparent;color:var(--paper)}
.dd-defi__sugg{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.dd-defi__sugg button{background:transparent;border:1px solid var(--line);color:rgba(246,242,238,.85);border-radius:99px;padding:10px 16px;font:400 13px/1.3 Inter,Helvetica,Arial,sans-serif;text-align:left;cursor:pointer;transition:border-color .3s,color .3s}
.dd-defi__sugg button:hover,.dd-defi__sugg button:focus-visible{border-color:var(--paper);color:var(--paper)}
.dd-defi__note{margin-top:22px;font-size:13px;color:rgba(246,242,238,.65);max-width:60ch}
.dd-defi .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:900px){.dd-defi__row{flex-direction:column;align-items:stretch;gap:12px}.dd-defi__go{width:100%}}
@media (max-width:600px){.dd-defi__in{font-size:18px}}

/* page Merci */
.merci{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:150px clamp(20px,5vw,72px) 90px;background:var(--ink);color:var(--paper)}
.merci .sur{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rose);margin-bottom:18px}
.merci h1{font-family:"Instrument Serif",serif;font-weight:400;font-size:clamp(52px,8.4vw,140px);line-height:.92;letter-spacing:-.01em;max-width:1100px}
.merci h1 .lt{font-size:.8em}
.merci__lead{font-size:clamp(17px,1.6vw,22px);max-width:46ch;margin-top:28px;color:rgba(246,242,238,.88)}
.merci__links{list-style:none;padding:0;margin:54px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 30px;border-top:1px solid var(--line);max-width:1100px}
.merci__links li{border-bottom:1px solid var(--line)}
.merci__links a{display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-family:"Instrument Serif",serif;font-size:clamp(22px,2vw,28px)}
.merci__links a small{display:block;font:400 11px Inter,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--rose);margin-bottom:6px}
.merci__links a:hover{color:var(--rose)}
.merci__back{margin-top:34px;font-size:13px;color:rgba(246,242,238,.65)}
.merci__back a{border-bottom:1px solid currentColor}

/* textes de dd-2026.css pensés pour l'encre : lisibles sur les sections papier */
.sec:not(.dark):not(.contact):not(.faq) .below,.sec:not(.dark):not(.contact):not(.faq) .steps{color:var(--ink)}
/* rouge foncé sur papier : contraste AA (7:1) */
.sec:not(.dark):not(.contact):not(.faq) .steps b{color:#A3122A}
.sec:not(.dark):not(.contact):not(.faq) .below a{color:var(--ink)}

/* Réassurance avant le formulaire (une ligne sobre) */
.dd-reassur{font-size:.85rem;line-height:1.6;letter-spacing:.02em;color:rgba(246,242,238,.7);margin:0 0 28px;max-width:720px}
.dd-reassur a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.contact__header + .dd-reassur,.contact .container > .dd-reassur{text-align:center;margin-left:auto;margin-right:auto}
