/* Brand-specific unit browsing: spacious device cards, direct model links, compact mobile lists. */
.unit-catalogue { --uc-navy:#303f75; --uc-red:#df252a; --uc-red-text:#bc1d24; --uc-muted:#60677a; --uc-line:#e0e4ef; --uc-soft:#f7f8fc; color:var(--uc-navy); }
.unit-catalogue [hidden] { display:none!important; }
.unit-catalogue .eyebrow { color:var(--uc-red-text); margin-bottom:15px; letter-spacing:.1em; }
.unit-catalogue h1,.unit-catalogue h2,.unit-catalogue h3 { color:var(--uc-navy); font-family:Inter,Arial,sans-serif; font-weight:600; }
.unit-catalogue a,.unit-catalogue button { transition:color .2s,background .2s,border-color .2s; }
.unit-catalogue :focus-visible { outline:3px solid var(--uc-red); outline-offset:4px; }
.unit-catalogue-hero { background:var(--uc-soft); border-block:1px solid var(--uc-line); }
.unit-catalogue-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:65px; padding-block:42px 45px; }
.unit-catalogue-hero h1 { font-size:clamp(36px,4vw,54px); line-height:1.12; letter-spacing:-.05em; }
.unit-catalogue-hero h1>span { color:var(--uc-red-text); }
.unit-catalogue-hero p { color:var(--uc-muted); font-size:15px; line-height:1.8; max-width:560px; margin-top:20px; }
.unit-catalogue-facts { display:flex; flex-wrap:wrap; gap:25px; padding-top:23px; margin:25px 0 0; border-top:1px solid #d6dbea; }
.unit-catalogue-facts>div { min-width:85px; }
.unit-catalogue-facts dt { font-size:11px; color:var(--uc-muted); }
.unit-catalogue-facts dd { font-size:24px; font-weight:600; line-height:1.4; margin:4px 0 0; letter-spacing:-.025em; }
.unit-catalogue-preview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; position:relative; padding-bottom:35px; }
.unit-catalogue-preview-item { display:flex; flex-direction:column; justify-content:center; align-items:center; min-width:0; min-height:215px; padding:20px 12px 14px; border:1px solid var(--uc-line); background:#fff; border-radius:10px; box-shadow:0 5px 25px #303f7505; }
.unit-catalogue-preview-item:nth-child(2) { transform:translateY(-16px); }
.unit-catalogue-preview-item img { width:100%; height:145px; object-fit:contain; margin:auto; }
.unit-catalogue-preview-item>span { display:flex; justify-content:space-between; width:100%; align-items:center; gap:10px; font-size:11px; font-weight:600; margin-top:15px; line-height:1.5; }
.unit-catalogue-preview-item:hover { border-color:#aab5d3; color:var(--uc-red-text); }
.unit-preview-caption { position:absolute; bottom:0; left:0; right:0; display:flex; justify-content:space-between; gap:15px; font-size:10px; color:var(--uc-muted); }
.unit-preview-caption>span:first-child { letter-spacing:.07em; font-weight:600; }
.unit-catalogue-navigation { padding-block:28px 0; }
.unit-brand-selector { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.unit-brand-selector>a { min-width:0; position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; padding:20px 25px; min-height:86px; border:1px solid var(--uc-line); border-radius:8px; background:#fff; }
.unit-brand-selector img { width:210px; height:auto; max-width:55%; object-fit:contain; }
.unit-brand-selector>a>span:not(.unit-brand-check):not(.unit-brand-go) { color:var(--uc-muted); font-size:12px; margin-left:auto; padding-right:28px; }
.unit-brand-selector>a[aria-current] { border-color:var(--uc-navy); box-shadow:inset 0 -3px 0 var(--uc-navy); }
.unit-brand-selector>a:hover { border-color:var(--uc-red); }
.unit-brand-check,.unit-brand-go { position:absolute; right:22px; font-size:15px; color:var(--uc-navy); }
.unit-brand-check { background:var(--uc-navy); color:#fff; display:grid; place-items:center; width:22px; height:22px; border-radius:50%; font-size:12px; }
.unit-catalogue-category-links { display:flex; flex-wrap:wrap; gap:12px 25px; align-items:center; padding:17px 3px 20px; border-bottom:1px solid var(--uc-line); font-size:12px; }
.unit-catalogue-category-links>strong { font-weight:500; color:var(--uc-muted); margin-right:auto; }
.unit-catalogue-category-links>a { font-weight:600; display:flex; gap:16px; align-items:center; }
.unit-catalogue-category-links>a:hover { color:var(--uc-red-text); }
.unit-catalogue-browser { padding-block:52px 60px; }
.unit-browser-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); align-items:end; gap:60px; margin-bottom:30px; }
.unit-browser-heading h2 { font-size:clamp(30px,3vw,42px); line-height:1.15; letter-spacing:-.045em; }
.unit-browser-heading>p { color:var(--uc-muted); font-size:14px; line-height:1.8; max-width:460px; }
.unit-catalogue-controls { display:grid; grid-template-columns:minmax(0,1fr) auto; padding:24px; gap:17px 25px; background:var(--uc-soft); border:1px solid var(--uc-line); border-radius:10px; margin-bottom:36px; }
.unit-catalogue-search>label { display:block; font-size:12px; font-weight:600; margin-bottom:8px; }
.unit-catalogue-search>div { display:flex; align-items:center; position:relative; }
.unit-catalogue-search svg { position:absolute; left:13px; width:20px; height:20px; color:var(--uc-muted); }
.unit-catalogue-search input { width:100%; min-width:0; height:47px; padding:10px 13px 10px 42px; border:1px solid #cfd6e7; background:#fff; color:var(--uc-navy); border-radius:5px; font-size:14px; }
.unit-catalogue-search input::placeholder { color:#71788c; }
.unit-catalogue-filter-status { display:flex; flex-direction:column; align-items:flex-end; justify-content:flex-end; gap:7px; font-size:12px; padding-bottom:4px; }
.unit-catalogue-filter-status button { background:none; border:0; padding:2px 0; color:var(--uc-red-text); font-size:11px; }
.unit-catalogue-filter-tabs { display:flex; flex-wrap:wrap; gap:7px; grid-column:1/-1; }
.unit-catalogue-filter-tabs>button { min-height:38px; padding:7px 13px; background:#fff; border:1px solid #d4daea; border-radius:5px; color:var(--uc-navy); font-size:12px; line-height:1.5; }
.unit-catalogue-filter-tabs>button[aria-pressed=true] { background:var(--uc-navy); color:#fff; border-color:var(--uc-navy); }
.unit-catalogue-filter-tabs>button:hover { border-color:var(--uc-navy); }
.unit-catalogue-jump-links { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:35px; }
.unit-catalogue-jump-links>a { display:flex; gap:15px; border:1px solid var(--uc-line); border-radius:5px; padding:9px 14px; font-size:12px; }
.unit-type-section { margin-top:38px; scroll-margin-top:125px; }
.unit-type-heading { display:flex; justify-content:space-between; align-items:center; gap:25px; padding-bottom:20px; border-bottom:1px solid var(--uc-line); margin-bottom:21px; }
.unit-type-heading>div { display:flex; align-items:center; min-width:0; gap:20px; }
.unit-type-icon { flex:0 0 auto; width:58px; height:54px; color:var(--uc-navy); }
.unit-type-heading h2 { font-size:25px; letter-spacing:-.025em; line-height:1.2; }
.unit-type-heading p { font-size:12px; color:var(--uc-muted); line-height:1.6; margin-top:7px; max-width:780px; }
.unit-type-heading>span { flex:0 0 auto; font-size:11px; white-space:nowrap; color:var(--uc-muted); }
.unit-family-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start; }
.unit-family-card { min-width:0; border:1px solid var(--uc-line); border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 6px 22px #303f7504; scroll-margin-top:125px; }
.unit-family-visual { display:flex; align-items:center; justify-content:center; padding:24px 35px; min-height:198px; height:220px; background:linear-gradient(140deg,#f9fafe,#f1f3f9); border-bottom:1px solid var(--uc-line); }
.unit-family-visual img { width:100%; height:100%; max-width:360px; object-fit:contain; }
.unit-family-visual.has-type-icon { flex-direction:column; gap:10px; }
.unit-family-visual.has-type-icon .unit-type-icon { width:125px; height:115px; color:#50618e; }
.unit-family-visual.has-type-icon>span { color:var(--uc-muted); font-size:11px; letter-spacing:.04em; }
.unit-family-copy { padding:21px 24px 22px; }
.unit-family-meta { display:flex; justify-content:space-between; gap:15px; color:var(--uc-muted); font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.06em; margin-bottom:11px; }
.unit-family-meta>span:last-child { font-weight:600; color:var(--uc-red-text); }
.unit-family-copy h3 { font-size:23px; letter-spacing:-.025em; line-height:1.25; overflow-wrap:anywhere; }
.unit-family-copy p { font-size:13px; line-height:1.75; color:var(--uc-muted); margin-top:12px; }
.unit-family-capacity { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; padding-top:15px; }
.unit-family-capacity strong { font-size:16px; font-weight:600; }
.unit-family-capacity>span { font-size:10px; color:var(--uc-muted); }
.unit-family-models { padding:0 24px; }
.unit-model-list-heading { display:flex; justify-content:space-between; gap:14px; padding:13px 0 10px; border-top:1px solid var(--uc-line); font-size:10px; color:var(--uc-muted); }
.unit-model-list { list-style:none; margin:0; padding:0; }
.unit-model-list>li>a { display:grid; grid-template-columns:minmax(0,1fr) auto 14px; gap:14px; align-items:center; padding:13px 0; border-top:1px solid #edf0f7; }
.unit-model-list>li>a:hover { color:var(--uc-red-text); }
.unit-model-name { font-weight:600; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.unit-model-capacity { display:flex; gap:16px; color:var(--uc-navy); }
.unit-model-capacity>span { display:block; min-width:49px; text-align:right; font-size:11px; font-weight:500; line-height:1.4; }
.unit-model-capacity small { display:block; color:var(--uc-muted); font-size:9px; font-weight:400; padding-top:3px; }
.unit-model-arrow { font-size:15px; text-align:right; }
.unit-more-models>summary { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:43px; margin:4px 0 0; padding:9px 12px; background:var(--uc-soft); border:1px solid var(--uc-line); border-radius:4px; color:var(--uc-navy); font-size:11px; font-weight:600; cursor:pointer; list-style:none; }
.unit-more-models>summary::-webkit-details-marker { display:none; }
.unit-more-models>summary>span:last-child { font-size:20px; font-weight:400; transition:transform .2s; }
.unit-more-models[open]>summary>span:last-child { transform:rotate(45deg); }
.unit-more-models[open]>summary { margin-bottom:10px; }
.unit-family-project { display:flex; justify-content:space-between; gap:15px; font-size:11px; font-weight:500; color:var(--uc-red-text); margin:17px -24px 0; padding:14px 24px; border-top:1px solid var(--uc-line); }
.unit-family-project:hover { background:var(--uc-soft); }
.unit-family-enquiry { padding:0 24px 22px; }
.unit-family-enquiry>p { color:var(--uc-muted); font-size:12px; }
.unit-family-enquiry>a { display:flex; justify-content:space-between; gap:20px; margin-top:18px; font-size:12px; color:var(--uc-red-text); font-weight:600; }
.unit-family-grid-outdoor { grid-template-columns:1fr; }
.unit-family-grid-outdoor .unit-family-card { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1fr); grid-template-rows:auto 1fr; }
.unit-family-grid-outdoor .unit-family-visual { grid-column:1; grid-row:1/3; height:100%; min-height:355px; border-bottom:0; border-right:1px solid var(--uc-line); padding:38px; }
.unit-family-grid-outdoor .unit-family-visual img { height:300px; max-height:400px; }
.unit-family-grid-outdoor .unit-family-copy { padding:24px 26px 19px; }
.unit-family-grid-outdoor .unit-family-models { padding-inline:26px; }
.unit-family-grid-outdoor .unit-family-project { margin-inline:-26px; padding-inline:26px; }
.unit-catalogue-note { margin-top:35px; padding:16px 20px; background:var(--uc-soft); border-left:2px solid #bec7e0; color:var(--uc-muted); font-size:12px; line-height:1.8; }
.unit-catalogue-empty { padding:35px; background:var(--uc-soft); border:1px solid var(--uc-line); border-radius:8px; }
.unit-catalogue-empty h3 { font-size:22px; }
.unit-catalogue-empty p { font-size:14px; color:var(--uc-muted); margin-top:12px; }
.unit-catalogue-empty button { background:var(--uc-navy); color:#fff; border:0; border-radius:5px; padding:11px 17px; margin-top:18px; font-size:12px; }
.unit-catalogue-project { padding-block:55px; background:var(--uc-soft); border-top:1px solid var(--uc-line); }
.unit-catalogue-project>.wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:60px; }
.unit-catalogue-project h2 { font-size:clamp(29px,3vw,37px); line-height:1.2; }
.unit-catalogue-project p { font-size:14px; color:var(--uc-muted); line-height:1.8; }
.unit-catalogue-project>.wrap>div:last-child>div { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:25px; font-size:12px; font-weight:600; }
.unit-project-button { display:inline-flex; justify-content:space-between; align-items:center; gap:25px; color:#fff!important; background:var(--uc-red); padding:12px 20px; border-radius:5px; min-height:46px; }
.unit-project-button:hover { background:var(--uc-red-text); }
.unit-route-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.unit-route-links>a { display:inline-flex; align-items:center; gap:25px; font-size:13px; font-weight:600; padding:12px 17px; color:#303f75; background:#f7f8fc; border:1px solid #d4daea; border-radius:5px; }
.unit-route-links>a:hover { background:#303f75; color:#fff; border-color:#303f75; }
@media(max-width:1080px) {
  .unit-catalogue-hero-grid { gap:32px; }
  .unit-catalogue-hero h1 { font-size:41px; }
  .unit-catalogue-preview-item { min-height:188px; padding-inline:8px; }
  .unit-catalogue-preview-item img { height:125px; }
  .unit-catalogue-facts { gap:20px; }
  .unit-brand-selector>a { padding:18px; }
  .unit-brand-selector img { max-width:60%; width:190px; }
  .unit-brand-selector>a>span:not(.unit-brand-check):not(.unit-brand-go) { font-size:10px; }
  .unit-model-capacity { gap:9px; }
  .unit-family-copy,.unit-family-models { padding-inline:19px; }
  .unit-family-project { margin-inline:-19px; padding-inline:19px; }
  .unit-model-list>li>a { gap:9px; }
}
@media(max-width:760px) {
  .unit-catalogue-hero-grid { grid-template-columns:1fr; gap:30px; padding-block:27px 26px; }
  .unit-catalogue-hero h1 { font-size:36px; }
  .unit-catalogue-hero p { margin-top:16px; font-size:14px; }
  .unit-catalogue-facts { margin-top:20px; padding-top:16px; gap:25px; }
  .unit-catalogue-facts dd { font-size:22px; }
  .unit-catalogue-facts dt { font-size:10px; }
  .unit-catalogue-preview { gap:8px; padding-bottom:28px; }
  .unit-catalogue-preview-item { min-height:144px; padding:12px 8px 10px; border-radius:7px; }
  .unit-catalogue-preview-item:nth-child(2) { transform:none; }
  .unit-catalogue-preview-item img { height:92px; }
  .unit-catalogue-preview-item>span { font-size:10px; gap:5px; margin-top:10px; }
  .unit-preview-caption { font-size:8px; gap:12px; }
  .unit-catalogue-navigation { padding-top:20px; }
  .unit-brand-selector { gap:9px; }
  .unit-brand-selector>a { flex-direction:column; align-items:flex-start; justify-content:center; padding:16px 12px; gap:13px; min-height:105px; }
  .unit-brand-selector img { width:160px; max-width:100%; }
  .unit-brand-selector>a>span:not(.unit-brand-check):not(.unit-brand-go) { margin:0; padding:0 23px 0 0; font-size:10px; }
  .unit-brand-check,.unit-brand-go { bottom:13px; right:12px; }
  .unit-brand-check { width:19px; height:19px; font-size:10px; }
  .unit-catalogue-category-links { gap:9px 20px; padding-block:17px; font-size:11px; }
  .unit-catalogue-category-links>strong { flex-basis:100%; }
  .unit-catalogue-category-links>a { gap:8px; }
  .unit-catalogue-browser { padding-block:30px 38px; }
  .unit-browser-heading { grid-template-columns:1fr; gap:18px; margin-bottom:23px; }
  .unit-browser-heading h2 { font-size:30px; }
  .unit-browser-heading>p { font-size:13px; }
  .unit-catalogue .eyebrow { font-size:10px; letter-spacing:.07em; }
  .unit-catalogue-controls { grid-template-columns:1fr; padding:16px; gap:13px; margin-bottom:27px; }
  .unit-catalogue-search input { height:45px; font-size:12px; }
  .unit-catalogue-search>label { font-size:11px; }
  .unit-catalogue-filter-status { flex-direction:row; justify-content:space-between; align-items:center; font-size:11px; }
  .unit-catalogue-filter-tabs { gap:6px; }
  .unit-catalogue-filter-tabs>button { font-size:10px; min-height:37px; padding:7px 10px; }
  .unit-type-section { margin-top:30px; scroll-margin-top:95px; }
  .unit-type-heading { align-items:flex-start; gap:15px; padding-bottom:17px; margin-bottom:17px; }
  .unit-type-heading>div { gap:10px; }
  .unit-type-heading .unit-type-icon { width:40px; height:43px; }
  .unit-type-heading h2 { font-size:21px; }
  .unit-type-heading p { font-size:11px; line-height:1.65; margin-top:8px; }
  .unit-type-heading>span { font-size:9px; padding-top:4px; }
  .unit-family-grid { grid-template-columns:1fr; gap:18px; }
  .unit-family-visual { height:188px; min-height:188px; padding:20px 30px; }
  .unit-family-copy { padding:18px 19px 18px; }
  .unit-family-copy h3 { font-size:22px; }
  .unit-family-copy p { font-size:12px; margin-top:10px; }
  .unit-family-meta { font-size:9px; }
  .unit-family-capacity { padding-top:12px; gap:7px 13px; }
  .unit-family-capacity strong { font-size:15px; }
  .unit-family-capacity>span { font-size:9px; }
  .unit-family-models { padding-inline:19px; }
  .unit-model-list>li>a { grid-template-columns:minmax(0,1fr) auto 11px; gap:8px; padding:12px 0; }
  .unit-model-name { font-size:11px; }
  .unit-model-capacity { gap:10px; }
  .unit-model-capacity>span { min-width:45px; font-size:10px; }
  .unit-model-capacity small { font-size:8px; }
  .unit-model-list-heading { font-size:9px; }
  .unit-family-project { font-size:10px; margin-inline:-19px; padding-inline:19px; }
  .unit-family-grid-outdoor .unit-family-card { display:block; }
  .unit-family-grid-outdoor .unit-family-visual { height:225px; min-height:225px; padding:22px 35px; border-right:0; border-bottom:1px solid var(--uc-line); }
  .unit-family-grid-outdoor .unit-family-visual img { height:180px; }
  .unit-family-grid-outdoor .unit-family-copy { padding:20px 19px 18px; }
  .unit-family-grid-outdoor .unit-family-models { padding-inline:19px; }
  .unit-family-grid-outdoor .unit-family-project { margin-inline:-19px; padding-inline:19px; }
  .unit-catalogue-note { padding:14px 16px; font-size:11px; margin-top:25px; }
  .unit-catalogue-project { padding-block:36px; }
  .unit-catalogue-project>.wrap { grid-template-columns:1fr; gap:20px; }
  .unit-catalogue-project h2 { font-size:28px; }
  .unit-catalogue-project p { font-size:13px; }
  .unit-catalogue-project>.wrap>div:last-child>div { gap:17px; font-size:11px; }
  .unit-catalogue-empty { padding:24px; }
  .unit-catalogue-empty h3 { font-size:20px; }
}
@media(max-width:380px) {
  .unit-catalogue-hero h1 { font-size:32px; }
  .unit-catalogue-facts { gap:16px; }
  .unit-catalogue-facts>div { min-width:70px; }
  .unit-type-heading { flex-wrap:wrap; }
  .unit-type-heading>span { padding-left:50px; margin-top:-5px; }
  .unit-model-capacity { gap:6px; }
  .unit-model-capacity>span { min-width:40px; }
  .unit-model-name { font-size:10px; }
  .unit-preview-caption { font-size:7px; }
}
@media(prefers-reduced-motion:reduce) { .unit-catalogue a,.unit-catalogue button,.unit-more-models>summary>span:last-child { transition:none; } }
