/* Shared layout for the five service pages. Page CSS sets each photo's crop. */
.prestation-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:60px;padding-bottom:65px}
.prestation-hero-copy{min-width:0;padding-block:18px}
.prestation-hero h1{font-size:clamp(2.6rem,4.5vw,4.2rem);overflow-wrap:break-word}
.prestation-lead{max-width:590px;margin-top:28px;font-size:1rem;line-height:1.9;color:var(--muted)}
.prestation-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:30px}
.prestation-hero-note{font-size:.75rem;color:var(--muted);margin-top:25px}
.prestation-visual{margin:0;min-width:0;position:relative;background:var(--prestation-tint,var(--sage));border-radius:120px 4px 4px 4px;overflow:hidden}
.prestation-visual img{width:100%;height:490px;object-fit:cover;object-position:var(--prestation-position,50% 50%)}
.prestation-visual figcaption{position:absolute;bottom:20px;left:20px;right:20px;width:fit-content;max-width:calc(100% - 40px);background:var(--paper);border-radius:var(--radius);padding:13px 20px;color:var(--ink);font-family:var(--serif);font-size:1.25rem;line-height:1.3}
.prestation-overview{border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:85px;align-items:start}
.prestation-overview h2{font-size:clamp(2rem,3.1vw,2.8rem);margin-bottom:24px}
.prestation-overview p:not(.eyebrow){font-size:.94rem;color:var(--muted);line-height:1.9}
.prestation-focus{background:var(--prestation-tint,var(--sage));padding:32px;border-radius:var(--radius)}
.prestation-focus .eyebrow{margin-bottom:16px}
.prestation-focus h3{font-size:1.75rem;margin-bottom:18px}
.prestation-focus .text-link{margin-top:20px;font-size:.78rem;line-height:1.6}
.prestation-page .soft-section h2{max-width:760px}
.prestation-practical{padding-top:35px;border-top:1px solid var(--line)}
.prestation-practical-heading{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:end;margin-bottom:32px}
.prestation-practical-heading>p{color:var(--muted);font-size:.9rem;max-width:540px}
.prestation-booking{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;margin-top:26px;padding:38px;background:var(--sage);border-radius:var(--radius)}
.prestation-booking .eyebrow{margin-bottom:16px}
.prestation-booking h3{font-size:2rem}
.prestation-booking p:not(.eyebrow){color:var(--muted);font-size:.86rem;margin-top:18px}
.prestation-booking .text-link{margin-top:8px}
.prestation-booking-actions{text-align:center}
.prestation-phone{display:block;width:fit-content;margin:20px auto 0;font-size:1.05rem;text-decoration:none}
.prestation-booking-actions p{font-size:.75rem!important}
.prestation-boundary{margin-top:30px;line-height:1.8}
.prestation-related{padding-top:75px}
.prestation-related h2{font-size:clamp(1.9rem,2.7vw,2.5rem)}
.prestation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin-top:28px}
.prestation-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding-block:16px;border-bottom:1px solid var(--line);font-size:.88rem;text-decoration:none}
.prestation-links a:hover{color:var(--clay);border-color:var(--clay)}
.prestation-links span{font-size:1.2rem;flex-shrink:0}
@media(max-width:1100px){.prestation-hero{gap:35px}.prestation-visual img{height:450px}.prestation-overview{gap:40px}.prestation-booking{gap:30px;padding:30px}}
@media(max-width:900px){.prestation-hero{grid-template-columns:1fr;gap:30px}.prestation-hero-copy{max-width:700px;padding-block:0}.prestation-hero h1{font-size:3.7rem}.prestation-visual img{height:390px;object-position:var(--prestation-mobile-position,var(--prestation-position,50% 50%))}.prestation-overview{grid-template-columns:1fr;gap:30px}.prestation-focus{max-width:720px}.prestation-practical-heading{grid-template-columns:1fr;gap:20px}.prestation-booking{grid-template-columns:1fr;gap:24px}.prestation-booking-actions{text-align:left}.prestation-phone{margin-inline:0}}
@media(max-width:600px){.prestation-hero{padding-bottom:45px}.prestation-hero h1{font-size:clamp(2.3rem,9.5vw,3.1rem)}.prestation-lead{font-size:.93rem;margin-top:22px}.prestation-actions{align-items:stretch;flex-direction:column;gap:10px}.prestation-actions .text-link{align-self:flex-start}.prestation-hero-note{font-size:.7rem}.prestation-visual{border-top-left-radius:80px}.prestation-visual img{height:320px}.prestation-visual figcaption{font-size:1.1rem;left:14px;right:14px;bottom:14px;max-width:calc(100% - 28px);padding:12px 16px}.prestation-overview p:not(.eyebrow){font-size:.9rem}.prestation-focus{padding:25px}.prestation-booking{padding:25px}.prestation-booking-actions .button{width:100%;gap:14px}.prestation-related{padding-top:50px}.prestation-links{grid-template-columns:1fr}.prestation-practical{padding-top:28px}.prestation-boundary{font-size:.75rem}}
