/* Generated by ops/contact_css_bundle.py; edit the original CSS sources.
 * Contact only. Rule order, media queries and relative asset paths are preserved. */

/* Source: site.css */
:root{--ink:#172d46;--blue:#1d4d80;--accent:#245d9e;--paper:#fff;--pale:#edf3fa;--muted:#52657a;--line:#d6dfe8;--max:1280px;--gutter:40px;--soft:#f4f6f8}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(38px,4.6vw,66px)}h2{font-size:clamp(28px,3vw,42px)}h3{font-size:22px;letter-spacing:-.025em}p{max-width:68ch}p+p{margin-top:18px}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}button,input,select,textarea,summary{font:inherit}button{cursor:pointer;color:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}ul{padding-left:22px}a:hover{color:var(--accent)}[hidden]{display:none!important}
/* WCAG 2.4.7 / 1.4.11: focus remains visible on all interactive surfaces. */
:focus-visible{outline:3px solid var(--accent);outline-offset:5px}main:focus{outline:none}.wrap{width:min(calc(100% - var(--gutter)*2),var(--max));margin-inline:auto}.section{padding-block:72px}.muted,.intro{color:var(--muted)}.intro{font-size:18px;line-height:1.65}.small{font-size:14px}.skip{position:fixed;z-index:100;left:20px;top:-150px;background:white;padding:12px 20px;border:2px solid var(--blue)}.skip:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:11px 24px;background:var(--blue);color:#fff;text-decoration:none;border:1px solid var(--blue);border-radius:3px;font-weight:600;font-size:15px}.button:hover{background:var(--ink);color:white}.button.secondary{background:white;color:var(--blue);border-color:var(--line)}.button.secondary:hover{border-color:var(--blue);background:var(--pale)}.text-link{font-size:15px;font-weight:600;color:var(--blue);display:inline-flex;gap:9px;align-items:center;min-height:44px}.arrow{display:inline-block;width:18px;height:18px;flex:none}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-size:31px;font-weight:750;letter-spacing:-1.9px;text-decoration:none;white-space:nowrap;line-height:1;padding-block:16px}.brand span{font-weight:400}.nav-list{display:flex;list-style:none;align-items:center;gap:28px;padding:0;margin:0}.nav-list>li>a,.nav-group>summary{font-size:14px;text-decoration:none;min-height:48px;display:flex;align-items:center;cursor:pointer;font-weight:500;gap:7px}.nav-list>li>a[aria-current=page]{color:var(--blue);box-shadow:inset 0 -2px var(--blue)}.nav-group>summary{list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary:after{content:"";width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg);margin-top:-3px}.nav-group[open]>summary:after{transform:rotate(225deg);margin-top:3px}.nav-group{position:relative}.nav-panel{position:absolute;right:-25px;top:56px;min-width:255px;background:white;border:1px solid var(--line);box-shadow:0 15px 35px #172d4614;padding:14px;border-radius:5px;list-style:none;max-height:calc(100dvh - 120px);overflow:auto}.nav-panel a{font-size:14px;display:block;padding:9px 12px;text-decoration:none;border-radius:3px}.nav-panel a:hover{background:var(--pale)}.nav-panel .nav-overview{border-bottom:1px solid var(--line);margin-bottom:7px;padding-bottom:14px;font-weight:650}.nav-list .nav-contact{background:var(--pale);padding-inline:17px;border-radius:3px}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:3px;min-height:44px;padding:7px 13px;font-size:14px;gap:8px;align-items:center}.menu-bars{width:18px;display:inline-block;height:13px;border-top:1.5px solid;border-bottom:1.5px solid;position:relative}.menu-bars:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1.5px solid}
.product-card{min-width:0;display:flex;flex-direction:column}.product-main{text-decoration:none;display:block}.product-photo{background:var(--soft);aspect-ratio:1.24;overflow:hidden;border-radius:4px;display:flex;align-items:center;justify-content:center}.product-photo img{width:100%;height:100%;object-fit:contain;transition:transform .25s ease}.product-main:hover .product-photo img{transform:scale(1.025)}.product-card h3{font-size:21px;line-height:1.25;margin-top:16px}.product-main:hover h3{text-decoration:underline;text-underline-offset:5px}.product-card p{font-size:14px;line-height:1.55;color:var(--muted);margin-top:8px;flex:1}
.reference-card{height:105px;display:flex;align-items:center;justify-content:center;background:white;border:1px solid #e7ebef;border-radius:3px}.reference-card img{width:115px;height:75px;object-fit:contain}.contact-band{background:var(--ink);color:white;padding:50px 0}.contact-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.contact-band h2{font-size:36px}.contact-band p{color:#d5dfeb;margin-top:10px}.contact-band .button{background:white;color:var(--ink);border-color:white;flex:none}.site-footer{padding-top:52px;background:#f6f8fa}.footer-intro{color:var(--muted);font-size:14px;margin-top:18px;max-width:27ch}.footer-bottom{border-top:1px solid var(--line);margin-top:40px;padding-block:20px;display:flex;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted)}
.breadcrumb{display:flex;flex-wrap:wrap;list-style:none;gap:7px 12px;padding:0;margin:0 0 26px;font-size:13px;color:var(--muted)}.breadcrumb li+li:before{content:"/";padding-right:12px;color:#8a9aab}.breadcrumb a{text-decoration:none}.page-heading{padding:34px 0 38px}.page-heading h1{font-size:clamp(34px,4vw,54px)}.page-heading .intro{margin-top:18px;max-width:64ch}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:13px;font-weight:600}.field input,.field select,.field textarea{min-height:46px;border:1px solid #aab9c8;background:white;color:var(--ink);border-radius:3px;padding:10px 13px;min-width:0;width:100%}.field input::placeholder,.field textarea::placeholder{color:#66788b}.field textarea{resize:vertical;min-height:140px}.result-count{font-size:14px;color:var(--muted);margin-left:auto;padding-bottom:10px;white-space:nowrap}.empty-results{background:var(--pale);padding:40px;border-radius:4px}.empty-results h2{font-size:26px}.empty-results p{margin-top:10px}.empty-results button{margin-top:20px}
.product-gallery-main{display:block;border-radius:5px;background:var(--soft);overflow:hidden}.product-gallery-main img{width:100%;height:430px;object-fit:contain}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-bottom:75px}.contact-details{display:grid;gap:25px;margin-top:30px}.contact-details h2{font-size:15px;letter-spacing:0;font-weight:650;margin-bottom:5px}.contact-details a{font-size:20px;text-decoration:none}.contact-details p{font-size:16px;color:var(--muted)}.quote-panel{background:var(--pale);padding:35px;border-radius:5px}.quote-panel h2{font-size:29px;margin-bottom:22px}.quote-panel .field{margin-bottom:19px}.quote-panel .small{margin-top:14px}.quote-panel .button{width:100%}.form-status{font-size:14px;margin-top:18px}.contact-channels{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.product-photo{position:relative}.card-context{position:absolute;bottom:7px;left:7px;right:7px;background:#fffffff2;color:var(--muted);padding:4px 7px;font-size:11px;line-height:1.35;border-radius:2px;text-align:center}.quote-panel form{display:none}.js .quote-panel form{display:block}
/* WCAG 1.4.10: responsive layouts retain content and controls at narrow widths. */
@media(min-width:1500px){}
@media(max-width:1100px){:root{--gutter:28px}.nav-list{gap:19px}.product-card h3{font-size:19px}.product-gallery-main img{height:380px}.contact-layout{gap:45px}}
@media(max-width:850px){.header-inner{height:auto;min-height:76px;flex-wrap:wrap;gap:0;padding-block:9px}.brand{font-size:29px}.site-nav{width:100%;order:3}.nav-list{display:block;padding:10px 0}.nav-list>li{border-top:1px solid var(--line)}.nav-list>li>a,.nav-group>summary{padding:12px 4px;min-height:48px}.nav-group>summary{justify-content:space-between}.nav-panel{position:static;box-shadow:none;border:0;border-radius:0;background:var(--pale);padding:8px;min-width:0;max-height:none;margin:0 0 12px}.nav-list .nav-contact{background:none;padding-inline:4px}.js .menu-toggle{display:flex}.js .site-nav{display:none}.js .site-nav.is-open{display:block}.site-header{max-height:100dvh;overflow:auto}.product-photo{aspect-ratio:1.35}.product-card h3{font-size:22px}.section{padding-block:58px}.product-gallery-main img{height:340px}.contact-layout{gap:35px}.quote-panel{padding:25px}.contact-band h2{font-size:30px}}
@media(max-width:600px){:root{--gutter:20px}.header-inner{min-height:70px}.brand{font-size:28px}.product-photo{aspect-ratio:1.05}.product-card h3{font-size:18px;line-height:1.25;margin-top:13px}.product-card p{font-size:12px;line-height:1.5}.product-card .arrow{width:15px}.section{padding-block:43px}.reference-card{height:85px}.reference-card img{height:57px;width:82px}.contact-band{padding:36px 0}.contact-band .wrap{display:block}.contact-band h2{font-size:30px}.contact-band p{font-size:15px}.contact-band .button{margin-top:25px}.footer-intro{font-size:12px}.site-footer{padding-top:37px}.footer-bottom{display:block;font-size:11px;margin-top:30px}.footer-bottom p+p{margin-top:8px}.page-heading{padding:25px 0 28px}.page-heading h1{font-size:37px}.page-heading .intro{font-size:16px;margin-top:15px}.breadcrumb{font-size:11px;gap:6px 8px;margin-bottom:22px}.breadcrumb li+li:before{padding-right:8px}.field input,.field select,.field textarea{font-size:16px}.result-count{font-size:12px;white-space:normal;width:75px;line-height:1.4;padding-bottom:8px}.product-gallery-main img{height:285px}.contact-layout{grid-template-columns:1fr;gap:32px;padding-bottom:45px}.contact-details{grid-template-columns:1fr 1fr;gap:20px}.contact-details .address{grid-column:1/-1}.contact-details a{font-size:16px}.contact-details p{font-size:14px}.quote-panel{padding:23px}.quote-panel h2{font-size:27px}}
@media(max-width:360px){:root{--gutter:16px}.product-card h3{font-size:17px}.contact-details{grid-template-columns:1fr}}
@media(max-width:600px){}
/* WCAG 2.3.3: motion is optional and never hides the catalogue. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header{position:static}.site-nav,.menu-toggle,.actions,.product-actions,.catalogue-tools,.contact-band,.skip{display:none!important}.wrap{width:100%}.section{padding-block:25px}.site-footer{background:white}.product-photo img{max-height:180px}.product-card{break-inside:avoid}a{text-decoration:none}}




/* WCAG 1.4.13: bridge the visual gap so the pointer can reach the hover panel. */
@media(min-width:851px) and (hover:hover) and (pointer:fine){.nav-group[open]::before{content:"";position:absolute;top:100%;right:-25px;width:max(255px,calc(100% + 25px));height:24px}}
/* The PVC shortcut stays separate from the eight main product headings. */
.nav-panel li:last-child .nav-shortcut{border-top:1px solid var(--line);border-radius:0;margin-top:7px;padding-top:14px}.nav-panel a{min-height:44px}

/* Model options stay in reading order and use simple rules instead of card boxes. */








@media(min-width:601px) and (max-width:900px){
 
 
 
}
@media(max-width:600px){
 
 
 
 
 
}


/* Source: design-system.css */
/* Shared visual contract approved in catalogue-study. Layouts stay page-specific. */
.brand-system{--ink:#172d46;--blue:#1d4d80;--muted:#4b6177;--pale:#eef4f8;--line:#d6e0e8;--radius:10px;--mark-cyan:#00a9ce;--mark-magenta:#d63684;--mark-yellow:#e8b923;--mark-green:#009b55;--mark-purple:#793fba;--mark-orange:#f07920;--mark-turquoise:#00b7a5;--mark-red:#e33538;font-family:Arial,sans-serif}
.brand-system h1,.brand-system h2{font-weight:400}
.brand-system .brand{display:inline-flex;align-items:center;gap:11px;white-space:nowrap;color:#000;padding-block:0}
.brand-system .brand>.print-mark{width:38px;height:38px;flex:none;color:#000;stroke-width:1.25}
.brand-system .brand-wordmark{display:block;width:220px;height:auto}
.brand-system .print-mark{width:28px;height:28px;flex:none;vertical-align:middle}


.brand-system :is(.category-grid,.product-grid,.production-grid){column-gap:28px;row-gap:38px}
.brand-system :is(.category-card,.product-card,.production-card) h3{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:22px;line-height:1.25;font-weight:500;letter-spacing:-.025em;text-wrap:pretty}
.brand-system :is(.category-card,.product-card,.production-card) p{font-size:15px;line-height:1.7}
.brand-system :is(.product-photo,.category-photo,.product-gallery-main,.category-header-grid>img,.method-intro img,.production-card>a>img,.equipment-grid img,.document-card,.quote-panel,.reference-card){border-radius:var(--radius)}

.brand-system :is(.field input,.field select,.field textarea){border-radius:6px}
.brand-system :is(.page-heading,.product-copy) h1{font-weight:400;letter-spacing:-.04em;line-height:1.12}
.brand-system .page-heading{padding-top:36px;padding-bottom:40px}



.brand-system.inner-page .product-photo{aspect-ratio:1.28}
.brand-system.inner-page .product-photo img{object-fit:cover}






.brand-system .quote-panel h2{line-height:1.25}
.brand-system .contact-details h2{font-weight:600}
/* Decorative icons never carry the only label; text remains the accessible name. */






.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+1){--mark-color:var(--mark-cyan)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+2){--mark-color:var(--mark-magenta)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+3){--mark-color:var(--mark-yellow)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+4){--mark-color:var(--mark-green)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+5){--mark-color:var(--mark-purple)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+6){--mark-color:var(--mark-orange)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+7){--mark-color:var(--mark-turquoise)}
.brand-system :is(.category-grid,.product-grid,.production-grid)>li:nth-child(8n/**/+8){--mark-color:var(--mark-red)}
.brand-system .action-direction{position:relative;display:inline-block;vertical-align:middle;flex:0 0 25px;width:25px;height:25px;color:inherit}
.brand-system .action-direction>.arrow,.brand-system .action-direction>.print-mark{position:absolute;inset:0;width:25px;height:25px;transition:opacity .18s ease,transform .18s ease;color:inherit}
.brand-system .action-direction>.arrow{opacity:1;transform:translateX(0);color:#111}
.brand-system .action-direction>.print-mark{opacity:0;transform:scale(.8);color:var(--mark-color,var(--mark-cyan))}
/* Filled button icons follow the label colour in both default and hover/focus states. */
.brand-system .button>.action-direction>:is(.arrow,.print-mark){color:inherit}
.brand-system :is(a,button):is(:hover,:focus-visible)>.action-direction>.arrow{opacity:0;transform:translateX(4px)}
.brand-system :is(a,button):is(:hover,:focus-visible)>.action-direction>.print-mark{opacity:1;transform:scale(1)}
.brand-system .contact-band{position:relative;overflow:hidden;isolation:isolate;padding:50px 0}
.brand-system .contact-band h2{font-size:40px;font-weight:400}
.brand-system .contact-band p{font-size:17px}
.brand-system .contact-band .button{background:#f3d255;border-color:#f3d255;color:#172d46;font-weight:700}
.brand-system .contact-band .button:hover{background:#ffe486;border-color:#ffe486;color:#172d46}
.brand-system .contact-band .button:focus-visible{outline-color:white}
.brand-system .contact-band:before{content:"";position:absolute;z-index:-1;left:-135px;top:-105px;width:570px;height:410px;background-image:radial-gradient(circle,#55c5e4 1.8px,transparent 2px);background-size:11px 11px;transform:rotate(-17deg);mask-image:radial-gradient(ellipse at 12% 52%,#000 0%,#0009 34%,transparent 72%);opacity:.36;pointer-events:none}
.brand-system .site-footer{background:#f7f9fb}





.brand-system .footer-contact-icon{width:18px;height:18px;flex:none;color:var(--blue)}
.brand-system .footer-whatsapp .footer-contact-icon{color:#167343}
@media(max-width:850px){
 .brand-system :is(.category-grid,.product-grid,.production-grid){column-gap:24px;row-gap:34px}
 .brand-system :is(.category-card,.product-card,.production-card) h3{font-size:21px}
}
@media(max-width:600px){
 .brand-system{--radius:8px}
 .brand-system .brand{gap:8px}.brand-system .brand>.print-mark{width:31px;height:31px}.brand-system .brand-wordmark{width:min(200px,calc(100vw - 140px))}
 .brand-system :is(.category-grid,.product-grid,.production-grid){column-gap:18px;row-gap:30px}
 .brand-system :is(.category-card,.product-card,.production-card) h3{font-size:19px;line-height:1.28;gap:8px}
 .brand-system :is(.category-card,.product-card,.production-card) p{font-size:14px;line-height:1.6}
 
 
 
 .brand-system .page-heading{padding-top:26px;padding-bottom:30px}
 .brand-system .page-heading h1,.brand-system .product-copy h1{font-size:36px;overflow-wrap:anywhere}
 
 
 
 
 .brand-system .contact-band{padding:36px 0}.brand-system .contact-band h2{font-size:34px}.brand-system .contact-band p{font-size:16px}
 
 
 
 
 
 
}
/* WCAG 2.3.3: interaction feedback respects the user's motion setting. */
@media(prefers-reduced-motion:reduce){.brand-system .card-direction>svg,.brand-system .action-direction>svg{transition:none}}

/* About introduction uses the same black emblem and wordmark as the shared brand. */



@media(max-width:600px){}

/* Shared catalogue interaction: preserve existing image crops while adding a small zoom. */
.brand-system .site-footer a[href="mailto:karaca@karacaprint.com"]{font-weight:700}

.brand-system :is(.category-photo,.product-photo){overflow:hidden}
.brand-system :is(.category-photo,.product-photo,.catalog-image-frame)>img{scale:1;transition:scale .35s ease}



.brand-system .product-main:hover .product-photo img{transform:scale(var(--crop-zoom,1))}
@media(hover:hover){.brand-system :is(.category-card,.product-card,.production-card)>a:hover :is(.category-photo,.product-photo,.catalog-image-frame)>img{scale:1.045}}
.brand-system :is(.category-card,.product-card,.production-card)>a:focus-visible :is(.category-photo,.product-photo,.catalog-image-frame)>img{scale:1.045}
@media(hover:hover){}

@media(prefers-reduced-motion:reduce){.brand-system :is(.category-photo,.product-photo,.catalog-image-frame)>img{transition:none;scale:1!important}}

/* Compact single-row archive logos. */



.about-technology-logos{display:grid;grid-template-columns:repeat(10,minmax(100px,1fr));list-style:none;margin:0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-width:1000px}
.about-technology-logos li{display:flex;justify-content:center;align-items:center;height:90px;overflow:hidden;min-width:0}
.about-technology-logos img{display:block;object-fit:contain;flex:none}

.about-technology-logos img.compact{width:82px;height:50px;max-width:85%}
@media(max-width:700px){.about-technology-logos li{height:80px}}
/* Product galleries use a shared edge-to-edge crop: fill every frame without stretching. */
.brand-system .product-gallery-main>img,
.brand-system .gallery-buttons img{display:block;object-fit:cover;object-position:var(--product-image-position,50% 50%)}


/* Approved replacement library: frames fill proportionally; navigation uses tiny WebPs. */

.brand-system .product-gallery-main{display:block;overflow:hidden}
.brand-system .product-gallery-main>img{width:100%;height:auto;aspect-ratio:auto;object-fit:cover;object-position:50% 50%}





.gallery-count{font-size:13px;color:#40546b;line-height:1.5;margin:12px 0}












@media(max-width:700px){
 
 
 
 
 .brand-system .product-gallery-main>img{height:auto;aspect-ratio:auto}
}


/* Filename-library frames: one fixed slot owns dimensions, every photo fills that slot. */
.brand-system .product-photo,
.brand-system .category-photo,
.brand-system .product-gallery .product-gallery-main,
.brand-system .production-grid .production-card .catalog-image-frame{position:relative;display:block;overflow:hidden;isolation:isolate;width:100%;height:auto}
.brand-system .product-photo{aspect-ratio:1.28}



.brand-system .product-card .product-photo>img,
.brand-system .category-card .category-photo>img,
.brand-system .product-gallery .product-gallery-main>img,
.brand-system .production-grid .production-card .catalog-image-frame>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:var(--image-position,50% 50%);transform:none}



@media(max-width:600px){}

/* Small card previews share the existing image frame and stay hidden until ready. */
.brand-system .is-swipe-ready{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
.brand-system .product-card[data-card-preview]{position:relative}
.brand-system .product-card[data-card-preview] .product-photo>img,
.brand-system .product-card[data-card-preview] .product-main:hover .product-photo>img{
 object-position:var(--preview-position,var(--image-position,50% 50%));
 transform:scale(var(--preview-zoom,1));
 transition:none;
 user-select:none;
}
.brand-system .product-card[data-card-preview]>.card-preview-controls{
 display:none;position:absolute;top:0;left:0;width:100%;aspect-ratio:1.28;
 pointer-events:none;z-index:2;
}
.brand-system .product-card[data-card-preview].is-preview-ready>.card-preview-controls{display:block}
.brand-system .product-card[data-card-preview] .card-preview-track{
 display:none;position:absolute;bottom:8px;left:8px;right:8px;height:3px;
 gap:3px;pointer-events:none;z-index:1;
}
.brand-system .product-card[data-card-preview].is-preview-ready .card-preview-track{display:flex}
.brand-system .card-preview-track>i{
 display:block;flex:1 1 0;min-width:0;height:3px;border-radius:2px;
 background:rgb(23 45 70 / .35);box-shadow:0 0 0 1px rgb(23 45 70 / .2);
}
.brand-system .card-preview-track>i[data-active="true"]{background:#fff}
.brand-system .card-preview-count{
 display:none;
 position:absolute;top:8px;right:8px;padding:2px 6px;border-radius:10px;
 background:rgb(255 255 255 / .88);color:var(--ink);font-size:11px;
 line-height:1.4;font-variant-numeric:tabular-nums;
}
.brand-system .card-preview-status{
 position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
 clip-path:inset(50%);white-space:nowrap;border:0;
}

/* Product groups use the service-page rhythm; all explanatory copy precedes the catalogue. */







@media(max-width:850px){
 
 
 
}
@media(max-width:600px){
 
 
 
 
}

/* Service hero photos fill a consistent frame without distorting their source ratio. */



/* Useful preparation detail remains optional in the visible page hierarchy. */







/* Service explanations align with the hero/catalogue; columns read in source order.
   WCAG 1.3.2 / 1.4.10: keep each paragraph together and reflow to one column. */




@media(max-width:850px){
 
 
 
}
@media(max-width:600px){
 
 
 
}


/* Source: home.css */
/* Homepage-only revision. Shared catalogue and detail-page styles stay intact. */








.home-showcase{padding:30px 0 20px;background:#fff}

.showcase-stage{min-height:330px}
/* Keep the copy selectable while the shared swipe surface owns horizontal panning. */

.showcase-slide{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:46px;min-height:330px}










.showcase-controls{margin-top:20px}

.showcase-choice{border:0;border-bottom:3px solid transparent;padding:12px 8px;background:white;font-size:14px;min-height:49px;transition:background .2s,color .2s;color:var(--muted)}
.showcase-choice:hover{background:var(--pale);color:var(--ink)}
.showcase-choice[aria-pressed=true]{border-bottom-color:var(--blue);color:var(--blue);font-weight:600}
/* Carousel keeps rotating after manual choices; reduced-motion users see a static slide. */


@keyframes showcase-reveal{from{opacity:.35}to{opacity:1}}
@keyframes showcase-copy{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}






.print-mark,.heading-icon{width:26px;height:26px;flex:none;vertical-align:middle}





















/* WCAG 2.4.7 / 2.4.11: the whole band is one keyboard link with visible focus. */









@media(max-width:850px){
 
 
 
 
}
/* WCAG 1.4.10: keep all three families visible without horizontal scrolling. */
@media(max-width:600px){
 
 
 
 
 
 
 
}












































@keyframes ink-align{from{transform:translate(calc(var(--sheet-x)*2),calc(var(--sheet-y)*3)) rotate(-20deg);opacity:.5}to{transform:translate(var(--sheet-x),var(--sheet-y)) rotate(-12deg);opacity:1}}














.footer-contact-icon{width:18px;height:18px;flex:none;color:var(--blue)}
.footer-whatsapp .footer-contact-icon{color:#167343}
@media(max-width:1000px){
 .showcase-slide{gap:28px;grid-template-columns:.9fr 1.1fr}
 
 
 
 
 
 
}
@media(max-width:600px){
 .home-showcase{padding:20px 0 15px}
 .showcase-slide{display:flex;flex-direction:column;gap:18px;align-items:stretch;min-height:0}
 .showcase-stage{min-height:0}
 
 
 
 
 
 .showcase-controls{margin-top:11px}
 .showcase-choice{font-size:11px;line-height:1.3;padding:9px 3px;min-height:44px}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
}
@media(max-width:360px){
 
 
 
 
 
}
@media(prefers-reduced-motion:reduce){.showcase-choice{transition:none}}
@media print{.showcase-controls{display:none!important}}

/* Selected trust-band concept C: a shared, three-step process. */










@media(max-width:800px){}
@media(max-width:600px){
 
 
 
 
 
}

/* Decorative card cue: keyboard focus receives the same feedback as pointer hover. */






@media(max-width:600px){
 
 
 
 
 
 
}
@media(prefers-reduced-motion:reduce){}

/* Eight fixed screen colours for marks; brand emblems and default arrows stay black. */



























@media(max-width:600px){}
@media(prefers-reduced-motion:reduce){}


/* Source: catalogue.css */
/* Approved catalogue homepage layout, promoted to the main demo. */



/* Match an SVG heading to one text line so selecting 3D does not grow the slide. */










































@media(max-width:1000px){
 
 
 
}
@media(max-width:850px){
 
 
 
 
 
 
}
@media(max-width:600px){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
}

/* Selected C: production sheets, monochrome brand blue. */








@media(max-width:750px){}


/* Larger white printing dots extend diagonally across the featured strip. */




.home-cmy-emblem{width:100%;height:270px;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}

.home-cmy-emblem .heritage-motion-layer{mix-blend-mode:multiply}
@media(max-width:600px){.home-cmy-emblem{height:230px}}


@media(prefers-reduced-motion:reduce){}


/* Source: v7.css */
/* V7: Arial, a clear product route and compact print-specific presentation. */
body.brand-system{font-family:Arial,sans-serif;color:#172d46}
body.brand-system h1,body.brand-system h2,body.brand-system h3{letter-spacing:-.025em}
body.brand-system p{line-height:1.65}
body.brand-system .brand-wordmark{width:220px;height:auto;flex:none}
body.brand-system .brand{padding-block:0}
body.brand-system .nav-list{font-size:14px}
body.brand-system .nav-contact{background:#1d4d80;color:#fff;border-radius:5px;padding:11px 17px;font-weight:600}
body.brand-system .nav-contact:hover{background:#172d46;color:#fff}
body.brand-system .nav-contact:focus-visible{outline-offset:4px}

/* Logical DOM order starts with the product and price route on every device. */





body.brand-system :is(.product-card,.category-card,.production-card) h3{font-weight:500;letter-spacing:-.015em}
body.brand-system .footer-intro{max-width:30ch}
body.brand-system .quote-panel .button+.button{margin-top:10px}















/* WCAG 2.2.2: the compact icon has a full 44px pointer/keyboard target and an explicit name. */

















































@media(max-width:1000px){
 
 
 
 
 
}
@media(max-width:850px){
 
 
 body.brand-system .site-nav .nav-contact{display:flex;align-items:center;justify-content:center;margin-top:8px;min-height:44px}
 
 
 
 
 
 
 
}
@media(max-width:600px){
 body.brand-system .brand-wordmark{width:min(200px,calc(100vw - 140px))}
 body.brand-system .header-inner{min-height:76px}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 body.brand-system .site-footer{padding-top:34px}
}
/* WCAG 2.3.3: respect reduced motion across V7's decorative and navigation effects. */
@media(prefers-reduced-motion:reduce){body.brand-system *,body.brand-system *::before,body.brand-system *::after{scroll-behavior:auto;animation:none!important;transition:none!important}}

/* 15 October: Arial, smaller full logos, and a framed slider inside the existing layout. */
body.brand-system{
 --heading-1:clamp(30px,3.3vw,42px);
 --heading-2:clamp(24px,2.35vw,30px);
 font-family:Arial,sans-serif;
}
body.brand-system .site-header .brand-wordmark{width:180px}
body.brand-system .site-footer .brand-wordmark{width:160px}
body.brand-system h1,
body.brand-system .page-heading h1,
body.brand-system .product-copy h1,
body.brand-system .about-story h1{
 font-size:var(--heading-1);line-height:1.15;letter-spacing:-.025em;
}
body.brand-system .section-head h2,
body.brand-system.home-page .section-head h2,
body.brand-system.home-page .trust-process-top h2,
body.brand-system .contact-band h2,
body.brand-system.home-page .contact-band h2,
body.brand-system .related-section h2,
body.brand-system .quote-panel h2,
body.brand-system .about-story h2{
 font-size:var(--heading-2);line-height:1.2;letter-spacing:-.02em;
}
body.brand-system :is(.product-card,.category-card,.production-card) h3,
body.brand-system.home-page :is(.product-card,.category-card,.production-card) h3{
 font-size:20px;line-height:1.3;letter-spacing:-.015em;
}
body.brand-system :is(.product-card,.category-card,.production-card) p,
body.brand-system.home-page :is(.product-card,.category-card,.production-card) p{
 font-size:14px;line-height:1.6;
}
body.brand-system .intro{font-size:17px;line-height:1.65}





@media(max-width:600px){
 body.brand-system .site-header .brand-wordmark{width:min(160px,calc(100vw - 140px))}
 body.brand-system .site-footer .brand-wordmark{width:150px}
 body.brand-system :is(.product-card,.category-card,.production-card) h3,
 body.brand-system.home-page :is(.product-card,.category-card,.production-card) h3{font-size:18px}
 body.brand-system :is(.product-card,.category-card,.production-card) p,
 body.brand-system.home-page :is(.product-card,.category-card,.production-card) p{font-size:13px}
 body.brand-system .intro{font-size:16px}
 
 
 
}

/* Selected refinement 2: gentle depth on the existing photos and controls. */
body.brand-system{
 --refinement-blue:#245577;--pale:#eff5f8;--line:#cddce5;--muted:#4b6177;
 --gold:#d8b86a;--gold-line:#af862e;background-color:#fff;
}
body.brand-system :is(.page-heading,.about-opening){background-color:#f4f8fb}
body.brand-system :is(.category-photo,.product-photo,.product-gallery-main,.bridge-photo),
body.brand-system .production-grid .production-card .catalog-image-frame,
body.brand-system :is(.production-card>a>img,.method-intro>figure>img,.equipment-grid img){
 border-radius:12px;box-shadow:0 0 0 1px #dce7ee,0 4px 16px rgb(23 45 70 / .045);
}


body.brand-system :is(.field input,.field select,.field textarea){background-color:#fff;border-color:#8094a3;border-radius:8px}


body.brand-system .button:not(.secondary),body.brand-system .nav-contact{background-color:#245577;border-color:#245577;color:#fff;border-radius:6px}
body.brand-system .button.secondary{background-color:#fff;border-color:#cddce5;color:#245577;border-radius:6px}
body.brand-system :is(.text-link,.product-actions .price){color:#245577}
body.brand-system :is(.button:not(.secondary),.nav-contact):hover{background-color:#172d46}
body.brand-system .button.secondary:hover{background-color:#eff5f8;border-color:#245577}

body.brand-system .contact-band .button{background-color:var(--gold);border-color:var(--gold);color:#172d46}
body.brand-system .contact-band .button:hover{background-color:#e5cc90;border-color:#e5cc90;color:#172d46}
body.brand-system :is(a,button,input,select,textarea,summary):focus-visible{outline-color:#245577}
body.brand-system .contact-band .button:focus-visible{outline-color:#fff}

/* Reference opening: white navigation, concise company band, one shared slider panel. */
body.brand-system .nav-list>li>a[aria-current=page]{color:#172d46;box-shadow:inset 0 -2px var(--gold-line)}
body.brand-system .nav-group>summary:has(+.nav-panel a[aria-current=page]){box-shadow:inset 0 -2px var(--gold-line)}

















@media(max-width:1150px){
 
 
 
 
}
@media(max-width:850px){
 
 
 
 
 
 
 
 
}
@media(max-width:600px){
 
 
 
 
 
 
 
 
 
 
 
 
 
}
@media(max-width:360px){
 
}

/* Sitewide polish: preserve card typography while giving list pages their correct H2 level. */
body.brand-system :is(.product-card,.production-card) h2{
 display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
 font-size:20px;line-height:1.3;font-weight:500;letter-spacing:-.015em;
 margin-top:16px;text-wrap:pretty;
}
body.brand-system :is(.product-main,.production-card>a):is(:hover,:focus-visible) h2{text-decoration:underline;text-underline-offset:5px}
body.brand-system .nav-group.is-current>summary{box-shadow:inset 0 -2px var(--gold-line)}
body.brand-system .nav-panel a[aria-current=page]{background:#eff5f8;color:#172d46;font-weight:600}
body.brand-system .nav-list .nav-contact[aria-current=page]{color:#fff;box-shadow:inset 0 -3px var(--gold)}
body.brand-system .site-header{background:#fff}
/* Corporate links start at the top, as selected after the footer mark removal. */

body.brand-system .contact-layout{padding-top:32px}

body.brand-system .contact-layout>section>h2{font-size:var(--heading-2);line-height:1.2;letter-spacing:-.02em}
body.brand-system .contact-details h3{font-size:15px;line-height:1.4;letter-spacing:0;font-weight:600;margin-bottom:5px}
/* WCAG 2.5.8: make the small footer links comfortable to tap without changing the columns. */
body.brand-system .site-footer .footer-col li a,
body.brand-system .footer-bottom a{display:inline-flex;align-items:center;min-height:32px}
/* Reveal enhanced submission only after its handler is installed. Native contact stays available. */
body.brand-system .quote-panel form{display:none}
body.brand-system .quote-panel form.is-ready{display:block}
body.brand-system .quote-panel:has(form.is-ready) .quote-direct{display:none}
body.brand-system .quote-direct{margin-top:18px;font-size:15px;line-height:1.65}
body.brand-system #quote-context{scroll-margin-top:20px}
body.brand-system .form-status:empty{display:none}
body.brand-system #mail-fallback{min-height:44px;align-items:center}
body.brand-system #mail-fallback:not([hidden]){display:inline-flex}
@media(max-width:600px){
 body.brand-system :is(.product-card,.production-card) h2{font-size:18px;gap:8px;margin-top:13px}
 body.brand-system .contact-layout{padding-top:26px}
 
 
}

/* 15 October, approved PVC 1 and focused homepage refinements. */


























/* Make room for larger marks rather than clipping them inside the former rail. */








/* Gold grows from the left across every category, product and method title. */
body.brand-system :is(.category-card>a,.product-main,.production-card>a):is(:hover,:focus-visible) :is(h2,h3){text-decoration:none}
body.brand-system :is(.category-card,.product-card,.production-card) :is(h2,h3)>span:first-child{
 background-image:linear-gradient(var(--gold-line),var(--gold-line));
 background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;
 padding-bottom:4px;margin-bottom:-4px;
 transition:background-size .46s cubic-bezier(.2,.85,.25,1.18);
}
body.brand-system :is(.category-card>a,.product-main,.production-card>a):is(:hover,:focus-visible) :is(h2,h3)>span:first-child{background-size:100% 2px}

@media(max-width:1115px){
 
}
@media(max-width:1000px){
 
 
}
@media(max-width:850px){
 
 
 
 
 
 
}
@media(max-width:600px){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
}

/* WCAG 2.5.8 / 2.4.7: generous native target, visible focus and no idle animation. */
html{scroll-padding-bottom:88px}
body.brand-system .whatsapp-float{
 position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:30;
 display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid #167343;
 background:#167343;color:#fff;box-shadow:0 2px 9px rgb(23 45 70 / .10);text-decoration:none;
 animation:none;transition:none;transform:none;
}
body.brand-system .whatsapp-float svg{display:block;width:28px;height:28px;fill:currentColor;stroke:none;animation:none;transition:none;transform:none}
body.brand-system .whatsapp-float:hover{background:#105c35;color:#fff;border-color:#105c35}
/* Dual focus ring remains visible against both pale pages and the navy band. */
body.brand-system .whatsapp-float:focus-visible{outline:2px solid #167343;outline-offset:4px;box-shadow:0 0 0 5px #fff}
body.brand-system .footer-bottom{padding-inline-end:80px}
body.brand-system :is(a,button,input,select,textarea,summary){scroll-margin-bottom:88px}
/* Keep form controls clear of the fixed shortcut while entering a request. */
body.brand-system:has(#quote-form:focus-within) .whatsapp-float{display:none}
@media(max-width:600px){
 body.brand-system .whatsapp-float{width:44px;height:44px;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}
 body.brand-system .whatsapp-float svg{width:26px;height:26px}
 body.brand-system .footer-bottom{padding-inline-end:64px}
 body.brand-system.is-footer-visible .whatsapp-float{display:none}
}
@media(prefers-reduced-motion:reduce){body.brand-system .whatsapp-float{transition:none}}


/* Source: footer.css */
/* User-selected 1. Ayrı sütunlar, 15 October 2026. All V7 routes. */
body.brand-system .site-footer.footer-catalogue{font:400 14px/1.5 Arial,sans-serif;background:#eff5f8;color:#172d46;border-top:3px solid #d8b86a;padding:38px 0 0}
body.brand-system .footer-catalogue .footer-container{width:min(calc(100% - 64px),1160px);margin-inline:auto}
.footer-catalogue :where(div,nav,section){min-width:0}
.footer-catalogue .footer-layout{display:grid;grid-template-columns:.85fr 2.1fr 1.1fr;gap:36px;align-items:start}
body.brand-system .footer-catalogue h2{font:700 16px/1.4 Arial,sans-serif;letter-spacing:0;color:#245577;margin:0 0 10px}
.footer-catalogue p{margin:0}
.footer-catalogue ul{list-style:none;padding:0;margin:0}
.footer-catalogue a{color:inherit;text-decoration:none}
.footer-catalogue a:hover{text-decoration:underline;text-decoration-color:#af862e;text-underline-offset:4px;text-decoration-thickness:2px}
/* WCAG 2.4.7: each native footer link keeps a distinct keyboard focus ring. */
.footer-catalogue a:focus-visible{outline:3px solid #245577;outline-offset:4px;border-radius:2px}
.footer-catalogue .footer-brand{display:inline-flex;align-items:center;min-height:52px;padding:0}
body.brand-system .footer-catalogue .brand-wordmark{display:block;width:160px;height:auto;max-width:100%;object-fit:contain}
body.brand-system .footer-catalogue .footer-intro{max-width:30ch;margin-top:15px;font-size:14px;line-height:1.65;color:#4b6177}
.footer-catalogue .footer-quote-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin-top:19px;padding:9px 16px;border:1px solid #172d46;border-radius:4px;background:#172d46;color:#fff;font:700 13px/1.4 Arial,sans-serif;text-decoration:none}
.footer-catalogue .footer-quote-button:hover{background:#245577;border-color:#245577;color:#fff;text-decoration:none}
body.brand-system .footer-catalogue .footer-contact-link{display:flex;align-items:center;gap:9px;min-height:40px;padding-block:7px;font-size:13.5px;line-height:1.45;overflow-wrap:anywhere;font-weight:400}
.footer-catalogue .footer-contact-icon{display:block;width:18px;height:18px;flex:none;color:#245577}
.footer-catalogue .footer-whatsapp .footer-contact-icon{color:#167343}
.footer-catalogue .footer-whatsapp .whatsapp-mark{display:block;width:18px;height:18px;flex:none;fill:currentColor;stroke:none;color:#167343}
.footer-catalogue .footer-address{max-width:42ch;font-size:13px;line-height:1.7;color:#4b6177;margin-top:9px}
.footer-catalogue .footer-address strong{font-weight:400}
.footer-catalogue .footer-link-list a{display:flex;align-items:center;min-height:34px;padding-block:6px;font-size:13.5px;line-height:1.4}
.footer-catalogue .footer-overview-row{margin-top:8px;border-top:1px solid #cbdbe5;padding-top:4px}
.footer-catalogue .footer-link-list .footer-overview-link{color:#245577;font-weight:700}
.footer-catalogue .footer-navigation{display:grid;grid-template-columns:1fr 1fr;gap:26px}
body.brand-system .footer-catalogue .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:26px;border-top:1px solid #cbdbe5;margin-top:28px;padding-block:17px;padding-inline-end:80px;color:#4b6177;font-size:12px;line-height:1.65}
.footer-catalogue .footer-bottom>p:first-child{max-width:82ch}
.footer-catalogue .footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px;font-size:13px}
@media(max-width:1100px){
 .footer-catalogue .footer-layout{grid-template-columns:1.7fr 1fr;gap:27px 38px}
 .footer-catalogue .footer-identity{grid-column:1/-1}
 body.brand-system .footer-catalogue .footer-intro{max-width:40ch;margin-top:11px}
 .footer-catalogue .footer-quote-button{margin-top:15px}
 .footer-catalogue .footer-navigation{gap:22px}
}
@media(max-width:767px){
 body.brand-system .site-footer.footer-catalogue{padding-top:29px}
 body.brand-system .footer-catalogue .footer-container{width:calc(100% - 40px)}
 .footer-catalogue .footer-layout{grid-template-columns:1fr;gap:27px}
 .footer-catalogue .footer-identity{grid-column:auto}
 body.brand-system .footer-catalogue .brand-wordmark{width:150px}
 body.brand-system .footer-catalogue .footer-intro{max-width:34ch}
 body.brand-system .footer-catalogue h2{font-size:15px}
 /* WCAG 2.5.8: full 44px phone targets for the CTA, navigation and contacts. */
 .footer-catalogue .footer-quote-button{min-height:44px;margin-top:17px}
 .footer-catalogue .footer-navigation{gap:16px}
 body.brand-system .footer-catalogue .footer-link-list a,
 body.brand-system .footer-catalogue .footer-contact-link{min-height:44px}
 .footer-catalogue .footer-address{font-size:14px;max-width:42ch}
 body.brand-system .footer-catalogue .footer-bottom{align-items:flex-start;flex-direction:column;gap:5px;margin-top:25px;padding-block:17px 20px;padding-inline-end:0}
}


/* Source: v84.css */
/* V1.2 keeps the selected V7 palette, typography and catalogue composition. */
/* Reserve the same final slider-control space before deferred home.js runs.
   The early .js marker exists in the head; no-JS controls remain natively hidden.
   WCAG 2.2.2 / 1.4.10: pause stays a native button, without first-paint reflow. */

/* WCAG 2.4.7 / 2.4.11: native actions keep a visible ring outside their surface. */
body.brand-system :is(.button,.nav-contact):focus-visible{
 outline:2px solid #172d46;outline-offset:4px;box-shadow:0 0 0 2px #fff;
}
body.brand-system .quote-panel .form-actions{
 display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;
}
body.brand-system .quote-panel .form-actions .button{margin:0;min-height:44px}

body.brand-system .quote-panel .form-note{margin-top:14px;max-width:58ch}
/* WCAG 1.4.10: long labels and addresses reflow without widening a mobile form. */
body.brand-system .quote-panel :is(input,select,textarea){max-width:100%;min-width:0}
body.brand-system .quote-direct{overflow-wrap:anywhere}
body.brand-system .product-gallery-main{cursor:zoom-in}
@media(max-width:600px){
 body.brand-system .quote-panel .form-actions{flex-direction:column;align-items:stretch}
 body.brand-system .quote-panel .form-actions .button{justify-content:space-between}
}


/* Source: logo-motion.css */
/* Reserve the complete logo while the original lettering is revealed. */
html.js.logo-intro :is(.brand-wordmark,.company-wordmark):not(.logo-motion-initialized){
 clip-path:inset(0 71% 0 0);animation:logo-pending-fallback 1ms step-end 1800ms forwards;
}
/* If the enhancement script fails to load, the complete name still returns. */
@keyframes logo-pending-fallback{to{clip-path:inset(0)}}
.logo-motion-frame{display:block;position:relative;width:fit-content;max-width:100%;flex:none}
.logo-motion-artwork{position:absolute;inset:0 auto auto 0;display:none;width:100%;height:100%;overflow:visible;pointer-events:none}
/* Original lettering appears once; the kros and each ink layer move independently. */
.logo-motion-active>.logo-motion-ready{clip-path:inset(0 0 0 29%)}
.logo-motion-active>.logo-motion-artwork{display:block}
.logo-motion-kros,.logo-motion-color{transform-box:view-box;transform-origin:30.95px 32px}






/* Motion changes only composited transforms, so mobile layout and target sizes stay fixed. */
@media(prefers-reduced-motion:reduce){
 .logo-motion-kros,.logo-motion-color,.logo-motion-image{animation:none!important;transition:none!important;transform:none!important}
 html.js :is(.brand-wordmark,.company-wordmark){clip-path:none!important;opacity:1!important;animation:none!important}
 .logo-motion-artwork{display:none!important}
}
@media print{
 .logo-motion-artwork{display:none!important}
 html.js :is(.brand-wordmark,.company-wordmark){clip-path:none!important;opacity:1!important;animation:none!important}
}


/* Source: measurement.css */
.kp-consent[hidden]{display:none!important}
.kp-consent{font:15px/1.5 system-ui,sans-serif;color:#172522;background:#fff;border:1px solid #c2cdc8;border-radius:12px;padding:20px;box-shadow:0 4px 24px #0002;box-sizing:border-box}
#kp-consent-banner{position:fixed;bottom:16px;left:16px;right:16px;max-width:960px;margin:auto;z-index:10000;max-height:70vh;overflow:auto}
.kp-consent h2{font-size:20px;margin:0 0 8px}.kp-consent p{margin:8px 0}
.kp-consent-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.kp-consent button{font:inherit;color:#173c31;background:#fff;border:1px solid #58796d;border-radius:6px;min-height:44px;padding:10px 16px;cursor:pointer}
.kp-consent-actions>button{flex:1 1 170px}.kp-consent button:focus-visible,#kp-consent-open:focus-visible{outline:3px solid #135de8;outline-offset:3px}
#kp-consent-dialog{width:min(600px,calc(100% - 32px));max-height:85vh;overflow:auto}#kp-consent-dialog::backdrop{background:#0007}
.kp-consent-option{display:flex;gap:12px;align-items:start;padding:12px 0}.kp-consent-option input{width:22px;height:22px;flex:none;margin-top:3px}
/* Match the existing Privacy link; retain a 44px keyboard/touch target (WCAG 2.5.8). */
.site-footer .footer-bottom .kp-consent-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
#kp-consent-open{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:0;padding:8px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font:inherit;font-size:13px;line-height:inherit;cursor:pointer}
#kp-consent-open svg{width:16px;height:16px;flex:none}
#kp-consent-open:hover{color:#245577}
#kp-consent-open:hover span{text-decoration:underline;text-underline-offset:3px}
@media(max-width:500px){#kp-consent-banner{bottom:8px;left:8px;right:8px;padding:16px}.kp-consent-actions{gap:8px}}


/* Source: v12.css */
/* V1.2 extends native Gutenberg prose; imported V1.2 layout rules remain in parent. */
/* Primary display headings: prefer the real Arial Light face when installed.
   Arial is the fallback; 300 cannot manufacture a missing Light font face. */
body.brand-system.kp-v12 :is(main h1,.showcase-copy h2,.company-design .hero-frame .hero-intro h1),
.editor-styles-wrapper h1{
 font-family:"Arial Light",Arial,sans-serif;
 font-weight:300;
}
/* Picture selects motion/static SVG without adding a box or changing logo sizing. */
.kp-v12-logo-picture{display:contents}
/* A source flattened into the brand flex row must not create an empty gap. */
.kp-v12-logo-picture>source{display:none}
/* Contact page: one line-icon family; text labels retain their meaning (WCAG 1.1.1). */
.kp-v12-contact .kp-contact-icon{display:inline-block;width:24px;height:24px;flex:0 0 auto;vertical-align:middle;pointer-events:none}
.kp-v12-contact .page-heading>.wrap{position:relative}
.kp-v12-contact .contact-hero-art{position:absolute;right:38px;top:50%;width:136px;height:136px;transform:translateY(-45%);color:#235879;pointer-events:none}
.kp-v12-contact .contact-hero-art>svg{display:block;width:100%;height:auto}
body.kp-v12 .kp-v12-contact .contact-section-title{display:flex;align-items:center;gap:12px}
.kp-v12-contact .contact-section-title>.kp-contact-icon{width:28px;height:28px;color:#235879}
body.kp-v12 .kp-v12-contact .contact-details{gap:27px}
.kp-v12-contact .contact-detail{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:14px}
.kp-v12-contact .contact-detail-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#eef4f8;border:1px solid #d6e2ea;color:#235879}
.kp-v12-contact .contact-whatsapp .contact-detail-icon{color:#237748;background:#eaf5ef;border-color:#cfe4d8}
.kp-v12-contact .contact-detail-copy{min-width:0}
body.kp-v12 .kp-v12-contact .contact-detail-copy h3{margin:0 0 5px}
.kp-v12-contact .contact-detail-copy a{overflow-wrap:anywhere}
body.kp-v12 .kp-v12-contact .contact-detail-copy p{margin:0}
.kp-v12-contact .contact-channels{padding-left:60px}
.kp-v12-contact .contact-channels .kp-contact-icon{width:19px;height:19px;margin-right:8px}
body.kp-v12 .kp-v12-contact .contact-field-label{display:flex;align-items:flex-start;gap:7px;line-height:1.45}
.kp-v12-contact .contact-field-label>.kp-contact-icon{width:16px;height:16px;margin-top:1px;color:#235879}
.kp-v12-contact .form-actions>.button>.kp-contact-icon{width:19px;height:19px}
/* The form buttons retain their text labels and arrow; decorative marks are removed. */
.kp-v12-contact #quote-form .form-actions>.button>.kp-contact-icon,.kp-v12-contact #quote-form .form-actions .print-mark{display:none}
body.kp-v12 .kp-v12-contact #quote-form .form-actions>.button>.action-direction>.arrow{opacity:1;transform:none}
/* WhatsApp brand green with dark text preserves readable contrast (WCAG 1.4.3). */
body.kp-v12 .kp-v12-contact #quote-form .form-actions>.button[value="whatsapp"]{background:#12833f;border-color:#12833f;color:#fff}
body.kp-v12 .kp-v12-contact #quote-form .form-actions>.button[value="whatsapp"]:hover{background:#0f7036;border-color:#0f7036;color:#fff}
/* Readable confirmation wraps at narrow widths and keeps the keyboard focus ring. */
body.kp-v12 .kp-v12-contact #quote-form .form-actions>.button.is-sent{background:var(--gold,#d8b86a);border-color:var(--gold,#d8b86a);color:#172d46;cursor:default;white-space:normal;line-height:1.5;padding:14px 18px;text-align:center}
/* The same message remains announced by the live region without repeating it visually. */
body.kp-v12 #quote-form:has(.is-sent) #form-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:950px){.kp-v12-contact .contact-hero-art{display:none}}
@media(max-width:700px){.kp-v12-contact .contact-details{grid-template-columns:1fr}.kp-v12-contact .contact-detail{grid-template-columns:42px minmax(0,1fr);gap:12px}.kp-v12-contact .contact-detail-icon{width:42px;height:42px}.kp-v12-contact .contact-detail-icon>.kp-contact-icon{width:22px;height:22px}.kp-v12-contact .contact-channels{padding-left:54px}body.kp-v12 .kp-v12-contact .contact-section-title{gap:10px}.kp-v12-contact .contact-section-title>.kp-contact-icon{width:25px;height:25px}}
/* WCAG 2.4.11: the contact page already has WhatsApp links; keep mobile fields clear. */
@media(max-width:700px){body.kp-v12:has(.kp-v12-contact) .whatsapp-float{display:none}}
/* Keep the contact channels and address together, independent of form height. */
body.kp-v12 .kp-v12-contact .contact-layout-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:stretch}
.kp-v12-contact .contact-left{display:flex;flex-direction:column;min-width:0}
body.kp-v12 .kp-v12-contact .contact-left .contact-details{grid-template-columns:1fr;gap:27px}
body.kp-v12 .kp-v12-contact .contact-left>.contact-details{margin-top:38px;padding-top:26px;border-top:1px solid var(--line,#d6e2ea)}
.kp-v12-contact .contact-address-block{margin-top:28px;padding-top:28px;border-top:1px solid var(--line,#d6e2ea)}
.kp-v12-contact .contact-section-title strong{font-weight:700}
.kp-v12-contact .contact-address-block .contact-channels{margin-top:24px}
body.kp-v12 .kp-v12-contact .contact-address-block p{font-size:15px;line-height:1.65}
body.kp-v12 .kp-v12-contact .contact-address-block h3{font-size:15px;line-height:1.4;letter-spacing:0;font-weight:600;margin-bottom:5px}
/* A short decorative rule stays within the two-line welcome heading. */
.kp-v12-contact #contact-details-heading::before{content:"";display:block;flex:0 0 2px;width:2px;height:1.65em;align-self:center;border-radius:1px;background:#b88b2a}
.kp-v12-contact #contact-details-heading>span{min-width:0}
.kp-v12-contact .contact-address-line{display:block}
/* Reserve map space before the lazy iframe loads; reflow inside the contact column. */
.kp-v12-contact .contact-map{margin-top:28px;border:1px solid var(--line,#d6e2ea);border-radius:10px;overflow:hidden;background:var(--pale,#eef4f8)}
.kp-v12-contact .contact-map iframe{display:block;width:100%;height:260px;border:0}
@media(max-width:700px){.kp-v12-contact .contact-map iframe{height:240px}}
/* Decorative conversation plays briefly, then settles without a separate control. */
.kp-v12-contact .page-heading>.wrap{padding-right:310px;min-height:215px}
.kp-v12-contact .contact-hero-conversation{right:12px;width:260px;height:246px;pointer-events:auto}
.kp-v12-contact .contact-hero-conversation picture,.kp-v12-contact .contact-hero-conversation img{display:block;width:100%;height:auto}
@media(max-width:1100px){body.kp-v12 .kp-v12-contact .contact-layout-split{gap:42px}}
@media(max-width:1000px){body.kp-v12 .kp-v12-contact .contact-layout-split{grid-template-columns:1fr;gap:36px}}
@media(max-width:950px){.kp-v12-contact .page-heading>.wrap{padding-right:0;min-height:0}}
@media(max-width:700px){.kp-v12-contact .contact-address-block .contact-channels{margin-top:20px}}
/* Four PVC examples retain their reading order and reflow without scrolling (WCAG 1.4.10). */

/* Reserve space for the requested single-line title, keeping the caption below it. */


@media(max-width:850px){}
@media(max-width:600px){}
/* User's October 16 annotations: retain semantic headings/labels (WCAG 1.3.1). */
/* Gallery labels are visually removed sitewide; retain status feedback (WCAG 4.1.3). */
.kp-v12-visually-hidden,body.kp-v12 .gallery-count,body.kp-v12 .media-viewer-description{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}





/* Compact native controls retain labels, focus rings and 44px targets (WCAG 2.5.8). */





/* Avoid automatic iOS search-focus zoom; keep user-controlled zoom available (WCAG 1.4.4). */
@media(max-width:850px){}
/* Retain the native select and keyboard behavior; reserve room for a centered chevron. */
body.kp-v12 .catalogue-tools #catalog-category,body.kp-v12 #quote-form #quote-product{-webkit-appearance:none;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234b6177' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px 16px}
/* System rendering keeps the indicator visible in forced-color mode (WCAG 1.4.11). */
@media(forced-colors:active){body.kp-v12 .catalogue-tools #catalog-category,body.kp-v12 #quote-form #quote-product{-webkit-appearance:auto;appearance:auto;background-image:none;padding-right:12px}}




@media(max-width:700px){}
/* WCAG 2.4.11: focused links/anchors remain below the sticky header. */
html{scroll-padding-top:105px}
main :is(h1,h2,h3,h4,[id],a,button,input,select,textarea){scroll-margin-top:105px}
.kp-v12-block-content,.editor-styles-wrapper{--wp--preset--color--ink:#172d46;--wp--preset--color--blue:#1d4d80;--wp--preset--color--muted:#4b6177;--wp--preset--color--pale:#eef4f8;--wp--preset--color--white:#fff}
.kp-v12-block-content{font-size:17px;line-height:1.75;overflow-wrap:anywhere;min-width:0}
.kp-v12-document :is(.product-copy,.page-heading){min-width:0;overflow-wrap:anywhere}

.brand-system [data-kp-v12-service-gallery] .product-gallery-main{cursor:default}

/* Reserve controls before deferred JS; their reveal must not shift prose. */


.kp-v12-block-content :is(p,ul,ol){max-width:78ch}
.kp-v12-block-content>:first-child{margin-top:0}
.kp-v12-block-content>:last-child{margin-bottom:0}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(p,ul,ol,blockquote,figure,pre,.wp-block-buttons,.wp-block-columns,.wp-block-group){margin-block:0 1.5rem}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(h2,h3,h4,h5,h6){color:#172d46;line-height:1.3;letter-spacing:-.025em;margin-block:2rem 1rem;font-weight:500}
:is(.kp-v12-block-content,.editor-styles-wrapper) h2{font-size:clamp(1.6rem,3vw,2rem)}
:is(.kp-v12-block-content,.editor-styles-wrapper) h3{font-size:clamp(1.3rem,2.5vw,1.55rem)}
:is(.kp-v12-block-content,.editor-styles-wrapper) h4{font-size:1.15rem}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(ul,ol){padding-inline-start:1.5rem;list-style-position:outside}
:is(.kp-v12-block-content,.editor-styles-wrapper) li{margin-block:.35rem}
:is(.kp-v12-block-content,.editor-styles-wrapper) li :is(ul,ol){margin-block:.5rem}
:is(.kp-v12-block-content,.editor-styles-wrapper) a:not(.wp-block-button__link){color:#1d4d80;text-underline-offset:.2em}
:is(.kp-v12-block-content,.editor-styles-wrapper) blockquote{padding:1rem 1.5rem;border-inline-start:3px solid #1d4d80;background:#eef4f8}
:is(.kp-v12-block-content,.editor-styles-wrapper) blockquote p:last-child{margin-bottom:0}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(img,video,iframe){max-width:100%}
:is(.kp-v12-block-content,.editor-styles-wrapper) img{height:auto}
:is(.kp-v12-block-content,.editor-styles-wrapper) figcaption{font-size:.875rem;line-height:1.6;color:#4b6177;margin-top:.65rem}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(.wp-block-image,.wp-block-embed){max-width:100%}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(.wp-block-table,pre){max-width:100%;overflow:auto}
/* WCAG 1.4.10: genuine data tables scroll within their own region at 320px. */
:is(.kp-v12-block-content,.editor-styles-wrapper) table{border-collapse:collapse;width:100%;font-size:.94rem;line-height:1.55}
:is(.kp-v12-block-content,.editor-styles-wrapper) :is(th,td){border:1px solid #d6e0e8;padding:.7rem .85rem;text-align:start;vertical-align:top}
:is(.kp-v12-block-content,.editor-styles-wrapper) th{background:#eef4f8;font-weight:600}
:is(.kp-v12-block-content,.editor-styles-wrapper) pre{padding:1rem;background:#eef4f8;font-size:.875rem;overflow-wrap:normal}









/* WCAG 2.4.7 / 1.4.11: rings have contrast against both pale and blue surfaces. */
.kp-v12-block-content :focus-visible{outline:3px solid #172d46;outline-offset:4px;box-shadow:0 0 0 2px #fff}




@media(max-width:781px){}
@media(max-width:600px){.kp-v12-block-content{font-size:16px}.kp-v12-block-content :is(th,td){padding:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.kp-v12-block-content *{animation:none!important;transition:none!important}}
/* Keep the five homepage marks together in two balanced rows on phones. */
@media(max-width:600px){
 
 
 
 
 
 
 
}
/* Approved mobile footer: keep the existing pale background and desktop grid. */
@media(max-width:767px){
 .footer-catalogue .footer-layout{gap:24px}
 .footer-catalogue .footer-navigation:has(.footer-accordion-group){display:block}
 .footer-catalogue .footer-accordion-group{border-top:1px solid #c8d8e4}
 .footer-catalogue .footer-accordion-group:last-child{border-bottom:1px solid #c8d8e4}
 /* Native summary announces expanded state and remains a 58px touch target. */
 .footer-catalogue .footer-accordion-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;list-style:none;color:#245577}
 .footer-catalogue .footer-accordion-group>summary::-webkit-details-marker{display:none}
 body.brand-system .footer-catalogue .footer-accordion-group>summary h2{margin:0;font-size:16px}
 .footer-catalogue .footer-accordion-group>summary:focus-visible{outline:3px solid #245577;outline-offset:3px;border-radius:2px}
 .footer-catalogue .footer-accordion-symbol{flex:none;width:20px;text-align:center;font-size:24px;line-height:1;font-weight:400}
 .footer-catalogue .footer-accordion-group[open] .footer-accordion-symbol{font-size:0}
 .footer-catalogue .footer-accordion-group[open] .footer-accordion-symbol::after{content:"−";font-size:24px}
 .footer-catalogue .footer-accordion-group>.footer-link-group{padding-bottom:18px}
 .footer-catalogue .footer-accordion-group .footer-link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
 .footer-catalogue .footer-accordion-group .footer-link-list a{font-size:14px;overflow-wrap:anywhere}
 .footer-catalogue .footer-accordion-group .footer-overview-row{grid-column:1/-1}
 body.brand-system .footer-catalogue .footer-contact-link{font-size:14px}
}
/* Crop only the bottom tenth of the existing About hero photograph. */


@media(min-width:701px) and (max-width:1000px){
 
 
}
@media(max-width:700px){}
/* Documents: balance the three retained cards after the approved Sedex removal. */
@media(min-width:1001px){}
/* References: 78% of the previous logo dimensions; preserve their aspect ratios. */
body.kp-v12 .company-reference-list img{width:93.6px;height:84.24px}
/* WCAG 1.1.1: captions still name the decorative logos for screen readers. */
body.kp-v12 .company-reference-list figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){body.kp-v12 .company-reference-list img{width:70.2px;height:70.2px}}
/* About: align the complete logo/copy block with the photograph's bottom edge. */

/* Six slide choices: one desktop row, two balanced rows on phones. */




@media(max-width:600px){}

