/* Site-web.fr — components adapted from the current shared brand system. */
#main.nf-offer {--nf-gap:clamp(24px,3vw,48px)}
#main.nf-offer > section {margin-top:0;margin-bottom:0}
#main.nf-offer > .rf-section {padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(48px,6vw,88px)}
#main.nf-offer > .rf-section .rf-head {margin-bottom:32px}
#main.nf-offer .rf-title {max-width:none;letter-spacing:-.035em}
#main.nf-offer .rf-head p {max-width:800px}
#main.nf-offer .cr-hero {min-height:calc(100svh - 138px);padding-top:48px;padding-bottom:52px;align-items:center;gap:var(--nf-gap)}
#main.nf-offer .cr-hero h1 {font-size:clamp(38px,3.8vw,58px);line-height:1.09;letter-spacing:-.035em;max-width:none}
#main.nf-offer .cr-hero h1 em {display:block}
#main.nf-offer .cr-hero .rf-lead {font-size:18px;line-height:1.65;margin:20px 0 14px}
#main.nf-offer .nf-hero-cost {display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:16px 0 22px;font-family:var(--body,'Space Grotesk',sans-serif);font-size:15px;line-height:1.5;color:var(--ink,#12131c)}
#main .nf-hero-cost strong {color:var(--cobalt,#2130ea);background:var(--lime,#c8ff3e);padding:8px 12px;border-radius:7px}
#main.nf-offer .rf-hero-checks {margin:18px 0 26px;gap:9px}
#main.nf-offer .rf-review {margin-top:28px}
#main.nf-offer .rf-hero-visual {padding:20px;border-radius:24px}
#main.nf-offer .rf-hero-visual img {width:100%;height:auto;display:block}
#main.nf-offer .rf-hero-visual .rf-browser {display:block;overflow:hidden;border-radius:16px;background:#fff;cursor:default}
#main.nf-offer .rf-hero-visual figcaption {display:block;margin-top:16px}
#main.nf-offer .rf-hero-visual figcaption strong {font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-size:23px;line-height:1.25}
#main.nf-offer .rf-hero-visual figcaption small {display:block;font-size:14px;line-height:1.4;margin-top:6px;color:#fff}
#main.nf-offer .client-proof {padding-top:28px;padding-bottom:40px}
#main.nf-offer .client-proof .cp-title {font-size:28px}
#main.nf-offer #apercu {margin-top:0}
#main.nf-offer .nf-projects {padding-left:clamp(20px,4vw,56px);padding-right:clamp(20px,4vw,56px)}
#main .nf-projects .rf-title {font-size:clamp(32px,4vw,50px);max-width:none}
#main .nf-projects .rf-head p {color:#fff}
#main .nf-projects .rxb-cap-type {line-height:1.45!important}
#main .nf-projects .rxb-ctrl {display:flex!important}
#main .nf-projects .rxb-bar {height:56px!important;justify-content:space-between!important}
#main .nf-projects .rxb-hint {display:flex!important;font-size:14px!important}
#main .nf-projects .rxb-shots {background:#fff!important}
#main .nf-projects .nf-project-note {font-size:13px;color:#fff;margin:24px 0 0;line-height:1.5}
#main.nf-offer #formules {padding-left:clamp(20px,4vw,48px);padding-right:clamp(20px,4vw,48px);border-radius:24px;background-color:var(--cobalt,#2130ea);background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:34px 34px;color:#fff}
#main.nf-offer #formules .rf-head {text-align:left;margin-bottom:32px}
#main.nf-offer #formules .section-kicker {background:#fff;color:var(--cobalt,#2130ea)}
#main.nf-offer #formules .rf-title {color:#fff}
#main.nf-offer #formules .rf-title em {color:var(--lime,#c8ff3e)}
#main.nf-offer #formules .rf-head p {color:#fff;margin-left:0;max-width:840px}
#main .nf-plans {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:100%;align-items:stretch}
#main .nf-plan {display:flex;flex-direction:column;min-width:0;background:#fff;color:var(--ink,#12131c);padding:28px 24px;border-radius:16px}
#main .nf-plan-name {margin:0 0 14px;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-size:24px;font-weight:800;line-height:1.2;color:var(--cobalt,#2130ea)}
#main .nf-plan-range {margin:0 0 4px;font-size:14px;color:var(--cobalt,#2130ea)}
#main .nf-plan-price {margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;color:var(--cobalt,#2130ea);line-height:1.1}
#main .nf-plan-price strong {font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-weight:800;font-size:clamp(40px,4vw,58px);letter-spacing:-.04em}
#main .nf-plan-price span {font-size:15px;line-height:1.35}
#main .nf-plan-cost {min-height:46px;margin:14px 0 18px;font-size:14px;line-height:1.55}
#main .nf-plan-intro {margin:0 0 20px;font-size:16px;line-height:1.6}
#main .nf-plan ul {padding:0;margin:0 0 28px;list-style:none;font-size:15px;line-height:1.6}
#main .nf-plan li {position:relative;padding-left:22px;margin:9px 0}
#main .nf-plan li::before {content:'';position:absolute;left:0;top:8px;width:10px;height:6px;border-left:2px solid var(--cobalt,#2130ea);border-bottom:2px solid var(--cobalt,#2130ea);transform:rotate(-45deg)}
#main .nf-plan .cta-wrap {margin-top:auto;width:100%}
#main .nf-plan .nf-button {justify-content:center;width:100%;padding:16px 12px;white-space:normal}
#main .nf-button {display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:15px 22px;border:0;border-radius:9px;background:var(--cobalt,#2130ea);color:#fff;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-weight:800;font-size:15px;line-height:1.3;text-decoration:none;cursor:pointer;transition:transform .2s,background .2s}
#main .nf-button:hover {background:#111c9c;transform:translateY(-2px)}
#main .nf-button:focus-visible,#main .nf-form input:focus-visible,#main .nf-form select:focus-visible,#main .nf-form textarea:focus-visible {outline:3px solid var(--pink,#ff5ec4);outline-offset:3px}
#main .nf-included {margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.4);display:grid;grid-template-columns:1.5fr 1fr;gap:28px}
#main .nf-included h4 {color:#fff;font-size:21px;margin:0 0 12px;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-weight:800}
#main .nf-included p,#main .nf-included li {color:#fff;font-size:15px;line-height:1.65;margin:8px 0}
#main .nf-included ul {margin:0;padding-left:20px}
#main .nf-included a {color:var(--lime,#c8ff3e);text-decoration:underline;text-underline-offset:4px}
#main .nf-included .nf-custom {align-self:center;border-left:0;padding:0}
#main .nf-included .nf-custom a {display:inline-flex;gap:8px;align-items:center;min-height:44px;font-weight:800}
#main.nf-offer #methode .rf-process-grid {gap:32px}
#main.nf-offer #comparatif table {font-size:15px}
#main.nf-offer #comparatif th,#main.nf-offer #comparatif td {padding:16px}
#main.nf-offer #expertises .nf-related {display:flex;flex-wrap:wrap;gap:12px}
#main.nf-offer #expertises .nf-related a {display:inline-flex;align-items:center;min-height:48px;padding:12px 16px;border-radius:9px;border:1px solid var(--cobalt,#2130ea);color:var(--cobalt,#2130ea);font-weight:700;text-decoration:none}
#main.nf-offer #expertises .nf-related a:hover {background:var(--cobalt,#2130ea);color:#fff}
#main .nf-contact {padding-top:64px!important;padding-bottom:64px!important}
#main .nf-contact .rf-head {text-align:left;display:block;margin-bottom:36px}
#main .nf-contact .rf-head p {max-width:790px;margin-left:0;margin-right:0}
#main .nf-contact .rf-head .rf-title {max-width:none;font-size:clamp(32px,4vw,50px)}
#main .nf-contact .rf-head .review-badge {display:none}
#main .nf-contact .nf-contact-actions {display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:24px}
#main .nf-contact .nf-contact-grid {display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:stretch}
#main .nf-contact .rf-form-card {border:1px solid var(--cobalt,#2130ea);box-shadow:none;padding:32px;border-radius:20px;background:#fff;min-width:0}
#main .nf-contact .rf-form-card-title {font-size:clamp(26px,2.5vw,34px);line-height:1.18;margin:0 0 14px}
#main .nf-contact .nf-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
#main .nf-form label {display:flex;flex-direction:column;gap:8px;min-width:0;font-family:var(--body,'Space Grotesk',sans-serif);font-size:15px;font-weight:500;line-height:1.4;color:var(--ink,#12131c)}
#main .nf-form label.nf-full {grid-column:1/-1}
#main .nf-form input:not([type=hidden]),#main .nf-form select,#main .nf-form textarea {display:block;width:100%;min-width:0;border:1px solid #727694;background:#fff;border-radius:9px;padding:13px 14px;font-family:var(--body,'Space Grotesk',sans-serif);font-size:16px;line-height:1.45;color:var(--ink,#12131c);box-sizing:border-box;min-height:49px}
#main .nf-form textarea {min-height:145px;resize:vertical}
#main .nf-form select {padding-right:25px}
#main .nf-form [hidden] {display:none!important}
#main .nf-form .nf-form-note {font-size:13px;line-height:1.55;margin:18px 0 22px;color:#3e415b}
#main .nf-form .nf-form-note a {color:var(--cobalt,#2130ea)}
#main .nf-form .nf-submit {width:100%;margin:0 0 12px}
#main .nf-form #status {font-size:15px;line-height:1.55}
#main .nf-form .conversion-field-error {font-size:13px;color:#a0164d;margin:0}
#main .nf-contact .nf-interlocutor {background-color:var(--cobalt,#2130ea);background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:34px 34px;border-radius:20px;color:#fff;padding:32px;display:flex;flex-direction:column;gap:22px;min-width:0}
#main .nf-interlocutor h4 {margin:0;color:#fff;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-size:30px;line-height:1.2;font-weight:800}
#main .nf-interlocutor h4 em {color:var(--lime,#c8ff3e);font-style:normal}
#main .nf-interlocutor .nf-person {display:flex;align-items:center;gap:18px}
#main .nf-person img {width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid #fff}
#main .nf-person strong {display:block;color:var(--lime,#c8ff3e);font-size:20px}
#main .nf-person small {font-size:14px;color:#fff}
#main .nf-interlocutor p,#main .nf-interlocutor li {font-size:16px;line-height:1.65;color:#fff;margin:0}
#main .nf-interlocutor blockquote {padding:22px 0;margin:0;border:0;border-top:1px solid rgba(255,255,255,.4);border-bottom:1px solid rgba(255,255,255,.4)}
#main .nf-interlocutor blockquote p {font-size:18px}
#main .nf-interlocutor cite {display:block;font-size:14px;margin-top:10px;font-style:normal;color:var(--lime,#c8ff3e)}
#main .nf-interlocutor a {color:#fff;text-underline-offset:4px}
#main .nf-interlocutor .nf-direct {margin-top:auto;display:flex;flex-direction:column;gap:12px}







