.tph{--rose:#a8465d;--rose-d:#8a3349;--ambre:#f2c48d;--brique:#a4533f;--nuit:#2e1b1d;--papier:#fff8f1;--sable:#f7e6d3;
  font-family:Georgia,"Times New Roman",serif;color:var(--nuit);background:var(--papier);line-height:1.7;font-size:1.0625rem}
.tph *{box-sizing:border-box}
.tph img{max-width:100%;height:auto;display:block}
.tph .w{max-width:760px;margin:0 auto;padding:0 20px}
.tph .hero img{width:calc(100% - 40px);max-width:1000px;margin:20px auto 0;border-radius:10px}
.tph h1,.tph h2{font-variant:small-caps;letter-spacing:.02em;line-height:1.2;color:var(--rose-d);font-weight:700}
.tph h1{font-size:clamp(1.9rem,5vw,2.8rem);margin:1.6rem 0 .6rem}
.tph h2{font-size:clamp(1.5rem,3.5vw,2rem);margin:0 0 .8rem}
.tph h3{font-size:1.1rem;margin:0 0 .3rem;color:var(--brique)}
.tph .lead{font-size:1.2rem;margin:0 0 1.4rem}
.tph section{padding:2.6rem 0}
.tph .alt{background:var(--sable)}
.tph .btns{display:flex;flex-wrap:wrap;gap:12px;margin:1.2rem 0 0}
.tph .btn{display:inline-block;padding:.85rem 1.5rem;border-radius:999px;background:var(--rose);color:#fff!important;text-decoration:none;font-family:system-ui,sans-serif;font-weight:600;border:2px solid var(--rose)}
.tph .btn:hover,.tph .btn:focus-visible{background:var(--rose-d);border-color:var(--rose-d)}
.tph .btn.o{background:transparent;color:var(--rose-d)!important}
.tph .btn.o:hover,.tph .btn.o:focus-visible{background:var(--rose-d);color:#fff!important}
.tph a:focus-visible,.tph summary:focus-visible{outline:3px solid var(--nuit);outline-offset:3px}
.tph .cols{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.tph ol.steps{list-style:none;padding:0;margin:0;border-left:3px solid var(--ambre)}
.tph ol.steps li{padding:0 0 1.3rem 1.2rem}
.tph ul{padding-left:1.2rem;margin:.4rem 0}
.tph details{border-bottom:1px solid var(--ambre);padding:.9rem 0}
.tph summary{cursor:pointer;font-weight:700;color:var(--rose-d)}
.tph details p{margin:.6rem 0 0}
.tph .end{text-align:center}
.tph .end .btns{justify-content:center}
@media (prefers-reduced-motion:no-preference){.tph .btn{transition:background .2s,color .2s}}
.tph .wide{max-width:1000px}
.tph .gal{display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}
@media (min-width:700px){.tph .gal{grid-template-columns:repeat(4,1fr)}}
.tph .gal figure{margin:0}
.tph .gal img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px}
.tph table.price{width:100%;border-collapse:collapse;margin:1rem 0}
.tph table.price th,.tph table.price td{padding:.8rem .4rem;border-bottom:1px solid var(--ambre);text-align:left;font-weight:400}
.tph table.price td{text-align:right;font-weight:700;color:var(--rose-d);font-size:1.2rem}
.tph .rev{margin:0 0 1.6rem;padding-left:1.2rem;border-left:3px solid var(--rose)}
.tph .rev blockquote{margin:0 0 .4rem;font-style:italic}
.tph .rev figcaption{font-family:system-ui,sans-serif;font-size:.9rem}
.tph .cta{background:var(--nuit);color:var(--papier)}
.tph .cta h2{color:var(--ambre)}
.tph .cta a:not(.btn){color:var(--ambre)}
.tph .cta .btn.o{color:#fff!important;border-color:#fff}
.tph .cta .btn.o:hover,.tph .cta .btn.o:focus-visible{background:#fff;color:var(--nuit)!important;border-color:#fff}
.tph .cta a:focus-visible{outline-color:var(--ambre)}
.tph table.price td.n{text-align:center;font-weight:400;font-size:1rem;color:var(--nuit)}
.tph .cta h3{color:var(--ambre);margin-top:2rem}
.tph .f{display:grid;gap:12px;margin:1.2rem auto 0;max-width:520px;text-align:left}
.tph .f label{display:grid;gap:4px;font-family:system-ui,sans-serif;font-size:.95rem}
.tph .f input,.tph .f textarea{padding:.7rem;border:1px solid var(--ambre);border-radius:6px;font:inherit;background:#fff;color:var(--nuit)}
.tph .f .btn{justify-self:start;cursor:pointer;font-size:1rem}
.tph .f .small{font-size:.85rem;margin:0}
.tph .more{font-size:.95rem;margin:2.4rem 0 0}
/* Recadrage de la galerie (ajuste les % si besoin : 0% = bord gauche/haut, 100% = bord droit/bas) */
.tph .gal figure:nth-child(2) img{object-position:85% 50%}
.tph .gal figure:nth-child(4) img{object-position:70% 80%}
body{margin:0;background:#fff8f1}
.tph-bar{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;padding:12px 20px;background:#fff8f1;font:.9rem system-ui,sans-serif}
.tph-bar a{color:#8a3349;text-decoration:none}
.tph-bar a:hover,.tph-bar a:focus-visible{text-decoration:underline}
.tph-bar .lang{display:inline-flex;border:2px solid #8a3349;border-radius:999px;overflow:hidden;font-weight:700}
.tph-bar .lang a,.tph-bar .lang span{padding:6px 16px;text-decoration:none}
.tph-bar .lang [aria-current]{background:#8a3349;color:#fff}
.tph-bar a.home{display:flex;align-items:center;gap:10px;font-weight:700}
.tph-bar .logo{flex:none;width:30px;height:30px;background:currentColor;-webkit-mask:url(/assets/logo.svg) center/contain no-repeat;mask:url(/assets/logo.svg) center/contain no-repeat}
.tph .marq{overflow:hidden;padding:6px 0 clamp(28px,5vw,48px)}
.tph .marq .track{display:flex;gap:10px;width:max-content;animation:mq 50s linear infinite}
.tph .marq:hover .track{animation-play-state:paused}
.tph .marq img{height:300px;width:240px;object-fit:cover;border-radius:6px}
@keyframes mq{to{transform:translateX(calc(-50% - 5px))}}
@media (prefers-reduced-motion:reduce){.tph .marq{overflow-x:auto}.tph .marq .track{animation:none}}
