:root{--plum:#3d173f;--plum2:#5d2b62;--lav:#eee4f1;--rose:#c38a7a;--ink:#241b27;--paper:#fcfafc;--white:#fff;--muted:#736977}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.12}
a{color:inherit}
.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1.25rem,5vw,5.5rem);background:#fff;border-bottom:1px solid rgba(61,23,63,.08)}
.brand{display:flex;align-items:center;text-decoration:none;color:var(--plum);line-height:1}
.brand-mark{width:46px;height:46px}
.brand span{display:flex;flex-direction:column}
.brand strong{font-family:'Playfair Display',serif;font-size:1.4rem;letter-spacing:.12em}
.brand small{font-size:.56rem;letter-spacing:.23em;margin-top:.35rem}
.back{font-size:.88rem;font-weight:700;text-decoration:none;color:var(--plum)}
.service-hero{padding:clamp(4.5rem,9vw,8rem) clamp(1.25rem,8vw,10rem);background:linear-gradient(125deg,var(--plum),#6b356f);color:#fff}
.eyebrow{color:#e7baad;font-size:.74rem;font-weight:700;letter-spacing:.2em}
h1{max-width:920px;margin:.8rem 0 1.5rem;font-size:clamp(2.6rem,6vw,5.4rem);letter-spacing:-.04em}
.service-hero .lead{max-width:760px;color:#eee4f1;font-size:1.12rem}
.button{display:inline-flex;align-items:center;justify-content:center;margin-top:1.2rem;padding:1rem 1.45rem;border-radius:999px;background:#fff;color:var(--plum);font-weight:700;text-decoration:none}
.content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);gap:clamp(2rem,7vw,7rem);max-width:1240px;margin:auto;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,5vw,4rem)}
.content h2{color:var(--plum);font-size:clamp(2rem,4vw,3.4rem)}
.content h3{margin-top:2rem;color:var(--plum);font-size:1.55rem}
.content p,.content li{color:var(--muted)}
.content ul{padding-left:1.25rem}
.content li{margin:.6rem 0}
.side-card{align-self:start;position:sticky;top:2rem;padding:2rem;border:1px solid #e4d8e6;border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(61,23,63,.08)}
.side-card h2{font-size:1.8rem}
.side-card .button{width:100%;background:var(--plum);color:#fff;text-align:center}
.related{padding:4rem clamp(1.25rem,7vw,8rem);background:#f2edf3}
.related h2{text-align:center;color:var(--plum);font-size:clamp(1.8rem,3vw,2.7rem)}
.related-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;max-width:900px;margin:2rem auto 0}
.related-links a{padding:.8rem 1rem;border:1px solid rgba(61,23,63,.15);border-radius:999px;background:#fff;color:var(--plum);font-weight:700;text-decoration:none}
footer{padding:3rem clamp(1.25rem,6vw,7rem);color:var(--muted);text-align:center;overflow-wrap:anywhere}
footer a{color:var(--plum);font-weight:700;text-underline-offset:4px}
@media(max-width:800px){.content{grid-template-columns:1fr}.side-card{position:static}.nav{min-height:74px}.back{font-size:.78rem}}
