/* Product pages extend the approved homepage palette and shared components. */
button,select{font:inherit}
select:focus-visible{outline:3px solid #71a7d8;outline-offset:3px}
.navigation a[aria-current="page"]{color:var(--blue)}
.navigation a[aria-current="page"]:after{transform:scaleX(1)}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted);padding-block:23px}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb>span[aria-current]{color:var(--ink)}
.catalog-heading{background:#f4f6f8;border-bottom:1px solid var(--line)}
.catalog-title{display:flex;align-items:baseline;gap:22px;padding:4px 0 29px}
.catalog-title h1{font-size:32px;line-height:1.4;font-weight:600}
.catalog-title>span{color:var(--muted);font-size:13px}
.catalog-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:38px;padding-block:34px 52px}
.catalog-sidebar h2{font-size:16px;letter-spacing:0;margin-bottom:17px}
#series-navigation{border-top:1px solid var(--line)}
#series-navigation a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;border-bottom:1px solid #e9edf1;font-size:14px;padding:10px 12px}
#series-navigation a[aria-current],#series-navigation a:hover{background:#eaf1f7;color:var(--blue)}
#series-navigation small{font-size:11px;color:#87949f}
.catalog-help{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:32px;padding-top:23px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.catalog-help a[href^="tel"]{font-size:19px;color:var(--ink);font-weight:500}
.catalog-help a:last-child{color:var(--blue)}
.dimension-filter{padding:20px 22px 22px;background:#f4f6f8;border:1px solid #e6ebef}
.filter-heading{display:flex;align-items:center;gap:15px;margin-bottom:15px}
.filter-heading h2{font-size:15px;letter-spacing:0}
.filter-heading>span{font-size:11px;color:var(--muted)}
.filter-row{display:flex;align-items:flex-end;gap:20px}
.filter-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;flex:1;min-width:0}
.filter-fields label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#536370}
.filter-fields input{min-width:0;width:100%;height:38px;background:#fff;border:1px solid #d5dde4;padding:6px 10px;color:var(--ink)}
.filter-fields input::placeholder{color:#a0a9b0}
.filter-actions{display:flex;align-items:center;gap:16px}
.filter-actions .button{min-height:38px;padding:6px 20px;font-size:13px}
.reset-filter{border:0;background:transparent;color:var(--muted);padding:8px 0;font-size:12px;min-height:38px}
.reset-filter:hover{color:var(--blue)}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:70px;font-size:12px;color:var(--muted)}
.catalog-toolbar strong{font-weight:500;color:var(--ink)}
.catalog-toolbar label{display:flex;gap:12px;align-items:center}
.catalog-toolbar select{font-size:12px;border:1px solid #d9e1e7;background:white;padding:7px 26px 7px 10px;color:var(--ink);max-width:100%}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 18px}
.catalog-product{display:block;border:1px solid var(--line);min-width:0;transition:border-color .18s,box-shadow .18s}
.catalog-product:hover{border-color:#88aac9;box-shadow:0 3px 13px #244e7310}
.catalog-picture{display:grid;place-items:center;height:168px;margin:10px 10px 0}
.catalog-picture img{width:160px;height:160px;object-fit:contain}
.product-image-missing{display:grid;place-items:center;width:100%;height:100%;background:#f6f7f8;font-size:11px;color:#9ba5ad}
.catalog-product-info{padding:14px 17px 18px}
.catalog-product h3{font-size:16px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.catalog-product p{font-size:12px;color:var(--muted);margin-top:5px}
.catalog-product small{display:block;font-size:11px;color:#6a7d8b;margin-top:8px;overflow-wrap:anywhere}
.catalog-pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:32px;font-size:12px;color:var(--muted)}
.catalog-pagination[hidden],.catalog-empty[hidden]{display:none}
.catalog-pagination button{width:38px;height:38px;border:1px solid var(--line);color:var(--blue);background:#fff;font-size:17px}
.catalog-pagination button:disabled{color:#b7c1ca;cursor:default;background:#f8f9fa}
.catalog-empty{padding:50px 16px;text-align:center;background:#f7f9fb}
.catalog-empty h2{font-size:19px;font-weight:500;margin-bottom:10px}
.product-overview{display:grid;grid-template-columns:1fr 1fr;gap:72px;padding-block:7px 44px}
.detail-gallery{min-width:0}
.detail-main-image{height:350px;display:grid;place-items:center;border:1px solid #e5ebef;background:white}
.detail-main-image img{width:300px;height:300px;object-fit:contain}
.detail-thumbnails{display:flex;gap:12px;margin-top:16px}
.detail-thumbnails button{display:flex;align-items:center;gap:7px;padding:5px 10px 5px 5px;border:1px solid var(--line);background:#fff;min-width:0;color:var(--muted);font-size:11px}
.detail-thumbnails button[aria-pressed="true"]{border-color:var(--blue);color:var(--blue)}
.detail-thumbnails img{width:50px;height:50px;object-fit:contain}
.detail-info{padding:25px 28px 21px;min-width:0;background:#edf3f8;border:1px solid #d8e4ed;border-top:3px solid var(--blue);align-self:start}
.detail-series{display:inline-flex;align-items:center;gap:9px;font-size:12px;color:#315d80}
.detail-series:before{content:"";width:4px;height:14px;background:#b88846}
.detail-info h1{font-size:36px;line-height:1.35;letter-spacing:.015em;font-weight:600;margin-top:10px;color:#173c5a}
.detail-name{font-size:20px;margin-top:5px;color:#536f84}
.detail-spec{display:grid;grid-template-columns:120px 1fr;gap:0;margin:21px 0 22px;border:1px solid #d8e3eb;background:#fff;font-size:13px}
.detail-spec dt{color:#526c80;background:#e4edf4;padding:12px 14px;border-bottom:1px solid #d8e3eb}
.detail-spec dd{margin:0;padding:12px 14px;color:#213e54;border-bottom:1px solid #e5ecf1}
.detail-spec dt:last-of-type,.detail-spec dd:last-of-type{border-bottom:0}
.detail-actions{display:flex;gap:12px;flex-wrap:wrap}
.detail-actions .button{min-width:142px}
.detail-info .blue{background:#245f96;border-color:#245f96}
.detail-info .blue:hover{background:#194d7d;border-color:#194d7d}
.detail-info .outline{background:#e3efec;border-color:#b8d2c8;color:#315e51}
.detail-info .outline:hover{background:#d4e6df;border-color:#94b8aa}
.outline{border-color:#b8cddd;color:var(--blue);background:#fff}
.outline:hover{background:#f0f5f9}
.detail-phone{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 15px;font-size:12px;color:#75654f;margin-top:18px;padding:10px 14px;background:#f5eee3;border-left:2px solid #b88846}
.detail-phone strong{font-size:20px;font-weight:500;color:#483d2f}
.vip-link{display:inline-block;font-size:12px;color:#315d80;margin-top:10px;min-height:28px;text-decoration:underline;text-underline-offset:4px}
.detail-tabs{display:flex;gap:42px;border-bottom:1px solid #c7d6e2;background:#f2f6f9;padding:0 24px}
.detail-tabs a{padding-block:16px;font-size:14px;color:#31546f}
.detail-tabs a:hover{text-decoration:underline;text-underline-offset:8px}
.detail-section{padding-block:32px;border-bottom:1px solid var(--line)}
.detail-section h2{font-size:22px;letter-spacing:0;margin-bottom:21px}
.detail-description{font-size:14px;line-height:1.9;color:#526574;max-width:850px}
.detail-description p+p{margin-top:8px}
.technical-drawings{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.technical-drawings figure{margin:0;border:1px solid #e5ebef;padding:21px 15px 15px;display:grid;justify-items:center}
.technical-drawings img{width:300px;height:auto;aspect-ratio:1;object-fit:contain;max-width:100%}
.technical-drawings figcaption{font-size:12px;color:var(--muted);margin-top:13px}
.resource-columns{display:grid;grid-template-columns:1fr 1fr;gap:42px}
.resource-columns h3{font-size:14px;margin-bottom:12px;color:#526574;font-weight:500}
.resource-columns a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:15px;border-top:1px solid var(--line);font-size:13px}
.resource-columns a span{flex:none;font-size:11px;color:var(--blue)}
.resource-columns a:hover{color:var(--blue)}
.detail-neighbours{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;padding-block:27px 42px;font-size:12px;color:var(--blue)}
@media(max-width:1100px){
 .catalog-layout{grid-template-columns:160px minmax(0,1fr);gap:25px}
 .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .filter-row{display:block}.filter-actions{margin-top:15px}
 .product-overview{gap:36px}.detail-thumbnails button{flex-direction:column;flex:1;padding:6px}
}
@media(max-width:760px){
 .breadcrumb{font-size:11px;gap:8px;padding-block:19px}
 .catalog-title{padding-bottom:23px;gap:16px}.catalog-title h1{font-size:27px}
 .catalog-layout{display:block;padding-block:23px 32px}
 .catalog-sidebar h2,.catalog-help{display:none}
 #series-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:0;gap:8px;padding-bottom:15px;margin-bottom:8px}
 #series-navigation a{justify-content:center;text-align:center;min-width:0;min-height:40px;border:1px solid var(--line);padding:6px 8px;font-size:12px;line-height:1.4}
 #series-navigation small{display:none}
 .dimension-filter{padding:17px 16px}.filter-heading{margin-bottom:12px}
 .filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .filter-actions{justify-content:flex-end}.filter-actions .button{min-height:40px;min-width:90px}
 .catalog-toolbar{min-height:65px;gap:12px;font-size:11px}.catalog-toolbar label{gap:7px}.catalog-toolbar select{font-size:11px}
 .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px}
 .catalog-picture{height:130px;margin:8px 8px 0}.catalog-picture img{width:125px;height:125px;max-width:100%}
 .catalog-product-info{padding:12px}.catalog-product h3{font-size:14px}.catalog-product small{font-size:10px}
 .product-overview{grid-template-columns:1fr;gap:27px;padding-block:0 30px}
 .detail-main-image{height:310px}.detail-main-image img{width:280px;height:280px;max-width:100%}
 .detail-thumbnails{margin-top:12px;gap:10px}.detail-thumbnails button{flex-direction:row;justify-content:center;padding:5px;font-size:10px;gap:4px}.detail-thumbnails img{width:38px;height:38px}
 .detail-info{padding:21px 18px 16px}.detail-info h1{font-size:32px;margin-top:6px}.detail-name{font-size:18px}
 .detail-spec{margin-block:20px;grid-template-columns:94px minmax(0,1fr)}
 .detail-spec dt,.detail-spec dd{padding:11px 10px;font-size:12px}
 .detail-actions{gap:10px}.detail-actions .button{min-width:0;flex:1;padding-inline:12px;gap:18px}
 .detail-tabs{padding:0 16px;justify-content:space-between;gap:12px}.detail-tabs a{font-size:12px;padding-block:14px}
 .detail-section{padding-block:26px}.detail-section h2{font-size:21px;margin-bottom:17px}
 .technical-drawings{grid-template-columns:1fr;gap:16px}.technical-drawings figure{padding-top:16px}
 .resource-columns{grid-template-columns:1fr;gap:25px}
 .detail-neighbours{font-size:11px;padding-block:23px 30px;gap:10px}
}

/* Real Razor content: retain GET filters, full server-rendered lists and rich text. */
.site-main.catalog-main{width:100%;padding:0}.site-main.detail-main{padding-top:0}
.catalog-page,.detail-page{min-width:0}.catalog-page .breadcrumb,.detail-page .breadcrumb{margin:0;padding-block:23px}
.site-main.catalog-main p,.site-main.detail-main p{margin:0}
.catalog-page .catalog-description{max-width:850px;padding-bottom:26px;color:#617484;font-size:13px;line-height:1.9}
.catalog-page .catalog-title{padding-bottom:10px}.catalog-sidebar{min-width:0}
.series-navigation{border-top:1px solid var(--line)}
.series-navigation a,.all-series nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 12px;border-bottom:1px solid #e9edf1;font-size:13px;overflow-wrap:anywhere}
.series-navigation a[aria-current=page],.series-navigation a:hover,.all-series nav a:hover{background:#eaf1f7;color:var(--blue)}
.series-navigation small,.all-series small{font-size:11px;color:#6c7d8b;flex-shrink:0}
.all-series{margin-top:13px}.all-series summary{padding:12px;cursor:pointer;color:#315d80;font-size:13px;min-height:44px}.all-series summary span{color:var(--muted);font-size:11px;margin-left:5px}
.catalog-page .dimension-filter{display:block;margin:0}.filter-fields select{width:100%;min-width:0;background:#fff;border:1px solid #cbd7e1;padding:7px 9px;color:var(--ink)}
.filter-bottom{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:20px}.sort-fields{display:flex;gap:12px;flex-wrap:wrap}.sort-fields label{font-size:12px;gap:6px;color:#536370}.sort-fields select{min-width:84px;padding:7px 10px;border:1px solid #cbd7e1;background:white;color:var(--ink)}
.catalog-page .filter-actions{margin:0}.beam-filter{border:0;padding:0;margin:18px 0 0;min-width:0}.beam-filter legend{font-size:12px;color:#536370;margin-bottom:10px}.beam-filter .filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));max-width:400px}.catalog-page .beam-filter p{font-size:11px;color:#617484;margin-top:10px;line-height:1.7}
.blue{background:var(--blue);color:#fff}.site-main .blue:hover{background:#21568a;color:#fff}
.catalog-toolbar a{color:var(--blue)}.catalog-results{min-width:0}.catalog-results .product-grid{margin:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.catalog-page .filter-note{font-size:11px;color:#617484;margin-top:12px}
.catalog-results .product-grid li{padding:0;transition:border-color .18s,box-shadow .18s}.catalog-results .product-grid li:hover{border-color:#88aac9;box-shadow:0 3px 13px #244e7310}
.catalog-results .product-grid a{padding:16px 14px 18px;gap:5px;min-height:100%;color:var(--ink)}
.catalog-results .product-grid img{width:160px;height:160px;margin:0 auto 11px;object-fit:contain;max-width:100%}
.catalog-results .product-grid strong{font-size:16px;line-height:1.5}.catalog-results .product-grid span{font-size:12px;color:var(--muted)}.catalog-results .product-grid small{font-size:11px;line-height:1.6}
.catalog-results .product-unlisted{padding:16px 14px 18px!important}.catalog-results .product-unlisted>a{padding:0;min-height:44px;justify-content:center;color:var(--blue)}.catalog-results .product-image-missing{margin-bottom:11px;height:160px;max-width:100%;font-size:12px}
.catalog-empty{padding:40px 20px}.catalog-page .catalog-empty p{margin:12px 0;font-size:13px;color:var(--muted)}
.detail-page .product-overview{gap:64px;padding-bottom:40px}.detail-main-image{height:auto;aspect-ratio:1;max-height:480px}.detail-main-image>a{display:grid;place-items:center;width:100%;height:100%;min-height:0}.detail-main-image img{width:100%;height:100%;max-height:470px;object-fit:contain}
.detail-thumbnails{flex-wrap:wrap}.detail-thumbnails a{display:flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid var(--line);background:#fff;min-width:0;min-height:56px;color:var(--muted);font-size:11px}.detail-thumbnails a[aria-current=true]{border-color:var(--blue);color:var(--blue);background:#f5f9fc}
.site-main.detail-main .gallery-caption{font-size:11px;color:var(--muted);margin:9px 0 0}.site-main.detail-main .detail-name{font-size:20px;color:#536f84;margin-top:5px}
.detail-spec{grid-template-columns:100px minmax(0,1fr)}.detail-spec dd,.detail-info h1{overflow-wrap:anywhere}.detail-info h1{font-size:36px}.detail-info #vip-price{margin-bottom:20px}.detail-info #vip-price h2{font-size:16px}.detail-info #vip-price p{font-size:13px;margin-top:5px}
.detail-info .detail-actions .button{flex:1;min-width:0;gap:20px;padding-inline:17px}
.detail-page .detail-section{margin:0}.detail-description{max-width:none;color:#42586b}.detail-page .rich p{margin:.8em 0}.detail-page .rich img{max-width:100%;height:auto}.detail-page .rich table{display:block;max-width:100%;overflow:auto}.detail-page .rich a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.intro-pictures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:23px}.intro-picture{display:grid;place-items:center;min-width:0;border:1px solid var(--line);padding:10px;background:#fff}.intro-picture img{width:100%;height:240px;object-fit:contain}
.technical-drawings figure>a{display:grid;place-items:center;width:100%;min-height:300px}.technical-drawings img{width:auto;height:auto;aspect-ratio:auto;max-height:480px;max-width:100%}
.resource-columns .links{list-style:none;padding:0;margin:0}.resource-columns a>span:first-child{font-size:13px;color:inherit;flex:1;overflow-wrap:anywhere}.resource-columns a>span:last-child{flex:0 0 auto}.detail-neighbours a{overflow-wrap:anywhere;min-height:44px;display:inline-flex;align-items:center}.detail-neighbours{margin:0}.detail-tabs{flex-wrap:wrap}.detail-tabs a{white-space:nowrap}.detail-main a:focus-visible,.catalog-main a:focus-visible{outline-offset:2px}
.detail-image-missing{display:grid;place-items:center;width:100%;height:100%;color:#6c7d8b;background:#f5f7f9;font-size:14px}.unavailable-download{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-block:15px;font-size:13px;color:#617484}.unavailable-download>span{flex:1;overflow-wrap:anywhere}.unavailable-download small{white-space:nowrap;font-size:11px;margin-left:5px}.resource-columns .unavailable-download a{border:0;padding:0;min-height:44px;white-space:nowrap;font-size:12px;color:var(--blue)}
@media(max-width:1100px){.catalog-results .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.filter-bottom{flex-wrap:wrap}.catalog-page .filter-actions{align-self:flex-end}.detail-page .product-overview{gap:32px}.detail-thumbnails a{font-size:10px;gap:4px;padding:5px}.detail-info{padding-inline:20px}.detail-info .detail-actions .button{padding-inline:12px;gap:10px}.intro-picture img{height:190px}}
@media(max-width:760px){
 .catalog-page .breadcrumb,.detail-page .breadcrumb{font-size:11px;gap:8px;padding-block:19px}.catalog-page .catalog-description{font-size:12px;padding-bottom:20px}
 .catalog-sidebar{margin-bottom:18px}.series-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:0}.series-navigation a{justify-content:center;text-align:center;min-height:44px;border:1px solid var(--line);font-size:12px;padding:7px;line-height:1.5}.series-navigation small{display:none}
 .all-series{margin-top:8px}.all-series summary{padding:10px 0}.all-series nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.all-series nav a{padding-inline:4px;font-size:12px}
 .catalog-results .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px}.catalog-results .product-grid a{padding:10px 10px 14px}.catalog-results .product-grid img{height:125px;width:125px;margin-bottom:7px}.catalog-results .product-grid strong{font-size:14px}.catalog-results .product-grid small{font-size:11px}.catalog-results .product-unlisted{padding:10px!important}.catalog-results .product-image-missing{height:125px}
 .filter-bottom{gap:15px}.sort-fields{width:100%;flex-wrap:nowrap}.sort-fields label{flex:1;min-width:0}.sort-fields select{width:100%;min-width:0}.filter-actions .button{min-height:44px}.reset-filter{min-height:44px;display:inline-flex;align-items:center}.catalog-page .dimension-filter{padding:17px 16px}.catalog-toolbar{font-size:12px}
 .detail-page .product-overview{gap:24px;padding-bottom:30px}.detail-main-image{max-height:none}.detail-main-image img{max-height:390px}.detail-thumbnails a{flex:0 1 auto;font-size:10px}.detail-thumbnails img{width:38px;height:38px}.detail-info{padding:21px 18px 16px}.detail-info h1{font-size:32px}.site-main.detail-main .detail-name{font-size:18px}.detail-spec{grid-template-columns:80px minmax(0,1fr)}.detail-actions .button{font-size:13px}.detail-phone{padding-inline:10px;gap:4px 10px}.detail-phone strong{font-size:19px}
 .detail-tabs{padding-inline:12px;gap:10px}.detail-tabs a{font-size:11px}.technical-drawings figure>a{min-height:220px}.detail-page .detail-section h2{font-size:21px}.detail-neighbours{font-size:11px}.intro-pictures{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.intro-picture img{height:140px}
}
