/* Shared display parameters: change these once for all 11 HTML pages. */
:root{--site-max:80rem;--site-font-size:16px;--page-gutter:clamp(1.125rem,3vw,3rem);--header-height:5.25rem}
html{font-size:var(--site-font-size);overflow-y:scroll;scrollbar-gutter:stable;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{font-family:Arial,sans-serif;font-size:1rem;line-height:1.65;min-width:0;margin:0}
main{width:100%;min-width:0}img{height:auto}section,article,.wrap,.section-inner{min-width:0}
.site-header-inner,.home-topbar-inner{max-width:var(--site-max);padding-inline:var(--page-gutter)}
.site-header-inner{min-height:var(--header-height)}
.wrap,.section-inner,.certification-layout,.footer-grid,.footer-social-row,.footer-bottom{max-width:var(--site-max);margin-inline:auto}
.section,.certification-section,.about-hero,.about-profile,.contact-hero,.contact-body,.news-hero,.news-section,.site-footer{padding-inline:var(--page-gutter)}
main.catalog-main{max-width:var(--site-max);margin-inline:auto;padding-inline:var(--page-gutter)!important}
.main-nav a{font-size:1.0625rem}.brand-text{font-size:1.0625rem}.brand-text small{font-size:.6875rem}
.brand-mark{position:relative;display:block;overflow:hidden;background:#fff;border-radius:50%;width:46px;height:46px;flex:0 0 46px}
.brand-mark img{position:absolute;width:257px;height:174px;max-width:none;left:-67px;top:-64px}
.home-hero{isolation:isolate;min-height:clamp(34rem,68vh,46rem)}
.home-hero-content{width:100%;max-width:var(--site-max);margin-inline:auto;padding:5.5rem var(--page-gutter)}
.home-hero-image{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.home-hero-overlay{background:linear-gradient(90deg,rgba(5,18,32,.82),rgba(5,18,32,.58) 52%,rgba(5,18,32,.12))}
.home-hero h1{max-width:52rem;font-size:clamp(2.5rem,4.7vw,4rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}
.home-hero-description{max-width:40rem!important;font-size:1.125rem!important;line-height:1.8!important;color:#f0f4f8}
.hero-slide{transform:scale(1.01)}.hero-slide.is-active{transform:scale(1.04)}
.contact-hero,.contact-body{text-align:center}.contact-hero p{margin-inline:auto}
.contact-layout{width:100%;max-width:69rem;margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.5rem}
.contact-card h2{justify-content:center}.company-contact h2{font-size:1.625rem}.inquiry-form h2{font-size:1.875rem}
.inquiry-form label,.inquiry-form input,.inquiry-form textarea{text-align:left}
.contact-info-band{max-width:69rem;margin-inline:auto}.contact-intro{max-width:40rem;margin-inline:auto}
.product-image{margin:0!important;aspect-ratio:1!important;background:#f5f5f5;overflow:hidden;border:0;padding:0}
.product-image img{width:100%!important;height:100%!important;max-width:none;object-fit:cover!important;object-position:center;display:block}
.product-card{overflow:hidden}.product-card h2{font-size:1.0625rem}.product-card[hidden]{display:none!important}
@media(max-width:950px){.contact-layout{grid-template-columns:1fr;max-width:44rem}.contact-info-band{max-width:44rem}}
@media(max-width:600px){:root{--header-height:4.875rem}.home-hero-content{padding-block:4rem}.home-hero{min-height:35rem}.home-hero-overlay{background:rgba(5,18,32,.64)}.brand-text{font-size:.9375rem}.brand-text small{font-size:.625rem}.contact-body{padding-block:2.5rem}.contact-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.contact-address{grid-column:auto}.topbar-contact{font-size:.6875rem}.home-hero-description{font-size:1rem!important}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-slide.is-active{transform:none;transition:none!important}}

/* Progressive same-origin cross-page fading; unsupported browsers retain normal navigation. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:site-fade-out .14s ease both}
::view-transition-new(root){animation:site-fade-in .2s ease both}
@keyframes site-fade-out{to{opacity:0}}
@keyframes site-fade-in{from{opacity:0}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
