/*
Theme Name: Maud et Olivier — Voyage de noces
Author: Maud & Olivier (avec Claude)
Description: Thème du blog de voyage de noces, aux couleurs du mariage (violets 96599F / E3CDF0, Diamond Beach, Cormorant Garamond).
Version: 1.0.6
License: privé
Text Domain: maudetolivier
*/
@font-face{font-family:'Diamond Beach';src:url(assets/fonts/diamondbeach.woff2) format('woff2');font-display:swap}
:root{--violet:#96599F;--violet-fonce:#7C4285;--encre:#3A2440;--lilas:#E3CDF0;--lilas-pale:#F7F1FA;--blanc:#fff;
--script:'Diamond Beach',cursive;--serif:'Cormorant Garamond',serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{font-family:var(--serif);color:var(--encre);background:var(--blanc);font-size:1.2rem;line-height:1.65}
a{color:var(--violet-fonce)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--violet);outline-offset:2px;border-radius:3px}
img{max-width:100%;height:auto}
.caps{font-weight:600;text-transform:uppercase;letter-spacing:.28em;font-size:.82rem;color:var(--violet)}
header.site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--lilas);display:flex;align-items:center;justify-content:space-between;padding:.55rem 1.4rem}
header.site .logo{font-family:var(--script);font-size:1.9rem;color:var(--violet-fonce);text-decoration:none}
header.site nav a{margin-left:1.6rem;text-decoration:none;font-weight:600;text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:var(--encre)}
header.site nav a:hover{color:var(--violet)}
.hero{text-align:center;padding:5rem 1.2rem 2.6rem}
.hero h1{font-family:var(--script);font-size:clamp(3rem,9vw,5.4rem);color:var(--violet-fonce);font-weight:400;line-height:1.1}
.hero .caps{display:block;margin-top:1.2rem}
.hero p.intro{max-width:38rem;margin:1.4rem auto 0;font-style:italic;font-size:1.3rem}
.hero img.coeur{width:92px;margin-top:1.6rem}
section,.section-pad{padding:3.2rem 1.2rem}
.wrap{max-width:60rem;margin:0 auto}
h2.section{font-family:var(--script);font-size:2.8rem;color:var(--violet-fonce);font-weight:400;text-align:center;margin-bottom:.4rem}
p.sous{font-weight:600;text-transform:uppercase;letter-spacing:.28em;font-size:.82rem;color:var(--violet);text-align:center;margin-bottom:2.2rem}
#carte{height:430px;border-radius:18px;border:1px solid var(--lilas);box-shadow:0 10px 30px rgba(150,89,159,.12)}
#carte .leaflet-tile{filter:grayscale(1) sepia(.18) hue-rotate(225deg) saturate(1.5) brightness(1.04)}
.marqueur-coeur{background:none;border:none}
.marqueur-coeur img{width:46px!important;height:auto!important;max-width:none!important}
.legende{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;justify-content:center;margin-top:1.1rem;font-size:1.02rem;font-style:italic}
.legende span::before{content:'';display:inline-block;width:.65em;height:.65em;border-radius:50%;background:var(--violet);margin-right:.45em}
.legende span.ici::before{background:var(--violet-fonce);box-shadow:0 0 0 4px var(--lilas)}
.polarsteps{margin-top:1.6rem;border:2px dashed var(--lilas);border-radius:14px;padding:1.3rem;text-align:center;font-style:italic;color:var(--violet-fonce);background:var(--lilas-pale)}
.journal{background:var(--lilas-pale)}
.fil{position:relative;max-width:44rem;margin:0 auto;padding-left:2.3rem}
.fil::before{content:'';position:absolute;left:.55rem;top:0;bottom:0;border-left:4px dotted var(--violet)}
article.etape{position:relative;background:var(--blanc);border:1px solid var(--lilas);border-radius:16px;padding:1.6rem 1.7rem;margin-bottom:2.2rem;box-shadow:0 6px 20px rgba(150,89,159,.08)}
article.etape::before{content:'';position:absolute;left:-2.05rem;top:1.9rem;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--violet);box-shadow:0 0 0 4px var(--lilas)}
article.etape .date{font-weight:600;text-transform:uppercase;letter-spacing:.24em;font-size:.76rem;color:var(--violet)}
article.etape h3,article.etape h2{font-family:var(--script);font-weight:400;font-size:2.1rem;color:var(--violet-fonce);margin:.2rem 0 .5rem}
article.etape h3 a,article.etape h2 a{text-decoration:none}
article.etape img.vignette{border-radius:10px;margin:.9rem 0}
article.etape .lire{font-weight:600}
.single-art{max-width:44rem;margin:0 auto}
.single-art h1{font-family:var(--script);font-weight:400;font-size:2.9rem;color:var(--violet-fonce);margin:.3rem 0 1rem}
.single-art .contenu p{margin:0 0 1.1rem}
.single-art .contenu img{border-radius:12px;margin:.6rem 0}
.commentaires{max-width:44rem;margin:2.6rem auto 0;border-top:1px solid var(--lilas);padding-top:2rem}
.commentaires h2{font-family:var(--script);font-weight:400;font-size:2.2rem;color:var(--violet-fonce);margin-bottom:1.2rem}
.commentaires ol{list-style:none}
.commentaires li.comment{border-left:4px solid var(--lilas);padding:.7rem 1.1rem;margin-bottom:1.1rem;background:var(--blanc);border-radius:0 12px 12px 0}
.commentaires .comment-author{font-weight:600;color:var(--violet-fonce)}
.commentaires .comment-metadata{font-size:.85rem}
.comment-form{display:grid;gap:.8rem;margin-top:1.4rem}
.comment-form input,.comment-form textarea{font-family:var(--serif);font-size:1.05rem;padding:.7rem .9rem;border:1px solid var(--lilas);border-radius:10px;background:var(--blanc);width:100%}
.comment-form .submit{justify-self:start;font-family:var(--serif);font-weight:600;font-size:1.05rem;letter-spacing:.06em;background:var(--violet);color:#fff;border:none;border-radius:99px;padding:.7rem 1.7rem;cursor:pointer;width:auto}
.comment-form .submit:hover{background:var(--violet-fonce)}
footer.site{text-align:center;padding:3rem 1rem 2.2rem;border-top:1px solid var(--lilas);margin-top:2rem}
footer.site img{width:220px;max-width:70%}
footer.site p{font-size:1rem;font-style:italic;color:var(--violet-fonce);margin-top:.6rem}
.pagination{display:flex;justify-content:center;gap:1.4rem;font-weight:600;padding-bottom:2rem}
@media(max-width:640px){header.site nav a{margin-left:1rem}section,.section-pad{padding:2.4rem .9rem}.fil{padding-left:1.8rem}}
