.cag-section,.cag-service-intro{max-width:1240px;margin:0 auto;padding:54px 40px;color:var(--lux-ink,#253328)}
.cag-service-page{background:var(--lux-bg,#f5f1e9)}
.cag-service-intro{padding-top:70px;padding-bottom:0}.cag-service-intro .eyebrow{display:block;margin:36px 0 16px}.cag-service-intro h1{font-size:clamp(36px,5.8vw,80px);line-height:1.08;max-width:900px}
.cag-back{font-size:13px;text-decoration:none}.cag-lead{padding-top:22px;padding-bottom:36px;max-width:1240px}.cag-lead p{max-width:740px;font-size:19px;line-height:1.65}.cag-lead p+p{font-size:16px;color:var(--lux-soft,#686250)}
.cag-section h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,50px);line-height:1.12;margin:14px 0 28px;font-weight:400}.cag-section h2 em{color:var(--lux-accent,#526748)}
.cag-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 22px;margin-top:18px;min-height:48px;border:1px solid var(--lux-green-line,#a8b69a);border-radius:30px;background:var(--lux-green-wash,#e5e9dc);color:var(--lux-ink,#253328);text-decoration:none;font-size:15px}
.cag-three{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.cag-three article>span,.cag-section>.eyebrow{font-size:11px;letter-spacing:.12em;color:var(--lux-accent,#526748)}.cag-three h3{font-size:20px;line-height:1.3;margin:14px 0}.cag-three p,.cag-faq p{font-size:16px;line-height:1.65;color:var(--lux-soft,#686250)}
.cag-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;align-items:start}.cag-gallery figure{margin:0;min-width:0}.cag-gallery img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;object-position:center;background:var(--lux-panel,#ece6da);cursor:default;clip-path:none!important;transform:none!important}.cag-gallery figcaption{font-size:12px;line-height:1.5;color:var(--lux-soft,#686250);margin-top:9px}.cag-work{border-top:1px solid var(--lux-line,#c8beaa)}
.cag-faq{max-width:1240px}.cag-faq details{max-width:850px;border-bottom:1px solid var(--lux-line,#c8beaa)}.cag-faq summary{padding:20px 32px 20px 0;cursor:pointer;position:relative;list-style:none;font-size:17px;line-height:1.4}.cag-faq summary::-webkit-details-marker{display:none}.cag-faq summary::after{content:'+';position:absolute;right:8px;top:20px}.cag-faq details[open]>summary::after{content:'−'}.cag-faq details p{margin:0;padding:0 24px 22px 0}.cag-faq details a{display:inline-block;margin-bottom:20px;min-height:32px}.cag-service-end{border-top:1px solid var(--lux-line,#c8beaa)}
.cag-service-links{display:flex;flex-wrap:wrap;gap:12px;padding:30px 40px;max-width:1240px;margin:auto}.cag-service-links a{display:inline-flex;gap:20px;padding:12px 18px;min-height:44px;align-items:center;text-decoration:none;border:1px solid var(--lux-line,#c8beaa);border-radius:24px;font-size:14px}.cag-service-end .cag-service-links{padding:25px 0 0}.cag-inline-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;margin:10px 0;text-decoration:underline;text-underline-offset:4px}
.cag-trust{padding:28px 40px;max-width:1240px;margin:0 auto;background:var(--lux-bg,#f5f1e9);color:var(--lux-ink,#253328)}.cag-client-details>summary{font-size:12px;letter-spacing:.08em;list-style:none;text-transform:uppercase}.cag-client-details>summary::-webkit-details-marker{display:none}.cag-client-details>summary span{margin-left:15px}.cag-logo-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:28px;align-items:center;padding:22px 0 0}.cag-logo-grid figure{margin:0;min-width:0;text-align:center}.cag-logo-grid img{display:block;max-width:100%;width:125px;height:44px;object-fit:contain;opacity:.75;filter:invert(29%) sepia(15%) saturate(720%) hue-rotate(56deg) brightness(94%)}.cag-logo-grid figcaption{font-size:9px;margin-top:3px}.cag-logo-grid figure:nth-child(6) img{height:31px}html[data-ambience=night] .cag-logo-grid img{filter:invert(91%) sepia(12%) saturate(450%) hue-rotate(37deg);opacity:.86}
.cag-project-info{display:none}.cag-project-dialog{max-width:520px;width:calc(100% - 32px);max-height:calc(100dvh - 44px);padding:0;border:1px solid var(--lux-line);border-radius:16px;background:var(--lux-bg,#f5f1e9);color:var(--lux-ink,#253328)}.cag-project-dialog::backdrop{background:#09110ccc;backdrop-filter:blur(4px)}.cag-project-dialog>header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:var(--lux-bg,#f5f1e9);padding:12px 20px;z-index:2}.cag-project-dialog>header button{min-height:44px;padding:8px 14px;border:1px solid var(--lux-line);border-radius:24px;background:transparent;color:inherit}.cag-project-dialog-body{padding:0 24px 24px}.cag-project-dialog h2{font:36px/1.1 Georgia,serif;margin:20px 0}.cag-project-dialog p{line-height:1.6;font-size:16px}.cag-optional{font-size:12px;opacity:.7}.contact-grid select{width:100%;min-height:48px;border:0;border-bottom:1px solid var(--lux-line);background:var(--lux-bg);color:var(--lux-ink);padding:10px 0;font:inherit}
@media(min-width:701px){.cag-client-details>summary{pointer-events:none}.cag-client-details>summary span{display:none}}
@media(max-width:1000px){.cag-logo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.cag-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .cag-section,.cag-service-intro{padding:30px 20px}.cag-service-intro{padding-top:28px;padding-bottom:0}.cag-service-intro .eyebrow{margin:24px 0 12px}.cag-service-intro h1{font-size:38px}.cag-lead{padding-top:16px}.cag-lead p{font-size:16px}.cag-three{grid-template-columns:1fr;gap:22px}.cag-three article{border-bottom:1px solid var(--lux-line);padding-bottom:15px}.cag-section h2{font-size:34px}.cag-service-links{padding:20px;gap:8px}.cag-service-links a{font-size:13px}.cag-gallery{gap:24px 14px}.cag-gallery img{max-height:280px}.cag-faq summary{font-size:16px}.cag-trust{padding:20px}.cag-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 18px;padding:20px 0 8px}.cag-logo-grid img{height:40px}.cag-client-details>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
 #selection>.cag-trust{position:absolute;top:16px;left:16px;right:16px;padding:0;background:transparent;margin:0;z-index:7;pointer-events:none}#selection>.cag-trust details{pointer-events:auto;width:fit-content;max-width:100%;border-radius:22px;background:#19291eed;color:#f4f1e8;padding:0 16px;box-shadow:0 5px 20px #0002}#selection>.cag-trust details[open]{width:min(400px,100%);max-height:calc(var(--home-panel-height,70dvh) - 90px);overflow:auto}#selection>.cag-trust summary{position:sticky;top:0;background:#19291e;font-size:10px;border-radius:22px;gap:16px}#selection>.cag-trust details[open]>summary span{font-size:0}#selection>.cag-trust details[open]>summary span::after{content:'Fermer −';font-size:11px}#selection>.cag-trust .cag-logo-grid img{filter:invert(93%) sepia(10%) saturate(400%) hue-rotate(37deg);opacity:.9}
 .cag-project-info{display:block;position:absolute;bottom:25px;right:44px;z-index:8;min-height:44px;padding:8px 14px;background:#1c2c22e8;border:1px solid #ddd8;color:#fff;border-radius:24px;font-size:12px;cursor:pointer}.project-item,.feature{position:relative}.cag-service-page{padding-bottom:70px}.cag-service-page .cag-section:last-child{padding-bottom:30px}
}
@media(max-width:500px){.cag-gallery{grid-template-columns:1fr}.cag-gallery figure{max-width:400px;width:100%;margin:0 auto}.cag-gallery img{max-height:320px}}
@media(prefers-reduced-motion:reduce){.cag-service-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

@media(max-width:700px){.ark-app .cine-scene[data-cue='0'] p{display:block;font-size:12px;line-height:1.5;max-width:290px;margin:12px 0 0}.cag-logo-grid figure:nth-child(5) img{height:31px}}
/* Generous, uncropped category carousels. Native touch momentum and scroll snap. */
.cag-category-nav{display:flex;gap:10px;overflow-x:auto;padding:24px 40px;max-width:1240px;margin:auto;scrollbar-width:none}.cag-category-nav::-webkit-scrollbar{display:none}.cag-category-nav a{white-space:nowrap;text-decoration:none;border:1px solid var(--lux-line,#c8beaa);border-radius:24px;padding:12px 18px;font-size:14px;color:var(--lux-ink,#253328)}
.cag-category{scroll-margin-top:100px;padding-top:24px;padding-bottom:34px}.cag-category h2{margin:0 0 22px}.cag-carousel{min-width:0}.cag-gallery.cag-rail{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;align-items:start;padding:0 0 8px;cursor:grab}.cag-rail::-webkit-scrollbar{display:none}.cag-gallery.cag-rail figure{flex:0 0 88%;width:88%;max-width:960px;margin:0;scroll-snap-align:start;scroll-snap-stop:normal}.cag-gallery.cag-rail figure:last-child{scroll-snap-align:end}.cag-gallery.cag-rail img{width:100%;height:clamp(300px,48vw,620px);max-height:none;object-fit:contain;background:transparent;user-select:none}.cag-rail:focus-visible{outline:2px solid var(--lux-accent,#526748);outline-offset:4px}.cag-rail-controls{display:flex;gap:10px;align-items:center;margin-top:10px;font-size:12px;color:var(--lux-soft,#686250)}.cag-rail-count{min-width:52px;font-variant-numeric:tabular-nums}.cag-swipe-hint{flex:1}.cag-rail-controls button{height:44px;width:44px;border-radius:50%;border:1px solid var(--lux-line,#c8beaa);background:transparent;color:var(--lux-ink,#253328);font-size:22px;cursor:pointer}.cag-rail-controls button:disabled{opacity:.25;cursor:default}.cag-gallery.cag-rail:has(figure:only-child) figure{flex-basis:100%;max-width:960px}.cag-rail.is-dragging{cursor:grabbing;scroll-snap-type:none}
@media(max-width:700px){.cag-category{padding-left:12px;padding-right:0;scroll-margin-top:90px}.cag-category h2{font-size:30px}.cag-category-nav{padding:20px 12px}.cag-gallery.cag-rail{gap:12px}.cag-gallery.cag-rail figure{flex-basis:92%;width:92%;max-width:none}.cag-gallery.cag-rail img{height:62svh;max-height:560px;min-height:300px}.cag-rail-controls{padding-right:16px}.cag-gallery.cag-rail figcaption{font-size:13px}.cag-gallery.cag-rail:has(figure:only-child) figure{flex-basis:calc(100% - 12px)}}

.cag-gallery.cag-rail img{height:auto;max-height:620px;min-height:0}@media(max-width:700px){.cag-gallery.cag-rail img{height:auto;max-height:65svh;min-height:0}}
