*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#111;color:#f7f7f5;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #2b2b2b;position:sticky;top:0;background:#111e;backdrop-filter:blur(12px);z-index:10}.logo{font-size:25px;font-weight:900;font-style:italic;letter-spacing:-1.5px;position:relative}.logo b{color:#8bd400}.logo i{display:block;width:45px;height:4px;background:#8bd400;transform:skew(-35deg);position:absolute;right:-7px;bottom:-7px}.logo i:after{content:"";position:absolute;width:10px;height:4px;background:#0066ff;right:-15px}nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700}nav a:hover{color:#8bd400}.navcta{border:1px solid #8bd400;padding:11px 18px}.hero{min-height:680px;padding:90px 6vw;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;overflow:hidden}.eyebrow,.kicker{font-size:12px;letter-spacing:2.5px;color:#8bd400;font-weight:800;margin-bottom:18px}.hero h1,.section h2,.works h2,.why h2,.quote h2{font-size:clamp(44px,6vw,86px);line-height:.93;letter-spacing:-4px;margin:0 0 26px;font-style:italic;text-transform:uppercase}.hero h1 em,h2 span{color:#8bd400;font-style:inherit}.hero p{max-width:620px;color:#aaa;font-size:18px;line-height:1.65}.actions{display:flex;gap:12px;margin:36px 0}.btn{display:inline-block;padding:17px 24px;border:0;font-weight:800;font-size:14px;cursor:pointer}.primary{background:#8bd400;color:#101010}.primary:hover{filter:brightness(1.08)}.secondary{border:1px solid #555}.area{font-size:12px;color:#777;text-transform:uppercase;letter-spacing:2px}.hero-art{height:480px;position:relative;display:grid;place-items:center}.panel{width:70%;height:75%;background:linear-gradient(145deg,#222,#161616);border:1px solid #333;transform:skew(-5deg) rotate(2deg);padding:55px 38px;box-shadow:25px 25px 0 #8bd400;display:flex;flex-direction:column;justify-content:center}.panel span{color:#e6007e;font-size:12px;letter-spacing:3px;font-weight:bold}.panel strong{font-size:42px;line-height:.95;margin:15px 0}.panel small{color:#aaa}.speed{position:absolute;height:7px;transform:skew(-35deg);z-index:-1}.s1{width:80%;background:#8bd400;top:15%;right:-15%}.s2{width:55%;background:#0066ff;bottom:18%;left:0}.s3{width:35%;background:#e6007e;bottom:12%;right:-5%}.section{padding:110px 6vw;background:#f4f4f0;color:#171717}.section h2{font-size:clamp(38px,5vw,68px);max-width:900px}.grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid #ccc;border-left:1px solid #ccc}.grid article{padding:35px;min-height:230px;border-right:1px solid #ccc;border-bottom:1px solid #ccc;transition:.2s}.grid article:hover{background:#8bd400}.num{font-size:12px;color:#777}.grid h3{font-size:22px;margin-top:55px}.grid p{color:#666;line-height:1.5}.grid article:hover p{color:#253000}.works{padding:110px 6vw;display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.works h2,.why h2,.quote h2{font-size:clamp(38px,5vw,68px)}.works p,.quote p{color:#999;line-height:1.7}.work-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;min-height:370px}.work-cards div{display:flex;align-items:flex-end;padding:18px;font-size:12px;font-weight:bold;letter-spacing:2px;background:linear-gradient(155deg,#2d2d2d,#171717);border-bottom:5px solid #8bd400}.work-cards div:nth-child(2){border-color:#0066ff}.work-cards div:nth-child(3){border-color:#e6007e}.why{padding:110px 6vw;background:#181818}.values{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #444;margin-top:55px}.values b{padding:28px 10px;border-right:1px solid #444;font-size:20px}.values b:before{content:"+";color:#8bd400;margin-right:10px}.quote{padding:110px 6vw;background:#8bd400;color:#111;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.quote .kicker{color:#111}.quote p{color:#314500}.quote form{display:grid;gap:12px}.quote input,.quote select,.quote textarea{border:0;border-bottom:1px solid #628f00;background:transparent;padding:17px 5px;font:inherit;color:#111;outline:none}.quote textarea{min-height:100px;resize:vertical}.quote .primary{background:#111;color:white;margin-top:15px}.quote #ok{font-size:13px}footer{padding:55px 6vw;display:flex;align-items:center;justify-content:space-between;color:#888;border-top:1px solid #292929}footer .logo{color:white}footer p{font-size:12px;line-height:1.7;text-align:center}@media(max-width:800px){header{height:70px;padding:0 5vw}nav a:not(.navcta){display:none}.hero{grid-template-columns:1fr;min-height:auto;padding:28px 5vw 30px;align-items:start}.hero-copy{align-self:start}.hero h1{letter-spacing:-2.5px}.hero-art{height:350px}.panel{width:75%;height:65%;padding:30px 24px}.panel strong{font-size:30px}.section,.works,.why,.quote{padding:75px 5vw}.grid{grid-template-columns:1fr}.grid article{min-height:180px}.grid h3{margin-top:35px}.works,.quote{grid-template-columns:1fr;gap:40px}.work-cards{min-height:280px}.values{grid-template-columns:1fr 1fr}.values b{font-size:16px}footer{flex-direction:column;gap:30px;text-align:center}.actions{flex-direction:column;align-items:flex-start}}.work-cards{grid-template-columns:repeat(2,1fr)!important;min-height:520px!important}.work-cards .visual{position:relative;min-height:250px;overflow:hidden;background:#202020;border-bottom:5px solid #8bd400}.work-cards .visual:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#252525 0 48%,#8bd400 48% 55%,#0066ff 55% 61%,#e6007e 61% 67%,#151515 67%)}.work-cards .visual:nth-child(2):before{background:linear-gradient(160deg,#111 0 55%,#8bd400 55% 66%,#0066ff 66% 72%,#e6007e 72% 78%,#292929 78%)}.work-cards .visual:nth-child(3):before{background:radial-gradient(circle at 50% 35%,#333 0 22%,transparent 23%),linear-gradient(145deg,#161616 0 65%,#8bd400 65% 70%,#111 70%)}.work-cards .visual:nth-child(4):before{background:linear-gradient(155deg,#eee 0 48%,#fff 48% 62%,#8bd400 62% 68%,#0066ff 68% 73%,#e6007e 73% 78%,#ddd 78%)}.work-cards .visual span{position:relative;z-index:2;background:#111e;padding:10px 12px}@media(max-width:800px){.work-cards{grid-template-columns:1fr!important;min-height:auto!important}.work-cards .visual{min-height:240px}}.work-cards .visual:before{display:none!important}.work-cards .visual{padding:0!important;display:block!important;background:#171717!important}.work-cards .visual img{width:100%;height:100%;min-height:250px;object-fit:cover;display:block}.work-cards .visual span{position:absolute!important;left:14px;bottom:14px;background:#111e!important;color:#fff;padding:10px 12px;z-index:3}@media(max-width:800px){.work-cards .visual img{height:260px;min-height:260px}}
/* Precise crops from the COMRAPIDE brand board */
.work-cards .visual{height:300px!important;min-height:0!important;position:relative!important;overflow:hidden!important}
.work-cards .visual img{position:absolute!important;inset:0;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
.work-cards .vehicle img{object-position:left top!important}
.work-cards .facade img{object-position:left top!important}
.work-cards .textile img{object-position:left top!important;transform:scale(1.35);transform-origin:left top}
.work-cards .print img{object-position:left top!important;transform:scale(1.18);transform-origin:left top}
@media(max-width:800px){.work-cards .visual{height:260px!important}.work-cards .visual img{height:100%!important;min-height:0!important}.work-cards .textile img{transform:scale(1.45)}.work-cards .print img{transform:scale(1.3)}}

/* Approved 3-panel visual direction */
.work-cards{grid-template-columns:1fr!important;gap:16px!important;min-height:0!important}
.work-cards .visual{height:auto!important;aspect-ratio:16/7!important;border-radius:12px!important;border:0!important;overflow:hidden!important}
.work-cards .visual img{transform:none!important;object-fit:cover!important;width:100%!important;height:100%!important}
.work-cards .vehicle img{object-position:center 38%!important}
.work-cards .facade img{object-position:center 35%!important}
.work-cards .textile img{object-position:center 42%!important}
.work-cards .visual span{left:0!important;bottom:0!important;margin:0!important;padding:16px 24px!important;font-size:clamp(18px,3vw,28px)!important;font-weight:900!important;letter-spacing:1.5px!important;background:linear-gradient(90deg,rgba(10,10,10,.96) 0%,rgba(10,10,10,.86) 82%,rgba(10,10,10,0) 100%)!important}
.work-cards .visual span:after{content:"›";color:#8bd400;font-size:1.5em;margin-left:14px}
@media(max-width:800px){.work-cards{gap:12px!important}.work-cards .visual{height:auto!important;aspect-ratio:1.65/1!important}.work-cards .visual span{padding:13px 16px!important;font-size:18px!important}}

/* COMRAPIDE visual service showcase */
.service-showcase{background:#0d0f0e!important;color:#fff!important}.service-showcase>h2{color:#fff!important}.service-stack{display:grid;gap:14px;margin-top:36px}.service-card{display:grid!important;grid-template-columns:34% 66%;min-height:330px;background:#111!important;border:1px solid #454545!important;border-radius:14px!important;overflow:hidden;padding:0!important}.service-copy{padding:30px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,#0b0b0b 82%,rgba(11,11,11,.35));z-index:2}.service-copy .num{color:#fff!important;font-size:16px}.service-copy .num:after{content:"";display:block;width:34px;height:4px;background:#8bd400;margin:10px 0 18px}.service-copy h3{font-size:32px!important;color:#fff!important;margin:0 0 16px}.service-copy p{color:#ddd!important;font-size:18px!important;line-height:1.45}.service-copy a{align-self:flex-start;margin-top:18px;border:2px solid #8bd400;border-radius:8px;padding:11px 18px;color:#8bd400;text-decoration:none;font-weight:800}.service-photo{min-height:330px;position:relative;overflow:hidden;background:#202020}.real-photo{background-size:cover;background-position:center}.printer-visual{position:absolute;inset:18% 7% 10%;background:#222;border-radius:8px;border-top:28px solid #111;box-shadow:0 18px 30px #0008}.printer-visual:after{content:"";position:absolute;left:15%;right:15%;top:35%;height:55%;background:linear-gradient(135deg,#0066ff,#8bd400 52%,#e6007e);border:8px solid #eee}.printer-visual b,.sticker-visual b{position:absolute;z-index:3;color:#fff;font-style:italic;font-size:24px;left:35%;top:-25px}.printer-visual b span,.sticker-visual b span{color:#8bd400}.sticker-visual{background:linear-gradient(145deg,#383838,#181818)}.sticker-visual b{position:relative;display:inline-block;left:auto;top:auto;margin:45px 12px 0;padding:20px;background:#111;border-radius:12px;transform:rotate(-7deg)}.sticker-visual i{position:absolute;width:150px;height:22px;border-radius:12px;right:12%;top:24%;background:#0066ff;box-shadow:0 34px #e6007e,0 68px #8bd400}
@media(max-width:800px){.service-showcase{padding-left:12px!important;padding-right:12px!important}.service-card{grid-template-columns:42% 58%;min-height:245px}.service-copy{padding:18px 14px}.service-copy h3{font-size:24px!important}.service-copy p{font-size:15px!important}.service-copy a{font-size:14px;padding:9px 11px}.service-photo{min-height:245px}.real-photo{background-position:center}.printer-visual{inset:22% 5% 12%}.printer-visual b{font-size:15px;left:18%;top:-23px}.sticker-visual b{font-size:12px;margin:34px 3px 0;padding:10px}.sticker-visual i{width:80px;height:14px}}

.service-card .real-photo{background-size:cover!important;background-repeat:no-repeat!important;background-position:center!important}
@media(max-width:800px){.service-card{grid-template-columns:1fr!important;min-height:0!important}.service-copy{min-height:0!important;padding:20px!important;background:#0b0b0b!important}.service-photo{min-height:0!important;height:auto!important;aspect-ratio:1.72/1!important}.service-copy h3{font-size:28px!important;margin-bottom:10px!important}.service-copy p{font-size:16px!important;margin-bottom:0!important}.service-copy a{margin-top:14px!important}}


/* Réalisations */
#services,#realisations,#apropos,#devis{scroll-margin-top:84px}
.projects{padding:110px 6vw;background:#f4f4f0;color:#171717}
.projects h1,.projects h2{font-size:clamp(38px,5vw,68px);line-height:.95;letter-spacing:-3px;margin:0;max-width:900px;font-style:italic;text-transform:uppercase}
.projects h2 span{color:#76bd00}
.projects-intro{max-width:650px;color:#666;font-size:18px;line-height:1.6;margin:24px 0 48px}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.project{position:relative;margin:0;min-height:390px;overflow:hidden;border-radius:14px;background:#181818}
.project img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}
.project:hover img{transform:scale(1.035)}
.project figcaption{position:absolute;left:0;right:0;bottom:0;padding:70px 26px 24px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:#fff}
.project figcaption b{display:block;font-size:clamp(22px,2.5vw,34px);font-style:italic;text-transform:uppercase}
.project figcaption span{display:block;margin-top:7px;color:#c8c8c8;font-size:15px}
.project figcaption b:after{content:"";display:block;width:42px;height:4px;background:#8bd400;margin-top:12px}
@media(max-width:800px){#services,#realisations,#apropos,#devis{scroll-margin-top:70px}.projects{padding:75px 12px}.projects h1,.projects h2{letter-spacing:-2px;padding:0 12px}.projects .kicker,.projects-intro{margin-left:12px;margin-right:12px}.projects-intro{font-size:16px;margin-bottom:30px}.project-grid{grid-template-columns:1fr;gap:12px}.project{min-height:0;aspect-ratio:1.18/1}.project figcaption{padding:55px 20px 18px}.project figcaption b{font-size:24px}.project figcaption span{font-size:14px}}


/* Logo officiel */
.logo{display:inline-flex;align-items:center;font-size:0;letter-spacing:0}
.logo img{display:block;width:172px;height:auto}
footer .logo img{width:185px}
@media(max-width:800px){.logo img{width:154px}footer .logo img{width:175px}}
