/* About-only layout. All selectors require this page's root class. */
.shhc-about-step01 .ab-page { --ab-ink:#0e0e0e; --ab-panel:#141414; --ab-white:#fff; --ab-muted:#d2d2d2; --ab-accent:#83f4ff; color:var(--ab-white); background:var(--ab-ink); font-family:'FuturaStd-Medium',Arial,sans-serif; font-size:17px; line-height:1.55; }
.shhc-about-step01 .ab-page * { box-sizing:border-box; }
.shhc-about-step01 .ab-page h1,.shhc-about-step01 .ab-page h2,.shhc-about-step01 .ab-page h3,.shhc-about-step01 .ab-page p,.shhc-about-step01 .ab-page figure { margin:0; }
.shhc-about-step01 .ab-page h1,.shhc-about-step01 .ab-page h2,.shhc-about-step01 .ab-page h3 { font-family:'Gothic725 Blk-BT-Black',Arial,sans-serif; font-weight:normal; line-height:1.2; }
.shhc-about-step01 .ab-page h1 { font-size:clamp(38px,3.5vw,54px); }
.shhc-about-step01 .ab-page h2 { font-size:clamp(30px,3vw,44px); }
.shhc-about-step01 .ab-page h3 { font-size:clamp(27px,2.5vw,38px); }
.shhc-about-step01 .ab-page a { color:inherit; }
.shhc-about-step01 .ab-page a:focus-visible { outline:3px solid var(--ab-accent); outline-offset:5px; }
.shhc-about-step01 .ab-page img { display:block; max-width:100%; }
.shhc-about-step01 .ab-wrap { width:calc(100% - 9.5%); max-width:1440px; margin:auto; }
.shhc-about-step01 .ab-kicker { color:var(--ab-accent); font-size:14px; letter-spacing:.08em; text-transform:uppercase; margin-bottom:14px!important; }
.shhc-about-step01 .ab-hero { position:relative; min-height:620px; height:48.85vw; max-height:938px; display:flex; align-items:center; }
.shhc-about-step01 .ab-hero picture { position:absolute; inset:0; }
.shhc-about-step01 .ab-hero picture img { width:100%; height:100%; object-fit:cover; }
.shhc-about-step01 .ab-hero:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.36),transparent 80%); pointer-events:none; }
.shhc-about-step01 .ab-hero-copy { position:relative; z-index:1; width:570px; max-width:70%; margin:90px 0 0 15%; }
.shhc-about-step01 .ab-hero-copy .ab-positioning { font-size:30px; line-height:1.2; max-width:480px; margin-top:20px; }
.shhc-about-step01 .ab-hero-copy .ab-intro { margin-top:20px; max-width:470px; font-size:18px; line-height:1.55; }
.shhc-about-step01 .ab-bread { background:#000; padding:20px 0; border-bottom:1px solid #303030; font-size:14px; }
.shhc-about-step01 .ab-bread a { text-decoration:underline; text-underline-offset:4px; }
.shhc-about-step01 .ab-section { padding:70px 0; scroll-margin-top:130px; }
.shhc-about-step01 .ab-section-head { max-width:850px; margin-bottom:42px; }
.shhc-about-step01 .ab-section-head p:not(.ab-kicker) { margin-top:20px; color:var(--ab-muted); }
.shhc-about-step01 .ab-factories { padding-top:68px; padding-bottom:0; }
.shhc-about-step01 .ab-factory { display:grid; grid-template-columns:1fr 1fr; background:#000; }
.shhc-about-step01 .ab-factory:nth-of-type(even) .ab-factory-visual { order:2; }
.shhc-about-step01 .ab-factory-visual { height:clamp(420px,41vw,620px); }
.shhc-about-step01 .ab-factory-visual img { width:100%; height:100%; object-fit:cover; }
.shhc-about-step01 .ab-factory-visual.ab-shanghai img { object-position:50% 40%; }
.shhc-about-step01 .ab-factory-visual.ab-jiangsu img { object-position:50% 48%; }
.shhc-about-step01 .ab-factory-visual.ab-vietnam img { object-position:50% 50%; }
.shhc-about-step01 .ab-factory-copy { padding:50px clamp(30px,4vw,68px); display:flex; flex-direction:column; justify-content:center; }
.shhc-about-step01 .ab-location { color:var(--ab-accent); margin:18px 0!important; }
.shhc-about-step01 .ab-factory-copy p:not(.ab-location) { color:var(--ab-muted); }
.shhc-about-step01 .ab-address { margin-top:22px!important; font-size:15px; }
.shhc-about-step01 .ab-fiber { display:grid; grid-template-columns:1fr 1fr; background:var(--ab-panel); border-bottom:1px solid #303030; }
.shhc-about-step01 .ab-fiber-visual { order:2; height:380px; }
.shhc-about-step01 .ab-fiber-visual img { width:100%; height:100%; object-fit:cover; object-position:50% 50%; }
.shhc-about-step01 .ab-fiber-copy { padding:36px clamp(30px,4vw,68px); display:flex; flex-direction:column; justify-content:center; }
.shhc-about-step01 .ab-fiber p { color:var(--ab-muted); }
.shhc-about-step01 .ab-fiber .ab-location { color:var(--ab-accent); margin:14px 0!important; }
.shhc-about-step01 .ab-network-note { color:var(--ab-muted); margin-top:34px!important; max-width:980px; }
.shhc-about-step01 .ab-link { color:var(--ab-accent)!important; display:inline-block; text-decoration:underline; text-underline-offset:5px; }
.shhc-about-step01 .ab-facts { padding-bottom:60px; border-bottom:1px solid #303030; }
.shhc-about-step01 .ab-facts-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:34px; }
.shhc-about-step01 .ab-facts-grid div { border-left:1px solid #4a4a4a; padding-left:22px; }
.shhc-about-step01 .ab-facts-grid dt { font-family:'Gothic725 Blk-BT-Black',Arial,sans-serif; font-size:40px; line-height:1.2; color:var(--ab-accent); }
.shhc-about-step01 .ab-facts-grid dd { margin:8px 0 0; font-size:16px; }
.shhc-about-step01 .ab-capacity { margin-top:30px!important; color:var(--ab-muted); max-width:980px; }
.shhc-about-step01 .ab-journey { border-bottom:1px solid #303030; }
.shhc-about-step01 .ab-timeline { list-style:none; padding:0; margin:34px 0 0; display:grid; grid-template-columns:repeat(3,1fr); gap:30px 40px; }
.shhc-about-step01 .ab-timeline li { border-top:1px solid #545454; padding-top:16px; }
.shhc-about-step01 .ab-timeline time { color:var(--ab-accent); font-size:28px; font-family:'Gothic725 Blk-BT-Black',Arial,sans-serif; }
.shhc-about-step01 .ab-timeline p { margin-top:8px!important; color:var(--ab-muted); font-size:16px; }
.shhc-about-step01 .ab-timeline strong { display:block; color:#fff; font-weight:normal; margin-bottom:3px; }
.shhc-about-step01 .ab-capability-layout { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.shhc-about-step01 .ab-outline { max-height:400px; width:100%; object-fit:contain; }
.shhc-about-step01 .ab-capability-list { list-style:none; padding:0; margin:24px 0; display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; }
.shhc-about-step01 .ab-capability-list li { border-bottom:1px solid #383838; padding-bottom:12px; }
.shhc-about-step01 .ab-capability-layout p { color:var(--ab-muted); }
.shhc-about-step01 .ab-quality { background:var(--ab-panel); }
.shhc-about-step01 .ab-quality-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:start; }
.shhc-about-step01 .ab-quality-visual img { width:100%; aspect-ratio:1.2; object-fit:cover; }
.shhc-about-step01 .ab-quality-visual figcaption { color:var(--ab-muted); font-size:14px; margin-top:12px; }
.shhc-about-step01 .ab-quality-copy>p { color:var(--ab-muted); margin-top:20px; }
.shhc-about-step01 .ab-compliance { border-top:1px solid #4a4a4a; padding-top:22px; margin-top:24px; scroll-margin-top:130px; }
.shhc-about-step01 .ab-compliance h3 { font-size:26px; }
.shhc-about-step01 .ab-compliance p { margin-top:14px; color:var(--ab-muted); font-size:16px; }
.shhc-about-step01 .ab-compliance-link { margin-top:16px; font-size:16px; }
.shhc-about-step01 .ab-sustainability { margin-top:25px; padding-top:20px; border-top:1px solid #4a4a4a; }
.shhc-about-step01 .ab-sustainability p { color:var(--ab-muted); font-size:16px; margin-bottom:12px; }
.shhc-about-step01 .ab-selected { background:#fff; color:#161616; padding-bottom:0; text-align:center; }
.shhc-about-step01 .ab-selected .ab-section-head { margin:0 auto 24px; }
.shhc-about-step01 .ab-selected .ab-section-head p { color:#444; }
.shhc-about-step01 .ab-selected img { width:100%; max-height:440px; object-fit:contain; }
.shhc-about-step01 .ab-cta { padding:55px 0; background:var(--ab-ink); }
.shhc-about-step01 .ab-cta-layout { display:flex; justify-content:space-between; align-items:center; gap:36px; }
.shhc-about-step01 .ab-cta h2 { font-size:34px; }
.shhc-about-step01 .ab-cta p { max-width:720px; margin-top:18px; color:var(--ab-muted); }
.shhc-about-step01 .ab-actions { display:flex; gap:20px; flex-wrap:wrap; margin-top:26px; align-items:center; }
.shhc-about-step01 .ab-button { display:inline-block; padding:13px 25px; background:var(--ab-accent); color:#0e0e0e!important; font-size:17px; line-height:1.5; }
@media (max-width:1100px) {
  .shhc-about-step01 .ab-hero { min-height:560px; }
  .shhc-about-step01 .ab-hero-copy { margin-left:10%; }
  .shhc-about-step01 .ab-factory-visual { height:420px; }
  .shhc-about-step01 .ab-factory-copy { padding:34px; }
  .shhc-about-step01 .ab-quality-layout { gap:32px; }
}
@media (max-width:800px) {
  .shhc-about-step01 .ab-page { font-size:16px; line-height:1.5; }
  .shhc-about-step01 .ab-wrap { width:calc(100% - 40px); }
  .shhc-about-step01 .ab-hero { height:auto; min-height:540px; }
  .shhc-about-step01 .ab-hero-copy { margin:115px 30px 50px; max-width:560px; width:calc(100% - 60px); }
  .shhc-about-step01 .ab-hero-copy .ab-positioning { font-size:27px; }
  .shhc-about-step01 .ab-hero-copy .ab-intro { font-size:16px; }
  .shhc-about-step01 .ab-section { padding:42px 0; scroll-margin-top:105px; }
  .shhc-about-step01 .ab-section-head { margin-bottom:28px; }
  .shhc-about-step01 .ab-factories { padding-bottom:0; }
  .shhc-about-step01 .ab-factory { grid-template-columns:1fr; margin-bottom:26px; }
  .shhc-about-step01 .ab-factory:nth-of-type(even) .ab-factory-visual { order:0; }
  .shhc-about-step01 .ab-factory-visual { min-height:0; height:clamp(210px,42vw,315px); }
  .shhc-about-step01 .ab-factory-copy { padding:25px 26px; }
  .shhc-about-step01 .ab-page h3 { font-size:29px; }
  .shhc-about-step01 .ab-location { margin:12px 0!important; }
  .shhc-about-step01 .ab-address { margin-top:16px!important; font-size:14px; }
  .shhc-about-step01 .ab-fiber { grid-template-columns:1fr; }
  .shhc-about-step01 .ab-fiber-visual { order:0; height:220px; }
  .shhc-about-step01 .ab-fiber-copy { padding:25px 26px; }
  .shhc-about-step01 .ab-network-note { margin-top:24px!important; }
  .shhc-about-step01 .ab-facts-grid { grid-template-columns:1fr 1fr; gap:25px 18px; margin-top:26px; }
  .shhc-about-step01 .ab-facts-grid dt { font-size:34px; }
  .shhc-about-step01 .ab-timeline { grid-template-columns:1fr 1fr; gap:20px; margin-top:26px; }
  .shhc-about-step01 .ab-timeline p { font-size:16px; }
  .shhc-about-step01 .ab-capability-layout { grid-template-columns:1fr; gap:25px; }
  .shhc-about-step01 .ab-page .ab-outline { display:none; }
  .shhc-about-step01 .ab-quality-layout { grid-template-columns:1fr; gap:26px; }
  .shhc-about-step01 .ab-quality-visual img { aspect-ratio:1.8; max-height:280px; }
  .shhc-about-step01 .ab-compliance { scroll-margin-top:105px; }
  .shhc-about-step01 .ab-selected { padding-bottom:0; }
  .shhc-about-step01 .ab-cta-layout { display:block; }
  .shhc-about-step01 .ab-cta h2 { font-size:30px; }
}
@media (max-width:500px) {
  .shhc-about-step01 .ab-wrap { width:calc(100% - 32px); }
  .shhc-about-step01 .ab-hero { min-height:0; padding-top:95px; display:block; background:#141414; }
  .shhc-about-step01 .ab-hero-copy { margin:0; padding:28px 22px 30px; width:100%; max-width:none; }
  .shhc-about-step01 .ab-page h1 { font-size:38px; }
  .shhc-about-step01 .ab-hero-copy .ab-positioning { font-size:25px; margin-top:16px; }
  .shhc-about-step01 .ab-hero-copy .ab-intro { margin-top:16px; }
  .shhc-about-step01 .ab-hero picture { position:relative; display:block; height:215px; }
  .shhc-about-step01 .ab-hero:after { display:none; }
  .shhc-about-step01 .ab-hero picture img { object-position:55% 55%; }
  .shhc-about-step01 .ab-bread { padding:15px 0; font-size:12px; }
  .shhc-about-step01 .ab-page h2 { font-size:31px; }
  .shhc-about-step01 .ab-page h3 { font-size:27px; }
  .shhc-about-step01 .ab-section { padding:26px 0; }
  .shhc-about-step01 .ab-factories { padding-bottom:0; }
  .shhc-about-step01 .ab-factory-copy { padding:23px 21px; }
  .shhc-about-step01 .ab-fiber-copy { padding:23px 21px; }
  .shhc-about-step01 .ab-fiber-visual { height:180px; }
  .shhc-about-step01 .ab-capability-list { gap:10px 16px; font-size:16px; }
  .shhc-about-step01 .ab-facts-grid div { padding-left:14px; }
  .shhc-about-step01 .ab-facts-grid dd { font-size:16px; }
  .shhc-about-step01 .ab-facts-grid dt { font-size:31px; }
  .shhc-about-step01 .ab-timeline { gap:18px 16px; }
  .shhc-about-step01 .ab-timeline time { font-size:26px; }
  .shhc-about-step01 .ab-compliance h3 { font-size:25px; }
  .shhc-about-step01 .ab-selected { padding-bottom:0; }
  .shhc-about-step01 .ab-selected img { min-height:145px; }
  .shhc-about-step01 .ab-actions { gap:18px; }
}
