/*
Theme Name: Pièces Pro
Description: Boutique B2B légère pour pièces de portes automatiques, intégrée à WooCommerce.
Version: 1.0.3
Requires PHP: 8.0
*/
:root{--navy:#12283f;--blue:#1963d2;--ink:#203245;--muted:#647487;--line:#e0e6ec;--soft:#f3f6fa;--white:#fff}*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:#fff}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-block;border:0;border-radius:6px;background:var(--blue);color:white;padding:12px 20px;font-weight:650;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#124fac;text-decoration:none}.button.secondary{background:white;color:var(--navy);border:1px solid var(--line)}.wrap{max-width:1240px;margin:auto;padding:0 32px}.top{background:var(--navy);color:#e0eafa;font-size:12px;letter-spacing:.04em;padding:8px 0}.top .wrap{display:flex;justify-content:space-between;gap:16px}.header{border-bottom:1px solid var(--line);padding:23px 0}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--navy);line-height:1.2;font-weight:800;font-size:23px;letter-spacing:-.8px}.brand small{display:block;font-weight:400;font-size:11px;letter-spacing:.02em;color:var(--muted);margin-top:7px}.nav{display:flex;gap:26px;align-items:center;font-size:14px}.nav a{color:var(--ink);font-weight:600}.search{display:flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;max-width:310px}.search input{border:0;min-width:0;outline:none;padding:10px 14px;width:100%}.search button{border-radius:0;padding:8px 14px;background:var(--soft);color:var(--navy)}.hero{background:linear-gradient(115deg,#edf3fa,#f8fafc 66%);border-bottom:1px solid var(--line);padding:64px 0}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:.16em;font-weight:750;font-size:11px;margin-bottom:16px}h1,h2,h3{line-height:1.16;color:var(--navy)}h1{font-size:clamp(32px,4vw,54px);letter-spacing:-2px;margin:0 0 22px}h2{font-size:30px;letter-spacing:-.8px;margin:0 0 12px}h3{font-size:19px;letter-spacing:-.3px}.lead{max-width:550px;color:var(--muted);font-size:17px;margin:0 0 26px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-panel{border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 18px 45px #12283f0c;overflow:hidden}.panel-head{background:var(--navy);color:white;padding:18px 24px;font-size:13px;font-weight:650}.panel-row{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line);gap:20px}.panel-row strong{font-size:21px;color:var(--navy)}.panel-row small{display:block;color:var(--muted);font-size:12px}.panel-foot{padding:15px 24px;font-size:11px;color:var(--muted)}.strip{padding:24px 0;border-bottom:1px solid var(--line)}.strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;font-size:13px}.strip strong{display:block;color:var(--navy)}.strip span{color:var(--muted)}.section{padding:56px 0}.section.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-head p{margin:0;color:var(--muted);font-size:14px}.family-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.family{border:1px solid var(--line);border-radius:6px;background:white;padding:22px 16px;color:var(--navy);font-weight:650;font-size:13px;min-height:90px}.family span{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:6px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden;display:flex;flex-direction:column}.visual{background:linear-gradient(145deg,#edf2f7,#f8fafc);padding:28px;min-height:155px;display:flex;flex-direction:column;justify-content:center;gap:10px;border-bottom:1px solid var(--line)}.visual strong{font-size:25px;letter-spacing:1px;color:#334b68}.visual small{color:#8794a4;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.product-img{width:100%;height:180px;object-fit:contain;background:#f6f8fb;padding:18px}.card-body{padding:22px;display:flex;flex-direction:column;flex:1}.badge{font-size:10px;text-transform:uppercase;color:var(--blue);letter-spacing:.08em;font-weight:750}.card h3{margin:9px 0 14px;min-height:45px}.price{font-size:24px;font-weight:750;letter-spacing:-.6px;color:var(--navy)}.price small{font-size:12px;font-weight:500;letter-spacing:0}.availability{font-size:12px;color:var(--muted);margin:7px 0 18px}.card .button{margin-top:auto;text-align:center;font-size:13px}.callout{background:var(--navy);color:#dae4f1;padding:36px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:30px}.callout h2{color:white;font-size:27px}.callout p{margin:0;font-size:14px}.page{padding:45px 0 64px;min-height:55vh}.page h1{font-size:37px;letter-spacing:-1px}.content{max-width:850px}.content h2{font-size:23px;margin-top:28px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:25px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:48px}.product-detail .visual{min-height:320px;border:1px solid var(--line);border-radius:8px}.product-detail .visual strong{font-size:40px}.product-detail .price{font-size:32px}.description{color:var(--muted);font-size:14px}.note{background:#f3f6fa;padding:18px;border-left:3px solid var(--blue);font-size:13px;margin:25px 0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.filters a{padding:8px 13px;border:1px solid var(--line);border-radius:5px;font-size:12px;background:white;color:var(--navy)}label{display:block;font-size:13px;font-weight:650;margin-bottom:6px}input,textarea,select{border:1px solid #cbd5e1;border-radius:5px;padding:11px 12px;max-width:100%;color:var(--ink);background:#fff}input:not([type=checkbox]):not([type=file]),textarea{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}textarea{min-height:110px}.form-caption{font-size:12px;color:var(--muted)}.basket-row{display:grid;grid-template-columns:1fr 90px 110px;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding:18px 0}.basket-row button{font-size:12px;padding:8px 12px;background:#e8eef5;color:var(--ink)}.message{padding:22px;background:#eef7f2;border:1px solid #cce3d6;border-radius:7px;margin-bottom:28px}.error{background:#fff2f2;border-color:#edc8c8}.footer{background:#f4f6f9;border-top:1px solid var(--line);padding:38px 0 22px;font-size:12px;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer a{color:var(--ink);display:block;margin-bottom:7px}.footer .brand{font-size:19px}.footer-bottom{border-top:1px solid var(--line);margin-top:25px;padding-top:16px;font-size:11px}.hidden{display:none!important}.screen-reader-text{position:absolute;left:-9999px}.woocommerce{max-width:1240px;margin:auto;padding:40px 32px}.woocommerce input{width:auto}.pagination{display:flex;gap:12px;padding-top:26px}.pagination .page-numbers{padding:8px 13px;border:1px solid var(--line)}@media(max-width:950px){.header .wrap{flex-wrap:wrap}.search{order:3;max-width:none;width:100%}.hero-grid{gap:30px}.family-grid{grid-template-columns:repeat(3,1fr)}.nav{gap:18px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.wrap{padding:0 20px}.header{padding:18px 0}.brand{font-size:20px}.nav{font-size:12px;gap:16px}.hero{padding:38px 0}.hero-grid,.product-detail{grid-template-columns:1fr;gap:26px}.hero h1{letter-spacing:-1px}.hero-panel{display:none}.strip .wrap{grid-template-columns:1fr;gap:13px}.section{padding:36px 0}.section-head{align-items:start;flex-direction:column}.grid{grid-template-columns:1fr}.family-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.callout{padding:25px;display:block}.callout .button{margin-top:20px}.footer-grid{grid-template-columns:1fr}.product-detail .visual{min-height:190px}.basket-row{grid-template-columns:1fr 65px}.basket-row button{grid-column:2}.page h1{font-size:30px}}

.product-detail .product-img{height:360px;padding:20px;border:1px solid var(--line);border-radius:8px}@media(max-width:650px){.product-detail .product-img{height:260px}}
