/* manon.jeandon.fr — rose bordeaux */
:root{--bx:#6e1230;--bx2:#4a0a1f;--bx3:#9b2049;--rose:#f2a7bd;--rp:#fbe9ef;--mut:#6b4553;--enc:#2a0d17;--ac:#b0315d;--serif:"DM Serif Display",Georgia,serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"DM Sans",system-ui,sans-serif;background:var(--rp);color:var(--enc);line-height:1.6;overflow-x:hidden}
a{color:inherit}img{max-width:100%}
sup{font-size:.6em;line-height:0}
.ico{display:inline-grid;place-items:center;flex:none}
.ico svg{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:3px solid var(--rose);outline-offset:3px;border-radius:6px}

/* ---- haut bordeaux ---- */
.top{background:radial-gradient(circle at 80% 20%,var(--bx3),var(--bx) 45%,var(--bx2));color:#fde6ee;position:relative;overflow:hidden;padding-bottom:110px}
.top-s{padding-bottom:0}
nav{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 6vw;position:relative;z-index:2}
.marque{font-family:var(--serif);font-size:22px;text-decoration:none}
.nav-l a{margin-right:24px;text-decoration:none;font-size:15px;opacity:.85}.nav-l a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.nav-c{background:var(--rose);color:var(--bx2);padding:10px 18px;border-radius:999px;font-weight:700;text-decoration:none;font-size:14px;white-space:nowrap}
.hero{display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center;padding:44px 6vw 0;position:relative;z-index:1;max-width:1400px;margin:0 auto}
.ph{width:300px;height:300px;border-radius:50%;padding:10px;background:conic-gradient(var(--rose),#fff4,var(--rose))}
.ph img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,6vw,84px);line-height:1.02;color:#fff}
h1 i,h2 i{color:var(--rose)}
.hero p{font-size:18px;max-width:34em;margin-top:16px;opacity:.92}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.chips>span{border:1px solid #f2a7bd88;padding:7px 14px;border-radius:999px;font-size:13px}
svg.w{position:absolute;bottom:0;left:0;width:100%;height:120px}.w1{fill:var(--rp)}.w2{fill:none;stroke:var(--rose);stroke-width:2;opacity:.6}

/* ---- cartes ---- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:0 6vw;margin:-60px auto 0;position:relative;z-index:2;max-width:1400px}
.c3{background:#fff;border-radius:22px;padding:24px;box-shadow:0 14px 34px #6e123022}
.k{display:block;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.c3 h3{font-family:var(--serif);font-weight:400;font-size:24px;color:var(--bx);margin:6px 0 2px}
section{padding:96px 6vw;max-width:1400px;margin:0 auto}
h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4vw,50px);color:var(--bx);line-height:1.08;margin:6px 0 30px}
h2 i{color:var(--ac)}

/* ---- à propos ---- */
.about{display:grid;grid-template-columns:1fr 1.25fr;gap:6vw;align-items:start}
.ab-ph{margin:0;position:relative}
.ab-ph img{width:100%;aspect-ratio:4/3.4;object-fit:cover;border-radius:28px;display:block;box-shadow:0 20px 40px #6e123026}
.ab-ph figcaption{position:absolute;left:16px;bottom:16px;background:#fff;color:var(--bx);font-weight:700;font-size:14px;padding:8px 14px;border-radius:999px}
.ab-d p{font-size:17.5px;margin-bottom:16px}
.ab-d{padding-top:72px}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.facts>div{background:#fff;border-radius:18px;padding:16px 18px;border:1px solid #f6cbd8}.facts p{margin:2px 0 0;font-size:15.5px}

/* ---- parcours : pleine largeur, de gauche à droite ---- */
.parc{max-width:none;background:#fff;border-radius:44px;margin:0 2vw;padding:90px 4vw}
.parc-h{max-width:1400px;margin:0 auto 10px;padding:0 2vw}
.track{list-style:none;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:16px;position:relative;max-width:1700px;margin:0 auto}
.track::before{content:"";position:absolute;left:3%;right:3%;top:40px;height:3px;background:repeating-linear-gradient(90deg,var(--rose) 0 10px,transparent 10px 18px)}
.st{position:relative;display:flex;flex-direction:column;align-items:center}
.st-pin{width:80px;height:80px;border-radius:50%;background:#fff;border:3px solid var(--rose);display:grid;place-items:center;position:relative;z-index:1;overflow:hidden;color:var(--bx);box-shadow:0 8px 20px #6e123018}
.st-pin img{width:68%;height:68%;object-fit:contain}
.st-pin.logo{width:132px;border-radius:24px}.st-pin.logo img{width:84%;height:70%}
.st-pin .ico svg{width:34px;height:34px;stroke-width:1.6}
.st.now .st-pin{border-color:var(--bx);box-shadow:0 0 0 7px #6e123018}
.st-c{margin-top:18px;background:var(--rp);border-radius:22px;padding:20px 18px;flex:1;width:100%;position:relative}
.st-c::before{content:"";position:absolute;top:-8px;left:50%;width:16px;height:16px;background:inherit;transform:translateX(-50%) rotate(45deg);border-radius:3px}
.st.now .st-c{background:var(--bx);color:#fde6ee}
.st-c small{display:block;color:var(--ac);font-weight:700;font-size:13px}
.st.now .st-c small{color:var(--rose)}
.st-c h3{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.15;color:var(--bx);margin:4px 0}
.st.now .st-c h3{color:#fff}
.lieu{font-size:14px;color:var(--mut);margin-bottom:12px}.st.now .lieu{color:#f6cfdb}
.st-c ul{list-style:none;padding:12px 0 0;border-top:1px dashed #e7b9c7;display:grid;gap:8px}
.st.now .st-c ul{border-color:#ffffff33}
.st-c li{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:500}
.st-c li .ico{width:30px;height:30px;border-radius:10px;background:#fff;color:var(--bx)}
.st.now .st-c li .ico{background:#ffffff1f;color:var(--rose)}
.badge{display:inline-block;margin-bottom:6px;background:var(--rose);color:var(--bx2);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:999px}

/* ---- compétences ---- */
.sk{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.skg{background:#fff;border-radius:24px;padding:26px;border:1px solid #f6cbd8}
.skh{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.skh .ico{width:44px;height:44px;border-radius:14px;background:var(--bx);color:var(--rose)}.skh .ico svg{width:22px;height:22px}
.skh h3{font-family:var(--serif);font-weight:400;font-size:24px;color:var(--bx)}
.pills{display:flex;flex-wrap:wrap;gap:8px}.pills>span{background:var(--rp);border:1px solid #f6cbd8;padding:8px 14px;border-radius:14px;font-weight:500;font-size:15px}

/* ---- contact ---- */
.contact{background:radial-gradient(circle at 15% 0%,var(--bx3),var(--bx) 50%,var(--bx2));color:#fde6ee;border-radius:44px;margin:0 2vw 30px;max-width:none;display:grid;grid-template-columns:1fr 1.15fr;gap:5vw;padding:90px 6vw}
.contact .k{color:var(--rose)}.contact h2{color:#fff}.contact h2 i{color:var(--rose)}
.ct-t{font-size:17px;margin:-14px 0 24px;opacity:.9;max-width:28em}
.ways a{display:flex;align-items:center;gap:14px;padding:16px 20px;margin-bottom:10px;border-radius:16px;background:#ffffff14;text-decoration:none;font-size:17px;transition:background .2s}
.ways a:hover{background:#ffffff26}.ways .wt{flex:1;min-width:0;overflow-wrap:anywhere}.ways .fl{color:var(--rose)}.ways .ico{color:var(--rose)}
.fm{background:#fff;color:var(--enc);border-radius:26px;padding:28px;display:grid;gap:14px;align-self:start}
.fm label{font-size:13px;font-weight:700;color:var(--bx)}
.fm input,.fm textarea{width:100%;margin-top:6px;padding:13px 15px;border-radius:12px;border:1px solid #f0c6d3;background:var(--rp);font:inherit;font-size:16px;color:var(--enc)}
.fm input:focus,.fm textarea:focus{outline:2px solid var(--bx);border-color:transparent}
.miel{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.b{padding:15px 24px;border-radius:999px;background:var(--bx);color:#fff;border:0;font:inherit;font-weight:700;cursor:pointer;min-height:48px}
.b:disabled{opacity:.6}
.fm-st{font-size:14.5px;font-weight:600;min-height:1.2em}.fm-st.ok{color:#1f7a45}.fm-st.ko{color:#b3261e}
footer{text-align:center;color:var(--mut);padding:10px 6vw 34px;font-size:13px}
footer a{text-underline-offset:3px}

/* ---- mentions ---- */
.legal{max-width:760px;margin:0 auto;padding:60px 6vw}
.legal h1{color:var(--bx);font-size:46px;margin-bottom:20px}.legal h2{font-size:28px;margin:30px 0 10px}.legal p{margin-bottom:12px}

/* ---- tablette / téléphone ---- */
@media(max-width:1100px){
  .track{grid-auto-flow:row;grid-auto-columns:auto;gap:0;padding-left:0}
  .track::before{left:39px;right:auto;top:20px;bottom:20px;width:3px;height:auto;background:repeating-linear-gradient(180deg,var(--rose) 0 10px,transparent 10px 18px)}
  .st{flex-direction:row;align-items:flex-start;gap:18px;padding-bottom:22px}
  .st-pin.logo{width:80px;border-radius:50%}
  .st-c{margin-top:0}.st-c::before{top:30px;left:-7px;transform:rotate(45deg)}
}
@media(max-width:860px){
  .nav-l{display:none}
  .hero{grid-template-columns:1fr;text-align:center;padding-top:16px;gap:28px}
  .ph{width:210px;height:210px;margin:auto}.chips{justify-content:center}
  .cards,.about,.sk,.contact,.facts{grid-template-columns:1fr}
  section{padding:64px 6vw}.ab-d{padding-top:0}
  .parc,.contact{margin:0 10px;border-radius:30px;padding:56px 5vw}.contact{margin-bottom:20px}
  .st-pin{width:64px;height:64px}.track::before{left:31px}.st-pin .ico svg{width:28px;height:28px}
  .st{gap:14px}.st-pin.logo{width:64px;border-radius:50%}.st-pin.logo img{width:80%}
  .ways a{font-size:15.5px}.ways .wt{overflow-wrap:normal;word-break:break-all}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
