/* HANDPHONE HOME / 20260923-face1. Page-scoped; shared header and footer stay external. */
:root {
  --hp-home-header-height:60px;
  --hp-home-header-space:60px;
  --hp-home-dock-height:76px;
}
html { scroll-behavior:smooth; scroll-padding-top:calc(var(--hp-home-header-height) + 24px); }
body.hp-home {
  --home-navy:#102644; --home-blue:#165bdb; --home-ink:#102340;
  --home-muted:#617187; --home-line:#e1e7ef; --home-soft:#f3f6fa;
  margin:0; padding:0 0 var(--hp-home-dock-height); background:#fff; color:var(--home-ink);
  font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic","Apple SD Gothic Neo",sans-serif;
  line-height:1.7; word-break:keep-all; overflow-wrap:break-word;
  -webkit-font-smoothing:antialiased;
}
.hp-home #hp-home-main { padding-top:var(--hp-home-header-space); outline:none; }
.hp-home #hp-home-main *, .hp-home .hp-dock *, .hp-home .hp-skip { box-sizing:border-box; }
.hp-home #hp-home-main [hidden], .hp-home .hp-dock [hidden] { display:none!important; }
.hp-home #hp-home-main a, .hp-home .hp-dock a { text-decoration:none; color:inherit; }
.hp-home #hp-home-main button, .hp-home #hp-home-main input, .hp-home #hp-home-main select { font:inherit; }
.hp-home #hp-home-main img { max-width:100%; }
.hp-home #hp-home-main h1, .hp-home #hp-home-main h2, .hp-home #hp-home-main h3 { font-family:inherit; font-weight:800; letter-spacing:-.045em; text-wrap:balance; }
.hp-home #hp-home-main h2 { margin:0; font-size:clamp(29px,3.05vw,40px); line-height:1.37; color:var(--home-ink); }
.hp-home #hp-home-main h3 { margin:0; color:var(--home-ink); }
.hp-home #hp-home-main :focus-visible, .hp-home .hp-dock :focus-visible { outline:3px solid #2380f0; outline-offset:5px; }
.hp-home .hp-skip { position:fixed; top:-90px; left:18px; z-index:10020; padding:13px 21px; background:#fff; color:#123665; border-radius:8px; text-decoration:none; }
.hp-home .hp-skip:focus { top:10px; }
.hp-home .hp-wrap { width:min(1280px,calc(100% - 64px)); margin-inline:auto; }
.hp-home .hp-svg { width:22px; height:22px; display:inline-block; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.hp-home .hp-section { padding:78px 0; }
.hp-home .hp-kicker { color:var(--home-blue); font-size:11px; font-weight:750; letter-spacing:.14em; margin:0 0 13px; line-height:1.6; }
.hp-home .hp-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:31px; }
.hp-home .hp-section-heading>p { margin:0 0 3px; color:var(--home-muted); font-size:15px; line-height:1.8; }
.hp-home .hp-more-link { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; color:#2356a1!important; font-size:14px; font-weight:700; white-space:nowrap; }
.hp-home .hp-more-link:hover { color:var(--home-blue)!important; }
.hp-home .hp-more-link .hp-svg { width:19px; height:19px; }
.hp-home .hp-mobile-br { display:none; }

/* Brand hero: a single photographic scene, never a product display. */
.hp-home .hp-brand-hero { position:relative; isolation:isolate; overflow:hidden; background:#0c2440; color:#fff; min-height:640px; display:flex; align-items:center; }
.hp-home .hp-hero-picture { position:absolute; inset:0; z-index:-3; display:block; width:100%; height:100%; pointer-events:none; }
.hp-home .hp-hero-picture img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 42%; }
.hp-home .hp-brand-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(6,24,49,.45),rgba(6,24,49,.31) 57%,rgba(6,24,49,.12)),linear-gradient(0deg,rgba(6,24,49,.90) 0%,rgba(6,24,49,.13) 40%,rgba(6,24,49,.22) 100%); }
.hp-home .hp-hero-content { text-align:center; position:relative; padding:65px 0 100px; }
.hp-home .hp-hero-kicker { display:flex; align-items:center; justify-content:center; gap:15px; margin:0 0 24px; font-size:11px; font-weight:650; letter-spacing:.19em; color:#e4f1ff; }
.hp-home .hp-hero-kicker>span { width:26px; height:1px; background:#c2d9f3; opacity:.8; }
.hp-home #hp-home-main .hp-brand-hero h1 { font-size:clamp(42px,4.4vw,68px); line-height:1.25; letter-spacing:-.045em; margin:0 0 22px; color:#fff; text-shadow:0 3px 22px rgba(0,15,40,.22); font-weight:800; }
.hp-home .hp-brand-hero h1 span { color:#fff; }
.hp-home .hp-hero-lead { font-size:17px; font-weight:500; line-height:1.85; color:#e7f0fa; margin:0 auto 29px; }
.hp-home .hp-hero-actions { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.hp-home .hp-button { display:inline-flex; justify-content:center; align-items:center; gap:26px; min-height:54px; border:1px solid transparent; border-radius:8px; padding:14px 25px; font-size:15px; font-weight:750; cursor:pointer; transition:background .2s,transform .2s; }
.hp-home #hp-home-main .hp-button-light { background:#fff; color:#103770; border-color:#fff; }
.hp-home #hp-home-main .hp-button-light:hover { background:#eaf2ff; border-color:#eaf2ff; transform:translateY(-2px); }
.hp-home #hp-home-main .hp-button-glass { background:rgba(7,30,60,.19); color:#fff; border-color:rgba(255,255,255,.63); }
.hp-home #hp-home-main .hp-button-glass:hover { background:rgba(255,255,255,.13); transform:translateY(-2px); }
.hp-home .hp-button .hp-svg { width:19px; height:19px; }
.hp-home .hp-hero-footnote { margin:20px 0 0; color:#d0dfef; font-size:12px; }
.hp-home .hp-hero-bottom { position:absolute; bottom:54px; left:0; right:0; display:flex; justify-content:center; gap:30px; font-size:10px; letter-spacing:.16em; color:#c8d5e5; }
.hp-home .hp-hero-bottom span+span { border-left:1px solid #ffffff40; padding-left:30px; }
.hp-home .hp-service-shortcuts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); position:relative; z-index:2; margin-top:-28px; padding:12px 0; border:1px solid #e5eaf1; background:#fff; border-radius:14px; box-shadow:0 12px 32px #1734520d; }
.hp-home .hp-service-shortcuts>a { display:flex; align-items:center; justify-content:center; gap:12px; min-height:58px; font-size:14px; font-weight:750; color:#163a69!important; padding:12px 15px; white-space:nowrap; }
.hp-home .hp-service-shortcuts>a+a { border-left:1px solid #e7edf4; }
.hp-home .hp-service-shortcuts .hp-svg { color:#256dd0; }
.hp-home .hp-service-shortcuts .hp-quick-arrow { width:16px; height:16px; color:#8093ab; }
.hp-home .hp-service-shortcuts>a:hover { color:var(--home-blue)!important; background:#f5f9ff; }

/* Five service cards: 3 + 2, with distinct use-environment photography. */
.hp-home .hp-services { padding-top:66px; }
.hp-home .hp-services-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:24px; }
.hp-home .hp-service-card { grid-column:span 2; border:1px solid var(--home-line); border-radius:17px; overflow:hidden; background:#fff; display:flex; flex-direction:column; min-width:0; scroll-margin-top:calc(var(--hp-home-header-height) + 24px); transition:transform .22s,box-shadow .22s,border-color .22s; }
.hp-home .hp-service-internet, .hp-home .hp-service-telephone { grid-column:span 3; }
.hp-home .hp-service-card:hover { transform:translateY(-4px); box-shadow:0 16px 32px #173c6610; border-color:#bed0e7; }
.hp-home .hp-service-main { display:flex; flex-direction:column; flex:1; }
.hp-home .hp-service-photo { position:relative; aspect-ratio:1.78; overflow:hidden; background:#e1e8ee; }
.hp-home .hp-service-photo img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s; }
.hp-home .hp-service-card:hover .hp-service-photo img { transform:scale(1.025); }
.hp-home .hp-service-internet .hp-service-photo, .hp-home .hp-service-telephone .hp-service-photo { aspect-ratio:2.7; }
.hp-home .hp-service-internet .hp-service-photo img { object-position:65% 35%; }
.hp-home .hp-service-telephone .hp-service-photo img { object-position:62% 30%; }
.hp-home .hp-photo-label { position:absolute; left:18px; top:16px; display:inline-flex; padding:6px 11px; border:1px solid #ffffff2e; border-radius:5px; font-size:11px; line-height:1.5; color:#fff; background:rgba(11,31,56,.82); font-weight:650; backdrop-filter:blur(8px); }
.hp-home .hp-service-copy { padding:23px 25px 19px; display:flex; flex-direction:column; flex:1; }
.hp-home #hp-home-main .hp-service-copy h3 { font-size:23px; line-height:1.4; margin:0 0 9px; }
.hp-home .hp-service-copy>p { font-size:15px; color:#5b6e85; margin:0 0 13px; line-height:1.75; }
.hp-home .hp-service-fit { display:block; color:#6a7c91; font-size:12px; margin:0 0 18px; }
.hp-home .hp-card-link { display:flex; align-items:center; gap:12px; justify-content:space-between; color:#195cb9; font-size:14px; font-weight:750; margin-top:auto; }
.hp-home .hp-card-link .hp-svg { width:20px; height:20px; }
.hp-home .hp-card-bottom { border-top:1px solid #e8edf4; background:#fbfcfe; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 25px; min-height:53px; }
.hp-home .hp-card-bottom>a { display:inline-flex; align-items:center; min-height:36px; font-size:12px; color:#526c8b!important; }
.hp-home .hp-card-bottom>a:last-child { color:#164880!important; font-size:13px; font-weight:700; gap:6px; }
.hp-home .hp-card-bottom .hp-svg { width:15px; height:15px; }
.hp-home .hp-card-bottom>a:hover { text-decoration:underline!important; }
.hp-home .hp-service-guide { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 24px; border:1px solid #dce7f6; border-radius:10px; background:#f1f6fe; margin-top:24px; font-size:14px; color:#45617e; }
.hp-home .hp-service-guide>span { display:flex; align-items:center; gap:10px; }
.hp-home .hp-service-guide>a { display:inline-flex; align-items:center; gap:18px; font-weight:700; color:#164fa1!important; min-height:38px; }
.hp-home .hp-photo-note { margin:13px 0 0; color:#718296; font-size:11px; text-align:right; }

/* Actual installation destinations, not fabricated case studies. */
.hp-home .hp-environments { background:#f4f6f9; }
.hp-home .hp-scenes-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:21px; }
.hp-home .hp-scene { display:block; background:#fff; border-radius:13px; overflow:hidden; border:1px solid #e2e8ef; min-width:0; transition:transform .2s,box-shadow .2s; }
.hp-home .hp-scene:hover { transform:translateY(-3px); box-shadow:0 12px 24px #1e467610; }
.hp-home .hp-scene-photo { aspect-ratio:1.58; overflow:hidden; }
.hp-home .hp-scene-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.hp-home .hp-scene-copy { padding:18px 19px 20px; position:relative; }
.hp-home .hp-scene-copy>span:first-child { font-size:10px; letter-spacing:.02em; color:#3470b6; font-weight:650; }
.hp-home #hp-home-main .hp-scene-copy h3 { font-size:19px; margin:7px 0; line-height:1.45; }
.hp-home .hp-scene-copy>p { margin:0 16px 0 0; font-size:12px; color:#63748a; line-height:1.8; }
.hp-home .hp-scene-arrow { position:absolute; right:17px; bottom:23px; color:#6288b4; }
.hp-home .hp-scene-arrow .hp-svg { width:17px; height:17px; }
.hp-home .hp-environment-help { display:flex; justify-content:center; align-items:center; gap:25px; font-size:13px; margin-top:25px; color:#63758c; }
.hp-home .hp-environment-help>a { display:flex; align-items:center; gap:10px; color:#225ea6!important; font-weight:700; min-height:38px; }
.hp-home .hp-environment-help .hp-svg { width:18px; height:18px; }

/* Six distinct content roots; checklist is an operational troubleshooting hub. */
.hp-home .hp-knowledge { background:#fff; }
.hp-home .hp-hub-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; }
.hp-home .hp-hub-card { background:#fff; border:1px solid #dce5ef; border-radius:14px; min-width:0; display:flex; flex-direction:column; transition:border-color .2s,box-shadow .2s; }
.hp-home .hp-hub-card:hover { border-color:#a8c5ea; box-shadow:0 10px 24px #1f48760b; }
.hp-home .hp-hub-main { display:block; padding:23px 24px 19px; flex:1; }
.hp-home .hp-hub-top { display:flex; align-items:center; gap:12px; margin-bottom:17px; }
.hp-home .hp-hub-top>span:nth-child(2) { font-size:10px; font-weight:650; letter-spacing:.13em; color:#6b8098; }
.hp-home .hp-hub-top>.hp-svg { width:17px; height:17px; color:#7893b3; margin-left:auto; }
.hp-home .hp-hub-icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; color:#2364c2; border-radius:11px; background:#eef4fc; }
.hp-home .hp-hub-icon .hp-svg { width:23px; height:23px; }
.hp-home #hp-home-main .hp-hub-main h3 { font-size:21px; line-height:1.45; margin:0 0 8px; }
.hp-home .hp-hub-main>p { font-size:14px; color:#677a91; margin:0; line-height:1.8; }
.hp-home .hp-hub-topics { display:grid; grid-template-columns:1fr 1fr; padding:0 24px 18px; gap:9px; }
.hp-home .hp-hub-topics>a { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #e5ecf4; padding-top:11px; min-height:36px; font-size:11px; color:#3e638e!important; font-weight:600; gap:6px; }
.hp-home .hp-hub-topics>a:hover { color:#165bdb!important; text-decoration:underline!important; }
.hp-home .hp-check-help { margin-top:23px; padding:22px 25px; display:flex; gap:17px; align-items:center; border:1px solid #cddff6; border-radius:12px; background:#f0f6ff; }
.hp-home .hp-check-help-icon { width:44px; height:44px; border-radius:50%; display:flex; justify-content:center; align-items:center; color:#1c61bb; background:#e0edff; }
.hp-home .hp-check-help strong { font-size:15px; color:#214979; }
.hp-home .hp-check-help p { margin:4px 0 0; font-size:13px; color:#647c97; }
.hp-home .hp-check-help>a { margin-left:auto; display:flex; align-items:center; gap:17px; font-size:13px; font-weight:700; color:#165bb1!important; white-space:nowrap; min-height:40px; }

/* Compressed decision guidance, without fictional testimonials or statistics. */
.hp-home .hp-promise { border-top:1px solid #e5ebf2; border-bottom:1px solid #e5ebf2; background:#f8fafc; padding:62px 0; }
.hp-home .hp-promise-layout { display:grid; grid-template-columns:1.02fr 1fr; gap:70px; align-items:center; }
.hp-home #hp-home-main .hp-promise h2 { font-size:clamp(28px,2.6vw,35px); }
.hp-home .hp-promise-intro { font-size:14px; line-height:1.9; color:#6b7b91; margin:18px 0 0; }
.hp-home .hp-promise-steps article { display:flex; align-items:flex-start; gap:18px; padding:19px 0; border-bottom:1px solid #dfe6ef; }
.hp-home .hp-promise-steps article:first-child { padding-top:0; }
.hp-home .hp-promise-steps article:last-child { border-bottom:0; padding-bottom:0; }
.hp-home .hp-promise-steps article>span { font-size:11px; font-weight:750; color:#3879c9; padding-top:5px; }
.hp-home #hp-home-main .hp-promise-steps h3 { font-size:17px; line-height:1.5; font-weight:750; }
.hp-home .hp-promise-steps p { margin:5px 0 0; font-size:13px; color:#6b7c91; }

/* Native details remain readable with JavaScript disabled. */
.hp-home .hp-faq-layout { display:grid; grid-template-columns:.9fr 1.4fr; gap:85px; }
.hp-home .hp-faq-intro { color:#6c7c91; font-size:15px; line-height:1.9; margin:20px 0; }
.hp-home .hp-faq details { border-bottom:1px solid #dfe7f0; }
.hp-home .hp-faq details:first-child { border-top:1px solid #dfe7f0; }
.hp-home .hp-faq summary { position:relative; list-style:none; padding:21px 31px 21px 0; font-size:15px; font-weight:650; cursor:pointer; line-height:1.7; color:#223e60; }
.hp-home .hp-faq summary::-webkit-details-marker { display:none; }
.hp-home .hp-faq summary::after { content:"+"; position:absolute; right:1px; top:18px; font-size:23px; font-weight:400; color:#3470bd; }
.hp-home .hp-faq details[open] summary::after { content:"-"; }
.hp-home .hp-faq details[open] summary { color:#1556aa; }
.hp-home .hp-faq details>p { font-size:14px; color:#61758e; margin:0; padding:0 24px 23px 0; line-height:1.9; }

/* Shared GUIDE/INSTALL/CHECKLIST application palette. Native CRM contract unchanged. */
.hp-home .hp-consult-section { background:#102644; color:#fff; padding:72px 0; }
.hp-home .hp-consult-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:80px; align-items:start; }
.hp-home .hp-consult-copy { padding-top:13px; }
.hp-home .hp-consult-copy .hp-kicker { color:#9acbff; }
.hp-home #hp-home-main .hp-consult-copy h2 { color:#fff; font-size:clamp(32px,3vw,42px); line-height:1.4; }
.hp-home .hp-consult-copy h2 span { color:#b6d8ff; }
.hp-home .hp-consult-copy>p:not(.hp-kicker) { margin:20px 0 0; font-size:15px; color:#c1d1e5; line-height:1.9; }
.hp-home #hp-home-main .hp-contact-number { display:inline-block; color:#fff; font-size:39px; line-height:1.5; font-weight:800; letter-spacing:-.025em; margin-top:24px; }
.hp-home .hp-consult-copy>.hp-hours { margin-top:2px!important; font-size:12px!important; color:#adc2da!important; }
.hp-home .hp-consult-points { margin-top:25px; display:grid; gap:8px; font-size:13px; color:#c6d8ee; }
.hp-home .hp-consult-points>span { display:flex; align-items:center; gap:8px; }
.hp-home .hp-consult-points .hp-svg { width:16px; height:16px; color:#a2caff; }
.hp-home #hp-home-main .hp-consult-reference { display:inline-flex; align-items:center; gap:19px; border-top:1px solid #38506d; color:#c8dcf5; font-size:12px; font-weight:650; margin-top:27px; padding-top:18px; min-height:44px; }
.hp-home .hp-consult-reference .hp-svg { width:18px; height:18px; }
.hp-home .hp-form { margin:0; padding:29px 31px 26px; background:#fff; border:1px solid #e3eaf2; color:#152943; border-radius:15px; box-shadow:0 18px 40px #00000012; }
.hp-home .hp-form-heading { margin-bottom:23px; padding-bottom:18px; border-bottom:1px solid #e6edf5; }
.hp-home .hp-form-heading>span { font-size:9px; color:#4774ad; letter-spacing:.15em; font-weight:750; }
.hp-home #hp-home-main .hp-form-heading h3 { font-size:23px; line-height:1.5; margin:5px 0 3px; }
.hp-home .hp-form-heading>p { font-size:12px; color:#70829a; margin:0; }
.hp-home .hp-form label, .hp-home .hp-form legend { display:block; margin:0 0 7px; font-size:13px; font-weight:700; color:#233d5d; }
.hp-home .hp-form small { font-size:11px; color:#798ca3; font-weight:400; margin-left:5px; }
.hp-home .hp-form input:not([type="hidden"]), .hp-home .hp-form select { width:100%; min-width:0; min-height:50px; border:1px solid #cfd9e6; padding:11px 12px; border-radius:6px; background:#fff; color:#1b314d; font-size:16px; line-height:1.5; box-shadow:none; }
.hp-home .hp-form input:focus, .hp-home .hp-form select:focus { outline:3px solid #2267e329!important; outline-offset:0!important; border-color:#2669db; }
.hp-home .hp-form input::placeholder { font-size:14px; color:#8997a9; }
.hp-home .hp-form fieldset { min-width:0; margin:0; padding:0; border:0; }
.hp-home .hp-form-row { display:grid; grid-template-columns:1fr 1.3fr; gap:15px; margin-top:17px; }
.hp-home .hp-phone-parts { display:grid; grid-template-columns:1fr 1fr 1fr; gap:5px; }
.hp-home .hp-phone-parts legend { grid-column:1/-1; }
.hp-home .hp-phone-parts input, .hp-home .hp-phone-parts select { padding-inline:7px; }
.hp-home .hp-form-note { font-size:11px; color:#6c7f96; margin:18px 0; line-height:1.9; }
.hp-home .hp-form .hp-btn { border:0; background:#1558d6; border-radius:7px; color:#fff; width:100%; min-height:54px; padding:13px 20px; font-size:15px; font-weight:750; cursor:pointer; transition:background .2s; }
.hp-home .hp-form .hp-btn:hover { background:#1049b6; }
.hp-home .hp-form .hp-btn:disabled { opacity:.65; cursor:wait; }
.hp-home .hp-form-status { margin:11px 0 0; text-align:center; color:#70839a; font-size:11px; line-height:1.7; }
.hp-home .hp-form-error { color:#b12334; font-size:13px; margin:0 0 13px; }
.hp-home .hp-focus-ring { animation:hp-home-focus 1.7s ease; }
@keyframes hp-home-focus { 0%,100% { box-shadow:0 0 0 3px #2267e329; } 40% { box-shadow:0 0 0 7px #2267e345; } }

/* Shared footer retained; no app-install promotion on this home page. */
.hp-home #footer .footer-top { padding-top:35px; padding-bottom:25px; }
.hp-home #footer .footer-bottom { padding-top:16px; padding-bottom:16px; }
.hp-home .app-premium-section { display:none!important; }

/* Consistent white dock, pale-blue call, blue application. */
.hp-home .hp-dock { position:fixed; bottom:0; left:0; right:0; z-index:995; padding:12px 24px calc(12px + env(safe-area-inset-bottom,0px)); background:rgba(255,255,255,.97); border-top:1px solid #d9e3f0; box-shadow:0 -7px 26px #162b4910; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
.hp-home .hp-dock-inner { width:min(1280px,100%); margin:auto; display:flex; align-items:center; gap:10px; }
.hp-home .hp-dock-copy { margin-right:auto; padding-right:18px; }
.hp-home .hp-dock-copy strong { display:block; font-size:13px; font-weight:750; color:#102340; }
.hp-home .hp-dock-copy span { display:block; font-size:10px; color:#62768e; margin-top:4px; }
.hp-home .hp-dock a { display:flex; align-items:center; justify-content:center; gap:18px; min-height:48px; border-radius:7px; padding:11px 28px; font-size:14px; font-weight:700; white-space:nowrap; line-height:1.5; }
.hp-home .hp-dock a.hp-dock-call { background:#edf3ff; color:#174584; border:1px solid #cddcf4; min-width:150px; }
.hp-home .hp-dock a.hp-dock-apply { background:#165bdb; color:#fff; border:1px solid #165bdb; min-width:210px; }
.hp-home .hp-dock .hp-svg { width:18px; height:18px; }
.hp-home .hp-dock a:hover { filter:brightness(.96); }
.hp-home .hp-dock.is-away { visibility:hidden; pointer-events:none; }

@media(min-width:1680px) {
 .hp-home .hp-brand-hero { min-height:680px; }
 .hp-home .hp-hero-content { padding-top:78px; padding-bottom:113px; }
}
@media(max-width:1199px) {
 :root { --hp-home-header-height:52px; --hp-home-header-space:52px; }
 .hp-home .hp-brand-hero { min-height:590px; }
 .hp-home .hp-service-shortcuts>a { gap:9px; font-size:13px; padding-inline:10px; }
 .hp-home .hp-quick-arrow { display:none; }
 .hp-home .hp-service-copy { padding-inline:21px; }
 .hp-home .hp-card-bottom { padding-inline:20px; }
 .hp-home .hp-scene-copy { padding-inline:16px; }
 .hp-home #hp-home-main .hp-scene-copy h3 { font-size:17px; }
 .hp-home .hp-consult-grid { gap:48px; }
 .hp-home .hp-faq-layout { gap:48px; }
 .hp-home .hp-promise-layout { gap:45px; }
}
@media(min-width:768px) and (max-width:1023px) {
 .hp-home .hp-wrap { width:calc(100% - 48px); }
 .hp-home .hp-section { padding:60px 0; }
 .hp-home .hp-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .hp-home .hp-service-card { grid-column:span 1; }
 .hp-home .hp-service-personal { grid-column:span 2; }
 .hp-home .hp-service-personal .hp-service-main { display:grid; grid-template-columns:.95fr 1.2fr; }
 .hp-home .hp-service-personal .hp-service-photo { aspect-ratio:auto; min-height:245px; }
 .hp-home .hp-service-internet .hp-service-photo, .hp-home .hp-service-telephone .hp-service-photo { aspect-ratio:1.78; }
 .hp-home .hp-scenes-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .hp-home .hp-scene-photo { aspect-ratio:1.9; }
 .hp-home .hp-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .hp-home .hp-hub-main { padding:21px; }
 .hp-home .hp-hub-topics { padding-inline:21px; }
 .hp-home .hp-section-heading { gap:22px; }
 .hp-home .hp-section-heading>p { max-width:270px; font-size:13px; }
 .hp-home .hp-consult-grid { grid-template-columns:.85fr 1.15fr; gap:28px; }
 .hp-home .hp-form { padding:25px 22px; }
 .hp-home .hp-form-row { grid-template-columns:1fr; }
 .hp-home .hp-faq-layout { grid-template-columns:.8fr 1.3fr; gap:30px; }
 .hp-home .hp-promise-layout { gap:32px; }
 .hp-home #hp-home-main .hp-promise-steps h3 { font-size:16px; }
 .hp-home .hp-promise-steps p { font-size:12px; }
 .hp-home .hp-dock-copy strong { font-size:12px; }
 .hp-home .hp-dock a { padding-inline:19px; }
 .hp-home .hp-dock a.hp-dock-apply { min-width:175px; }
}
@media(max-width:767px) {
 :root { --hp-home-dock-height:70px; }
 .hp-home .hp-wrap { width:calc(100% - 40px); }
 .hp-home .hp-section { padding:45px 0; }
 .hp-home .hp-mobile-br { display:block; }
 .hp-home #hp-home-main h2 { font-size:28px; letter-spacing:-.05em; }
 .hp-home .hp-kicker { font-size:9px; margin-bottom:10px; letter-spacing:.14em; }
 .hp-home .hp-section-heading { display:block; margin-bottom:23px; }
 .hp-home .hp-section-heading>p { margin:12px 0 0; font-size:13px; line-height:1.8; }
 .hp-home .hp-section-heading>p br { display:none; }
 .hp-home .hp-section-heading>.hp-more-link { margin-top:10px; font-size:12px; min-height:32px; gap:15px; }
 .hp-home .hp-brand-hero { min-height:580px; min-height:clamp(540px,76svh,660px); align-items:flex-start; }
 .hp-home .hp-hero-picture img { object-position:50% 44%; }
 .hp-home .hp-brand-hero::before { background:linear-gradient(180deg,rgba(6,24,49,.58),rgba(6,24,49,.42) 43%,rgba(6,24,49,.29) 69%,rgba(6,24,49,.82)),linear-gradient(90deg,rgba(6,24,49,.10),transparent); }
 .hp-home .hp-hero-content { padding:49px 0 80px; }
 .hp-home .hp-hero-kicker { font-size:8px; gap:10px; letter-spacing:.13em; margin-bottom:21px; }
 .hp-home .hp-hero-kicker>span { width:17px; }
 .hp-home #hp-home-main .hp-brand-hero h1 { font-size:clamp(30px,7.2vw,43px); line-height:1.38; margin-bottom:18px; letter-spacing:-.055em; }
 .hp-home .hp-hero-lead { font-size:13px; line-height:1.9; max-width:350px; margin-bottom:25px; }
 .hp-home .hp-hero-actions { gap:9px; flex-wrap:nowrap; }
 .hp-home .hp-button { flex:1; min-height:48px; padding:12px 13px; font-size:13px; gap:12px; border-radius:7px; }
 .hp-home .hp-button .hp-svg { width:17px; height:17px; }
 .hp-home .hp-hero-footnote { font-size:10px; margin-top:16px; line-height:1.8; }
 .hp-home .hp-hero-bottom { bottom:37px; gap:14px; font-size:7px; letter-spacing:.09em; white-space:nowrap; }
 .hp-home .hp-hero-bottom span+span { padding-left:14px; }
 .hp-home .hp-service-shortcuts { display:flex; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x proximity; padding:7px 0; margin-top:-17px; border-radius:11px; scrollbar-width:thin; }
 .hp-home .hp-service-shortcuts>a { flex:0 0 auto; gap:8px; min-height:47px; padding:9px 15px; font-size:12px; scroll-snap-align:start; }
 .hp-home .hp-service-shortcuts .hp-svg { width:20px; height:20px; }
 .hp-home .hp-services { padding-top:37px; }
 .hp-home .hp-services-grid { grid-template-columns:1fr; gap:16px; }
 .hp-home .hp-service-card { grid-column:1; border-radius:12px; }
 .hp-home .hp-service-main { display:grid; grid-template-columns:37% minmax(0,1fr); }
 .hp-home .hp-service-photo, .hp-home .hp-service-internet .hp-service-photo, .hp-home .hp-service-telephone .hp-service-photo { aspect-ratio:auto; min-height:204px; height:100%; }
 .hp-home .hp-service-photo img { position:absolute; inset:0; object-fit:cover; object-position:60% 50%; }
 .hp-home .hp-service-business .hp-service-photo img { object-position:65% 50%; }
 .hp-home .hp-service-internet .hp-service-photo img { object-position:62% 44%; }
 .hp-home .hp-service-telephone .hp-service-photo img { object-position:68% 42%; }
 .hp-home .hp-photo-label { inset:auto 6px 8px; font-size:9px; line-height:1.6; text-align:center; justify-content:center; padding:5px 3px; border-radius:4px; backdrop-filter:none; }
 .hp-home .hp-service-copy { padding:19px 15px 16px; }
 .hp-home #hp-home-main .hp-service-copy h3 { font-size:19px; line-height:1.45; margin-bottom:9px; text-wrap:initial; }
 .hp-home .hp-service-copy>p { font-size:13px; line-height:1.75; margin-bottom:13px; }
 .hp-home .hp-service-fit { display:none; }
 .hp-home .hp-card-link { font-size:12px; gap:8px; }
 .hp-home .hp-card-link .hp-svg { width:16px; height:16px; }
 .hp-home .hp-card-bottom { min-height:46px; padding:4px 15px; }
 .hp-home .hp-card-bottom>a { font-size:11px; }
 .hp-home .hp-card-bottom>a:last-child { font-size:12px; }
 .hp-home .hp-service-guide { padding:15px 17px; display:block; font-size:12px; margin-top:20px; }
 .hp-home .hp-service-guide>span { gap:8px; }
 .hp-home .hp-service-guide>span .hp-svg { width:18px; height:18px; }
 .hp-home .hp-service-guide>a { margin:8px 0 0 26px; font-size:12px; min-height:28px; }
 .hp-home .hp-photo-note { font-size:9px; text-align:left; line-height:1.8; }
 .hp-home .hp-scenes-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
 .hp-home .hp-scene { border-radius:10px; }
 .hp-home .hp-scene-photo { aspect-ratio:1.35; }
 .hp-home .hp-scene-copy { padding:13px 12px 16px; }
 .hp-home .hp-scene-copy>span:first-child { font-size:9px; }
 .hp-home #hp-home-main .hp-scene-copy h3 { font-size:16px; line-height:1.45; margin:6px 0; text-wrap:initial; }
 .hp-home .hp-scene-copy>p { font-size:11px; margin:0; line-height:1.7; }
 .hp-home .hp-scene-arrow { display:none; }
 .hp-home .hp-environment-help { display:block; margin-top:20px; font-size:11px; }
 .hp-home .hp-environment-help>a { font-size:12px; margin-top:3px; min-height:30px; gap:13px; }
 .hp-home .hp-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
 .hp-home .hp-hub-card { border-radius:11px; }
 .hp-home .hp-hub-main { padding:18px 14px 16px; }
 .hp-home .hp-hub-top { gap:8px; margin-bottom:14px; }
 .hp-home .hp-hub-top>span:nth-child(2) { font-size:7px; letter-spacing:.1em; }
 .hp-home .hp-hub-top>.hp-svg { display:none; }
 .hp-home .hp-hub-icon { width:31px; height:31px; border-radius:8px; }
 .hp-home .hp-hub-icon .hp-svg { width:19px; height:19px; }
 .hp-home #hp-home-main .hp-hub-main h3 { font-size:17px; line-height:1.5; margin-bottom:8px; text-wrap:initial; }
 .hp-home .hp-hub-main>p { font-size:12px; line-height:1.8; }
 .hp-home .hp-hub-topics { display:grid; grid-template-columns:1fr; padding:0 14px 13px; gap:0; }
 .hp-home .hp-hub-topics>a { font-size:10px; min-height:33px; padding-top:7px; margin-top:2px; }
 .hp-home .hp-check-help { display:grid; grid-template-columns:1fr; padding:17px 18px; gap:0; margin-top:17px; }
 .hp-home .hp-check-help-icon { display:none; }
 .hp-home .hp-check-help strong { font-size:14px; }
 .hp-home .hp-check-help p { font-size:12px; line-height:1.8; }
 .hp-home .hp-check-help>a { margin:9px 0 0; justify-self:start; min-height:29px; font-size:12px; }
 .hp-home .hp-promise-layout { grid-template-columns:1fr; gap:26px; }
 .hp-home #hp-home-main .hp-promise h2 { font-size:27px; }
 .hp-home .hp-promise-intro { font-size:13px; margin-top:13px; }
 .hp-home .hp-promise-steps article { padding:16px 0; gap:15px; }
 .hp-home #hp-home-main .hp-promise-steps h3 { font-size:15px; }
 .hp-home .hp-promise-steps p { font-size:12px; margin-top:4px; }
 .hp-home .hp-faq-layout { grid-template-columns:1fr; gap:22px; }
 .hp-home .hp-faq-intro { font-size:13px; margin:13px 0 6px; }
 .hp-home .hp-faq-layout>.hp-more-link { font-size:13px; }
 .hp-home .hp-faq summary { padding:18px 28px 18px 0; font-size:14px; }
 .hp-home .hp-faq summary::after { top:15px; }
 .hp-home .hp-faq details>p { font-size:13px; padding-right:6px; padding-bottom:20px; }
 .hp-home .hp-consult-grid { grid-template-columns:1fr; gap:26px; }
 .hp-home .hp-consult-copy { padding-top:0; }
 .hp-home #hp-home-main .hp-consult-copy h2 { font-size:31px; }
 .hp-home .hp-consult-copy>p:not(.hp-kicker) { font-size:13px; margin-top:13px; }
 .hp-home #hp-home-main .hp-contact-number { font-size:32px; margin-top:15px; }
 .hp-home .hp-consult-copy>.hp-hours { font-size:11px!important; }
 .hp-home .hp-consult-points, .hp-home #hp-home-main .hp-consult-reference { display:none; }
 .hp-home .hp-form { padding:23px 21px; border-radius:12px; }
 .hp-home .hp-form-heading { margin-bottom:19px; padding-bottom:16px; }
 .hp-home #hp-home-main .hp-form-heading h3 { font-size:22px; }
 .hp-home .hp-form-row { grid-template-columns:1fr; gap:15px; }
 .hp-home .hp-form-note { font-size:10px; margin:17px 0; }
 .hp-home .hp-form .hp-btn { font-size:14px; }
 .hp-home .hp-form-status { font-size:10px; }
 .hp-home .hp-dock { padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px)); }
 .hp-home .hp-dock-inner { display:grid; grid-template-columns:.85fr 1.15fr; gap:8px; }
 .hp-home .hp-dock-copy { display:none; }
 .hp-home .hp-dock a, .hp-home .hp-dock a.hp-dock-call, .hp-home .hp-dock a.hp-dock-apply { width:100%; min-width:0; min-height:47px; padding:11px 10px; gap:12px; font-size:14px; }
}
@media(max-width:359px) {
 .hp-home .hp-wrap { width:calc(100% - 32px); }
 .hp-home .hp-hero-kicker { font-size:7px; letter-spacing:.08em; }
 .hp-home #hp-home-main .hp-brand-hero h1 { font-size:28px; }
 .hp-home .hp-hero-lead { font-size:12px; }
 .hp-home .hp-button { font-size:12px; padding-inline:10px; gap:9px; }
 .hp-home .hp-service-main { grid-template-columns:34% minmax(0,1fr); }
 .hp-home .hp-service-copy { padding:16px 12px; }
 .hp-home #hp-home-main .hp-service-copy h3 { font-size:17px; }
 .hp-home .hp-service-copy>p { font-size:12px; }
 .hp-home .hp-photo-label { font-size:8px; }
 .hp-home .hp-card-bottom { padding-inline:12px; }
 .hp-home .hp-card-bottom>a { font-size:10px; }
 .hp-home .hp-hub-main { padding-inline:12px; }
 .hp-home .hp-hub-topics { padding-inline:12px; }
 .hp-home #hp-home-main .hp-hub-main h3 { font-size:15px; }
 .hp-home .hp-hub-top>span:nth-child(2) { font-size:6px; }
 .hp-home .hp-hub-main>p { font-size:11px; }
 .hp-home .hp-form { padding:21px 17px; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 .hp-home #hp-home-main *, .hp-home .hp-dock * { transition:none!important; animation:none!important; }
}
@media print {
 body.hp-home { padding-bottom:0; }
 .hp-home #hp-home-main { padding-top:0; }
 .hp-home .hp-dock, .hp-home .hp-skip { display:none!important; }
 .hp-home .hp-service-card, .hp-home .hp-hub-card { break-inside:avoid; }
}
