/* One header layout shared by the self-training and individual coaching pages. */
.service-header{position:sticky;top:0;z-index:30;background:rgba(255,254,250,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;font-weight:400;line-height:1.6;letter-spacing:0}
.service-header .container{width:100%;max-width:1184px;padding-left:36px;padding-right:36px;margin-left:auto;margin-right:auto}
.service-header .header-inner{display:grid;grid-template-columns:230px minmax(0,1fr) 156px;align-items:center;gap:24px;min-height:86px;height:86px}
.service-header .brand{display:flex;align-items:center;gap:13px;justify-self:start;flex-shrink:0}
.service-header .brand-mark{display:block;font-family:Georgia,serif;font-size:26px;line-height:1.6;font-weight:400;letter-spacing:-.07em;position:relative;padding-right:7px}
.service-header .brand-mark>span{font-family:sans-serif;font-size:16px;font-weight:400;line-height:1.6;position:absolute;right:-5px;top:-6px;color:var(--accent)}
.service-header .brand>span:last-child{display:block;line-height:1.6}
.service-header .brand strong{display:block;font-family:Georgia,serif;font-size:19px;font-weight:600;line-height:1.5;letter-spacing:-.025em}
.service-header .brand small{display:block;font-size:10px;font-weight:400;line-height:1.6;letter-spacing:.05em;color:var(--muted)}
.service-header .header-inner>nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));justify-self:center;width:100%;max-width:400px;gap:0;font-size:12px;font-weight:400;line-height:1.6;white-space:nowrap}
.service-header .header-inner>nav>a{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0}
.service-header .header-inner>.button{display:inline-flex;justify-self:end;width:156px;max-width:none;height:42px;min-height:42px;gap:10px;padding:9px 10px;border:1px solid var(--navy);border-radius:5px;background:var(--navy);color:white;font-family:inherit;font-size:12px;font-weight:650;line-height:1.6;white-space:nowrap;transform:none}
.service-header .header-inner>.button:hover{background:#142c49;transform:none}
.service-header .service-nav-bar{border-top:1px solid var(--line);background:var(--paper)}
.service-header .service-nav{display:grid;grid-template-columns:200px 200px;gap:0;align-items:stretch;height:54px;min-height:54px}
.service-header .service-nav>a{display:flex;align-items:center;justify-content:flex-start;gap:10px;height:54px;min-height:54px;margin:0;padding:12px 0 9px;border:0;border-bottom:3px solid transparent;font-size:14px;font-weight:650;line-height:1.6;letter-spacing:0;color:var(--muted);white-space:nowrap}
.service-header .service-nav>a span{font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0;color:var(--muted)}
.service-header .service-nav>a[aria-current="page"]{color:var(--accent);border-bottom-color:var(--accent)}
.service-header .service-nav>a:hover{color:var(--accent)}
@media(max-width:1100px){.service-header .container{padding-left:28px;padding-right:28px}.service-header .header-inner{grid-template-columns:220px minmax(0,1fr) 156px;gap:15px}}
@media(max-width:800px){.service-header .header-inner{display:flex;justify-content:space-between;height:76px;min-height:76px;gap:12px}.service-header .header-inner>nav{display:none}.service-header .header-inner>.button{display:inline-flex}.service-header .service-nav{grid-template-columns:200px 200px}}
@media(max-width:650px){.service-header .container{padding-left:20px;padding-right:20px}.service-header .brand{gap:10px}.service-header .brand strong{font-size:17px}.service-header .brand small{font-size:9px}.service-header .brand-mark{font-size:25px}.service-header .header-inner>.button{width:142px;font-size:11px;padding:9px 10px}.service-header .service-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.service-header .service-nav>a{justify-content:center;font-size:14px;gap:7px;padding-left:0;padding-right:0}.service-header .service-nav>a span{font-size:11px}}
@media(max-width:370px){.service-header .service-nav>a span{display:none}}
@media(max-width:360px){.service-header .container{padding-left:16px;padding-right:16px}.service-header .brand strong{font-size:15px}.service-header .brand small{font-size:8px}.service-header .brand-mark{font-size:21px}.service-header .brand{gap:9px}.service-header .header-inner{gap:9px}.service-header .header-inner>.button{width:112px;font-size:10px;padding:9px 7px}}
/* Bound values remain part of their surrounding sentence, including plan cards. */
span[data-pass-price],span[data-pass-days],span[data-pass-duration],span[data-pass-renewal]{display:inline;font:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0;border:0;background:none}
.service-header .service-nav-label{display:inline;font:inherit;letter-spacing:inherit;color:inherit;white-space:nowrap}
.service-header .service-nav .service-nav-label [data-pass-price]{display:inline;font:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}
