/* NF Protect — un système commun à 390, 768 et 1440 px. */
:root{--nf-ink:#091f26;--nf-glacier:#d8f7ff;--nf-paper:#fff;--nf-soft:#f4f8f9;--nf-line:#d8e2e5;--nf-muted:#50636b;--nf-radius:12px;--nf-space:88px;--nf-gutter:64px}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body.nf-theme{margin:0;background:var(--nf-paper);color:var(--nf-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.nf-theme *,.nf-theme *::before,.nf-theme *::after{box-sizing:border-box}
.nf-theme h1,.nf-theme h2,.nf-theme h3,.nf-theme .nf-display{font-family:"Darker Grotesque",sans-serif;color:inherit;letter-spacing:-.025em;font-weight:700;line-height:1.04;margin:0;text-wrap:balance}
.nf-theme h1{font-size:clamp(52px,6vw,88px)}
.nf-theme h2{font-size:clamp(40px,4.25vw,60px)}
.nf-theme h3{font-size:34px;line-height:1.12}
.nf-theme p{margin:0 0 1.2em}
.nf-theme p:last-child{margin-bottom:0}
.nf-theme a{color:inherit;text-underline-offset:5px}
.nf-theme button,.nf-theme input{font:inherit}
.nf-theme img{display:block;max-width:100%;height:auto}
.nf-theme svg{flex-shrink:0}
.nf-theme button,.nf-theme a,input,summary{-webkit-tap-highlight-color:transparent}
.nf-theme :focus-visible{outline:3px solid #167795;outline-offset:5px}
.nf-container{width:min(100% - var(--nf-gutter)*2,1240px);margin-inline:auto}
.nf-section{padding-block:var(--nf-space)}
.nf-section-heading{display:flex;align-items:center;gap:56px;margin-bottom:48px}
.nf-section-heading h2{max-width:670px}
.nf-section-rule{height:1px;background:var(--nf-line);flex:1}
.nf-glacier{background:var(--nf-glacier)}
.nf-lead{font-size:20px;line-height:1.6}
.nf-index{font-size:14px;line-height:1;letter-spacing:.08em;color:var(--nf-muted);font-variant-numeric:tabular-nums;display:block}
.nf-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:54px;padding:13px 24px;background:var(--nf-ink);border:1px solid var(--nf-ink);border-radius:8px;color:white!important;font-size:16px;font-weight:600;line-height:1.5;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,transform .18s}
.nf-button:hover{background:#17414e;transform:translateY(-2px)}
.nf-button-outline{color:var(--nf-ink)!important;background:transparent}
.nf-button-outline:hover{color:white!important;background:var(--nf-ink)}
.nf-text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-weight:600;text-decoration:underline}
.nf-skip{position:fixed;z-index:100010;top:12px;left:12px;padding:12px 24px;background:var(--nf-glacier);transform:translateY(-200%);clip-path:inset(50%);border-radius:8px}
.nf-skip:focus{transform:none;clip-path:none}
.nf-header{height:88px;border-bottom:1px solid #344a53;background:var(--nf-ink);color:white;position:relative;z-index:50}
.nf-header-inner{height:100%;display:flex;align-items:center;gap:40px}
.nf-logo{display:inline-block;flex-shrink:0}
.nf-logo img{width:132px;height:auto;max-height:54px;object-fit:contain}
.nf-desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto}
.nf-desktop-nav a{text-decoration:none;font-size:15px;font-weight:500;white-space:nowrap;padding-block:12px;position:relative}
.nf-desktop-nav a::after{content:"";position:absolute;bottom:7px;left:0;right:0;height:2px;background:var(--nf-glacier);transform:scaleX(0);transform-origin:left;transition:transform .18s}
.nf-desktop-nav a:hover::after,.nf-desktop-nav a[aria-current]::after{transform:scaleX(1)}
.nf-header-actions{display:flex;align-items:center;gap:16px}
.nf-header .nf-button{min-height:48px;padding:10px 20px;font-size:14px;gap:16px;background:var(--nf-glacier);color:var(--nf-ink)!important;border-color:var(--nf-glacier)}
.nf-menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:6px;width:46px;height:46px;border:1px solid var(--nf-line);background:white;border-radius:8px;cursor:pointer}
.nf-menu-toggle span{width:21px;height:2px;background:var(--nf-ink)}
.nf-menu-dialog{color:white;background:var(--nf-ink);width:min(100%,500px);height:100dvh;max-height:none;max-width:100%;margin:0 0 0 auto;border:0;padding:24px;position:fixed;inset:0 0 0 auto}
.nf-menu-dialog::backdrop{background:rgba(9,31,38,.5)}
.nf-menu-top{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:36px}
.nf-menu-close,.nf-video-close{width:48px;height:48px;font-size:34px;font-weight:300;background:white;color:var(--nf-ink);border:1px solid var(--nf-line);border-radius:8px;cursor:pointer}
.nf-menu-dialog nav{display:flex;flex-direction:column;gap:0}
.nf-menu-dialog nav>a:not(.nf-button){font-family:"Darker Grotesque",sans-serif;font-size:40px;font-weight:600;padding:10px 0;border-bottom:1px solid var(--nf-line);text-decoration:none}
.nf-menu-dialog .nf-button{margin-top:24px;justify-content:space-between;background:var(--nf-glacier);border-color:var(--nf-glacier);color:var(--nf-ink)!important}
.nf-menu-phone{display:block;margin-top:32px}
.nf-menu-open{overflow:hidden}
.nf-mission{background:var(--nf-glacier)}
.nf-mission-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}
.nf-product-media{background:transparent;overflow:hidden}
.nf-product-media img{width:100%;aspect-ratio:1.28;object-fit:contain;mix-blend-mode:normal;opacity:1;filter:none}
.nf-mission-copy h2{margin-bottom:24px}
.nf-mission-copy p{line-height:1.75;margin-bottom:30px}
.nf-service-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:72px;row-gap:48px}
.nf-service{border-top:1px solid var(--nf-line);padding-top:25px;display:grid;grid-template-columns:32px 1fr;column-gap:25px;align-content:start}
.nf-service .nf-index{grid-column:1;grid-row:1;margin-top:12px}
.nf-service h3,.nf-service p{grid-column:2}
.nf-service h3{margin-bottom:20px;max-width:20ch}
.nf-service p{color:var(--nf-muted);line-height:1.7}
.nf-reviews{padding-top:0;padding-bottom:64px}
.nf-reviews:has(.ti-widget:empty){display:none}
.nf-reviews .ti-widget{max-width:100%!important}
.nf-partner{background:var(--nf-soft)}
.nf-partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.nf-partner-media{height:430px;display:grid;place-items:center}
.nf-partner-media img{max-height:100%;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.nf-partner-logo{width:220px;height:auto;margin-bottom:32px}
.nf-partner-copy ul{padding:0;list-style:none;margin:26px 0 30px}
.nf-partner-copy li{padding:12px 0;border-top:1px solid var(--nf-line)}
.nf-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:88px}
.nf-faq h2{font-size:48px}
.nf-faq details{border-bottom:1px solid var(--nf-line)}
.nf-faq details:first-child{border-top:1px solid var(--nf-line)}
.nf-faq summary{display:flex;justify-content:space-between;align-items:center;gap:28px;list-style:none;padding:25px 0;font-weight:600;font-size:18px;line-height:1.5;cursor:pointer}
.nf-faq summary::-webkit-details-marker{display:none}
.nf-faq summary span{font-size:26px;font-weight:400;line-height:1;transition:transform .18s}
.nf-faq details[open] summary span{transform:rotate(45deg)}
.nf-faq-answer{padding:0 24px 28px 0;color:var(--nf-muted)}
.nf-instagram{border-top:1px solid var(--nf-line)}
.nf-instagram #sb_instagram{padding:0!important;width:100%!important}
.nf-instagram #sb_instagram #sbi_images{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px;padding:0!important}
.nf-instagram #sbi_images .sbi_item{width:100%!important;padding:0!important;min-width:0}
.nf-instagram #sbi_images .sbi_photo{border-radius:10px;aspect-ratio:1;height:auto!important}
.nf-instagram #sbi_images .sbi_photo img{height:100%;width:100%;object-fit:cover}
.nf-instagram #sbi_images.nf-feed-collapsed .sbi_item:nth-child(n+7){display:none!important}
.nf-feed-toggle{margin-top:28px}
.nf-instagram .sbi_header_img{border-radius:50%}
.nf-instagram #sbi_load{padding-top:28px!important}
.nf-instagram #sbi_load a{min-height:44px;display:inline-flex!important;align-items:center;border-radius:8px!important;padding:10px 22px!important;font:600 15px/1.5 system-ui,sans-serif!important;background:var(--nf-ink)!important;color:white!important}
.nf-consultation{background:var(--nf-ink);color:white;padding-block:80px}
.nf-consultation-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.nf-consultation h2{font-size:64px;max-width:12ch;margin-bottom:25px}
.nf-consultation p{max-width:46ch;color:#cfdee3;font-size:17px;line-height:1.75}
.nf-consultation .nf-text-link{color:var(--nf-glacier);margin-top:22px}
.nf-contact-form{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;width:100%!important;margin:10px 0 0!important}
.nf-contact-form .breakdance-form-field{width:100%!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:8px;min-width:0}
.nf-contact-form label{font-size:14px;font-weight:500;color:white;line-height:1.5}
.nf-contact-form input:not([type=hidden]){display:block;width:100%;min-width:0;height:56px;border:1px solid #a7bac1;border-radius:8px;background:white;color:var(--nf-ink);padding:14px 16px;font-size:17px;line-height:1.5;box-shadow:none}
.nf-contact-form .breakdance-form-field--hpinput{display:none!important}
.nf-contact-form .nf-button{background:var(--nf-glacier);border-color:var(--nf-glacier);color:var(--nf-ink)!important;width:100%;margin-top:3px;min-height:56px;text-transform:none}
.nf-contact-form .nf-button:hover{background:white}
.nf-contact-form .nf-button:disabled{cursor:wait;opacity:.65;transform:none}
.nf-contact-form .breakdance-form-message{font-size:16px;line-height:1.6;padding:16px;border:1px solid currentColor;border-radius:8px;width:100%}
.nf-footer{background:var(--nf-ink);color:white;padding:0 0 30px}
.nf-footer-grid{padding-top:50px;border-top:1px solid #344a53;display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:64px}
.nf-footer .nf-logo{margin-bottom:20px}
.nf-footer .nf-logo img{width:146px}
.nf-footer p{font-size:14px;color:#c0d0d6;line-height:1.8}
.nf-footer nav,.nf-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.nf-footer nav a,.nf-footer-contact a{font-size:15px;line-height:1.5;min-height:36px;padding:7px 0;text-decoration:none;display:inline-flex;align-items:center;gap:18px}
.nf-footer a:hover{text-decoration:underline}
.nf-footer-contact>a:first-child{font-family:"Darker Grotesque",sans-serif;font-size:32px;font-weight:600;line-height:1.3}
.nf-footer-legal{border-top:1px solid #344a53;display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:45px;padding-top:22px}
.nf-footer-legal a{font-size:13px;color:#c0d0d6;min-height:40px;display:inline-flex;align-items:center}
.nf-page-intro{padding-block:68px 60px}
.nf-page-intro h1{max-width:1050px}
.nf-page-intro .nf-button{margin-top:32px}
.nf-solutions-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start;padding-bottom:76px}
.nf-solutions-intro h1{max-width:8ch}
.nf-solutions-intro .nf-lead{padding-top:12px}
.nf-solutions-group{border-top:1px solid var(--nf-line)}
.nf-solutions-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.nf-solution-photo{position:sticky;top:32px;background:transparent}
.nf-solution-photo img{width:100%;aspect-ratio:1.2;object-fit:contain;mix-blend-mode:multiply}
.nf-solutions-list article{position:relative;padding:26px 0 28px 50px;border-top:1px solid var(--nf-line)}
.nf-solutions-list article:first-child{padding-top:0;border:0}
.nf-solutions-list .nf-index{position:absolute;left:0;top:37px}
.nf-solutions-list article:first-child .nf-index{top:11px}
.nf-solutions-list h3{margin-bottom:18px}
.nf-solutions-list p{color:var(--nf-muted);line-height:1.7}
.nf-professional-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.nf-professional-grid article{padding-top:24px;border-top:1px solid #a7cbd5}
.nf-professional-grid h3{margin:24px 0 18px}
.nf-professional-grid p{color:#304e58}
.nf-prose{max-width:740px;margin-inline:auto;font-size:18px;line-height:1.85;overflow-wrap:anywhere}
.nf-prose>p,.nf-prose>ul,.nf-prose>ol,.nf-prose>blockquote,.nf-prose>figure{margin:0 0 26px}
.nf-prose h1,.nf-prose h2{font-size:42px;line-height:1.15;margin:48px 0 22px;text-wrap:pretty}
.nf-prose h3{font-size:32px;line-height:1.2;margin:36px 0 18px}
.nf-prose h4{font-size:23px;line-height:1.4;margin:28px 0 16px}
.nf-prose>h2:first-child,.nf-prose>h3:first-child{margin-top:0}
.nf-prose ul,.nf-prose ol{padding-left:24px}
.nf-prose li{padding-left:4px;margin-bottom:10px}
.nf-prose li::marker{color:#167795}
.nf-prose blockquote{border-left:3px solid #167795;padding:6px 0 6px 24px;margin-left:0;color:var(--nf-muted)}
.nf-prose img{height:auto;max-width:100%;margin-inline:auto;border-radius:8px}
.nf-prose table{display:block;overflow:auto;max-width:100%;border-collapse:collapse;font-size:16px}
.nf-prose th,.nf-prose td{border:1px solid var(--nf-line);padding:10px 14px;text-align:left}
.nf-prose pre{overflow:auto;max-width:100%;background:var(--nf-soft);padding:18px}
.nf-prose-wide{max-width:900px}
.nf-about{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center;padding-bottom:var(--nf-space)}
.nf-about-photo{background:var(--nf-glacier);border-radius:12px;overflow:hidden}
.nf-about-photo img{width:100%;max-height:550px;object-fit:contain;object-position:bottom}
.nf-about .nf-prose{font-size:19px}
.nf-about-quote{background:var(--nf-ink);color:white}
.nf-about-quote blockquote{font-family:"Darker Grotesque",sans-serif;font-size:40px;font-weight:500;line-height:1.25;max-width:1050px;margin:0 auto;letter-spacing:-.01em}
.nf-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.nf-gallery-item{border-radius:10px;overflow:hidden;display:block;background:var(--nf-soft)}
.nf-gallery img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .3s}
.nf-gallery a:hover img{transform:scale(1.035)}
.nf-clients h2{text-align:center;margin-bottom:36px}
.nf-clients img{width:min(100%,960px);max-height:720px;object-fit:contain;margin:auto;background:white;border-radius:12px}
.nf-contact{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;padding-bottom:var(--nf-space)}
.nf-contact-info h2{margin-bottom:36px}
.nf-contact-info h3{font-size:30px;margin-bottom:20px}
.nf-contact-address{line-height:2.4;margin-bottom:28px}
.nf-contact-address img.emoji{display:inline!important}
.nf-contact-photo img{max-height:500px;width:100%;object-fit:contain;background:var(--nf-soft);border-radius:12px}
.nf-blog-list{padding-top:0}
.nf-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 28px}
.nf-article-card{min-width:0}
.nf-article-image{display:block;background:var(--nf-soft);overflow:hidden;border-radius:10px;aspect-ratio:1.45}
.nf-article-image img{width:100%;height:100%;object-fit:contain;transition:transform .3s}
.nf-article-card:hover .nf-article-image img{transform:scale(1.025)}
.nf-article-meta{font-size:13px;color:var(--nf-muted);margin:22px 0 10px}
.nf-article-card h2{font-size:31px;line-height:1.14;text-wrap:pretty;margin-bottom:15px}
.nf-article-card h2 a{text-decoration:none}
.nf-article-card h2 a:hover{text-decoration:underline}
.nf-article-card h2 svg{display:inline-block;margin-left:10px;vertical-align:middle;width:19px}
.nf-article-card p{font-size:15px;line-height:1.7;color:var(--nf-muted)}
.nf-article-heading{padding-block:54px 44px;max-width:1050px}
.nf-back-link{display:inline-flex;align-items:center;min-height:44px;margin-bottom:24px;font-size:14px}
.nf-article-heading h1{font-size:clamp(44px,5.4vw,76px);line-height:1.07;max-width:24ch;text-wrap:pretty;margin-bottom:30px}
.nf-article-heading time{font-size:14px;color:var(--nf-muted)}
.nf-article-cover{margin-block:0 56px;background:var(--nf-soft);border-radius:12px;overflow:hidden}
.nf-article-cover img{max-height:650px;width:100%;object-fit:contain}
.nf-article-content{padding-bottom:56px}
.nf-post-navigation{display:flex;justify-content:space-between;gap:64px;border-top:1px solid var(--nf-line);padding:36px 0 60px}
.nf-post-navigation a{flex:1;max-width:48%;font-size:16px;line-height:1.5}
.nf-post-navigation a:last-child{text-align:right}
.nf-quote-shell{padding:36px 0 64px;background:var(--nf-soft)}
.nf-quote-shell h1,.nf-quote-shell h2,.nf-quote-shell h3{font-family:"Darker Grotesque",sans-serif}
.nf-theme .nf-quote-shell>h1{width:min(100% - var(--nf-gutter)*2,1240px);margin:0 auto 28px;font:500 16px/1.6 system-ui,sans-serif;letter-spacing:0;color:var(--nf-muted);text-align:left}
.nf-quote-page{background:white;margin-top:64px;font-family:system-ui,sans-serif}
.nf-quote-s{width:min(100% - var(--nf-gutter)*2,1240px);margin-inline:auto;padding-block:var(--nf-space);border-top:1px solid var(--nf-line)}
.nf-quote-s:first-child{border:0}
.nf-quote-eyebrow{font-size:14px;font-weight:500;color:var(--nf-muted);margin-bottom:18px!important}
.nf-quote-s h2{max-width:20ch;margin-bottom:24px}
.nf-quote-lead{max-width:65ch;font-size:18px;color:var(--nf-muted);margin-bottom:36px!important}
.nf-quote-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;padding:0;list-style:none;margin:40px 0 0}
.nf-quote-steps li{border-top:1px solid var(--nf-line);padding-top:24px}
.nf-quote-num{font-size:14px;color:var(--nf-muted);display:block;margin-bottom:18px}
.nf-quote-steps h3,.nf-quote-card h3,.nf-quote-faq h3{font-size:32px;margin-bottom:18px}
.nf-quote-steps p,.nf-quote-card p,.nf-quote-faq p{color:var(--nf-muted);font-size:17px;line-height:1.75}
.nf-quote-cards{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:28px}
.nf-quote-card{background:var(--nf-glacier);padding:32px;border-radius:12px}
.nf-quote-note{padding-left:24px;border-left:2px solid #167795;color:var(--nf-muted);max-width:80ch;font-size:16px}
.nf-quote-faq{display:grid;grid-template-columns:1fr 1fr;gap:40px 64px;margin-top:40px}
.nf-quote-faq>div{border-top:1px solid var(--nf-line);padding-top:26px}
.nf-quote-tel-box{background:var(--nf-ink);color:white;padding:48px;border-radius:12px;display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.nf-quote-tel-box h2{font-size:48px}
.nf-quote-tel-box p{font-size:17px;color:#c0d0d6}
.nf-quote-tel-actions{display:flex;flex-direction:column;gap:18px;min-width:0}
.nf-quote-btn{display:block;background:var(--nf-glacier);color:var(--nf-ink)!important;padding:16px 20px;font-weight:600;text-align:center;text-decoration:none;border-radius:8px;overflow-wrap:anywhere}
.nf-quote-shell .nfp-configurateur .entry__start{background:var(--nf-ink);border-radius:8px;min-height:54px;font:600 16px/1.5 system-ui,sans-serif;padding:16px 24px}
.nf-quote-shell .nfp-configurateur .entry__start:hover{background:#17414e}
.nf-article-card .nf-text-link{font-size:14px;margin-top:10px}
@media(max-width:800px){.nf-quote-steps{gap:28px}.nf-quote-steps h3,.nf-quote-card h3,.nf-quote-faq h3{font-size:29px}.nf-quote-cards{gap:24px}.nf-quote-card{padding:26px}.nf-quote-tel-box{grid-template-columns:1fr;gap:32px;padding:36px}.nf-quote-tel-actions{flex-direction:row}.nf-quote-tel-actions>a{flex:1}}
@media(max-width:600px){.nf-theme .nf-quote-shell>h1{font-size:14px;margin-bottom:20px}.nf-quote-page{margin-top:40px}.nf-quote-s h2{font-size:42px}.nf-quote-lead{font-size:17px}.nf-quote-steps,.nf-quote-cards,.nf-quote-faq{grid-template-columns:1fr;gap:28px}.nf-quote-steps p,.nf-quote-card p,.nf-quote-faq p{font-size:16px}.nf-quote-tel-box{padding:28px 24px;gap:28px}.nf-quote-tel-box h2{font-size:40px}.nf-quote-tel-actions{flex-direction:column}.nf-quote-tel-box p{font-size:16px}.nf-quote-shell .nfp-configurateur .entry__start{font-size:16px;min-height:52px}}
/* Les accessoires sont intégrés aux coordonnées et au formulaire : aucun recouvrement. */
.nf-theme .grecaptcha-badge{position:static!important;inset:auto!important;width:256px!important;height:60px!important;margin-top:22px;box-shadow:none!important;border-radius:6px;max-width:100%;overflow:hidden}
.nf-theme #nf-whatsapp-slot{width:100%;margin-top:12px}
.nf-theme #nf-whatsapp-slot .qlwapp__container{position:static!important;inset:auto!important;width:100%!important;align-items:flex-start!important;flex-direction:column!important}
.nf-theme #nf-whatsapp-slot .qlwapp__button{width:max-content!important;max-width:100%!important;min-height:46px!important;height:auto!important;padding:12px 20px!important;margin:0!important;align-self:flex-start!important;display:inline-flex!important;gap:12px;border-radius:8px!important;font:500 14px/1.5 system-ui,sans-serif!important;text-decoration:none}
.nf-theme #nf-whatsapp-slot .qlwapp__icon{margin:0!important}
.nf-theme #nf-whatsapp-slot .qlwapp__text{display:inline!important}
.nf-theme #nf-whatsapp-slot .qlwapp__box{max-width:min(430px,calc(100vw - 44px))!important}
@media(min-width:1600px){:root{--nf-space:100px}}
@media(max-width:1100px){:root{--nf-gutter:32px;--nf-space:72px}.nf-header{height:86px}.nf-desktop-nav{display:none}.nf-header-actions{margin-left:auto}.nf-menu-toggle{display:flex}.nf-mission-grid,.nf-partner-grid{gap:44px}.nf-faq-grid{gap:44px}.nf-faq h2{font-size:42px}.nf-consultation-grid{gap:56px}.nf-consultation h2{font-size:54px}.nf-solutions-intro,.nf-solutions-layout{gap:48px}.nf-professional-grid{gap:28px}.nf-about{gap:48px}.nf-article-grid{grid-template-columns:repeat(2,1fr)}.nf-footer-grid{gap:32px;grid-template-columns:1fr .7fr 1fr}.nf-footer-contact>a:first-child{font-size:27px}.nf-contact{gap:48px}}
@media(max-width:800px){.nf-mission-grid{grid-template-columns:.9fr 1.1fr;gap:34px}.nf-mission-copy h2{font-size:44px}.nf-mission-copy p{font-size:16px}.nf-service-grid{gap:38px}.nf-service{grid-template-columns:24px 1fr;gap:16px}.nf-service h3{font-size:31px}.nf-service p{font-size:16px}.nf-partner-grid{gap:40px}.nf-partner-media{height:330px}.nf-partner-copy .nf-lead{font-size:18px}.nf-faq-grid{grid-template-columns:1fr;gap:32px}.nf-faq h2{max-width:20ch}.nf-consultation-grid{gap:40px}.nf-consultation h2{font-size:48px}.nf-consultation p{font-size:16px}.nf-footer-grid{grid-template-columns:1fr 1fr;gap:32px}.nf-footer-grid>nav{grid-column:2;grid-row:1/3}.nf-footer-contact{grid-column:1}.nf-solutions-intro{grid-template-columns:.75fr 1.25fr;gap:38px}.nf-solutions-intro h1{font-size:68px}.nf-solutions-intro .nf-lead{font-size:18px}.nf-solutions-layout{grid-template-columns:.8fr 1.2fr;gap:38px}.nf-solutions-list article{padding-left:38px}.nf-solutions-list h3{font-size:31px}.nf-solutions-list p{font-size:16px}.nf-professional-grid{grid-template-columns:1fr}.nf-professional-grid article{display:grid;grid-template-columns:28px 1fr 1.5fr;gap:24px;align-items:start}.nf-professional-grid h3{margin:0;font-size:32px}.nf-professional-grid .nf-index{margin-top:12px}.nf-about{grid-template-columns:.8fr 1.2fr;gap:34px}.nf-about .nf-prose{font-size:17px}.nf-about-quote blockquote{font-size:34px}.nf-gallery{gap:16px}.nf-contact{gap:36px}.nf-contact-address{font-size:15px}.nf-contact h2{font-size:43px}}
@media(max-width:600px){:root{--nf-gutter:22px;--nf-space:54px}.nf-theme{font-size:16px!important}.nf-theme h1{font-size:56px}.nf-theme h2{font-size:42px}.nf-theme h3{font-size:30px}.nf-header{height:80px}.nf-header-inner{gap:16px}.nf-logo img{width:110px}.nf-header .nf-button{font-size:12px;min-height:44px;padding:10px 12px;gap:0;white-space:nowrap}.nf-header .nf-button svg{display:none}.nf-header-actions{gap:10px}.nf-menu-toggle{width:44px;height:44px}.nf-section-heading{margin-bottom:30px;gap:0}.nf-section-rule{display:none}.nf-mission-grid{display:flex;flex-direction:column-reverse;gap:32px;align-items:stretch}.nf-mission-copy h2{font-size:44px;margin-bottom:22px}.nf-mission-copy p{font-size:16px;line-height:1.75}.nf-product-media img{aspect-ratio:1.5}.nf-service-grid{grid-template-columns:1fr;gap:28px}.nf-service{grid-template-columns:28px 1fr;gap:16px;padding-top:22px}.nf-service h3{font-size:33px;margin-bottom:16px}.nf-service p{font-size:16px}.nf-reviews{padding-bottom:40px}.nf-partner-grid{display:flex;flex-direction:column;gap:32px;align-items:stretch}.nf-partner-media{height:280px}.nf-partner-logo{width:180px;margin-bottom:25px}.nf-partner-copy .nf-lead{font-size:19px}.nf-partner-copy li{font-size:15px}.nf-faq-grid{gap:28px}.nf-faq h2{font-size:42px;max-width:18ch}.nf-faq summary{font-size:16px;padding:22px 0;gap:20px}.nf-faq-answer{font-size:16px;padding-right:0}.nf-instagram #sb_instagram #sbi_images{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.nf-instagram .sbi_header_text h3{font-size:18px!important}.nf-consultation{padding-block:52px}.nf-consultation-grid{grid-template-columns:1fr;gap:30px}.nf-consultation h2{font-size:54px;max-width:11ch;margin-bottom:24px}.nf-consultation p{font-size:16px}.nf-consultation .nf-text-link{margin-top:16px}.nf-contact-form{margin-top:0!important;gap:20px!important}.nf-footer-grid{padding-top:36px;gap:32px 20px}.nf-footer .nf-logo{padding:8px 10px}.nf-footer .nf-logo img{width:125px}.nf-footer p{font-size:13px}.nf-footer nav a{font-size:14px;min-height:40px}.nf-footer-contact{grid-column:1/-1}.nf-footer-contact>a:first-child{font-size:32px}.nf-footer-legal{margin-top:32px;gap:0;display:flex;flex-direction:column;padding-right:58px}.nf-footer-legal a{font-size:12px;min-height:44px;max-width:100%;line-height:1.5}.nf-page-intro{padding-block:38px 40px}.nf-solutions-intro{display:block}.nf-solutions-intro h1{font-size:64px;max-width:10ch;margin-bottom:26px}.nf-solutions-intro .nf-lead{font-size:17px;padding:0}.nf-solutions-layout{display:flex;flex-direction:column;gap:32px}.nf-solution-photo{position:static;width:100%}.nf-solution-photo img{aspect-ratio:1.5}.nf-solutions-list article{padding:26px 0 26px 44px}.nf-solutions-list h3{font-size:34px}.nf-solutions-list p{font-size:16px}.nf-professional-grid{gap:28px}.nf-professional-grid article{grid-template-columns:28px 1fr;gap:18px}.nf-professional-grid h3{font-size:34px}.nf-professional-grid p{grid-column:2;font-size:16px}.nf-prose{font-size:17px;line-height:1.85}.nf-prose h1,.nf-prose h2{font-size:35px;line-height:1.17;margin-top:36px}.nf-prose h3{font-size:29px}.nf-about{grid-template-columns:1fr;gap:32px}.nf-about-photo{max-width:100%;order:2}.nf-about-photo img{max-height:450px}.nf-about-quote blockquote{font-size:30px;line-height:1.3}.nf-gallery{grid-template-columns:repeat(2,1fr);gap:12px}.nf-clients h2{text-align:left;margin-bottom:28px}.nf-clients img{border-radius:8px}.nf-contact{grid-template-columns:1fr;gap:32px}.nf-contact-info h2{font-size:44px;margin-bottom:28px}.nf-contact-info h3{font-size:30px}.nf-contact-address{font-size:16px;line-height:2.3}.nf-contact-photo img{max-height:420px}.nf-article-grid{grid-template-columns:1fr;gap:40px}.nf-article-card h2{font-size:34px}.nf-article-meta{margin-top:20px}.nf-article-image{aspect-ratio:1.45}.nf-article-card p{font-size:16px}.nf-article-heading{padding-block:28px 32px}.nf-back-link{margin-bottom:20px}.nf-article-heading h1{font-size:47px;line-height:1.08;margin-bottom:24px;max-width:100%;overflow-wrap:anywhere}.nf-article-cover{border-radius:8px;margin-bottom:36px}.nf-article-cover img{max-height:none;height:auto}.nf-post-navigation{flex-direction:column;gap:24px;padding-bottom:42px}.nf-post-navigation a{max-width:100%}.nf-post-navigation a:last-child{text-align:left}.nf-quote-shell{padding:20px 0 40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nf-theme *, .nf-theme *::before,.nf-theme *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.nf-button:hover,.nf-gallery a:hover img{transform:none}}

/* Cadrage dans le navigateur des originaux transparents de Gautier. */
.nf-quote-shell .stage__card.nf-client-photo{position:relative;overflow:hidden;padding:0;aspect-ratio:4/3}
.nf-quote-shell .stage__card.nf-client-photo #stage-img{position:absolute;max-width:none;max-height:none;object-fit:contain;transform:none;mix-blend-mode:normal}
.nf-stage-note{font-size:11px!important;line-height:1.5;color:var(--nf-muted);max-width:38ch}
.nf-stage-note[hidden]{display:none!important}

/* Revue Mendar : contrastes de lecture et de focus sur l’accueil. */
body.home.nf-theme .nf-reviews .ti-widget.ti-goog .ti-read-more span{color:var(--nf-ink)!important;opacity:1!important;text-decoration:underline!important}
body.home.nf-theme :focus-visible{outline:3px solid var(--nf-ink)!important;outline-offset:5px!important}
body.home.nf-theme :is(.nf-header,.nf-hero,.nf-consultation,.nf-footer,.nf-menu-dialog) :focus-visible{outline-color:var(--nf-glacier)!important}
body.home.nf-theme .nf-hero .nf-video-open:focus-visible{outline-color:var(--nf-paper)!important}

/* Contrôles du parcours : mêmes dimensions et couleurs que les composants du thème. */
.nf-quote-shell .nfp-configurateur .btn{background:var(--nf-ink);color:white;border:1px solid var(--nf-ink);border-radius:8px;min-height:54px;padding:13px 24px;font:600 16px/1.5 system-ui,sans-serif;text-transform:none}
.nf-quote-shell .nfp-configurateur .btn:hover{background:#17414e}
.nf-quote-shell .stage__card{box-shadow:none;border:0;background:transparent;border-radius:0}
.nf-quote-shell .stage__caption{max-width:calc(100% - 48px)}

/* Avis différés : garder toute la largeur, même si le widget conserve ti-col-4. */
@media(max-width:900px){
 body.nf-theme .ti-widget.ti-goog .ti-widget-container{display:flex!important;flex-direction:column!important;gap:24px}
 body.nf-theme .ti-widget.ti-goog .ti-widget-container .ti-footer{width:100%!important;max-width:100%!important;flex:0 0 auto!important;margin:0!important}
 body.nf-theme .ti-widget.ti-goog .ti-widget-container .ti-reviews-container{width:100%!important;max-width:100%!important;flex:0 0 auto!important;min-width:0!important}
 body.nf-theme .ti-widget.ti-goog .ti-widget-container .ti-review-item{flex:0 0 50%!important;max-width:50%!important;min-width:0!important}
}
@media(max-width:600px){body.nf-theme .ti-widget.ti-goog .ti-widget-container .ti-review-item{flex-basis:100%!important;max-width:100%!important}}

/* Héros : le film existant est chargé uniquement sur demande. */
.nf-hero{position:relative;isolation:isolate;background:var(--nf-ink);color:white;overflow:hidden}
.nf-hero-layout{min-height:620px;display:flex;align-items:center;padding-block:60px 76px}
.nf-hero-copy{position:relative;z-index:2;width:58%;max-width:700px}
.nf-theme .nf-hero-context{font:500 15px/1.65 system-ui,sans-serif;letter-spacing:.01em;text-wrap:pretty;max-width:36ch;margin-bottom:28px;color:#c8dce3;padding-left:20px;border-left:2px solid var(--nf-glacier)}
.nf-theme .nf-display{font-size:clamp(76px,7.4vw,108px);line-height:.9;max-width:11ch;margin-bottom:30px;font-weight:700;letter-spacing:-.025em;text-wrap:balance}
.nf-hero-description{max-width:36ch;font-size:17px;line-height:1.7;margin-bottom:30px!important;color:#e1ecf0}
.nf-hero .nf-button{background:var(--nf-glacier);border-color:var(--nf-glacier);color:var(--nf-ink)!important}
.nf-hero .nf-button:hover{background:white}
.nf-hero-media{position:absolute;z-index:0;inset:0 0 0 auto;width:68%;overflow:hidden;background:var(--nf-ink)}
.nf-hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--nf-ink) 0%,rgba(9,31,38,.82) 18%,rgba(9,31,38,.15) 60%,rgba(9,31,38,.12)),linear-gradient(0deg,rgba(9,31,38,.65),transparent 38%)}
.nf-hero-poster{width:100%;height:100%!important;object-fit:cover;object-position:58% center}
.nf-video-open{position:absolute;z-index:1;right:max(32px,calc((100vw - 1240px)/2));bottom:48px;display:flex;gap:16px;align-items:center;min-height:54px;padding:0;border:0;color:white;background:transparent;font-size:15px!important;font-weight:600!important;cursor:pointer}
.nf-video-open svg{width:54px;height:54px;padding:16px;border:1px solid rgba(255,255,255,.7);border-radius:50%;transition:background .18s}
.nf-video-open:hover svg{background:rgba(255,255,255,.18)}
.nf-video-dialog{padding:0;border:0;border-radius:0;overflow:visible;background:var(--nf-ink);color:white;width:min(90vw,1100px);max-width:90vw}
.nf-video-dialog::backdrop{background:rgba(9,31,38,.9)}
.nf-video-dialog video{display:block;width:100%;aspect-ratio:2550/1350;max-height:80dvh}
.nf-video-close{position:absolute;right:0;top:-58px}
.nf-video-error{padding:20px}
@media(min-width:1600px){.nf-hero-layout{min-height:700px;padding-block:76px 88px}}
@media(max-width:1100px){.nf-hero-layout{min-height:590px;padding-block:48px 64px}.nf-hero-copy{width:62%}.nf-theme .nf-display{font-size:88px}.nf-video-open{right:32px;bottom:42px}}
@media(max-width:800px){.nf-hero-layout{min-height:570px;padding-block:44px 58px}.nf-hero-copy{width:68%}.nf-theme .nf-display{font-size:80px}.nf-hero-description{font-size:16px;max-width:32ch}.nf-hero-media{width:80%}.nf-hero-media::after{background:linear-gradient(90deg,var(--nf-ink),rgba(9,31,38,.8) 26%,rgba(9,31,38,.1)),linear-gradient(0deg,rgba(9,31,38,.5),transparent)}.nf-video-open{bottom:32px;right:32px}}
@media(max-width:600px){.nf-hero-layout{min-height:0;padding-block:38px 116px}.nf-hero-copy{width:100%;max-width:none}.nf-theme .nf-hero-context{font-size:13px;max-width:32ch;margin-bottom:25px;padding-left:16px}.nf-theme .nf-display{font-size:64px;line-height:.92;max-width:10.5ch;margin-bottom:26px}.nf-hero-description{font-size:16px;max-width:30ch;margin-bottom:26px!important}.nf-hero .nf-button{font-size:15px;min-height:52px;padding:13px 20px}.nf-hero-media{width:100%}.nf-hero-poster{object-position:60% center}.nf-hero-media::after{background:linear-gradient(90deg,rgba(9,31,38,.96),rgba(9,31,38,.7) 72%,rgba(9,31,38,.5)),linear-gradient(0deg,rgba(9,31,38,.55),transparent)}.nf-video-open{left:22px;right:auto;bottom:30px;font-size:14px!important;min-height:44px}.nf-video-open svg{width:44px;height:44px;padding:12px}}
