/* Shared navigation: v44. Keep the approved brand, page content and palette. */
.header-inner{min-height:84px;gap:24px;width:calc(100% - 48px);max-width:1380px}
.header .brand{gap:15px;min-width:0;flex-shrink:0}
.header .brand img{width:128px;height:auto}
.header .brand-title{font-size:13px;line-height:1.6;white-space:nowrap}
.header .brand-title strong{font-size:14px}
.header .brand-divider{height:34px;flex-shrink:0}
.header .desktop-nav{display:flex;gap:22px;font-size:14px}
.desktop-nav a{position:relative;display:inline-flex;align-items:center;min-height:84px;padding:18px 0;line-height:1.6}
.desktop-nav a::after{position:absolute;content:'';bottom:16px;left:0;right:0;height:2px;background:var(--teal);transform:scaleX(0);transition:transform .18s}
.header .desktop-nav a:hover,.header .desktop-nav a[aria-current="page"]{color:var(--teal);text-decoration:none}
.desktop-nav a:hover::after,.desktop-nav a[aria-current="page"]::after{transform:scaleX(1)}
.header .header-cta{font-size:14px;min-height:46px;padding:12px 20px;gap:16px;flex-shrink:0}
.header .menu-button{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:60px;height:56px;flex:0 0 60px;border:1px solid var(--line);border-radius:8px;padding:7px 4px;background:var(--white);color:var(--ink)}
.header .menu-button:hover{border-color:var(--teal);background:#f0f7f6}
.header .menu-button>span{margin:0;background:none;height:auto;width:auto;transform:none}
.header .menu-button[aria-expanded]>.menu-lines,.header .menu-button[aria-expanded]>.menu-label{transform:none}
.menu-lines{position:relative;display:block;width:22px!important;height:15px!important}
.menu-lines i{position:absolute;display:block;width:22px;height:1.5px;background:var(--ink);left:0;top:4px;transition:transform .18s}
.menu-lines i:last-child{top:11px}
.menu-label{font-size:13px;line-height:1.2;white-space:nowrap;letter-spacing:0}
.menu-button[aria-expanded="true"] .menu-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-button[aria-expanded="true"] .menu-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.header .mobile-nav{padding:0;max-height:calc(100dvh - 84px);overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff;box-shadow:0 18px 32px #1535441a;border-bottom:1px solid var(--line)}
.menu-inner{max-width:820px;margin:auto;padding:16px 32px 24px}
.mobile-nav .menu-home{border-bottom:1px solid var(--line);margin-bottom:20px}
.mobile-nav .menu-home a{max-width:150px;border:0;font-weight:600;min-height:44px}
.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.mobile-nav .menu-heading{font-size:13px;color:var(--muted);font-weight:650;margin-bottom:8px;letter-spacing:.04em}
.mobile-nav .menu-links a{font-size:14px;min-height:48px;padding:11px 0;border-bottom:1px solid var(--line);align-items:center;gap:14px}
.mobile-nav a[aria-current="page"],.footer a[aria-current="page"]{color:var(--teal);font-weight:650;text-decoration:underline;text-underline-offset:6px}
.mobile-nav .menu-links a[aria-current="page"]{border-bottom-color:var(--teal)}
.menu-actions{display:grid;margin-top:18px}
.mobile-nav .menu-actions .button{color:#fff;justify-content:center;gap:18px;border:1px solid var(--ink);font-size:14px;min-height:48px;padding:12px 18px}
.mobile-nav .menu-actions .button span{color:inherit;font-size:18px}
.menu-note{font-size:13px;line-height:1.8;color:var(--muted);text-align:center;margin-top:8px}
.menu-utility{display:flex;flex-wrap:wrap;gap:8px 28px;border-top:1px solid var(--line);margin-top:24px;padding-top:12px}
.mobile-nav .menu-utility a{font-size:13px;line-height:1.8;min-height:44px;padding:10px 0;border:0}
.mobile-nav a:not(.button):hover,.footer a:not(.button):hover{color:var(--teal);text-decoration:underline;text-underline-offset:5px}
.footer{border-top:1px solid var(--line);background:linear-gradient(180deg,#f7fafb,#fff);padding:48px 0 22px}
.footer .footer-top{display:grid;grid-template-columns:minmax(240px,1fr) minmax(360px,1.55fr) minmax(220px,.95fr);gap:36px;position:static;align-items:start}
.footer .footer-brand{display:inline-flex;align-items:center;gap:16px;width:auto;color:var(--ink)}
.footer .footer-brand:hover{text-decoration:none}
.footer .footer-brand img{width:124px;height:auto}
.footer .footer-brand p{font-size:13px;line-height:1.8;margin:0;color:var(--ink);white-space:nowrap}
.footer .footer-brand strong{font-size:14px}
.footer .operator{margin-top:22px}
.footer .operator>span{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}
.footer .operator>strong{display:block;font-size:14px;line-height:1.9;text-wrap:balance}
.footer .operator p{font-size:13px;line-height:1.8;margin-top:5px;color:var(--muted)}
.footer .operator a{display:inline-flex;align-items:center;gap:16px;font-size:13px;min-height:44px;margin-top:3px;color:var(--teal)}
.footer .footer-nav{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);align-items:start;gap:28px;padding:0;margin:0;border:0}
.footer-group h2{font-size:14px;line-height:1.8;font-weight:650;margin:0 0 10px;padding-bottom:12px;border-bottom:1px solid var(--line);letter-spacing:.025em}
.footer-links{display:grid;gap:0}
.footer .footer-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;line-height:1.7;gap:12px;padding:7px 0;text-wrap:balance}
.footer-contact{border-left:1px solid var(--line);padding-left:28px;min-width:0}
.footer-contact h2{font-size:15px;font-weight:650;line-height:1.8;letter-spacing:0;margin:0 0 10px;text-wrap:balance}
.footer-contact>p{font-size:13px;line-height:1.9;color:var(--muted)}
.footer .footer-consult-button{display:flex;justify-content:center;color:#fff;font-size:14px;padding:13px 14px;gap:14px;margin-top:17px;min-height:48px}
.footer .footer-note{font-size:13px;line-height:1.8;margin-top:7px;color:var(--muted);text-align:center}
.footer .footer-checker{display:flex;justify-content:center;align-items:center;gap:14px;min-height:44px;margin-top:7px;font-size:13px;color:var(--teal)}
.footer .footer-bottom{border-top:1px solid var(--line);margin-top:30px;padding-top:14px;gap:20px;flex-wrap:wrap}
.footer-bottom>p{font-size:13px;line-height:1.8}
.footer .footer-bottom a{display:inline-flex;align-items:center;min-height:44px;gap:10px;font-size:13px;line-height:1.8}
.footer .back-top{position:static;width:auto;height:auto;border:0;border-radius:0;margin:0;padding:0;background:transparent}
.footer .back-top>span:last-child{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px}
.footer .back-top:hover>span:last-child{background:#e6f1ef;border-color:#8cafad}
@media(min-width:1101px) and (max-width:1230px){.header-inner{gap:18px;width:calc(100% - 40px)}.header .desktop-nav{gap:17px;font-size:13px}.header .brand{gap:12px}.header .brand img{width:112px}.header .header-cta{font-size:13px;padding-inline:17px;gap:12px}.footer .footer-top{gap:24px}.footer .footer-nav{gap:20px}.footer-contact{padding-left:22px}}
@media(max-width:1100px){.header .desktop-nav{display:none}.header .menu-button{display:flex}.header .header-cta{display:inline-flex;margin-left:auto}.header-inner{gap:18px}.footer .footer-top{grid-template-columns:minmax(240px,1fr) minmax(0,1.45fr);gap:30px 40px}.footer-contact{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:22px 0 0;display:grid;grid-template-columns:1fr minmax(240px,.7fr);column-gap:40px;row-gap:0}.footer-contact h2{grid-column:1;margin-bottom:5px}.footer-contact>p:not(.footer-note){grid-column:1}.footer .footer-consult-button{grid-column:2;grid-row:1/3;align-self:center;margin:0}.footer .footer-note{grid-column:2;grid-row:3;margin-top:5px}.footer .footer-checker{grid-column:1;grid-row:3;justify-content:flex-start;margin:0}.footer .footer-nav{gap:26px}}
@media(max-width:850px){.footer .footer-top{grid-template-columns:1fr;gap:28px}.footer .footer-identity{display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer .operator{margin-top:0}.footer .footer-nav{gap:36px;grid-template-columns:1fr 1fr}.footer-contact{grid-column:1}}
@media(max-width:700px){.header-inner{min-height:72px;width:calc(100% - 32px);gap:12px}.header .brand{gap:12px}.header .brand img{width:112px}.header .brand-title,.header .brand-title strong{font-size:13px}.header .header-cta{display:none}.header .menu-button{margin-left:auto;width:58px;height:54px;flex-basis:58px}.header .mobile-nav{max-height:calc(100dvh - 72px);padding-bottom:env(safe-area-inset-bottom)}.menu-inner{padding:12px 24px 20px}.menu-grid{gap:28px}.footer{padding:34px 0 20px}.footer .footer-identity{grid-template-columns:1fr;gap:18px}.footer .footer-brand img{width:125px}.footer .footer-nav{gap:24px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr)}.footer-group h2{font-size:14px}.footer .footer-nav a{font-size:13px}.footer-contact{display:block;padding-top:22px}.footer-contact>p:not(.footer-note) br{display:none}.footer .footer-consult-button{margin-top:15px}.footer .footer-note{text-align:center;margin-top:7px}.footer .footer-checker{justify-content:center;margin-top:8px}.footer .footer-bottom{margin-top:24px;gap:10px}}
@media(max-width:540px){.menu-grid{grid-template-columns:1fr;gap:20px}.mobile-nav .menu-home{margin-bottom:16px}.mobile-nav .menu-links{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.mobile-nav .menu-links a{font-size:13px;min-height:50px}.mobile-nav .menu-actions{margin-top:14px}.menu-utility{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:20px;padding-top:8px}.mobile-nav .menu-utility a:last-child{grid-column:1/-1}.footer .back-top>span:last-child{width:44px;height:44px}}
@media(max-width:359px){.header-inner{width:calc(100% - 24px);gap:8px}.header .brand{gap:9px}.header .brand img{width:92px}.header .brand-divider{height:30px}.header .brand-title{letter-spacing:0;font-size:13px}.menu-inner{padding-inline:20px}.mobile-nav .menu-links{grid-template-columns:1fr}.mobile-nav .menu-links a{font-size:14px;min-height:44px}.menu-utility{grid-template-columns:1fr}.mobile-nav .menu-utility a:last-child{grid-column:auto}.footer .footer-brand{gap:13px}.footer .footer-brand img{width:108px}.footer .footer-brand p,.footer .footer-brand strong{font-size:13px}.footer .footer-nav{gap:18px}.footer .footer-bottom{flex-wrap:nowrap}.footer .back-top>span:first-child{display:none}}
@media(prefers-reduced-motion:reduce){.desktop-nav a::after,.menu-lines i{transition:none}}
