/* ForgeCore: a quieter, consistent navigation on every page. */
html{scroll-padding-top:104px}
body header.refined-header{height:88px;padding:0 6%;gap:32px;background:rgba(255,255,255,.96);border-bottom:1px solid #dce8ef;box-shadow:0 4px 24px #163b5105;backdrop-filter:blur(18px);z-index:60}
header.refined-header .brand{flex-shrink:0;font-size:22px;letter-spacing:.5px}
header.refined-header .brand small{font-size:8px;letter-spacing:4.5px;margin-top:7px}
header.refined-header nav{position:static;display:flex;flex-direction:row;align-items:center;margin:0 0 0 auto;padding:0;gap:30px;font-size:13px;background:transparent;border:0;box-shadow:none}
header.refined-header nav>a:not(.button){position:relative;padding:12px 0;color:#4b626f;font-weight:500;white-space:nowrap;text-decoration:none;transition:color .2s}
header.refined-header nav>a:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;background:#087cc5;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .22s}
header.refined-header nav>a:hover,header.refined-header nav>a[aria-current]{color:#0872b6}
header.refined-header nav>a:hover:after,header.refined-header nav>a:focus-visible:after,header.refined-header nav>a[aria-current]:after{transform:scaleX(1)}
header.refined-header nav>.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:#0876bf;color:white;border:1px solid #0876bf;border-radius:100px;padding:13px 23px;font-size:13px;line-height:1.4;box-shadow:0 4px 12px #0876bf19;transition:background .2s,box-shadow .2s;white-space:nowrap}
header.refined-header nav>.button:hover{background:#065f9b;box-shadow:0 6px 18px #0876bf30;transform:none}
header.refined-header #menu{display:none}
header.refined-header a:focus-visible,header.refined-header button:focus-visible{outline:2px solid #087cc5;outline-offset:5px}
@media(max-width:960px){
 body header.refined-header{height:78px;padding:0 5%;gap:20px}
 header.refined-header .brand{font-size:19px}
 header.refined-header #menu{display:flex;align-items:center;justify-content:center;min-width:82px;min-height:44px;border:1px solid #d1e1eb;border-radius:100px;background:#f5f9fc;color:#123d55;font-size:12px;padding:10px 16px}
 header.refined-header nav{display:none;position:absolute;top:calc(100% + 10px);left:16px;right:16px;margin:0;padding:14px 24px 24px;border:1px solid #dce8ef;border-radius:20px;background:#fff;box-shadow:0 18px 45px #123d5526;max-height:calc(100dvh - 110px);overflow-y:auto}
 header.refined-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 header.refined-header nav>a:not(.button){font-size:18px;padding:17px 0;border-bottom:1px solid #edf2f6;min-height:56px}
 header.refined-header nav>a:not(.button):after{right:auto;width:26px;bottom:8px}
 header.refined-header nav>.button{margin-top:20px;min-height:49px;font-size:14px;justify-content:space-between}
}
@media(prefers-reduced-motion:reduce){header.refined-header *,header.refined-header *:after{transition:none!important}}

/* Sculpted navigation buttons with decorative line icons. */
body header.refined-header{gap:22px}
body header.refined-header nav{gap:9px}
body header.refined-header nav>a:not(.button){display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 15px;min-height:44px;border:1px solid #d7e5ee;border-radius:14px;background:#f0f6fa;color:#24526d;box-shadow:inset 0 1px 0 #ffffff0d;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
body header.refined-header nav>a:not(.button):after{display:none}
body header.refined-header nav>a:not(.button):hover,body header.refined-header nav>a:not(.button)[aria-current]{background:#dceefb;color:#075e96;border-color:#d7e5ee;box-shadow:0 4px 15px #00000012}
body header.refined-header nav>a:not(.button):hover{transform:translateY(-2px)}
body header.refined-header .nav-icon{width:17px;height:17px;flex:0 0 17px}
@media(max-width:960px){
body header.refined-header nav.open{gap:9px;padding:18px}
body header.refined-header nav>a:not(.button){justify-content:flex-start;padding:14px 17px;min-height:54px;font-size:16px;border:1px solid #d7e5ee;border-radius:13px}
body header.refined-header .nav-icon{width:20px;height:20px;flex-basis:20px}
}

/* Keep intrinsic HTML image dimensions from stretching the logo. */
body header.refined-header .brand{gap:13px;color:#153044}
body header.refined-header .logo-crop{display:block;position:relative;flex:0 0 74px;width:74px;height:74px;overflow:hidden}
body header.refined-header .logo-crop img{position:absolute;width:196px;max-width:none;height:auto;top:-23px;left:-60px;object-fit:contain}
body header.refined-header .brand small{color:#176a9a;font-size:9px;letter-spacing:3.5px}
@media(max-width:960px){
body header.refined-header .brand{gap:10px;font-size:19px}
body header.refined-header .logo-crop{flex-basis:60px;width:60px;height:60px}
body header.refined-header .logo-crop img{width:160px;height:auto;top:-19px;left:-49px}
body header.refined-header .brand small{font-size:8px;letter-spacing:2.8px}
}
@media(max-width:360px){body header.refined-header{padding:0 12px;gap:8px}body header.refined-header .brand{font-size:16px;gap:6px}body header.refined-header #menu{min-width:70px;padding:10px}}