#main .nf-trade-work .nf-trade-grid {display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:36px;align-items:center}
#main .nf-trade-work figure {margin:0;min-width:0}
#main .nf-trade-work .nf-work-frame {background:#fff;overflow:hidden;border-radius:16px;aspect-ratio:16/10;box-shadow:0 18px 40px -20px rgba(18,19,28,.5)}
#main .nf-trade-work .nf-work-frame img {display:block;width:100%;height:100%;object-fit:cover;object-position:top}
#main .nf-trade-work figcaption {margin-top:16px;font-size:15px;line-height:1.5;color:inherit}
#main .nf-trade-work figcaption strong {font-size:24px;font-weight:800;display:block;color:var(--cobalt,#2130ea)}
#main .nf-trade-work .nf-trade-detail h4 {font-size:24px;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-weight:800;color:var(--cobalt,#2130ea);margin:0 0 18px}
#main .nf-trade-work .nf-trade-detail ul {padding-left:20px;line-height:1.7;margin:0 0 24px}
#main .nf-trade-work .nf-work-mobile {max-width:200px;max-height:300px;object-fit:cover;object-position:top;border-radius:18px;border:6px solid var(--cobalt,#2130ea);float:right;margin-left:20px}
#main .nf-trade-work .nf-trade-link {color:var(--cobalt,#2130ea);font-weight:700;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
@media(max-width:1000px){#main .nf-plans{gap:14px}#main .nf-plan{padding:24px 18px}#main.nf-offer .cr-hero{min-height:0}#main .nf-contact .nf-contact-grid{grid-template-columns:minmax(0,1fr)}#main .nf-contact .nf-interlocutor{display:grid;grid-template-columns:1fr 1fr}#main .nf-interlocutor h4{grid-column:1/-1}#main .nf-interlocutor .nf-direct{margin-top:0}}
@media(max-width:760px){#main .nf-plans{grid-template-columns:minmax(0,1fr);gap:20px}#main .nf-plan{padding:28px 24px}#main .nf-plan-cost{min-height:0}#main .nf-included{grid-template-columns:minmax(0,1fr);gap:16px}#main.nf-offer .cr-hero{padding-top:32px;padding-bottom:44px;gap:32px}#main.nf-offer .cr-hero h1{font-size:clamp(34px,8.8vw,44px)}#main.nf-offer .cr-hero .rf-lead{font-size:17px}#main.nf-offer .rf-hero-visual{padding:14px}#main .nf-contact .rf-form-card,#main .nf-contact .nf-interlocutor{padding:24px}#main .nf-contact .nf-interlocutor{display:flex}#main .nf-contact .nf-fields{grid-template-columns:minmax(0,1fr)}#main .nf-trade-work .nf-trade-grid{grid-template-columns:minmax(0,1fr);gap:24px}#main .nf-trade-work .nf-work-mobile{max-width:125px;max-height:220px}#main.nf-offer #formules{border-radius:18px}#main .nf-projects .rxb-cap{flex-wrap:wrap}#main .nf-projects .rxb-cap-link{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){#main .nf-button,#main .rxb-shots img{transition:none;transform:none}}

#main .nf-plan .cta-wrap,#main .nf-contact-actions .cta-wrap {display:inline-flex;position:relative;isolation:isolate;margin-bottom:12px}
#main .nf-plan .cta-badge,#main .nf-contact-actions .cta-badge {display:inline-flex;align-items:center;justify-content:center;gap:5px;position:absolute;left:50%;top:auto;bottom:-12px;transform:translateX(-50%);white-space:nowrap;background:var(--pink,#ff5ec4);color:#fff;border-radius:7px;padding:4px 8px;font-size:11px;line-height:1.35;min-height:23px;width:max-content;max-width:calc(100% + 10px);box-sizing:border-box}
#main .nf-plan .cta-badge .ui-icon,#main .nf-contact-actions .cta-badge .ui-icon{width:11px;height:11px}
#main .nf-interlocutor .nf-direct a{min-height:44px;display:flex;align-items:center}
#main .rf-hero-visual,#main .mt-hero-visual,#main .mt-browser{cursor:default}
#main .nf-trade-work .nf-trade-detail p{font-size:15px;line-height:1.65}

#main.nf-offer #formules {margin-top:48px;margin-bottom:48px}
#main .nf-projects .rxb-hint{margin-top:0!important}
#main .rf-quote blockquote cite{display:block;margin-top:20px;font-style:normal;font-size:15px;font-weight:700;color:var(--cobalt,#2130ea)}
#main .rf-quote--featured blockquote cite{color:inherit}
@media(max-width:760px){#main.nf-offer #formules{margin-top:28px;margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

#main.nf-offer .cr-sectors-room .mt-mesh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}
#main.nf-offer .cr-sectors-room .mt-mesh-link{display:flex;align-items:center;gap:12px;min-height:64px;padding:16px 18px;background:#fff;color:var(--cobalt,#2130ea);border-radius:9px;text-decoration:none;font-family:var(--display,'Plus Jakarta Sans',sans-serif);font-weight:800;line-height:1.4}
#main.nf-offer .cr-sectors-room .mt-mesh-link:hover{background:var(--lime,#c8ff3e);color:var(--cobalt,#2130ea)}
@media(max-width:760px){#main.nf-offer .cr-hero{display:flex;flex-direction:column;gap:28px;align-items:stretch}#main.nf-offer .rf-hero-copy{display:flex;flex-direction:column;gap:0;width:100%}#main.nf-offer .rf-hero-copy .eyebrow{order:1;margin:0 0 18px}#main.nf-offer .rf-hero-copy h1{order:2;margin:0}#main.nf-offer .rf-hero-copy .nf-hero-cost{order:3;margin:16px 0 4px}#main.nf-offer .rf-hero-copy .rf-lead{order:4;margin:16px 0}#main.nf-offer .rf-hero-copy .rf-hero-actions{order:5;margin:8px 0 22px}#main.nf-offer .rf-hero-copy .rf-hero-checks{order:6;margin:12px 0 0}#main.nf-offer .rf-hero-copy .rf-review{order:7;margin-top:20px}#main.nf-offer .rf-hero-visual{order:1;width:100%;margin:0}#main.nf-offer .cr-sectors-room .mt-mesh-grid{grid-template-columns:minmax(0,1fr)}}

#main.nf-offer .rf-hero-visual{box-sizing:border-box;max-width:100%}
