:root{--paper:#ffffff;--ink:#000000;--muted:#717171;--line:#ffffff;--pad:clamp(20px,5vw,80px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:300 16px/1.65 Inter,Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid currentColor;outline-offset:5px}.m-header{padding:24px var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.m-header img{display:block;object-fit:contain;filter:invert(1)}[data-theme=dark] .m-header img{filter:none}.m-header nav{display:flex;gap:24px;font-size:12px}.m-header a{text-decoration:none}#selection-count{margin-left:4px}.m-intro{padding:clamp(60px,10vw,130px) var(--pad) 40px;max-width:1500px;margin:auto}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase}h1,h2,h3{font-weight:300;line-height:1.1;letter-spacing:-.045em;overflow-wrap:anywhere}h1{font-size:clamp(42px,7.5vw,110px);margin:32px 0}h2{font-size:clamp(32px,4vw,58px);margin:16px 0 24px}h3{font-size:28px;margin:0 0 18px}.lead{font-size:clamp(17px,1.6vw,22px);max-width:710px;color:var(--muted);margin-bottom:32px}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:32px 0 0;margin-top:60px;border-top:1px solid var(--line);gap:24px;font-size:13px}.steps span{display:block;color:var(--muted);font-size:11px;margin-bottom:8px}.m-catalogue,.composition{padding:60px var(--pad);max-width:1500px;margin:auto}.section-title>p:not(.eyebrow){color:var(--muted);max-width:600px}.family-filters{display:flex;flex-wrap:nowrap;gap:8px;margin:32px 0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding-bottom:6px}.family-filters button{flex:0 0 auto;white-space:nowrap}.family-filters button{background:none;border:1px solid var(--line);padding:12px 18px;cursor:pointer;font-size:13px}.family-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.catalogue-empty{background:#000000;color:#ffffff;display:grid;grid-template-columns:1fr 1.4fr;gap:60px;padding:clamp(28px,5vw,72px);align-items:center;min-height:340px}.catalogue-empty p:not(.eyebrow){color:#afafaf;max-width:460px;font-size:14px}.frame-motif{display:block;width:70%;aspect-ratio:4/5;border:1px solid #7e7e7e;margin:30px auto;box-shadow:0 0 0 10px #000000,0 0 0 11px #4c4c4c,0 0 0 23px #000000,0 0 0 24px #4c4c4c}.composition{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,100px);border-top:1px solid var(--line);padding-bottom:120px}form{padding-top:16px}label{display:grid;gap:8px;margin-bottom:20px;font-size:13px}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line);background:transparent;padding:12px;border-radius:0;font-size:16px}select option{background:var(--paper);color:var(--ink)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-note,#form-status{font-size:12px;color:var(--muted)}.send-composition{display:block;padding:17px 20px;background:var(--ink);color:var(--paper);text-decoration:none;font-size:14px;margin-top:24px;text-align:center}.send-composition[aria-disabled=true]{opacity:.4;cursor:not-allowed}.selection-empty{font-size:14px;padding:20px 0;border-top:1px solid var(--line);margin-top:40px;color:var(--muted)}.selection-row{border-block-end:1px solid var(--line);padding:20px 0}.selection-row p{font-size:14px;margin:0 0 12px}.selection-row label{max-width:180px}.remove-model,.carousel-controls button{background:transparent;border:1px solid var(--line);padding:8px 14px;min-height:44px;cursor:pointer;font-size:12px}#models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.model-card{min-width:0;margin-bottom:32px}.model-visual{background:#090909;aspect-ratio:4/5;display:grid;place-items:center}.model-visual img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}.model-card h3{font-size:24px;margin:20px 0 10px}.model-card p{font-size:13px}.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:11px}.add-model{padding:13px 15px;background:var(--ink);color:var(--paper);border:0;width:100%;cursor:pointer;font-size:13px}footer{display:flex;gap:24px;flex-wrap:wrap;padding:30px var(--pad) 110px;border-top:1px solid var(--line);font-size:11px}[hidden]{display:none!important}@media(max-width:700px){.m-header{padding-block:18px}.m-header img{width:48px;height:48px}.m-header nav{gap:12px;font-size:10px}.m-intro{padding-top:55px}.steps{gap:14px;font-size:11px;margin-top:40px}.m-catalogue,.composition{padding-top:40px;padding-bottom:40px}.catalogue-empty{grid-template-columns:1fr;gap:20px}.frame-motif{width:40%;max-width:130px;aspect-ratio:5/3}.composition{grid-template-columns:1fr;gap:24px;padding-bottom:100px}#models{grid-template-columns:1fr}.family-filters button{padding:11px;font-size:12px}.field-pair{gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.m-cover{position:relative;isolation:isolate;min-height:calc(100svh - 113px);display:flex;align-items:flex-end;color:#ffffff;background:#141414}.m-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}.m-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.12)),linear-gradient(0deg,rgba(0,0,0,.85),transparent 90%);z-index:-1}.m-cover .m-intro{width:100%;padding-top:100px;padding-bottom:40px}.m-cover .lead,.m-cover .steps span{color:#ffffff}.m-cover .steps{border-color:#ffffff55}.m-cover h1{font-size:clamp(42px,6vw,88px)}@media(max-width:700px){.m-cover{min-height:calc(100svh - 85px)}.m-cover>img{object-position:47% center}.m-cover .m-intro{padding-top:90px;padding-bottom:80px}.m-cover h1{font-size:clamp(38px,10vw,52px)}.m-cover .steps{margin-top:32px}.m-cover .lead{font-size:16px}}

body[data-content-group="moulures"] .send-composition{background:#000;color:#fff;border:1px solid #777;opacity:1}body[data-content-group="moulures"] .send-composition[aria-disabled="true"]{background:#000;color:#fff;border-color:#555;opacity:1;cursor:not-allowed}

/* Présentation généreuse : deux conceptions sur ordinateur, une sur téléphone. */
#models{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.model-card{background:#090909;color:#fff;padding:0 0 26px;margin-bottom:12px}.model-visual{aspect-ratio:1;touch-action:pan-y}.model-visual img{display:block;aspect-ratio:1}.model-card h3,.model-card>p,.model-card .carousel-controls,.model-card .add-model{margin-left:22px;margin-right:22px}.model-card h3{font-size:clamp(23px,2.4vw,34px);letter-spacing:-.03em;margin-top:25px}.model-card>p{color:#d5d5d5}.model-card>p.model-reference{display:none}.model-card .add-model{width:calc(100% - 44px);background:#000;color:#fff;border:1px solid #666;margin-top:22px}.model-card .carousel-controls{margin-top:18px;color:#fff}.model-card .carousel-controls button{border-color:#666}.model-card .carousel-controls span{font-size:11px;letter-spacing:.05em}.model-card .carousel-controls button:disabled{opacity:.35;cursor:default}.model-card .add-model[aria-pressed=true]{border-color:#fff}.m-catalogue{max-width:1500px}.model-visual:focus-visible{outline:1px solid white;outline-offset:4px}@media(max-width:700px){#models{grid-template-columns:1fr;gap:32px}.m-catalogue{padding-inline:16px}.model-card h3,.model-card>p,.model-card .carousel-controls,.model-card .add-model{margin-left:16px;margin-right:16px}.model-card .add-model{width:calc(100% - 32px)}}

/* Flèches directement sur les côtés du visuel. */
.model-visual{position:relative}.model-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:56px;padding:0;border:0;background:transparent;color:#fff;font-family:Arial,sans-serif;font-size:36px;font-weight:400;line-height:1;cursor:pointer;text-shadow:0 1px 5px #000,0 0 2px #000;z-index:1}.model-arrow--prev{left:4px}.model-arrow--next{right:4px}.model-arrow:disabled{opacity:.25;cursor:default}.model-arrow:focus-visible{outline:2px solid #fff;outline-offset:-4px}.model-card .carousel-controls{justify-content:center}

.m-expertise{padding:60px var(--pad);max-width:1500px;margin:auto;border-top:1px solid var(--line)}.m-expertise>p{max-width:850px}.m-expertise-lead{font-size:clamp(18px,2vw,23px)}.m-expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:48px 0 64px}.m-expertise-grid h3,.m-method h3{font-size:24px;line-height:1.25}.m-method{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 52px;padding-left:24px;margin:40px 0}.m-method li{padding-left:8px}.m-questions{margin-top:64px}.m-questions details{padding:20px 0;border-top:1px solid var(--line)}.m-questions summary{cursor:pointer;font-size:18px;line-height:1.5}.m-questions details p{max-width:800px}.m-related{margin-top:40px}.m-related a{text-underline-offset:4px}.m-expertise--compact{padding-top:32px;padding-bottom:32px}@media(max-width:700px){.m-expertise-grid,.m-method{grid-template-columns:1fr;gap:24px}.m-expertise{padding-block:40px}.m-expertise-grid{margin:32px 0 40px}.m-questions{margin-top:40px}}

/* Five equal, full-width tabs in the page and embedded collection. */
.m-catalogue{max-width:none}
.family-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:clamp(3px,1vw,16px);overflow:visible;padding-bottom:0}
.family-filters button{min-width:0;min-height:64px;padding:16px 4px;font-size:clamp(11px,1.4vw,21px);font-weight:500;white-space:nowrap;background:var(--paper);color:var(--ink);border-color:var(--line)}
.family-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@media(max-width:480px){.family-filters button{min-height:48px;padding:12px 1px;font-size:11px}}

/* The standalone catalogue keeps its family choices above product images. */
.family-filters{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:var(--paper);padding-block:10px;scroll-margin-top:env(safe-area-inset-top,0px)}
