.card-link{display:inline-block;margin-top:18px;color:#ff6a00;font-weight:900;font-size:.86rem;border-bottom:1px solid currentColor}
.service-grid .accent .card-link{color:#fff}
.service-body{background:#fff}
.service-header{position:relative}
.service-header .brand img{width:230px;height:78px}
.service-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-height:560px;background:var(--ink);color:#fff}
.service-hero-copy{padding:clamp(70px,9vw,130px) clamp(24px,7vw,110px)}
.service-hero h1{font-size:clamp(2.7rem,5vw,5.4rem);line-height:.98;letter-spacing:-.05em;margin:0 0 28px}
.service-hero p:not(.eyebrow){font-size:1.15rem;color:#c4cbd1;max-width:690px}
.service-hero figure{margin:0;min-height:420px}
.service-hero img{width:100%;height:100%;object-fit:cover;display:block}

/* Affiche le portrait complet sans recadrer le visage. */
.portrait img{height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;background:#f5f6f7}
.service-content{padding:90px clamp(24px,12vw,190px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:90px}
.service-content h2{font-size:clamp(1.9rem,3.2vw,3.2rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 24px}
.service-content h3{font-size:1.3rem;margin:42px 0 12px}
.service-content p,.service-content li{color:#46515b}
.service-content ul{padding-left:20px}
.service-aside{background:var(--paper);padding:30px;align-self:start;border-top:4px solid var(--orange);position:sticky;top:112px}
.service-aside strong{display:block;font-size:1.18rem;margin-bottom:12px}
.service-aside .button{margin-top:18px;width:100%}
.service-nav{padding:28px clamp(24px,7vw,110px);background:var(--paper);display:flex;gap:16px;flex-wrap:wrap}
.service-nav a{font-weight:800;color:var(--orange)}
@media(max-width:900px){.service-hero,.service-content{grid-template-columns:1fr}.service-hero figure{max-height:520px}.service-content{gap:40px}.service-aside{position:static}.service-header .brand img{width:180px;height:64px}.service-header nav{display:flex;position:static;padding:0;background:transparent;flex-direction:row;border:0}.service-header nav a:not(.nav-cta){display:none}}
@media(max-width:600px){.service-hero h1{font-size:2.8rem}.service-hero figure{min-height:320px}.service-content{padding-top:65px;padding-bottom:65px}.service-header{padding-left:16px;padding-right:16px}.service-header .nav-cta{font-size:.78rem;padding:10px 12px}}
