/*
Theme Name: HACOM IT
Description: Moderní bloková šablona pro IT služby HACOM.
Version: 3.6.0
Requires at least: 6.6
Requires PHP: 8.0
Author: HACOM
Text Domain: hacom-it
License: GPL-2.0-or-later
*/
:root{--ink:#102629;--muted:#536465;--paper:#f7f9f8;--lime:#d6fa70;--line:#d8e1de}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:3px solid #758e24;outline-offset:5px}p,h1,h2,h3{margin:0}h1,h2,h3{line-height:1.06;letter-spacing:-.055em}h1{font-size:clamp(64px,7.3vw,112px);font-weight:600}h2{font-size:clamp(38px,4.4vw,64px);font-weight:500}h3{letter-spacing:-.025em;font-size:24px;font-weight:600}p{margin-block:0}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.wp-site-blocks>*{margin-block-start:0}.wp-block-group{margin-block-start:0}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:24px}.wordmark{font-size:32px;font-weight:850;letter-spacing:-.06em}.wordmark span{font-size:14px;vertical-align:top;letter-spacing:0;margin-left:4px}.nav-links{display:flex;gap:30px;font-size:15px;font-weight:500}.wp-block-buttons{display:flex;margin:0}.wp-block-button__link{display:inline-flex;justify-content:center;align-items:center;background:var(--ink);color:white;font-size:15px;font-weight:600;padding:17px 24px;border-radius:6px;line-height:1.4;text-decoration:none;min-height:52px}.wp-block-button__link:hover{background:#254649;text-decoration:none}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;padding-top:76px;padding-bottom:90px;align-items:center}.eyebrow{font-family:monospace;font-size:13px;letter-spacing:.11em;font-weight:600;line-height:1.5;margin-bottom:30px}.hero h1 span{color:#53706a}.hero-copy{max-width:530px;color:var(--muted);font-size:19px;line-height:1.7;margin-top:30px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.text-link{font-size:15px;font-weight:600}.hero-meta{font-size:13px;color:var(--muted);margin-top:52px;letter-spacing:.035em}.it-diagram{position:relative;min-height:480px;border:1px solid #cedcd3;border-radius:12px;background-color:#eaf0e9;background-image:linear-gradient(#bbcabb33 1px,transparent 1px),linear-gradient(90deg,#bbcabb33 1px,transparent 1px);background-size:32px 32px;padding:28px;overflow:hidden}.diagram-label,.diagram-bottom{font-family:monospace;font-size:12px;letter-spacing:.07em}.diagram-center{position:absolute;top:120px;left:50%;transform:translateX(-50%);width:65%;border:1px solid var(--ink);border-radius:9px;background:var(--ink);color:var(--lime);padding:27px}.diagram-center h3{font-size:32px;margin-top:12px;line-height:1.13;color:white}.diagram-node{position:absolute;background:var(--paper);border:1px solid #c7d2ca;border-radius:7px;padding:16px 20px;box-shadow:0 12px 26px #1839270b}.diagram-node p{font:11px monospace;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.diagram-node h3{font-size:18px}.node-one{left:20px;top:82px}.node-two{right:20px;top:288px}.node-three{left:26px;top:342px}.diagram-bottom{position:absolute;bottom:22px;font-size:10px}.section{padding-block:96px}.services{border-top:1px solid var(--line);background:white}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;align-items:end;margin-bottom:55px}.section-heading>p{max-width:460px;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:32px;display:flex;flex-direction:column;gap:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service-card:hover{background:#f4f8ee}.service-number{font:14px monospace;color:#53706a;margin-bottom:12px}.service-card>p:not(.service-number):not(.service-meta){color:var(--muted);font-size:16px}.service-meta{font-size:12px;color:#4a6257;margin-top:auto;padding-top:14px}.managed{background:var(--ink);color:#fff}.managed-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px}.managed-copy h2 span{color:var(--lime)}.managed-copy>p:not(.eyebrow){color:#bccdca;margin-top:30px}.managed-copy .wp-block-buttons{margin-top:32px}.managed .wp-block-button__link{background:var(--lime);color:var(--ink)}.care-step{display:flex;gap:26px;padding:27px 0;border-bottom:1px solid #ffffff2b}.care-step:first-child{padding-top:0}.step-number{color:var(--lime);font:14px monospace;padding-top:5px}.step-copy h3{font-size:23px}.step-copy p{margin-top:14px;color:#bccdca;font-size:16px}.home-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px}.home-copy>p:last-child{margin-top:28px;color:var(--muted)}.home-service{padding-block:24px;border-bottom:1px solid var(--line)}.home-service:first-child{padding-top:0}.home-service p{font-size:16px;color:var(--muted);margin-top:12px}.contact{background:#e1f4b4}.contact h2{font-size:clamp(54px,7vw,96px)}.contact h2 span{color:#55732d}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:35px;align-items:start}.contact-copy{max-width:430px}.contact-email{font-size:clamp(18px,2.2vw,30px);font-weight:600;letter-spacing:-.03em}.contact-phone{font-size:23px}.address{margin-top:18px;font-size:14px}.site-footer{padding-block:38px}.footer-row{display:flex;align-items:center;gap:38px}.footer-row>p{font-size:14px}.footer-row .rakonet{margin-left:auto;max-width:300px;font-size:12px;color:var(--muted)}.rakonet a{text-decoration:underline}.skip-link{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.content-page{padding-block:64px;min-height:50vh}.content-page h1{font-size:56px}.content-page p{margin-top:24px}@media(max-width:1100px){.container{width:calc(100% - 56px)}.hero{gap:35px}.nav-links{gap:18px}.header-row>.wp-block-buttons{display:none}.managed-layout,.home-layout{gap:50px}.service-card{padding:24px}.diagram-center h3{font-size:26px}}@media(max-width:760px){.container{width:calc(100% - 40px)}.header-row{min-height:110px;flex-wrap:wrap;gap:10px;padding-block:20px}.wordmark{font-size:29px}.nav-links{width:100%;gap:18px;flex-wrap:wrap;font-size:14px}.hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:50px;gap:40px}.hero h1{font-size:clamp(56px,13vw,86px)}.hero-copy{font-size:17px}.hero-actions{gap:20px;flex-wrap:wrap}.hero-meta{margin-top:28px;font-size:12px}.it-diagram{min-height:435px}.node-three{top:300px}.node-two{top:255px}.diagram-center{top:110px}.diagram-bottom{font-size:9px}.section{padding-block:60px}.section-heading,.managed-layout,.home-layout,.contact-layout{grid-template-columns:1fr;gap:32px}.services-grid{grid-template-columns:1fr}.service-card{gap:16px;padding:28px}.service-number{margin-bottom:0}.service-meta{font-size:13px}.eyebrow{font-size:12px;margin-bottom:24px}.contact-layout{margin-top:28px}.footer-row{align-items:flex-start;flex-direction:column;gap:14px}.footer-row .rakonet{margin-left:0;max-width:none}.contact-email{overflow-wrap:anywhere}.managed-copy h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

:root{--ink:#15243d;--muted:#536079;--paper:#f5f7fb;--lime:#82d8ff;--line:#d8e0ed}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-style:normal;letter-spacing:-.055em}h1{font-weight:750;font-size:clamp(46px,5vw,74px)}h2{font-weight:650;font-size:clamp(32px,3.4vw,49px)}.site-header{background:white;border-bottom:1px solid var(--line)}.header-row{min-height:88px}.brand-square{color:#3164ef!important;font-size:18px!important;vertical-align:middle!important;margin-left:9px!important}.header-phone{font-size:16px;font-weight:600}.gateway-intro{padding-top:48px;padding-bottom:32px}.gateway-intro h1 span,.audience-intro h1 span{color:#3164ef}.eyebrow{font-size:12px;letter-spacing:.12em;margin-bottom:18px;color:#536079}.intro-copy{font-size:18px;color:var(--muted);max-width:680px;margin-top:20px}.audience-choices{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-bottom:64px}.choice{border-radius:14px;padding:35px;display:flex;flex-direction:column;gap:19px;position:relative}.choice .eyebrow{margin:0;font-size:12px}.choice h2{font-size:clamp(30px,3.1vw,46px)}.choice-copy{font-size:17px;max-width:470px}.choice .wp-block-buttons{margin-top:auto;padding-top:8px}.business-choice{background:#15243d;color:white}.business-choice .eyebrow{color:#9fbcf4}.business-choice .choice-copy{color:#d0daec}.business-choice .wp-block-button__link{background:#82d8ff;color:#15243d}.home-choice{background:#e2ebff;color:#15243d}.home-choice .wp-block-button__link{background:#3164ef;color:white}.wp-block-button__link{border-radius:7px}.wp-block-button__link:hover{filter:brightness(1.12)}.choice:hover{box-shadow:0 10px 30px #15243d12}.audience-intro{padding-block:64px}.audience-intro .wp-block-buttons{margin-top:28px}.services-grid{margin-top:38px}.service-card:hover{background:#eff4ff}.service-number{color:#3164ef}.managed{background:#15243d}.managed .eyebrow{color:#9fbcf4}.managed-copy h2 span{color:#82d8ff}.contact{background:#edf1f8;padding-block:64px}.contact h2{font-size:clamp(38px,4vw,58px)}.contact h2 span{color:#3164ef}.contact-layout{gap:40px}.contact-email{font-size:clamp(18px,2vw,27px)}.footer-row .rakonet{font-size:13px}.services-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.header-row{min-height:90px}.header-phone{display:none}.gateway-intro{padding-top:30px;padding-bottom:26px}.gateway-intro h1{font-size:42px}.gateway-intro .intro-copy{font-size:16px}.audience-choices{grid-template-columns:1fr;gap:14px;padding-bottom:40px}.choice{padding:24px;gap:13px}.choice h2{font-size:32px}.choice-copy{font-size:16px}.choice .eyebrow{font-size:11px}.services-grid{grid-template-columns:1fr}.audience-intro{padding-block:42px}.contact-layout{gap:26px}.nav-links{gap:20px}}

.audience-photo{margin:12px 0 0;overflow:hidden;border-radius:10px;line-height:0}.audience-photo img{display:block;width:100%;height:auto;aspect-ratio:2.5/1;object-fit:cover}.choice .audience-photo{margin-top:12px}.audience-intro{display:grid;grid-template-columns:1.15fr 1fr;column-gap:55px;align-items:start}.audience-intro>.eyebrow,.audience-intro>h1,.audience-intro>.intro-copy,.audience-intro>.wp-block-buttons{grid-column:1}.audience-intro>.audience-photo{grid-column:2;grid-row:1/5;align-self:stretch;margin:0;min-height:330px}.audience-intro>.audience-photo img{height:100%;aspect-ratio:4/3;object-fit:cover}.phone-service{background:#edf3ff}.phone-service h3{color:#2453c7}@media(max-width:760px){.audience-intro{display:flex;flex-direction:column;gap:0}.audience-intro>.audience-photo{min-height:0;width:100%;margin-top:28px}.audience-intro>.audience-photo img{aspect-ratio:16/9;height:auto}.choice .audience-photo img{aspect-ratio:2.5/1}}

/* Version 3.2: decorative section photography leaves saved page blocks untouched. */
body.hacom-business .services-grid::before,
body.hacom-household .services-grid::before{
    content:"";
    display:block;
    grid-column:1/-1;
    min-height:clamp(210px,27vw,350px);
    background-size:cover;
    background-position:center;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
body.hacom-business .services-grid::before{background-image:url("assets/business-network.jpg")}
body.hacom-household .services-grid::before{background-image:url("assets/phone-repair.jpg");background-position:center 55%}
body.hacom-business .care-steps::before{
    content:"";
    display:block;
    min-height:220px;
    margin-bottom:26px;
    border-radius:10px;
    background:url("assets/managed-monitoring.jpg") center/cover no-repeat;
}

/* Readable layouts at tablet and narrow-phone widths. */
img{max-width:100%}
.wp-site-blocks{overflow-x:clip}
@media(max-width:960px){
    .managed-layout{gap:48px}
    .audience-intro{column-gap:32px}
    .audience-intro>.audience-photo{min-height:280px}
}
@media(max-width:760px){
    .section{padding-block:54px}
    .audience-intro{padding-block:42px}
    body.hacom-business .services-grid::before,
    body.hacom-household .services-grid::before{min-height:230px}
    body.hacom-business .care-steps::before{min-height:200px}
    .service-card{min-width:0}
}
@media(max-width:420px){
    .container{width:calc(100% - 32px)}
    .gateway-intro h1,.audience-intro h1{font-size:clamp(36px,11vw,44px)}
    .choice{padding:22px}
    .choice h2{font-size:30px}
    .nav-links{gap:12px 18px}
    .contact-phone{font-size:20px}
}

/* Follow the visitor's operating-system appearance preference. */
@media(prefers-color-scheme:dark){
    :root{color-scheme:dark;--paper:#0c1628;--muted:#bbcae0;--line:#304158}
    body{background:#0c1628!important;color:#edf3ff!important}
    .site-header,.site-footer{background:#0c1628;color:#edf3ff;border-color:var(--line)}
    .wordmark,.nav-links a,.header-phone{color:#edf3ff}
    .brand-square{color:#84b3ff!important}
    .eyebrow,.service-number{color:#a5c8ff}
    .intro-copy,.section-heading>p,.service-meta,.address{color:#bbcae0}
    .gateway-intro h1 span,.audience-intro h1 span,.contact h2 span{color:#91bbff}
    .business-choice{background:#1b2d49}
    .business-choice .choice-copy{color:#d1def0}
    .home-choice{background:#203657;color:#edf3ff}
    .home-choice .choice-copy{color:#d1def0}
    .home-choice .wp-block-button__link,.business-choice .wp-block-button__link{background:#8bcbff;color:#10243e}
    .services{background:#101e32;color:#edf3ff}
    .service-card{background:#14243a;border-color:var(--line)}
    .service-card:hover{background:#1b3250}
    .service-card>p:not(.service-number):not(.service-meta){color:#c4d1e3}
    .phone-service{background:#1d3656}
    .phone-service h3{color:#a2c8ff}
    .managed{background:#071322}
    .managed .wp-block-button__link{background:#8bcbff;color:#10243e}
    .contact{background:#182b45;color:#edf3ff}
    .contact-copy{color:#d1def0}
    .contact .eyebrow{color:#a5c8ff}
    .content-page{color:#edf3ff}
    .wp-block-button__link{background:#8bcbff;color:#10243e}
    a:focus-visible{outline-color:#a8d5ff}
}

/* Clickable overview cards and editable service detail pages. */
.service-card{position:relative;padding-right:70px}
.service-card-link{position:absolute;inset:0;z-index:2;border-radius:2px}
.service-card-link::after{content:"↗";position:absolute;top:27px;right:26px;display:grid;place-items:center;width:31px;height:31px;border:1px solid #b9cae2;border-radius:50%;color:#3164ef;font-size:19px;font-weight:500;line-height:1;transition:transform .2s,background .2s}
.service-card:hover .service-card-link::after,.service-card-link:focus-visible::after{transform:translate(2px,-2px);background:#e1ecff}
.service-card-link:focus-visible{outline:3px solid #3164ef;outline-offset:-4px}
.service-card a:not(.service-card-link){position:relative;z-index:3}
.service-detail-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:7%;align-items:center;padding-block:72px 82px}
.service-detail-back,.service-detail-hero h1,.service-detail-lead{grid-column:1}
.service-detail-back{align-self:end;margin-bottom:24px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#536079}
.service-detail-back a{color:#3164ef}
.service-detail-hero h1{font-size:clamp(45px,5.2vw,76px);line-height:1.04;overflow-wrap:anywhere}
.service-detail-lead{align-self:start;max-width:560px;margin-top:24px;color:var(--muted);font-size:19px;line-height:1.6}
.service-detail-image{grid-column:2;grid-row:1/4;align-self:stretch;margin:0;min-height:390px;overflow:hidden;border-radius:14px;box-shadow:0 22px 48px #162d5530}
.service-detail-image img{display:block;width:100%;height:100%;object-fit:cover}
.service-detail-main{background:#fff;border-top:1px solid var(--line)}
.service-detail-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;padding-block:85px}
.service-detail-description>p:not(.eyebrow){max-width:710px;margin-top:24px;color:var(--muted);font-size:18px;line-height:1.75}
.service-detail-scope{align-self:start;padding:34px;border:1px solid var(--line);border-radius:12px;background:#f5f8fd}
.service-detail-scope h3{font-size:26px}
.service-detail-scope .eyebrow{color:#3164ef}
.service-detail-scope ul{margin:24px 0 0;padding-left:23px}
.service-detail-scope li{padding-left:5px;margin-block:13px;line-height:1.55}
.service-detail-scope li::marker{color:#3164ef}
.service-detail-benefits{padding-block:76px 88px;background:#eaf1fc}
.service-detail-benefits .eyebrow{color:#3164ef}
.service-detail-benefits h2{max-width:780px}
.service-detail-benefits ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:38px 0 0;padding:0;list-style:none}
.service-detail-benefits li{position:relative;padding:24px 24px 24px 64px;background:#fff;border:1px solid #d7e2f2;border-radius:9px;font-size:17px;font-weight:550;line-height:1.5}
.service-detail-benefits li::before{content:"✓";position:absolute;left:24px;top:24px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#d9ebff;color:#2155c8;font-size:15px;font-weight:800}
.service-detail-cta{padding-block:76px 88px;background:#15243d;color:#fff}
.service-detail-cta .eyebrow{color:#9fbcf4}
.service-detail-cta h2{max-width:790px}
.service-detail-cta p:not(.eyebrow){max-width:620px;margin-top:22px;color:#c9d6e9;font-size:18px}
.service-detail-cta .wp-block-buttons{margin-top:30px}
.service-detail-cta .wp-block-button__link{background:#82d8ff;color:#10243e}
@media(max-width:900px){
    .service-detail-hero{column-gap:5%}
    .service-detail-image{min-height:320px}
    .service-detail-columns{gap:6%}
}
@media(max-width:760px){
    .service-card{padding-right:64px}
    .service-card-link::after{top:24px;right:22px}
    .service-detail-hero{display:flex;flex-direction:column;align-items:stretch;padding-block:46px 54px;gap:0}
    .service-detail-hero h1{font-size:clamp(38px,9.5vw,57px)}
    .service-detail-lead{margin-top:18px;font-size:17px}
    .service-detail-image{min-height:0;margin-top:32px;aspect-ratio:1.7/1}
    .service-detail-columns{grid-template-columns:1fr;gap:32px;padding-block:58px}
    .service-detail-description>p:not(.eyebrow){font-size:17px}
    .service-detail-benefits{padding-block:58px}
    .service-detail-benefits ul{grid-template-columns:1fr;gap:12px;margin-top:28px}
    .service-detail-benefits li{padding:20px 20px 20px 58px;font-size:16px}
    .service-detail-benefits li::before{top:20px;left:20px}
    .service-detail-cta{padding-block:60px}
}
@media(prefers-color-scheme:dark){
    .service-detail-back{color:#b8c9de}
    .service-detail-back a{color:#a6d2ff}
    .service-detail-main{background:#101e32;color:#edf3ff}
    .service-detail-scope{background:#192d49;border-color:#314762}
    .service-detail-scope .eyebrow,.service-detail-scope li::marker{color:#a6d2ff}
    .service-detail-description>p:not(.eyebrow){color:#c2d1e5}
    .service-detail-benefits{background:#152840;color:#edf3ff}
    .service-detail-benefits .eyebrow{color:#a6d2ff}
    .service-detail-benefits li{background:#1b314f;border-color:#314762}
    .service-detail-benefits li::before{background:#2b4a72;color:#b6dfff}
    .service-detail-cta{background:#071322}
    .service-card-link::after{border-color:#577297;color:#a6d2ff}
    .service-card:hover .service-card-link::after,.service-card-link:focus-visible::after{background:#29466d}
    .service-card-link:focus-visible{outline-color:#a6d2ff}
}

/* Version 3.5: distinctive HACOM identity, photographic hero and linear service layout. */
:root{--ink:#14243d;--muted:#53657d;--paper:#f6f8fc;--lime:#117f88;--line:#dce3ee}
body{background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
h1,h2,h3{letter-spacing:-.05em}
h1,h2{text-wrap:balance}
a:focus-visible,.wp-block-button__link:focus-visible{outline:3px solid #117f88;outline-offset:4px}
.site-header{background:#f6f8fc;border-bottom:1px solid #dce3ee}
.header-row{min-height:91px}
.wordmark{color:#14243d;font-size:29px;letter-spacing:-.07em}
.brand-square{color:#117f88!important;font-size:15px!important}
.nav-links{align-items:center;gap:35px;font-size:14px;font-weight:650}
.nav-links a{color:#283c59}
.nav-links a:hover{color:#1761be;text-decoration:underline;text-underline-offset:8px}
.header-phone{font-size:15px;font-weight:750;color:#1b558e;border:1px solid #bed0e2;border-radius:8px;padding:10px 17px;background:#eaf2fa}
.wp-block-button__link{min-height:50px;padding:13px 22px;border-radius:8px;background:#255bc3;color:#fff;font-size:15px;font-weight:700;box-shadow:0 7px 16px #19499420}
.wp-block-button__link:hover{background:#194da9;filter:none;text-decoration:none}
.eyebrow{font-family:inherit;color:#117f88;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.gateway-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:510px;padding-block:67px 82px;overflow:hidden}
.gateway-intro>*{position:relative;z-index:1;max-width:54%}
.gateway-intro h1{font-size:clamp(50px,5.8vw,79px);font-weight:760;line-height:1.02}
.gateway-intro h1 span,.audience-intro h1 span{color:#255bc3}
.gateway-intro .intro-copy{max-width:520px;margin-top:28px;color:#52637b;font-size:19px;line-height:1.6}
.hacom-experience{display:inline-block;margin-top:28px;padding:12px 18px;border-left:4px solid #117f88;background:#e7f2f7;color:#173f62;font-size:15px;font-weight:750;letter-spacing:.01em;line-height:1.45}
.gateway-intro::before{content:"";position:absolute;right:0;top:54px;width:42%;height:390px;border-radius:10px;background:#213f66 url("assets/business-network.jpg") center/cover no-repeat;box-shadow:0 18px 42px #1f3e632b}
.gateway-intro::after{content:"";position:absolute;right:calc(42% - 8px);top:86px;width:8px;height:108px;background:#38b7bd}
.audience-choices{gap:20px;padding-bottom:85px}
.choice{min-height:540px;padding:35px;border-radius:12px;gap:17px;transition:transform .2s,box-shadow .2s;box-shadow:0 9px 26px #1e365514}
.choice:hover{transform:translateY(-3px);box-shadow:0 17px 34px #1e365526}
.choice h2{font-size:clamp(32px,3.3vw,47px);font-weight:750}
.choice-copy{line-height:1.6}
.choice .audience-photo{margin-top:21px;border-radius:7px;overflow:hidden}
.choice .audience-photo img{aspect-ratio:2.25/1}
.business-choice{background:#142842;color:#fff}
.business-choice .eyebrow{color:#86d6da}
.business-choice .choice-copy{color:#d1e0ef}
.business-choice .wp-block-button__link{background:#8adce0;color:#102b3f;box-shadow:none}
.business-choice .wp-block-button__link:hover{background:#a6e7e9}
.home-choice{background:#fff;color:#14243d;border:1px solid #dce3ee}
.home-choice .eyebrow{color:#117f88}
.home-choice .choice-copy{color:#52637b}
.home-choice .wp-block-button__link{background:#255bc3;color:#fff}
.audience-intro{padding-block:77px 88px;column-gap:7%}
.audience-intro h1{font-size:clamp(47px,5vw,73px);font-weight:760;line-height:1.04}
.audience-intro .intro-copy{font-size:19px;line-height:1.65}
.audience-intro>.audience-photo{border-radius:10px;box-shadow:0 16px 36px #1b355624}
.audience-intro .wp-block-buttons{margin-top:31px}
.services{background:#fff;border-top:1px solid #dce3ee}
.services .container>h2{max-width:820px;font-weight:760}
.services-grid{gap:0 28px;border:0;margin-top:45px}
body.hacom-business .services-grid::before,body.hacom-household .services-grid::before{min-height:325px;border:0;border-radius:10px;margin-bottom:20px}
.service-card{min-height:235px;padding:32px 65px 32px 25px;background:transparent;border:0;border-bottom:1px solid #dce3ee;border-radius:0;box-shadow:none;transition:background .2s,box-shadow .2s}
.service-card:hover{background:#f4f8fc;box-shadow:inset 4px 0 #2a6cc9}
.service-card h3{font-size:25px;line-height:1.16}
.service-number{color:#117f88;font-weight:800}
.service-card>p:not(.service-number):not(.service-meta){color:#52637b}
.service-meta{color:#667a91}
.service-card-link::after{border-color:#adccdf;color:#1e5bb0}
.service-card:hover .service-card-link::after,.service-card-link:focus-visible::after{background:#dcecf8}
.phone-service{background:transparent}
.phone-service h3{color:#14243d}
.managed{background:#142842;color:#fff}
.managed .eyebrow,.step-number{color:#8adce0}
.managed-copy h2 span{color:#8adce0}
.managed-copy>p:not(.eyebrow),.step-copy p{color:#d0deec}
.managed .wp-block-button__link{background:#8adce0;color:#102b3f;box-shadow:none}
.care-step{border-color:#ffffff30}
body.hacom-business .care-steps::before{border-radius:9px}
.contact{background:#eaf3f8;padding-block:78px}
.contact h2 span{color:#1b6fb8}
.contact .eyebrow{color:#117f88}
.contact-copy,.address{color:#52637b}
.contact-email{color:#185b9c}
.site-footer{background:#f6f8fc;border-top:1px solid #dce3ee}
.content-page h1{font-weight:760}
.service-detail-hero{padding-block:76px 88px}
.service-detail-hero h1{font-weight:760}
.service-detail-back a,.service-detail-scope .eyebrow,.service-detail-benefits .eyebrow{color:#117f88}
.service-detail-main{background:#fff}
.service-detail-scope{background:#f4f8fc;border-color:#dce3ee}
.service-detail-scope li::marker{color:#117f88}
.service-detail-benefits{background:#eaf3f8}
.service-detail-benefits li{border-color:#d0e0e9}
.service-detail-benefits li::before{background:#d7f1f1;color:#136f77}
.service-detail-cta{background:#142842}
.service-detail-cta .eyebrow{color:#8adce0}
.service-detail-cta .wp-block-button__link{background:#8adce0;color:#102b3f;box-shadow:none}
@media(max-width:1020px){
    .gateway-intro>*{max-width:55%}
    .gateway-intro::before{width:40%;height:330px;top:74px}
    .gateway-intro::after{right:calc(40% - 8px)}
}
@media(max-width:760px){
    .header-row{min-height:92px;padding-block:16px;gap:12px}
    .wordmark{font-size:27px}
    .nav-links{justify-content:flex-start;gap:12px 21px;font-size:14px}
    .gateway-intro{min-height:0;padding-block:44px 58px}
    .gateway-intro>*{max-width:100%}
    .gateway-intro h1{font-size:clamp(43px,10vw,61px)}
    .gateway-intro .intro-copy{font-size:17px}
    .hacom-experience{margin-top:24px;font-size:14px}
    .gateway-intro::before{position:relative;order:4;right:auto;top:auto;width:100%;height:260px;margin-top:33px;border-radius:8px}
    .gateway-intro::after{display:none}
    .audience-choices{gap:16px;padding-bottom:58px}
    .choice{min-height:0;padding:27px}
    .choice .audience-photo img{aspect-ratio:1.8/1}
    .audience-intro{padding-block:54px 64px}
    .audience-intro h1{font-size:clamp(42px,10vw,60px)}
    .services-grid{margin-top:32px}
    .service-card{min-height:0;padding:27px 65px 28px 23px}
    body.hacom-business .services-grid::before,body.hacom-household .services-grid::before{min-height:230px}
    .contact{padding-block:57px}
    .service-detail-hero{padding-block:55px 64px}
}
@media(max-width:420px){
    .gateway-intro h1{font-size:clamp(39px,10vw,47px)}
    .choice h2{font-size:32px}
    .service-card h3{font-size:23px}
    .nav-links{gap:9px 17px;font-size:13px}
}
@media(prefers-color-scheme:dark){
    :root{--paper:#0e1a2b;--muted:#bbcee0;--line:#2e4259}
    body{background:#0e1a2b!important;color:#eef5fc!important}
    .site-header,.site-footer{background:#0e1a2b;color:#eef5fc;border-color:#2e4259}
    .wordmark,.nav-links a{color:#eef5fc}
    .brand-square{color:#7bd5dc!important}
    .header-phone{background:#18334b;color:#ace1e8;border-color:#3d6980}
    .eyebrow,.service-number{color:#8adce0}
    .gateway-intro h1 span,.audience-intro h1 span{color:#8cc5ff}
    .gateway-intro .intro-copy,.intro-copy{color:#c0d0e2}
    .hacom-experience{background:#1a394e;color:#d9eef4;border-color:#8adce0}
    .gateway-intro::after{background:#8adce0}
    .business-choice{background:#17314d}
    .business-choice .eyebrow{color:#8adce0}
    .business-choice .choice-copy{color:#d0dfed}
    .home-choice{background:#1c3149;color:#eef5fc;border-color:#38536e}
    .home-choice .eyebrow{color:#8adce0}
    .home-choice .choice-copy{color:#d0dfed}
    .business-choice .wp-block-button__link,.home-choice .wp-block-button__link{background:#8adce0;color:#102b3f}
    .services{background:#142438;color:#eef5fc;border-color:#2e4259}
    .service-card{background:transparent;border-color:#35506b}
    .service-card:hover{background:#1c344d;box-shadow:inset 4px 0 #8adce0}
    .service-card>p:not(.service-number):not(.service-meta){color:#c9d9e8}
    .service-meta{color:#abc0d3}
    .phone-service{background:transparent}
    .phone-service h3{color:#eef5fc}
    .service-card-link::after{border-color:#54748c;color:#a4d7ff}
    .service-card:hover .service-card-link::after,.service-card-link:focus-visible::after{background:#25465d}
    .managed{background:#0b263b;color:#eef5fc}
    .managed .eyebrow,.step-number,.managed-copy h2 span{color:#8adce0}
    .managed-copy>p:not(.eyebrow),.step-copy p{color:#c8d9e7}
    .managed .wp-block-button__link{background:#8adce0;color:#102b3f}
    .care-step{border-color:#ffffff2d}
    .contact{background:#173248;color:#eef5fc}
    .contact .eyebrow{color:#8adce0}
    .contact h2 span{color:#a4d7ff}
    .contact-copy,.address{color:#c7d9e8}
    .contact-email{color:#a4d7ff}
    .service-detail-back a,.service-detail-scope .eyebrow,.service-detail-benefits .eyebrow{color:#8adce0}
    .service-detail-main{background:#142438;color:#eef5fc}
    .service-detail-scope{background:#1c344d;border-color:#35506b}
    .service-detail-scope li::marker{color:#8adce0}
    .service-detail-benefits{background:#173248;color:#eef5fc}
    .service-detail-benefits li{background:#1e3c53;border-color:#3c6277}
    .service-detail-benefits li::before{background:#285e68;color:#bbf0ef}
    .service-detail-cta{background:#0b263b}
    .service-detail-cta .eyebrow{color:#8adce0}
    .service-detail-cta .wp-block-button__link{background:#8adce0;color:#102b3f}
}

/* 3.6: review, social feed and contact form integrations. */
.hacom-reviews{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hacom-reviews h2,.hacom-facebook h2{max-width:780px}
.hacom-reviews-content,.hacom-facebook-content{margin-top:34px;max-width:100%;overflow:hidden}
.hacom-reviews-summary{display:inline-block;padding:22px 28px;background:#eaf3f8;border-left:4px solid #1b96a6;border-radius:0 8px 8px 0;font-size:clamp(18px,2.2vw,25px);font-weight:700;color:#173752}
.hacom-reviews-source,.hacom-facebook-source{margin-top:25px;font-size:15px;font-weight:700;color:#185b9c}
.hacom-reviews-source a,.hacom-facebook-source a{text-decoration:underline;text-underline-offset:4px}
.hacom-facebook{background:#f3f8fb}
.hacom-contact-form{margin-top:42px;padding-top:38px;border-top:1px solid #cbdce8}
.hacom-contact-form>p{margin-top:10px;color:#52637b;max-width:590px}
.hacom-contact-form .wpcf7{margin-top:26px;max-width:780px}
.hacom-contact-form form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 21px}
.hacom-contact-form form>p{margin:0}
.hacom-contact-form form>p:has(textarea),.hacom-contact-form form>p:has(.wpcf7-acceptance),.hacom-contact-form form>p:has(.wpcf7-submit),.hacom-contact-form form>.wpcf7-response-output{grid-column:1/-1}
.hacom-contact-form label{display:block;font-size:14px;font-weight:700;color:inherit}
.hacom-contact-form input:not([type=checkbox]):not([type=submit]),.hacom-contact-form textarea{display:block;width:100%;margin-top:7px;padding:13px 15px;border:1px solid #b8cbd8;border-radius:7px;background:#fff;color:#15243d;font:inherit;line-height:1.5}
.hacom-contact-form textarea{min-height:145px;resize:vertical}
.hacom-contact-form input:focus-visible,.hacom-contact-form textarea:focus-visible{outline:3px solid #168d9c;outline-offset:2px}
.hacom-contact-form .wpcf7-submit{border:0;border-radius:7px;background:#15648c;color:#fff;padding:14px 28px;min-height:50px;font:inherit;font-weight:700;cursor:pointer}
.hacom-contact-form .wpcf7-submit:hover{background:#0c4f72}
.hacom-contact-form .wpcf7-spinner{vertical-align:middle}
@media(max-width:760px){.hacom-reviews,.hacom-facebook{padding-block:58px}.hacom-contact-form form{grid-template-columns:1fr}.hacom-contact-form{margin-top:32px;padding-top:30px}}
@media(prefers-color-scheme:dark){
    .hacom-reviews{background:#142438;color:#eef5fc;border-color:#2e4259}
    .hacom-reviews-summary{background:#1e3c53;color:#eef5fc;border-color:#8adce0}
    .hacom-facebook{background:#102a3e;color:#eef5fc}
    .hacom-reviews-source,.hacom-facebook-source{color:#9bdbe7}
    .hacom-contact-form{border-color:#456477}
    .hacom-contact-form>p{color:#c7d9e8}
    .hacom-contact-form input:not([type=checkbox]):not([type=submit]),.hacom-contact-form textarea{background:#112a3d;color:#eef5fc;border-color:#5c7a8d}
    .hacom-contact-form .wpcf7-submit{background:#8adce0;color:#102b3f}
}
