/* Shared visual language for company, services and product pages. */
.editorial-page { color:#163c49; background:#fff; }
.editorial-page .max { padding-top:0!important; }
.editorial-page .z_head { position:absolute!important; inset:0 0 auto; width:100%; background:transparent!important; box-shadow:none; z-index:100; }
.editorial-page .z_head .z_max { background:transparent; }
.editorial-page .z_head .z_nav ul li a,.editorial-page .z_head .z_yy a,.editorial-page .z_head .z_yy span { color:#fff!important; text-shadow:0 1px 4px #163c49; }
.editorial-page .z_head .z_nav ul li.active:before { background:#fff; }
.editorial-page .z_banner { position:relative; height:72svh; min-height:520px; max-height:800px; margin:0; overflow:hidden; background:#163c49; }
.editorial-page .z_banner .swiper-container,.editorial-page .z_banner .swiper-wrapper,.editorial-page .z_banner .swiper-slide { height:100%!important; }
.editorial-page .z_banner .swiper-slide>img { display:block; width:100%; height:100%; object-fit:cover; object-position:65% center; }
.editorial-page .z_banner .swiper-slide:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,25,35,.78),rgba(4,25,35,.1)),linear-gradient(180deg,rgba(4,25,35,.3),transparent 25%); pointer-events:none; }
.editorial-page .z_banner .banner-text { position:absolute; top:auto; bottom:15%; left:8%; right:8%; width:auto; transform:none; text-align:left; color:#fff; z-index:2; }
.editorial-eyebrow { display:block; font:11px/1.6 Arial,sans-serif; letter-spacing:.2em; margin-bottom:25px; }
.editorial-page .z_banner .banner-text h1 { max-width:1050px; margin:0 0 23px; font-size:clamp(32px,4.2vw,64px); font-weight:500; line-height:1.35; letter-spacing:.025em; color:#fff; text-shadow:none; }
.editorial-page .z_banner .banner-text p { margin:0; max-width:760px; font-size:16px; line-height:1.9; color:#edf4f5; text-shadow:none; }
.editorial-page .z_title1 { padding:75px 7% 45px; margin:0; height:auto; background:#fff; }
.editorial-page .z_title1 h3 { color:#6e8c95; font-size:11px; letter-spacing:.2em; line-height:1.8; }
.editorial-page .z_title1 h4 { color:#163c49; font-size:30px; line-height:1.6; font-weight:500; margin-top:12px; }
.editorial-page .z_aa1 { margin-top:0; padding-bottom:65px; }
.editorial-page .about-greeting-layout { gap:65px; }
.editorial-page .about-greeting-layout .font { line-height:2.1; color:#53656b; }
.editorial-page .z_aa2 { background:#f4f3ee; padding:65px 0; }
.editorial-page .z_aa2 ul li { box-shadow:none; border:1px solid #e3e7e5; }
.editorial-page .z_index2,.editorial-page .z_index3 { background:#fff; padding-bottom:65px; }
.editorial-page .product-category-feature { border:0; background:#f4f3ee; margin-bottom:55px; box-shadow:none; }
.editorial-page .product-category-feature-image { min-height:360px; }
.editorial-page .product-category-feature-copy { padding:45px; }
.editorial-page .product-category-feature h3 { font-weight:500; color:#163c49; }
.editorial-page .product-category-description { color:#53656b; line-height:2; }
.editorial-page .category-index { color:#65848e; font-size:11px; letter-spacing:.15em; }
.editorial-page .z_ss3 { background:#f4f3ee; padding:25px 0; margin-bottom:55px; }
.editorial-page .z_ss4 .font { line-height:2; color:#53656b; }
.editorial-page a:focus-visible { outline:3px solid #168ac1; outline-offset:5px; }
@media(max-width:700px) {
 .editorial-page .z_banner { height:70svh; min-height:470px; }
 .editorial-page .z_banner .banner-text { left:7%; right:7%; bottom:12%; }
 .editorial-page .z_banner .banner-text h1 { font-size:clamp(28px,7.2vw,42px); }
 .editorial-page .z_banner .banner-text p { font-size:13px; }
 .editorial-eyebrow { font-size:9px; margin-bottom:18px; }
 .editorial-page .z_title1 { padding:50px 7% 30px; }
 .editorial-page .z_title1 h4 { font-size:25px; }
 .editorial-page .product-category-feature-copy { padding:28px 22px; }
 .editorial-page .product-category-feature-image { min-height:240px; }
 .editorial-page .z_ss3 { margin-bottom:35px; }
 .editorial-page .z_ss3 ul { display:flex; flex-wrap:wrap; }
 .editorial-page .z_ss3 ul li { width:50%; box-sizing:border-box; }
 .editorial-page .z_aa2 { padding:40px 0; }
}

/* Keep the original white navigation separate from the story photograph. */
.editorial-page .max { padding-top:48px!important; }
.editorial-page .z_head { position:fixed!important; top:0; left:0; width:100%; background:#fff!important; box-shadow:0 1px 8px rgba(22,60,73,.08); }
.editorial-page .z_head .z_max { background:#fff; }
.editorial-page .z_head .z_nav ul li a,
.editorial-page .z_head .z_yy a,
.editorial-page .z_head .z_yy span { color:#163c49!important; text-shadow:none!important; }
.editorial-page .z_head .z_nav ul li.active:before { background:#168db2; }
@media(min-width:701px) { .editorial-page .z_head .z_max { height:48px; min-height:48px; padding-top:0; padding-bottom:0; } }
/* Service selectors: two columns on phones and small tablets. */
@media(max-width:700px) {
 .editorial-page .z_ss3 ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); justify-items:center; gap:18px 12px; width:100%; max-width:460px; margin:0 auto; padding:0 16px; box-sizing:border-box; }
 .editorial-page .z_ss3 ul li { width:min(40vw,180px); height:min(40vw,180px); margin:0; background-size:contain; }
 .editorial-page .z_ss3 { margin-top:0; }
}

/* Product category titles: blue fill and white text on interaction. */
.editorial-page .z_index2 .product-category-feature h3 .product-category-link{display:inline-block;max-width:100%;box-sizing:border-box;padding:.2em .6em;border:1px solid #8c969b;border-radius:999px;color:#163c49;background:transparent;text-decoration:none;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease;overflow-wrap:anywhere}
.editorial-page .z_index2 .product-category-feature h3 .product-category-link:hover,.editorial-page .z_index2 .product-category-feature h3 .product-category-link:focus-visible{color:#fff;background:#0071e3;border-color:#0071e3}
.editorial-page .z_index2 .product-category-feature h3 .product-category-link:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.editorial-page .z_index2 .product-category-feature h3 .product-category-link{transition:none}}
