:root {
    --hygiene-navy: #071b2c;
    --hygiene-deep: #0a2940;
    --hygiene-blue: #109fd8;
    --hygiene-cyan: #28b9e8;
    --hygiene-ice: #eaf7fc;
    --hygiene-bg: #f4f8fb;
    --hygiene-text: #526d7e;
}

.hygiene-page { color: var(--hygiene-deep); background: #fff; }
.hygiene-page h1, .hygiene-page h2, .hygiene-page h3, .hygiene-page p { font-family: 'Open Sans', sans-serif; }

.hygiene-hero {
    position: relative;
    min-height: 610px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    color: #fff;
}

.hygiene-hero:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(55, 190, 234, .75), transparent);
}

.hygiene-hero .container { position: relative; z-index: 1; }
.hygiene-hero-copy { width: 600px; max-width: 55%; padding: 72px 0 78px; }
.hygiene-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 23px; color: #7cd7f4; font-size: 12px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; }
.hygiene-eyebrow i { color: #2cb8e5; font-size: 7px; }
.hygiene-hero h1 { margin: 0 0 24px; color: #fff; font-size: 53px; font-weight: 300; line-height: 1.13; letter-spacing: -1.3px; }
.hygiene-hero h1 strong { color: #42c1eb; font-weight: 800; }
.hygiene-hero-copy > p { max-width: 590px; margin-bottom: 31px; color: #c1d2dd; font-size: 17px; line-height: 1.75; }
.hygiene-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hygiene-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 22px; border-radius: 7px; font-size: 13px; font-weight: 700; transition: .22s ease; }
.hygiene-btn-primary { color: #fff; background: var(--hygiene-blue); border: 1px solid var(--hygiene-blue); box-shadow: 0 12px 28px rgba(4, 91, 133, .25); }
.hygiene-btn-primary:hover, .hygiene-btn-primary:focus { transform: translateY(-2px); color: #fff; background: #27b5e4; border-color: #27b5e4; }
.hygiene-btn-ghost { color: #dceaf2; background: rgba(255,255,255,.04); border: 1px solid rgba(205, 229, 241, .3); }
.hygiene-btn-ghost:hover, .hygiene-btn-ghost:focus { color: #fff; border-color: #58c9ee; background: rgba(35, 176, 223, .12); }
.hygiene-hero-trust { display: flex; flex-wrap: wrap; gap: 23px; margin-top: 33px; color: #a9c0ce; font-size: 12px; font-weight: 600; }
.hygiene-hero-trust i { margin-right: 6px; color: #44c4ed; }

.hygiene-intro { padding: 92px 0 85px; background: #fff; }
.hygiene-intro-row { display: flex; align-items: flex-start; }
.hygiene-section-kicker { display: block; margin-bottom: 13px; color: var(--hygiene-blue); font-size: 11px; font-weight: 800; letter-spacing: 1.7px; }
.hygiene-intro h2, .hygiene-section-heading h2, .hygiene-process h2 { margin: 0; color: var(--hygiene-deep); font-size: 35px; font-weight: 800; line-height: 1.28; letter-spacing: -.6px; }
.hygiene-intro-copy { padding-left: 48px; border-left: 3px solid var(--hygiene-cyan); }
.hygiene-intro-copy p { margin: 0 0 17px; color: var(--hygiene-text); font-size: 16px; line-height: 1.85; }
.hygiene-intro-copy p:last-child { margin-bottom: 0; }
.hygiene-assurance-row { margin-top: 58px; }
.hygiene-assurance { display: flex; align-items: flex-start; min-height: 112px; padding: 24px; border: 1px solid #dce8f0; border-radius: 10px; background: #f9fcfd; }
.hygiene-assurance > i { flex: 0 0 43px; height: 43px; margin-right: 15px; border-radius: 9px; background: var(--hygiene-ice); color: var(--hygiene-blue); font-size: 18px; line-height: 43px; text-align: center; }
.hygiene-assurance strong { display: block; margin: 1px 0 6px; color: #12344c; font-size: 15px; }
.hygiene-assurance span { display: block; color: #6d8392; font-size: 12px; line-height: 1.55; }

.hygiene-services { padding: 92px 0 100px; background: var(--hygiene-bg); }
.hygiene-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 45px; margin-bottom: 48px; }
.hygiene-section-heading > div { max-width: 660px; }
.hygiene-section-heading > p { width: 390px; margin: 0 0 3px; color: #6b8292; font-size: 15px; line-height: 1.75; }
.hygiene-service-grid { display: flex; flex-wrap: wrap; }
.hygiene-service-grid > [class*="col-"] { display: flex; }
.hygiene-service-card { position: relative; width: 100%; min-height: 285px; margin-bottom: 25px; padding: 31px 28px 27px; overflow: hidden; border: 1px solid #dce7ee; border-top: 4px solid var(--hygiene-blue); border-radius: 10px; background: #fff; box-shadow: 0 11px 28px rgba(8, 46, 73, .055); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.hygiene-service-card:hover { transform: translateY(-5px); border-color: #a9dbea; box-shadow: 0 20px 40px rgba(8, 46, 73, .11); }
.hygiene-service-card > span { position: absolute; top: 25px; right: 25px; color: #e2edf2; font-size: 29px; font-weight: 800; }
.hygiene-service-card > i { width: 49px; height: 49px; margin-bottom: 24px; border-radius: 10px; background: var(--hygiene-ice); color: var(--hygiene-blue); font-size: 20px; line-height: 49px; text-align: center; }
.hygiene-service-title { display: flex; align-items: center; gap: 15px; min-height: 49px; margin: 3px 45px 23px 0; }
.hygiene-service-title > i { flex: 0 0 45px; width: 45px; height: 45px; border-radius: 9px; background: var(--hygiene-ice); color: var(--hygiene-blue); font-size: 18px; line-height: 45px; text-align: center; }
.hygiene-service-title > h3 { margin: 0; }
.hygiene-service-card h3 { margin: 0 0 12px; color: #12344c; font-size: 18px; font-weight: 800; line-height: 1.35; }
.hygiene-service-card p { margin: 0 0 20px; color: #687f8f; font-size: 13px; line-height: 1.72; }
.hygiene-service-card b { position: absolute; left: 28px; bottom: 24px; color: var(--hygiene-blue); font-size: 10px; font-weight: 800; letter-spacing: 1.1px; text-transform: uppercase; }
.hygiene-service-card-cta { display: flex; flex-direction: column; justify-content: center; border: 0; background: linear-gradient(135deg, #071b2c, #0b3d5e); }
.hygiene-service-card-cta > i { background: rgba(56, 189, 232, .13); color: #62d0f2; }
.hygiene-service-card-cta h3 { color: #fff; font-size: 20px; }
.hygiene-service-card-cta p { color: #acc1cd; }
.hygiene-service-card-cta a { align-self: flex-start; padding: 10px 15px; border: 1px solid rgba(91, 202, 238, .4); border-radius: 6px; color: #6fd2f2; font-size: 12px; font-weight: 700; }
.hygiene-service-card-cta a:hover { color: #fff; background: var(--hygiene-blue); border-color: var(--hygiene-blue); }

.hygiene-process { padding: 95px 0; background: #fff; }
.hygiene-process-intro > p { margin: 20px 0 0; color: #6a8190; font-size: 15px; line-height: 1.8; }
.hygiene-process-list { margin: 0; padding: 0; list-style: none; }
.hygiene-process-list li { display: grid; grid-template-columns: 62px 1fr; gap: 20px; margin-bottom: 24px; padding: 0 0 24px; border-bottom: 1px solid #dfe9ef; }
.hygiene-process-list li:last-child { margin: 0; padding-bottom: 0; border: 0; }
.hygiene-process-list > li > span { width: 45px; height: 45px; border-radius: 50%; background: var(--hygiene-ice); color: var(--hygiene-blue); font-size: 12px; font-weight: 800; line-height: 45px; text-align: center; }
.hygiene-process-list h3 { margin: 1px 0 7px; color: #12344c; font-size: 18px; font-weight: 800; }
.hygiene-process-list p { margin: 0; color: #6a8190; font-size: 14px; line-height: 1.7; }

.hygiene-cta { padding: 0 0 95px; background: #fff; }
.hygiene-cta-panel { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 50px; min-height: 260px; padding: 48px 55px; overflow: hidden; border-radius: 14px; background: linear-gradient(125deg, #071b2c, #0b3d5e); box-shadow: 0 24px 55px rgba(7, 35, 56, .18); }
.hygiene-cta-panel:after { content: ""; position: absolute; width: 320px; height: 320px; right: 17%; top: -210px; border: 52px solid rgba(44, 184, 231, .06); border-radius: 50%; }
.hygiene-cta-panel > div { position: relative; z-index: 1; max-width: 700px; }
.hygiene-cta-panel span { color: #61cbed; font-size: 11px; font-weight: 800; letter-spacing: 1.7px; }
.hygiene-cta-panel h2 { margin: 11px 0 12px; color: #fff; font-size: 31px; font-weight: 800; line-height: 1.3; }
.hygiene-cta-panel p { margin: 0; color: #adbfca; font-size: 14px; line-height: 1.7; }
.hygiene-cta-panel > a { position: relative; z-index: 1; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 22px; border: 1px solid rgba(95, 204, 238, .45); border-radius: 7px; background: rgba(34, 174, 220, .13); color: #71d3f2; font-size: 13px; font-weight: 700; }
.hygiene-cta-panel > a:hover { color: #fff; background: var(--hygiene-blue); border-color: var(--hygiene-blue); }

@media (max-width: 991px) {
    .hygiene-hero { min-height: 560px; background-position: 58% center; }
    .hygiene-hero-copy { max-width: 65%; }
    .hygiene-intro-row, .hygiene-section-heading { display: block; }
    .hygiene-intro-copy { margin-top: 35px; padding-left: 28px; }
    .hygiene-assurance { margin-bottom: 20px; }
    .hygiene-section-heading > p { width: auto; margin-top: 20px; }
    .hygiene-process-intro { margin-bottom: 45px; }
    .hygiene-cta-panel { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767px) {
    .hygiene-hero { min-height: 575px; background-position: 64% center; }
    .hygiene-hero:before { content: ""; position: absolute; inset: 0; background: rgba(5, 27, 45, .42); }
    .hygiene-hero-copy { position: relative; z-index: 1; width: 100%; max-width: none; padding: 65px 0; }
    .hygiene-hero h1 { font-size: 38px; }
    .hygiene-hero-copy > p { font-size: 15px; }
    .hygiene-btn { width: 100%; }
    .hygiene-hero-trust { gap: 12px; }
    .hygiene-hero-trust span { width: 100%; }
    .hygiene-intro, .hygiene-services, .hygiene-process { padding: 65px 0; }
    .hygiene-intro h2, .hygiene-section-heading h2, .hygiene-process h2 { font-size: 28px; }
    .hygiene-intro-row { display: block; }
    .hygiene-intro-copy { padding-left: 20px; }
    .hygiene-service-grid, .hygiene-service-grid > [class*="col-"] { display: block; }
    .hygiene-service-card { min-height: 270px; }
    .hygiene-process-list li { grid-template-columns: 50px 1fr; gap: 14px; }
    .hygiene-cta { padding-bottom: 65px; }
    .hygiene-cta-panel { min-height: 0; padding: 37px 27px; }
    .hygiene-cta-panel h2 { font-size: 25px; }
    .hygiene-cta-panel > a { width: 100%; }
}
