/* Détecte Fuite — refinement draft. Content, URLs and behaviour remain in their existing files. */
:root{
 --df-ink:#172c48;--df-blue:#365797;--df-signature:#496ebf;
 --df-muted:#52647c;--df-paper:#fafbfd;--df-surface:#f2f5fa;
 --df-line:#d7e1ee;--df-radius:16px;--df-shadow:0 10px 30px #172c480a;
}
/* One editorial scale for private customers and specialist pages alike. */
.premium-site main>.page-hero{padding-block:clamp(32px,4vw,56px);background:linear-gradient(135deg,#f2f5fa 0%,#fafbfd 78%)}
.premium-site .page-hero h1{font-size:clamp(34px,4.1vw,58px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}
.premium-site .page-intro{font-size:clamp(16px,1.35vw,18px);line-height:1.75;color:var(--df-muted);max-width:64ch}
.premium-site .page-hero .eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1.6}
.premium-site .breadcrumb{font-size:12px;line-height:1.65;margin-bottom:26px}
.premium-site .visual-page-hero{gap:clamp(28px,4vw,60px);align-items:center}
.premium-site .page-hero-image{border:1px solid var(--df-line);border-radius:var(--df-radius);box-shadow:var(--df-shadow)}
.premium-site .page-content>.content-section{padding-block:clamp(32px,4vw,54px);column-gap:clamp(28px,4.5vw,64px)}
.premium-site .content-section>h2{font-size:clamp(25px,2.3vw,32px);line-height:1.25;letter-spacing:-.025em;border-left:0;padding-left:0;max-width:26ch}
.premium-site .content-section h3{font-size:clamp(20px,1.65vw,23px);line-height:1.35;letter-spacing:-.015em}
.premium-site .content-section p,.premium-site .content-section li{line-height:1.8}
.premium-site .content-section>div{min-width:0}
/* Service headings span the composition; photographs have their own column. */
.premium-site .page-content>.service-editorial{display:block;padding-block:clamp(36px,4.5vw,64px)}
.premium-site .service-editorial>h2{max-width:32ch;margin:0 0 28px;font-size:clamp(27px,2.7vw,36px)}
.premium-site .service-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:start}
.premium-site .service-copy{min-width:0}
.premium-site .service-copy>p:first-child{margin-top:0}
.premium-site .service-copy>p:last-child{margin-bottom:0}
.premium-site .service-visual{min-width:0}
.premium-site .service-visual figure{width:100%;max-width:none;margin:0;border:1px solid var(--df-line);border-radius:var(--df-radius);overflow:hidden;box-shadow:var(--df-shadow);background:var(--df-surface)}
.premium-site .service-visual img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain;border-radius:0;background:var(--df-surface)}
.premium-site .service-visual figcaption{padding:17px 20px;background:#fff;color:var(--df-muted);font-size:14px;line-height:1.65}
/* Quiet interaction: no decorative sheen, scaled photos or raised cards. */
.premium-site .button,.premium-site .client-navigation .nav-contact{border-radius:10px;box-shadow:0 3px 10px #172c4810;background-image:none;text-shadow:none;max-width:100%;white-space:normal}
.premium-site .button{min-height:50px;line-height:1.4;gap:12px}
.premium-site .button:before,.premium-site .button:after,.premium-site .hero-photo-frame:after{display:none}
.premium-site .button .button-icon{background:transparent;border:0;box-shadow:none}
.premium-site .client-navigation .nav-contact[aria-current=page]:after{display:none}
.premium-site .client-navigation .nav-panel{border-radius:12px;box-shadow:0 16px 36px #172c481a}
.premium-site .client-navigation .nav-panel>a{border-radius:7px}
.premium-site :is(a,button,summary,input,textarea,select):focus-visible{outline:3px solid var(--df-blue);outline-offset:4px}
.premium-site .button:active{transform:none;box-shadow:inset 0 2px 4px #172c4820}
.premium-site .home-page .audience-entry,.premium-site .home-page .situation-card,.premium-site .related-pages a{box-shadow:none;border-color:var(--df-line)}
.premium-site .home-page .home-section-heading h2{line-height:1.18;letter-spacing:-.025em}
.premium-site .request-form :is(input,select,textarea){font-family:inherit;font-size:16px;line-height:1.5;min-height:48px}
.premium-site .request-form textarea{min-height:150px}
.premium-site .request-form input[type=file]{padding:10px;overflow:hidden}
.premium-site .request-form input[type=file]::file-selector-button{font:inherit;border:1px solid var(--df-line);border-radius:6px;background:var(--df-surface);color:var(--df-ink);padding:8px 10px;margin-right:10px;cursor:pointer}
.premium-site .request-section{box-shadow:none}
/* Footer keeps all destinations, with clearer groups and comfortable links. */
body.premium-site>footer{background:var(--df-paper);border-top:1px solid var(--df-line);padding-top:clamp(36px,5vw,64px)}
.premium-site .site-footer-grid{gap:clamp(24px,3vw,44px)}
.premium-site .footer-column>p{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--df-ink);padding-bottom:14px;border-bottom:1px solid var(--df-line);margin-bottom:14px}
.premium-site .footer-column a{line-height:1.6;padding-block:8px;color:var(--df-muted)}
.premium-site .footer-bottom{gap:16px;line-height:1.65}
@media(hover:hover) and (pointer:fine){
 .premium-site .button:hover{transform:none;box-shadow:0 5px 14px #172c4818}
 .premium-site .home-page :is(.audience-entry,.situation-card,.home-case):hover{transform:none}
 .premium-site .hero-photo-frame:hover img{transform:none}
 .premium-site .footer-column a:hover{color:var(--df-blue)}
}
@media(prefers-reduced-motion:no-preference){
 .premium-site .button,.premium-site .nav-contact{transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}
}
@media(max-width:900px){
 .premium-site .service-layout{grid-template-columns:minmax(0,1fr);gap:24px}
 .premium-site .service-visual{max-width:680px;width:100%}
 .premium-site .service-editorial>h2{max-width:none;margin-bottom:22px}
 .premium-site .content-section>h2{max-width:none}
 .premium-site main>.page-hero{padding-block:32px}
 .premium-site .visual-page-hero{gap:28px}
}
@media(max-width:600px){
 .premium-site .page-hero h1{font-size:clamp(32px,8.3vw,42px);line-height:1.14;letter-spacing:-.03em;overflow-wrap:break-word}
 .premium-site .page-hero .breadcrumb{margin-bottom:20px;overflow-wrap:anywhere}
 .premium-site .page-intro{font-size:16px}
 .premium-site .page-content>.content-section{padding-block:30px}
 .premium-site .content-section>h2{font-size:27px}
 .premium-site .service-visual figure,.premium-site .page-hero-image{border-radius:12px}
 .premium-site .service-visual figcaption{padding:15px 17px}
 .premium-site .button{padding:14px 18px}
 .premium-site .site-footer-grid{gap:30px}
 .premium-site .footer-column a{display:inline-flex;align-items:center;min-height:44px}
 .premium-site .footer-column>p{margin-top:0}
 .premium-site .footer-bottom{align-items:flex-start}
 .premium-site .client-navigation .nav-panel{box-shadow:none}
 #navigation-principale.client-navigation{max-height:calc(100dvh - var(--site-header-height) - env(safe-area-inset-bottom,0px) - 16px);padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){
 .premium-site .button,.premium-site .hero-photo-frame,.premium-site .home-lead-visual{animation:none!important;transition:none!important}
}
