/*
Theme Name: MAKIT Production Studio V118
Theme URI: https://example.com
Author: OpenAI
Description: Thème WordPress multi-pages inspiré du mockup MAKIT Production. Accueil + Impression + Broderie + Devis / Contact.
Version: 77
License: GPLv2 or later
Text Domain: makit-production
*/
:root{--bg:#02060d;--bg2:#07101b;--panel:#09111d;--panel-2:#101826;--line:rgba(255,255,255,.1);--text:#f8fbff;--muted:#aab3c4;--blue:#3157ff;--blue2:#4a6dff;--light:#f4f7fb;--darkText:#0b1120;--radius:18px;--shadow:0 18px 46px rgba(0,0,0,.36);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.section{padding:48px 0}.section-light{background:var(--light);color:var(--darkText)}.eyebrow{display:inline-block;color:#4b6bff;text-transform:uppercase;font-weight:900;letter-spacing:.16em;font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:9px;padding:15px 24px;font-weight:800;letter-spacing:-.01em;cursor:pointer;transition:.25s ease;background:linear-gradient(135deg,#3057ff,#2950f6 50%,#5270ff);color:#fff;box-shadow:0 14px 35px rgba(49,87,255,.35);text-align:center}.btn:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(49,87,255,.44)}.btn.ghost{background:transparent;box-shadow:none;color:inherit;padding-inline:0;border-radius:0;border-bottom:1px solid currentColor;font-weight:700}.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,rgba(2,6,13,.96),rgba(2,6,13,.84));backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07)}.nav{height:78px;display:flex;align-items:center;gap:20px}.brand{flex:0 0 auto}.brand img{width:250px;height:auto;display:block}.nav .menu-wrap{margin-left:auto}.menu{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none;font-size:14px;font-weight:800}.menu a{display:inline-block;padding:28px 0;color:#f3f6fd;opacity:.93}.menu .current-menu-item a,.menu .current_page_item a,.menu .current-menu-ancestor a{color:var(--blue2);position:relative}.menu .current-menu-item a:after,.menu .current_page_item a:after,.menu .current-menu-ancestor a:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--blue2);border-radius:2px}.nav-cta{padding:13px 20px;white-space:nowrap}.mobile-toggle{display:none}.hero-home{position:relative;overflow:hidden;min-height:760px;padding:34px 0 0;background:var(--bg)}.hero-home:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#02060d 0%,rgba(2,6,13,.98) 20%,rgba(2,6,13,.82) 38%,rgba(2,6,13,.45) 62%,rgba(2,6,13,.14) 100%),url(assets/img/hero-home-makit-clean-hd.jpg) right 60px center/66% auto no-repeat;filter:brightness(.98) saturate(1.02)}.hero-home:after{content:"";position:absolute;left:0;right:0;bottom:0;height:130px;background:linear-gradient(0deg,#02060d,transparent)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,620px) 1fr;gap:40px;align-items:center;min-height:690px}.hero-copy{max-width:620px;text-align:left}.hero-copy h1{font-size:clamp(44px,5.2vw,72px);line-height:1.06;margin:0 0 34px;letter-spacing:-.015em;font-weight:950;max-width:980px}.hero-copy h1 span{color:var(--blue);display:inline}.hero-copy p{margin:0 0 24px;color:#c5cede;font-size:17px;max-width:620px;text-align:left;letter-spacing:.018em}.hero-copy strong{color:#fff}.hero-copy .blue{color:#5170ff}.hero-home .trust,.hero-home .feature-row{display:none!important}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:46px;flex-wrap:wrap;justify-content:flex-start}.trust{margin-top:30px;display:flex;align-items:center;gap:16px;color:#a5afc0;font-size:13px}.faces{display:flex}.face{width:34px;height:34px;border-radius:50%;border:2px solid #fff;overflow:hidden;background:#20314d;margin-left:-8px;display:block;box-shadow:0 6px 12px rgba(0,0,0,.25)}.face:first-child{margin-left:0}.face img{width:100%;height:100%;object-fit:cover;display:block}.feature-row{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px}.mini-card{background:linear-gradient(145deg,rgba(11,19,31,.85),rgba(9,15,24,.72));border:1px solid var(--line);border-radius:16px;padding:24px 22px;display:grid;grid-template-columns:56px 1fr;gap:14px;min-height:116px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.icon{width:46px;height:46px;display:grid;place-items:center;color:#3760ff}.icon svg{width:42px;height:42px;stroke:currentColor;stroke-width:1.7;fill:none}.mini-card h3{margin:0 0 6px;font-size:17px;line-height:1.2}.mini-card p{margin:0;color:#98a3b5;font-size:13px}.services{padding:38px 0 34px;background:var(--light);color:var(--darkText)}.services-grid{display:grid;grid-template-columns:300px repeat(3,1fr);gap:16px;align-items:stretch}.section-copy{padding:24px 8px 24px 2px}.section-copy h2{font-size:30px;line-height:1.05;margin:12px 0 24px;letter-spacing:-.04em}.section-copy p{color:#4f596b;font-size:14px;margin:0 0 28px}.service-card{background:#fff;border-radius:10px;overflow:hidden;position:relative;box-shadow:0 16px 32px rgba(8,13,24,.12)}.service-img{width:100%;height:134px;object-fit:cover;object-position:center top}.service-icon{position:absolute;left:18px;top:108px;width:42px;height:42px;border-radius:50%;background:#0b111c;border:3px solid #fff;display:grid;place-items:center;color:#fff;font-size:18px}.service-body{padding:34px 22px 24px}.service-body h3{margin:0 0 10px;font-size:19px;line-height:1.1}.service-body p{margin:0;color:#495364;font-size:14px}.dark-split{position:relative;background:#02070e;padding:58px 0;overflow:hidden}.dark-split:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 0,rgba(49,87,255,.16),transparent 32%)}.dark-split-inner{position:relative;z-index:1}.why-head{display:block;padding-bottom:30px}.why-head h2{font-size:clamp(30px,3.55vw,46px);line-height:1.04;margin:10px 0 0;letter-spacing:-.05em;max-width:none;white-space:nowrap}.why-head p{margin:22px 0 0;color:#aeb8c8;font-size:16px;line-height:1.6;max-width:none;white-space:nowrap}.dark-split-wrap{position:relative;display:grid;grid-template-columns:minmax(0,500px) minmax(0,1fr);gap:24px;align-items:stretch}.dark-visual{position:relative;min-height:440px;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(2,7,14,.10) 0%,rgba(2,7,14,.16) 30%,rgba(2,7,14,.28) 62%,rgba(2,7,14,.42) 100%),url(assets/img/why-left-factory.png) center center/cover no-repeat;box-shadow:0 24px 48px rgba(0,0,0,.28);display:block}.dark-visual:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.06)}.dark-visual-content{display:none}.dark-visual h3{font-size:31px;line-height:1.08;margin:10px 0 10px;letter-spacing:-.04em;max-width:520px}.dark-visual p{margin:0;color:#dbe3f3;max-width:520px}.visual-tags{display:none}.visual-tags span{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:rgba(8,16,29,.72);border:1px solid rgba(255,255,255,.14);color:#f1f5ff;font-size:13px;font-weight:700}.why-list{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid rgba(255,255,255,.09);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,rgba(8,15,24,.92),rgba(5,10,18,.98))}.why-item{min-height:178px;padding:28px 24px;border-right:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:44px 1fr;gap:14px}.why-item:nth-child(2n){border-right:0}.why-item:nth-last-child(-n+2){border-bottom:0}.why-item .icon{width:34px;height:34px;display:grid;place-items:center;color:#3d62ff}.why-item .icon svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.8;fill:none}.why-item h3{margin:0 0 6px;font-size:21px;line-height:1.18}.why-item p{margin:0;color:#9ea8b9;font-size:14px}.process{background:#f8f9fc;color:#0b1020;padding:32px 0 36px}.process-wrap{display:grid;grid-template-columns:270px 1fr;gap:34px;align-items:center}.process h2{font-size:29px;line-height:1.08;margin:10px 0 0;letter-spacing:-.04em}.steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;text-align:center}.steps:before{content:"";position:absolute;top:28px;left:12%;right:12%;height:1px;background:#bcc5d8}.step{position:relative;padding:0 4px}.num{margin:auto;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#3259ff,#2550f4);color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(49,87,255,.26)}.step h3{font-size:16px;margin:14px 0 5px}.step p{font-size:12px;color:#697386;margin:0 auto;max-width:175px}.contact-cta{position:relative;background:#02070e;padding:44px 0 34px;overflow:hidden}.contact-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(49,87,255,.16),transparent 36%)}.contact-wrap{position:relative;display:grid;grid-template-columns:1fr 540px;gap:42px;align-items:start}.contact-cta h2{font-size:34px;line-height:1.07;margin:10px 0 28px;letter-spacing:-.04em}.contact-benefits{display:flex;gap:34px;flex-wrap:wrap;color:#dce4f6;font-size:13px;font-weight:700}.contact-benefits span{display:flex;align-items:center;gap:10px}.form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form input,.form select,.form textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:7px;color:#fff;padding:13px 14px;outline:0}.form textarea{grid-column:1/-1;min-height:86px;resize:vertical}.form button{grid-column:1/-1;justify-content:center}.page-hero{position:relative;padding:60px 0 30px;background:linear-gradient(180deg,#02060d,#07101b)}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,6,13,.98),rgba(2,6,13,.78) 42%,rgba(2,6,13,.36) 100%),var(--page-bg, none) right center/cover no-repeat;opacity:.95}.page-hero .container{position:relative;z-index:2}.page-hero .kicker{margin-bottom:14px}.page-hero h1{font-size:clamp(40px,5vw,58px);line-height:.98;margin:0 0 18px;letter-spacing:-.05em}.page-hero p{max-width:700px;color:#b9c3d1;font-size:17px;margin:0}.page-hero .page-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:26px}.page-hero-impression:before{background:linear-gradient(90deg,rgba(2,6,13,.98) 0%,rgba(2,6,13,.80) 30%,rgba(2,6,13,.28) 60%,rgba(2,6,13,.06) 100%),var(--page-bg, none) right center/cover no-repeat;opacity:1}.impression-supports{padding:44px 0 36px}.impression-supports-grid{display:grid;grid-template-columns:420px minmax(0,1fr);gap:52px;align-items:stretch}.supports-copy{max-width:420px}.supports-copy h2{font-size:clamp(48px,5.4vw,86px);line-height:.96;margin:12px 0 24px;letter-spacing:-.06em;color:#0b1120;max-width:360px}.supports-copy p{margin:0;max-width:420px;color:#6b7384;font-size:17px;line-height:1.6;text-align:justify;text-justify:inter-word}.supports-copy p + p{margin-top:18px}.supports-moodboard{display:flex;justify-content:flex-end;align-items:center;align-self:stretch;height:100%;background:linear-gradient(180deg,#ffffff,#fbfcfe);border:1px solid #e7ecf3;border-radius:26px;padding:14px;box-shadow:0 22px 48px rgba(15,23,42,.08);overflow:hidden}.supports-moodboard img{width:100%;max-width:1125px;height:auto;max-height:100%;display:block;margin:auto;border-radius:20px;object-fit:contain;object-position:center center;box-shadow:none}.technique-quality{padding:38px 0 44px}.technique-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:54px;align-items:center}.technique-copy{max-width:640px}.technique-copy h2{font-size:clamp(40px,4.5vw,64px);line-height:1.06;letter-spacing:-.05em;margin:14px 0 22px;color:#0b1120;max-width:640px}.technique-copy p{margin:0 0 28px;max-width:620px;color:#5d6778;font-size:18px;line-height:1.65}.technique-list{gap:16px;max-width:680px}.technique-list .check-item{gap:16px}.technique-list .check-item>div{font-size:16px;line-height:1.55;color:#384255}.technique-list .check-item strong{color:#11192b}.technique-list .dot{width:30px;height:30px;background:linear-gradient(135deg,#3f63ff,#5b79ff);color:#fff;box-shadow:0 8px 18px rgba(63,99,255,.28);margin-top:0}.technique-visual{display:flex;justify-content:flex-end}.technique-visual img{width:100%;max-width:830px;height:auto;display:block;border-radius:28px;box-shadow:0 22px 48px rgba(15,23,42,.10)}.content-section{padding:44px 0}.cards-2,.cards-3,.cards-4{display:grid;gap:16px}.cards-2{grid-template-columns:repeat(2,1fr)}.cards-3{grid-template-columns:repeat(3,1fr)}.cards-4{grid-template-columns:repeat(4,1fr)}.info-card{background:linear-gradient(145deg,rgba(11,19,31,.92),rgba(9,15,24,.8));border:1px solid var(--line);border-radius:16px;padding:24px;color:#fff}.info-card.light{background:#fff;color:#0b1020;border:1px solid #e6eaf2;box-shadow:0 14px 28px rgba(8,13,24,.08)}.info-card h3{margin:0 0 10px;font-size:20px;line-height:1.15}.info-card p,.info-card li{color:inherit;opacity:.84}.info-card ul{margin:10px 0 0 18px;padding:0}.lead-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}.banner-note{background:linear-gradient(135deg,#0b1220,#101b30);border:1px solid var(--line);border-radius:18px;padding:22px;color:#dbe4f7}.banner-note strong{color:#fff}.check-list{display:grid;gap:12px}.check-item{display:flex;gap:12px;align-items:flex-start}.check-item .dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(49,87,255,.18);color:#6c86ff;font-weight:900;flex:0 0 auto;margin-top:2px}.faq-list{display:grid;gap:12px}.faq{background:#fff;border:1px solid #e7ebf4;border-radius:14px;padding:18px 18px 16px;box-shadow:0 8px 18px rgba(8,13,24,.05)}.faq h3{margin:0 0 6px;font-size:18px}.footer{background:#02060d;border-top:1px solid rgba(255,255,255,.08);padding:18px 0;color:#717d91;font-size:12px;text-align:center}.site-footer{background:#02070e;color:#dbe3f3;border-top:1px solid rgba(255,255,255,.08)}.footer-main{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:42px;padding:40px 0 30px}.footer-brand img{width:210px;height:auto;margin-bottom:18px}.footer-brand p{margin:0 0 18px;max-width:240px;color:#a9b4c6;font-size:15px;line-height:1.65}.footer-socials{display:flex;gap:10px}.footer-socials a{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(49,87,255,.12);border:1px solid rgba(255,255,255,.08);color:#dfe7fa;font-size:12px;font-weight:800;text-transform:lowercase}.footer-col h4{margin:0 0 16px;color:#fff;font-size:17px;line-height:1.2}.footer-col a{display:block;color:#aeb8c8;font-size:15px;line-height:1.65;margin:0 0 10px}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.06)}.footer-bottom-inner{display:flex;justify-content:flex-start;gap:20px;align-items:center;padding:16px 0;color:#8f9bae;font-size:13px}.footer-bottom-inner strong{color:#4b6bff}.impression-process-section{background:#02070e;padding:46px 0 108px;position:relative;overflow:hidden}.impression-process-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% -10%,rgba(49,87,255,.18),transparent 34%)}.impression-process-section .container{position:relative;z-index:1}.impression-process-section h2{font-size:clamp(34px,4vw,52px);line-height:1.05;letter-spacing:-.045em;margin:12px 0 30px;color:#fff}.impression-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative}.impression-process-steps:before{content:"";position:absolute;left:11%;right:11%;top:28px;height:1px;background:rgba(104,126,181,.45)}.process-step-card{position:relative;padding-right:8px}.process-step-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#355bff,#5673ff);color:#fff;box-shadow:0 12px 28px rgba(49,87,255,.28);font-size:22px;margin-bottom:18px}.process-step-icon svg{width:24px;height:24px;display:block;color:#fff;stroke:currentColor}.process-step-card h3{margin:0 0 10px;color:#fff;font-size:22px;line-height:1.15;letter-spacing:-.02em}.process-step-card p{margin:0;max-width:220px;color:#b2bdd0;font-size:15px;line-height:1.65}.impression-project-cta-section{background:#f7f8fc;padding:48px 0 56px}.impression-project-cta-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;overflow:hidden;border-top:1px solid #e4eaf3;border-bottom:1px solid #e4eaf3;margin:0 auto;background:#fff;max-width:780px}.impression-project-cta-media{background:#f2f4f8;min-height:185px;display:flex;align-items:stretch;justify-content:stretch;overflow:hidden;padding:0}.impression-project-cta-media img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center center;display:block;margin:0}.impression-project-cta-copy{padding:30px 28px;display:flex;flex-direction:column;justify-content:center;background:#fff}.impression-project-cta-copy h2{font-size:clamp(22px,2.7vw,32px);line-height:1.04;letter-spacing:-.035em;margin:8px 0 10px;color:#0b1120;max-width:320px}.impression-project-cta-copy p{margin:0;color:#667083;font-size:14px;line-height:1.55;max-width:320px}.project-cta-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.dark-link{color:#0b1120;border-bottom-color:#0b1120}.hide-mobile{display:block}

/* Bloc formules production */
.production-options{padding:18px 0 42px}
.production-options-wrap{background:linear-gradient(180deg,#ffffff,#fbfcfe);border:1px solid #e7ecf3;border-radius:28px;padding:34px;box-shadow:0 22px 48px rgba(15,23,42,.06)}
.production-options-head{max-width:860px;margin-bottom:26px}
.production-options-head h2{font-size:clamp(30px,3.2vw,44px);line-height:1.05;letter-spacing:-.045em;margin:12px 0 12px;color:#0b1120}
.production-options-head p{margin:0;color:#626c7f;font-size:16px;line-height:1.65;max-width:820px}
.production-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.production-option{position:relative;background:#fff;border:1px solid #e8edf4;border-radius:20px;padding:24px 24px 26px;box-shadow:0 12px 28px rgba(15,23,42,.045)}
.production-option:before{content:"";position:absolute;left:24px;top:0;width:44px;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#3157ff,#6f86ff)}
.option-index{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:rgba(49,87,255,.10);color:#3157ff;font-size:13px;font-weight:900;margin-bottom:18px}
.production-option h3{margin:0 0 12px;color:#0b1120;font-size:22px;line-height:1.12;letter-spacing:-.03em}
.production-option p{margin:0;color:#5c6678;font-size:15px;line-height:1.65}
@media(max-width:980px){
  .production-options-wrap{padding:24px}
  .production-options-grid{grid-template-columns:1fr}
}

/* Harmonisation des blocs Impression */
.impression-supports,.technique-quality{padding:42px 0}
.impression-supports-grid,.technique-grid{display:grid;grid-template-columns:420px minmax(0,1fr);gap:52px;align-items:stretch}
.supports-copy,.technique-copy{max-width:420px}
.supports-copy h2,.technique-copy h2{font-size:clamp(44px,4.8vw,72px);line-height:.98;letter-spacing:-.055em;margin:14px 0 22px;color:#0b1120;max-width:390px}
.supports-copy p,.technique-copy p{max-width:420px;color:#626c7f;font-size:17px;line-height:1.62;text-align:justify;text-justify:inter-word}
.supports-copy p + p{margin-top:18px}
.technique-copy p{margin:0 0 26px}
.supports-moodboard,.technique-visual{display:flex;justify-content:flex-end;align-items:center;align-self:stretch;width:100%;background:linear-gradient(180deg,#ffffff,#fbfcfe);border:1px solid #e7ecf3;border-radius:26px;padding:14px;box-shadow:0 22px 48px rgba(15,23,42,.08);overflow:hidden}
.supports-moodboard img,.technique-visual img{width:100%;max-width:100%;height:auto;display:block;margin:auto;border-radius:20px;object-fit:contain;object-position:center center;box-shadow:none}
.technique-list{gap:14px;max-width:420px}
.technique-list .check-item{gap:14px}
.technique-list .check-item>div{font-size:16px;line-height:1.56;color:#3c4658}
.technique-list .check-item strong{color:#11192b}
.technique-list .dot{width:28px;height:28px;background:linear-gradient(135deg,#3f63ff,#5b79ff);color:#fff;box-shadow:0 8px 18px rgba(63,99,255,.28);margin-top:1px}.technique-visual-full{padding:0;min-height:760px}.technique-visual-full img{width:100%;height:100%;object-fit:cover;object-position:center center;border-radius:26px}

@media(max-width:980px){
  .impression-supports-grid,.technique-grid{grid-template-columns:1fr;gap:28px}
  .supports-copy,.technique-copy,.supports-copy h2,.technique-copy h2,.supports-copy p,.technique-copy p,.technique-list{max-width:none}
  .supports-moodboard,.technique-visual{justify-content:flex-start;padding:12px;border-radius:22px}.technique-visual-full{padding:0;min-height:auto}.technique-visual-full img{border-radius:22px;height:auto}
  .supports-moodboard img,.technique-visual img{border-radius:18px}
}

@media(max-width:980px){.container{width:min(100% - 28px,var(--max))}.nav{flex-wrap:wrap;height:auto;padding:14px 0}.nav .menu-wrap{order:3;flex:1 0 100%;margin-left:0}.menu{gap:18px;overflow:auto;padding-bottom:4px}.nav-cta{margin-left:auto}.hero-home{min-height:auto;padding:42px 0 36px}.hero-home:before{background:linear-gradient(180deg,rgba(2,6,13,.80),#02060d 86%),url(assets/img/hero-home-makit-clean-hd.jpg) center top/cover no-repeat}.hero-grid,.services-grid,.dark-split-wrap,.process-wrap,.contact-wrap,.lead-grid,.cards-4,.cards-3,.cards-2,.impression-supports-grid{grid-template-columns:1fr}.feature-row{grid-template-columns:1fr 1fr}.why-head{padding-bottom:22px}.why-head h2,.why-head p{white-space:normal}.why-list{grid-template-columns:1fr}.why-item,.why-item:nth-child(2n),.why-item:nth-last-child(-n+2){border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}.why-item:last-child{border-bottom:0}.steps{grid-template-columns:1fr;gap:24px}.steps:before{display:none}.form{grid-template-columns:1fr}.supports-copy,.supports-copy h2,.supports-copy p{max-width:none}.supports-moodboard{justify-content:flex-start;padding:12px}.supports-moodboard img{max-width:100%;border-radius:18px}.technique-grid{grid-template-columns:1fr;gap:28px}.technique-copy,.technique-copy h2,.technique-copy p,.technique-list{max-width:none}.technique-copy p{font-size:16px}.technique-visual{justify-content:flex-start}.technique-visual img{max-width:100%;border-radius:22px}}
@media(max-width:640px){.brand img{width:190px}.menu{font-size:13px;gap:14px}.nav-cta{display:none}.hero-copy h1{font-size:40px}.hero-copy p,.page-hero p{font-size:15px}.feature-row{grid-template-columns:1fr}.why-head h2,.dark-visual h3,.contact-cta h2{font-size:28px}.why-head p,.dark-visual p{font-size:15px}.dark-visual{min-height:340px;background-position:center center}.dark-visual-content{padding:26px}.process h2,.section-copy h2{font-size:26px}.contact-benefits{display:grid;gap:12px}.service-body{padding:30px 20px 22px}}

.hero-btn{min-width:286px;justify-content:center;padding-left:28px;padding-right:28px}.trust{margin-top:34px}.hero-actions .btn.ghost{padding-bottom:6px}.menu .current-menu-item a:after,.menu .current_page_item a:after,.menu .current-menu-ancestor a:after{bottom:16px}.brand{display:flex;align-items:center}.site-header .brand img{border-radius:0;background:transparent}

@media(max-width:980px){.impression-process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.impression-process-steps:before{display:none}.impression-project-cta-wrap,.footer-main{grid-template-columns:1fr}.impression-project-cta-copy{padding:34px 24px}.footer-bottom-inner{flex-direction:column;text-align:center}.footer-brand p{max-width:none}}
@media(max-width:640px){.impression-process-section h2,.impression-project-cta-copy h2{font-size:30px}.process-step-card h3{font-size:18px}.impression-process-steps{grid-template-columns:1fr}.impression-project-cta-media{min-height:220px}.footer-main{gap:28px;padding:30px 0 24px}}

@media(max-width:980px){.impression-process-section{padding-bottom:72px}.impression-project-cta-section{padding:28px 0 44px}.impression-project-cta-wrap{max-width:none}.impression-project-cta-media{padding:0;min-height:220px}.impression-project-cta-media img{height:100%;object-fit:cover}}


/* Page Broderie V30 */
.brod-hero{position:relative;min-height:398px;background:#02070e;overflow:hidden;display:flex;align-items:center}
.brod-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;width:min(72%,860px);background-image:var(--brod-hero);background-size:cover;background-position:center center;opacity:1;z-index:0}
.brod-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,7,14,1) 0%,rgba(2,7,14,1) 22%,rgba(2,7,14,.92) 34%,rgba(2,7,14,.56) 48%,rgba(2,7,14,.16) 66%,rgba(2,7,14,.04) 100%)}
.brod-hero .container{max-width:1280px;padding-left:56px;padding-right:40px;width:100%}
.brod-hero-inner{position:relative;z-index:2;padding:42px 0 38px;max-width:540px}
.brod-hero .eyebrow{margin-bottom:18px}
.brod-hero h1{margin:0 0 14px;font-size:clamp(42px,4.1vw,58px);line-height:.95;letter-spacing:-.06em;color:#fff;max-width:520px}
.brod-hero p{margin:0 0 24px;max-width:520px;color:#d4dceb;font-size:16px;line-height:1.58}
.brod-hero .page-actions{gap:78px;align-items:flex-end}.brod-hero .page-actions .ghost{margin-left:14px}

.brod-intro-section{padding:54px 0 42px}
.brod-intro-grid{display:grid;grid-template-columns:minmax(360px,440px) minmax(520px,680px);gap:34px;align-items:center;justify-content:space-between}
.brod-intro-copy{max-width:440px}
.brod-intro-copy h2{margin:12px 0 20px;font-size:clamp(32px,2.7vw,42px);line-height:1.02;letter-spacing:-.045em;color:#0b1120;max-width:430px}
.brod-intro-copy p{margin:0 0 18px;color:#616b7d;font-size:16px;line-height:1.72;max-width:380px}
.brod-mosaic-card{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;overflow:visible;max-width:590px;justify-self:end}
.brod-mosaic-card img{width:100%;display:block;border-radius:0}

.brod-dark-services{background:#02070e;padding:28px 0 40px}
.brod-service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.brod-service-card{position:relative;min-height:214px;border-radius:16px;padding:22px 24px 22px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#07111d;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}
.brod-service-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,10,20,.92) 0%,rgba(5,10,20,.84) 28%,rgba(5,10,20,.56) 56%,rgba(5,10,20,.26) 76%,rgba(5,10,20,.18) 100%),var(--card-bg);background-size:cover;background-position:var(--card-pos,center right);opacity:1}
.brod-service-card>*{position:relative;z-index:1}
.brod-service-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#3f63ff,#5f79ff);color:#fff;font-size:14px;margin-bottom:18px;box-shadow:0 8px 18px rgba(63,99,255,.24)}
.brod-service-card h3{margin:0 0 10px;color:#fff;font-size:18px;line-height:1.15;letter-spacing:-.03em;max-width:220px;text-align:left}
.brod-service-card p{margin:0;max-width:245px;color:#d2daea;font-size:14px;line-height:1.68;text-align:left}

.brod-quality-section{padding:56px 0 48px}
.brod-quality-grid{display:grid;grid-template-columns:minmax(300px,360px) minmax(520px,1fr);gap:44px;align-items:center}
.brod-quality-copy{max-width:350px}
.brod-quality-copy h2{margin:10px 0 16px;font-size:clamp(22px,2.2vw,28px);line-height:1.08;letter-spacing:-.035em;color:#0b1120;max-width:340px}
.brod-quality-copy>p{margin:0 0 18px;color:#616b7d;font-size:15px;line-height:1.66;max-width:320px}
.brod-check-list{display:flex;flex-direction:column;gap:11px}
.brod-check-list .check-item{display:flex;gap:11px;align-items:flex-start}
.brod-check-list .dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#4166ff;color:#fff;font-size:11px;font-weight:800;box-shadow:0 8px 18px rgba(65,102,255,.22);flex:none;margin-top:2px}
.brod-check-list .check-item div{color:#59677a;font-size:13.5px;line-height:1.52}
.brod-check-list strong{color:#0b1120}
.brod-quality-visual{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;overflow:visible}
.brod-quality-visual img{width:100%;display:block;border-radius:12px}

.brod-process-section{background:#02070e;padding:36px 0 38px;position:relative;overflow:hidden}
.brod-process-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% -10%,rgba(55,87,255,.18),transparent 34%)}
.brod-process-section .container{position:relative;z-index:1}
.brod-process-section h2{margin:10px 0 20px;color:#fff;font-size:clamp(24px,2.7vw,34px);line-height:1.08;letter-spacing:-.04em}
.brod-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;padding-top:8px}
.brod-process-steps:before{content:"";position:absolute;left:8%;right:8%;top:23px;height:1px;background:rgba(107,127,176,.44)}
.brod-process-step{position:relative;padding-right:10px}
.brod-process-step .step-no{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#3f63ff,#5f79ff);color:#fff;font-size:13px;font-weight:900;box-shadow:0 12px 28px rgba(63,99,255,.24);margin-bottom:15px}
.brod-process-step h3{margin:0 0 9px;color:#fff;font-size:17px;line-height:1.2;letter-spacing:-.02em}
.brod-process-step p{margin:0;max-width:210px;color:#b7c2d4;font-size:13px;line-height:1.62}

.brod-cta-section{padding:26px 0 32px}
.brod-cta-wrap{width:100%;max-width:1160px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:center;background:#fff;border:1px solid #e8edf5;border-radius:16px;overflow:hidden;box-shadow:0 16px 32px rgba(15,23,42,.06)}
.brod-cta-media{background:#fff;min-height:auto;display:flex;align-items:center;justify-content:flex-start;align-self:stretch;justify-self:stretch;padding:0;overflow:hidden}
.brod-cta-media img{width:100%;height:auto;object-fit:contain;object-position:center center;display:block}
.brod-cta-copy{padding:24px 42px 24px 36px;display:flex;flex-direction:column;justify-content:center}
.brod-cta-copy h2{margin:8px 0 10px;color:#0b1120;font-size:clamp(22px,2.35vw,30px);line-height:1.04;letter-spacing:-.04em;max-width:280px}
.brod-cta-copy p{margin:0 0 16px;color:#667083;font-size:15px;line-height:1.6;max-width:320px}
.brod-cta-copy .btn{align-self:flex-start;margin-top:2px}

@media(max-width:1100px){
  .brod-intro-grid{grid-template-columns:minmax(320px,390px) minmax(420px,1fr);gap:28px}
  .brod-quality-grid{grid-template-columns:minmax(280px,330px) minmax(420px,1fr);gap:34px}
  .brod-hero h1{font-size:58px}
  .brod-mosaic-card{max-width:540px}
  .brod-quality-copy h2{font-size:28px;max-width:330px}
}
@media(max-width:980px){
  .brod-hero{min-height:430px}.brod-hero .container{padding-left:28px;padding-right:28px}.brod-hero-inner{padding:56px 0;max-width:100%}.brod-hero h1{font-size:46px;max-width:100%}.brod-hero p{font-size:17px;max-width:100%}
  .brod-intro-grid,.brod-quality-grid,.brod-cta-wrap{grid-template-columns:1fr}
  .brod-service-cards,.brod-process-steps{grid-template-columns:1fr 1fr}
  .brod-process-steps:before{display:none}
  .brod-intro-copy,.brod-quality-copy,.brod-intro-copy p,.brod-quality-copy>p,.brod-cta-copy p{max-width:none}
  .brod-mosaic-card{max-width:none;justify-self:stretch}
  .brod-cta-copy{padding:30px 24px}.brod-cta-media{min-height:220px}
}
@media(max-width:640px){
  .brod-hero:before{background:linear-gradient(180deg,rgba(2,7,14,.86) 0%,rgba(2,7,14,.66) 100%)}.brod-hero:after{background-position:center}
  .brod-hero:after{width:100%;opacity:.62}.brod-hero:before{background:linear-gradient(180deg,rgba(2,7,14,.82) 0%,rgba(2,7,14,.58) 100%)}.brod-hero h1{font-size:38px;max-width:100%}.brod-hero p{font-size:16px;max-width:100%}.brod-intro-copy h2,.brod-quality-copy h2,.brod-process-section h2,.brod-cta-copy h2{font-size:32px}
  .brod-service-cards,.brod-process-steps{grid-template-columns:1fr}
  .brod-service-card h3{font-size:24px}.brod-cta-media{min-height:180px}
}

/* V41 – Impression hero refinements */
.page-hero-impression{padding:52px 0 28px}
.page-hero-impression:before{background:linear-gradient(90deg,rgba(2,6,13,.98) 0%,rgba(2,6,13,.84) 26%,rgba(2,6,13,.44) 52%,rgba(2,6,13,.10) 78%),var(--page-bg, none) right center/cover no-repeat;opacity:1}
.page-hero-impression h1{max-width:650px;letter-spacing:-.02em;line-height:.95}
.page-hero-impression p{max-width:470px}
.page-hero-impression .page-actions{gap:18px}
.page-hero-impression .page-actions .ghost{margin-left:26px}
@media (max-width: 1100px){.page-hero-impression .page-actions .ghost{margin-left:14px}}
@media (max-width: 767px){.page-hero-impression .page-actions .ghost{margin-left:0}.page-hero-impression h1{max-width:100%}}


/* V42 - Impression supports redesign */
.impression-supports{padding:56px 0 42px}
.impression-supports-grid--v42{grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:44px;align-items:start}
.supports-copy--v42{max-width:320px;padding-top:4px}
.supports-copy--v42 .eyebrow{margin-bottom:10px}
.supports-copy--v42 h2{font-size:clamp(34px,3.4vw,54px);line-height:1.04;letter-spacing:-.05em;max-width:300px;margin:0 0 18px}
.supports-copy--v42 p{font-size:15px;line-height:1.62;max-width:280px;text-align:left;color:#637083}
.supports-copy--v42 p + p{margin-top:16px}
.supports-moodboard--v42{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;align-items:flex-start;justify-content:flex-start;overflow:visible}
.supports-collage-v42{width:100%;display:grid;grid-template-columns:1.02fr .9fr;grid-template-rows:1fr auto;gap:10px;align-items:stretch}
.support-tile{position:relative;overflow:hidden;border-radius:8px;background:transparent;box-shadow:none}
.support-tile img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;border-radius:8px}
.support-tile--tee{grid-column:1;grid-row:1 / span 2;min-height:440px}
.support-tile--hoodie{grid-column:2;grid-row:1;min-height:215px}
.supports-collage-v42 .support-tile--tote,
.supports-collage-v42 .support-tile--workwear{min-height:215px}
.support-tile--tote{grid-column:2;grid-row:2}
.support-tile--workwear{grid-column:3;grid-row:2}
.supports-collage-v42{grid-template-columns:1.12fr .82fr .82fr;grid-template-rows:1fr 1fr}
.support-tile--hoodie{grid-column:2 / span 2;grid-row:1}
@media(max-width:1180px){
  .impression-supports-grid--v42{grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:34px}
  .supports-copy--v42 h2{font-size:clamp(30px,3vw,46px)}
  .support-tile--tee{min-height:380px}
  .supports-collage-v42 .support-tile--tote,.supports-collage-v42 .support-tile--workwear,.support-tile--hoodie{min-height:185px}
}
@media(max-width:980px){
  .impression-supports-grid--v42{grid-template-columns:1fr;gap:26px}
  .supports-copy--v42,.supports-copy--v42 h2,.supports-copy--v42 p{max-width:none}
  .supports-copy--v42 h2{font-size:clamp(32px,7vw,44px)}
}
@media(max-width:720px){
  .supports-collage-v42{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;gap:10px}
  .support-tile--tee{grid-column:1 / span 2;grid-row:1;min-height:320px}
  .support-tile--hoodie{grid-column:1 / span 2;grid-row:2;min-height:220px}
  .support-tile--tote{grid-column:1;grid-row:3;min-height:180px}
  .support-tile--workwear{grid-column:2;grid-row:3;min-height:180px}
}


/* V43 - Impression supports section cleanup */
.impression-supports--v43{padding:48px 0 40px}
.impression-supports-grid--v43{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:36px;align-items:start}
.supports-copy--v43{max-width:300px;padding-top:2px}
.supports-copy--v43 .eyebrow{margin-bottom:10px}
.supports-copy--v43 h2{font-size:clamp(28px,2.6vw,44px);line-height:1.08;letter-spacing:-.045em;max-width:260px;margin:0 0 16px}
.supports-copy--v43 p{font-size:15px;line-height:1.62;max-width:290px;color:#637083;margin:0;text-align:left}
.supports-copy--v43 p + p{margin-top:14px}
.supports-moodboard--v43{display:block;background:transparent;border:0;padding:0;box-shadow:none;overflow:visible}
.supports-moodboard--v43 img{display:block;width:100%;max-width:860px;height:auto;border-radius:10px;box-shadow:none;margin-left:auto}
@media(max-width:1100px){
  .impression-supports-grid--v43{grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:28px}
  .supports-copy--v43 h2{font-size:clamp(28px,3.2vw,40px)}
}
@media(max-width:980px){
  .impression-supports-grid--v43{grid-template-columns:1fr;gap:24px}
  .supports-copy--v43,.supports-copy--v43 h2,.supports-copy--v43 p{max-width:none}
  .supports-moodboard--v43 img{max-width:none;margin-left:0}
}


/* V44 - refine impression supports to match reference */
.impression-supports--v43{padding:42px 0 34px}
.impression-supports-grid--v43{grid-template-columns:280px minmax(0,720px);gap:30px;align-items:start;justify-content:space-between}
.supports-copy--v43{max-width:240px;padding-top:4px}
.supports-copy--v43 .eyebrow{font-size:12px;letter-spacing:.12em;margin-bottom:10px}
.supports-copy--v43 h2{font-size:clamp(28px,2.25vw,32px);line-height:1.12;letter-spacing:-.04em;max-width:230px;margin:0 0 14px}
.supports-copy--v43 p{font-size:14px;line-height:1.62;max-width:235px;color:#637083}
.supports-copy--v43 p + p{margin-top:12px}
.supports-moodboard--v43{align-self:start}
.supports-moodboard--v43 img{max-width:690px;width:100%;border-radius:6px;margin-left:0}
@media (max-width: 1200px){
  .impression-supports-grid--v43{grid-template-columns:260px minmax(0,1fr);gap:24px}
  .supports-moodboard--v43 img{max-width:640px}
}
@media (max-width: 980px){
  .impression-supports-grid--v43{grid-template-columns:1fr;gap:22px}
  .supports-copy--v43,.supports-copy--v43 h2,.supports-copy--v43 p{max-width:none}
  .supports-moodboard--v43 img{max-width:none;width:100%}
}


/* V45 - impression supports section closer to reference */
.impression-supports--v43{
  padding:34px 0 26px;
}
.impression-supports-grid--v43{
  grid-template-columns: 300px minmax(0, 640px);
  gap: 26px;
  align-items: start;
  justify-content: start;
}
.supports-copy--v43{
  max-width: 280px;
  padding-top: 2px;
}
.supports-copy--v43 .eyebrow{
  font-size: 11px;
  letter-spacing: .11em;
  margin-bottom: 12px;
}
.supports-copy--v43 h2{
  font-size: clamp(24px, 2vw, 28px);
  line-height: 1.08;
  letter-spacing: -0.045em;
  max-width: 280px;
  margin: 0 0 16px;
}
.supports-copy--v43 p{
  font-size: 13.5px;
  line-height: 1.7;
  max-width: 270px;
  color: #657285;
  margin: 0;
}
.supports-copy--v43 p + p{
  margin-top: 14px;
}
.supports-moodboard--v43{
  display:block;
  align-self:start;
}
.supports-moodboard--v43 img{
  display:block;
  width:100%;
  max-width:640px;
  height:auto;
  border-radius:4px;
  margin:0;
}
@media (max-width: 1100px){
  .impression-supports-grid--v43{
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 22px;
  }
  .supports-moodboard--v43 img{max-width: 100%;}
}
@media (max-width: 900px){
  .impression-supports-grid--v43{
    grid-template-columns:1fr;
    gap:20px;
  }
  .supports-copy--v43,
  .supports-copy--v43 h2,
  .supports-copy--v43 p{
    max-width:none;
  }
}


/* V46 - exact provided mosaic for impression supports */
.impression-supports--v43{
  padding: 34px 0 26px;
}
.impression-supports--v43 .container{
  width: min(1060px, calc(100% - 52px));
}
.impression-supports-grid--v43{
  display: grid;
  grid-template-columns: 215px minmax(0, 780px);
  gap: 28px;
  align-items: start;
  justify-content: space-between;
}
.supports-copy--v43{
  max-width: 215px;
  padding-top: 8px;
}
.supports-copy--v43 .eyebrow{
  font-size: 11px;
  letter-spacing: .12em;
  margin-bottom: 10px;
}
.supports-copy--v43 h2{
  font-size: clamp(24px, 2vw, 29px);
  line-height: 1.08;
  letter-spacing: -0.045em;
  max-width: 210px;
  margin: 0 0 14px;
}
.supports-copy--v43 p{
  font-size: 13.5px;
  line-height: 1.72;
  max-width: 205px;
  color: #657285;
  margin: 0;
}
.supports-copy--v43 p + p{
  margin-top: 14px;
}
.supports-moodboard--v43{
  display: block;
  background: transparent;
  border: 0;
  padding: 0;
  box-shadow: none;
}
.supports-moodboard--v43 img{
  display: block;
  width: 100%;
  max-width: 780px;
  height: auto;
  border-radius: 4px;
  margin: 0;
  box-shadow: none;
}
@media (max-width: 1100px){
  .impression-supports-grid--v43{
    grid-template-columns: 205px minmax(0, 1fr);
    gap: 24px;
  }
  .supports-moodboard--v43 img{
    max-width: 100%;
  }
}
@media (max-width: 900px){
  .impression-supports--v43 .container{
    width: min(100% - 28px, 1060px);
  }
  .impression-supports-grid--v43{
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .supports-copy--v43,
  .supports-copy--v43 h2,
  .supports-copy--v43 p{
    max-width: none;
  }
}


/* V47 - impression supports refinements: smaller mosaic, 2-line title, wider body text */
.impression-supports--v43{
  padding: 34px 0 26px;
}
.impression-supports--v43 .container{
  width: min(1040px, calc(100% - 56px));
}
.impression-supports-grid--v43{
  grid-template-columns: 255px minmax(0, 710px);
  gap: 30px;
  align-items: start;
}
.supports-copy--v43{
  max-width: 255px;
  padding-top: 8px;
}
.supports-copy--v43 h2{
  font-size: clamp(25px, 1.95vw, 30px);
  line-height: 1.1;
  letter-spacing: -0.04em;
  max-width: 255px;
  margin: 0 0 14px;
}
.supports-copy--v43 p{
  font-size: 13.8px;
  line-height: 1.72;
  max-width: 250px;
}
.supports-moodboard--v43 img{
  max-width: 710px;
}
@media (max-width: 1100px){
  .impression-supports-grid--v43{
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 24px;
  }
  .supports-copy--v43,
  .supports-copy--v43 h2,
  .supports-copy--v43 p{
    max-width: 240px;
  }
  .supports-moodboard--v43 img{
    max-width: 100%;
  }
}
@media (max-width: 900px){
  .impression-supports--v43 .container{
    width: min(100% - 28px, 1040px);
  }
  .impression-supports-grid--v43{
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .supports-copy--v43,
  .supports-copy--v43 h2,
  .supports-copy--v43 p{
    max-width: none;
  }
}


/* V48 - production formulas refinements on Impression page */
.production-options-head h2{
  font-size: clamp(24px, 2.35vw, 34px);
  line-height: 1.08;
  letter-spacing: -0.04em;
  white-space: nowrap;
  max-width: 100%;
}
.production-options-head p{
  text-align: justify;
  text-align-last: left;
  max-width: 980px;
}
.production-options-grid{
  align-items: stretch;
}
.production-option{
  padding: 22px 22px 22px;
}
.production-option-head{
  display: grid;
  grid-template-columns: 46px minmax(0,1fr);
  align-items: center;
  gap: 12px;
  margin: 0 0 12px;
}
.production-option .option-index{
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin: 0;
}
.production-option h3{
  margin: 0;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.production-option p{
  font-size: 14px;
  line-height: 1.6;
  text-align: justify;
  text-align-last: left;
}
@media (max-width: 1100px){
  .production-options-head h2{
    white-space: normal;
  }
}
@media (max-width: 767px){
  .production-options-head h2{
    font-size: 26px;
  }
  .production-option-head{
    grid-template-columns: 42px minmax(0,1fr);
    gap: 10px;
  }
}


/* V49 - Impression page refinements: technique title + premium process */
.section-light.technique-quality{padding-top:42px;padding-bottom:44px;}
.technique-grid{align-items:start;grid-template-columns:380px minmax(0,1fr);gap:42px;}
.technique-copy{max-width:380px;}
.technique-copy h2{
  font-size:clamp(30px,3.25vw,44px);
  line-height:0.98;
  letter-spacing:-0.055em;
  margin:14px 0 18px;
  max-width:300px;
}
.technique-copy p{
  max-width:380px;
  font-size:15px;
  line-height:1.62;
  margin:0 0 20px;
}
.technique-list{max-width:420px;gap:12px;}
.technique-list .check-item{gap:12px;}
.technique-list .check-item>div{font-size:14px;line-height:1.52;}
.technique-list .dot{width:24px;height:24px;font-size:13px;box-shadow:0 6px 14px rgba(63,99,255,.22);}
.technique-visual{min-height:0;}
.technique-visual-full{min-height:560px;}
.technique-visual-full img{border-radius:26px;}

.impression-process-section{
  background:#ffffff;
  padding:44px 0 56px;
}
.impression-process-section:before{display:none;}
.impression-process-section .eyebrow{color:#4b6bff;}
.impression-process-section h2{
  color:#11192b;
  font-size:clamp(24px,2.8vw,42px);
  line-height:1.05;
  letter-spacing:-.04em;
  margin:10px 0 34px;
}
.impression-process-steps{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  position:relative;
  text-align:center;
}
.impression-process-steps:before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:21px;
  height:2px;
  background:#b8c8ff;
}
.process-step-card{
  padding:0 6px;
  text-align:center;
}
.process-step-icon{
  width:42px;
  height:42px;
  margin:0 auto 14px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#3d63ff,#5f7cff);
  box-shadow:none;
  color:#fff;
  font-size:14px;
  font-weight:800;
}
.process-step-icon svg{display:none;}
.process-step-card h3{
  margin:0 0 8px;
  color:#11192b;
  font-size:16px;
  line-height:1.2;
  letter-spacing:-.02em;
}
.process-step-card p{
  margin:0 auto;
  max-width:200px;
  color:#5f697b;
  font-size:14px;
  line-height:1.55;
}

@media(max-width:1100px){
  .technique-grid{grid-template-columns:340px minmax(0,1fr);gap:32px;}
  .technique-copy,.technique-copy p{max-width:340px;}
}
@media(max-width:980px){
  .technique-grid{grid-template-columns:1fr;gap:24px;}
  .technique-copy,.technique-copy p,.technique-list,.technique-copy h2{max-width:none;}
  .technique-copy h2{font-size:36px;}
  .impression-process-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
  .impression-process-steps:before{display:none;}
}
@media(max-width:640px){
  .technique-copy h2{font-size:32px;}
  .impression-process-steps{grid-template-columns:1fr;}
}


/* V50 - Technique & qualite section refined */
.section-light.technique-quality{padding-top:40px;padding-bottom:44px;}
.technique-grid{
  grid-template-columns:minmax(430px,480px) minmax(0,620px);
  gap:34px;
  justify-content:space-between;
  align-items:start;
}
.technique-copy{max-width:470px;}
.technique-copy h2{
  font-size:clamp(22px,2.5vw,34px);
  line-height:1.02;
  letter-spacing:-0.05em;
  margin:12px 0 18px;
  max-width:315px;
}
.technique-copy p{
  max-width:440px;
  font-size:15px;
  line-height:1.68;
}
.technique-list{max-width:440px;}
.technique-visual{
  max-width:620px;
  width:100%;
  margin-left:auto;
}
.technique-visual-full{min-height:0;}
.technique-visual-full img{
  width:100%;
  height:auto;
  max-height:620px;
  object-fit:contain;
  border-radius:26px;
}
@media(max-width:1200px){
  .technique-grid{grid-template-columns:minmax(380px,450px) minmax(0,560px);gap:28px;}
  .technique-copy{max-width:440px;}
  .technique-copy p,.technique-list{max-width:420px;}
}
@media(max-width:980px){
  .technique-grid{grid-template-columns:1fr;}
  .technique-copy,.technique-copy p,.technique-list,.technique-visual{max-width:none;}
  .technique-copy h2{max-width:340px;}
}


/* V51 - Impression technique section aligned to reference */
.section-light.technique-quality{
  background:#030811;
  color:#fff;
  padding:26px 0 28px;
  position:relative;
  overflow:hidden;
}
.section-light.technique-quality:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 18% 10%, rgba(72,105,255,.14), transparent 28%);
  pointer-events:none;
}
.section-light.technique-quality .container{position:relative;z-index:1;}
.technique-grid{
  grid-template-columns:minmax(250px,310px) minmax(0,1fr);
  gap:26px;
  align-items:start;
}
.technique-copy{max-width:300px;}
.technique-copy .eyebrow{color:#fff;opacity:.95;}
.technique-copy h2{
  color:#fff;
  font-size:clamp(22px,2.35vw,33px);
  line-height:1.08;
  letter-spacing:-.04em;
  margin:10px 0 18px;
  max-width:280px;
}
.technique-copy p{display:none;}
.compact-technique-list,
.technique-list{max-width:310px;}
.compact-technique-list .check-item,
.technique-list .check-item{
  display:grid;
  grid-template-columns:18px 1fr;
  gap:10px;
  align-items:flex-start;
  margin:0 0 10px;
  color:#e8eef9;
  font-size:12px;
  line-height:1.45;
}
.compact-technique-list .dot,
.technique-list .dot{
  width:16px;
  height:16px;
  border-radius:50%;
  background:#3d63ff;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:10px;
  margin-top:1px;
  box-shadow:none;
}
.technique-visual{
  max-width:100%;
  margin-left:0;
}
.technique-visual-full{
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:rgba(255,255,255,.02);
  padding:0;
  overflow:hidden;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.technique-visual-full img{
  width:100%;
  height:auto;
  max-height:360px;
  object-fit:cover;
  object-position:center center;
  border-radius:0;
}
@media(max-width:980px){
  .section-light.technique-quality{padding:26px 0 32px;}
  .technique-grid{grid-template-columns:1fr;gap:18px;}
  .technique-copy,.compact-technique-list,.technique-list{max-width:none;}
  .technique-copy h2{max-width:320px;}
  .technique-visual-full img{max-height:none;}
}


/* V52 - refine dark technique block */
.section-light.technique-quality{
  padding:28px 0 32px;
}
.section-light.technique-quality .container.technique-grid{
  grid-template-columns:minmax(240px,300px) minmax(420px,560px);
  gap:26px;
  align-items:start;
  justify-content:space-between;
}
.section-light.technique-quality .technique-copy{
  max-width:295px;
}
.section-light.technique-quality .technique-copy .eyebrow{
  color:#ffffff;
  opacity:1;
}
.section-light.technique-quality .technique-copy h2{
  color:#ffffff;
  font-size:clamp(22px,2.2vw,30px);
  line-height:1.05;
  max-width:290px;
  margin:10px 0 18px;
}
.section-light.technique-quality .compact-technique-list,
.section-light.technique-quality .technique-list{
  max-width:295px;
}
.section-light.technique-quality .compact-technique-list .check-item,
.section-light.technique-quality .technique-list .check-item{
  color:#ffffff;
  opacity:1;
  font-size:12.5px;
  line-height:1.48;
  margin:0 0 12px;
}
.section-light.technique-quality .compact-technique-list .check-item > div,
.section-light.technique-quality .technique-list .check-item > div{
  color:#ffffff;
  opacity:1;
}
.section-light.technique-quality .technique-visual.technique-visual-full{
  width:100%;
  max-width:560px;
  margin-left:auto;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  overflow:hidden;
  background:rgba(255,255,255,.02);
}
.section-light.technique-quality .technique-visual-full img{
  width:100%;
  height:290px;
  max-height:none;
  object-fit:cover;
  object-position:center center;
  display:block;
}
@media (max-width:980px){
  .section-light.technique-quality .container.technique-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:none;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full{
    max-width:none;
    margin-left:0;
  }
  .section-light.technique-quality .technique-visual-full img{
    height:auto;
  }
}


/* V53 - technique block refined */
.section-light.technique-quality{
  padding:28px 0 34px;
}
.section-light.technique-quality .container.technique-grid{
  grid-template-columns:minmax(340px,390px) minmax(420px,520px);
  gap:34px;
  align-items:start;
  justify-content:space-between;
}
.section-light.technique-quality .technique-copy,
.section-light.technique-quality .compact-technique-list,
.section-light.technique-quality .technique-list{
  max-width:390px;
}
.section-light.technique-quality .technique-copy .eyebrow{
  color:#ffffff;
  font-size:12px;
  letter-spacing:.14em;
}
.section-light.technique-quality .technique-copy h2{
  color:#ffffff;
  font-size:clamp(24px,2vw,28px);
  line-height:1.06;
  letter-spacing:-.03em;
  margin:10px 0 18px;
  max-width:390px;
}
.section-light.technique-quality .technique-copy h2 .nowrap{
  white-space:nowrap;
}
.section-light.technique-quality .compact-technique-list .check-item,
.section-light.technique-quality .technique-list .check-item{
  color:#ffffff;
  opacity:1;
  font-size:12px;
  line-height:1.45;
  margin:0 0 10px;
  align-items:flex-start;
}
.section-light.technique-quality .compact-technique-list .check-item > div,
.section-light.technique-quality .technique-list .check-item > div{
  color:#ffffff;
  opacity:1;
}
.section-light.technique-quality .compact-technique-list .dot,
.section-light.technique-quality .technique-list .dot{
  width:18px;
  height:18px;
  min-width:18px;
  margin-top:1px;
  font-size:11px;
}
.section-light.technique-quality .technique-visual.technique-visual-full{
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
  width:100%;
  max-width:520px;
  margin-left:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  min-height:0;
  overflow:visible;
}
.section-light.technique-quality .technique-visual-full img{
  width:100%;
  max-width:520px;
  height:330px;
  object-fit:cover;
  object-position:center center;
  border-radius:0;
  box-shadow:none;
  display:block;
}
@media (max-width:1100px){
  .section-light.technique-quality .container.technique-grid{
    grid-template-columns:minmax(300px,360px) minmax(360px,1fr);
    gap:26px;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:360px;
  }
  .section-light.technique-quality .technique-copy h2 .nowrap{
    white-space:normal;
  }
}
@media (max-width:980px){
  .section-light.technique-quality .container.technique-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:none;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full{
    max-width:none;
    margin-left:0;
    justify-content:flex-start;
  }
  .section-light.technique-quality .technique-visual-full img{
    max-width:none;
    width:100%;
    height:auto;
  }
}


/* V54 - refine expertise section to match compact reference */
.section-light.technique-quality{
  padding:24px 0 28px !important;
  background:#02070e !important;
}
.section-light.technique-quality .container.technique-grid{
  display:grid !important;
  grid-template-columns:minmax(420px,480px) 520px !important;
  gap:56px !important;
  align-items:start !important;
  justify-content:center !important;
  max-width:1120px;
}
.section-light.technique-quality .technique-copy,
.section-light.technique-quality .compact-technique-list,
.section-light.technique-quality .technique-list{
  max-width:480px !important;
}
.section-light.technique-quality .technique-copy .eyebrow{
  color:#ffffff !important;
  font-size:12px !important;
  letter-spacing:.14em !important;
  font-weight:900 !important;
}
.section-light.technique-quality .technique-copy h2{
  color:#ffffff !important;
  font-size:clamp(28px,3vw,36px) !important;
  line-height:1.02 !important;
  letter-spacing:-.04em !important;
  margin:12px 0 18px !important;
  max-width:470px !important;
}
.section-light.technique-quality .technique-copy h2 .nowrap{
  white-space:nowrap !important;
}
.section-light.technique-quality .compact-technique-list .check-item,
.section-light.technique-quality .technique-list .check-item{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin:0 0 12px !important;
  color:#ffffff !important;
  font-size:12px !important;
  line-height:1.4 !important;
}
.section-light.technique-quality .compact-technique-list .check-item > div,
.section-light.technique-quality .technique-list .check-item > div{
  color:#ffffff !important;
  white-space:nowrap !important;
}
.section-light.technique-quality .compact-technique-list .dot,
.section-light.technique-quality .technique-list .dot{
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  margin-top:2px !important;
  font-size:10px !important;
  background:linear-gradient(135deg,#3f63ff,#5b79ff) !important;
  color:#fff !important;
  box-shadow:0 6px 14px rgba(63,99,255,.28) !important;
}
.section-light.technique-quality .technique-visual.technique-visual-full{
  width:520px !important;
  max-width:100% !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
  display:block !important;
  overflow:visible !important;
}
.section-light.technique-quality .technique-visual-full img{
  display:block !important;
  width:520px !important;
  max-width:100% !important;
  height:290px !important;
  object-fit:cover !important;
  object-position:center 60% !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:none !important;
}
@media (max-width:1100px){
  .section-light.technique-quality .container.technique-grid{
    grid-template-columns:minmax(380px,1fr) 460px !important;
    gap:34px !important;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:420px !important;
  }
  .section-light.technique-quality .technique-copy h2 .nowrap,
  .section-light.technique-quality .compact-technique-list .check-item > div,
  .section-light.technique-quality .technique-list .check-item > div{
    white-space:normal !important;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full,
  .section-light.technique-quality .technique-visual-full img{
    width:460px !important;
    height:260px !important;
  }
}
@media (max-width:980px){
  .section-light.technique-quality .container.technique-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:none !important;
  }
  .section-light.technique-quality .technique-copy h2 .nowrap,
  .section-light.technique-quality .compact-technique-list .check-item > div,
  .section-light.technique-quality .technique-list .check-item > div{
    white-space:normal !important;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full,
  .section-light.technique-quality .technique-visual-full img{
    width:100% !important;
    height:auto !important;
  }
}


/* V55 - expertise section heading and image alignment */
.section-light.technique-quality .technique-copy h2{
  max-width:430px !important;
  font-size:clamp(30px,3.3vw,36px) !important;
  line-height:1.03 !important;
}
.section-light.technique-quality .technique-copy h2 .nowrap{
  white-space:nowrap !important;
}
.section-light.technique-quality .technique-visual.technique-visual-full{
  margin-top:32px !important;
  align-self:start !important;
}
.section-light.technique-quality .technique-visual-full img{
  width:540px !important;
  height:304px !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media (max-width:1100px){
  .section-light.technique-quality .technique-copy h2{
    max-width:390px !important;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full{
    margin-top:26px !important;
  }
  .section-light.technique-quality .technique-visual-full img{
    width:500px !important;
    height:282px !important;
  }
}
@media (max-width:980px){
  .section-light.technique-quality .technique-copy h2 .nowrap{
    white-space:normal !important;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full{
    margin-top:8px !important;
  }
  .section-light.technique-quality .technique-visual-full img{
    width:100% !important;
    height:auto !important;
  }
}


/* V56 - expertise section left/right edge alignment */
.section-light.technique-quality .container.technique-grid{
  width:min(1180px,calc(100% - 64px)) !important;
  margin-inline:auto !important;
  grid-template-columns:minmax(0,1fr) 620px !important;
  gap:26px !important;
  align-items:start !important;
}
.section-light.technique-quality .technique-copy{
  max-width:none !important;
  justify-self:start !important;
  align-self:start !important;
}
.section-light.technique-quality .technique-copy h2{
  max-width:520px !important;
}
.section-light.technique-quality .compact-technique-list,
.section-light.technique-quality .technique-list{
  max-width:540px !important;
}
.section-light.technique-quality .technique-visual.technique-visual-full{
  justify-self:end !important;
  align-self:start !important;
  width:620px !important;
  max-width:100% !important;
  margin-top:30px !important;
}
.section-light.technique-quality .technique-visual-full img{
  width:620px !important;
  max-width:100% !important;
  height:348px !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media (max-width:1180px){
  .section-light.technique-quality .container.technique-grid{
    width:min(1100px,calc(100% - 48px)) !important;
    grid-template-columns:minmax(0,1fr) 560px !important;
    gap:24px !important;
  }
  .section-light.technique-quality .technique-copy h2{max-width:480px !important;}
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list{max-width:500px !important;}
  .section-light.technique-quality .technique-visual.technique-visual-full,
  .section-light.technique-quality .technique-visual-full img{
    width:560px !important;
    height:314px !important;
  }
}
@media (max-width:980px){
  .section-light.technique-quality .container.technique-grid{
    width:min(100%,calc(100% - 32px)) !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .section-light.technique-quality .technique-copy,
  .section-light.technique-quality .compact-technique-list,
  .section-light.technique-quality .technique-list,
  .section-light.technique-quality .technique-copy h2{
    max-width:none !important;
  }
  .section-light.technique-quality .technique-visual.technique-visual-full{
    width:100% !important;
    margin-top:8px !important;
    justify-self:start !important;
  }
  .section-light.technique-quality .technique-visual-full img{
    width:100% !important;
    height:auto !important;
  }
}


/* V57 - Impression supports: wider section, stronger text column, balanced image */
.impression-supports--v43{
  padding:48px 0 40px !important;
}
.impression-supports--v43 .container{
  width:min(1180px, calc(100% - 64px)) !important;
  max-width:1180px !important;
}
.impression-supports-grid--v43{
  display:grid !important;
  grid-template-columns:minmax(330px, 390px) minmax(0, 680px) !important;
  gap:64px !important;
  align-items:stretch !important;
  justify-content:space-between !important;
}
.supports-copy--v43{
  max-width:390px !important;
  padding-top:8px !important;
  padding-bottom:8px !important;
  align-self:stretch !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.supports-copy--v43 .eyebrow{
  font-size:11px !important;
  letter-spacing:.13em !important;
  margin-bottom:12px !important;
}
.supports-copy--v43 h2{
  max-width:360px !important;
  font-size:clamp(28px, 2.45vw, 36px) !important;
  line-height:1.08 !important;
  letter-spacing:-.045em !important;
  margin:0 0 18px !important;
}
.supports-copy--v43 p{
  max-width:360px !important;
  font-size:14.5px !important;
  line-height:1.68 !important;
  color:#657285 !important;
}
.supports-copy--v43 p + p{
  margin-top:16px !important;
}
.supports-moodboard--v43{
  align-self:stretch !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.supports-moodboard--v43 img{
  width:100% !important;
  max-width:680px !important;
  height:auto !important;
  max-height:360px !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:6px !important;
  margin:0 !important;
  box-shadow:none !important;
}
@media (max-width:1180px){
  .impression-supports--v43 .container{
    width:min(1100px, calc(100% - 48px)) !important;
  }
  .impression-supports-grid--v43{
    grid-template-columns:minmax(310px, 370px) minmax(0, 630px) !important;
    gap:48px !important;
  }
  .supports-moodboard--v43 img{
    max-width:630px !important;
    max-height:340px !important;
  }
}
@media (max-width:980px){
  .impression-supports--v43 .container{
    width:min(100%, calc(100% - 32px)) !important;
  }
  .impression-supports-grid--v43{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  .supports-copy--v43,
  .supports-copy--v43 h2,
  .supports-copy--v43 p{
    max-width:none !important;
  }
  .supports-copy--v43{
    justify-content:flex-start !important;
    padding-top:0 !important;
  }
  .supports-moodboard--v43{
    justify-content:flex-start !important;
  }
  .supports-moodboard--v43 img{
    max-width:100% !important;
    max-height:none !important;
    width:100% !important;
  }
}

/* V60 - Contact page ultra fidèle au mockup */
.makit-contact-page{background:#02070e;color:#f8fbff}.makit-contact-page .container{width:min(1080px,calc(100% - 56px))}.contact-hero-v60{position:relative;min-height:390px;overflow:hidden;background:#02070e;border-bottom:1px solid rgba(255,255,255,.08)}.contact-hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,7,14,.99) 0%,rgba(2,7,14,.86) 34%,rgba(2,7,14,.42) 58%,rgba(2,7,14,.10) 100%),url(assets/img/contact-hero-v60.png) right center/72% auto no-repeat;filter:saturate(1.02) brightness(.86)}.contact-hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.16))}.contact-hero-inner{position:relative;z-index:2;min-height:390px;display:flex;align-items:center}.contact-hero-copy{max-width:520px;padding:34px 0 38px}.contact-hero-copy .eyebrow{margin-bottom:16px;color:#3764ff}.contact-hero-copy h1{font-size:clamp(48px,5.3vw,70px);line-height:.98;letter-spacing:-.065em;margin:0 0 22px;font-weight:950}.contact-hero-copy p{max-width:535px;margin:0;color:#d4dbe8;font-size:16px;line-height:1.55}.contact-hero-pills{display:flex;gap:34px;flex-wrap:wrap;margin-top:30px}.contact-hero-pills span,.contact-benefits-v60 span{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:900;text-transform:uppercase;color:#f7faff}.contact-hero-pills svg,.contact-benefits-v60 svg{width:21px;height:21px;stroke:#3764ff;stroke-width:2;fill:none;flex:0 0 auto}.contact-prep-v60{background:linear-gradient(180deg,#f6f8fc 0%,#f8faff 100%);color:#090f1d;padding:42px 0 32px}.contact-prep-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:start}.contact-prep-copy{padding-top:9px}.contact-prep-copy h2{font-size:clamp(33px,3.2vw,43px);line-height:1.06;letter-spacing:-.055em;margin:16px 0 26px;font-weight:950;color:#071024}.contact-steps-v60{position:relative;display:grid;gap:23px;max-width:560px;padding-left:0}.contact-steps-v60:before{content:"";position:absolute;left:14px;top:22px;bottom:22px;width:1px;background:#d6deed}.contact-step-v60{position:relative;display:grid;grid-template-columns:34px 1fr;gap:18px;align-items:start}.contact-step-v60 span{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#dce7ff;color:#3157ff;font-size:14px;font-weight:950}.contact-step-v60 strong{display:block;font-size:15px;line-height:1.25;color:#071024;margin-bottom:2px}.contact-step-v60 p{margin:0;color:#4d5667;font-size:15px;line-height:1.45}.contact-info-card-v60{background:linear-gradient(145deg,#071327 0%,#020814 100%);border:1px solid rgba(255,255,255,.12);border-radius:15px;box-shadow:0 24px 52px rgba(7,18,39,.24);color:#fff;padding:27px 28px 23px;max-width:440px;justify-self:end}.contact-info-card-v60 h3{font-size:22px;line-height:1.1;letter-spacing:-.025em;margin:0 0 20px}.contact-info-row-v60{display:grid;grid-template-columns:60px 1fr;gap:18px;align-items:center;padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}.contact-info-row-v60 i{width:60px;height:60px;border-radius:13px;background:linear-gradient(135deg,rgba(49,87,255,.5),rgba(16,40,116,.55));border:1px solid rgba(74,109,255,.38);display:grid;place-items:center}.contact-info-row-v60 svg{width:27px;height:27px;stroke:#fff;stroke-width:2;fill:none}.contact-info-row-v60 strong{display:block;color:#fff;font-size:15px;line-height:1.2;margin-bottom:3px}.contact-info-row-v60 p{margin:0;color:#c9d2e2;font-size:14px;line-height:1.4}.contact-info-note-v60{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;color:#cbd5e5}.contact-info-note-v60 svg{width:25px;height:25px;stroke:#3764ff;stroke-width:2;fill:none}.contact-info-note-v60 p{margin:0;font-size:13px;line-height:1.45}.contact-feature-strip-v60{margin-top:34px;background:#fff;border:1px solid #e1e8f2;border-radius:8px;box-shadow:0 18px 42px rgba(15,23,42,.08);display:grid;grid-template-columns:repeat(3,1fr);padding:24px 20px}.contact-feature-v60{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;padding:0 18px;border-right:1px solid #dce3ef}.contact-feature-v60:last-child{border-right:0}.contact-feature-v60 i{width:58px;height:58px;border-radius:50%;background:#e7edff;display:grid;place-items:center}.contact-feature-v60 svg{width:28px;height:28px;stroke:#3157ff;stroke-width:2;fill:none}.contact-feature-v60 strong{display:block;color:#071024;font-size:15px;line-height:1.2;margin-bottom:7px}.contact-feature-v60 p{margin:0;color:#4b5567;font-size:13px;line-height:1.5}.contact-form-section-v60{position:relative;background:radial-gradient(circle at 82% 22%,rgba(49,87,255,.18),transparent 36%),linear-gradient(180deg,#02070e,#030b17);padding:32px 0 24px;overflow:hidden}.contact-form-grid-v60{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:start}.contact-form-copy-v60 h2{font-size:clamp(31px,3.05vw,42px);line-height:1.08;letter-spacing:-.055em;margin:13px 0 16px;font-weight:950}.contact-form-copy-v60>p{max-width:380px;margin:0;color:#c6cfdf;font-size:15px;line-height:1.55}.contact-benefits-v60{display:flex;gap:24px;flex-wrap:wrap;margin-top:31px}.contact-benefits-v60 span{font-size:11px;text-transform:none;letter-spacing:-.01em}.contact-benefits-v60 svg{width:19px;height:19px}.contact-bottom-photo-v60{margin-top:28px;width:100%;max-width:475px;height:188px;border-radius:5px;overflow:hidden;background:#07101b;box-shadow:0 16px 36px rgba(0,0,0,.25)}.contact-bottom-photo-v60 img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.contact-bottom-photo-v60{background-position:center center;background-size:cover;background-repeat:no-repeat}.contact-bottom-photo-v60--has-bg{background-image:var(--makit-contact-bottom-photo)}.contact-form-v60{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding-top:10px}.contact-form-v60 input,.contact-form-v60 select,.contact-form-v60 textarea{width:100%;height:50px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.13);border-radius:7px;color:#f7faff;padding:0 16px;font:600 14px/1.3 Inter,system-ui,sans-serif;outline:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.contact-form-v60 select{appearance:auto;color:#fff}.contact-form-v60 textarea{grid-column:1/-1;height:118px;resize:vertical;padding:17px 16px}.contact-form-v60 input::placeholder,.contact-form-v60 textarea::placeholder{color:#8d98aa;opacity:1}.contact-form-v60 .btn{grid-column:1/-1;height:50px;border-radius:7px;font-size:15px;margin-top:0;box-shadow:0 18px 36px rgba(49,87,255,.26)}.contact-privacy-v60{grid-column:1/-1;margin:5px 0 0;color:#909bad;font-size:12px}.makit-contact-page + .site-footer,.makit-contact-page~.site-footer{border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:980px){.makit-contact-page .container{width:min(100% - 28px,1080px)}.contact-hero-v60,.contact-hero-inner{min-height:420px}.contact-hero-bg{background:linear-gradient(90deg,rgba(2,7,14,.97),rgba(2,7,14,.72)),url(assets/img/contact-hero-v60.png) center/cover no-repeat}.contact-prep-grid,.contact-form-grid-v60{grid-template-columns:1fr;gap:34px}.contact-info-card-v60{justify-self:stretch;max-width:none}.contact-feature-strip-v60{grid-template-columns:1fr;gap:0}.contact-feature-v60{border-right:0;border-bottom:1px solid #dce3ef;padding:18px}.contact-feature-v60:first-child{padding-top:0}.contact-feature-v60:last-child{border-bottom:0;padding-bottom:0}.contact-form-v60{padding-top:0}.contact-bottom-photo-v60{max-width:100%;height:210px}}
@media(max-width:640px){.contact-hero-copy h1{font-size:42px}.contact-hero-pills,.contact-benefits-v60{gap:14px}.contact-form-v60{grid-template-columns:1fr}.contact-prep-copy h2,.contact-form-copy-v60 h2{font-size:30px}.contact-info-row-v60{grid-template-columns:52px 1fr}.contact-info-row-v60 i{width:52px;height:52px}.contact-feature-strip-v60{padding:20px 16px}.contact-feature-v60{grid-template-columns:52px 1fr;gap:14px}.contact-feature-v60 i{width:48px;height:48px}}


/* Ajustements Contact V61 : lisibilité des titres + alignements */
.contact-hero-copy h1{
  letter-spacing:-.018em;
}
.contact-prep-grid{
  align-items:start;
}
.contact-info-card-v60{
  margin-top:58px;
}
.contact-prep-copy h2{
  margin-bottom:36px;
  letter-spacing:-.025em;
}
.contact-steps-v60{
  margin-top:4px;
}
.contact-form-copy-v60 h2{
  letter-spacing:-.018em;
  line-height:1.12;
  max-width:520px;
}
@media(max-width:980px){
  .contact-info-card-v60{margin-top:0}
  .contact-prep-copy h2{margin-bottom:28px}
}


/* Ajustements Contact V63 : tailles de titres + select lisible */
.contact-hero-copy{
  max-width:640px;
}
.contact-hero-copy h1{
  font-size:clamp(44px,4.55vw,60px) !important;
  line-height:1.02 !important;
  letter-spacing:-.012em !important;
}
.contact-prep-grid{
  grid-template-columns:1.1fr .9fr;
  gap:64px;
}
.contact-prep-copy h2{
  font-size:clamp(32px,2.85vw,39px) !important;
  line-height:1.08 !important;
  letter-spacing:-.015em !important;
}
.contact-steps-v60{
  margin-top:8px;
}
.contact-form-grid-v60{
  grid-template-columns:1fr 1.05fr;
  gap:66px;
}
.contact-form-copy-v60 h2{
  font-size:clamp(30px,2.75vw,36px) !important;
  line-height:1.12 !important;
  letter-spacing:-.012em !important;
  max-width:560px;
}
.contact-form-v60 select,
.contact-form-v60 select:focus{
  color:#f7faff;
  background-color:#101a2c;
}
.contact-form-v60 select option{
  background:#071327;
  color:#f7faff;
  padding:12px 14px;
}
.contact-form-v60 select option:checked,
.contact-form-v60 select option:hover{
  background:#3157ff;
  color:#fff;
}
@media(max-width:980px){
  .contact-hero-copy{max-width:620px}
  .contact-hero-copy h1{font-size:46px !important}
  .contact-prep-grid,.contact-form-grid-v60{grid-template-columns:1fr;gap:34px}
  .contact-prep-copy h2{font-size:34px !important}
  .contact-form-copy-v60 h2{font-size:34px !important;max-width:620px}
}
@media(max-width:640px){
  .contact-hero-copy h1{font-size:38px !important}
  .contact-prep-copy h2,.contact-form-copy-v60 h2{font-size:28px !important}
}


/* v64 - Fluent Forms intégré à la page Contact */
.contact-form-v60.makit-fluent-form{
  display:block;
  padding-top:10px;
}
.contact-form-v60.makit-fluent-form .fluentform,
.form.makit-fluent-form-simple .fluentform{
  width:100%;
}
.contact-form-v60.makit-fluent-form form,
.form.makit-fluent-form-simple form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}
.contact-form-v60.makit-fluent-form .ff-el-group,
.form.makit-fluent-form-simple .ff-el-group{
  margin:0!important;
}
.contact-form-v60.makit-fluent-form .ff-el-input--label,
.form.makit-fluent-form-simple .ff-el-input--label{
  display:none!important;
}
.contact-form-v60.makit-fluent-form .ff-el-form-control,
.form.makit-fluent-form-simple .ff-el-form-control{
  width:100%!important;
  height:50px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:7px!important;
  color:#f7faff!important;
  padding:0 16px!important;
  font:600 14px/1.3 Inter,system-ui,sans-serif!important;
  outline:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.contact-form-v60.makit-fluent-form textarea.ff-el-form-control,
.form.makit-fluent-form-simple textarea.ff-el-form-control{
  height:118px!important;
  min-height:118px!important;
  padding:17px 16px!important;
  resize:vertical;
}
.contact-form-v60.makit-fluent-form .ff-el-group:has(textarea),
.contact-form-v60.makit-fluent-form .ff-el-group:has(.ff-el-form-control[type="submit"]),
.contact-form-v60.makit-fluent-form .ff_submit_btn_wrapper,
.form.makit-fluent-form-simple .ff-el-group:has(textarea),
.form.makit-fluent-form-simple .ff-el-group:has(.ff-el-form-control[type="submit"]),
.form.makit-fluent-form-simple .ff_submit_btn_wrapper{
  grid-column:1/-1;
}
.contact-form-v60.makit-fluent-form .ff-btn-submit,
.form.makit-fluent-form-simple .ff-btn-submit{
  width:100%!important;
  min-height:50px!important;
  border:0!important;
  border-radius:7px!important;
  padding:15px 24px!important;
  background:linear-gradient(135deg,#3057ff,#2950f6 50%,#5270ff)!important;
  color:#fff!important;
  font:800 15px/1.3 Inter,system-ui,sans-serif!important;
  box-shadow:0 18px 36px rgba(49,87,255,.26)!important;
  cursor:pointer!important;
}
.contact-form-v60.makit-fluent-form .ff-btn-submit:hover,
.form.makit-fluent-form-simple .ff-btn-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 42px rgba(49,87,255,.34)!important;
}
.contact-form-v60.makit-fluent-form select.ff-el-form-control,
.form.makit-fluent-form-simple select.ff-el-form-control{
  background-color:#101a2c!important;
}
.contact-form-v60.makit-fluent-form select.ff-el-form-control option,
.form.makit-fluent-form-simple select.ff-el-form-control option{
  background:#071327!important;
  color:#f7faff!important;
}
.contact-form-v60.makit-fluent-form .text-danger,
.form.makit-fluent-form-simple .text-danger{
  color:#8aa0ff!important;
}
.contact-form-v60.makit-fluent-form .ff-message-success,
.form.makit-fluent-form-simple .ff-message-success{
  grid-column:1/-1;
  background:rgba(49,87,255,.12)!important;
  border:1px solid rgba(74,109,255,.38)!important;
  color:#f7faff!important;
  border-radius:8px!important;
  padding:14px 16px!important;
}
@media(max-width:640px){
  .contact-form-v60.makit-fluent-form form,
  .form.makit-fluent-form-simple form{grid-template-columns:1fr;}
}


/* v65 - Correction mise en forme Fluent Forms Contact
   Fluent Forms ajoute souvent des conteneurs .ff-t-container / .ff-t-cell.
   On neutralise leur largeur native pour récupérer la largeur complète du mockup. */
.contact-form-v60.makit-fluent-form{
  display:block!important;
  width:100%!important;
  max-width:540px!important;
  margin-left:auto!important;
  padding-top:8px!important;
}
.contact-form-v60.makit-fluent-form .fluentform,
.contact-form-v60.makit-fluent-form form.frm-fluent-form,
.contact-form-v60.makit-fluent-form form{
  width:100%!important;
  max-width:100%!important;
}
.contact-form-v60.makit-fluent-form form,
.form.makit-fluent-form-simple form{
  display:block!important;
}
.contact-form-v60.makit-fluent-form .ff-t-container,
.form.makit-fluent-form-simple .ff-t-container{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 11px!important;
  padding:0!important;
}
.contact-form-v60.makit-fluent-form .ff-t-cell,
.form.makit-fluent-form-simple .ff-t-cell{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  flex:unset!important;
  padding:0!important;
  margin:0!important;
}
.contact-form-v60.makit-fluent-form .ff-el-group,
.form.makit-fluent-form-simple .ff-el-group{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 11px!important;
  padding:0!important;
}
.contact-form-v60.makit-fluent-form .ff-t-container .ff-el-group,
.form.makit-fluent-form-simple .ff-t-container .ff-el-group{
  margin:0!important;
}
.contact-form-v60.makit-fluent-form .ff-el-input--content,
.form.makit-fluent-form-simple .ff-el-input--content{
  width:100%!important;
  max-width:100%!important;
}
.contact-form-v60.makit-fluent-form .ff-el-form-control,
.form.makit-fluent-form-simple .ff-el-form-control{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.contact-form-v60.makit-fluent-form textarea.ff-el-form-control,
.form.makit-fluent-form-simple textarea.ff-el-form-control,
.contact-form-v60.makit-fluent-form .ff-el-group:has(textarea.ff-el-form-control),
.form.makit-fluent-form-simple .ff-el-group:has(textarea.ff-el-form-control),
.contact-form-v60.makit-fluent-form .ff-el-group.ff_submit_btn_wrapper,
.form.makit-fluent-form-simple .ff-el-group.ff_submit_btn_wrapper,
.contact-form-v60.makit-fluent-form .ff_submit_btn_wrapper,
.form.makit-fluent-form-simple .ff_submit_btn_wrapper{
  width:100%!important;
  max-width:100%!important;
}
.contact-form-v60.makit-fluent-form .ff-btn-submit,
.form.makit-fluent-form-simple .ff-btn-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
}
.contact-form-v60.makit-fluent-form select.ff-el-form-control,
.form.makit-fluent-form-simple select.ff-el-form-control{
  color:#fff!important;
  background-color:#101a2c!important;
  background-image:none!important;
}
.contact-form-v60.makit-fluent-form select.ff-el-form-control option,
.form.makit-fluent-form-simple select.ff-el-form-control option{
  background:#071327!important;
  color:#fff!important;
}
@media(max-width:640px){
  .contact-form-v60.makit-fluent-form .ff-t-container,
  .form.makit-fluent-form-simple .ff-t-container{
    grid-template-columns:1fr!important;
  }
}


/* v66 - Accueil : formulaire Fluent Forms aux mêmes dimensions que la page Contact */
.contact-cta .contact-wrap{
  grid-template-columns:minmax(0,1fr) minmax(520px,540px)!important;
  gap:54px!important;
}
.form.makit-fluent-form-simple{
  display:block!important;
  width:100%!important;
  max-width:540px!important;
  margin-left:auto!important;
  padding-top:8px!important;
}
.form.makit-fluent-form-simple .fluentform,
.form.makit-fluent-form-simple form.frm-fluent-form,
.form.makit-fluent-form-simple form{
  width:100%!important;
  max-width:100%!important;
}
.form.makit-fluent-form-simple .ff-t-container{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 11px!important;
  padding:0!important;
}
.form.makit-fluent-form-simple .ff-el-group{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 11px!important;
  padding:0!important;
}
.form.makit-fluent-form-simple .ff-t-cell,
.form.makit-fluent-form-simple .ff-el-input--content{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:unset!important;
  padding:0!important;
  margin:0!important;
}
.form.makit-fluent-form-simple input.ff-el-form-control,
.form.makit-fluent-form-simple select.ff-el-form-control,
.form.makit-fluent-form-simple textarea.ff-el-form-control{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.form.makit-fluent-form-simple textarea.ff-el-form-control,
.form.makit-fluent-form-simple .ff-el-group:has(textarea.ff-el-form-control),
.form.makit-fluent-form-simple .ff-el-group.ff_submit_btn_wrapper,
.form.makit-fluent-form-simple .ff_submit_btn_wrapper{
  width:100%!important;
  max-width:100%!important;
}
.form.makit-fluent-form-simple .ff-btn-submit{
  width:100%!important;
  max-width:100%!important;
}
@media(max-width:980px){
  .contact-cta .contact-wrap{
    grid-template-columns:1fr!important;
  }
  .form.makit-fluent-form-simple{
    max-width:100%!important;
    margin-left:0!important;
  }
}
@media(max-width:640px){
  .form.makit-fluent-form-simple .ff-t-container{
    grid-template-columns:1fr!important;
  }
}


/* V68 - Impression page content replacement + Sous-traitance page */
.impression-usecases-section{background:#f7f8fc;color:#0b1120;padding:44px 0 34px}
.impression-usecases-head{max-width:760px;margin-bottom:24px}
.impression-usecases-head h2{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.045em;margin:10px 0 12px;color:#0b1120}
.impression-usecases-head p{margin:0;color:#626c7f;font-size:15px;line-height:1.65;max-width:720px}
.impression-usecases-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.impression-usecase-card{background:#fff;border:1px solid #e6ebf3;border-radius:20px;padding:24px 22px;box-shadow:0 18px 38px rgba(15,23,42,.06)}
.impression-usecase-card .usecase-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#3157ff,#5a76ff);color:#fff;display:grid;place-items:center;font-weight:900;margin-bottom:16px}
.impression-usecase-card h3{margin:0 0 10px;font-size:18px;line-height:1.18;letter-spacing:-.025em;color:#0b1120}
.impression-usecase-card p{margin:0;color:#626c7f;font-size:14px;line-height:1.62}
.impression-file-guide{background:#fff;color:#0b1120;padding:36px 0 42px}
.impression-file-guide-wrap{display:grid;grid-template-columns:minmax(0,410px) minmax(0,1fr);gap:28px;align-items:stretch;background:linear-gradient(180deg,#fff,#fbfcff);border:1px solid #e6ebf3;border-radius:28px;padding:30px;box-shadow:0 22px 48px rgba(15,23,42,.06)}
.impression-file-guide-copy h2{font-size:clamp(26px,2.8vw,38px);line-height:1.05;letter-spacing:-.045em;margin:10px 0 14px;color:#0b1120}
.impression-file-guide-copy p{margin:0;color:#626c7f;font-size:15px;line-height:1.68}
.impression-file-guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.impression-file-guide-list li{background:#f4f6fb;border:1px solid #e6ebf3;border-radius:16px;padding:14px 16px;color:#2a3344;font-size:14px;line-height:1.45;font-weight:700}
.impression-file-guide-note{grid-column:1/-1;margin-top:6px;background:#eef3ff;border:1px solid #dbe5ff;color:#263a75;border-radius:18px;padding:16px 18px;font-size:14px;line-height:1.6}
.impression-subcontract-teaser{background:#02070e;color:#fff;padding:38px 0 44px;position:relative;overflow:hidden}
.impression-subcontract-teaser:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 0,rgba(49,87,255,.22),transparent 34%)}
.impression-subcontract-teaser-wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:30px;background:linear-gradient(135deg,rgba(12,22,38,.92),rgba(6,12,22,.94));box-shadow:0 22px 46px rgba(0,0,0,.28)}
.impression-subcontract-teaser h2{font-size:clamp(26px,2.7vw,38px);line-height:1.05;letter-spacing:-.045em;margin:8px 0 12px;color:#fff}
.impression-subcontract-teaser p{margin:0;color:#b4bfd1;font-size:15px;line-height:1.7;max-width:780px}.impression-subcontract-teaser .eyebrow{color:#8fa3ff}
.st-page .page-hero:before{background:linear-gradient(90deg,rgba(2,6,13,.98) 0%,rgba(2,6,13,.88) 28%,rgba(2,6,13,.56) 58%,rgba(2,6,13,.18) 100%),var(--page-bg, none) right center/cover no-repeat}
.st-intro{background:#f7f8fc;color:#0b1120;padding:44px 0 40px}
.st-intro-grid{display:grid;grid-template-columns:minmax(0,410px) minmax(0,1fr);gap:30px;align-items:start}
.st-intro-copy h2,.st-section-head h2{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.045em;margin:10px 0 14px;color:#0b1120}
.st-intro-copy p,.st-section-head p{margin:0 0 14px;color:#626c7f;font-size:15px;line-height:1.7}.st-intro-copy p:last-child{margin-bottom:0}
.st-intro-card{background:#fff;border:1px solid #e6ebf3;border-radius:26px;padding:28px;box-shadow:0 20px 44px rgba(15,23,42,.07)}
.st-intro-card h3{margin:0 0 16px;font-size:22px;line-height:1.15;color:#0b1120}.st-check-list{display:grid;gap:12px}.st-check{display:grid;grid-template-columns:26px 1fr;gap:12px;color:#2a3344;font-size:14px;line-height:1.55}.st-check span{width:24px;height:24px;border-radius:50%;background:#3157ff;color:#fff;display:grid;place-items:center;font-weight:900;font-size:13px}
.st-dark{background:#02070e;color:#fff;padding:48px 0;position:relative;overflow:hidden}.st-dark:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 24% 0,rgba(49,87,255,.18),transparent 32%)}.st-dark .container{position:relative;z-index:1}.st-dark .st-section-head h2{color:#fff}.st-dark .st-section-head p{color:#b4bfd1;max-width:820px}.st-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.st-service-card{min-height:260px;border-radius:24px;overflow:hidden;position:relative;display:flex;align-items:flex-end;padding:24px;background:linear-gradient(180deg,rgba(2,7,14,.08),rgba(2,7,14,.88)),var(--card-bg) center/cover no-repeat;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 42px rgba(0,0,0,.25)}.st-service-card h3{margin:0 0 8px;font-size:21px;line-height:1.1;color:#fff}.st-service-card p{margin:0;color:#d1daea;font-size:14px;line-height:1.55}.st-service-card-content{position:relative;z-index:1}
.st-how{background:#fff;color:#0b1120;padding:46px 0}.st-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:26px}.st-step{background:#f7f8fc;border:1px solid #e6ebf3;border-radius:20px;padding:22px}.st-step .step-no{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:999px;background:#3157ff;color:#fff;font-weight:900;margin-bottom:14px}.st-step h3{margin:0 0 10px;font-size:17px;line-height:1.2;color:#0b1120}.st-step p{margin:0;color:#626c7f;font-size:14px;line-height:1.6}
.st-offers{background:#f7f8fc;color:#0b1120;padding:44px 0}.st-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.st-offer{background:#fff;border:1px solid #e6ebf3;border-radius:22px;padding:24px;box-shadow:0 18px 38px rgba(15,23,42,.06)}.st-offer h3{margin:0 0 10px;font-size:19px;line-height:1.15;color:#0b1120}.st-offer p{margin:0;color:#626c7f;font-size:14px;line-height:1.62}
.st-cta{background:#02070e;color:#fff;padding:42px 0 56px}.st-cta-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:30px;background:linear-gradient(135deg,rgba(12,22,38,.92),rgba(6,12,22,.94));box-shadow:0 22px 46px rgba(0,0,0,.28)}.st-cta h2{font-size:clamp(26px,2.7vw,38px);line-height:1.05;letter-spacing:-.045em;margin:8px 0 12px;color:#fff}.st-cta p{margin:0;color:#b4bfd1;font-size:15px;line-height:1.7;max-width:760px}.st-cta .eyebrow{color:#8fa3ff}
@media(max-width:980px){.impression-usecases-grid,.st-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.impression-file-guide-wrap,.st-intro-grid,.impression-subcontract-teaser-wrap,.st-cta-wrap{grid-template-columns:1fr}.impression-subcontract-teaser-wrap .btn,.st-cta-wrap .btn{justify-self:start}.st-service-grid,.st-offer-grid{grid-template-columns:1fr}.st-service-card{min-height:220px}}
@media(max-width:640px){.impression-usecases-grid,.impression-file-guide-list,.st-steps{grid-template-columns:1fr}.impression-file-guide-wrap,.impression-subcontract-teaser-wrap,.st-cta-wrap,.st-intro-card{padding:22px}.st-intro,.st-dark,.st-how,.st-offers{padding:34px 0}.page-hero h1{font-size:40px}}


/* V69 - Impression : enrichissement de la section "Impression à votre image" */
.impression-supports--v69{
  padding:44px 0 40px;
}
.impression-supports--v69 .container,
.impression-supports-wrap--v69{
  width:min(1080px,calc(100% - 56px));
  margin-inline:auto;
}
.impression-supports--v69 .impression-supports-grid--v43{
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(0,670px);
  gap:40px;
  align-items:start;
  justify-content:space-between;
}
.impression-supports--v69 .supports-copy--v43{
  max-width:360px;
  padding-top:6px;
}
.impression-supports--v69 .supports-copy--v43 h2{
  font-size:clamp(28px,2.55vw,38px);
  line-height:1.06;
  letter-spacing:-.045em;
  max-width:350px;
  margin:0 0 16px;
}
.impression-supports--v69 .supports-copy--v43 p{
  font-size:14.5px;
  line-height:1.72;
  max-width:350px;
  color:#637083;
}
.impression-supports--v69 .supports-moodboard--v43 img{
  max-width:670px;
  width:100%;
  border-radius:6px;
}
.supports-info-cards--v69{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:26px;
}
.supports-info-card{
  background:#fff;
  border:1px solid #e4eaf3;
  border-radius:22px;
  padding:24px 24px 25px;
  box-shadow:0 18px 38px rgba(15,23,42,.06);
}
.supports-info-card--highlight{
  background:linear-gradient(180deg,#fff,#f8faff);
  border-color:#dfe7ff;
}
.supports-info-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:12px;
  padding:6px 10px;
  border-radius:999px;
  background:#eef3ff;
  color:#3157ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.supports-info-card h3{
  margin:0 0 10px;
  color:#0b1120;
  font-size:20px;
  line-height:1.15;
  letter-spacing:-.03em;
}
.supports-info-card p{
  margin:0;
  color:#626c7f;
  font-size:14px;
  line-height:1.68;
}
@media(max-width:1100px){
  .impression-supports--v69 .impression-supports-grid--v43{
    grid-template-columns:minmax(260px,330px) minmax(0,1fr);
    gap:28px;
  }
  .impression-supports--v69 .supports-copy--v43,
  .impression-supports--v69 .supports-copy--v43 h2,
  .impression-supports--v69 .supports-copy--v43 p{
    max-width:330px;
  }
  .impression-supports--v69 .supports-moodboard--v43 img{
    max-width:100%;
  }
}
@media(max-width:900px){
  .impression-supports--v69 .container,
  .impression-supports-wrap--v69{
    width:min(100% - 28px,1080px);
  }
  .impression-supports--v69 .impression-supports-grid--v43,
  .supports-info-cards--v69{
    grid-template-columns:1fr;
  }
  .impression-supports--v69 .supports-copy--v43,
  .impression-supports--v69 .supports-copy--v43 h2,
  .impression-supports--v69 .supports-copy--v43 p{
    max-width:none;
  }
}


/* V72 - Info card icons, sub-text and tier badges */
.supports-info-card-icon{
  width:46px;
  height:46px;
  border-radius:50%;
  background:#eef3ff;
  display:grid;
  place-items:center;
  color:#3157ff;
  margin-bottom:14px;
  flex:0 0 auto;
}
.supports-info-card-icon svg{
  width:22px;
  height:22px;
  display:block;
}
.supports-info-card--highlight .supports-info-card-icon{
  background:rgba(49,87,255,.12);
}
.supports-info-card-sub{
  display:flex;
  align-items:flex-start;
  gap:7px;
  color:#637083;
  font-size:13.5px;
  line-height:1.62;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #eaeef6;
}
.supports-info-card-sub svg{
  flex:0 0 auto;
  margin-top:2px;
  color:#8da4c8;
}
.supports-tier-badges{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:18px;
}
.tier-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 16px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  letter-spacing:-.01em;
  cursor:default;
}
.tier-badge--eco{
  background:#f0f4ff;
  color:#4b6bff;
  border:1px solid #d6e0ff;
}
.tier-badge--std{
  background:#eef3ff;
  color:#2f50e8;
  border:1px solid #c9d7ff;
}
.tier-badge--prem{
  background:linear-gradient(135deg,#3057ff,#2950f6 50%,#5270ff);
  color:#fff;
  box-shadow:0 8px 20px rgba(49,87,255,.28);
}

/* V70 - Impression: section Notre savoir-faire */
.impression-savoir-faire{
    background:#f7f8fc;
    color:#0b1120;
    padding:48px 0 46px;
    border-top:1px solid #e6ebf4;
}
.impression-savoir-faire-wrap{
    max-width:980px;
}
.impression-savoir-faire-copy{
    max-width:760px;
}
.impression-savoir-faire-copy h2{
    margin:8px 0 18px;
    font-size:clamp(30px,3.8vw,46px);
    line-height:1.05;
    letter-spacing:-.045em;
    color:#0b1120;
}
.impression-savoir-faire-copy p{
    margin:0 0 16px;
    color:#4f5b6d;
    font-size:16px;
    line-height:1.68;
}
.impression-technique-pills{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:24px;
}
.technique-pill{
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:13px 16px;
    border:1px solid #dce3ef;
    border-radius:9px;
    background:#fff;
    color:#303849;
    font-weight:850;
    font-size:14px;
    box-shadow:0 8px 20px rgba(10,18,32,.045);
    text-align:center;
}
.technique-pill-icon{
    display:inline-grid;
    place-items:center;
    width:24px;
    height:24px;
    color:#556176;
    font-weight:900;
    flex:0 0 auto;
}
@media(max-width:860px){
    .impression-technique-pills{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
    .impression-savoir-faire{padding:38px 0;}
    .impression-technique-pills{grid-template-columns:1fr;}
    .technique-pill{justify-content:flex-start;text-align:left;}
}




/* V72 - Impression savoir-faire + DTF, fidèle au mockup */
.impression-sf-dtf-v72{
  background:#f6f8fc;
  padding:18px 0 40px;
}
.impression-sf-dtf-wrap-v72{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(400px,.88fr);
  gap:24px;
  align-items:stretch;
}
.sf-panel{
  border-radius:22px;
  overflow:hidden;
}
.sf-panel--light{
  background:#fff;
  border:1px solid #e3e9f3;
  box-shadow:0 18px 40px rgba(15,23,42,.06);
  padding:34px 32px 28px;
}
.sf-panel--light h2{
  margin:8px 0 18px;
  color:#0b1120;
  font-size:clamp(34px,3.2vw,56px);
  line-height:1.02;
  letter-spacing:-.055em;
}
.sf-panel--light h2:after{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-top:13px;
  border-radius:999px;
  background:#3157ff;
}
.sf-panel--light p{
  margin:0 0 12px;
  color:#556173;
  font-size:16px;
  line-height:1.62;
  max-width:760px;
}
.sf-tech-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:22px;
}
.sf-tech-card{
  min-height:108px;
  background:#fff;
  border:1px solid #dfe6f1;
  border-radius:14px;
  box-shadow:0 10px 24px rgba(15,23,42,.035);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 12px;
  text-align:center;
}
.sf-tech-icon{
  width:34px;
  height:34px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:30px 30px;
  flex:0 0 auto;
}
.sf-tech-label{
  color:#162033;
  font-size:14px;
  line-height:1.18;
  font-weight:850;
}
.sf-panel--dark{
  position:relative;
  min-height:100%;
  display:grid;
  grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);
  background:#02070e;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 20px 42px rgba(15,23,42,.14);
}
.sf-panel--dark:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 16% 16%,rgba(49,87,255,.18),transparent 34%);
  pointer-events:none;
}
.sf-dtf-copy{
  position:relative;
  z-index:2;
  padding:32px 28px 30px 34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:linear-gradient(90deg,rgba(2,7,14,.96) 0%,rgba(2,7,14,.90) 74%,rgba(2,7,14,.56) 100%);
}
.sf-dtf-star{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#86a0ff;
  background:rgba(49,87,255,.14);
  border:1px solid rgba(134,160,255,.46);
  margin-bottom:18px;
  font-size:18px;
}
.sf-dtf-title{
  color:#4e73ff;
  font-size:22px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.03em;
}
.sf-dtf-copy h3{
  margin:2px 0 18px;
  color:#fff;
  font-size:clamp(44px,4.2vw,62px);
  line-height:.92;
  letter-spacing:-.065em;
}
.sf-dtf-copy h3:after{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-top:12px;
  border-radius:999px;
  background:#3157ff;
}
.sf-dtf-list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:#f1f5ff;
  font-size:15px;
  line-height:1.38;
}
.sf-dtf-list li{
  position:relative;
  padding-left:28px;
}
.sf-dtf-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:18px;
  height:18px;
  border-radius:50%;
  border:1px solid #3157ff;
  color:#5f7cff;
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:900;
}
.sf-dtf-media{
  position:relative;
  overflow:hidden;
  min-height:100%;
}
.sf-dtf-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.sf-tech-icon--printer{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M7%208V4h10v4%27/%3E%3Crect%20x%3D%275%27%20y%3D%278%27%20width%3D%2714%27%20height%3D%278%27%20rx%3D%272%27/%3E%3Cpath%20d%3D%27M8%2012h8%27/%3E%3Cpath%20d%3D%27M8%2016v4h8v-4%27/%3E%3C/svg%3E");}
.sf-tech-icon--screen{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274%27%20y%3D%275%27%20width%3D%2716%27%20height%3D%2714%27%20rx%3D%271.5%27/%3E%3Crect%20x%3D%277%27%20y%3D%278%27%20width%3D%2710%27%20height%3D%278%27%20rx%3D%271%27/%3E%3Cpath%20d%3D%27M9%2020h6%27/%3E%3C/svg%3E");}
.sf-tech-icon--drop{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203c3%204%206%207.2%206%2011a6%206%200%200%201-12%200c0-3.8%203-7%206-11z%27/%3E%3C/svg%3E");}
.sf-tech-icon--roll{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274%27%20y%3D%279%27%20width%3D%279%27%20height%3D%276%27%20rx%3D%273%27/%3E%3Cpath%20d%3D%27M13%2012h4%27/%3E%3Cpath%20d%3D%27M17%2010.2%2020%209v6l-3-1.2%27/%3E%3C/svg%3E");}
.sf-tech-icon--grid{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274%27%20y%3D%274%27%20width%3D%276%27%20height%3D%276%27%20rx%3D%271%27/%3E%3Crect%20x%3D%2714%27%20y%3D%274%27%20width%3D%276%27%20height%3D%276%27%20rx%3D%271%27/%3E%3Crect%20x%3D%274%27%20y%3D%2714%27%20width%3D%276%27%20height%3D%276%27%20rx%3D%271%27/%3E%3Crect%20x%3D%2714%27%20y%3D%2714%27%20width%3D%276%27%20height%3D%276%27%20rx%3D%271%27/%3E%3C/svg%3E");}
.sf-tech-icon--squeegee{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%233157ff%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M5%2018%2018%205%27/%3E%3Cpath%20d%3D%27M11%205h8v8%27/%3E%3Cpath%20d%3D%27M5%2018h8%27/%3E%3C/svg%3E");}
@media(max-width:1080px){
  .impression-sf-dtf-wrap-v72{grid-template-columns:1fr;}
  .sf-panel--dark{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:430px;}
}
@media(max-width:760px){
  .impression-sf-dtf-v72{padding:16px 0 30px;}
  .sf-panel--light{padding:28px 20px 22px;border-radius:18px;}
  .sf-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sf-panel--dark{grid-template-columns:1fr;border-radius:18px;}
  .sf-dtf-copy{padding:28px 22px 20px;}
  .sf-dtf-media{min-height:280px;}
}
@media(max-width:480px){
  .sf-tech-grid{grid-template-columns:1fr;}
}


/* V75 - Page Impression reproduite sur le mockup fourni */
.makit-impression-exact{background:#f6f8fc;color:#101624;overflow:hidden;}
.makit-impression-exact .mi-container{width:min(1710px,calc(100% - 128px));margin-inline:auto;}
.makit-impression-exact .mi-eyebrow{display:inline-block;margin:0 0 22px;color:#3157ff;text-transform:uppercase;letter-spacing:.18em;font-size:15px;line-height:1;font-weight:900;}
.makit-impression-exact .mi-title-line{display:block;width:64px;height:4px;border-radius:99px;background:#3157ff;margin:20px 0 30px;}
.mi-hero{background:#f6f8fc;padding:62px 0 28px;}
.mi-hero-grid{display:grid;grid-template-columns:minmax(410px,610px) minmax(0,1fr);gap:72px;align-items:center;}
.mi-hero-copy{padding-top:16px;}
.mi-hero-copy h1{margin:0;color:#101624;font-size:clamp(54px,4.25vw,76px);line-height:1.055;letter-spacing:-.06em;font-weight:950;}
.mi-hero-copy p{margin:0 0 28px;color:#5a6475;font-size:20px;line-height:1.64;max-width:610px;letter-spacing:-.01em;}
.mi-hero-copy p:last-child{margin-bottom:0;}
.mi-hero-media{border-radius:9px;overflow:hidden;align-self:stretch;min-height:445px;background:#eef1f6;display:flex;box-shadow:0 14px 36px rgba(15,23,42,.06);}
.mi-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.mi-info{background:#f6f8fc;padding:0 0 28px;}
.mi-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.mi-info-card{min-height:282px;background:#fff;border:1px solid #e1e7f0;border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.055);display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;padding:44px 42px;}
.mi-info-card-delay{background:linear-gradient(180deg,#fff,#fbfcff);}
.mi-info-icon{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:#edf3ff;color:#3157ff;}
.mi-info-card-ref .mi-info-icon{color:#101624;background:#eef3ff;}
.mi-info-icon svg{width:70px;height:70px;display:block;}
.mi-info-card h2{margin:0 0 16px;color:#101624;font-size:25px;line-height:1.12;letter-spacing:-.035em;font-weight:900;}
.mi-info-card p{margin:0 0 15px;color:#535e70;font-size:17px;line-height:1.55;letter-spacing:-.01em;}
.mi-info-card p:last-child{margin-bottom:0;}
.mi-delay-note{display:grid;grid-template-columns:40px minmax(0,1fr);gap:18px;align-items:center;margin-top:26px;color:#535e70;font-size:17px;line-height:1.55;}
.mi-delay-note svg{width:36px;height:36px;color:#3157ff;}
.mi-badges{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:14px;}
.mi-badges span{min-width:150px;text-align:center;padding:10px 18px;border-radius:999px;background:#e9efff;color:#3157ff;font-size:17px;font-weight:850;line-height:1;}
.mi-badges .active{background:#3157ff;color:#fff;box-shadow:0 12px 24px rgba(49,87,255,.24);}
.mi-savoir{background:#f6f8fc;padding:0 0 62px;}
.mi-savoir-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(560px,.85fr);gap:20px;align-items:stretch;}
.mi-savoir-left{background:#fff;border:1px solid #e1e7f0;border-radius:18px;padding:38px 38px 34px;box-shadow:0 18px 45px rgba(15,23,42,.05);}
.mi-savoir-left h2{margin:0;color:#101624;font-size:clamp(36px,3.15vw,52px);line-height:1.05;letter-spacing:-.055em;font-weight:950;}
.mi-savoir-left .mi-title-line{margin:14px 0 24px;width:58px;height:4px;}
.mi-savoir-left p{margin:0 0 18px;color:#404b5e;font-size:17px;line-height:1.58;max-width:880px;}
.mi-tech-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:26px;}
.mi-tech{min-height:125px;border:1px solid #dce4ef;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px 8px;box-shadow:0 8px 22px rgba(15,23,42,.035);}
.mi-tech strong{color:#101624;font-size:15px;line-height:1.2;font-weight:900;}
.mi-tech-ico{width:44px;height:44px;margin-bottom:13px;background-position:center;background-repeat:no-repeat;background-size:42px 42px;}
.mi-tech-ico.printer{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 23V9h28v14'/%3E%3Cpath d='M16 45H9V24h46v21h-7'/%3E%3Cpath d='M19 38h26v17H19z'/%3E%3Cpath d='M19 16h26M19 45h26'/%3E%3C/svg%3E");}
.mi-tech-ico.screen{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='10' y='13' width='44' height='34' rx='2'/%3E%3Crect x='17' y='20' width='30' height='20' rx='2'/%3E%3Cpath d='M22 52h20'/%3E%3C/svg%3E");}
.mi-tech-ico.drop{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 8c8 10 15 19 15 30a15 15 0 0 1-30 0C17 27 24 18 32 8z'/%3E%3C/svg%3E");}
.mi-tech-ico.roll{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='10' y='25' width='25' height='16' rx='8'/%3E%3Cpath d='M35 33h11M46 28l9-3v18l-9-3z'/%3E%3C/svg%3E");}
.mi-tech-ico.grid{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='12' y='12' width='15' height='15' rx='2'/%3E%3Crect x='37' y='12' width='15' height='15' rx='2'/%3E%3Crect x='12' y='37' width='15' height='15' rx='2'/%3E%3Crect x='37' y='37' width='15' height='15' rx='2'/%3E%3C/svg%3E");}
.mi-tech-ico.squeegee{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%233157ff' stroke-width='3.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 50 50 14M32 14h18v18M14 50h20'/%3E%3C/svg%3E");}
.mi-dtf-card{position:relative;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1fr);border-radius:18px;overflow:hidden;background:#02070e;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 45px rgba(15,23,42,.12);min-height:420px;}
.mi-dtf-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 17% 13%,rgba(49,87,255,.20),transparent 30%);z-index:1;pointer-events:none;}
.mi-dtf-copy{position:relative;z-index:3;padding:44px 22px 40px 44px;background:linear-gradient(90deg,rgba(2,7,14,.98) 0%,rgba(2,7,14,.94) 75%,rgba(2,7,14,.70) 100%);display:flex;flex-direction:column;justify-content:center;}
.mi-star{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#7d98ff;background:rgba(49,87,255,.12);border:1px solid rgba(125,152,255,.45);font-size:18px;margin-bottom:26px;}
.mi-dtf-kicker{margin:0 0 4px;color:#4b6bff;font-weight:900;font-size:27px;line-height:1.05;letter-spacing:-.04em;}
.mi-dtf-copy h3{margin:0;color:#fff;font-size:50px;line-height:.92;letter-spacing:-.065em;font-weight:950;}
.mi-dtf-copy .mi-title-line{width:56px;height:4px;margin:18px 0 24px;}
.mi-dtf-copy ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;color:#f4f7ff;font-size:17px;line-height:1.28;}
.mi-dtf-copy li{position:relative;padding-left:28px;}
.mi-dtf-copy li:before{content:"✓";position:absolute;left:0;top:1px;width:17px;height:17px;border:1.5px solid #3157ff;border-radius:50%;display:grid;place-items:center;color:#3157ff;font-size:11px;font-weight:900;}
.mi-dtf-image{position:relative;z-index:2;min-height:100%;overflow:hidden;}
.mi-dtf-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
@media(max-width:1320px){.makit-impression-exact .mi-container{width:min(1180px,calc(100% - 56px));}.mi-hero-grid{grid-template-columns:minmax(320px,470px) minmax(0,1fr);gap:44px}.mi-hero-copy h1{font-size:52px}.mi-hero-copy p{font-size:16px}.mi-hero-media{min-height:330px}.mi-info-card{grid-template-columns:110px 1fr;min-height:230px;padding:30px 28px}.mi-info-icon{width:90px;height:90px}.mi-info-icon svg{width:58px;height:58px}.mi-info-card h2{font-size:22px}.mi-info-card p,.mi-delay-note{font-size:15px}.mi-badges span{min-width:120px;font-size:14px}.mi-savoir-grid{grid-template-columns:minmax(0,1.1fr) minmax(440px,.9fr)}.mi-tech-grid{grid-template-columns:repeat(3,1fr)}.mi-dtf-card{grid-template-columns:minmax(260px,.85fr) minmax(0,1fr)}}
@media(max-width:980px){.makit-impression-exact .mi-container{width:min(100% - 28px,760px)}.mi-hero{padding:38px 0 24px}.mi-hero-grid,.mi-info-grid,.mi-savoir-grid{grid-template-columns:1fr;gap:20px}.mi-hero-media{min-height:auto}.mi-info-card{grid-template-columns:92px 1fr;padding:26px 22px;min-height:auto}.mi-savoir-left{padding:30px 22px}.mi-dtf-card{grid-template-columns:1fr;}.mi-dtf-copy{padding:32px 24px}.mi-dtf-image{min-height:300px}.mi-tech-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.mi-hero-copy h1{font-size:39px}.mi-hero-copy p{font-size:15px;line-height:1.6}.mi-info-card{display:block}.mi-info-icon{margin-bottom:18px}.mi-delay-note{grid-template-columns:30px 1fr;gap:12px}.mi-badges{justify-content:flex-start}.mi-badges span{min-width:0;flex:1 1 auto}.mi-tech-grid{grid-template-columns:1fr}.mi-dtf-kicker{font-size:23px}.mi-dtf-copy h3{font-size:44px}}


/* v76 - Ajustements page Impression demandés */
.makit-impression-exact .page-hero{margin-bottom:0;}
.makit-impression-exact .mi-hero{padding-top:62px;}
.makit-impression-exact .mi-info-card{grid-template-columns:104px minmax(0,1fr);gap:26px;}
.makit-impression-exact .mi-info-icon{width:74px;height:74px;}
.makit-impression-exact .mi-info-icon svg{width:42px;height:42px;}
.makit-impression-exact .mi-delay-note svg{width:30px;height:30px;}
.makit-impression-exact .mi-badges{justify-content:center;margin:18px auto 0;width:100%;}
.makit-impression-exact .mi-badges span{min-width:145px;}
.makit-impression-exact .mi-savoir-grid{grid-template-columns:1fr;gap:20px;}
.makit-impression-exact .mi-savoir-left{width:100%;}
.makit-impression-exact .mi-dtf-card{width:100%;grid-template-columns:minmax(390px,.42fr) minmax(0,1fr);min-height:420px;}
.makit-impression-exact .mi-dtf-image img{object-position:center 44%;}
@media(max-width:1320px){
  .makit-impression-exact .mi-info-card{grid-template-columns:82px minmax(0,1fr);}
  .makit-impression-exact .mi-info-icon{width:66px;height:66px;}
  .makit-impression-exact .mi-info-icon svg{width:37px;height:37px;}
  .makit-impression-exact .mi-badges span{min-width:118px;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(330px,.42fr) minmax(0,1fr);}
}
@media(max-width:980px){
  .makit-impression-exact .mi-info-card{grid-template-columns:76px minmax(0,1fr);}
  .makit-impression-exact .mi-info-icon{width:62px;height:62px;}
  .makit-impression-exact .mi-info-icon svg{width:34px;height:34px;}
  .makit-impression-exact .mi-badges{justify-content:center;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .makit-impression-exact .mi-info-card{display:block;}
  .makit-impression-exact .mi-info-icon{margin-bottom:16px;}
  .makit-impression-exact .mi-badges span{min-width:0;}
}

/* v77 - Ajustements demandés : hero, colonne textile, savoir-faire */
.makit-impression-exact .page-hero h1{
  color:#fff !important;
  text-shadow:0 12px 34px rgba(0,0,0,.38);
}
.makit-impression-exact .page-hero p{color:#eef4ff;}
.makit-impression-exact .page-hero .btn.ghost{color:#dfe7f7;}

.makit-impression-exact .mi-hero-copy h1{
  font-size:clamp(42px,3.65vw,66px);
  line-height:1.08;
  letter-spacing:-.025em;
  max-width:570px;
}
.makit-impression-exact .mi-hero-copy p{
  max-width:610px;
  text-align:left;
  line-height:1.72;
}

.makit-impression-exact .mi-savoir-left{
  min-height:500px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(430px,.78fr);
  grid-template-rows:auto auto auto auto 1fr;
  column-gap:72px;
  align-items:center;
  padding:48px 44px;
}
.makit-impression-exact .mi-savoir-left > .mi-eyebrow,
.makit-impression-exact .mi-savoir-left > h2,
.makit-impression-exact .mi-savoir-left > .mi-title-line,
.makit-impression-exact .mi-savoir-left > p{
  grid-column:1;
}
.makit-impression-exact .mi-savoir-left > .mi-eyebrow{align-self:end;margin-bottom:18px;}
.makit-impression-exact .mi-savoir-left > h2{align-self:end;}
.makit-impression-exact .mi-savoir-left > .mi-title-line{align-self:start;}
.makit-impression-exact .mi-savoir-left > p{
  max-width:820px;
  text-align:left;
  align-self:start;
}
.makit-impression-exact .mi-tech-grid{
  grid-column:2;
  grid-row:1 / -1;
  align-self:center;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:0;
}
.makit-impression-exact .mi-tech{
  min-height:132px;
  padding:18px 12px;
}
.makit-impression-exact .mi-tech-ico{
  width:40px;
  height:40px;
  background-size:38px 38px;
  margin-bottom:12px;
}

@media(max-width:1320px){
  .makit-impression-exact .mi-hero-copy h1{font-size:clamp(40px,4vw,56px);max-width:500px;}
  .makit-impression-exact .mi-savoir-left{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);column-gap:40px;padding:38px 34px;}
  .makit-impression-exact .mi-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .makit-impression-exact .mi-tech{min-height:118px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-savoir-left{display:block;min-height:0;padding:30px 22px;}
  .makit-impression-exact .mi-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:26px;}
}
@media(max-width:560px){
  .makit-impression-exact .mi-hero-copy h1{font-size:37px;}
  .makit-impression-exact .mi-tech-grid{grid-template-columns:1fr;}
}

/* v78 - Ajustements savoir-faire : icônes en 3 colonnes + carte moins haute */
.makit-impression-exact .mi-savoir-left{
  min-height:0;
  grid-template-columns:minmax(0,1fr) minmax(560px,680px);
  column-gap:52px;
  align-items:center;
  padding:34px 38px 32px;
}
.makit-impression-exact .mi-savoir-left > .mi-eyebrow{
  margin-bottom:14px;
}
.makit-impression-exact .mi-savoir-left > p{
  max-width:820px;
  line-height:1.55;
  margin-bottom:14px;
}
.makit-impression-exact .mi-tech-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  max-width:680px;
  justify-self:end;
}
.makit-impression-exact .mi-tech{
  min-height:104px;
  padding:12px 10px;
}
.makit-impression-exact .mi-tech-ico{
  width:34px;
  height:34px;
  background-size:32px 32px;
  margin-bottom:9px;
}
.makit-impression-exact .mi-tech strong{
  font-size:14px;
  line-height:1.16;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-savoir-left{
    grid-template-columns:minmax(0,1fr) minmax(480px,600px);
    column-gap:34px;
    padding:32px 30px;
  }
  .makit-impression-exact .mi-tech-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    max-width:600px;
  }
  .makit-impression-exact .mi-tech{min-height:96px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-savoir-left{display:block;padding:30px 22px;}
  .makit-impression-exact .mi-tech-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:none;
    margin-top:24px;
  }
}
@media(max-width:700px){
  .makit-impression-exact .mi-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:460px){
  .makit-impression-exact .mi-tech-grid{grid-template-columns:1fr;}
}

/* v79 - Ajustements demandés : grille techniques pleine largeur + carte DTF moins haute */
.makit-impression-exact .mi-savoir-left{
  grid-template-columns:minmax(0,1fr) minmax(720px,1fr);
  column-gap:54px;
  padding:32px 38px;
  align-items:center;
}
.makit-impression-exact .mi-tech-grid{
  width:100%;
  max-width:none;
  justify-self:stretch;
  align-self:stretch;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:1fr;
  gap:14px;
}
.makit-impression-exact .mi-tech{
  min-height:124px;
  height:100%;
  padding:16px 14px;
}
.makit-impression-exact .mi-tech-ico{
  width:38px;
  height:38px;
  background-size:36px 36px;
  margin-bottom:10px;
}
.makit-impression-exact .mi-tech strong{
  font-size:15px;
  line-height:1.12;
}
.makit-impression-exact .mi-dtf-card{
  min-height:320px;
  grid-template-columns:minmax(330px,.34fr) minmax(0,1fr);
}
.makit-impression-exact .mi-dtf-copy{
  padding:30px 22px 30px 38px;
}
.makit-impression-exact .mi-dtf-kicker{
  font-size:24px;
}
.makit-impression-exact .mi-dtf-copy h3{
  font-size:44px;
}
.makit-impression-exact .mi-dtf-copy .mi-title-line{
  margin:14px 0 18px;
}
.makit-impression-exact .mi-dtf-copy ul{
  gap:8px;
  font-size:15px;
}
.makit-impression-exact .mi-dtf-image{
  min-height:320px;
}
.makit-impression-exact .mi-dtf-image img{
  max-height:320px;
  object-fit:cover;
  object-position:center 46%;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-savoir-left{
    grid-template-columns:minmax(0,1fr) minmax(560px,.95fr);
    column-gap:34px;
  }
  .makit-impression-exact .mi-tech{min-height:112px;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(300px,.38fr) minmax(0,1fr);min-height:310px;}
  .makit-impression-exact .mi-dtf-image{min-height:310px;}
  .makit-impression-exact .mi-dtf-image img{max-height:310px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-savoir-left{display:block;padding:30px 22px;}
  .makit-impression-exact .mi-tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;}
  .makit-impression-exact .mi-tech{min-height:105px;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:260px;max-height:none;}
}
@media(max-width:700px){
  .makit-impression-exact .mi-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:460px){
  .makit-impression-exact .mi-tech-grid{grid-template-columns:1fr;}
}

/* v80 - Alignement largeur globale + ajustement DTF */
.makit-impression-exact .mi-container{
  width:min(var(--max), calc(100% - 48px));
  margin-inline:auto;
}
.makit-impression-exact .mi-hero-grid{
  grid-template-columns:minmax(0, 430px) minmax(0, 1fr);
  gap:46px;
}
.makit-impression-exact .mi-hero-copy h1{
  font-size:clamp(38px, 3.1vw, 54px);
  line-height:1.08;
  max-width:420px;
}
.makit-impression-exact .mi-hero-copy p{
  max-width:420px;
  font-size:16px;
  line-height:1.72;
}
.makit-impression-exact .mi-hero-media{
  min-height:390px;
}
.makit-impression-exact .mi-info-card{
  padding:32px 32px;
}
.makit-impression-exact .mi-savoir-left{
  grid-template-columns:minmax(0, 1fr) minmax(470px, .95fr);
  column-gap:42px;
  padding:30px 34px;
}
.makit-impression-exact .mi-tech-grid{
  gap:14px;
}
.makit-impression-exact .mi-tech{
  min-height:122px;
}
.makit-impression-exact .mi-dtf-card{
  grid-template-columns:minmax(390px, .42fr) minmax(0, 1fr);
  min-height:360px;
  max-height:none;
}
.makit-impression-exact .mi-dtf-copy{
  padding:34px 34px 34px 40px;
  justify-content:center;
}
.makit-impression-exact .mi-dtf-copy ul{
  font-size:15px;
  line-height:1.35;
}
.makit-impression-exact .mi-dtf-image{
  min-height:360px;
}
.makit-impression-exact .mi-dtf-image img{
  width:100%;
  height:100%;
  min-height:360px;
  max-height:none;
  object-fit:cover;
  object-position:center 52%;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-hero-grid{grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:36px;}
  .makit-impression-exact .mi-savoir-left{grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);column-gap:30px;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(360px,.43fr) minmax(0,1fr);min-height:340px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:340px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-container{width:min(100% - 28px,760px);}
  .makit-impression-exact .mi-hero-grid{grid-template-columns:1fr;}
  .makit-impression-exact .mi-hero-copy h1,
  .makit-impression-exact .mi-hero-copy p{max-width:none;}
  .makit-impression-exact .mi-hero-media{min-height:auto;}
  .makit-impression-exact .mi-savoir-left{display:block;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:300px;}
}


/* v81 - ajustements hero / cartes infos / DTF */
.makit-impression-exact .mi-hero-grid{
  grid-template-columns:minmax(0, 500px) minmax(0, 1fr);
  gap:42px;
  align-items:center;
}
.makit-impression-exact .mi-hero-copy h1{
  max-width:520px;
  font-size:clamp(40px, 3.5vw, 58px);
  line-height:1.03;
  letter-spacing:-.045em;
}
.makit-impression-exact .mi-hero-copy p{
  max-width:500px;
}
.makit-impression-exact .mi-hero-media{
  min-height:0;
  max-width:740px;
  justify-self:end;
  background:transparent;
  box-shadow:none;
}
.makit-impression-exact .mi-hero-media img{
  width:100%;
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center;
}

.makit-impression-exact .mi-info-grid{
  gap:16px;
}
.makit-impression-exact .mi-info-card{
  min-height:228px;
  padding:24px 28px;
  grid-template-columns:72px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.makit-impression-exact .mi-info-icon{
  width:58px;
  height:58px;
}
.makit-impression-exact .mi-info-icon svg{
  width:30px;
  height:30px;
}
.makit-impression-exact .mi-info-card h2{
  margin-bottom:12px;
  font-size:22px;
  line-height:1.08;
}
.makit-impression-exact .mi-info-card p,
.makit-impression-exact .mi-note-text{
  margin:0 0 12px;
  color:#535e70;
  font-size:16px;
  line-height:1.48;
}
.makit-impression-exact .mi-note-text{
  margin-top:10px;
  margin-bottom:0;
}
.makit-impression-exact .mi-delay-note{display:none;}
.makit-impression-exact .mi-badges{
  justify-content:center;
  flex-wrap:nowrap;
  gap:8px;
  width:100%;
  max-width:430px;
  margin-top:14px;
}
.makit-impression-exact .mi-badges span{
  min-width:0;
  flex:1 1 0;
  white-space:nowrap;
  padding:10px 12px;
  font-size:15px;
}

.makit-impression-exact .mi-star{display:none;}
.makit-impression-exact .mi-dtf-card{
  min-height:300px;
  grid-template-columns:minmax(360px, .42fr) minmax(0, 1fr);
}
.makit-impression-exact .mi-dtf-copy{
  padding:28px 28px 28px 34px;
}
.makit-impression-exact .mi-dtf-kicker{
  font-size:22px;
}
.makit-impression-exact .mi-dtf-copy h3{
  font-size:42px;
}
.makit-impression-exact .mi-dtf-copy .mi-title-line{
  margin:12px 0 16px;
}
.makit-impression-exact .mi-dtf-copy ul{
  gap:7px;
  font-size:15px;
  line-height:1.32;
}
.makit-impression-exact .mi-dtf-image{
  min-height:300px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#050b14;
}
.makit-impression-exact .mi-dtf-image img{
  width:100%;
  height:100%;
  min-height:300px;
  object-fit:contain;
  object-position:center;
}

@media(max-width:1320px){
  .makit-impression-exact .mi-hero-grid{grid-template-columns:minmax(0, 460px) minmax(0,1fr);gap:34px;}
  .makit-impression-exact .mi-hero-copy h1{max-width:480px;font-size:clamp(38px, 3.35vw, 52px);}  
  .makit-impression-exact .mi-hero-copy p{max-width:460px;}
  .makit-impression-exact .mi-info-card{padding:22px 24px;grid-template-columns:64px minmax(0,1fr);}
  .makit-impression-exact .mi-info-icon{width:54px;height:54px;}
  .makit-impression-exact .mi-info-icon svg{width:28px;height:28px;}
  .makit-impression-exact .mi-badges{max-width:390px;}
  .makit-impression-exact .mi-badges span{font-size:14px;padding:10px 10px;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(320px,.44fr) minmax(0,1fr);min-height:290px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:290px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-hero-grid{grid-template-columns:1fr;}
  .makit-impression-exact .mi-hero-copy h1,
  .makit-impression-exact .mi-hero-copy p{max-width:none;}
  .makit-impression-exact .mi-hero-media{max-width:none;}
  .makit-impression-exact .mi-info-card{grid-template-columns:60px minmax(0,1fr);min-height:0;}
  .makit-impression-exact .mi-info-icon{width:50px;height:50px;}
  .makit-impression-exact .mi-info-icon svg{width:26px;height:26px;}
  .makit-impression-exact .mi-badges{max-width:none;}
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:260px;}
}
@media(max-width:700px){
  .makit-impression-exact .mi-badges{flex-wrap:wrap;}
}
@media(max-width:560px){
  .makit-impression-exact .mi-info-card{display:block;padding:22px 20px;}
  .makit-impression-exact .mi-info-icon{margin-bottom:14px;}
}


/* v82 - DTF card refined: less height, stronger title, larger benefits */
.makit-impression-exact .mi-dtf-card{
  min-height:272px;
  grid-template-columns:minmax(385px,.43fr) minmax(0,1fr);
}
.makit-impression-exact .mi-dtf-copy{
  padding:24px 28px 24px 34px;
}
.makit-impression-exact .mi-dtf-kicker{
  font-size:23px;
  margin-bottom:2px;
}
.makit-impression-exact .mi-dtf-copy h3{
  font-size:54px;
  line-height:.94;
  letter-spacing:.02em;
}
.makit-impression-exact .mi-dtf-copy .mi-title-line{
  margin:12px 0 18px;
}
.makit-impression-exact .mi-dtf-copy ul{
  gap:10px;
  font-size:17px;
  line-height:1.42;
}
.makit-impression-exact .mi-dtf-copy li{
  padding-left:31px;
}
.makit-impression-exact .mi-dtf-copy li:before{
  top:3px;
  width:18px;
  height:18px;
  font-size:11px;
}
.makit-impression-exact .mi-dtf-image,
.makit-impression-exact .mi-dtf-image img{
  min-height:272px;
}
.makit-impression-exact .mi-dtf-image img{
  object-fit:cover;
  object-position:center 53%;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(340px,.45fr) minmax(0,1fr);min-height:260px;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:48px;}
  .makit-impression-exact .mi-dtf-copy ul{font-size:16px;gap:9px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:260px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-copy{padding:26px 24px;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:46px;}
  .makit-impression-exact .mi-dtf-copy ul{font-size:16px;gap:8px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:240px;}
}
@media(max-width:560px){
  .makit-impression-exact .mi-dtf-copy h3{font-size:40px;}
}


/* v83 - usecases section + dtf crop refinements */
.makit-impression-exact .mi-dtf-image img{
  object-position:center 58%;
}

.impression-usecases-head{
  max-width:980px;
  margin-bottom:26px;
}
.impression-usecases-head h2{
  max-width:980px;
  white-space:nowrap;
}
.impression-usecases-head p{
  max-width:900px;
  font-size:16px;
  line-height:1.7;
}
.impression-usecase-card .usecase-icon{
  display:none;
}
.impression-usecase-card{
  padding:22px 22px 24px;
}
.impression-usecase-card h3{
  margin-top:0;
}

@media(max-width:980px){
  .impression-usecases-head h2{white-space:normal;}
}


/* v84 - DTF block closer to requested mockup */
.makit-impression-exact .mi-dtf-card{
  min-height:246px;
  grid-template-columns:minmax(300px,.31fr) minmax(0,1fr);
}
.makit-impression-exact .mi-dtf-copy{
  padding:26px 26px 26px 34px;
  justify-content:flex-start;
  align-items:flex-start;
}
.makit-impression-exact .mi-dtf-kicker{
  font-size:21px;
  line-height:1.02;
  margin-bottom:4px;
}
.makit-impression-exact .mi-dtf-copy h3{
  font-size:56px;
  line-height:.92;
  letter-spacing:.01em;
  margin-bottom:0;
}
.makit-impression-exact .mi-dtf-copy .mi-title-line{
  width:56px;
  margin:12px 0 16px;
}
.makit-impression-exact .mi-dtf-copy ul{
  gap:10px;
  font-size:16px;
  line-height:1.34;
  margin-top:0;
}
.makit-impression-exact .mi-dtf-copy li{
  padding-left:32px;
}
.makit-impression-exact .mi-dtf-copy li:before{
  top:2px;
  width:18px;
  height:18px;
}
.makit-impression-exact .mi-dtf-image,
.makit-impression-exact .mi-dtf-image img{
  min-height:246px;
}
.makit-impression-exact .mi-dtf-image img{
  object-fit:cover;
  object-position:center 61%;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(280px,.32fr) minmax(0,1fr);min-height:236px;}
  .makit-impression-exact .mi-dtf-copy{padding:24px 22px 24px 28px;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:50px;}
  .makit-impression-exact .mi-dtf-copy ul{font-size:15px;gap:9px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:236px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-copy{padding:24px 24px 18px;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:44px;}
  .makit-impression-exact .mi-dtf-copy ul{font-size:15px;gap:8px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:235px;}
}
@media(max-width:560px){
  .makit-impression-exact .mi-dtf-copy h3{font-size:38px;}
}


/* v85 - reduce DTF image size */
.makit-impression-exact .mi-dtf-card{
  grid-template-columns:minmax(340px,.38fr) minmax(0,.82fr);
  min-height:238px;
}
.makit-impression-exact .mi-dtf-copy{
  padding:24px 24px 24px 32px;
}
.makit-impression-exact .mi-dtf-image{
  min-height:238px;
  padding:16px 24px 16px 8px;
  align-items:center;
  justify-content:center;
}
.makit-impression-exact .mi-dtf-image img{
  width:88%;
  height:auto;
  max-height:206px;
  min-height:0;
  object-fit:contain;
  object-position:center;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(320px,.4fr) minmax(0,.8fr);min-height:230px;}
  .makit-impression-exact .mi-dtf-image{min-height:230px;padding:14px 18px 14px 6px;}
  .makit-impression-exact .mi-dtf-image img{width:86%;max-height:196px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-image{padding:14px 16px 18px;min-height:210px;}
  .makit-impression-exact .mi-dtf-image img{width:100%;max-height:210px;}
}


/* v86 - enlarge DTF image area again + more letter spacing on title */
.makit-impression-exact .mi-dtf-card{
  grid-template-columns:minmax(340px,.34fr) minmax(0,.96fr);
  min-height:244px;
}
.makit-impression-exact .mi-dtf-copy{
  padding:24px 24px 24px 32px;
}
.makit-impression-exact .mi-dtf-kicker{
  font-size:21px;
  letter-spacing:-.01em;
}
.makit-impression-exact .mi-dtf-copy h3{
  font-size:56px;
  letter-spacing:.05em;
  line-height:.9;
}
.makit-impression-exact .mi-dtf-image{
  min-height:244px;
  padding:8px 10px 8px 6px;
  align-items:stretch;
  justify-content:stretch;
}
.makit-impression-exact .mi-dtf-image img{
  width:100%;
  height:100%;
  max-height:none;
  min-height:0;
  object-fit:cover;
  object-position:center 59%;
  border-radius:0;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(320px,.36fr) minmax(0,.94fr);min-height:236px;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:52px;letter-spacing:.045em;}
  .makit-impression-exact .mi-dtf-image{min-height:236px;padding:8px 8px 8px 4px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-copy h3{font-size:46px;letter-spacing:.04em;}
  .makit-impression-exact .mi-dtf-image{padding:0;min-height:220px;}
  .makit-impression-exact .mi-dtf-image img{min-height:220px;}
}


/* v87 - reduce DTF image by ~50% and keep centered */
.makit-impression-exact .mi-dtf-image{
  min-height:244px;
  padding:0;
  align-items:center;
  justify-content:center;
}
.makit-impression-exact .mi-dtf-image img{
  width:50%;
  max-width:50%;
  height:auto;
  max-height:50%;
  min-height:0;
  object-fit:contain;
  object-position:center;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-image img{
    width:50%;
    max-width:50%;
    max-height:50%;
  }
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-image{
    min-height:210px;
    padding:12px 0;
  }
  .makit-impression-exact .mi-dtf-image img{
    width:72%;
    max-width:72%;
    max-height:72%;
  }
}


/* v88 - DTF image enlarged by 30% from previous 50% size */
.makit-impression-exact .mi-dtf-image img{
  width:65%;
  max-width:65%;
  height:auto;
  max-height:65%;
  min-height:0;
  object-fit:contain;
  object-position:center;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-image img{
    width:65%;
    max-width:65%;
    max-height:65%;
  }
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-image img{
    width:82%;
    max-width:82%;
    max-height:82%;
  }
}


/* v89 - full-bleed right image, same height, single-line text */
.makit-impression-exact .mi-dtf-card{
  grid-template-columns:minmax(355px,.40fr) minmax(0,1fr);
  min-height:244px;
}
.makit-impression-exact .mi-dtf-copy{
  padding:24px 22px 24px 32px;
}
.makit-impression-exact .mi-dtf-kicker,
.makit-impression-exact .mi-dtf-copy h3,
.makit-impression-exact .mi-dtf-copy li{
  white-space:nowrap;
}
.makit-impression-exact .mi-dtf-copy h3{
  letter-spacing:.06em;
}
.makit-impression-exact .mi-dtf-copy ul{
  gap:8px;
  font-size:14.5px;
  line-height:1.26;
}
.makit-impression-exact .mi-dtf-image{
  min-height:244px;
  padding:0;
  align-items:stretch;
  justify-content:stretch;
  overflow:hidden;
}
.makit-impression-exact .mi-dtf-image img{
  width:100%;
  max-width:none;
  height:100%;
  max-height:none;
  min-height:244px;
  object-fit:cover;
  object-position:center 60%;
  display:block;
}
@media(max-width:1320px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:minmax(340px,.42fr) minmax(0,1fr);min-height:236px;}
  .makit-impression-exact .mi-dtf-copy ul{font-size:13.8px;gap:7px;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:236px;}
}
@media(max-width:980px){
  .makit-impression-exact .mi-dtf-card{grid-template-columns:1fr;min-height:0;}
  .makit-impression-exact .mi-dtf-copy li{white-space:normal;}
  .makit-impression-exact .mi-dtf-image,
  .makit-impression-exact .mi-dtf-image img{min-height:220px;}
}


/* v90 - restore old DTF expertise block from v68, title adjusted */
.makit-impression-exact .mi-savoir-grid{
  display:block;
}
.makit-impression-exact .mi-savoir-left{
  width:100%;
}
.makit-impression-exact .technique-quality-restored{
  background:#f6f8fc;
  padding:0 0 62px;
}
.makit-impression-exact .technique-quality-restored .container{
  width:min(var(--max), calc(100% - 48px));
  margin-inline:auto;
}
.makit-impression-exact .technique-quality-restored .technique-grid{
  background:#fff;
  border:1px solid #e1e7f0;
  border-radius:18px;
  box-shadow:0 18px 45px rgba(15,23,42,.05);
  padding:34px;
  overflow:hidden;
}
.makit-impression-exact .technique-quality-restored .technique-copy h2{
  letter-spacing:-.045em;
}


/* v91 - cadre/noir autour de la section DTF restaurée */
.makit-impression-exact .technique-quality-restored{
  background:#02070e;
  padding:24px 0 62px;
}
.makit-impression-exact .technique-quality-restored .technique-grid{
  background:#f3f3f3;
  border-color:rgba(255,255,255,.10);
}


/* v92 - retrait du cadre noir autour de la section DTF */
.makit-impression-exact .technique-quality-restored{
  background:#f6f8fc;
  padding:0 0 62px;
}
.makit-impression-exact .technique-quality-restored .technique-grid{
  background:#fff;
  border:1px solid #e1e7f0;
}


/* v93 - retrait du cadre blanc de la section DTF restaurée */
.makit-impression-exact .technique-quality-restored .technique-grid{
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  padding:0;
}
.makit-impression-exact .technique-quality-restored .technique-copy,
.makit-impression-exact .technique-quality-restored .technique-visual{
  background:transparent;
}


/* v96 - CTA impression redesign to match quote/devis mockup */
.impression-project-cta-section--v96{
  background:#f6f8fc;
  padding:22px 0 42px;
}
.impression-project-cta-section--v96 .container{
  width:min(var(--max),calc(100% - 48px));
}
.impression-quote-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px, 48%);
  gap:18px;
  align-items:stretch;
  background:linear-gradient(180deg,#fcfcfe,#f8f9fd);
  border:1px solid #e2e8f3;
  border-radius:28px;
  padding:14px;
  box-shadow:0 22px 48px rgba(15,23,42,.06);
  overflow:hidden;
}
.impression-quote-media{
  min-height:520px;
  border-radius:22px;
  overflow:hidden;
  background:#e9ebf0;
}
.impression-quote-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.impression-quote-panel{
  border:1px solid #e2e8f3;
  border-radius:24px;
  background:linear-gradient(180deg,#fff,#fbfcff);
  padding:14px;
}
.impression-quote-panel-inner{
  height:100%;
  display:flex;
  flex-direction:column;
  padding:22px 26px 18px;
}
.impression-quote-panel .eyebrow{
  margin-bottom:16px;
}
.impression-quote-panel h2{
  margin:0 0 18px;
  color:#0b1636;
  font-size:clamp(38px,3.8vw,58px);
  line-height:1.02;
  letter-spacing:-.055em;
  max-width:560px;
}
.impression-quote-panel p{
  margin:0 0 26px;
  color:#66738a;
  font-size:16px;
  line-height:1.6;
  max-width:560px;
}
.impression-quote-features{
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
.impression-quote-features li{
  display:grid;
  grid-template-columns:50px 1fr;
  gap:14px;
  align-items:center;
  padding:12px 0;
  color:#4f5d75;
  font-size:16px;
  line-height:1.45;
}
.impression-quote-features li+li{
  border-top:1px solid #e8edf5;
}
.iq-icon,
.iq-note-icon{
  width:42px;
  height:42px;
  border-radius:999px;
  background:#eff3ff;
  border:1px solid #e1e8ff;
  position:relative;
  display:inline-block;
}
.iq-icon:before,
.iq-icon:after,
.iq-note-icon:before,
.iq-note-icon:after{
  content:"";
  position:absolute;
}
.iq-icon-search:before{
  width:14px;height:14px;border:2px solid #4b6bff;border-radius:50%;left:11px;top:10px;
}
.iq-icon-search:after{
  width:9px;height:2px;background:#4b6bff;border-radius:2px;transform:rotate(45deg);left:22px;top:24px;
}
.iq-icon-shirt:before{
  left:10px;top:11px;width:20px;height:18px;border:2px solid #4b6bff;border-top:none;border-radius:3px 3px 5px 5px;
}
.iq-icon-shirt:after{
  left:13px;top:8px;width:14px;height:8px;border-left:2px solid #4b6bff;border-right:2px solid #4b6bff;border-top:2px solid #4b6bff;transform:skewX(-20deg);
}
.iq-icon-bolt:before{
  left:16px;top:8px;width:10px;height:22px;background:#4b6bff;clip-path:polygon(40% 0,100% 0,68% 42%,100% 42%,28% 100%,46% 55%,18% 55%);
}
.impression-quote-btn{
  align-self:flex-start;
  min-width:290px;
  justify-content:space-between;
  padding:18px 28px;
  margin-top:6px;
  font-size:17px;
}
.impression-quote-note{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid #e8edf5;
  display:flex;
  align-items:center;
  gap:12px;
  color:#8d98ad;
  font-size:15px;
  line-height:1.5;
}
.iq-note-icon:before{
  left:10px;top:10px;width:18px;height:18px;border:2px solid #8390a7;border-radius:50%;
}
.iq-note-icon:after{
  left:19px;top:14px;width:2px;height:8px;background:#8390a7;box-shadow:4px 4px 0 0 #8390a7;transform-origin:bottom center;
}
@media(max-width:1180px){
  .impression-quote-card{grid-template-columns:1fr;}
  .impression-quote-media{min-height:360px;}
  .impression-quote-panel h2{font-size:clamp(34px,5vw,50px);max-width:none;}
  .impression-quote-panel p{max-width:none;}
}
@media(max-width:640px){
  .impression-project-cta-section--v96{padding:16px 0 34px;}
  .impression-quote-card{padding:10px;gap:12px;border-radius:22px;}
  .impression-quote-media{min-height:240px;border-radius:18px;}
  .impression-quote-panel{border-radius:18px;padding:10px;}
  .impression-quote-panel-inner{padding:16px;}
  .impression-quote-panel h2{font-size:34px;}
  .impression-quote-features li{grid-template-columns:42px 1fr;gap:12px;font-size:15px;}
  .iq-icon,.iq-note-icon{width:36px;height:36px;}
  .impression-quote-btn{min-width:0;width:100%;}
}


/* v97 - CTA devis reduced ~50% in visual scale */
.impression-project-cta-section--v96{
  padding:12px 0 24px;
}
.impression-quote-card{
  grid-template-columns:minmax(0,1fr) minmax(320px, 44%);
  gap:10px;
  border-radius:20px;
  padding:8px;
}
.impression-quote-media{
  min-height:260px;
  border-radius:14px;
}
.impression-quote-panel{
  border-radius:16px;
  padding:8px;
}
.impression-quote-panel-inner{
  padding:14px 16px 12px;
}
.impression-quote-panel .eyebrow{
  margin-bottom:10px;
  font-size:10px;
}
.impression-quote-panel h2{
  margin:0 0 10px;
  font-size:clamp(22px,2.2vw,32px);
  line-height:1.04;
  max-width:360px;
}
.impression-quote-panel p{
  margin:0 0 14px;
  font-size:13px;
  line-height:1.45;
  max-width:360px;
}
.impression-quote-features{
  margin:0 0 14px;
}
.impression-quote-features li{
  grid-template-columns:32px 1fr;
  gap:10px;
  padding:8px 0;
  font-size:13px;
  line-height:1.35;
}
.iq-icon,
.iq-note-icon{
  width:28px;
  height:28px;
}
.iq-icon-search:before{width:9px;height:9px;left:7px;top:6px;border-width:1.7px}
.iq-icon-search:after{width:6px;height:1.8px;left:15px;top:17px}
.iq-icon-shirt:before{left:6px;top:7px;width:14px;height:12px;border-width:1.7px}
.iq-icon-shirt:after{left:8px;top:5px;width:10px;height:5px;border-left-width:1.7px;border-right-width:1.7px;border-top-width:1.7px}
.iq-icon-bolt:before{left:11px;top:5px;width:7px;height:16px}
.impression-quote-btn{
  min-width:190px;
  padding:12px 18px;
  font-size:14px;
  gap:10px;
  border-radius:8px;
}
.impression-quote-note{
  margin-top:12px;
  padding-top:12px;
  gap:10px;
  font-size:12.5px;
  line-height:1.4;
}
.iq-note-icon:before{left:6px;top:6px;width:12px;height:12px;border-width:1.7px}
.iq-note-icon:after{left:12px;top:8px;width:2px;height:6px;box-shadow:3px 3px 0 0 #8390a7}
@media(max-width:1180px){
  .impression-quote-media{min-height:220px;}
  .impression-quote-panel h2{font-size:clamp(22px,4vw,28px);max-width:none;}
  .impression-quote-panel p{max-width:none;}
}
@media(max-width:640px){
  .impression-project-cta-section--v96{padding:10px 0 20px;}
  .impression-quote-card{padding:8px;gap:10px;border-radius:16px;}
  .impression-quote-media{min-height:180px;border-radius:12px;}
  .impression-quote-panel{border-radius:14px;padding:8px;}
  .impression-quote-panel-inner{padding:12px;}
  .impression-quote-panel h2{font-size:24px;}
  .impression-quote-features li{font-size:12.5px;grid-template-columns:28px 1fr;gap:8px;}
  .iq-icon,.iq-note-icon{width:24px;height:24px;}
  .impression-quote-btn{min-width:0;width:100%;}
}


/* v98 - reduce overall CTA card/photo/frame size */
.impression-project-cta-section--v96 .container{
  width:min(var(--max), calc(100% - 48px));
}
.impression-quote-card{
  max-width:920px;
  margin-inline:auto;
  grid-template-columns:minmax(0,1fr) minmax(280px, 41%);
  gap:8px;
  padding:8px;
}
.impression-quote-media{
  min-height:210px;
}
.impression-quote-panel{
  padding:6px;
}
.impression-quote-panel-inner{
  padding:12px 14px 10px;
}
.impression-quote-panel h2{
  max-width:320px;
}
.impression-quote-panel p{
  max-width:320px;
}
@media(max-width:1180px){
  .impression-quote-card{
    max-width:820px;
  }
  .impression-quote-media{min-height:200px;}
}
@media(max-width:640px){
  .impression-quote-card{
    max-width:none;
    grid-template-columns:1fr;
  }
  .impression-quote-media{min-height:170px;}
}


/* v99 - CTA photo smaller + more space between photo and right panel */
.impression-quote-card{
  max-width:860px;
  margin-inline:auto;
  grid-template-columns:minmax(0,1fr) minmax(270px, 40%);
  gap:18px;
  padding:10px;
}
.impression-quote-media{
  min-height:180px;
  max-height:180px;
  border-radius:14px;
}
.impression-quote-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.impression-quote-panel{
  padding:6px;
}
@media(max-width:1180px){
  .impression-quote-card{
    max-width:780px;
    gap:16px;
  }
  .impression-quote-media{
    min-height:170px;
    max-height:170px;
  }
}
@media(max-width:640px){
  .impression-quote-card{
    max-width:none;
    grid-template-columns:1fr;
    gap:12px;
  }
  .impression-quote-media{
    min-height:160px;
    max-height:160px;
  }
}


/* v100 - make CTA image fill the full left block height without increasing overall section height */
.impression-quote-card{
  align-items:stretch;
}
.impression-quote-media{
  align-self:stretch;
  height:100%;
  min-height:0;
  max-height:none;
  overflow:hidden;
}
.impression-quote-media img{
  width:100%;
  height:100%;
  min-height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
@media(max-width:1180px){
  .impression-quote-media{
    min-height:0;
    max-height:none;
    height:100%;
  }
}
@media(max-width:640px){
  .impression-quote-media{
    height:180px;
    min-height:180px;
    max-height:none;
  }
}


/* v101 - CTA full section width + new workshop photo */
.impression-project-cta-section--v96 .container{
  width:min(var(--max), calc(100% - 48px));
}
.impression-quote-card{
  max-width:none;
  width:100%;
  margin-inline:0;
  grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr);
  gap:14px;
  padding:10px;
}
.impression-quote-media{
  height:100%;
  min-height:265px;
  max-height:none;
  border-radius:16px;
  background:#e9ebf0;
}
.impression-quote-media img{
  width:100%;
  height:100%;
  min-height:100%;
  object-fit:cover;
  object-position:center;
}
.impression-quote-panel{
  min-height:265px;
}
@media(max-width:1180px){
  .impression-quote-card{
    max-width:none;
    grid-template-columns:1fr;
  }
  .impression-quote-media,
  .impression-quote-panel{
    min-height:240px;
  }
}
@media(max-width:640px){
  .impression-quote-media{
    min-height:190px;
  }
}


/* v102 - Sous-traitance hero image + elegant service redirects */
.st-page .page-hero{
  min-height:520px;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.st-page .page-hero:before{
  background:
    linear-gradient(90deg,rgba(2,6,13,.98) 0%,rgba(2,6,13,.88) 30%,rgba(2,6,13,.46) 58%,rgba(2,6,13,.10) 100%),
    var(--page-bg, none) right center/cover no-repeat;
  opacity:1;
}
.st-page .page-hero .container{
  width:min(var(--max),calc(100% - 48px));
}
.st-page .page-hero p{
  max-width:560px;
}
.st-hero-actions{
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
}
.st-secondary-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.st-service-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#fff;
  font-weight:850;
  font-size:15px;
  line-height:1;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.75);
  transition:.22s ease;
}
.st-service-link:hover{
  color:#8fa3ff;
  border-bottom-color:#8fa3ff;
  transform:translateY(-1px);
}
.st-service-link span{
  font-size:18px;
  line-height:0;
}
@media(max-width:760px){
  .st-page .page-hero{
    min-height:auto;
    padding:54px 0 42px;
  }
  .st-hero-actions{
    align-items:flex-start;
    flex-direction:column;
    gap:16px;
  }
  .st-secondary-actions{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
}


/* v103 - sous-traitance hero cleanup + intro layout refinement */
.st-hero-actions{
  display:flex;
  align-items:flex-start;
  gap:0;
  flex-wrap:wrap;
}
.st-intro-grid{
  grid-template-columns:minmax(0, 620px) minmax(320px, 470px);
  gap:38px;
  align-items:start;
}
.st-intro-copy{
  max-width:620px;
}
.st-intro-copy h2{
  max-width:500px;
  margin-bottom:18px;
}
.st-intro-copy p{
  max-width:500px;
}
.st-intro-card{
  width:100%;
  max-width:470px;
  justify-self:end;
  padding:26px 28px;
}
.st-intro-card h3{
  margin-bottom:18px;
}
@media(max-width:1200px){
  .st-intro-grid{
    grid-template-columns:minmax(0, 1fr) minmax(300px, 420px);
    gap:28px;
  }
  .st-intro-copy h2,
  .st-intro-copy p{max-width:460px;}
  .st-intro-card{max-width:420px;}
}
@media(max-width:980px){
  .st-intro-copy h2 br{display:none;}
  .st-intro-copy,
  .st-intro-copy h2,
  .st-intro-copy p,
  .st-intro-card{max-width:none;}
  .st-intro-card{justify-self:stretch;}
}


/* v104 - sous-traitance intro title on 2 lines + right card flush right */
.st-intro-grid{
  grid-template-columns:minmax(0, 1fr) 500px;
  gap:26px;
  align-items:start;
}
.st-intro-copy{
  max-width:650px;
}
.st-intro-copy h2{
  max-width:650px;
  margin-bottom:18px;
}
.st-intro-copy p{
  max-width:560px;
}
.st-intro-card{
  width:100%;
  max-width:500px;
  justify-self:end;
  margin-right:0;
}
@media(max-width:1200px){
  .st-intro-grid{
    grid-template-columns:minmax(0, 1fr) 450px;
    gap:22px;
  }
  .st-intro-card{max-width:450px;}
  .st-intro-copy h2{max-width:560px;}
}
@media(max-width:980px){
  .st-intro-grid{grid-template-columns:1fr;}
  .st-intro-copy h2 br{display:none;}
  .st-intro-copy,
  .st-intro-copy h2,
  .st-intro-copy p,
  .st-intro-card{max-width:none;}
  .st-intro-card{justify-self:stretch;}
}


/* v105 - sous-traitance title exactly on 2 lines + left text justified */
.st-intro-grid{
  grid-template-columns:minmax(0, 1fr) 480px;
  gap:22px;
}
.st-intro-copy{
  max-width:760px;
}
.st-intro-copy h2{
  max-width:760px;
  line-height:1.02;
}
.st-intro-copy .st-title-line2{
  display:block;
  white-space:nowrap;
}
.st-intro-copy p{
  max-width:620px;
  text-align:justify;
  text-align-last:left;
}
.st-intro-card{
  max-width:480px;
}
@media(max-width:1280px){
  .st-intro-copy{max-width:720px;}
  .st-intro-copy h2{max-width:720px;}
  .st-intro-copy p{max-width:590px;}
}
@media(max-width:1100px){
  .st-intro-grid{grid-template-columns:minmax(0, 1fr) 430px;gap:20px;}
  .st-intro-card{max-width:430px;}
  .st-intro-copy h2{max-width:680px;}
  .st-intro-copy .st-title-line2{white-space:normal;}
}
@media(max-width:980px){
  .st-intro-copy p{text-align:left;}
  .st-intro-copy .st-title-line2{white-space:normal;}
}


/* v108 - align right intro card with title top */
.st-intro-card{
  margin-top:24px;
}
@media(max-width:980px){
  .st-intro-card{
    margin-top:0;
  }
}


/* v109 - keep st-dark intro paragraph on one line */
.st-dark .st-section-head p{
  max-width:none;
  white-space:nowrap;
}
@media(max-width:1200px){
  .st-dark .st-section-head p{
    white-space:normal;
  }
}


/* v112 - links in first sous-traitance offer card */
.st-offer--with-links{
  display:flex;
  flex-direction:column;
}
.st-offer--with-links p{
  margin-bottom:18px;
}
.st-offer-links{
  margin-top:auto;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.st-offer-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid #d6e0f5;
  background:#f6f8ff;
  color:#2f56ff;
  font-weight:800;
  font-size:14px;
  line-height:1;
  transition:.2s ease;
}
.st-offer-link:hover{
  background:#2f56ff;
  border-color:#2f56ff;
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(47,86,255,.18);
}
.st-offer-link span{font-size:15px;line-height:0}


/* v113 - Homepage service cards navigation links */
.service-card{
  display:flex;
  flex-direction:column;
}
.service-body{
  display:flex;
  flex-direction:column;
  flex:1;
}
.service-card-link{
  margin-top:auto;
  padding-top:18px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#2455ff;
  font-weight:850;
  font-size:14px;
  line-height:1;
  border-bottom:1px solid #2455ff;
  align-self:flex-start;
  transition:.2s ease;
}
.service-card-link:hover{
  color:#0b1120;
  border-bottom-color:#0b1120;
  transform:translateY(-1px);
}
.service-card-link span{
  font-size:15px;
  line-height:0;
}


/* v114 - service card links pinned to bottom and blue */
.services-grid .service-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.services-grid .service-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:260px;
}
.services-grid .service-body p{
  margin-bottom:0;
}
.services-grid .service-card-link{
  margin-top:auto !important;
  padding-top:20px;
  color:#2f56ff !important;
  border-bottom:1px solid #2f56ff;
  align-self:flex-start;
  font-weight:800;
}
.services-grid .service-card-link:hover{
  color:#173edb !important;
  border-bottom-color:#173edb;
}
@media(max-width:640px){
  .services-grid .service-body{min-height:auto;}
}


/* v115 - remove hero ghost CTA and style service links like project link */
.hero-actions .btn.ghost{display:none !important;}
.services-grid .service-card{display:flex;flex-direction:column;height:100%;}
.services-grid .service-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:270px;padding:34px 22px 22px;}
.services-grid .service-body h3{margin:0 0 10px;}
.services-grid .service-body p{margin:0;color:#495364;font-size:14px;}
.services-grid .service-card-link{
  margin-top:auto !important;
  padding-top:20px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  color:#2f56ff !important;
  font-weight:800;
  font-size:14px;
  line-height:1;
  border:0 !important;
  border-bottom:1px solid #2f56ff !important;
  border-radius:0;
  background:transparent !important;
  min-height:auto;
  padding-left:0;
  padding-right:0;
  padding-bottom:6px;
  box-shadow:none !important;
}
.services-grid .service-card-link:hover{
  color:#173edb !important;
  border-bottom-color:#173edb !important;
  transform:none;
}
.services-grid .service-card-link span{font-size:15px;line-height:0;}
@media(max-width:640px){
  .services-grid .service-body{min-height:auto;}
}


/* v116 - services: liens vraiment en bas des cartes + hero sans lien secondaire */
.hero-home .hero-actions .btn.ghost,
.hero-actions a[href="#services"]{
  display:none !important;
}
.services-grid .service-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:396px;
}
.services-grid .service-img{
  flex:0 0 134px;
}
.services-grid .service-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  height:auto !important;
  padding:34px 22px 22px !important;
}
.services-grid .service-body p{
  margin:0 !important;
}
.services-grid .service-card-link{
  margin-top:auto !important;
  padding:0 0 6px 0 !important;
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  color:#2455ff !important;
  font-weight:800 !important;
  font-size:14px;
  line-height:1;
  border:0 !important;
  border-bottom:1px solid #2455ff !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.services-grid .service-card-link:hover{
  color:#173edb !important;
  border-bottom-color:#173edb !important;
  transform:none !important;
}
@media(max-width:980px){
  .services-grid .service-card{min-height:auto;}
}

/* v117 - Accueil : liens des cartes Nos services fixés en bas */
.services-grid .service-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:396px !important;
  overflow:hidden !important;
}
.services-grid .service-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  padding:34px 22px 72px !important;
}
.services-grid .service-card-link{
  position:absolute !important;
  left:22px !important;
  bottom:22px !important;
  margin:0 !important;
  padding:0 0 6px 0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#2455ff !important;
  font-weight:900 !important;
  font-size:14px !important;
  line-height:1 !important;
  border:0 !important;
  border-bottom:1px solid #2455ff !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
.services-grid .service-card-link:hover{
  color:#173edb !important;
  border-bottom-color:#173edb !important;
  transform:none !important;
}
.hero-home .hero-actions .btn.ghost,
.hero-actions a[href="#services"]{
  display:none !important;
}
@media(max-width:980px){
  .services-grid .service-card{min-height:396px !important;}
}


/* v118 - Correction accueil: liens de cartes réellement fixés en bas + bleu gras */
body.home .services-grid .service-card,
body.front-page .services-grid .service-card,
.services-grid > .service-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:396px !important;
  height:396px !important;
  overflow:hidden !important;
}
body.home .services-grid .service-body,
body.front-page .services-grid .service-body,
.services-grid > .service-card .service-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  padding:34px 22px 72px !important;
}
body.home .services-grid .service-card-link,
body.front-page .services-grid .service-card-link,
.services-grid > .service-card .service-card-link{
  position:absolute !important;
  left:22px !important;
  bottom:22px !important;
  margin:0 !important;
  padding:0 0 6px 0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#2455ff !important;
  font-weight:900 !important;
  font-size:14px !important;
  line-height:1 !important;
  border:0 !important;
  border-bottom:1px solid #2455ff !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
body.home .services-grid .service-card-link:hover,
body.front-page .services-grid .service-card-link:hover,
.services-grid > .service-card .service-card-link:hover{
  color:#173edb !important;
  border-bottom-color:#173edb !important;
  transform:none !important;
}
@media(max-width:980px){
  body.home .services-grid .service-card,
  body.front-page .services-grid .service-card,
  .services-grid > .service-card{height:auto !important; min-height:360px !important;}
}


/* v119 - accueil services : liens centrés en bas + cartes un peu moins hautes */
body.home .services-grid,
body.front-page .services-grid{
  align-items:start !important;
}
body.home .services-grid .service-card,
body.front-page .services-grid .service-card,
.services-grid > .service-card{
  min-height:352px !important;
  height:352px !important;
}
body.home .services-grid .service-img,
body.front-page .services-grid .service-img,
.services-grid > .service-card .service-img{
  height:126px !important;
}
body.home .services-grid .service-body,
body.front-page .services-grid .service-body,
.services-grid > .service-card .service-body{
  padding:30px 22px 60px !important;
}
body.home .services-grid .service-card-link,
body.front-page .services-grid .service-card-link,
.services-grid > .service-card .service-card-link{
  left:50% !important;
  right:auto !important;
  bottom:20px !important;
  transform:translateX(-50%) !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:nowrap !important;
}
body.home .services-grid .service-card-link:hover,
body.front-page .services-grid .service-card-link:hover,
.services-grid > .service-card .service-card-link:hover{
  transform:translateX(-50%) !important;
}
@media(max-width:980px){
  body.home .services-grid .service-card,
  body.front-page .services-grid .service-card,
  .services-grid > .service-card{
    min-height:auto !important;
    height:auto !important;
  }
}


/* v120 - accueil services : cartes alignées au niveau de "Nos services" */
body.home .services-grid .service-card,
body.front-page .services-grid .service-card,
.services-grid > .service-card{
  margin-top:24px !important;
  min-height:328px !important;
  height:328px !important;
}
body.home .services-grid .service-img,
body.front-page .services-grid .service-img,
.services-grid > .service-card .service-img{
  height:118px !important;
}
body.home .services-grid .service-body,
body.front-page .services-grid .service-body,
.services-grid > .service-card .service-body{
  padding:26px 22px 56px !important;
}
@media(max-width:980px){
  body.home .services-grid .service-card,
  body.front-page .services-grid .service-card,
  .services-grid > .service-card{
    margin-top:0 !important;
    min-height:auto !important;
    height:auto !important;
  }
}


/* v121 - accueil services : bas des cartes aligné sur "Parler de mon projet" */
body.home .services-grid .service-card,
body.front-page .services-grid .service-card,
.services-grid > .service-card{
  margin-top:24px !important;
  min-height:380px !important;
  height:380px !important;
}
body.home .services-grid .service-body,
body.front-page .services-grid .service-body,
.services-grid > .service-card .service-body{
  padding:26px 22px 62px !important;
}
@media(max-width:980px){
  body.home .services-grid .service-card,
  body.front-page .services-grid .service-card,
  .services-grid > .service-card{
    min-height:auto !important;
    height:auto !important;
  }
}


/* v122 - accueil services : cartes ajustées pour ne pas dépasser le niveau de "Parler de mon projet" */
body.home .services-grid .service-card,
body.front-page .services-grid .service-card,
.services-grid > .service-card{
  margin-top:24px !important;
  min-height:354px !important;
  height:354px !important;
}
body.home .services-grid .service-body,
body.front-page .services-grid .service-body,
.services-grid > .service-card .service-body{
  padding:26px 22px 58px !important;
}
@media(max-width:980px){
  body.home .services-grid .service-card,
  body.front-page .services-grid .service-card,
  .services-grid > .service-card{
    min-height:auto !important;
    height:auto !important;
  }
}


/* v123 - correctif sur thème fourni : picto à gauche, texte à droite, bouton en bas */
.impression-subcontract-teaser-wrap{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:24px;
  align-items:start;
  border:1px solid rgba(255,255,255,.1);
  border-radius:26px;
  padding:30px;
  background:linear-gradient(135deg,rgba(12,22,38,.92),rgba(6,12,22,.94));
  box-shadow:0 22px 46px rgba(0,0,0,.28);
}
.impression-subcontract-icon{
  width:78px;
  height:78px;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.impression-subcontract-icon svg{
  width:56px;
  height:56px;
  fill:none;
  stroke:#d8e0f5;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.impression-subcontract-content{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.impression-subcontract-content p{
  margin:0;
}
.impression-subcontract-content .btn{
  margin-top:24px;
  align-self:flex-start;
}
@media(max-width:980px){
  .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr;
    gap:18px;
  }
  .impression-subcontract-icon{
    width:70px;
    height:70px;
  }
  .impression-subcontract-content .btn{
    margin-top:18px;
  }
}


/* v124 - impression teaser with provided pictogram and split side/content layout */
.impression-subcontract-teaser-wrap{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:38px;
  align-items:stretch;
  border:1px solid rgba(255,255,255,.1);
  border-radius:26px;
  padding:28px 32px;
  background:linear-gradient(135deg,rgba(12,22,38,.92),rgba(6,12,22,.94));
  box-shadow:0 22px 46px rgba(0,0,0,.28);
}
.impression-subcontract-side{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  min-height:190px;
}
.impression-subcontract-icon{
  width:82px;
  height:82px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:transparent;
  border:0;
  border-radius:0;
}
.impression-subcontract-icon img{
  width:74px;
  height:auto;
  display:block;
  filter:brightness(0) invert(1);
  opacity:.96;
}
.impression-subcontract-content{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  padding-top:2px;
}
.impression-subcontract-content h2{
  margin:8px 0 14px;
}
.impression-subcontract-content p{
  margin:0;
  max-width:860px;
}
.impression-subcontract-side .btn{
  margin-top:26px;
  align-self:flex-start;
}
@media(max-width:980px){
  .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr;
    gap:20px;
  }
  .impression-subcontract-side{
    min-height:0;
    gap:18px;
  }
  .impression-subcontract-icon{
    width:72px;
    height:72px;
  }
  .impression-subcontract-icon img{
    width:64px;
  }
}


/* v125 - white larger pictogram, no background, CTA below text */
.impression-subcontract-teaser-wrap{
  grid-template-columns:120px minmax(0,1fr);
  gap:30px;
  align-items:start;
}
.impression-subcontract-side{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  min-height:0;
}
.impression-subcontract-icon{
  width:112px;
  height:112px;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0;
}
.impression-subcontract-icon img{
  width:100px;
  height:auto;
  display:block;
  filter:brightness(0) invert(1) grayscale(1) contrast(200%);
  opacity:1;
  mix-blend-mode:screen;
}
.impression-subcontract-content{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
}
.impression-subcontract-content p{
  margin:0;
  max-width:860px;
}
.impression-subcontract-content .btn{
  margin-top:24px;
  align-self:flex-start;
}
@media(max-width:980px){
  .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr;
    gap:18px;
  }
  .impression-subcontract-icon{
    width:88px;
    height:88px;
  }
  .impression-subcontract-icon img{
    width:78px;
  }
  .impression-subcontract-content .btn{
    margin-top:18px;
  }
}


/* v126 - transparent white pictogram larger, content pushed right */
.impression-subcontract-teaser-wrap{
  grid-template-columns: 152px minmax(0,1fr) !important;
  gap: 42px !important;
  align-items: start !important;
}
.impression-subcontract-side{
  align-items:center !important;
  justify-content:flex-start !important;
  padding-top:10px;
}
.impression-subcontract-icon{
  width:132px !important;
  height:132px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.impression-subcontract-icon img{
  width:126px !important;
  height:auto !important;
  background:transparent !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}
.impression-subcontract-content{
  padding-top:6px !important;
}
.impression-subcontract-content h2{
  margin-top:8px !important;
}
.impression-subcontract-content .btn{
  margin-top:28px !important;
}
@media(max-width:980px){
  .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .impression-subcontract-side{
    align-items:flex-start !important;
    padding-top:0;
  }
  .impression-subcontract-icon{
    width:104px !important;
    height:104px !important;
  }
  .impression-subcontract-icon img{
    width:98px !important;
  }
}


/* v127 - pictogramme plus grand sur la page impression */
.impression-subcontract-teaser-wrap{
  grid-template-columns: 180px minmax(0,1fr) !important;
  gap: 44px !important;
}
.impression-subcontract-icon{
  width: 156px !important;
  height: 156px !important;
}
.impression-subcontract-icon img{
  width: 148px !important;
}
@media(max-width:980px){
  .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .impression-subcontract-icon{
    width:112px !important;
    height:112px !important;
  }
  .impression-subcontract-icon img{
    width:104px !important;
  }
}

/* v128 - renfort production : pictogramme sans aucun fond/cadre + contenu décalé à droite */
.impression-subcontract-teaser .impression-subcontract-teaser-wrap{
  grid-template-columns: 220px minmax(0,1fr) !important;
  gap: 52px !important;
  align-items: start !important;
}
.impression-subcontract-teaser .impression-subcontract-side{
  padding-top: 0 !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.impression-subcontract-teaser .impression-subcontract-icon{
  width: 190px !important;
  height: 190px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.impression-subcontract-teaser .impression-subcontract-icon::before,
.impression-subcontract-teaser .impression-subcontract-icon::after{
  content: none !important;
  display: none !important;
}
.impression-subcontract-teaser .impression-subcontract-icon img{
  width: 178px !important;
  height: auto !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}
.impression-subcontract-teaser .impression-subcontract-content{
  padding-top: 3px !important;
  padding-left: 0 !important;
}
@media(max-width:980px){
  .impression-subcontract-teaser .impression-subcontract-teaser-wrap{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-icon{
    width:124px !important;
    height:124px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-icon img{
    width:116px !important;
  }
}


/* v129 - retire l'eyebrow et réduit la hauteur de la carte renfort de production */
.impression-subcontract-teaser{
  padding: 26px 0 32px !important;
}
.impression-subcontract-teaser .impression-subcontract-teaser-wrap{
  padding: 24px 28px !important;
  gap: 44px !important;
  align-items: start !important;
}
.impression-subcontract-teaser .impression-subcontract-side{
  padding-top: 0 !important;
}
.impression-subcontract-teaser .impression-subcontract-icon{
  width: 182px !important;
  height: 182px !important;
}
.impression-subcontract-teaser .impression-subcontract-icon img{
  width: 170px !important;
}
.impression-subcontract-teaser .impression-subcontract-content{
  padding-top: 0 !important;
}
.impression-subcontract-teaser .impression-subcontract-content .eyebrow{
  display: none !important;
}
.impression-subcontract-teaser .impression-subcontract-content h2{
  margin: 0 0 10px !important;
}
.impression-subcontract-teaser .impression-subcontract-content p{
  margin: 0 !important;
}
.impression-subcontract-teaser .impression-subcontract-content .btn{
  margin-top: 18px !important;
}
@media(max-width:980px){
  .impression-subcontract-teaser{
    padding: 22px 0 28px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-teaser-wrap{
    padding: 22px !important;
    gap: 16px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-icon{
    width: 118px !important;
    height: 118px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-icon img{
    width: 110px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-content h2{
    margin: 0 0 10px !important;
  }
  .impression-subcontract-teaser .impression-subcontract-content .btn{
    margin-top: 16px !important;
  }
}


/* v130 - CTA sous-traitance harmonisée avec la carte impression */
.st-cta{
  background:#02070e !important;
  color:#fff !important;
  padding:26px 0 32px !important;
}
.st-cta .st-cta-wrap{
  position:relative;
  z-index:1;
  display:grid !important;
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:44px !important;
  align-items:start !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:26px !important;
  padding:24px 28px !important;
  background:linear-gradient(135deg,rgba(12,22,38,.92),rgba(6,12,22,.94)) !important;
  box-shadow:0 22px 46px rgba(0,0,0,.28) !important;
}
.st-cta .st-cta-side{
  padding-top:0 !important;
  min-height:0 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.st-cta .st-cta-icon{
  width:182px !important;
  height:182px !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.st-cta .st-cta-icon::before,
.st-cta .st-cta-icon::after{
  content:none !important;
  display:none !important;
}
.st-cta .st-cta-icon img{
  width:170px !important;
  height:auto !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  opacity:1 !important;
}
.st-cta .st-cta-content{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  padding-top:0 !important;
}
.st-cta .st-cta-content .eyebrow{
  display:none !important;
}
.st-cta .st-cta-content h2{
  font-size:clamp(26px,2.7vw,38px) !important;
  line-height:1.05 !important;
  letter-spacing:-.045em !important;
  margin:0 0 10px !important;
  color:#fff !important;
}
.st-cta .st-cta-content p{
  margin:0 !important;
  color:#b4bfd1 !important;
  font-size:15px !important;
  line-height:1.7 !important;
  max-width:860px !important;
}
.st-cta .st-cta-content .btn{
  margin-top:18px !important;
  align-self:flex-start !important;
  justify-self:start !important;
}
@media(max-width:980px){
  .st-cta{
    padding:22px 0 28px !important;
  }
  .st-cta .st-cta-wrap{
    grid-template-columns:1fr !important;
    gap:16px !important;
    padding:22px !important;
  }
  .st-cta .st-cta-icon{
    width:118px !important;
    height:118px !important;
  }
  .st-cta .st-cta-icon img{
    width:110px !important;
  }
  .st-cta .st-cta-content h2{
    margin:0 0 10px !important;
  }
  .st-cta .st-cta-content .btn{
    margin-top:16px !important;
  }
}


/* v133 - image hero contact moins zoomée */
.contact-hero-bg--handshake{
  background-position: right center !important;
  background-size: 72% auto !important;
}
@media(max-width:1200px){
  .contact-hero-bg--handshake{
    background-size: 78% auto !important;
  }
}
@media(max-width:980px){
  .contact-hero-bg--handshake{
    background-size: cover !important;
    background-position: 62% center !important;
  }
}


/* v139 - hero contact : dégradé d'origine conservé, image réellement plus petite via asset + CSS */
.contact-hero-bg--handshake{
  background-position:right center !important;
  background-size:54% auto !important;
  filter:saturate(1.04) brightness(1.08) !important;
}
@media(max-width:1440px){
  .contact-hero-bg--handshake{
    background-size:56% auto !important;
  }
}
@media(max-width:1200px){
  .contact-hero-bg--handshake{
    background-size:60% auto !important;
  }
}
@media(max-width:980px){
  .contact-hero-bg--handshake{
    background-size:cover !important;
    background-position:64% center !important;
  }
}


/* v75 - Image dans la section contact CTA de la page d'accueil */
.contact-home-photo-v75{
  margin-top:34px;
  width:100%;
  max-width:680px;
  height:300px;
  border-radius:6px;
  overflow:hidden;
  background:#07101b;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 16px 36px rgba(0,0,0,.25);
}
.contact-home-photo-v75 img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
@media(max-width:980px){
  .contact-home-photo-v75{
    max-width:100%;
    height:260px;
  }
}
@media(max-width:640px){
  .contact-home-photo-v75{
    height:220px;
  }
}


/* v77 - Footer : alignement du copyright à droite sur toutes les pages */
.footer-bottom-inner{
  justify-content:flex-end!important;
  text-align:right!important;
}
.footer-bottom-inner p,
.footer-bottom-inner span,
.footer-bottom-inner div{
  margin-left:auto!important;
  text-align:right!important;
}
.footer{
  text-align:right!important;
}
.footer .container{
  text-align:right!important;
}

/* Pages légales */
.legal-page{background:#f7f8fc;color:#0b1120;}
.legal-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#02070e 0%,#071426 56%,#0b1d39 100%);padding:78px 0 54px;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);}
.legal-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 18%,rgba(61,98,255,.24),transparent 32%),radial-gradient(circle at 8% 100%,rgba(61,98,255,.14),transparent 36%);pointer-events:none;}
.legal-hero .container{position:relative;z-index:1;}
.legal-hero h1{font-size:clamp(40px,5vw,64px);line-height:1.02;letter-spacing:-.055em;margin:12px 0 18px;max-width:820px;}
.legal-hero p{margin:0;max-width:720px;color:#b9c4d6;font-size:17px;line-height:1.7;}
.legal-content-section{padding:58px 0 70px;}
.legal-content-wrap{display:grid;grid-template-columns:310px minmax(0,1fr);gap:34px;align-items:start;}
.legal-summary{position:sticky;top:104px;background:#fff;border:1px solid #e5eaf3;border-radius:18px;padding:24px;box-shadow:0 18px 38px rgba(8,13,24,.08);}
.legal-summary h2{font-size:24px;line-height:1.08;margin:0 0 12px;letter-spacing:-.035em;color:#0b1120;}
.legal-summary p{margin:0 0 20px;color:#5f6b7e;font-size:14px;line-height:1.7;}
.legal-summary .btn{width:100%;padding:13px 18px;}
.legal-content{background:#fff;border:1px solid #e5eaf3;border-radius:18px;padding:34px 38px;box-shadow:0 18px 38px rgba(8,13,24,.07);}
.legal-updated{margin:0 0 26px!important;color:#7b8597!important;font-size:13px!important;font-weight:700;}
.legal-content h2{font-size:23px;line-height:1.18;letter-spacing:-.025em;margin:32px 0 10px;color:#0b1120;}
.legal-content h2:first-of-type{margin-top:0;}
.legal-content p{margin:0 0 14px;color:#4f596b;font-size:15.5px;line-height:1.78;}
@media (max-width: 900px){.legal-content-wrap{grid-template-columns:1fr}.legal-summary{position:relative;top:auto}.legal-hero{padding:56px 0 42px}.legal-content{padding:26px 22px}}
