.sitemap-page{margin:0;background:#f5f4ef;color:#071729}
.sitemap-page main{overflow:hidden}
.sitemap-hero{position:relative;min-height:720px;padding:190px 7vw 0;background:#061525;color:#f4f7fa;overflow:hidden}
.sitemap-hero::before{position:absolute;inset:auto -9vw -42% auto;width:760px;height:760px;border:1px solid rgba(117,150,185,.15);border-radius:50%;box-shadow:0 0 0 120px rgba(117,150,185,.035),0 0 0 240px rgba(117,150,185,.025);content:""}
.sitemap-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(90deg,#000,transparent 72%)}
.sitemap-hero-copy{position:relative;z-index:1;max-width:950px}
.sitemap-kicker{margin:0;color:#7596b9;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.sitemap-hero h1{margin:42px 0 32px;font-size:clamp(64px,7vw,112px);font-weight:500;line-height:.9;letter-spacing:-.065em}
.sitemap-hero h1 em,.directory-intro h2 em,.sitemap-contact h2 em{color:#5681ad;font-family:"Noto Serif Display",serif;font-style:italic;font-weight:500}
.sitemap-hero-copy>p:last-child{max-width:680px;margin:0;color:#9cabb8;font-size:17px;line-height:1.75}
.sitemap-index{position:absolute;z-index:2;right:7vw;bottom:0;left:7vw;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18)}
.sitemap-index a{display:grid;min-height:120px;padding:25px 26px;align-content:center;border-right:1px solid rgba(255,255,255,.14);color:#f4f7fa;transition:background .25s ease}
.sitemap-index a:first-child{border-left:1px solid rgba(255,255,255,.14)}
.sitemap-index a:hover{background:rgba(86,129,173,.12)}
.sitemap-index small{color:#7596b9;font-size:9px;font-weight:700;letter-spacing:.18em}
.sitemap-index span{margin-top:12px;font-size:15px;font-weight:600}
.sitemap-directory{padding:130px 7vw 145px}
.directory-intro{display:grid;grid-template-columns:1.15fr .65fr;gap:10vw;align-items:end;margin-bottom:100px}
.directory-intro h2{margin:36px 0 0;font-size:clamp(54px,5.3vw,84px);font-weight:500;line-height:.96;letter-spacing:-.06em}
.directory-intro>p{margin:0 0 6px;color:#66717b;font-size:15px;line-height:1.8}
.directory-section{margin-top:85px;border-top:1px solid rgba(7,23,41,.18)}
.directory-heading{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:24px;padding:32px 0}
.directory-heading>span{color:#5681ad;font-size:11px;font-weight:700;letter-spacing:.17em}
.directory-heading p{margin:0 0 6px;color:#798897;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.directory-heading h3{margin:0;font-size:30px;font-weight:500;letter-spacing:-.035em}
.directory-heading>small{color:#798897;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.directory-links{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(7,23,41,.13);border-left:1px solid rgba(7,23,41,.13)}
.directory-links a{display:flex;min-height:104px;padding:25px 28px;align-items:center;justify-content:space-between;border-right:1px solid rgba(7,23,41,.13);border-bottom:1px solid rgba(7,23,41,.13);color:#071729;transition:background .25s ease,color .25s ease,transform .25s ease}
.directory-links a:hover{z-index:1;background:#fff;color:#174a8b;box-shadow:0 18px 40px rgba(7,23,41,.07);transform:translateY(-2px)}
.directory-links span{font-size:15px;font-weight:600}
.directory-links b,.product-families a b{color:#5681ad;font-size:16px;font-weight:400;transition:transform .25s ease}
.directory-links a:hover b,.product-families a:hover b{transform:translate(3px,-3px)}
.product-families{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(7,23,41,.13);border-left:1px solid rgba(7,23,41,.13)}
.product-families article{min-height:360px;padding:32px 30px;border-right:1px solid rgba(7,23,41,.13);border-bottom:1px solid rgba(7,23,41,.13);background:rgba(255,255,255,.18)}
.product-families header{display:flex;align-items:center;gap:18px;margin-bottom:28px}
.product-families header span{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(23,74,139,.24);border-radius:50%;color:#174a8b;font-size:9px;font-weight:700}
.product-families h4{margin:0;font-size:22px;font-weight:500;letter-spacing:-.025em}
.product-families a{display:flex;padding:15px 0;align-items:center;justify-content:space-between;border-top:1px solid rgba(7,23,41,.1);color:#66717b;font-size:13px;transition:color .25s ease,padding-left .25s ease}
.product-families a:hover{padding-left:6px;color:#174a8b}
.sitemap-contact{padding:105px 7vw 120px;background:#e9eef2}
.sitemap-contact>div{display:flex;margin-top:40px;align-items:flex-end;justify-content:space-between;gap:60px}
.sitemap-contact h2{margin:0;font-size:clamp(54px,5.5vw,86px);font-weight:500;line-height:.95;letter-spacing:-.06em}
.sitemap-contact a{display:flex;width:min(330px,100%);padding:20px 0;align-items:center;justify-content:space-between;border-bottom:1px solid #174a8b;color:#071729;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.sitemap-contact a b{font-size:18px;font-weight:400}
@media(max-width:1000px){
  .sitemap-hero{min-height:760px;padding-top:160px}
  .sitemap-index{grid-template-columns:1fr 1fr}
  .sitemap-index a{min-height:88px}
  .directory-intro{grid-template-columns:1fr;gap:35px}
  .directory-links,.product-families{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .sitemap-hero{min-height:720px;padding:125px 20px 0}
  .sitemap-hero h1{margin-top:35px;font-size:55px}
  .sitemap-hero-copy>p:last-child{font-size:15px}
  .sitemap-index{right:20px;left:20px}
  .sitemap-index a{min-height:82px;padding:17px 14px}
  .sitemap-index span{font-size:12px}
  .sitemap-directory{padding:90px 20px 100px}
  .directory-intro{margin-bottom:70px}
  .directory-intro h2{font-size:47px}
  .directory-section{margin-top:62px}
  .directory-heading{grid-template-columns:42px 1fr;padding:25px 0}
  .directory-heading>small{display:none}
  .directory-heading h3{font-size:25px}
  .directory-links,.product-families{grid-template-columns:1fr}
  .directory-links a{min-height:82px;padding:20px}
  .product-families article{min-height:0;padding:25px 22px 30px}
  .sitemap-contact{padding:80px 20px 90px}
  .sitemap-contact>div{display:block}
  .sitemap-contact h2{font-size:48px}
  .sitemap-contact a{margin-top:45px}
}
