/* MSG Céramique — contact.css (spécifique à contact.html, chargé après main.css) */

/* Entrée de page (le design anime tout le <main>) */
@keyframes msgViewFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.msg-view{animation:msgViewFade .5s cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion:reduce){
  .msg-view{animation:none}
}

/* ---------- Hero ---------- */
.contact-hero{padding-top:clamp(40px,6vw,84px);padding-bottom:clamp(34px,4vw,56px)}
.contact-hero h1{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(40px,6.4vw,78px);line-height:1.0;letter-spacing:-.02em;margin:0 0 26px;color:var(--ink)}
.contact-hero .lede{font:400 clamp(15px,1.5vw,17.5px)/1.72 'Hanken Grotesk';color:var(--muted);max-width:600px;margin:0}

/* ---------- Formulaire + coordonnées ---------- */
.contact-body{padding-bottom:clamp(56px,7vw,96px)}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(40px,5vw,84px);align-items:start}
.col-kicker{font:700 11px 'Space Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:26px}

/* État « Merci pour votre message ! » (variante beige de la page contact) */
.contact-success{background:var(--beige);padding:44px 38px}
.contact-success .check{width:56px;height:56px;margin-bottom:22px;border-radius:50%;background:var(--blue);color:var(--cream);display:flex;align-items:center;justify-content:center;font:400 26px 'Hanken Grotesk'}
.contact-success .title{font-family:'Fraunces',serif;font-size:30px;color:var(--ink);margin-bottom:12px}
.contact-success p{font:400 16px/1.68 'Hanken Grotesk';color:var(--muted);margin:0 0 24px}
.contact-success .next{font:600 12px 'Hanken Grotesk';letter-spacing:.1em;text-transform:uppercase;color:var(--blue);border-bottom:1px solid var(--blue);padding-bottom:4px}
.contact-success .next:hover{color:var(--blue-dark);border-color:var(--blue-dark)}

/* Coordonnées */
.coords-list{display:flex;flex-direction:column;gap:24px;padding-bottom:28px;border-bottom:1px solid rgba(32,28,22,.2)}
.coords-value{font:400 16.5px/1.55 'Hanken Grotesk';color:var(--ink)}
.coords-row{display:flex;flex-wrap:wrap;gap:22px 56px}
.coord-link{font:400 16.5px 'Hanken Grotesk';color:var(--ink)}
.coord-link:hover{color:var(--blue)}
.social-row{display:flex;align-items:center;gap:12px}
.social-handle{font:400 14.5px 'Hanken Grotesk';color:var(--label);margin-left:4px}

/* ---------- Carte stylisée ---------- */
.contact-map{padding-bottom:clamp(56px,7vw,96px)}
.map-card{position:relative;height:clamp(300px,40vw,440px);background:#E6E1D7;background-image:repeating-linear-gradient(0deg,transparent 0 32px,rgba(32,28,22,.05) 32px 33px),repeating-linear-gradient(90deg,transparent 0 32px,rgba(32,28,22,.05) 32px 33px);overflow:hidden;border:1px solid rgba(32,28,22,.14)}
.map-pin{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%) rotate(-45deg);width:20px;height:20px;background:var(--blue);border-radius:50% 50% 50% 0;box-shadow:0 0 0 7px rgba(0,47,167,.16)}
.map-tip{position:absolute;left:50%;top:47%;transform:translate(-50%,-170%);background:var(--ink);color:var(--cream);padding:7px 13px;font:600 12px 'Hanken Grotesk';white-space:nowrap}
.map-addr{position:absolute;left:16px;bottom:14px;font:400 11px 'Space Mono',monospace;letter-spacing:.06em;color:var(--muted-2);background:rgba(246,244,238,.9);padding:5px 11px}
