/* Shared language controls: 24px icons, 2px strokes, 44px touch targets. */
.site-header .header-inner{position:relative;max-width:1440px;display:flex;align-items:center;gap:clamp(1.5rem,3vw,3rem)}
.site-header .site-nav{margin-left:auto;gap:clamp(1.5rem,3vw,3rem)}
.language-control{position:relative;flex-shrink:0;line-height:1}
.language-toggle{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:#fff;padding:10px;cursor:pointer}
.language-toggle svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}
.site-header .nav-toggle{width:44px;height:44px;padding:10px;flex-shrink:0}
.site-header .nav-toggle-bar{width:24px;height:2px;margin:5px 0}
.language-drawer{position:absolute;right:0;top:100%;width:360px;max-width:calc(100vw - 2.5rem);background:#080808;border:1px solid #303030;color:white;z-index:120;box-shadow:0 12px 24px #0003;padding:1rem;line-height:1.5}
.language-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;max-height:min(60vh,450px);overflow-y:auto}
.language-list button{min-height:44px;border:0;background:transparent;color:#ccc;font:inherit;font-size:.875rem;cursor:pointer;padding:.65rem .25rem;text-align:center;overflow-wrap:anywhere}
.language-list button:hover,.language-list button:focus-visible{color:white;background:#202020}
.language-list button[aria-pressed=true]{color:white;box-shadow:inset 0 -2px #f00}
.language-status{font-size:.75rem;color:#bbb;line-height:1.5;margin-top:.75rem}.language-status:empty{display:none}
.translated [data-i18n]{letter-spacing:normal;unicode-bidi:plaintext}
[data-fit]{overflow-wrap:normal}.language-toggle:focus-visible{outline:2px solid #f00}
@media(max-width:899px){
 .site-header .header-inner{flex-wrap:wrap;gap:0;padding-block:1rem}
 .site-header .wordmark{margin-right:auto}
 .site-header .header-inner>.language-control{position:static;margin-left:auto;margin-right:.5rem}
 .site-header .language-drawer{left:0;right:0;top:100%;width:100%;max-width:none;border-left:0;border-right:0;padding:1rem var(--gutter)}
 .site-header .nav-toggle{display:block;margin-left:0}
 .site-header #siteNav{order:5;flex-basis:100%;width:100%;margin:0;padding:0;display:none;gap:0}
 .site-header #siteNav.is-open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:.5rem 0}
 .site-header #siteNav>a:not(.btn){display:flex;justify-content:center;align-items:center;min-height:44px;font-size:.875rem;text-align:center}
 .site-header #siteNav .btn{display:none}
 .language-list{gap:.25rem;grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:900px){.site-header .nav-toggle{display:none}.site-header #siteNav{display:flex!important;width:auto}.site-header #siteNav .btn{display:inline-flex}}
@media(prefers-reduced-motion:reduce){.language-drawer{scroll-behavior:auto}}

.translated [data-i18n],.translated input,.translated select,.translated textarea,.language-list button{font-family:Arial,"Noto Sans Devanagari","Noto Sans Bengali","Noto Sans Gujarati","Noto Sans Kannada","Noto Sans Arabic","Noto Sans Malayalam","Noto Sans Oriya","Noto Sans Gurmukhi","Noto Sans Ol Chiki","Noto Sans Tamil","Noto Sans Telugu","Noto Sans Meetei Mayek",sans-serif}

/* CSS transitions are disabled; mobile drawer motion is controlled by cancellable JavaScript. */
.site-header #siteNav,.site-header .language-drawer{animation:none!important;transition:none!important}
/* Long words in Indic scripts may need to wrap inside narrow text columns. */
.translated [data-i18n]{overflow-wrap:anywhere}
.translated .sr-only{overflow:hidden}

.translated .btn{padding-block:6px;padding-inline:10px}.translated .btn [data-i18n]{line-height:1.15}

/* Display the supplied artwork at its original proportions with no excess canvas. */
.site-header .wordmark,.site-footer .wordmark{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}
.site-header .wordmark-logo{display:block;width:92px;height:auto;aspect-ratio:340/166;overflow:hidden}
.site-footer .wordmark-logo{display:block;width:92px;height:auto;aspect-ratio:340/166;overflow:hidden}
.site-header .header-inner{align-items:center}

/* Keep decorative marks outside translated text and give mobile social links clear touch targets. */
.badge-row .badge-dot{display:block;flex:0 0 4px;width:4px;height:4px}
.footer-legal .legal-separator{display:inline-block;margin-inline:.25em}
@media(max-width:899px){
 .site-footer .social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px}
 .site-footer .social-text{display:none}
 .site-footer .social-icon{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
}

/* One shared footer and outer alignment system on every page. */
:root{--gutter:clamp(1.25rem,5vw,6rem)}
.site-footer{background:#080808;color:#fff;padding:3rem 0 1.5rem;font-family:Arial,Helvetica,sans-serif;line-height:1.65}
.site-footer .footer-inner,.site-footer .footer-legal{width:100%;max-width:1440px;margin:0 auto;padding-inline:var(--gutter)}
.site-footer .footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem;padding-top:0;padding-bottom:3rem;border:0}
.site-footer .footer-nav{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem;width:auto;margin:0;padding:0}
.site-footer .footer-nav a{font-size:.8125rem;line-height:1.65;color:#aaa}
.site-footer .social-links{display:grid;grid-template-columns:repeat(4,44px);align-items:center;gap:1.5rem;margin:0;padding:0}
.site-footer .social-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:#aaa}
.site-footer .social-icon{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.site-footer .social-text{display:none}
.site-footer a:hover{color:white}
.site-footer .social-placeholder{cursor:default}
.site-footer .footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;border:0;border-top:1px solid #292929;padding-top:1.5rem;padding-bottom:0;color:#999;font-size:.75rem;line-height:1.65}
.site-footer .footer-legal p{margin:0;max-width:none}
.site-footer .footer-legal a{color:inherit}
@media(max-width:899px){
 .site-header .header-inner:has(#siteNav.is-open){padding-bottom:0}
 .site-header #siteNav.is-open{padding:1rem 0;align-items:center}
 .site-header #siteNav>a:not(.btn){margin:0;padding:0;line-height:1.5;align-self:stretch}
}
@media(max-width:759px){
 .site-footer .footer-inner{align-items:flex-start}
 .site-footer .footer-nav{width:100%;justify-content:space-between;gap:1rem}
 .site-footer .social-links{width:100%;grid-template-columns:repeat(4,minmax(44px,1fr));justify-items:center;gap:0}
 .site-footer .footer-legal{display:flex;flex-direction:column;align-items:flex-start}
}
/* Legal pages use the same header height and balanced section padding. */
body:has(.legal-main) .site-header{position:sticky;height:auto;background:#080808;border-bottom:1px solid #292929}
body:has(.legal-main) .header-inner{height:auto;padding-block:1.15rem}
.legal-main{padding-block:clamp(4rem,8vw,8rem)}
@media(max-width:899px){body:has(.legal-main) .header-inner{padding-block:1rem}}

/* Content-sized text, cropped artwork, and four equal separator gaps. */
.hero h1{margin-bottom:1rem}
.hero .hero-spec{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:clamp(.5rem,1.5vw,1rem)}
.hero-spec .hero-spec-item{flex:0 1 auto;min-width:0;max-width:34%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin:0;padding:0;gap:.35rem}
.hero-spec .hero-spec-item strong{font-size:clamp(.85rem,1.5vw,1.15rem);white-space:nowrap;line-height:1.3}
.hero-spec .hero-spec-item>span{font-size:clamp(.625rem,1vw,.8rem);line-height:1.5}
.hero-spec .hero-spec-divider{display:block;flex:0 0 1px;width:1px;align-self:stretch;background:#404040;margin:0;padding:0}
/* 604/866 retains the artwork's previous maximum visible width; 288/604 retains row height. */
.hero-spec .hero-assurance{flex:0 1 28%;max-width:125.543px;min-width:0;aspect-ratio:604/288;display:flex;align-items:center;justify-content:center;margin:0;padding:0}
.hero-assurance img{display:block;width:100%;max-width:none;height:auto;margin:0;padding:0}
@media(max-width:759px){
 .hero-spec .hero-spec-item strong{font-size:clamp(.85rem,4vw,1.15rem)}
 .hero-spec .hero-spec-item>span{font-size:clamp(.625rem,2.7vw,.8rem)}
}

/* Mobile product photograph: 4% taller, centered within the frame. */
@media(max-width:759px){.hero-wrap .unit-photo{aspect-ratio:1.1057692308;max-height:582.4px;object-position:50% 58.5%}}

/* Allow touch scrolling, but disable double-tap and pinch zoom where supported. */
html,body{touch-action:pan-x pan-y}
.site-header button,.site-header a,.product-visual,.service-photo{touch-action:pan-x pan-y}
