/* Shared identity and a quieter first view */
.site-header{max-width:1280px;min-height:112px;padding:22px 38px;background:transparent!important;border-bottom:1px solid #dddcd6;gap:28px}.site-header .brand{gap:14px;flex-shrink:0;font-size:1.05rem;letter-spacing:.025em}.site-header .brand-logo{width:62px;height:62px;object-fit:contain}.site-header .brand small{font-size:.64rem;letter-spacing:.06em;margin-bottom:5px;color:#68747a}.site-header #nav{gap:25px;font-size:.81rem}.site-header #nav>a{white-space:nowrap;padding:9px 0;border-bottom:1px solid transparent}.site-header #nav>a[aria-current="page"]{color:#a74623;border-color:#a74623}.site-header #nav .nav-recruit{display:flex;flex-direction:column;gap:0;border:0;border-left:1px solid #d7d9d7;padding-left:24px;color:#a74623;line-height:1.5}.nav-recruit small{font-size:.58rem;letter-spacing:.16em}.site-header #nav .nav-contact{display:flex;align-items:center;gap:9px;padding:13px 17px;color:white;border:0;border-radius:2px;background:#17334e;font-size:.78rem}.site-header .menu{background:none}.site-header #nav>a:hover{color:#a74623}.site-header #nav .nav-contact:hover{background:#294a64;color:#fff}
.home-page .tact-editorial{margin:36px auto 0;grid-template-columns:1.05fr 1fr;max-width:1180px}.home-page .tact-editorial .hero-copy{padding:58px 48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:560px}.home-page .tact-editorial .hiring-badge{font-size:.73rem;margin-bottom:22px;border:0;padding:0}.home-page .tact-editorial .hero-copy .eyebrow{margin:0 0 18px}.home-page .tact-editorial h1{font-size:clamp(1.7rem,2.6vw,2.35rem);line-height:1.8;margin-bottom:28px}.home-page .tact-editorial .hero-lead{font-size:.9rem;line-height:2;margin:0}.home-page .tact-editorial .actions{margin-top:32px}.home-page .tact-editorial .hero-slides{min-height:420px}.home-page .tact-editorial .photo-tag{font-size:.74rem;margin-bottom:14px}.home-entry{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:24px;padding-bottom:24px;border-bottom:1px solid #d7d9d7;max-width:1180px}.home-entry p{margin:0;color:#68747a;font-size:.78rem}.home-entry a{font-size:.85rem;text-decoration:none;font-weight:bold}.home-entry a span{margin-left:12px;color:#a74623}.recruit-summary{display:grid;grid-template-columns:.7fr 1.3fr;gap:64px;padding-top:64px;padding-bottom:64px;align-items:center}.conditions-heading h2{font-family:"Yu Mincho",serif;font-size:1.8rem;line-height:1.7}.conditions-heading .eyebrow{font-size:.75rem}.conditions-heading .text-link{font-size:.8rem}.home-page .recruit-summary .hero-job-tags{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 24px}.home-page .recruit-summary .hero-job-tags li{flex-direction:row;align-items:center;color:#17334e;border:0;padding:0;font-size:.78rem}.home-page .recruit-summary .tact-icon{background:none;padding:0}.home-page .recruit-summary .hero-pay{border-top:1px solid #d3d6d6;max-width:none;padding-top:24px}.home-page .recruit-summary .hero-pay strong{color:#17334e;font-size:2rem}.home-page .recruit-summary .hero-pay small{color:#68747a}.home-page .recruit-summary .hero-pay>div+div{border-color:#d3d6d6}.recruit-summary .salary-note{font-size:.7rem;color:#68747a;line-height:1.8;margin:14px 0 0}
.site-footer{background:#132c40;color:#eff2f4;padding:54px max(32px,calc((100vw - 1100px)/2)) 25px}.footer-topline{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-bottom:35px;margin-bottom:40px;border-bottom:1px solid #ffffff25}.footer-topline>p{font-family:"Yu Mincho",serif;font-size:1.8rem;line-height:1.7;margin:0}.footer-topline>p span{color:#e8ba98}.footer-topline>a{display:flex;gap:35px;align-items:center;text-decoration:none;border-bottom:1px solid #c49c7e;padding:14px 0;font-size:.9rem}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .9fr;gap:55px}.footer-brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:1rem;font-weight:bold;margin-bottom:24px}.footer-brand img{width:58px;height:58px;object-fit:contain}.footer-brand small{display:block;font-size:.67rem;font-weight:normal;color:#b7c5cf;margin-top:4px}.footer-identity address{font-style:normal;color:#c4cfd6;font-size:.8rem;line-height:1.9;margin-bottom:20px}.footer-phone{text-decoration:none;font-size:1.25rem;letter-spacing:.035em}.footer-phone span{font-size:.65rem;color:#c4cfd6}.footer-fax{font-size:.8rem;color:#c4cfd6;margin:4px 0 0}.site-footer h2{font-size:.75rem;letter-spacing:.1em;color:#c4cfd6;font-weight:normal;margin:0 0 20px}.footer-hours .hours-large{font-size:1.7rem;line-height:1.3;margin-bottom:16px}.hours-large span{color:#d8aa88;padding:0 8px}.footer-hours>p:not(.hours-large){font-size:.77rem;color:#c4cfd6;line-height:2}.footer-hours>a{font-size:.77rem}.footer-links a{display:block;text-decoration:none;font-size:.8rem;margin-bottom:13px}.footer-links a:hover,.footer-bottom a:hover{color:#f3bb90}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #ffffff25;margin-top:42px;padding-top:21px;font-size:.7rem;color:#b7c5cf}.footer-bottom small{font-size:inherit}.footer-bottom a{text-decoration:none}
@media(max-width:1200px){.home-page .tact-editorial{margin:28px 24px 0}.home-entry{margin:0 24px}.site-header{padding:20px 26px}.site-header #nav{gap:16px}.site-header .brand{font-size:.95rem}.site-header .brand-logo{width:54px;height:54px}.home-page .tact-editorial .hero-copy{padding:44px 32px}.footer-grid{gap:30px}}
@media(max-width:1050px){.site-header{flex-wrap:wrap;min-height:96px}.site-header .menu{display:flex;gap:10px;align-items:center;border:1px solid #ccd2d5;border-radius:2px;padding:10px 14px;font-size:.75rem}.menu-lines{width:18px;height:10px;border-top:1px solid;border-bottom:1px solid}.site-header #nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:8px}.site-header #nav.is-open{display:flex}.site-header #nav>a{padding:13px 4px;border-bottom:1px solid #d7d9d7}.site-header #nav .nav-recruit{border-left:0;padding:13px 4px;flex-direction:row;align-items:center;gap:10px}.site-header #nav .nav-contact{justify-content:center;margin-top:12px;padding:14px}}
@media(max-width:760px){.site-header{padding:16px 20px;gap:12px;min-height:86px}.site-header .brand{font-size:.86rem;gap:10px}.site-header .brand-logo{width:45px;height:45px}.site-header .brand small{font-size:.55rem;letter-spacing:0}.site-header .menu{padding:9px 10px}.site-header .menu>span:last-child{font-size:.65rem}.home-page .tact-editorial{margin:18px 14px 0}.home-page .tact-editorial .hero-copy{min-height:0;padding:34px 25px 38px}.home-page .tact-editorial h1{font-size:clamp(1.4rem,6vw,1.95rem);margin-bottom:22px}.home-page .tact-editorial .hiring-badge{margin-bottom:20px;font-size:.69rem}.home-page .tact-editorial .hero-copy .eyebrow{font-size:.67rem;margin-bottom:14px}.home-page .tact-editorial .actions{margin-top:24px;width:100%}.home-page .tact-editorial .hero-slides{min-height:0}.home-entry{margin:0 22px;padding:22px 0;flex-wrap:wrap;gap:14px}.home-entry p{width:100%;font-size:.7rem}.home-entry a{font-size:.75rem}.home-entry a span{margin-left:5px}.recruit-summary{grid-template-columns:1fr;gap:26px;padding-top:38px;padding-bottom:42px}.conditions-heading h2{font-size:1.5rem;margin-bottom:12px}.conditions-heading h2 br{display:none}.home-page .recruit-summary .hero-job-tags{gap:14px}.home-page .recruit-summary .hero-job-tags li{font-size:.7rem}.home-page .recruit-summary .hero-pay strong{font-size:1.65rem}.site-footer{padding:36px 24px 24px}.footer-topline{display:block;padding-bottom:26px;margin-bottom:30px}.footer-topline>p{font-size:1.5rem}.footer-topline>a{display:inline-flex;font-size:.8rem;margin-top:18px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-hours,.footer-links{border-top:1px solid #ffffff25;padding-top:25px}.site-footer h2{margin-bottom:14px}.footer-links{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.footer-links h2{grid-column:1/-1}.footer-links a{font-size:.75rem}.footer-bottom{flex-wrap:wrap;gap:10px;margin-top:28px}.footer-bottom small{order:2;width:100%}}

/* Regional service introduction */
.community-link{margin-top:64px;margin-bottom:72px}
.community-heading{margin-bottom:26px}
.community-heading h2{font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.55;margin:0}
.community-card.community-partner{grid-template-columns:250px minmax(0,1fr);gap:48px;padding:44px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 12px 36px rgba(23,51,78,.04)}
.community-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;background:#f8f7f3;border-radius:4px;padding:30px 20px;gap:18px}
.community-logo img{display:block;width:170px;max-width:100%;height:auto;object-fit:contain}
.community-logo span{font-size:.9rem;font-weight:700;letter-spacing:.12em;color:var(--navy,#17334e)}
.community-copy{min-width:0}
.community-copy .community-location{font-size:.78rem;letter-spacing:.08em;color:var(--muted);margin:0 0 10px}
.community-copy h3{font-size:clamp(1.35rem,2.3vw,1.85rem);line-height:1.5;margin:0 0 16px;color:var(--navy,#17334e)}
.community-copy>p{line-height:1.9}
.community-services{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:20px 0;list-style:none}
.community-services li{font-size:.78rem;line-height:1.5;border:1px solid var(--line);padding:5px 12px;border-radius:3px}
.community-visit{display:inline-flex;align-items:center;gap:18px;font-weight:700;text-decoration:none;border-bottom:1px solid #b74c26;padding:8px 0;color:var(--navy,#17334e)}
.community-visit>span{color:#b74c26;font-size:1.3rem;transition:transform .2s}
.community-visit small{font-weight:400;font-size:.7rem;color:var(--muted)}
.community-visit:hover>span{transform:translate(2px,-2px)}
.community-visit:focus-visible{outline:2px solid #b74c26;outline-offset:6px}
.community-copy .community-note{font-size:.75rem;line-height:1.8;margin:20px 0 0;max-width:48em}
@media(max-width:760px){.community-link{margin-top:40px;margin-bottom:48px}.community-card.community-partner{grid-template-columns:1fr;padding:24px;gap:26px}.community-logo{padding:24px;gap:12px}.community-logo img{width:125px}.community-copy>p br{display:none}.community-visit{gap:12px}}
@media(prefers-reduced-motion:reduce){.community-visit>span{transition:none}}

/* Balance partner card without the supplementary note. */
.community-card.community-partner{align-items:center;padding:36px 40px}
.community-copy .community-services{margin:18px 0 14px}
@media(max-width:760px){.community-card.community-partner{padding:24px;gap:24px}}

/* Interview and social channels */
.tact-stories{margin-top:64px;margin-bottom:72px}
.stories-heading{margin-bottom:28px}
.stories-heading h2{font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.55;margin:0}
.stories-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:24px}
.story-interview{display:grid;grid-template-columns:170px minmax(0,1fr);background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.story-interview>img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:58% center}
.story-body{padding:28px;min-width:0}
.story-label{font-size:.78rem;color:#ad4926;letter-spacing:.1em;margin:0 0 12px}
.stories-grid h3{font-size:1.3rem;line-height:1.65;margin:0 0 16px}
.stories-grid p{font-size:.9rem;line-height:1.85}
.story-body .story-source{font-size:.72rem;color:var(--muted);margin:18px 0}
.stories-grid a{display:inline-block;font-size:.9rem;font-weight:700;text-decoration:none;padding-bottom:6px;border-bottom:1px solid currentColor}
.stories-grid a>span{margin-left:12px}
.stories-grid a small{display:block;font-size:.68rem;font-weight:400;margin-top:7px;opacity:.8}
.stories-grid a:hover{text-decoration:underline;text-underline-offset:4px}
.stories-grid a:focus-visible{outline:2px solid #bb4c24;outline-offset:5px}
.story-instagram{padding:32px;background:#17334e;color:#fff;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.story-instagram h3,.story-instagram a{color:#fff}
.instagram-mark{display:flex;gap:10px;align-items:center;margin-bottom:24px;font-size:.85rem;letter-spacing:.08em;color:#f5c69e}
.story-instagram .instagram-handle{font-size:1.15rem;letter-spacing:.03em;margin:8px 0 22px}
.footer-instagram{display:inline-flex;align-items:center;gap:8px}
.footer-instagram svg{width:20px;height:20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.story-interview{grid-template-columns:120px minmax(0,1fr)}.story-body,.story-instagram{padding:24px}}
@media(max-width:760px){.tact-stories{margin-top:40px;margin-bottom:48px}.stories-grid{grid-template-columns:1fr}.story-interview{grid-template-columns:110px minmax(0,1fr)}.story-body{padding:22px 18px}.stories-grid h3{font-size:1.15rem}.story-instagram{padding:28px}.footer-bottom{flex-wrap:wrap;gap:16px}}
@media(max-width:380px){.story-interview{grid-template-columns:1fr}.story-interview>img{height:200px;min-height:0;object-position:center 35%}}

/* Site scrollbar: retain native behavior and system high-contrast settings. */
@media (forced-colors: none) {
  html { scrollbar-width: thin; scrollbar-color: #496479 #f1eee8; }
  ::-webkit-scrollbar { width: 10px; height: 10px; }
  ::-webkit-scrollbar-track { background: #f1eee8; }
  ::-webkit-scrollbar-thumb { background: #496479; border: 2px solid #f1eee8; border-radius: 20px; }
  ::-webkit-scrollbar-thumb:hover { background: #b74c26; }
  ::-webkit-scrollbar-corner { background: #f1eee8; }
  @supports selector(::-webkit-scrollbar) {
    html { scrollbar-width: auto; scrollbar-color: auto; }
  }
}

/* Photo and message form one synchronized story. */
.carousel-messages{display:grid;background:#fff;position:relative;border-top:1px solid #ece8e1}
.carousel-message{grid-area:1/1;display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;padding:24px 28px 28px;opacity:0;visibility:hidden;transform:translateY(7px);transition:opacity .65s ease,transform .65s ease,visibility .65s;color:#17334e}
.carousel-message.is-active{opacity:1;visibility:visible;transform:translateY(0)}
.scene-index{font-family:Georgia,serif;font-size:2.3rem;color:#b74c26;line-height:1;border-right:1px solid #e1d9cd;padding-right:14px}
.scene-index small{display:block;font-family:Arial,sans-serif;font-size:.6rem;color:#68747a;margin-top:10px;letter-spacing:.08em}
.carousel-message .scene-label{font-size:.61rem;letter-spacing:.15em;color:#a74623;margin:0 0 8px;line-height:1.5}
.carousel-message h2{font-family:"Yu Mincho",serif;font-size:clamp(1.05rem,1.5vw,1.4rem);line-height:1.6;margin:0 0 9px}
.carousel-message .scene-copy{font-size:.76rem;color:#536878;line-height:1.9;margin:0}
.home-page .tact-editorial .carousel-controls{padding:10px 22px;margin:0;background:#fff}
@media(max-width:760px){.carousel-message{padding:20px;gap:16px;grid-template-columns:44px minmax(0,1fr)}.scene-index{font-size:1.9rem;padding-right:10px}.carousel-message h2{font-size:1.15rem}.carousel-message .scene-copy{font-size:.73rem}}
@media(prefers-reduced-motion:reduce){.carousel-message{transition:none;transform:none}}
