.sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.nav-dropdown{position:relative}
.nav-dropdown>summary{font-size:12px;list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:29px 0;white-space:nowrap;position:relative}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary:after{content:'';position:absolute;bottom:20px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0)}
.nav-dropdown.current>summary:after,.nav-dropdown[open]>summary:after{transform:scaleX(1)}
.nav-dropdown-panel{position:absolute;top:100%;left:-20px;width:350px;max-height:65vh;overflow:auto;background:white;border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:0 0 8px 8px;padding:12px;box-shadow:0 16px 32px #00000016}
.nav-dropdown-panel a{display:block;font-size:12px;padding:9px 12px;line-height:1.6;border-radius:4px;white-space:normal}
.nav-dropdown-panel a:hover,.nav-dropdown-panel a[aria-current=page]{background:#fff2e5;color:var(--accent)}
.nav-dropdown-panel .cctv-nav-root{font-weight:600}
.nav-dropdown-panel .cctv-nav-root:nth-child(2){background:var(--paper);color:var(--accent);margin-top:4px}
.nav-dropdown-panel .cctv-nav-sub{padding-left:24px;font-size:11px}
.cctv-nav-other{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}
.cctv-intro-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px;font-size:12px;color:var(--muted)}
.cctv-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cctv-family{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.cctv-family-image{height:195px;padding:30px;display:block;border-bottom:1px solid var(--line)}
.cctv-family-image img{width:100%;height:100%;object-fit:contain}
.cctv-family-body{padding:25px;display:flex;flex-direction:column;flex:1}
.cctv-family h3{font-size:21px;line-height:1.35;overflow-wrap:anywhere;margin-bottom:14px}
.cctv-family p{font-size:12px;color:var(--muted);line-height:1.85}
.cctv-family .text-link{margin-top:auto;align-self:flex-start;font-size:12px}
.cctv-count{font-size:10px;color:var(--accent);font-weight:600;margin-bottom:12px}
.cctv-filters button[data-category=cctv]{font-weight:600;border-left:3px solid var(--orange)}
.cctv-filters button[data-category^=cameras-],.cctv-filters button[data-category=enregistreurs-nvr-ivss],.cctv-filters button[data-category=stockage-evs],.cctv-filters button[data-category=trafic-parkings-anpr],.cctv-filters button[data-category=affichage-controle],.cctv-filters button[data-category=logiciels-vms]{padding-left:19px}
.catalog-sidebar>.text-link{margin-top:25px;font-size:11px}
.catalog-layout>div,.product-detail>div{min-width:0}
.cctv-product-top{padding-top:42px;padding-bottom:62px}
.cctv-product-top .product-detail h1{overflow-wrap:anywhere}
.cctv-product-top figure{margin:0}
.cctv-product-top figcaption{text-align:center;font-size:10px;color:var(--muted);margin-top:20px}
.cctv-product-top .product-info-line{flex-wrap:wrap;gap:10px}
.cctv-product-top .product-info-line a{color:var(--accent)}
.cctv-series{font-size:12px;color:var(--muted);margin:20px 0}
.cctv-key-specs{display:grid;gap:12px;margin:24px 0}
.cctv-key-specs>div{border-left:2px solid var(--orange);padding-left:15px}
.cctv-key-specs dt{font-size:10px;color:var(--muted)}
.cctv-key-specs dd{font-size:13px;margin:3px 0 0;overflow-wrap:anywhere}
.cctv-specs-section{padding-top:60px;padding-bottom:60px}
.cctv-specs-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:white}
.cctv-specs{width:100%;border-collapse:collapse;font-size:12px;line-height:1.85;table-layout:fixed}
.cctv-specs caption{text-align:left;padding:16px 22px;color:var(--muted);font-size:11px;border-bottom:1px solid var(--line)}
.cctv-specs th,.cctv-specs td{text-align:left;padding:14px 22px;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.cctv-specs thead th{background:#fff2e5;font-size:11px;color:var(--accent)}
.cctv-specs th:first-child{width:34%}
.cctv-specs tbody th{font-weight:400;color:var(--muted)}
.cctv-specs tbody tr:nth-child(even){background:#fbfaf8}
.cctv-specs tbody tr:last-child>*{border-bottom:0}
.cctv-source-note{border-left:3px solid var(--orange);padding:18px 22px;background:#fff2e5;font-size:13px}
.cctv-variant{margin:18px 0}
.cctv-variant>summary{padding:18px 22px;border:1px solid var(--line);border-radius:6px;background:white;cursor:pointer;font-size:13px;font-weight:600}
.cctv-variant[open]>summary{margin-bottom:14px}
.cctv-variant .cctv-specs-scroll{margin-top:12px}
.cctv-static-title{margin:55px 0 25px;font-size:26px}
.product-card h3{overflow-wrap:anywhere}
@media(max-width:1100px){.nav-dropdown>summary{font-size:11px}.cctv-family-grid{gap:18px}.cctv-family-body{padding:21px}.cctv-family h3{font-size:19px}}
@media(max-width:850px){.nav-links.open{max-height:calc(100dvh - 78px);overflow-y:auto}.nav-dropdown>summary{font-size:14px;padding:13px 0}.nav-dropdown>summary:after{bottom:7px;right:auto;width:30px}.nav-dropdown-panel{position:static;width:100%;max-height:none;box-shadow:none;margin:6px 0 15px}.cctv-family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cctv-product-top .product-detail{gap:30px}.cctv-specs th,.cctv-specs td{padding:13px 17px}}
@media(max-width:600px){.cctv-family-grid{grid-template-columns:1fr}.cctv-family-image{height:180px}.cctv-family h3{font-size:23px}.cctv-family p{font-size:13px}.cctv-intro-links{gap:18px}.cctv-specs{font-size:11px}.cctv-specs th,.cctv-specs td{padding:12px}.cctv-specs th:first-child{width:40%}.cctv-specs caption{padding:14px}.cctv-filters{max-width:100%}.cctv-product-top{padding-top:28px;padding-bottom:40px}.cctv-specs-section{padding:45px 0}.cctv-source-note{font-size:12px}.cctv-key-specs dd{font-size:12px}}
