
@font-face{font-family:DM Sans;src:url('/assets/dm-sans.ttf') format('truetype');font-display:swap;font-weight:100 900}
:root{--navy:#263a72;--blue:#5264b1;--cyan:#34b7d3;--ink:#17213b;--muted:#53617b;--line:#dce2ef;--soft:#f5f7fc}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:DM Sans,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #098ca8;outline-offset:5px}.wrap{max-width:1184px;margin:auto;padding:0 32px}.preview{background:var(--navy);color:#fff;text-align:center;font-size:11px;letter-spacing:.12em;padding:7px 16px;text-transform:uppercase}.skip{position:absolute;left:20px;top:-80px;background:#fff;padding:12px;z-index:10}.skip:focus{top:40px}header{border-bottom:1px solid var(--line)}.header-inner{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{padding:22px 0;display:grid;gap:7px}.logo{width:176px;height:auto;display:block}.brand-note{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}nav{display:flex;gap:28px;align-items:center;font-size:13px;font-weight:650}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:5px;padding:14px 22px;font-weight:650;font-size:14px;cursor:pointer}.button:after{content:'↗';font-size:19px;line-height:1}.text-link{font-size:14px;font-weight:650;border-bottom:1px solid #aeb7cf;padding:6px 0}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);display:flex;gap:10px;align-items:center}.eyebrow:before{content:'';width:24px;height:2px;background:var(--cyan)}.hero{padding:62px 0 45px;display:grid;grid-template-columns:1.18fr 1fr;gap:64px;align-items:center}h1{font-size:62px;letter-spacing:-.055em;line-height:1.05;font-weight:650;margin:21px 0 22px;color:var(--navy)}h1 em{font-style:normal;color:var(--blue)}.intro{font-size:17px;line-height:1.6;max-width:570px;color:var(--muted);margin:0 0 25px}.intro strong{color:var(--ink);font-weight:600}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.status{margin:19px 0 0;font-size:12px;color:var(--muted)}.law-card{position:relative;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:30px;overflow:hidden}.law-card:before{content:'109';position:absolute;font-size:154px;line-height:1;right:13px;top:35px;color:#e5eaf5;letter-spacing:-.06em;font-weight:700;z-index:0}.law-content{position:relative;z-index:1}.law-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--blue);text-transform:uppercase;margin-bottom:37px}.law-card h2{font-size:29px;line-height:1.2;letter-spacing:-.025em;max-width:260px;color:var(--navy);margin:0 0 19px;font-weight:650}.law-card p{font-size:14px;line-height:1.7;max-width:315px;margin:0 0 17px;color:var(--muted)}.law-rule{height:1px;background:#d5dceb;margin:20px 0}.law-condition{font-size:12px!important;line-height:1.65!important;margin-bottom:17px!important}.law-card .text-link{font-size:12px}.flow-section{border-top:1px solid var(--line);padding:34px 0 38px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:23px}.section-head h2{font-size:25px;line-height:1.2;letter-spacing:-.03em;color:var(--navy);margin:0;font-weight:650}.section-head p{font-size:12px;color:var(--muted);margin:0}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.step{display:flex;gap:17px;border-top:1px solid var(--line);padding-top:20px}.num{color:var(--blue);font-size:12px;font-weight:700;padding-top:3px}.step h3{font-size:16px;font-weight:650;margin:0 0 7px;color:var(--navy)}.step p{font-size:13px;color:var(--muted);margin:0}.principles{display:flex;gap:25px;border-top:1px solid var(--line);padding:21px 0;flex-wrap:wrap;font-size:12px;font-weight:600;color:var(--navy)}.principles span:before{content:'✓';color:#07809b;margin-right:8px}.contact-band{background:var(--navy);color:#fff;padding:49px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.contact-band .eyebrow{color:#ccd5f7}.contact-band h2{font-size:37px;letter-spacing:-.035em;line-height:1.13;font-weight:550;margin:15px 0}.contact-band p{color:#d4dbef;font-size:14px;margin:0;max-width:380px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px;font-size:12px;font-weight:550}.field input{width:100%;padding:12px;background:#fff;border:1px solid #fff;border-radius:4px;color:var(--navy);font-size:13px}.contact-form .button{background:#fff;color:var(--navy);grid-column:1/-1;justify-content:space-between;border-color:#fff;opacity:1;cursor:default}.form-note{grid-column:1/-1;font-size:10px!important;color:#c2cce8!important}.faq{padding:40px 0;display:grid;grid-template-columns:1fr 2fr;gap:60px}.faq h2{font-size:25px;font-weight:650;color:var(--navy);line-height:1.2;margin:5px 0}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{font-size:14px;font-weight:600;cursor:pointer}.faq details p{font-size:13px;color:var(--muted);margin-bottom:0}.footer{padding:26px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.wrap{padding:0 22px}.header-inner{min-height:99px}.logo{width:160px}.brand-note{font-size:9px}header nav>a:not(.button){display:none}nav .button{padding:10px 13px;font-size:12px}.hero{grid-template-columns:1fr;gap:30px;padding:35px 0}h1{font-size:clamp(40px,8.3vw,60px);max-width:640px}.intro{font-size:16px}.law-card{padding:24px}.law-kicker{margin-bottom:22px}.law-card h2{max-width:none;font-size:26px}.law-card p{max-width:none}.law-card:before{font-size:146px;right:24px;top:15px}.section-head{display:block}.section-head p{margin-top:9px}.flow{grid-template-columns:1fr;gap:20px}.principles{gap:12px 22px}.contact-inner{grid-template-columns:1fr;gap:25px}.contact-band{padding:35px 0}.contact-band h2{font-size:33px}.faq{grid-template-columns:1fr;gap:10px;padding:30px 0}.footer-inner{display:block}.footer-inner>div+div{margin-top:10px}}
@media(max-width:380px){.header-inner{gap:13px}.brand-note{max-width:150px}.logo{width:160px}nav .button{padding:9px 10px}nav .button:after{display:none}.contact-form{grid-template-columns:1fr}.button{font-size:13px}.actions{gap:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero{grid-template-columns:1.13fr 1fr;gap:64px;padding:51px 0 42px}h1{font-size:61px}.workflow-card{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:30px}.workflow-card h2{font-size:28px;line-height:1.2;letter-spacing:-.03em;color:var(--navy);margin:18px 0 25px}.workflow-card .step{padding:17px 0}.workflow-card .step:last-of-type{padding-bottom:3px}.workflow-card .step p{font-size:13px}.workflow-footnote{font-size:11px;color:var(--muted);margin:17px 0 0;padding-top:17px;border-top:1px solid var(--line)}.legal-ribbon{background:var(--navy);color:#fff;padding:24px 0}.legal-content{display:grid;grid-template-columns:1fr 1.85fr auto;gap:30px;align-items:center}.legal-content h2{font-size:20px;line-height:1.3;letter-spacing:-.02em;font-weight:550;margin:0}.legal-content p{font-size:12px;color:#dde3f7;line-height:1.7;margin:0}.legal-content .text-link{font-size:12px;white-space:nowrap}.audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:33px 0;border-bottom:1px solid var(--line)}.audiences h2{font-size:14px;font-weight:700;color:var(--navy);margin:0 0 6px}.audiences p{font-size:13px;color:var(--muted);margin:0}.comparison{padding:36px 0 40px}.comparison h2{font-size:29px;line-height:1.15;font-weight:650;letter-spacing:-.03em;color:var(--navy);margin:13px 0 23px}.comparison table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}.comparison th{font-size:11px;letter-spacing:.04em;color:var(--muted);font-weight:550;padding:12px 16px;background:var(--soft)}.comparison td{padding:14px 16px;border-bottom:1px solid var(--line)}.comparison td:first-child{font-weight:650;color:var(--navy);width:38%}.comparison-note{font-size:12px;line-height:1.65;color:var(--muted);margin:15px 0 0;max-width:860px}.workflow-card .eyebrow{font-size:10px}.faq{padding:25px 0}.faq details{padding:10px 0}.contact-band h2{font-size:34px}
@media(max-width:800px){.hero{grid-template-columns:1fr;gap:27px;padding:33px 0}h1{font-size:clamp(39px,8.4vw,61px)}.workflow-card{padding:24px}.workflow-card h2{font-size:26px;margin-bottom:15px}.legal-content{grid-template-columns:1fr;gap:12px}.legal-content .text-link{justify-self:start}.audiences{grid-template-columns:1fr;gap:20px;padding:25px 0}.comparison{padding:28px 0}.comparison h2{font-size:25px}.comparison td,.comparison th{padding:12px 8px}.comparison td:first-child{width:42%}.contact-inner{gap:22px}.contact-band h2{font-size:31px}}
.field-wide{grid-column:1/-1}.field textarea{font:inherit;width:100%;min-height:110px;padding:12px;background:#fff;border:1px solid #fff;border-radius:4px;color:var(--navy);font-size:13px;line-height:1.6;resize:vertical}.field textarea:focus-visible{outline:3px solid #34b7d3;outline-offset:4px}.field-hint{grid-column:1/-1;color:#d4dbef;font-size:11px;line-height:1.6;margin:0}
.email-group{grid-column:1/-1;min-inline-size:0;border:0;padding:0;margin:5px 0 0}.email-group legend{padding:0 0 9px;font-size:13px;font-weight:600}.email-options{display:grid;grid-template-columns:1fr 1fr;gap:13px}.email-options .optional{font-size:10px;font-weight:400;color:#d4dbef}.email-group .field-hint{margin-top:9px}@media(max-width:600px){.email-options{grid-template-columns:1fr}}
.field-error{font-size:12px;line-height:1.5;color:#fff;background:#8a1830;border-left:3px solid #ffb8c7;padding:9px 12px;margin:0}.field-error[hidden]{display:none}.required-note{font-size:11px;font-weight:400;color:#d4dbef}

.inner-header nav{gap:24px}.crumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted);padding-top:28px}.crumbs a{text-decoration:underline;text-underline-offset:3px}.page-head{padding:35px 0 34px;max-width:920px}.page-head h1{font-size:clamp(35px,4.3vw,53px);line-height:1.12;margin:18px 0 20px;letter-spacing:-.04em}.page-head .intro{max-width:820px;margin:0;font-size:18px}.meta-line{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:24px 0 0}.meta-line span+span:before{content:'·';margin-right:12px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 270px;gap:64px;align-items:start;padding-bottom:60px}.article-body{min-width:0}.article-body h2{font-size:28px;line-height:1.23;color:var(--navy);letter-spacing:-.025em;margin:39px 0 17px;font-weight:650;scroll-margin-top:25px}.article-body p{font-size:16px;line-height:1.85;margin:0 0 17px}.article-body li{font-size:15px;line-height:1.75;margin:8px 0}.article-body ul{padding-left:22px}.takeaways{background:var(--soft);border-left:3px solid var(--cyan);padding:22px 26px;margin:0 0 34px}.takeaways h2{font-size:16px;margin:0 0 12px}.takeaways ul{margin:0;padding-left:19px}.takeaways li{font-size:14px;margin:6px 0}.contents{position:sticky;top:24px;border-top:3px solid var(--cyan);padding:19px 0;font-size:13px}.contents p{font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}.contents ol{padding-left:20px;margin-bottom:25px}.contents li{margin:12px 0;color:var(--muted)}.contents a:hover,.article-body a:hover{text-decoration:underline;text-underline-offset:4px}.contents .button{font-size:12px;width:100%;padding:12px}.scope-note{font-size:12px!important;line-height:1.7!important;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:23px!important}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:6px;margin:24px 0}.article-body table{border-collapse:collapse;width:100%;min-width:430px;text-align:left;font-size:14px}.article-body th{background:var(--soft);font-size:12px;color:var(--navy);font-weight:700}.article-body td,.article-body th{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.65}.article-body tr:last-child td{border:0}.article-faq details{border-bottom:1px solid var(--line);padding:17px 0}.article-faq summary{font-weight:650;cursor:pointer;font-size:15px}.article-faq p{font-size:14px;margin:12px 0 0;color:var(--muted)}.source-list{font-size:13px;color:var(--muted);padding-left:21px}.source-list li{font-size:13px}.source-list a{text-decoration:underline;text-underline-offset:3px;color:var(--navy)}.article-cta{background:var(--navy);color:white;border-radius:8px;padding:28px;margin-top:36px}.article-cta h2{color:white;font-size:24px;margin:0 0 12px}.article-cta p{font-size:14px;line-height:1.7;color:#e0e5f6}.article-cta .button{background:white;color:var(--navy);font-size:13px}.related{padding:36px 0 55px;border-top:1px solid var(--line);background:var(--soft)}.related h2{font-size:25px;color:var(--navy);margin:0 0 22px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.content-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:7px;padding:24px;background:white;transition:border-color .15s}.content-card:hover{border-color:var(--blue)}.card-label{font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:0 0 14px}.content-card h3{font-size:20px;font-weight:650;letter-spacing:-.02em;line-height:1.32;color:var(--navy);margin:0 0 13px}.content-card .card-summary{font-size:13px;line-height:1.75;margin:0 0 17px;color:var(--muted)}.content-card .card-end{font-size:12px;color:var(--blue);font-weight:650;margin-top:auto}.hub-feature{background:var(--navy);color:white;border-radius:9px;padding:34px 38px;display:grid;grid-template-columns:1fr 210px;gap:40px;align-items:center;margin:4px 0 36px}.hub-feature .eyebrow{color:#d9e2ff}.hub-feature h2{font-size:31px;line-height:1.2;letter-spacing:-.03em;margin:15px 0}.hub-feature p{font-size:14px;line-height:1.75;color:#dce3f4;margin:0}.hub-feature .button{background:white;color:var(--navy);text-align:center}.category-nav{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 34px;border-bottom:1px solid var(--line);margin-bottom:34px}.category-nav a{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:8px 14px;background:var(--soft)}.category-nav a:hover{border-color:var(--blue)}.category-block{margin:0 0 46px;scroll-margin-top:24px}.category-heading{font-size:25px;letter-spacing:-.03em;font-weight:650;color:var(--navy);margin:0 0 20px}.category-heading span{font-size:13px;font-weight:400;color:var(--muted);margin-left:10px}.home-reading{padding:40px 0 48px;border-top:1px solid var(--line)}.home-reading .section-head h2{font-size:28px}.footer-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px}.hub-note{font-size:12px;color:var(--muted);line-height:1.75;max-width:790px;margin:0 0 28px}.plain-page{max-width:820px;padding-bottom:65px}.plain-page h2{font-size:26px;color:var(--navy);margin:32px 0 14px}.plain-page p,.plain-page li{font-size:15px;line-height:1.85}.plain-page li{margin:9px 0}.plain-page a{text-decoration:underline;text-underline-offset:4px}.bottom-scope{font-size:12px;color:var(--muted);margin:0 0 25px;line-height:1.8}.mobile-toc{display:none}
@media(max-width:1050px){.article-layout{grid-template-columns:minmax(0,1fr) 230px;gap:34px}.inner-header nav{gap:16px}.card-grid{gap:15px}.content-card{padding:21px}.hub-feature{gap:25px}}
@media(max-width:800px){.article-layout{grid-template-columns:1fr;padding-bottom:35px}.contents{display:none}.page-head{padding-top:26px}.page-head .intro{font-size:16px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-feature{grid-template-columns:1fr;padding:27px;gap:22px}.hub-feature .button{justify-self:start}.article-body h2{font-size:25px}.article-body p{font-size:15px}.mobile-toc{display:block;border:1px solid var(--line);padding:16px 20px;border-radius:6px;margin-bottom:28px;font-size:13px}.mobile-toc summary{font-weight:650;cursor:pointer}.mobile-toc li{margin:10px 0}.article-body table{font-size:13px}.page-head h1{font-size:40px}.related{padding:30px 0}.category-nav{gap:8px}.category-nav a{font-size:11px}.footer-links{margin-bottom:16px}.preview{font-size:9px;letter-spacing:.05em}.home-reading .section-head{display:flex;align-items:start;flex-direction:column;gap:12px}}
@media(max-width:520px){.card-grid{grid-template-columns:1fr}.page-head h1{font-size:35px}.meta-line{font-size:11px;gap:9px}.meta-line span+span:before{margin-right:9px}.hub-feature h2{font-size:27px}.article-cta{padding:23px}.article-cta .button{width:100%}.takeaways{padding:19px}.inner-header nav .button{padding:10px 12px}.article-body td,.article-body th{padding:12px}.category-block{margin-bottom:34px}.content-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.content-card{transition:none}}

/* HemenHR editorial layer. Load after content.css and the existing site styles. */
.home-avatar{margin:-10px -10px 24px;overflow:hidden;border-radius:12px}.home-avatar-image{width:100%;height:auto;aspect-ratio:16/8.5;object-fit:cover;object-position:center 42%;display:block}
.article-cover>.article-cover-image{aspect-ratio:16/9;object-position:center}
.page-head{background:transparent!important;border-bottom:0;max-width:1000px}

.card-grid {
  gap: 28px;
  align-items: stretch;
}

.content-card {
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d5e6f3;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(38, 58, 114, 0.035);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.content-card:nth-child(3n + 2) {
  background: #fff;
  border-color: #d5e6f3;
}

.content-card:nth-child(3n) {
  background: #fff;
  border-color: #d5e6f3;
}

.content-card > .card-image {
  display: block;
  flex: none;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  margin: 0;
  overflow: hidden;
  object-fit: cover;
  background: var(--soft);
}

.card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.content-card .card-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 23px 23px 24px;
}

.content-card .card-label {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px;
  border-radius: 7px;
  background: #e3ecfd;
  color: var(--navy);
  font-size: 11px;
  line-height: 1.45;
  letter-spacing: 0.07em;
  margin-bottom: 12px;
}

.content-card:nth-child(3n + 2) .card-label {
  background: #d6f1f5;
}

.content-card h3 {
  font-size: 21px;
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: -0.025em;
  margin-bottom: 12px;
  text-wrap: pretty;
}

.content-card .card-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  max-height: 5.1em;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.7;
}

.content-card .card-end {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 24px;
  margin-top: auto;
  font-size: 13px;
  line-height: 1.5;
}

.content-card:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 5px;
}

.content-card:focus-within {
  border-color: var(--blue);
}

@media (hover: hover) and (pointer: fine) {
  .content-card:hover {
    border-color: rgba(82, 100, 177, 0.5);
    box-shadow: 0 12px 30px rgba(38, 58, 114, 0.11);
    transform: translateY(-3px);
  }

  .content-card:hover h3 {
    color: var(--blue);
  }
}

.article-cover {
  width: 100%;
  margin: 6px 0 35px;
}

.article-cover > img,
.article-cover > picture > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 9 / 4;
  object-fit: cover;
  border-radius: 16px;
  background: var(--soft);
}

.article-cover figcaption {
  max-width: 850px;
  margin-top: 11px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
}

.hub-feature {
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.2fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #c7e7f1;
  border-radius: 20px;
  background: #eaf7fc;
  color: var(--navy);
  margin: 8px 0 38px;
}

.hub-feature .eyebrow {
  color: var(--blue);
}

.hub-feature > .feature-image {
  display: block;
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: stretch;
  width: 100%;
  height: 100%;
  min-height: 300px;
  margin: 0;
  overflow: hidden;
  object-fit: cover;
  background: var(--soft);
}

.feature-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hub-feature > .feature-content {
  grid-column: 2;
  min-width: 0;
  padding: 36px 38px;
}

.hub-feature .feature-content h2 {
  max-width: 540px;
  font-size: clamp(27px, 3vw, 35px);
  line-height: 1.17;
  margin: 15px 0 18px;
  text-wrap: pretty;
}

.hub-feature .feature-content p {
  max-width: 540px;
  font-size: 15px;
  line-height: 1.75;
  color: #405676;
}

.hub-feature .feature-content .button {
  margin-top: 25px;
  font-size: 13px;
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}

.hub-feature > .button {
  grid-column: 2;
  justify-self: start;
  margin: -12px 38px 36px;
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}

.home-reading,
.related {
  padding-top: 44px;
  padding-bottom: 52px;
}

.home-reading {
  border-top-color: #cde8ef;
  background: linear-gradient(115deg, #eaf8fc 0%, #f2f7ff 100%);
}

.related {
  border-top-color: #d2e5f3;
  background: #edf5fc;
}

.category-nav {
  gap: 10px;
  padding: 13px;
  margin-bottom: 39px;
  border: 1px solid #cfe7f0;
  border-radius: 17px;
  background: #ecf8fc;
}

.category-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 41px;
  padding: 9px 16px;
  border: 1px solid #cfddf5;
  border-radius: 10px;
  background: #fff;
  color: var(--navy);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
}

.category-nav a:first-child {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}

.category-nav a:hover {
  border-color: var(--blue);
  box-shadow: 0 3px 10px rgba(38, 58, 114, 0.08);
}

.category-heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.category-heading::before {
  content: '';
  display: block;
  flex: 0 0 7px;
  width: 7px;
  height: 25px;
  border-radius: 4px;
  background: var(--cyan);
}

.category-heading span {
  margin-left: 0;
}

header {
  background: #f5f9ff;
  border-bottom-color: #d3e5f4;
}

.home-reading .section-head,
.related > .wrap > h2 {
  margin-bottom: 27px;
}

header .header-inner {
  flex-wrap: wrap;
  gap: 12px 28px;
}

header nav {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px 24px;
}

header nav > a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
}

@media (max-width: 1050px) {
  .card-grid {
    gap: 22px;
  }

  .content-card .card-content {
    padding: 20px;
  }

  .hub-feature > .feature-content {
    padding: 30px;
  }

  .hub-feature > .button {
    margin-right: 30px;
    margin-left: 30px;
  }

  header nav {
    gap: 9px 18px;
  }
}

@media (max-width: 800px) {
  header .header-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-height: 0;
    gap: 0;
    padding-top: 4px;
    padding-bottom: 7px;
  }

  header .brand {
    grid-column: 1 / -1;
    justify-self: start;
    padding-top: 20px;
    padding-bottom: 17px;
  }

  header nav {
    display: flex;
    grid-column: 1 / -1;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    min-width: 0;
    gap: 7px 19px;
    padding: 5px 3px 10px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    scrollbar-color: #aeb7cf transparent;
    scroll-padding-inline: 6px;
    -webkit-overflow-scrolling: touch;
  }

  header nav > a,
  header nav > a:not(.button) {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding-top: 9px;
    padding-bottom: 9px;
    white-space: nowrap;
    font-size: 13px;
  }

  header nav > .button {
    min-height: 42px;
    padding-right: 15px;
    padding-left: 15px;
  }

  header nav > a:focus-visible {
    outline-offset: -2px;
    border-radius: 4px;
  }

  .card-grid {
    gap: 20px;
  }

  .content-card h3 {
    font-size: 21px;
  }

  .article-cover > img,
  .article-cover > picture > img {
    aspect-ratio: 16 / 9;
  }

  .hub-feature {
    grid-template-columns: minmax(0, 1fr);
  }

  .hub-feature > .feature-image {
    grid-column: 1;
    grid-row: auto;
    height: auto;
    min-height: 0;
    max-height: 390px;
    aspect-ratio: 16 / 9;
  }

  .hub-feature > .feature-content,
  .hub-feature > .button {
    grid-column: 1;
  }

  .home-reading,
  .related {
    padding-top: 34px;
    padding-bottom: 38px;
  }
}

@media (max-width: 520px) {
  .card-grid {
    gap: 24px;
  }

  .content-card .card-content {
    padding: 21px;
  }

  .article-cover {
    margin-bottom: 29px;
  }

  .article-cover > img,
  .article-cover > picture > img {
    aspect-ratio: 16 / 10;
    border-radius: 9px;
  }

  .hub-feature > .feature-content {
    padding: 25px;
  }

  .hub-feature > .button {
    margin-right: 25px;
    margin-left: 25px;
    margin-bottom: 27px;
  }

  .hub-feature .feature-content h2 {
    font-size: 29px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .content-card {
    transition: none;
  }

  .content-card:hover {
    transform: none;
  }
}

/* Reading and enquiry form: generous type for the site's primary audience. */
body {
  font-size: 18px;
}

.intro,
.page-head .intro {
  font-size: 20px;
  line-height: 1.7;
}

.step p,
.workflow-card .step p,
.audiences p,
.comparison td,
.comparison-note,
.article-body p,
.article-body li,
.plain-page p,
.plain-page li {
  font-size: 18px;
  line-height: 1.8;
}

.step h3,
.audiences h2 {
  font-size: 21px;
  line-height: 1.4;
}

.comparison th,
.article-body th,
.article-body td {
  font-size: 17px;
  line-height: 1.7;
  padding: 16px;
}

.takeaways h2 {
  font-size: 21px;
}

.takeaways li,
.article-faq summary,
.article-faq p,
.faq summary,
.faq details p {
  font-size: 18px;
  line-height: 1.75;
}

.faq details,
.article-faq details {
  padding-top: 18px;
  padding-bottom: 18px;
}

.content-card h3 {
  font-size: 24px;
  line-height: 1.35;
}

.content-card .card-summary {
  font-size: 18px;
  line-height: 1.7;
}

.content-card .card-label,
.eyebrow,
.workflow-card .eyebrow {
  font-size: 14px;
  line-height: 1.55;
  letter-spacing: 0.01em;
}

.eyebrow,
.preview,
.card-label,
.contents p,
.brand-note {
  text-transform: none !important;
  letter-spacing: 0.01em;
}

.content-card .card-end,
.category-nav a,
.text-link,
.legal-content .text-link {
  font-size: 16px;
  line-height: 1.6;
}

.meta-line,
.crumbs,
.article-cover figcaption,
.status,
.workflow-footnote,
.scope-note,
.bottom-scope,
.hub-note,
.source-list,
.source-list li,
.footer {
  font-size: 15px;
  line-height: 1.75;
}

.brand-note {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.preview {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0.01em;
}

.section-head p,
.principles,
.mobile-toc,
.contents {
  font-size: 17px;
  line-height: 1.7;
}

.category-heading span,
.contents p {
  font-size: 15px;
}

.contents .button {
  font-size: 16px;
}

.scope-note {
  font-size: 15px !important;
  line-height: 1.75 !important;
}

.legal-content p,
.hub-feature .feature-content p,
.article-cta p {
  font-size: 18px;
  line-height: 1.8;
}

.legal-content h2 {
  font-size: 24px;
  line-height: 1.4;
}

.button,
.article-cta .button,
.hub-feature .feature-content .button,
.hub-feature > .button {
  min-height: 54px;
  padding: 14px 22px;
  font-size: 18px;
  line-height: 1.4;
}

header nav > a,
header.inner-header nav > a {
  min-height: 48px;
  font-size: 18px;
  line-height: 1.5;
}

.contact-band {
  padding: 60px 0;
  border-top: 1px solid #c6e5ee;
  border-bottom: 1px solid #c6e5ee;
  background: #eaf7fc;
  color: var(--navy);
}

.contact-inner {
  display: block;
  max-width: 1050px;
}

.contact-band .eyebrow {
  color: var(--blue);
}

.contact-band h2 {
  margin: 19px 0;
  font-size: clamp(34px, 3.8vw, 44px);
  line-height: 1.2;
}

.contact-band p {
  max-width: 440px;
  color: #405676;
  font-size: 18px;
  line-height: 1.8;
}

.contact-heading {
  max-width: 830px;
  margin: 0 auto 31px;
  text-align: center;
}

.contact-heading .eyebrow {
  justify-content: center;
}

.contact-heading p {
  max-width: 760px;
  margin: 0 auto;
}

.contact-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  gap: 28px;
  padding: 32px;
  border: 1px solid #ccdfed;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(38, 58, 114, 0.065);
}

.contact-form .form-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  gap: 18px;
}

.contact-form .form-section + .form-section {
  padding-left: 28px;
  border-left: 1px solid #d6e4ef;
}

.contact-form .form-section > legend {
  padding: 0 0 21px;
  color: var(--navy);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.35;
}

.contact-form .form-section > * {
  grid-column: 1 / -1;
}

.contact-form .company-section .field textarea {
  min-height: 230px;
}

.contact-form .field {
  min-width: 0;
  gap: 8px;
  color: var(--navy);
  font-size: 18px;
  font-weight: 650;
  line-height: 1.55;
}

.contact-form .field input,
.contact-form .field textarea {
  min-width: 0;
  min-height: 56px;
  padding: 14px 16px;
  border: 1px solid #8ca1bf;
  border-radius: 9px;
  background: #fbfdff;
  color: var(--ink);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

.contact-form .field textarea {
  min-height: 150px;
  line-height: 1.7;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  opacity: 1;
  color: #60718a;
}

.contact-form .field input:focus-visible,
.contact-form .field textarea:focus-visible {
  border-color: var(--blue);
  outline: 3px solid var(--blue);
  outline-offset: 3px;
}

.contact-form .field-hint {
  max-width: none;
  margin: -6px 0 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.7;
}

.contact-form .required-note,
.contact-form .email-options .optional {
  color: #526176;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}

.contact-form .email-group {
  margin-top: 2px;
}

.contact-form .email-group legend {
  padding-bottom: 13px;
  color: var(--navy);
  font-size: 18px;
  font-weight: 650;
  line-height: 1.55;
}

.contact-form .email-options {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 18px;
}

.contact-form .email-group .field-hint {
  margin-top: 13px;
}

.contact-form .button {
  min-height: 56px;
  justify-content: center;
  padding: 15px 20px;
  border-color: var(--navy);
  border-radius: 9px;
  background: var(--navy);
  color: #fff;
  font-size: 18px;
  line-height: 1.45;
}

.contact-form .form-submit {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 2px;
}

.contact-form .form-note {
  max-width: none;
  color: #526176 !important;
  font-size: 15px !important;
  line-height: 1.7;
}

.contact-form > .form-note {
  grid-column: 1 / -1;
  text-align: center;
}

.contact-form .field-error {
  max-width: none;
  border-radius: 6px;
  color: #fff;
  font-size: 16px;
  line-height: 1.7;
}

@media (max-width: 1050px) {
  .contact-form {
    padding: 26px;
  }
}

@media (max-width: 800px) {
  .contact-band {
    padding: 40px 0;
  }

  .contact-band p {
    max-width: none;
  }

  header nav,
  .inner-header nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    overflow: visible;
    padding: 5px 0 10px;
  }

  header nav > a,
  header nav > a:not(.button),
  header.inner-header nav > a {
    min-height: 48px;
    padding: 11px 12px;
    border: 1px solid #d1dfed;
    border-radius: 9px;
    background: #fff;
    font-size: 18px;
    line-height: 1.5;
    white-space: normal;
    text-align: center;
  }

  header nav > .button,
  .inner-header nav > .button {
    grid-column: auto;
    min-height: 52px;
    border-color: var(--navy);
    background: var(--navy);
    color: #fff;
    font-size: 18px;
  }

  .intro,
  .page-head .intro {
    font-size: 20px;
  }

  .content-card h3 {
    font-size: 24px;
  }

  .article-body h2,
  .plain-page h2 {
    font-size: 28px;
  }
}

@media (max-width: 760px) {
  .contact-form {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .contact-form .form-section + .form-section {
    padding: 24px 0 0;
    border-top: 1px solid #d6e4ef;
    border-left: 0;
  }

  .contact-form .company-section .field textarea {
    min-height: 170px;
  }

  .contact-heading {
    margin-bottom: 26px;
  }
}

@media (max-width: 520px) {
  .contact-form {
    grid-template-columns: minmax(0, 1fr);
    gap: 21px;
    padding: 23px 20px;
    border-radius: 16px;
  }

  .contact-band h2 {
    font-size: 35px;
  }

  .contact-form .email-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .contact-form .button {
    padding-right: 14px;
    padding-left: 14px;
  }

  .article-body td,
  .article-body th {
    padding: 14px;
  }

  .category-heading span {
    font-size: 15px;
  }
}

/* HemenHR footer v3. Scoped to preserve the approved page design. */
.corporate-footer {
  --footer-bg: #152342;
  --footer-text: #d8dfeb;
  --footer-muted: #bdc8db;
  --footer-line: #43516a;
  --footer-accent: #34b7d3;
  background: var(--footer-bg);
  color: var(--footer-text);
  border: 0;
  padding: 0;
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  text-align: left;
  text-transform: none;
}

.corporate-footer,
.corporate-footer * {
  box-sizing: border-box;
}

.corporate-footer > .wrap {
  width: 100%;
  max-width: 1184px;
  margin: 0 auto;
  padding: 0 32px;
}

.corporate-footer .footer-top {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap: 36px;
  padding: 54px 0 42px;
}

.corporate-footer .footer-top > *,
.corporate-footer .footer-contact > * {
  min-width: 0;
}

.corporate-footer .footer-logo {
  display: block;
  width: 200px;
  max-width: 100%;
  height: auto;
  margin: 0 0 26px;
  object-fit: contain;
  object-position: left center;
}

.corporate-footer h2 {
  margin: 0 0 17px;
  color: #fff;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
}

.corporate-footer p {
  margin: 0;
  color: var(--footer-text);
  font-size: 18px;
  line-height: 1.65;
  letter-spacing: 0;
  text-transform: none;
  overflow-wrap: anywhere;
}

.corporate-footer .footer-brand p {
  max-width: 27ch;
  font-size: 18px;
}

.corporate-footer .footer-column {
  display: block;
  margin: 0;
  padding: 0;
}

.corporate-footer .footer-column ul {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.corporate-footer .footer-column li {
  margin: 0;
  padding: 0;
  font-size: 18px;
  line-height: 1.6;
}

.corporate-footer a {
  color: var(--footer-text);
  font-size: inherit;
  font-weight: 400;
  text-decoration: none;
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
  text-transform: none;
  letter-spacing: 0;
  overflow-wrap: anywhere;
  transition: color 150ms ease;
}

.corporate-footer .footer-column a,
.corporate-footer .footer-column a:not(.button) {
  display: inline-block;
  font-size: 18px;
  line-height: 1.6;
}

.corporate-footer a:hover {
  color: var(--footer-accent);
  text-decoration: underline;
}

.corporate-footer a:focus-visible,
.corporate-footer button:focus-visible {
  outline: 3px solid var(--footer-accent);
  outline-offset: 5px;
  border-radius: 2px;
}

.corporate-footer .footer-contact {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 36px;
  padding: 36px 0 34px;
  border-top: 1px solid var(--footer-line);
}

.corporate-footer .footer-main-phone {
  display: inline-block;
  margin: 0 0 16px;
  color: #fff;
  font-size: 26px;
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.corporate-footer .footer-city-phones {
  display: grid;
  grid-template-columns: minmax(78px, auto) minmax(0, 1fr);
  gap: 7px 16px;
  margin: 0;
  font-size: 18px;
  line-height: 1.6;
}

.corporate-footer .footer-city-phones dt,
.corporate-footer .footer-city-phones dd {
  margin: 0;
  padding: 0;
}

.corporate-footer .footer-city-phones > div {
  display: contents;
}

.corporate-footer .footer-email {
  display: inline-block;
  margin-top: 16px;
}

.corporate-footer .footer-city-phones dt {
  color: var(--footer-muted);
  font-weight: 400;
}

.corporate-footer .footer-city-phones dd a {
  display: inline-block;
  font-variant-numeric: tabular-nums;
}

.corporate-footer .footer-address address {
  color: var(--footer-text);
  font-size: 18px;
  font-style: normal;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.corporate-footer .footer-address p {
  margin: 15px 0 0;
}

.corporate-footer .footer-address a {
  text-decoration: underline;
}

.corporate-footer .map-placeholder {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 14px;
  width: 100%;
  min-height: 230px;
  padding: 24px;
  border: 1px solid var(--footer-line);
  border-radius: 4px;
  background: #1d3053;
}

.corporate-footer .map-placeholder p {
  color: var(--footer-muted);
  font-size: 16px;
  line-height: 1.6;
}

.corporate-footer button[data-map-trigger] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  max-width: 100%;
  margin: 0;
  padding: 10px 18px;
  border: 1px solid var(--footer-accent);
  border-radius: 3px;
  background: var(--footer-accent);
  color: var(--footer-bg);
  font-family: inherit;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.4;
  text-align: center;
  text-transform: none;
  cursor: pointer;
}

.corporate-footer button[data-map-trigger]:hover {
  border-color: #fff;
  background: #fff;
}

.corporate-footer .footer-map iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 230px;
  border: 1px solid var(--footer-line);
  border-radius: 4px;
  background: #1d3053;
}

.corporate-footer [hidden] {
  display: none !important;
}

.corporate-footer .footer-legal {
  padding: 23px 0;
  border-top: 1px solid var(--footer-line);
}

.corporate-footer .footer-legal p {
  color: var(--footer-muted);
  font-size: 16px;
  line-height: 1.65;
}

.corporate-footer .footer-legal strong {
  color: var(--footer-text);
  font-weight: 600;
}

.corporate-footer .footer-bottom {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px 28px;
  padding: 21px 0 26px;
  border-top: 1px solid var(--footer-line);
}

.corporate-footer .footer-bottom p,
.corporate-footer .footer-bottom a {
  color: var(--footer-muted);
  font-size: 16px;
  line-height: 1.6;
}

.corporate-footer .footer-bottom > a {
  flex-shrink: 0;
  color: #fff;
}

@media (max-width: 1000px) {
  .corporate-footer .footer-top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 42px;
    padding: 44px 0 36px;
  }

  .corporate-footer .footer-contact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 42px;
  }

  .corporate-footer .footer-map {
    grid-column: 1 / -1;
  }

  .corporate-footer .footer-brand p {
    max-width: 32ch;
  }
}

@media (max-width: 600px) {
  .corporate-footer > .wrap {
    padding: 0 22px;
  }

  .corporate-footer .footer-top,
  .corporate-footer .footer-contact {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding: 34px 0;
  }

  .corporate-footer .footer-brand {
    padding-bottom: 4px;
  }

  .corporate-footer .footer-logo {
    margin-bottom: 24px;
  }

  .corporate-footer h2 {
    margin-bottom: 13px;
  }

  .corporate-footer .footer-column ul {
    gap: 9px;
  }

  .corporate-footer .footer-city-phones {
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 8px 14px;
  }

  .corporate-footer .footer-map {
    grid-column: auto;
  }

  .corporate-footer .map-placeholder {
    padding: 22px;
  }

  .corporate-footer .footer-legal {
    padding: 22px 0;
  }

  .corporate-footer .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 20px 0 25px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .corporate-footer a {
    transition: none;
  }
}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-form .form-submit{cursor:pointer;background:#263a72;color:#fff;border-color:#263a72}.contact-form .form-submit:disabled{opacity:.65;cursor:wait}.form-feedback{grid-column:1/-1;font-size:18px;line-height:1.5;padding:18px;border-radius:10px;background:#e9f7f1;color:#164f3d}.form-feedback[data-error="true"]{background:#fff0f0;color:#842b2b}.form-feedback[hidden]{display:none}.form-note a{color:inherit;text-decoration:underline}
