/* Match FI WEB public v372 chrome dimensions; retain the FI SNS logo, palette and sticky behavior. */
.site-header.header-fiweb-v146{
 --header-frame-height:90px;
 --header-frame-top:max(12px,env(safe-area-inset-top));
 --header-frame-inset:max(16px,calc(max(clamp(24px,4vw,64px),calc((100vw - 1280px)/2)) - 20px));
 --header-mark-width:154px;
 top:var(--header-frame-top);
 width:calc(100% - var(--header-frame-inset)*2);
 max-width:1320px;
 height:var(--header-frame-height);
 margin:var(--header-frame-top) auto 0;
 border-radius:12px;
}
.site-header.header-fiweb-v146 .header-inner{
 display:grid;
 grid-template-columns:170px minmax(0,1fr) auto;
 align-items:center;
 height:100%;min-height:0;
 width:100%;max-width:none;
 padding:0 20px;
 gap:10px 24px;
}
.site-header.header-fiweb-v146 .brand{
 display:grid;
 grid-template-columns:calc(var(--header-mark-width)*.2734375) minmax(0,1fr);
 grid-template-rows:calc(var(--header-mark-width)*.3) 20.8px;
 column-gap:1px;row-gap:2px;
 width:170px;min-width:0;min-height:44px;
 align-items:center;align-content:center;
}
.site-header.header-fiweb-v146 .brand-fi{width:calc(var(--header-mark-width)*.2734375);height:calc(var(--header-mark-width)*.3)}
.site-header.header-fiweb-v146 .brand-fi img{width:var(--header-mark-width);height:auto;max-width:none}
.site-header.header-fiweb-v146 .brand-sns{font-size:calc(var(--header-mark-width)*.2922077922);line-height:1;padding-bottom:0}
.site-header.header-fiweb-v146 .brand-caption{font-size:13px;line-height:1.6;letter-spacing:0;font-weight:600;padding:0}
.site-header.header-fiweb-v146 .main-nav{display:none;min-width:0;margin:0;gap:clamp(14px,1.4vw,22px);justify-content:center;align-items:center}
.site-header.header-fiweb-v146 .main-nav a{display:inline-flex;align-items:center;min-height:48px;padding:12px 0;font-size:16px;line-height:1.5;letter-spacing:0;font-weight:650}
.site-header.header-fiweb-v146 .main-nav a::after{bottom:7px}
.site-header.header-fiweb-v146 .header-actions{display:flex;align-items:center;justify-self:end;gap:10px;min-width:0}
.site-header.header-fiweb-v146 .menu-toggle{
 width:104px;min-width:104px;height:46px;min-height:46px;padding:0 10px;gap:8px;
 font-size:16px;line-height:1.5;justify-content:center;
 margin:0;
}
.site-header.header-fiweb-v146 .menu-word{display:inline;font-size:16px;line-height:1.5;font-weight:650;letter-spacing:0}
.site-header.header-fiweb-v146 .menu-lines{display:block;position:relative;width:16px;height:16px;flex:0 0 16px;gap:0}
.site-header.header-fiweb-v146 .menu-lines i{position:absolute;left:0;top:4px;width:16px;height:1.5px;transform:none}
.site-header.header-fiweb-v146 .menu-lines i:last-child{top:10px;width:16px}
.site-header.header-fiweb-v146 .menu-toggle[aria-expanded=true] .menu-lines i:first-child{top:7px;transform:rotate(45deg)}
.site-header.header-fiweb-v146 .menu-toggle[aria-expanded=true] .menu-lines i:last-child{top:7px;transform:rotate(-45deg)}
.site-header.header-fiweb-v146 .header-cta{
 display:inline-flex;align-items:center;justify-content:space-between;flex:0 0 auto;
 min-height:46px;padding:11px 18px;margin:0;gap:12px;
 border:1px solid var(--tiffany-deep);border-radius:6px;
 font-size:16px;line-height:1.5;font-weight:700;
}
.site-header.header-fiweb-v146 .header-cta-prefix,.site-header.header-fiweb-v146 .header-cta-free,.site-header.header-fiweb-v146 .header-cta-arrow{display:inline}
.site-header.header-fiweb-v146 .header-cta-arrow{font-size:16px;line-height:1}
.site-header.header-fiweb-v146 .site-menu{
 top:calc(100% + 10px);left:auto;right:-1px;width:min(820px,calc(100% + 2px));
 max-height:calc(100vh - var(--header-frame-top) - var(--header-frame-height) - 10px - max(12px,env(safe-area-inset-bottom)));
 max-height:calc(100dvh - var(--header-frame-top) - var(--header-frame-height) - 10px - max(12px,env(safe-area-inset-bottom)));
 padding:20px;border-radius:10px;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:68px 12px;
}
.site-header.header-fiweb-v146 .menu-heading{position:sticky;top:0;z-index:2;background:#fff;padding-bottom:12px;margin-bottom:10px;gap:16px}
.site-header.header-fiweb-v146 .menu-heading>span{font-size:16px;line-height:1.5;font-weight:700}
.site-header.header-fiweb-v146 .menu-close{min-height:44px;font-size:14px;border-radius:6px}
.site-header.header-fiweb-v146 .menu-guide{margin-bottom:20px;font-size:14px;line-height:1.7}
.site-header.header-fiweb-v146 .menu-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.site-header.header-fiweb-v146 .menu-column h2{font-size:14px;line-height:1.6;padding-bottom:8px;margin-bottom:8px;letter-spacing:.025em}
.site-header.header-fiweb-v146 .menu-column nav{display:block}
.site-header.header-fiweb-v146 .menu-column nav a{min-height:44px;padding:10px;gap:10px;font-size:16px;line-height:1.55}
.site-header.header-fiweb-v146 .menu-end{gap:20px;margin-top:20px;padding-top:16px}
.site-header.header-fiweb-v146 .menu-end p{font-size:14px;line-height:1.7}
.site-header.header-fiweb-v146 .menu-end .button{min-height:44px;font-size:16px;line-height:1.55;padding:10px 12px}
@media(min-width:1200px){.site-header.header-fiweb-v146 .main-nav{display:flex}}
@media(max-width:1199px){
 .site-header.header-fiweb-v146 .header-inner{grid-template-columns:minmax(0,1fr) auto}
 .site-header.header-fiweb-v146 .header-cta-prefix{display:none}
}
@media(max-width:760px){
 .site-header.header-fiweb-v146{--header-frame-inset:max(12px,env(safe-area-inset-left),env(safe-area-inset-right))}
 .site-header.header-fiweb-v146 .header-inner{padding-inline:14px;column-gap:12px}
 .site-header.header-fiweb-v146 .brand{width:var(--header-mark-width);grid-template-rows:calc(var(--header-mark-width)*.3);row-gap:0}
 .site-header.header-fiweb-v146 .brand-caption{display:none}
 .site-header.header-fiweb-v146 .site-menu{padding:16px}
 .site-header.header-fiweb-v146 .menu-directory{grid-template-columns:minmax(0,1fr);gap:16px}
 .site-header.header-fiweb-v146 .menu-column nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px}
 .site-header.header-fiweb-v146 .menu-column nav a{padding:9px 8px}
 .site-header.header-fiweb-v146 .menu-end{display:block}
 .site-header.header-fiweb-v146 .menu-end .button{display:flex;justify-content:space-between;margin-top:8px}
}
@media(max-width:720px){
 .site-header.header-fiweb-v146{--header-frame-height:80px;--header-mark-width:134px}
 .site-header.header-fiweb-v146 .menu-toggle{width:44px;min-width:44px;padding-inline:10px}
 .site-header.header-fiweb-v146 .menu-word{display:none}
}
@media(max-width:640px){
 .site-header.header-fiweb-v146{--header-frame-top:max(8px,env(safe-area-inset-top));--header-frame-inset:max(10px,env(safe-area-inset-left),env(safe-area-inset-right));border-radius:8px}
 .site-header.header-fiweb-v146 .header-inner{padding-inline:10px;column-gap:6px}
 .site-header.header-fiweb-v146 .header-actions{gap:8px}
 .site-header.header-fiweb-v146 .menu-toggle{height:44px;min-height:44px;gap:0}
 .site-header.header-fiweb-v146 .header-cta{min-width:82px;min-height:44px;justify-content:center;padding:9px;gap:0;font-size:14px}
 .site-header.header-fiweb-v146 .header-cta-arrow{display:none}
 .site-header.header-fiweb-v146 .site-menu{padding:14px}
}
@media(max-width:480px){.site-header.header-fiweb-v146 .menu-column nav{display:block}}
@media(max-width:360px){
 .site-header.header-fiweb-v146{--header-mark-width:128px}
 .site-header.header-fiweb-v146 .header-inner{padding-inline:8px;column-gap:4px}
 .site-header.header-fiweb-v146 .header-actions{gap:6px}
 .site-header.header-fiweb-v146 .menu-lines,.site-header.header-fiweb-v146 .menu-lines i{width:14px;flex-basis:14px}
 .site-header.header-fiweb-v146 .header-cta{min-width:78px}
}
@media(prefers-reduced-motion:reduce){.site-header.header-fiweb-v146,.site-header.header-fiweb-v146 *{animation:none!important;transition:none!important}}

/* Place the approved TOP chrome over the existing FV without a normal-flow spacer. */
.home-page{
 --fv-header-space:calc(90px + max(12px,env(safe-area-inset-top)));
}
.home-page .site-header.header-fiweb-v146{
 position:fixed;
 left:0;right:0;
 margin:0 auto;
}
.home-page #main .hero{
 margin-top:0;
 padding-top:var(--fv-header-space);
}
/* Keep the short menu label and its two-line icon together at the approved button size. */
.site-header.header-fiweb-v146 .menu-toggle{flex-wrap:nowrap}
.site-header.header-fiweb-v146 .menu-word{flex:0 0 auto;white-space:nowrap}
@media(min-width:721px){
 .site-header.header-fiweb-v146 .menu-toggle{padding-inline:7px;gap:6px}
}
@media(max-width:720px){
 .home-page{--fv-header-space:calc(80px + max(12px,env(safe-area-inset-top)))}
}
@media(max-width:640px){
 .home-page{--fv-header-space:calc(80px + max(8px,env(safe-area-inset-top)))}
}
