/* Brand and usability refinements for the confirmed four-point logo. */
.site-header{position:fixed;height:88px;background:rgba(255,255,255,.98);color:var(--navy);border-bottom:1px solid #e2e5df;box-shadow:0 3px 18px #112a3807;padding-inline:clamp(24px,3.4vw,56px)}
.site-header .brand-sub{color:#758078;opacity:1}.brand-image{display:block;flex:0 0 50px;width:50px;height:50px;overflow:hidden;border-radius:6px;background:#fff}.brand-image img{display:block;width:100%;height:100%;object-fit:contain;transform:scale(1.28)}
.site-header .brand-name{font-size:27px;letter-spacing:.13em}.site-header .brand-name>span{font-size:10px;letter-spacing:.06em;margin-right:7px}.site-header .header-actions{gap:22px}.site-header .desktop-nav{gap:23px}.site-header .desktop-nav>a{font-size:11px;letter-spacing:.03em;white-space:nowrap}.site-header .languages{color:#627067}.site-header .lang-button.active{color:var(--navy);font-weight:600}.site-header .header-contact{padding:12px 18px;min-height:44px}
.mobile-nav{position:fixed;top:88px;background:#fff;color:var(--navy);box-shadow:0 15px 25px #112a3817;max-height:calc(100dvh - 88px);overflow-y:auto}.mobile-nav a{border-color:#dce2d8;font-size:14px;min-height:48px}
.brand-art{transform:none}.brand-art>img{width:285px;height:285px;object-fit:contain;mix-blend-mode:multiply;transform:scale(1.12)}.brand-art .art-caption{bottom:12px}.footer-top .brand-image{width:42px;height:42px;flex-basis:42px;border-radius:5px}
.body-text,.service-body>p{font-size:13px}.heading-note{font-size:12px}.step>p{font-size:12px}.tags>span{font-size:10px}.product-panel p{font-size:12px}.product-footnote{font-size:10px}.company-details dd{overflow-wrap:anywhere}.company-details dt{font-size:12px}.company-details dd{font-size:14px}.location-map{display:flex;align-items:center;gap:14px;width:fit-content;color:#7c6a47;font-size:11px;margin-top:5px;padding:4px 0;text-decoration:underline;text-underline-offset:4px}.location-map:hover{color:var(--navy)}
.faq{background:#fff}.faq-grid{display:grid;grid-template-columns:34% 66%;gap:0}.faq-heading{padding-right:40px}.faq-heading h2{margin-top:22px;font-size:33px}.faq-heading .heading-note{margin-top:18px;line-height:2.1}.faq-heading .text-link{gap:35px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;gap:20px;list-style:none;cursor:pointer;min-height:83px;padding:23px 0;font-size:14px;line-height:1.9}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:focus-visible{outline:2px solid #af8e55;outline-offset:4px}.faq-number{font:11px Georgia,serif;color:#9a9d8b;flex:0 0 20px}.faq-toggle{width:16px;height:16px;flex:0 0 16px;position:relative;margin-left:auto;margin-right:2px}.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;left:1px;top:7px;width:14px;height:1px;background:#8c937e}.faq-toggle:after{transform:rotate(90deg)}details[open] .faq-toggle:after{transform:none}.faq-answer{padding:0 35px 27px 40px;font-size:12px;line-height:2.2;color:#718075;overflow-wrap:anywhere}
.attachment-note{font-size:10px;line-height:1.9;color:#6b7867;margin-top:17px}.attachment-note>a{display:inline-block;margin-left:8px;color:var(--navy);text-decoration:underline;text-underline-offset:3px}.form-intro{font-size:11px}.form-note{font-size:10px}.form-secondary button{min-height:32px}.contact-email{min-height:48px}.mobile-contact-bar{display:none}
@media(max-width:1200px){.site-header .desktop-nav{gap:17px}.site-header .header-actions{gap:18px}.site-header .brand-name{font-size:25px}.site-header .brand-name>span{font-size:9px}.faq-grid{grid-template-columns:32% 68%}.faq-heading h2{font-size:29px}}
@media(max-width:1000px){.site-header{height:80px}.mobile-nav{top:80px;max-height:calc(100dvh - 80px)}.site-header .header-actions{gap:24px}.brand-art{display:none}.body-text,.service-body>p{font-size:12px}.company-details dt{font-size:11px}.company-details dd{font-size:13px}.faq-grid{grid-template-columns:1fr}.faq-heading{padding-right:0;margin-bottom:32px}.faq-heading .heading-note{margin-top:12px}.faq-heading .text-link{margin-top:15px}.faq-list summary{font-size:14px;min-height:75px}.faq-answer{font-size:12px}.step>p{font-size:11px}}
@media(max-width:700px){body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}.site-header{height:78px;padding-inline:20px;gap:12px}.brand-image{width:42px;height:42px;flex-basis:42px;border-radius:5px}.site-header .brand-name{font-size:22px;letter-spacing:.1em}.site-header .brand-name>span{font-size:9px;letter-spacing:.02em;margin-right:5px}.site-header .brand-sub{font-size:6.5px;letter-spacing:.15em}.site-header .header-actions{gap:16px}.site-header .lang-button{min-height:42px;padding-inline:3px}.site-header .header-contact{display:none}.site-header .menu-toggle{min-width:30px;min-height:44px}.mobile-nav{top:78px;max-height:calc(100dvh - 78px)}.body-text,.service-body>p,.product-panel p{font-size:12px;line-height:2.15}.tags>span{font-size:9px}.heading-note{font-size:11px}.step>p{font-size:11px}.product-footnote{font-size:10px}.company-details dt{font-size:11px}.company-details dd{font-size:12px}.location-map{font-size:11px;min-height:33px}.faq-heading h2{font-size:28px;margin-top:17px}.faq-heading{margin-bottom:24px}.faq-list summary{font-size:13px;gap:13px;min-height:77px;padding-block:22px}.faq-number{font-size:10px;flex-basis:17px}.faq-answer{padding-left:30px;padding-right:17px;font-size:12px;line-height:2.1}.form-intro{font-size:11px}.attachment-note,.form-note{font-size:10px}.attachment-note>a{margin-left:0;display:block;width:fit-content;padding-top:5px}.footer-top .brand-image{width:36px;height:36px;flex-basis:36px}.footer-bottom{font-size:9px}.footer-bottom button{font-size:10px}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1.18fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid #dce1d8;box-shadow:0 -3px 18px #112a380c;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact-bar>a{min-height:54px;display:flex;align-items:center;justify-content:center;gap:17px;font-size:12px;letter-spacing:.03em;color:var(--navy)}.mobile-contact-bar>a:last-child{background:var(--navy);color:#f2e7d3}.mobile-contact-bar>a:focus-visible{outline-offset:-4px}.mobile-contact-bar>a>span[aria-hidden]{font-size:17px}}
@media(max-width:370px){.site-header{padding-inline:16px;gap:8px}.site-header .header-actions{gap:10px}.site-header .brand-name{font-size:20px}.site-header .brand-name>span{font-size:8px}.brand-image{width:38px;height:38px;flex-basis:38px}.site-header .brand-sub{font-size:6px}.footer-bottom{font-size:8px}.footer-bottom button{font-size:9px}}
