@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#272929;--paper:#f5f4f3;--accent:#d93639;--muted:#777575;--line:#dfdada}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit;border:1px solid var(--line);background:transparent}button:hover{background:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b92b30;outline-offset:4px}header{height:90px;display:flex;justify-content:space-between;align-items:center;padding:0 5%;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;gap:15px;align-items:center;font:700 23px 'Space Grotesk',sans-serif;letter-spacing:2px}.brand img{width:48px;height:62px;object-fit:contain;filter:brightness(0)}.sub{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:1.7px;margin-top:5px}nav{display:flex;gap:35px;align-items:center;font-size:13px}nav button{border-color:var(--ink);padding:13px 18px;border-radius:4px}nav b{margin-left:12px;background:var(--ink);color:white;border-radius:50%;padding:3px 7px;font-size:11px}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper)}.hero-copy{padding:60px 10% 25px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600}.dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;margin-right:8px}h1{font:500 clamp(50px,6vw,88px)/1.01 'Space Grotesk',sans-serif;letter-spacing:-5px;margin:30px 0}h1 em{font-style:normal;color:var(--accent)}.intro{font-size:15px;line-height:1.8;color:#d7d2d2}.primary{background:var(--accent);border:0;color:var(--ink);padding:16px 23px;display:inline-flex;align-items:center;gap:42px;font-weight:600;font-size:13px;border-radius:3px}.primary:hover{background:#bc2b30}.hero .primary{margin-top:15px}.hero-bottom{border-top:1px solid #ffffff25;margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.3px}.hero-visual{background:#eae6e5;position:relative;display:flex;align-items:center;justify-content:center;color:var(--ink);overflow:hidden;min-height:560px}.hero-visual:before{content:'';position:absolute;width:390px;height:390px;border:1px solid #d1c9c8;border-radius:50%}.hero-visual img{width:85%;height:360px;object-fit:contain;mix-blend-mode:multiply;position:relative;transform:rotate(-8deg)}.vertical{position:absolute;right:25px;top:30px;font-size:9px;letter-spacing:2px;writing-mode:vertical-rl}.hero-caption{position:absolute;bottom:47px;left:8%;right:8%;display:grid;grid-template-columns:1fr auto;gap:8px}.hero-caption>span:first-child{grid-column:1/-1;font-size:9px;letter-spacing:2px;color:var(--muted)}.hero-caption strong{font:500 24px 'Space Grotesk',sans-serif}.hero-caption small{font-size:11px}.visual-num{position:absolute;top:30px;left:35px;font-size:10px;letter-spacing:2px}#catalogue{padding:75px 5% 80px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:35px}h2{font:500 clamp(32px,3.4vw,48px)/1.12 'Space Grotesk',sans-serif;letter-spacing:-2px;margin:14px 0 0}h2 span{color:#c52e33}.section-top>p{font-size:13px;line-height:1.7;color:var(--muted)}.tools{display:flex;gap:15px}.searchbox{display:flex;align-items:center;border:1px solid var(--line);background:#fff;flex:1;padding:0 18px;gap:12px}.searchbox>span{font-size:28px}.searchbox input{width:100%;padding:17px 0;border:0;background:none;outline:none;font-size:13px}.searchbox kbd{color:#aaa1a1;border:1px solid var(--line);padding:2px 6px}select{border:1px solid var(--line);padding:0 16px;background:transparent;font-size:12px}.filterline{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.filterline>span{font-size:11px;color:var(--muted)}#filters{display:flex;gap:7px;flex-wrap:wrap}#filters button{border-radius:30px;padding:9px 15px;font-size:11px}#filters button.active{background:var(--ink);color:white;border-color:var(--ink)}#filters small{margin-left:7px;opacity:.6}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{border:1px solid var(--line);background:#fbf9f8;position:relative;display:flex;flex-direction:column}.picture{display:block;width:100%;height:205px;border:0;background:#fff;position:relative;padding:25px}.picture:hover{background:#fff}.picture img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.picture:hover img{transform:scale(1.06)}.tag{position:absolute;top:14px;left:15px;background:var(--paper);padding:5px 8px;font-size:8px;letter-spacing:1px;z-index:1}.card-info{padding:19px;display:flex;flex-direction:column;flex:1}.ref{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.title{font:500 16px/1.4 'Space Grotesk',sans-serif;margin:9px 0 12px;min-height:45px;background:transparent;border:0;padding:0;text-align:left}.title:hover{background:none;text-decoration:underline}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.price{font:500 23px 'Space Grotesk',sans-serif}.price small{font:10px 'DM Sans',sans-serif;color:var(--muted)}.add{width:33px;height:33px;border-radius:50%;font-size:21px;border-color:#c4b5b5}.stock{font-size:9px;color:var(--muted);margin:12px 0 0}.closing{margin:0 5% 60px;background:var(--ink);color:var(--paper);padding:45px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.closing>span{grid-column:1/-1;font-size:9px;letter-spacing:2px;color:var(--accent)}.closing h2{grid-row:2/4}.closing p{font-size:13px;line-height:1.7;color:#d4cccc}.closing button{justify-self:start}footer{padding:25px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}footer strong{font:600 20px 'Space Grotesk',sans-serif;color:var(--ink)}footer small{font-size:9px}dialog{border:0;border-radius:7px;color:var(--ink);background:var(--paper);padding:35px;width:min(680px,92vw);max-height:88vh}dialog::backdrop{background:#211a1abb;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:12px;font-size:26px;border:0;z-index:2}.detail-image{width:100%;height:260px;object-fit:contain;background:white;padding:20px;margin-top:15px}.detail-copy{line-height:1.8;font-size:13px}.source{font-size:10px;text-decoration:underline;color:var(--muted)}.basket-row{display:grid;grid-template-columns:1fr 65px 35px;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}.basket-row input{width:60px;padding:8px;border:1px solid var(--line)}.basket-row small{display:block;color:var(--muted);margin-top:5px}.basket-row button{font-size:22px}.total{display:flex;justify-content:space-between;margin:25px 0;font-size:23px}.estimate{font-size:11px;line-height:1.7;color:var(--muted)}.actions{display:flex;gap:10px}.actions>button:not(.primary){padding:10px;font-size:11px}#empty{text-align:center;padding:60px}#empty button{display:block;margin:20px auto;padding:10px}#feedback{font-size:12px}
@media(min-width:1500px){main,header,footer{max-width:1600px;margin:auto}}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}h1{letter-spacing:-3px}.hero-copy{padding:45px 9% 20px}.hero-visual{min-height:510px}.hero-bottom{font-size:7px;gap:10px}}@media(max-width:700px){header{height:76px}.brand{font-size:17px;gap:8px}.brand img{width:32px;height:45px}.sub{font-size:7px}nav{gap:8px}nav>a{display:none}nav button{font-size:11px;padding:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 6% 25px}h1{font-size:66px}.hero-visual{min-height:330px}.hero-visual img{height:230px;width:76%;margin-bottom:35px}.hero-caption{bottom:24px}.hero-caption strong{font-size:20px}.hero-visual:before{width:270px;height:270px}.hero-bottom{margin-top:30px}.section-top{display:block}.section-top>p{margin-top:20px}#catalogue{padding-top:45px}.grid{grid-template-columns:repeat(2,1fr);gap:10px}.picture{height:160px;padding:25px 15px 15px}.card-info{padding:13px}.title{font-size:13px;min-height:54px}.price{font-size:20px}.price small{font-size:9px}.tools{flex-wrap:wrap}.tools select{padding:12px;width:100%}.searchbox{flex-basis:100%}.filterline{display:block}#results{display:block;margin-top:15px}.closing{padding:28px;display:block}.closing p{margin-top:25px}.closing button{margin-top:10px}footer{gap:18px;flex-wrap:wrap}.actions{flex-wrap:wrap}}

/* Variante anthracite et rouge Harmonya */
.primary{color:#fff}.closing>span{color:#f2888a}button:hover{background:#f5dddd}.primary:hover{background:#bc2b30}.hero .dot{background:#d93639}

.partner-form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.partner-form label{display:block;font-size:10px;letter-spacing:1.6px;font-weight:700;margin-bottom:10px}.partner-input{display:flex;gap:8px;flex-wrap:wrap}.partner-input input{min-width:140px;flex:1;width:100%;border:1px solid var(--line);padding:12px;background:white;border-radius:3px;font-size:12px}.partner-input button{padding:10px 14px;font-size:12px;border-radius:3px}.partner-input input[aria-invalid="true"]{border-color:#b92b30}#partner-status{font-size:11px;line-height:1.5;min-height:16px}.discount-row{display:flex;justify-content:space-between;font-size:12px;margin:12px 0}.discount-applied{color:#b92b30}#partner-remove[hidden]{display:none}

/* Logo plus présent dans l’en-tête */
header{height:120px}.brand{gap:18px}.brand img{width:84px;height:104px}html{scroll-padding-top:130px}
@media(max-width:700px){header{height:104px}.brand{gap:10px}.brand img{width:68px;height:90px}}
@media(max-width:420px){.brand{gap:7px;font-size:14px;letter-spacing:1px}.sub{font-size:6px;letter-spacing:1px}nav button{padding:10px 8px;font-size:10px}nav b{margin-left:6px}}

.hero h1 em{display:inline-block;font-size:clamp(28px,3.7vw,60px);letter-spacing:-2px;line-height:1.15}.closing>span{line-height:1.7}
@media(max-width:700px){.hero h1 em{font-size:clamp(27px,7vw,46px);letter-spacing:-1.5px}}

/* Logo renforcé et accroche courte */
header{height:150px}.brand img{width:120px;height:136px}.hero h1 em{font-size:inherit;letter-spacing:inherit;line-height:inherit}html{scroll-padding-top:160px}
@media(max-width:700px){header{height:132px}.brand img{width:100px;height:118px}}
@media(max-width:380px){header{padding-left:4%;padding-right:4%}.brand{font-size:12px;gap:5px}.sub{font-size:5px;letter-spacing:.6px}.brand img{width:94px;height:118px}nav button{padding:9px 6px}nav b{margin-left:4px}}
