/* Service dossier: real equipment, verified facts, and clear contact. */
.hc-v2.hc-page-corporate--service { --service-ink: #172126; --service-light: #f3f5f4; --service-rule: #d6dedd; }
.hc-page-corporate--service .hc-service-section-no { display:block; margin-bottom:20px; color:var(--c-accent); font-size:12px; font-weight:750; letter-spacing:.12em; line-height:1.3; text-transform:uppercase; }

/* Image-led first screen */
.hc-page-corporate--service .hc-service-hero { padding:8px 0 78px; }
.hc-page-corporate--service .hc-service-hero-frame { position:relative; display:flex; min-height:clamp(530px,43vw,620px); overflow:hidden; align-items:center; background:#1d282d; isolation:isolate; }
.hc-page-corporate--service .hc-service-hero-frame::after { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(12,20,24,.98) 0%,rgba(12,20,24,.93) 32%,rgba(12,20,24,.62) 54%,rgba(12,20,24,.10) 83%),linear-gradient(0deg,rgba(12,20,24,.47),transparent 33%); content:""; }
.hc-page-corporate--service .hc-service-hero-image { position:absolute; z-index:-2; width:100%; height:100%; inset:0; object-fit:cover; object-position:center 55%; }
.hc-page-corporate--service .hc-service-hero-copy { position:relative; z-index:1; width:min(700px,66%); padding:clamp(48px,5.7vw,82px); color:#fff; }
.hc-page-corporate--service .hc-service-kicker { display:inline-flex; align-items:center; gap:12px; color:#e4e9e8; font-size:12px; font-weight:700; letter-spacing:.105em; line-height:1.3; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-kicker-line { width:30px; height:3px; background:#ed3d52; }
.hc-page-corporate--service .hc-service-hero h1 { max-width:11ch; margin-top:25px; color:#fff; font-size:clamp(50px,5.2vw,74px); font-weight:680; letter-spacing:-.055em; line-height:.99; }
.hc-page-corporate--service .hc-service-hero-copy > p { max-width:47ch; margin-top:27px; color:#e3e9e9; font-size:clamp(17px,1.45vw,19px); line-height:1.55; }
.hc-page-corporate--service .hc-service-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 30px; margin-top:38px; }
.hc-page-corporate--service .hc-service-hero-actions .hc-button { min-height:56px; padding-inline:24px; gap:20px; white-space:nowrap; }
.hc-page-corporate--service .hc-service-hero-actions .hc-button span { font-size:23px; font-weight:400; line-height:0; }
.hc-page-corporate--service .hc-service-text-link { display:inline-flex; min-height:44px; align-items:center; gap:9px; color:#fff; font-size:15px; font-weight:640; text-decoration-color:rgba(255,255,255,.65); text-decoration-thickness:1px; text-underline-offset:6px; transition:color .2s ease; }
.hc-page-corporate--service .hc-service-text-link:hover { color:#ff8190; }
.hc-page-corporate--service .hc-service-text-link span { font-size:22px; font-weight:400; }
.hc-page-corporate--service .hc-service-photo-label { position:absolute; right:25px; bottom:24px; padding:8px 11px; background:rgba(16,25,29,.82); color:#eef2f2; font-size:11px; font-weight:570; line-height:1.4; letter-spacing:.02em; }
.hc-page-corporate--service .hc-service-photo-label span { color:#f06c7d; padding-inline:5px; }

/* Three separate facts, without implying a shared quantitative scale */
.hc-page-corporate--service .hc-service-proof { padding:22px 0 102px; }
.hc-page-corporate--service .hc-service-proof-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.72fr); align-items:end; gap:46px; margin-bottom:42px; }
.hc-page-corporate--service .hc-service-proof-head h2,
.hc-page-corporate--service .hc-service-section-heading h2,
.hc-page-corporate--service .hc-service-request h2,
.hc-page-corporate--service .hc-service-contact h2 { font-size:clamp(36px,3.75vw,54px); line-height:1.045; letter-spacing:-.047em; }
.hc-page-corporate--service .hc-service-proof-head > p { max-width:53ch; padding-bottom:4px; color:var(--c-ink-2); font-size:17px; line-height:1.62; }
.hc-page-corporate--service .hc-service-proof-graphic { display:grid; min-height:315px; grid-template-columns:1fr 1fr 1.08fr; background-color:var(--service-ink); background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:44px 44px; color:#fff; }
.hc-page-corporate--service .hc-service-stat { position:relative; display:flex; min-width:0; min-height:365px; padding:25px 32px 22px; flex-direction:column; border:0; border-right:1px solid rgba(255,255,255,.2); border-radius:0; appearance:none; background:transparent; color:#fff; font-family:inherit; text-align:left; cursor:pointer; transition:background-color .24s ease; }
.hc-page-corporate--service .hc-service-stat::before { position:absolute; top:0; bottom:0; left:0; width:4px; background:#ef5d70; content:""; transform:scaleY(0); transform-origin:top; transition:transform .28s cubic-bezier(.2,.7,.2,1); }
.hc-page-corporate--service .hc-service-stat:hover { background:rgba(255,255,255,.055); }
.hc-page-corporate--service .hc-service-stat[aria-pressed="true"] { background:rgba(239,93,112,.095); }
.hc-page-corporate--service .hc-service-stat[aria-pressed="true"]::before { transform:scaleY(1); }
.hc-page-corporate--service .hc-service-stat:focus-visible { z-index:1; outline:3px solid #ff8997; outline-offset:-4px; }
.hc-page-corporate--service .hc-service-stat:last-child { border-right:0; }
.hc-page-corporate--service .hc-service-stat-top { display:flex; align-items:center; justify-content:space-between; color:#b1c0c4; font-size:11px; font-weight:650; letter-spacing:.13em; line-height:1.3; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-stat-top span:last-child { color:#f07183; }
.hc-page-corporate--service .hc-service-stat-main { display:flex; min-height:155px; align-items:baseline; gap:21px; margin-top:20px; }
.hc-page-corporate--service .hc-service-stat-main strong { display:inline-block; color:#fff; font-size:clamp(88px,8.9vw,128px); font-weight:620; letter-spacing:-.08em; line-height:1; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-service-stat-main strong small { margin-left:4px; font-size:.32em; font-weight:660; letter-spacing:-.04em; }
.hc-page-corporate--service .hc-service-stat-main > span { color:#e1e8e9; font-size:18px; font-weight:570; line-height:1.28; }
.hc-page-corporate--service .hc-service-stat-foot { position:relative; display:block; min-height:83px; margin-top:auto; }
.hc-page-corporate--service .hc-service-stat-visual,
.hc-page-corporate--service .hc-service-stat-detail { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; transition:opacity .22s ease,transform .22s cubic-bezier(.2,.7,.2,1),visibility .22s; }
.hc-page-corporate--service .hc-service-stat-detail { gap:6px; opacity:0; visibility:hidden; transform:translateY(8px); }
.hc-page-corporate--service .hc-service-stat-detail b { color:#ff8997; font-size:11px; font-weight:760; letter-spacing:.08em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-stat-detail > span { max-width:36ch; color:#e2e9e9; font-size:13px; line-height:1.42; }
.hc-page-corporate--service .hc-service-stat[aria-pressed="true"] .hc-service-stat-visual { opacity:0; visibility:hidden; transform:translateY(-6px); }
.hc-page-corporate--service .hc-service-stat[aria-pressed="true"] .hc-service-stat-detail { opacity:1; visibility:visible; transform:translateY(0); }
.hc-page-corporate--service .hc-service-unit-graphic { display:flex; height:45px; align-items:end; gap:7px; }
.hc-page-corporate--service .hc-service-unit-graphic i { display:block; height:100%; width:28px; border-top:3px solid #ef5d70; background:rgba(239,93,112,.28); transform-origin:bottom; }
.hc-page-corporate--service .hc-service-unit-graphic--three i { width:48px; height:31px; border:2px solid #ef5d70; border-bottom-width:5px; background:rgba(239,93,112,.13); }
.hc-page-corporate--service .hc-service-stat-time-copy { max-width:32ch; color:#c5d0d2; font-size:13px; line-height:1.45; }
.hc-page-corporate--service .hc-service-stat-more { display:flex; min-height:30px; align-items:end; justify-content:space-between; margin-top:15px; padding-top:10px; border-top:1px solid rgba(255,255,255,.16); color:#c9d4d5; font-size:11px; font-weight:730; letter-spacing:.08em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-stat-more > span:last-child { color:#f07586; font-size:21px; font-weight:400; line-height:1; }
.hc-page-corporate--service .hc-service-stat[aria-pressed="true"] .hc-service-stat-more { color:#fff; }
.hc-page-corporate--service .hc-service-proof-source { display:grid; grid-template-columns:190px minmax(0,1fr); gap:24px; padding:23px 0 0; color:var(--c-ink-2); font-size:14px; line-height:1.55; }
.hc-page-corporate--service .hc-service-proof-source span { color:var(--c-ink); font-size:12px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }

/* Service capability rail and real equipment image */
.hc-page-corporate--service .hc-service-work { padding:96px 0 104px; background:var(--service-light); }
.hc-page-corporate--service .hc-service-section-heading { max-width:850px; margin-bottom:45px; }
.hc-page-corporate--service .hc-service-section-heading > p { max-width:55ch; margin-top:19px; color:var(--c-ink-2); font-size:18px; line-height:1.55; }
.hc-page-corporate--service .hc-service-work-layout { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); align-items:stretch; gap:46px; }
.hc-page-corporate--service .hc-service-work-list { border-top:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-work-list article { display:grid; grid-template-columns:34px minmax(0,1fr) 24px; gap:15px; padding:24px 0 25px; border-bottom:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-work-index { padding-top:3px; color:#b02139; font-size:12px; font-weight:750; line-height:1.4; }
.hc-page-corporate--service .hc-service-work-list h3 { color:var(--service-ink); font-size:23px; line-height:1.18; letter-spacing:-.03em; }
.hc-page-corporate--service .hc-service-work-list p { max-width:50ch; margin-top:8px; color:var(--c-ink-2); font-size:15px; line-height:1.48; }
.hc-page-corporate--service .hc-service-work-cross { color:#aab4b7; font-size:22px; font-weight:400; line-height:1; }
.hc-page-corporate--service .hc-service-work-image { position:relative; min-width:0; max-width:100%; min-height:510px; margin:0; overflow:hidden; background:#cbd3d3; }
.hc-page-corporate--service .hc-service-work-image img { width:100%; height:100%; min-height:510px; object-fit:cover; object-position:center; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.hc-page-corporate--service .hc-service-work-image:hover img { transform:scale(1.035); }
.hc-page-corporate--service .hc-service-work-image figcaption { position:absolute; right:0; bottom:0; left:0; display:flex; align-items:center; gap:20px; padding:14px 20px; background:rgba(20,30,34,.92); color:#e8eeee; font-size:12px; line-height:1.4; }
.hc-page-corporate--service .hc-service-image-tag { color:#ff8a9a; font-size:10px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-systems { display:grid; grid-template-columns:220px minmax(0,1fr); margin-top:48px; border:1px solid var(--service-rule); background:#fff; }
.hc-page-corporate--service .hc-service-systems-intro { display:grid; align-content:center; gap:15px; padding:25px 29px; border-right:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-systems-intro span { color:var(--c-accent); font-size:11px; font-weight:760; letter-spacing:.09em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-systems-intro strong { color:var(--service-ink); font-size:23px; font-weight:660; line-height:1.12; letter-spacing:-.035em; }
.hc-page-corporate--service .hc-service-systems ol { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; align-items:center; margin:0; padding:35px 20px 25px; list-style:none; }
.hc-page-corporate--service .hc-service-systems ol::before { position:absolute; top:45px; right:11%; left:11%; height:1px; background:#abb8bb; content:""; }
.hc-page-corporate--service .hc-service-systems li { position:relative; min-height:70px; padding:27px 8px 0; color:var(--service-ink); font-size:13px; font-weight:670; line-height:1.25; text-align:center; }
.hc-page-corporate--service .hc-service-systems li::before { position:absolute; top:5px; left:calc(50% - 5px); width:10px; height:10px; border:2px solid #fff; border-radius:50%; background:var(--c-accent); box-shadow:0 0 0 1px var(--c-accent); content:""; }
.hc-page-corporate--service .hc-service-method { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:70px; margin-top:62px; padding-top:44px; border-top:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-method-label { display:block; margin-bottom:16px; color:var(--c-accent); font-size:11px; font-weight:760; letter-spacing:.12em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-method h3 { max-width:17ch; font-size:clamp(27px,2.8vw,38px); line-height:1.1; letter-spacing:-.04em; }
.hc-page-corporate--service .hc-service-method-copy { padding-left:24px; border-left:3px solid var(--c-accent); }
.hc-page-corporate--service .hc-service-method-copy p { max-width:65ch; color:var(--c-ink-2); font-size:16px; line-height:1.6; }
.hc-page-corporate--service .hc-service-method-copy p + p { margin-top:15px; }
.hc-page-corporate--service .hc-service-method-copy strong { color:var(--service-ink); font-weight:700; }
.hc-page-corporate--service .hc-service-cases-label { display:block; margin:25px 0 7px; color:var(--c-accent); font-size:11px; font-weight:760; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-cases { margin:0 0 15px; border-top:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-cases > div { display:grid; grid-template-columns:minmax(115px,.42fr) minmax(0,1fr); gap:18px; padding:13px 0; border-bottom:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-cases dt { color:var(--service-ink); font-size:14px; font-weight:720; line-height:1.45; }
.hc-page-corporate--service .hc-service-cases dd { margin:0; color:var(--c-ink-2); font-size:14px; line-height:1.45; }
.hc-page-corporate--service .hc-service-method-copy .hc-service-cases-note { font-size:13px; line-height:1.5; }

/* A model-specific maintenance map, based on the supplied CPCD15 schedule. */
.hc-page-corporate--service .hc-maintenance { padding:102px 0 106px; }
.hc-page-corporate--service .hc-maintenance [hidden] { display:none !important; }
.hc-page-corporate--service .hc-maintenance-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.7fr); align-items:end; gap:55px; margin-bottom:39px; }
.hc-page-corporate--service .hc-maintenance-heading h2 { font-size:clamp(36px,3.75vw,54px); line-height:1.045; letter-spacing:-.047em; }
.hc-page-corporate--service .hc-maintenance-heading > p { max-width:52ch; padding-bottom:4px; color:var(--c-ink-2); font-size:17px; line-height:1.6; }
.hc-page-corporate--service .hc-maintenance-console { min-width:0; border:1px solid var(--service-rule); border-top:4px solid var(--c-accent); background:#fff; }
.hc-page-corporate--service .hc-maintenance-controls { display:grid; grid-template-columns:1fr 1fr; gap:30px; padding:30px 34px 32px; background:var(--service-light); }
.hc-page-corporate--service .hc-maintenance-control { display:grid; align-content:start; gap:9px; min-width:0; }
.hc-page-corporate--service .hc-maintenance-control label { color:var(--service-ink); font-size:13px; font-weight:750; letter-spacing:.01em; }
.hc-page-corporate--service .hc-maintenance-control select,
.hc-page-corporate--service .hc-maintenance-control input { width:100%; height:62px; min-height:62px; padding:0 18px; border:1px solid #afbbbf; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:19px; font-weight:680; line-height:1.2; transition:border-color .18s ease,box-shadow .18s ease; }
.hc-page-corporate--service .hc-maintenance-select-field,
.hc-page-corporate--service .hc-maintenance-hours-field { position:relative; min-width:0; }
.hc-page-corporate--service .hc-maintenance-control select { padding-right:72px; appearance:none; -webkit-appearance:none; cursor:pointer; }
.hc-page-corporate--service .hc-maintenance-select-arrow { position:absolute; inset:1px 1px 1px auto; display:grid; width:58px; place-items:center; border-left:1px solid #dde3e4; border-radius:0 5px 5px 0; background:#f7f9f9; color:var(--service-ink); pointer-events:none; transition:background-color .18s ease,color .18s ease; }
.hc-page-corporate--service .hc-maintenance-select-field:hover select,
.hc-page-corporate--service .hc-maintenance-hours-field:hover input { border-color:#718187; }
.hc-page-corporate--service .hc-maintenance-select-field:hover .hc-maintenance-select-arrow { background:#eef2f2; }
.hc-page-corporate--service .hc-maintenance-control input { padding-right:174px; font-variant-numeric:tabular-nums; appearance:textfield; -moz-appearance:textfield; }
.hc-page-corporate--service .hc-maintenance-control input::-webkit-inner-spin-button,
.hc-page-corporate--service .hc-maintenance-control input::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.hc-page-corporate--service .hc-maintenance-control input[aria-invalid="true"] { border-color:var(--c-accent); }
.hc-page-corporate--service .hc-maintenance-control > span { color:var(--c-ink-3); font-size:12px; line-height:1.45; }
.hc-page-corporate--service .hc-maintenance-hours-unit { position:absolute; top:50%; right:121px; color:var(--c-ink-3); font-size:13px; font-weight:700; transform:translateY(-50%); pointer-events:none; }
.hc-page-corporate--service .hc-maintenance-stepper { position:absolute; inset:7px 7px 7px auto; display:flex; gap:3px; padding-left:7px; border-left:1px solid #dde3e4; }
.hc-page-corporate--service .hc-maintenance-stepper button { display:grid; width:45px; min-width:45px; min-height:46px; padding:0; place-items:center; border:1px solid transparent; border-radius:4px; background:#f2f5f5; color:var(--service-ink); font-family:inherit; font-size:25px; font-weight:480; line-height:1; cursor:pointer; transition:background-color .18s ease,color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-maintenance-stepper button:hover { background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-maintenance-stepper button:active { transform:scale(.96); }
.hc-page-corporate--service .hc-maintenance-control :is(select,input):focus-visible { outline:0; border-color:var(--c-accent); box-shadow:0 0 0 3px rgba(227,6,19,.17); }
.hc-page-corporate--service .hc-maintenance-select-field:focus-within .hc-maintenance-select-arrow { background:var(--c-accent); color:#fff; }
.hc-page-corporate--service .hc-maintenance-console :is(button,a):focus-visible { outline:3px solid var(--c-accent); outline-offset:3px; }
.hc-page-corporate--service .hc-maintenance-load { padding:30px 34px; color:var(--c-ink-2); font-size:16px; }
.hc-page-corporate--service .hc-maintenance-result { display:grid; grid-template-columns:1.08fr .92fr; background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-maintenance-result > div { display:flex; min-height:216px; padding:27px 37px 30px; flex-direction:column; border-right:1px solid rgba(255,255,255,.19); }
.hc-page-corporate--service .hc-maintenance-result > div:last-child { border-right:0; }
.hc-page-corporate--service .hc-maintenance-result > div > span { color:#aebdc1; font-size:11px; font-weight:740; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-maintenance-result strong { display:flex; align-items:baseline; gap:8px; margin-top:15px; color:#fff; font-size:clamp(70px,7vw,104px); font-weight:620; letter-spacing:-.065em; line-height:1; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-maintenance-result strong small { font-size:23px; font-weight:620; letter-spacing:0; }
.hc-page-corporate--service .hc-maintenance-result > div:last-child strong { font-size:clamp(65px,6.5vw,90px); }
.hc-page-corporate--service .hc-maintenance-result p { max-width:48ch; margin-top:auto; color:#ced8da; font-size:14px; line-height:1.45; }
.hc-page-corporate--service .hc-maintenance-timeline-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding:34px 34px 16px; }
.hc-page-corporate--service .hc-maintenance-timeline-heading h3 { color:var(--service-ink); font-size:23px; font-weight:690; letter-spacing:-.035em; }
.hc-page-corporate--service .hc-maintenance-timeline-heading span { color:var(--c-ink-3); font-size:12px; font-weight:670; white-space:nowrap; }
.hc-page-corporate--service .hc-maintenance-timeline { display:flex; min-width:0; margin:0 34px; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-color:#b7c1c2 transparent; scrollbar-width:thin; }
.hc-page-corporate--service .hc-maintenance-point { position:relative; display:flex; min-width:78px; min-height:94px; flex:1 0 78px; flex-direction:column; align-items:flex-start; gap:6px; padding:28px 9px 9px; border:0; border-top:2px solid #c8d1d2; background:#fff; color:var(--c-ink-2); text-align:left; cursor:pointer; transition:background-color .18s ease,color .18s ease; }
.hc-page-corporate--service .hc-maintenance-point::before { position:absolute; top:-6px; left:11px; width:8px; height:8px; border:2px solid #fff; border-radius:50%; background:#9aa9ab; box-shadow:0 0 0 1px #9aa9ab; content:""; transition:transform .18s ease,background-color .18s ease; }
.hc-page-corporate--service .hc-maintenance-point:hover { background:#f2f5f5; }
.hc-page-corporate--service .hc-maintenance-point.is-next { border-top-color:var(--c-accent); }
.hc-page-corporate--service .hc-maintenance-point.is-next::before { background:var(--c-accent); box-shadow:0 0 0 1px var(--c-accent); }
.hc-page-corporate--service .hc-maintenance-point[aria-pressed="true"] { background:#fbebee; color:#92172b; }
.hc-page-corporate--service .hc-maintenance-point[aria-pressed="true"]::before { transform:scale(1.35); }
.hc-page-corporate--service .hc-maintenance-point strong { font-size:17px; font-weight:760; line-height:1; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-maintenance-point span { font-size:12px; font-weight:700; }
.hc-page-corporate--service .hc-maintenance-scroll-hint { display:none; }
.hc-page-corporate--service .hc-maintenance-detail { margin:31px 34px 0; padding:31px 34px 34px; background:var(--service-light); }
.hc-page-corporate--service .hc-maintenance-detail-head { display:flex; align-items:start; justify-content:space-between; gap:20px; }
.hc-page-corporate--service .hc-maintenance-detail-head > div > span,
.hc-page-corporate--service .hc-maintenance-materials > div > span { color:var(--c-accent); font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-maintenance-detail-head h3 { margin-top:7px; font-size:clamp(35px,3.3vw,48px); font-weight:700; letter-spacing:-.05em; line-height:1; }
.hc-page-corporate--service .hc-maintenance-detail-head p { max-width:50ch; margin-top:9px; color:var(--c-ink-2); font-size:14px; line-height:1.5; }
.hc-page-corporate--service .hc-maintenance-detail-head > strong { padding-top:18px; color:var(--service-ink); font-size:17px; font-weight:700; white-space:nowrap; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-maintenance-type-buttons { display:flex; flex-wrap:wrap; gap:8px; margin:26px 0 26px; }
.hc-page-corporate--service .hc-maintenance-type-buttons button { min-width:82px; min-height:46px; padding:8px 16px; border:1px solid #b9c5c7; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:14px; font-weight:750; line-height:1.2; cursor:pointer; transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-maintenance-type-buttons button:hover { border-color:var(--service-ink); background:#eef2f2; }
.hc-page-corporate--service .hc-maintenance-type-buttons button:active { transform:translateY(1px); }
.hc-page-corporate--service .hc-maintenance-type-buttons button[aria-pressed="true"] { border-color:var(--c-accent); background:var(--c-accent); color:#fff; }
.hc-page-corporate--service .hc-maintenance-type-buttons button[aria-pressed="true"]:hover { background:var(--c-accent-hover); }
.hc-page-corporate--service .hc-maintenance-materials > div { display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding-bottom:12px; border-bottom:1px solid #c6d0d0; }
.hc-page-corporate--service .hc-maintenance-materials > div > strong { color:var(--c-ink-2); font-size:12px; font-weight:680; white-space:nowrap; }
.hc-page-corporate--service .hc-maintenance-materials ul { display:grid; grid-template-columns:1fr 1fr; gap:0 29px; margin:0; padding:0; list-style:none; }
.hc-page-corporate--service .hc-maintenance-materials li { display:flex; min-width:0; align-items:baseline; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid #d8dfdf; color:var(--service-ink); font-size:14px; line-height:1.35; }
.hc-page-corporate--service .hc-maintenance-materials li strong { color:var(--c-ink-2); font-size:13px; font-weight:710; white-space:nowrap; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-maintenance-estimate { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:22px; margin-top:31px; padding:25px 28px; background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-maintenance-estimate > div > span { display:block; color:#bac9cb; font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-maintenance-estimate strong { display:block; margin-top:7px; color:#fff; font-size:clamp(28px,3vw,37px); font-weight:710; letter-spacing:-.045em; line-height:1.1; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-maintenance-estimate p { max-width:62ch; margin-top:9px; color:#c4d0d2; font-size:12px; line-height:1.5; }
.hc-page-corporate--service .hc-maintenance-estimate button,
.hc-page-corporate--service .hc-maintenance-unavailable button { display:inline-flex; min-height:52px; align-items:center; justify-content:space-between; gap:20px; padding:12px 18px; border:1px solid var(--c-accent); border-radius:6px; background:var(--c-accent); color:#fff; font-family:inherit; font-size:14px; font-weight:750; line-height:1.3; text-align:left; cursor:pointer; transition:background-color .18s ease,border-color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-maintenance-estimate button:hover,
.hc-page-corporate--service .hc-maintenance-unavailable button:hover { border-color:var(--c-accent-hover); background:var(--c-accent-hover); }
.hc-page-corporate--service .hc-maintenance-estimate button:active,
.hc-page-corporate--service .hc-maintenance-unavailable button:active { transform:translateY(1px); }
.hc-page-corporate--service .hc-maintenance-estimate button span,
.hc-page-corporate--service .hc-maintenance-unavailable button span { font-size:20px; font-weight:400; }
.hc-page-corporate--service .hc-maintenance-source { max-width:105ch; margin:21px 34px 30px; color:var(--c-ink-3); font-size:12px; line-height:1.55; }
.hc-page-corporate--service .hc-maintenance-unavailable { padding:54px 34px 59px; }
.hc-page-corporate--service .hc-maintenance-unavailable > span { color:var(--c-accent); font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-maintenance-unavailable h3 { margin-top:12px; font-size:clamp(30px,3.4vw,43px); letter-spacing:-.045em; line-height:1.08; }
.hc-page-corporate--service .hc-maintenance-unavailable p { max-width:64ch; margin-top:14px; color:var(--c-ink-2); font-size:16px; line-height:1.55; }
.hc-page-corporate--service .hc-maintenance-unavailable button { margin-top:25px; }
.hc-page-corporate--service .hc-maintenance-noscript { padding:20px 34px; color:var(--c-ink-2); }

.hc-page-corporate--service .hc-service-quote-dialog { width:min(720px,calc(100% - 32px)); max-width:720px; }
.hc-page-corporate--service .hc-service-quote-dialog .hc-modal-card { max-height:calc(100dvh - 32px); padding:31px 34px 34px; overflow-y:auto; overscroll-behavior:contain; }
.hc-page-corporate--service .hc-service-quote-dialog .hc-modal-head h2 { font-size:clamp(30px,3.4vw,39px); letter-spacing:-.045em; line-height:1.1; }
.hc-page-corporate--service .hc-service-quote-close { display:grid; width:44px; min-width:44px; height:44px; padding:0; place-items:center; border:1px solid var(--service-rule); border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:28px; line-height:1; cursor:pointer; }
.hc-page-corporate--service .hc-service-quote-close:hover { background:var(--service-light); }
.hc-page-corporate--service .hc-service-quote-dialog .hc-modal-copy { margin:17px 0 23px; font-size:15px; line-height:1.5; }
.hc-page-corporate--service .hc-service-quote-summary { display:grid; grid-template-columns:1.1fr .8fr 1fr; border-top:3px solid var(--c-accent); background:var(--service-light); }
.hc-page-corporate--service .hc-service-quote-summary > div { min-width:0; padding:15px 18px 17px; border-right:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-quote-summary > div:nth-child(3) { border-right:0; }
.hc-page-corporate--service .hc-service-quote-summary span { display:block; color:var(--c-ink-3); font-size:11px; font-weight:750; letter-spacing:.07em; text-transform:uppercase; }
.hc-page-corporate--service .hc-service-quote-summary strong { display:block; margin-top:7px; color:var(--service-ink); font-size:16px; font-weight:750; line-height:1.25; }
.hc-page-corporate--service .hc-service-quote-summary p { grid-column:1/-1; margin:0; padding:11px 18px 15px; border-top:1px solid var(--service-rule); color:var(--c-ink-2); font-size:12px; line-height:1.55; }
.hc-page-corporate--service .hc-service-quote-form { margin-top:24px; }
.hc-page-corporate--service .hc-service-quote-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.hc-page-corporate--service .hc-service-quote-fields > div { min-width:0; }
.hc-page-corporate--service .hc-service-quote-fields-wide { grid-column:1/-1; }
.hc-page-corporate--service .hc-service-quote-fields label { display:block; margin-bottom:8px; color:var(--service-ink); font-size:13px; font-weight:740; }
.hc-page-corporate--service .hc-service-quote-fields label span { color:var(--c-ink-3); font-size:12px; font-weight:400; }
.hc-page-corporate--service .hc-service-quote-fields :is(input,textarea) { display:block; width:100%; min-height:50px; padding:12px 14px; border:1px solid #afbbbf; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:15px; line-height:1.4; }
.hc-page-corporate--service .hc-service-quote-fields textarea { min-height:75px; resize:vertical; }
.hc-page-corporate--service .hc-service-quote-fields :is(input,textarea):focus-visible { outline:0; border-color:var(--c-accent); box-shadow:0 0 0 3px rgba(200,16,46,.17); }
.hc-page-corporate--service .hc-service-quote-consent { display:flex; align-items:start; gap:10px; margin-top:19px; color:var(--c-ink-2); font-size:12px; line-height:1.5; }
.hc-page-corporate--service .hc-service-quote-consent input { width:18px; min-width:18px; height:18px; margin:0; accent-color:var(--c-accent); }
.hc-page-corporate--service .hc-service-quote-consent a { color:var(--c-accent-hover); text-underline-offset:2px; }
.hc-page-corporate--service .hc-service-quote-actions { display:flex; align-items:center; gap:17px; margin-top:22px; }
.hc-page-corporate--service .hc-service-quote-actions button { display:inline-flex; min-height:50px; align-items:center; justify-content:space-between; gap:20px; padding:11px 17px; border:1px solid var(--c-accent); border-radius:6px; background:var(--c-accent); color:#fff; font-family:inherit; font-size:14px; font-weight:750; cursor:pointer; }
.hc-page-corporate--service .hc-service-quote-actions button:hover { background:var(--c-accent-hover); }
.hc-page-corporate--service .hc-service-quote-actions button:disabled { opacity:.6; cursor:wait; }
.hc-page-corporate--service .hc-service-quote-actions [role="status"] { color:var(--c-ink-2); font-size:12px; line-height:1.45; }
.hc-page-corporate--service .hc-service-quote-actions .is-success { color:var(--c-ok); }
.hc-page-corporate--service .hc-service-quote-actions .is-error { color:var(--c-accent-hover); }
.hc-page-corporate--service .hc-service-quote-dialog :is(button,a,input):focus-visible { outline:3px solid var(--c-accent); outline-offset:3px; }

/* The exact information needed to start a service request */
.hc-page-corporate--service .hc-service-request { padding:100px 0 105px; }
.hc-page-corporate--service .hc-service-request-head { margin-bottom:49px; }
.hc-page-corporate--service .hc-service-request-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--service-rule); border-bottom:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-request-steps > div { min-height:212px; padding:25px 34px 31px 0; border-right:1px solid var(--service-rule); }
.hc-page-corporate--service .hc-service-request-steps > div + div { padding-left:34px; }
.hc-page-corporate--service .hc-service-request-steps > div:last-child { border-right:0; }
.hc-page-corporate--service .hc-service-request-steps span { display:block; margin-bottom:33px; color:var(--c-accent); font-size:13px; font-weight:750; letter-spacing:.08em; }
.hc-page-corporate--service .hc-service-request-steps h3 { font-size:23px; line-height:1.2; }
.hc-page-corporate--service .hc-service-request-steps p { max-width:34ch; margin-top:10px; color:var(--c-ink-2); font-size:15px; line-height:1.5; }
.hc-page-corporate--service .hc-service-request-note { max-width:92ch; margin-top:25px; padding-left:21px; border-left:3px solid var(--c-accent); color:var(--c-ink-2); font-size:14px; line-height:1.58; }

/* Direct contact plate */
.hc-page-corporate--service .hc-service-contact { padding:0 0 96px; }
.hc-page-corporate--service .hc-service-contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.72fr); align-items:center; gap:70px; padding:58px 62px 62px; border-top:4px solid var(--c-accent); background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-service-contact .hc-service-section-no { color:#ff7d8e; }
.hc-page-corporate--service .hc-service-contact h2 { color:#fff; }
.hc-page-corporate--service .hc-service-contact-grid > div:first-child > p { max-width:54ch; margin-top:18px; color:#bdc9cb; font-size:17px; line-height:1.54; }
.hc-page-corporate--service .hc-service-contact-actions { display:grid; min-width:0; gap:15px; }
.hc-page-corporate--service .hc-service-contact-phone { display:grid; grid-template-columns:1fr auto; padding:17px 22px 20px; background:#fff; color:var(--service-ink); text-decoration:none; transition:transform .25s ease,background-color .25s ease; }
.hc-page-corporate--service .hc-service-contact-phone:hover { transform:translateY(-3px); background:#f6f8f8; color:var(--service-ink); }
.hc-page-corporate--service .hc-service-contact-phone > span:first-child { grid-column:1/-1; color:var(--c-ink-2); font-size:12px; font-weight:670; }
.hc-page-corporate--service .hc-service-contact-phone strong { font-size:clamp(24px,2.5vw,34px); font-weight:700; letter-spacing:-.04em; white-space:nowrap; }
.hc-page-corporate--service .hc-service-contact-phone > span:last-child { align-self:center; color:var(--c-accent); font-size:24px; }
.hc-page-corporate--service .hc-service-contact-mail { display:inline-flex; align-items:center; gap:8px; color:#fff; font-size:15px; font-weight:620; text-decoration-color:#eb8c9b; text-underline-offset:5px; }
.hc-page-corporate--service .hc-service-contact-mail:hover { color:#ff8c9c; }
.hc-page-corporate--service .hc-service-contact-actions > span { color:#aebdc1; font-size:13px; }

/* Preliminary service request calendar */
.hc-page-corporate--service .hc-service-booking { padding:96px 0 104px; background:#fff; }
.hc-page-corporate--service .hc-service-booking [hidden] { display:none !important; }
.hc-page-corporate--service .hc-service-booking-head { display:grid; grid-template-columns:1fr minmax(0,.62fr); align-items:end; gap:52px; margin-bottom:36px; }
.hc-page-corporate--service .hc-service-booking-head h2 { font-size:clamp(36px,3.75vw,54px); line-height:1.045; letter-spacing:-.047em; }
.hc-page-corporate--service .hc-service-booking-head > p { max-width:53ch; padding-bottom:4px; color:var(--c-ink-2); font-size:17px; line-height:1.57; }
.hc-page-corporate--service .hc-booking-panel { display:flex; min-width:0; flex-direction:column; border:1px solid var(--service-rule); border-top:4px solid var(--service-ink); background:var(--service-light); }
.hc-page-corporate--service .hc-booking-panel-head { padding:28px 30px 23px; }
.hc-page-corporate--service .hc-booking-panel-head > span { color:var(--c-accent); font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-booking-panel-head h3 { margin-top:8px; font-size:clamp(27px,2.5vw,34px); line-height:1.13; letter-spacing:-.04em; }
.hc-page-corporate--service .hc-booking-panel-head p { max-width:46ch; margin-top:10px; color:var(--c-ink-2); font-size:14px; line-height:1.5; }
.hc-page-corporate--service .hc-booking-service-types { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; padding:0 30px 25px; }
.hc-page-corporate--service .hc-booking-service-types button { display:flex; min-height:72px; align-items:center; justify-content:space-between; gap:12px; padding:14px 17px; border:1px solid #b9c5c7; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:15px; font-weight:740; line-height:1.3; text-align:left; cursor:pointer; transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-booking-service-types button::after { width:8px; height:8px; flex:none; border:2px solid #a5b2b5; border-radius:50%; content:""; }
.hc-page-corporate--service .hc-booking-service-types button:not([aria-pressed="true"]):hover { border-color:var(--service-ink); transform:translateY(-2px); }
.hc-page-corporate--service .hc-booking-service-types button[aria-pressed="true"] { border-color:var(--c-accent); background:var(--c-accent); color:#fff; }
.hc-page-corporate--service .hc-booking-service-types button[aria-pressed="true"]::after { border-color:#fff; background:#fff; }
.hc-page-corporate--service .hc-booking-calendar { display:flex; gap:7px; min-height:121px; padding:4px 30px 12px; overflow-x:auto; scrollbar-width:thin; scroll-snap-type:x proximity; }
.hc-page-corporate--service .hc-booking-date { display:grid; width:71px; min-width:71px; min-height:100px; padding:11px 5px 9px; justify-items:center; align-content:space-between; border:1px solid #b9c5c7; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; cursor:pointer; scroll-snap-align:start; transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-booking-date span { color:var(--c-ink-3); font-size:11px; font-weight:700; text-transform:uppercase; }
.hc-page-corporate--service .hc-booking-date strong { font-size:27px; line-height:1; font-variant-numeric:tabular-nums; }
.hc-page-corporate--service .hc-booking-date small { font-size:11px; font-weight:650; }
.hc-page-corporate--service .hc-booking-date:not(:disabled):hover { border-color:var(--service-ink); background:#eef2f2; transform:translateY(-2px); }
.hc-page-corporate--service .hc-booking-date[aria-pressed="true"] { border-color:var(--c-accent); background:var(--c-accent); color:#fff; }
.hc-page-corporate--service .hc-booking-date[aria-pressed="true"] :is(span,small) { color:#fff; }
.hc-page-corporate--service .hc-booking-date:disabled { border-color:#dce2e2; background:#f0f2f1; color:#8b989c; cursor:not-allowed; }
.hc-page-corporate--service .hc-booking-date:disabled :is(span,small) { color:#849195; }
.hc-page-corporate--service .hc-booking-times-head { display:flex; justify-content:space-between; gap:10px; margin:16px 30px 0; padding-top:18px; border-top:1px solid var(--service-rule); font-size:13px; font-weight:750; }
.hc-page-corporate--service .hc-booking-times-head span { color:var(--c-ink-3); font-size:11px; font-weight:500; }
.hc-page-corporate--service .hc-booking-times { display:flex; flex-wrap:wrap; align-content:start; gap:8px; min-height:68px; padding:15px 30px 18px; }
.hc-page-corporate--service .hc-booking-times button { min-height:44px; padding:9px 14px; border:1px solid #b9c5c7; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:13px; font-weight:730; font-variant-numeric:tabular-nums; cursor:pointer; transition:border-color .18s ease,background-color .18s ease,color .18s ease; }
.hc-page-corporate--service .hc-booking-times button:not(:disabled):hover { border-color:var(--service-ink); }
.hc-page-corporate--service .hc-booking-times button[aria-pressed="true"] { border-color:var(--service-ink); background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-booking-times button:disabled { color:#879398; background:#eef1f0; cursor:not-allowed; text-decoration:line-through; }
.hc-page-corporate--service .hc-booking-times p { color:var(--c-ink-3); font-size:13px; line-height:1.4; }
.hc-page-corporate--service .hc-booking-panel-foot { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:105px; margin-top:auto; padding:19px 30px; border-top:1px solid var(--service-rule); background:#fff; }
.hc-page-corporate--service .hc-booking-panel-foot p { max-width:25ch; color:var(--c-ink-2); font-size:13px; line-height:1.4; }
.hc-page-corporate--service .hc-booking-panel-foot button,
.hc-page-corporate--service .hc-booking-urgent button { display:inline-flex; min-height:50px; align-items:center; justify-content:space-between; gap:20px; padding:10px 17px; border:1px solid var(--c-accent); border-radius:6px; background:var(--c-accent); color:#fff; font-family:inherit; font-size:14px; font-weight:750; white-space:nowrap; cursor:pointer; transition:background-color .18s ease,transform .18s ease; }
.hc-page-corporate--service .hc-booking-panel-foot button:hover,
.hc-page-corporate--service .hc-booking-urgent button:hover { background:var(--c-accent-hover); }
.hc-page-corporate--service .hc-booking-panel-foot button:disabled { opacity:.5; cursor:not-allowed; }
.hc-page-corporate--service .hc-booking-panel-foot button span,
.hc-page-corporate--service .hc-booking-urgent button span { font-size:20px; font-weight:400; }
.hc-page-corporate--service .hc-booking-urgent { display:flex; align-items:center; justify-content:space-between; gap:36px; margin-top:20px; padding:26px 30px; border-left:4px solid var(--c-accent); background:var(--service-ink); color:#fff; }
.hc-page-corporate--service .hc-booking-urgent > div > span { display:block; color:#ef8291; font-size:11px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hc-page-corporate--service .hc-booking-urgent strong { display:block; margin-top:5px; font-size:27px; line-height:1.15; letter-spacing:-.03em; }
.hc-page-corporate--service .hc-booking-urgent p { max-width:70ch; margin-top:8px; color:#c8d2d4; font-size:13px; line-height:1.5; }
.hc-page-corporate--service .hc-booking-terms { margin-top:18px; color:var(--c-ink-3); font-size:12px; line-height:1.5; }
.hc-page-corporate--service .hc-booking-terms a { color:var(--c-accent-hover); }
.hc-page-corporate--service .hc-booking-dialog-summary { padding:15px 18px; border-left:3px solid var(--c-accent); background:var(--service-light); color:var(--service-ink); font-size:16px; font-weight:730; line-height:1.4; }
.hc-page-corporate--service .hc-booking-dialog .hc-service-quote-fields select { display:block; width:100%; min-height:50px; padding:10px 14px; border:1px solid #afbbbf; border-radius:6px; background:#fff; color:var(--service-ink); font-family:inherit; font-size:15px; }
.hc-page-corporate--service .hc-booking-dialog :is(button,input,textarea,select):focus-visible,
.hc-page-corporate--service .hc-service-booking button:focus-visible { outline:3px solid var(--c-focus); outline-offset:2px; }
@media (max-width:900px) { .hc-page-corporate--service .hc-booking-service-types { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) {
  .hc-page-corporate--service .hc-service-booking { padding:58px 0 64px; }
  .hc-page-corporate--service .hc-service-booking-head { grid-template-columns:1fr; gap:14px; margin-bottom:27px; }
  .hc-page-corporate--service .hc-service-booking-head > p { font-size:15px; }
  .hc-page-corporate--service .hc-booking-panel-head { min-height:0; padding:24px 20px 20px; }
  .hc-page-corporate--service .hc-booking-service-types { gap:8px; padding:0 20px 22px; }
  .hc-page-corporate--service .hc-booking-service-types button { min-height:68px; padding:12px; font-size:13px; }
  .hc-page-corporate--service .hc-booking-calendar { padding-inline:20px; }
  .hc-page-corporate--service .hc-booking-times-head { margin-inline:20px; }
  .hc-page-corporate--service .hc-booking-times { padding-inline:20px; }
  .hc-page-corporate--service .hc-booking-panel-foot { flex-wrap:wrap; padding:18px 20px; }
  .hc-page-corporate--service .hc-booking-panel-foot button { width:100%; }
  .hc-page-corporate--service .hc-booking-urgent { align-items:stretch; flex-direction:column; gap:20px; padding:24px 20px; }
  .hc-page-corporate--service .hc-booking-urgent button { justify-content:space-between; width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .hc-page-corporate--service .hc-service-booking :is(button,a) { transition:none !important; transform:none !important; }
  .hc-page-corporate--service .hc-service-stat,
  .hc-page-corporate--service .hc-service-stat::before,
  .hc-page-corporate--service .hc-service-stat :is(.hc-service-stat-visual,.hc-service-stat-detail) { transition:none !important; }
}

/* Motion follows Framer Motion's reveal/stagger principles in the site's native stack. */
@media (prefers-reduced-motion:no-preference) {
  .hc-page-corporate--service .hc-service-hero-copy { animation:service-hero-in .75s cubic-bezier(.2,.7,.2,1) both; }
  .hc-page-corporate--service .hc-service-hero-image { animation:service-photo-in 1.25s cubic-bezier(.2,.7,.2,1) both; }
  .hc-page-corporate--service.service-motion-ready [data-service-reveal]:not(.is-visible) { opacity:0; transform:translateY(22px); }
  .hc-page-corporate--service.service-motion-ready [data-service-reveal] { transition:opacity .58s cubic-bezier(.2,.7,.2,1),transform .58s cubic-bezier(.2,.7,.2,1); }
  .hc-page-corporate--service .hc-service-proof-graphic.is-visible .hc-service-unit-graphic i { animation:service-unit-in .48s cubic-bezier(.2,.7,.2,1) both; }
  .hc-page-corporate--service .hc-service-proof-graphic.is-visible .hc-service-unit-graphic i:nth-child(2) { animation-delay:.07s; }
  .hc-page-corporate--service .hc-service-proof-graphic.is-visible .hc-service-unit-graphic i:nth-child(3) { animation-delay:.14s; }
  .hc-page-corporate--service .hc-service-proof-graphic.is-visible .hc-service-unit-graphic i:nth-child(4) { animation-delay:.21s; }
  .hc-page-corporate--service .hc-service-proof-graphic.is-visible .hc-service-unit-graphic i:nth-child(5) { animation-delay:.28s; }
}
@keyframes service-hero-in { from { opacity:0; transform:translateY(23px); } to { opacity:1; transform:translateY(0); } }
@keyframes service-photo-in { from { opacity:.55; transform:scale(1.035); } to { opacity:1; transform:scale(1); } }
@keyframes service-unit-in { from { opacity:.2; transform:scaleY(.18); } to { opacity:1; transform:scaleY(1); } }

@media (max-width:1100px) {
  .hc-page-corporate--service .hc-service-contact-grid { grid-template-columns:minmax(0,1fr); gap:30px; }
  .hc-page-corporate--service .hc-service-hero-copy { width:min(670px,72%); }
  .hc-page-corporate--service .hc-service-stat { padding-inline:23px; }
  .hc-page-corporate--service .hc-service-stat-main { gap:12px; }
  .hc-page-corporate--service .hc-service-stat-main > span { font-size:16px; }
  .hc-page-corporate--service .hc-service-work-layout { gap:26px; }
  .hc-page-corporate--service .hc-maintenance-point { min-width:91px; flex-basis:91px; }
  .hc-page-corporate--service .hc-maintenance-scroll-hint { display:block; margin:8px 19px 0; color:var(--c-ink-3); font-size:12px; line-height:1.4; }
}
@media (max-width:767px) {
  .hc-page-corporate--service .hc-service-hero { padding:0 0 64px; }
  .hc-page-corporate--service .hc-service-hero > .hc-container { padding-inline:0; }
  .hc-page-corporate--service .hc-service-hero-frame { min-height:640px; align-items:end; }
  .hc-page-corporate--service .hc-service-hero-frame::after { background:linear-gradient(0deg,rgba(12,20,24,.99) 0%,rgba(12,20,24,.95) 31%,rgba(12,20,24,.52) 69%,rgba(12,20,24,.12) 100%); }
  .hc-page-corporate--service .hc-service-hero-image { object-position:64% 45%; }
  .hc-page-corporate--service .hc-service-hero-copy { width:100%; padding:90px 24px 77px; }
  .hc-page-corporate--service .hc-service-hero h1 { max-width:12ch; margin-top:20px; font-size:clamp(45px,10.6vw,56px); }
  .hc-page-corporate--service .hc-service-hero-copy > p { max-width:37ch; margin-top:20px; font-size:16px; }
  .hc-page-corporate--service .hc-service-hero-actions { gap:12px 24px; margin-top:25px; }
  .hc-page-corporate--service .hc-service-hero-actions .hc-button { width:100%; justify-content:space-between; }
  .hc-page-corporate--service .hc-service-photo-label { top:16px; right:16px; bottom:auto; max-width:220px; font-size:10px; }
  .hc-page-corporate--service .hc-service-proof { padding:0 0 72px; }
  .hc-page-corporate--service .hc-service-proof-head { grid-template-columns:1fr; gap:15px; margin-bottom:26px; }
  .hc-page-corporate--service .hc-service-proof-head h2,
  .hc-page-corporate--service .hc-service-section-heading h2,
  .hc-page-corporate--service .hc-service-request h2,
  .hc-page-corporate--service .hc-service-contact h2 { font-size:clamp(35px,9vw,44px); }
  .hc-page-corporate--service .hc-service-proof-head > p { font-size:16px; }
  .hc-page-corporate--service .hc-service-proof-graphic { min-height:0; grid-template-columns:1fr; }
  .hc-page-corporate--service .hc-service-stat { min-height:285px; padding:20px 23px 18px; border-right:0; border-bottom:1px solid rgba(255,255,255,.2); }
  .hc-page-corporate--service .hc-service-stat:last-child { border-bottom:0; }
  .hc-page-corporate--service .hc-service-stat-main { min-height:100px; gap:23px; margin-top:15px; }
  .hc-page-corporate--service .hc-service-stat-main strong { font-size:95px; }
  .hc-page-corporate--service .hc-service-stat-main > span { font-size:19px; }
  .hc-page-corporate--service .hc-service-unit-graphic { height:31px; }
  .hc-page-corporate--service .hc-service-unit-graphic i { width:25px; }
  .hc-page-corporate--service .hc-service-unit-graphic--three i { width:47px; height:27px; }
  .hc-page-corporate--service .hc-service-stat--time { min-height:285px; }
  .hc-page-corporate--service .hc-service-stat-time-copy { max-width:36ch; }
  .hc-page-corporate--service .hc-service-proof-source { grid-template-columns:1fr; gap:8px; padding-top:18px; font-size:13px; }
  .hc-page-corporate--service .hc-service-work { padding:72px 0 76px; }
  .hc-page-corporate--service .hc-service-section-heading { margin-bottom:30px; }
  .hc-page-corporate--service .hc-service-section-heading > p { font-size:16px; }
  .hc-page-corporate--service .hc-service-work-layout { grid-template-columns:minmax(0,1fr); gap:32px; }
  .hc-page-corporate--service .hc-service-work-list article { gap:10px; padding:21px 0; }
  .hc-page-corporate--service .hc-service-work-list h3 { font-size:21px; }
  .hc-page-corporate--service .hc-service-work-list p { font-size:14px; }
  .hc-page-corporate--service .hc-service-work-image,
  .hc-page-corporate--service .hc-service-work-image img { min-height:0; height:auto; aspect-ratio:1.16; }
  .hc-page-corporate--service .hc-service-work-image img { object-fit:cover; }
  .hc-page-corporate--service .hc-service-systems { grid-template-columns:1fr; margin-top:28px; }
  .hc-page-corporate--service .hc-service-systems-intro { gap:6px; padding:20px 23px; border-right:0; border-bottom:1px solid var(--service-rule); }
  .hc-page-corporate--service .hc-service-systems-intro strong br { display:none; }
  .hc-page-corporate--service .hc-service-systems ol { grid-template-columns:1fr; padding:9px 23px 14px 37px; }
  .hc-page-corporate--service .hc-service-systems ol::before { top:20px; right:auto; bottom:28px; left:42px; width:1px; height:auto; }
  .hc-page-corporate--service .hc-service-systems li { min-height:42px; padding:11px 0 9px 30px; text-align:left; }
  .hc-page-corporate--service .hc-service-systems li::before { top:17px; left:0; }
  .hc-page-corporate--service .hc-service-method { grid-template-columns:1fr; gap:22px; margin-top:38px; padding-top:32px; }
  .hc-page-corporate--service .hc-service-method h3 { font-size:30px; }
  .hc-page-corporate--service .hc-service-method-copy { padding-left:18px; }
  .hc-page-corporate--service .hc-service-method-copy p { font-size:15px; }
  .hc-page-corporate--service .hc-service-cases > div { grid-template-columns:1fr; gap:2px; padding:11px 0; }
  .hc-page-corporate--service .hc-maintenance { padding:72px 0 77px; }
  .hc-page-corporate--service .hc-maintenance-heading { grid-template-columns:1fr; gap:15px; margin-bottom:27px; }
  .hc-page-corporate--service .hc-maintenance-heading h2 { font-size:clamp(35px,9vw,44px); }
  .hc-page-corporate--service .hc-maintenance-heading > p { font-size:16px; }
  .hc-page-corporate--service .hc-maintenance-controls { grid-template-columns:1fr; gap:21px; padding:22px 18px 25px; }
  .hc-page-corporate--service .hc-maintenance-control select,
  .hc-page-corporate--service .hc-maintenance-control input { font-size:16px; }
  .hc-page-corporate--service .hc-maintenance-result { grid-template-columns:1fr; }
  .hc-page-corporate--service .hc-maintenance-result > div { min-height:171px; padding:22px 22px 24px; border-right:0; border-bottom:1px solid rgba(255,255,255,.19); }
  .hc-page-corporate--service .hc-maintenance-result > div:last-child { min-height:151px; border-bottom:0; }
  .hc-page-corporate--service .hc-maintenance-result strong { margin-top:12px; font-size:70px; }
  .hc-page-corporate--service .hc-maintenance-result > div:last-child strong { font-size:61px; }
  .hc-page-corporate--service .hc-maintenance-result p { margin-top:12px; font-size:13px; }
  .hc-page-corporate--service .hc-maintenance-timeline-heading { padding:29px 19px 15px; }
  .hc-page-corporate--service .hc-maintenance-timeline-heading h3 { font-size:20px; }
  .hc-page-corporate--service .hc-maintenance-timeline { margin:0 19px; }
  .hc-page-corporate--service .hc-maintenance-point { min-width:91px; flex-basis:91px; }
  .hc-page-corporate--service .hc-maintenance-detail { margin:28px 13px 0; padding:25px 17px 27px; }
  .hc-page-corporate--service .hc-maintenance-detail-head { flex-direction:column; gap:5px; }
  .hc-page-corporate--service .hc-maintenance-detail-head > strong { padding-top:0; }
  .hc-page-corporate--service .hc-maintenance-type-buttons { gap:7px; margin:21px 0; }
  .hc-page-corporate--service .hc-maintenance-type-buttons button { min-width:0; flex:1 1 86px; }
  .hc-page-corporate--service .hc-maintenance-materials ul { grid-template-columns:1fr; }
  .hc-page-corporate--service .hc-maintenance-estimate { grid-template-columns:1fr; gap:19px; margin-top:26px; padding:22px 20px; }
  .hc-page-corporate--service .hc-maintenance-estimate button { width:100%; }
  .hc-page-corporate--service .hc-maintenance-source { margin:18px 20px 26px; }
  .hc-page-corporate--service .hc-maintenance-unavailable { padding:36px 21px 42px; }
  .hc-page-corporate--service .hc-service-quote-dialog { width:calc(100% - 16px); max-height:calc(100dvh - 16px); }
  .hc-page-corporate--service .hc-service-quote-dialog .hc-modal-card { max-height:calc(100dvh - 16px); padding:24px 17px 28px; }
  .hc-page-corporate--service .hc-service-quote-summary { grid-template-columns:1fr 1fr; }
  .hc-page-corporate--service .hc-service-quote-summary > div { padding:12px 13px; }
  .hc-page-corporate--service .hc-service-quote-summary > div:nth-child(2) { border-right:0; }
  .hc-page-corporate--service .hc-service-quote-summary > div:nth-child(3) { grid-column:1/-1; border-top:1px solid var(--service-rule); }
  .hc-page-corporate--service .hc-service-quote-summary p { padding:10px 13px 13px; }
  .hc-page-corporate--service .hc-service-quote-fields { grid-template-columns:1fr; gap:14px; }
  .hc-page-corporate--service .hc-service-quote-actions { align-items:stretch; flex-direction:column; }
  .hc-page-corporate--service .hc-service-quote-actions button { width:100%; }
  .hc-page-corporate--service .hc-service-request { padding:72px 0 79px; }
  .hc-page-corporate--service .hc-service-request-head { margin-bottom:27px; }
  .hc-page-corporate--service .hc-service-request-steps { grid-template-columns:1fr; }
  .hc-page-corporate--service .hc-service-request-steps > div,
  .hc-page-corporate--service .hc-service-request-steps > div + div { min-height:0; padding:21px 0 26px; border-right:0; border-bottom:1px solid var(--service-rule); }
  .hc-page-corporate--service .hc-service-request-steps > div:last-child { border-bottom:0; }
  .hc-page-corporate--service .hc-service-request-steps span { margin-bottom:16px; }
  .hc-page-corporate--service .hc-service-request-steps h3 { font-size:21px; }
  .hc-page-corporate--service .hc-service-request-note { margin-top:24px; }
  .hc-page-corporate--service .hc-service-contact { padding:0 0 64px; }
  .hc-page-corporate--service .hc-service-contact > .hc-container { padding-inline:0; }
  .hc-page-corporate--service .hc-service-contact-grid { grid-template-columns:minmax(0,1fr); gap:30px; padding:42px 24px 48px; }
  .hc-page-corporate--service .hc-service-contact-grid > div:first-child > p { font-size:16px; }
  .hc-page-corporate--service .hc-service-contact-phone strong { font-size:26px; }
}
@media (prefers-reduced-motion:reduce) {
  .hc-page-corporate--service *,
  .hc-page-corporate--service *::before,
  .hc-page-corporate--service *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
