/* Original Netforward layout and photos; NETSUG navy and small coral accents. */
:root{--ink:#0b1f3a;--link-blue:#0b1f3a;--accent:#d95c5c}
.service-card-primary,.quote-band,.footer-bottom,.service-detail-featured,.worksheet,.article-cta{background:#0b1f3a;color:#fff}
.service-card-primary{border-color:#0b1f3a}
.nav a::after{background:var(--accent)}
.text-link{border-bottom-color:var(--accent)}
.cta-band::after{background:rgba(11,31,58,.36)}
.info-value a{color:#0b1f3a}
.menu-btn{color:inherit;cursor:pointer;min-width:44px;min-height:44px}
a:focus-visible,button:focus-visible{outline:2px solid #607d9e;outline-offset:4px}
html{scroll-padding-top:96px}
body{overflow-wrap:break-word}
.service-detail{position:relative}
.service-anchor{position:absolute;top:0;left:0}
.service-actions{display:flex;flex-wrap:wrap;gap:12px}
/* Keep all copy visible even when JavaScript or intersection events are unavailable. */
.reveal,.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){html{scroll-padding-top:94px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:42px}
.media-card{min-height:290px}
@media(max-width:900px){.media-grid{grid-template-columns:1fr}}

/* NETSUG's original open-ended heat flow shares the page with the headline. */
.hero-flow{position:relative;isolation:isolate;background:#fff;overflow-x:clip}
.hero-flow-inner{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  padding-top:60px;
  padding-bottom:30px;
}
.hero-flow-heading,.hero-flow-support,.hero-flow-business{position:relative;z-index:1;min-width:0}
.hero-flow .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.25em;margin-bottom:30px}
.heat-mark{display:block;width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent)}
.hero-flow h1{font-size:clamp(52px,5.65vw,82px);line-height:1.38;letter-spacing:.025em;margin:0 0 28px;font-weight:500}
.hero-flow h1 span{display:block;width:max-content;max-width:100%}
.hero-flow-art{
  position:absolute;
  z-index:0;
  top:0;
  right:calc((min(100vw - 48px,1280px) - 100vw) / 2);
  width:64%;
  height:calc(100% - 112px);
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 10%,#000);
  mask-image:linear-gradient(to right,transparent,#000 10%,#000);
  pointer-events:none;
  user-select:none;
}
.heat-svg{display:block;width:100%;height:100%;overflow:visible}
.heat-svg-mobile{display:none}
.heat-current{stroke-dasharray:40 1960;stroke-dashoffset:var(--heat-progress,54);opacity:var(--heat-opacity,0)}
.heat-current-halo{opacity:calc(var(--heat-opacity,0) * .08)}
.heat-current-tip{stroke-dasharray:8 1992}
.hero-motion-toggle{
  display:inline-flex;align-items:center;justify-content:center;flex:none;margin-left:auto;
  width:44px;height:44px;border:1px solid #e7e9ed;border-radius:50%;
  background:#fff;color:#5c667a;cursor:pointer;
}
.hero-motion-toggle[hidden]{display:none}
.hero-motion-toggle:hover{color:var(--ink);border-color:#b7c0cd}
.hero-motion-toggle svg{width:13px;height:13px}
.hero-motion-toggle .motion-play-icon{display:none}
.hero-motion-toggle[data-paused="true"] .motion-pause-icon{display:none}
.hero-motion-toggle[data-paused="true"] .motion-play-icon{display:block}
.hero-flow-support{width:54%;padding-bottom:42px}
.hero-flow .hero-flow-support p{font-size:16px;line-height:1.9;margin:0 0 26px;max-width:none}
.hero-mobile-break{display:none}
.hero-flow-link{
  display:inline-flex;align-items:center;justify-content:space-between;gap:32px;
  min-height:44px;min-width:192px;padding:0 0 10px;
  border-bottom:1px solid var(--accent);
  font-family:Arial,"Hiragino Kaku Gothic ProN",sans-serif;font-size:13px;font-weight:600;
}
.hero-flow-link span{font-size:20px;line-height:1;transition:transform .2s ease}
.hero-flow-link:hover span{transform:translateX(3px)}
.hero-flow-business{
  display:flex;align-items:center;gap:24px;border-top:1px solid #e7e9ed;padding-top:20px;
  font-family:Arial,"Hiragino Kaku Gothic ProN",sans-serif;font-size:11px;letter-spacing:.08em;color:#5c667a;
}
.hero-flow-business span+span{border-left:1px solid #d8e0ea;padding-left:24px}
@media(min-width:1600px){.hero-flow-art{width:66%}}
@media(max-width:1100px){
  .hero-flow h1{font-size:clamp(48px,6.5vw,68px)}
  .hero-flow-art{width:55%;opacity:.85}
  .hero-flow .hero-flow-support p{font-size:15px}
}
@media(max-width:760px){
  .hero-flow-inner{padding-top:40px;padding-bottom:24px}
  .hero-flow .eyebrow{font-size:10px;letter-spacing:.17em;margin-bottom:24px;gap:10px}
  .hero-flow h1{font-size:clamp(40px,7.8vw,58px);line-height:1.4;margin-bottom:0;letter-spacing:.02em}
  .hero-flow-art{position:relative;top:auto;right:auto;z-index:0;width:100%;height:112px;margin:8px 0 16px;opacity:1}
  .heat-svg-desktop{display:none}
  .heat-svg-mobile{display:block}
  .hero-flow-support{width:100%;padding-bottom:30px}
  .hero-flow .hero-flow-support p{font-size:15px;line-height:1.9;margin-bottom:18px}
  .hero-flow-business{gap:16px;font-size:10px;letter-spacing:0;padding-top:18px}
  .hero-flow-business span+span{padding-left:16px}
}
@media(prefers-reduced-motion:reduce){
  .hero-flow .heat-current{opacity:0}
  .hero-flow .heat-svg *{animation:none!important}
  .hero-flow .heat-weave{transform:none}
}
@media(max-width:420px){
  .hero-flow-inner{width:calc(100% - 40px);padding-top:34px}
  .hero-flow h1{font-size:clamp(36px,10.5vw,44px)}
  .hero-flow .eyebrow{font-size:9px;letter-spacing:.1em}
  .hero-flow-art{height:88px;margin-top:4px;margin-bottom:16px}
  .hero-mobile-break{display:block}
  .hero-flow-business{gap:10px;font-size:9px}
  .hero-flow-business span+span{padding-left:10px}
}
