/* Module spacing mapped from the original Borui, Holder and Laker theme rules.
   --reference-unit follows their body em scale without changing the KOVAX font. */
body.product-page{--reference-unit:16px;--header-offset:145px}
@media(min-width:1921px){body.product-page{--reference-unit:.833vw}}
@media(max-width:1600px){body.product-page{--reference-unit:1vw}}
@media(max-width:1200px){body.product-page{--reference-unit:12px}}
.product-page main :where(section,article,aside,nav,form,div){min-width:0}
.product-page main :where(h1,h2,h3,p,a,label,span){overflow-wrap:break-word}
.product-page main :where(img,video,iframe){max-width:100%}
.product-page :where([id]){scroll-margin-top:var(--header-offset)}
.product-page main :where(button,input,textarea,select){max-width:100%}
.product-page main :where(input,textarea,select){min-width:0}
.product-page main :where(.table-wrap,.cp-table-scroll,.cp-rail-track,.cp-tablist,.cp-solution-nav,.catalog-categories){overscroll-behavior-inline:contain;scrollbar-width:thin}
.product-page .mobile-menu{max-height:calc(100vh - 66px);max-height:calc(100dvh - 66px);overflow-y:auto;overscroll-behavior:contain}
.product-page .desktop-hotspots{min-width:0}
.product-page .header-socials,.product-page .language-picker,.product-page .desktop-logo{flex-shrink:0}
.product-page .nav-dropdown{max-width:calc(100vw - 48px)}
.product-page .desktop-footer .footer-contact span{overflow-wrap:anywhere}

/* Products: archive padding 8.5em and source card gaps 4em / 2.25em. */
.product-page .catalog{margin-block:calc(8.5 * var(--reference-unit))}
.product-page .products{gap:calc(4 * var(--reference-unit)) calc(2.25 * var(--reference-unit));align-items:stretch}
.product-page .card{padding:calc(2 * var(--reference-unit));transform:none}
.product-page .card:hover{transform:none}
.product-page .card-img{height:calc(18.75 * var(--reference-unit));min-height:0;aspect-ratio:auto;padding:var(--reference-unit);margin-bottom:calc(1.25 * var(--reference-unit))}
.product-page .card-img img{min-height:0;max-height:100%;display:block;object-fit:contain}
.product-page .card-body{padding:0;min-height:4.2em;align-items:flex-start}
.product-page .card h3{line-height:1.5;margin:0}
.product-page .sidebar{top:var(--header-offset);max-height:calc(100dvh - var(--header-offset) - 24px)}
.product-page .detail{margin-block:calc(8.5 * var(--reference-unit))}
.product-page .resources{margin-top:calc(8 * var(--reference-unit));padding-top:0;border-top:0}
.product-page .resources>.article{margin-bottom:calc(3.5 * var(--reference-unit))}
.product-page .detail .intro{align-items:start}
.product-page .detail .copy{padding-top:calc(3.625 * var(--reference-unit))}
.product-page .gallery>.main{min-height:0;aspect-ratio:1;position:relative}
.product-page .gallery>.main>img{position:absolute;inset:5%;width:90%;height:90%;object-fit:contain}
.product-page .gallery>.thumb{min-height:0;aspect-ratio:1;position:relative}
.product-page .gallery>.thumb>img{position:absolute;inset:10%;width:80%;height:80%;object-fit:contain}
.product-page .table-wrap,.product-page .cp-table-scroll{width:100%;min-width:0;overflow-x:auto}

