/* KAPU-MH · restrained visual polish and motion · 2026-09-24 */
:root{--motion-ease:cubic-bezier(.22,.75,.25,1)}
.site-header{background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 4px 24px #0c2c5708}
.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:#145987;transform:scaleX(0);transform-origin:left;transition:transform 180ms ease}.nav-links a[aria-current=page]:after{transform:scaleX(1)}
.reference-hero{border-bottom:1px solid #dce9f6}.reference-hero h1{line-height:1.075}.hero-lead{color:#34516d}.hero-side{background:#ffffffde;box-shadow:0 14px 42px #082c5914;border-color:#ffffff;line-height:1.55}
.product-card,.reference-card,.quality-card,.benefit-card{border-color:#dde7f1;box-shadow:0 4px 16px #153d6406;border-radius:15px}
.product-card{padding:12px}.product-card>img{border-radius:10px;background:#e8eff5}.card-copy{padding:15px 3px 5px}.card-copy h3{line-height:1.3}.card-copy p{line-height:1.55}.card-link{padding-top:4px}
.ref-section-head h2{letter-spacing:-.035em}.tint-section{background:linear-gradient(125deg,#edf5fd,#f8fbff 60%,#f0f6fc)}
.btn,.nav-quote,.small-button,.menu-toggle,.mobile-contact a{transition:transform 180ms var(--motion-ease),box-shadow 200ms ease,background-color 180ms ease}
.btn:active,.nav-quote:active,.small-button:active,.mobile-contact a:active{transform:scale(.98)}
.btn:focus-visible,.nav-quote:focus-visible,.small-button:focus-visible,.mobile-contact a:focus-visible{outline:3px solid #70a7d9;outline-offset:4px}
.product-card,.reference-card,.benefit-card,.quality-card{transition:transform 220ms var(--motion-ease),box-shadow 220ms ease,border-color 220ms ease}
.reference-card{overflow:hidden}.reference-card img{transition:transform 450ms var(--motion-ease)}
.site-footer{background:linear-gradient(180deg,#f8fbff,#edf4fb);border-top:1px solid #dce7f2}
.hero-load-indicator{position:absolute;left:0;right:0;top:0;height:2px;z-index:3;overflow:hidden;pointer-events:none;background:#dbeaf6}.hero-load-indicator:after{content:"";display:block;width:28%;height:100%;background:#145987;animation:kapu-load 1100ms ease-in-out infinite}
@keyframes kapu-load{from{transform:translateX(-110%)}to{transform:translateX(470%)}}
@media(hover:hover) and (pointer:fine){.nav-links a:hover:after{transform:scaleX(1)}.btn:hover,.nav-quote:hover,.small-button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #104e8720}.product-card:hover,.reference-card:hover{transform:translateY(-4px);border-color:#8bafd0;box-shadow:0 14px 30px #103c6714}.reference-card:hover img{transform:scale(1.025)}.benefit-card:hover,.quality-card:hover{border-color:#9ebddb;box-shadow:0 9px 25px #153d640c}}
@media(min-width:951px){.reference-hero-inner{min-height:470px;padding-bottom:67px}.reference-hero+.ref-facts{width:calc(100% - var(--space)*2);max-width:1290px;margin:-21px auto 14px;padding:27px 28px;border:1px solid #e1ebf4;border-radius:15px;box-shadow:0 12px 32px #0d385b0b;z-index:2}.compact{padding-top:40px;padding-bottom:42px}.product-grid{gap:17px}.ref-section-head{margin-bottom:25px}.quality-hero .reference-hero-inner{min-height:400px}}
@media(max-width:950px){.nav-links a:after{display:none}}
@media(max-width:600px){.product-card{padding:8px;border-radius:13px}.card-copy{padding:12px 3px 6px}.compact{padding-top:31px;padding-bottom:32px}.hero-lead{font-size:16px;line-height:1.6;max-width:94%}.mobile-contact{background:#ffffffef;border-color:#fff;box-shadow:0 6px 25px #163c6426;backdrop-filter:blur(18px)}.reference-hero .overline{font-size:12px;letter-spacing:.12em}.nav-quote{font-size:12px}.product-card:hover,.reference-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-load-indicator{display:none}.btn:active,.nav-quote:active,.small-button:active,.mobile-contact a:active,.product-card:hover,.reference-card:hover{transform:none!important}}
@media print{.hero-load-indicator{display:none!important}.reference-hero+.ref-facts{margin:0;width:100%;box-shadow:none}*{animation:none!important;transition:none!important}}

/* Navigation: one continuous icon and a gently reshaping selection. */
.menu-toggle{min-width:46px;min-height:46px;display:none;align-items:center;justify-content:center}
.menu-toggle:focus-visible,.nav-links a:focus-visible{outline:3px solid #70a7d9;outline-offset:5px}
.menu-bars{display:block;position:relative;width:24px;height:24px}
.menu-bars>span{position:absolute;left:1px;top:11px;width:22px;height:2px;border-radius:2px;background:currentColor;transition:transform 260ms var(--motion-ease),opacity 160ms ease,width 260ms var(--motion-ease)}
.menu-bars>span:nth-child(1){transform:translateY(-7px)}
.menu-bars>span:nth-child(3){transform:translateY(7px);width:16px}
.menu-toggle[aria-expanded=true]{background:#eaf3fb;color:#145987}
.menu-toggle[aria-expanded=true] .menu-bars>span:nth-child(1){transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-bars>span:nth-child(2){transform:scaleX(.25);opacity:0}
.menu-toggle[aria-expanded=true] .menu-bars>span:nth-child(3){transform:rotate(-45deg);width:22px}
.nav-indicator{display:none;pointer-events:none}
@media(min-width:951px){
 .nav-links.nav-motion-ready{position:relative;isolation:isolate}
 .nav-motion-ready a{padding:8px 0;z-index:1;transition:color 180ms ease}
 .nav-motion-ready a:after{display:none}
 .nav-motion-ready a:hover{color:#145987}
 .nav-indicator{display:block;position:absolute;left:0;top:50%;height:40px;width:0;opacity:0;border:1px solid #d3e5f4;border-radius:9px;background:linear-gradient(135deg,#e9f3fc,#f5f9fd);box-shadow:0 3px 12px #14598708;transition:transform 280ms var(--motion-ease),width 280ms var(--motion-ease),opacity 150ms ease}
 .nav-indicator.is-visible{opacity:1}
}
@media(max-width:950px){
 .menu-toggle{display:inline-flex}
 .nav-links.nav-motion-ready{display:flex;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-5px) scaleY(.985);transform-origin:top;clip-path:inset(0 0 100% 0 round 0 0 18px 18px);border-radius:0 0 18px 18px;padding-top:16px;padding-bottom:20px;transition:opacity 220ms ease,transform 260ms var(--motion-ease),clip-path 260ms var(--motion-ease),visibility 0s linear 260ms}
 .nav-links.nav-motion-ready.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0) scaleY(1);clip-path:inset(0 0 0 0 round 0 0 18px 18px);transition-delay:0s}
 .nav-motion-ready a{min-height:48px;display:flex;align-items:center;padding:9px 15px;border-radius:8px;opacity:0;transform:translateY(-5px);transition:opacity 180ms ease,transform 220ms var(--motion-ease),background-color 150ms ease}
 .nav-motion-ready.is-open a{opacity:1;transform:translateY(0);transition-delay:calc(var(--nav-order,0)*20ms)}
 .nav-motion-ready a[aria-current=page]{background:#eaf3fb;box-shadow:inset 3px 0 #145987}
 .nav-motion-ready a:hover{background:#f0f6fc}
}