/* About: source sections have intentionally different top/bottom spacing. */
.product-page .cp-profile{padding-block:calc(13 * var(--reference-unit)) 0}
.product-page .cp-profile .cp-heading{margin-bottom:calc(2.5 * var(--reference-unit))}
.product-page .cp-profile .sectionCon p:last-child{margin-bottom:0}
.product-page .cp-stats{padding:calc(1.5 * var(--reference-unit)) calc(2.5 * var(--reference-unit));margin-top:calc(5 * var(--reference-unit));margin-bottom:calc(6 * var(--reference-unit))}
.product-page .cp-factory{padding-block:calc(5.75 * var(--reference-unit)) calc(8 * var(--reference-unit))}
.product-page .cp-partner-section{padding-block:calc(8.5 * var(--reference-unit))}
.product-page .cp-rd-section{padding-block:0 calc(8.5 * var(--reference-unit));background:#fff}
.product-page .cp-rd-section .cp-grid-four{gap:calc(3 * var(--reference-unit)) calc(5 * var(--reference-unit))}
.product-page .cp-quality-section{padding-block:calc(6 * var(--reference-unit)) calc(10.5 * var(--reference-unit))}
.product-page .cp-certificate-section{padding-block:calc(8.5 * var(--reference-unit))}
.product-page .cp-about>.cp-cta{padding-block:calc(10 * var(--reference-unit))}

/* Hotel: original solutions / customers / projects / service / CTA rhythm. */
.product-page .cp-hotel-intro{padding-block:calc(8.75 * var(--reference-unit))}
.product-page .cp-hotel-audience{padding-block:calc(4.75 * var(--reference-unit))}
.product-page .cp-hotel-projects{padding-block:calc(8.5 * var(--reference-unit))}
.product-page .cp-hotel-projects .cp-heading{margin-bottom:calc(4 * var(--reference-unit))}
.product-page .cp-hotel-services{padding-block:0 calc(13.25 * var(--reference-unit));background:#fff}
.product-page .cp-hotel>.cp-cta{padding-block:calc(10 * var(--reference-unit)) calc(6 * var(--reference-unit))}
.product-page :is(.cp-hotel,.cp-about)>.cp-cta>.cp-wrap{flex-direction:column;text-align:center;align-items:center;gap:calc(4 * var(--reference-unit))}
.product-page .cp-heading>:last-child{margin-bottom:0}
.product-page .cp-image-card{display:flex;flex-direction:column}
.product-page .cp-image-card>div{flex:1}
.product-page .cp-image-card h3{margin-bottom:0}
.product-page .cp-tablist button{height:auto;min-height:88px}
.product-page .cp-tablist button[aria-selected=true]{padding-inline:20px}
.product-page .cp-tabpanels>section>div{min-height:140px}
.product-page .cp-tabpanels>section>img{object-position:center}
.product-page .cp-related a{word-break:normal}

/* Laker archive: full-width article rows, not an unrelated two-column grid. */
.product-page .cp-newslist>.cp-section{padding-block:calc(3.25 * var(--reference-unit)) calc(4.5 * var(--reference-unit))}
.product-page .cp-news-list{grid-template-columns:minmax(0,1fr);gap:calc(1.75 * var(--reference-unit))}
.product-page .cp-news-card{grid-template-columns:minmax(0,calc(23 * var(--reference-unit))) minmax(0,1fr) calc(8.5 * var(--reference-unit));align-items:center;gap:calc(2 * var(--reference-unit));padding:calc(3.125 * var(--reference-unit))}
.product-page .cp-news-image{height:calc(14.75 * var(--reference-unit));min-height:0;aspect-ratio:auto;position:relative}
.product-page .cp-news-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.product-page .cp-news-copy{padding:0;display:block}
.product-page .cp-news-copy h2{margin:0 0 16px;font-size:clamp(19px,1.5vw,24px);line-height:1.35}
.product-page .cp-news-copy p{padding-top:calc(1.15 * var(--reference-unit));border-top:1px dashed #c6c6c6;margin-bottom:calc(2.25 * var(--reference-unit));font-size:15px;line-height:1.55}
.product-page .cp-news-date{display:block;text-align:center;white-space:nowrap;padding-right:calc(.75 * var(--reference-unit));color:var(--ink)}
.product-page .cp-news-date b{display:block;font-size:calc(5.25 * var(--reference-unit));font-weight:600;line-height:.92;letter-spacing:-.04em}
.product-page .cp-news-date span{display:block;font-size:16px;margin-top:.7em}
.product-page .cp-news{background:#fafafa}
.product-page .cp-article-layout{margin-block:calc(3.25 * var(--reference-unit));padding:calc(4.5 * var(--reference-unit)) calc(3.75 * var(--reference-unit)) calc(2.5 * var(--reference-unit));background:#fff}
.product-page .cp-news>.cp-cta{padding-block:calc(3 * var(--reference-unit));margin-bottom:5vw}
.product-page .cp-prose{line-height:1.65}
.product-page .cp-prose table{table-layout:auto}
.product-page .cp-prose td:first-child{white-space:normal}
.product-page .cp-prose>div>p:empty{display:none}
.product-page .contact-area{padding-block:calc(8.5 * var(--reference-unit))}
.product-page .contact-grid{align-items:start}
.product-page .contact-card{padding:calc(4 * var(--reference-unit)) calc(3.25 * var(--reference-unit))}
.product-page .contact-form-card{padding:calc(3.75 * var(--reference-unit)) calc(4.5 * var(--reference-unit))}
.product-page .contact-form label{min-width:0}
.product-page .contact-form output{overflow-wrap:anywhere}

@media(max-width:1100px){
 body.product-page{--header-offset:82px}
 .product-page .desktop-header{display:none}
 .product-page .mobile-header{display:flex;position:sticky;z-index:120;top:0;height:66px;padding:10px 18px;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);box-shadow:0 5px 20px rgba(17,42,60,.09);backdrop-filter:blur(12px)}
 .product-page .mobile-logo img{width:138px;height:auto}
 .product-page .mobile-language{z-index:4;margin-left:auto;margin-right:8px;color:#26333c}
 .product-page .mobile-language>button{height:42px;padding:0 7px;gap:4px;background:transparent;border-radius:6px;font-size:13px;font-weight:700}
 .product-page .mobile-language>button>img{width:30px;height:30px;filter:brightness(0);opacity:.8}
 .product-page .mobile-language>button::after{content:'';width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 2px 3px 4px}
 .product-page .mobile-language .language-menu{right:0;min-width:145px}
 .product-page .menu-button{width:42px;height:42px;flex-shrink:0;border:0;background:transparent;padding:8px;display:grid;align-content:center;gap:5px;cursor:pointer}
 .product-page .menu-button span{display:block;width:26px;height:2px;background:#14212a;transition:.25s}
 .product-page .menu-button.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .product-page .menu-button.is-open span:nth-child(2){opacity:0}
 .product-page .menu-button.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .product-page .mobile-menu{position:absolute;left:0;right:0;top:66px;display:grid;padding:10px 20px 22px;background:#fff;box-shadow:0 18px 25px rgba(14,38,53,.12);transform:translateY(-120%);opacity:0;visibility:hidden;pointer-events:none;transition:.3s}
 .product-page .mobile-menu.is-open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
 .product-page .mobile-menu a{padding:13px 4px;border-bottom:1px solid #edf1f4;font-weight:650;color:var(--ink)}
}
@media(max-width:1025px){
 .product-page .cp-news-card{padding:calc(1.5 * var(--reference-unit));grid-template-columns:calc(15 * var(--reference-unit)) minmax(0,1fr) calc(7 * var(--reference-unit));gap:calc(1.25 * var(--reference-unit))}
 .product-page .cp-news-image{height:calc(12 * var(--reference-unit))}
 .product-page .cp-news-date{padding:0}
 .product-page .cp-news-date b{font-size:calc(4.4 * var(--reference-unit))}
 .product-page .cp-article-layout{padding:calc(3.5 * var(--reference-unit)) calc(2 * var(--reference-unit)) calc(2 * var(--reference-unit));grid-template-columns:minmax(0,1fr)}
 .product-page .cp-related article>a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px}
}
@media(max-width:1024px){
 .product-page .catalog{margin-block:0 calc(3 * var(--reference-unit));grid-template-columns:minmax(0,1fr);gap:calc(3 * var(--reference-unit))}
 .product-page .products{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:calc(2.5 * var(--reference-unit))}
 .product-page .card{padding:calc(1.5 * var(--reference-unit)) var(--reference-unit)}
 .product-page .card-img{height:auto;aspect-ratio:1;min-height:0;margin-bottom:0;position:relative}
 .product-page .card-img>img{position:absolute;inset:6%;width:88%;height:88%}
 .product-page .card-body{min-height:5em;padding:12px}
 .product-page .sidebar{position:static;max-height:none;overflow:visible}
 .product-page .catalog-categories{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,70%);overflow-x:auto;gap:18px;padding-bottom:8px;align-items:start}
 .product-page .catalog-categories>li>ul{max-height:240px;overflow-y:auto}
 .product-page .detail{margin-block:calc(6 * var(--reference-unit))}
 .product-page .detail .intro{grid-template-columns:minmax(0,1fr);gap:calc(2.5 * var(--reference-unit))}
 .product-page .detail .copy{padding-top:0}
 .product-page .resources{margin-top:calc(5 * var(--reference-unit))}
 .product-page .cp-profile{padding-top:calc(6 * var(--reference-unit))}
 .product-page .cp-stats{margin-top:calc(3 * var(--reference-unit));margin-bottom:calc(4.5 * var(--reference-unit));padding:calc(1.5 * var(--reference-unit))}
 .product-page .cp-factory{padding-block:calc(3.75 * var(--reference-unit)) calc(6 * var(--reference-unit))}
 .product-page :is(.cp-partner-section,.cp-quality-section,.cp-certificate-section){padding-block:calc(6 * var(--reference-unit))}
 .product-page .cp-rd-section{padding-bottom:calc(6 * var(--reference-unit))}
 .product-page .cp-about>.cp-cta{padding-block:calc(3.75 * var(--reference-unit)) calc(4.5 * var(--reference-unit))}
 .product-page :is(.cp-hotel-intro,.cp-hotel-projects){padding-block:calc(5 * var(--reference-unit))}
 .product-page .cp-hotel-services{padding-bottom:calc(5 * var(--reference-unit))}
 .product-page .cp-hotel>.cp-cta{padding-block:calc(7.5 * var(--reference-unit)) calc(4 * var(--reference-unit))}
 .product-page .contact-area{padding-block:calc(6 * var(--reference-unit))}
 .product-page .contact-grid{grid-template-columns:minmax(0,1fr)}
 .product-page .cp-split{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:680px){
 .product-page .catalog{margin-bottom:calc(2.75 * var(--reference-unit))}
 .product-page .products{grid-template-columns:minmax(0,1fr)}
 .product-page .card-body{min-height:0;padding-block:18px}
 .product-page .detail{margin-block:calc(4.75 * var(--reference-unit)) var(--reference-unit)}
 .product-page .resources{margin-top:calc(4 * var(--reference-unit))}
 .product-page .cp-profile{padding-top:calc(4.75 * var(--reference-unit))}
 .product-page .cp-profile .cp-heading{margin-bottom:var(--reference-unit)}
 .product-page .cp-factory{padding-bottom:calc(4.75 * var(--reference-unit))}
 .product-page :is(.cp-partner-section,.cp-quality-section,.cp-certificate-section){padding-block:calc(4.75 * var(--reference-unit))}
 .product-page .cp-rd-section{padding-bottom:calc(4.75 * var(--reference-unit))}
 .product-page .cp-hotel-projects .cp-heading{margin-bottom:calc(2.5 * var(--reference-unit))}
 .product-page .contact-area{padding-block:calc(4.75 * var(--reference-unit))}
 .product-page .contact-card{padding:calc(3.25 * var(--reference-unit)) calc(2 * var(--reference-unit))}
 .product-page .contact-form-card{padding:calc(2.25 * var(--reference-unit)) calc(2 * var(--reference-unit)) calc(3.25 * var(--reference-unit))}
 .product-page .cp-grid-three,.product-page .cp-grid-four{grid-template-columns:minmax(0,1fr)}
 .product-page .cp-rd-section .cp-grid-four{gap:24px}
 .product-page .cp-related article>a{grid-template-columns:110px minmax(0,1fr)}
}
@media(max-width:620px){
 .product-page .cp-news-card{grid-template-columns:minmax(0,1fr)}
 .product-page .cp-news-date{display:none}
 .product-page .cp-news-image{height:auto;aspect-ratio:23/14.75}
 .product-page .cp-news-copy h2{margin-top:.6em}
 .product-page .cp-news-copy p{margin-bottom:calc(1.25 * var(--reference-unit))}
 .product-page .cp-article-layout{padding:calc(2 * var(--reference-unit))}
}
