/* HQL corporate layout: one hierarchy, compact proportions, readable mobile controls. */
:root{--business-width:1280px;--business-space:clamp(36px,4vw,52px);--business-gap:18px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.business-container{width:100%;max-width:var(--business-width);margin-inline:auto;padding-inline:clamp(20px,3vw,40px)}
.business-hero{padding-block:clamp(36px,4vw,52px);text-align:center;background:linear-gradient(180deg,#f5f8fa 0%,#fff 100%)}
.business-hero .eyebrow{letter-spacing:.16em;margin-bottom:14px;font-size:14px;color:#4c6979}
.business-hero h1{font-size:clamp(32px,3.5vw,46px);line-height:1.12;letter-spacing:-.045em;max-width:20ch;margin:0 auto 18px;text-wrap:balance}
.business-hero h1 em{display:block;margin-top:5px;letter-spacing:-.04em;color:#466176}
.business-hero-intro{font-size:17px;line-height:1.6;max-width:62ch;margin:0 auto 22px}
.business-hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.business-hero-actions .button{min-height:48px;justify-content:center;gap:18px;padding:11px 20px;font-size:15px}
.secondary{background:white;color:var(--navy);border-color:#cdd8df}
.secondary:hover{background:var(--paper)}
.business-section-heading{max-width:720px;margin:0 0 24px}
.business-section-heading .eyebrow{margin-bottom:10px}
.business-section-heading h2{font-size:clamp(24px,2.3vw,30px);line-height:1.25;margin-bottom:12px;max-width:34ch}
.business-section-heading>p:last-child{font-size:16px;line-height:1.55;margin-bottom:0;max-width:72ch}
.division-section{padding-block:var(--business-space);background:#f6f8fa;border-block:1px solid #e4eaee}
.division-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:var(--business-gap);align-items:stretch}
.division-card{display:flex;flex-direction:column;min-width:0;padding:20px 22px 16px;background:white;border:1px solid #dce4e9;border-radius:12px;transition:border-color .15s,box-shadow .15s}
.division-card:hover{border-color:#8da5b4;box-shadow:0 8px 28px #14233608}
.division-top{display:flex;align-items:center;gap:12px;min-height:24px;margin-bottom:14px}
.division-number{font-size:14px;line-height:1.4;color:#6b8190;flex-shrink:0}
.division-category{font-size:14px;line-height:1.4;letter-spacing:.02em;color:var(--slate)}
.division-card :is(h2,h3){font-size:21px;line-height:1.3;margin:0 0 10px;letter-spacing:-.025em}
.division-card>p{font-size:16px;line-height:1.55;margin-bottom:14px;max-width:48ch;flex:1}
.division-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;border-top:1px solid #e7ecef;font-size:14px;font-weight:600;padding-top:8px;color:#294b61}
.division-link>span{font-size:23px;font-weight:400}
.software-section{background:#142b3d;padding-block:var(--business-space);color:white}
.software-section .business-section-heading .eyebrow{color:#b9cdd9}
.software-section .business-section-heading>p:last-child{color:#cedbe3}
.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--business-gap)}
.software-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:22px 24px;border:1px solid #dde5ea;background:white;color:var(--navy);border-radius:12px}
.software-card .eyebrow{font-size:14px;line-height:1.5;letter-spacing:.02em;margin-bottom:12px}
.software-card h3{font-size:23px;line-height:1.3;margin-bottom:12px;max-width:30ch}
.software-card>p:not(.eyebrow){font-size:16px;line-height:1.55;margin-bottom:18px;max-width:54ch}
.software-card .trial-language-note{font-size:14px!important;margin-top:-10px}
.software-card .button{margin-top:auto;max-width:100%;min-height:48px;padding:11px 18px;font-size:15px;gap:18px}
.software-detail-link{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;font-size:15px;text-decoration:underline;text-underline-offset:5px}
.business-approach{padding-block:var(--business-space)}
.approach-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}
.text-action{display:inline-flex;align-items:center;min-height:48px;font-size:16px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:4px}
.approach-grid article{border-top:1px solid var(--line);padding-top:20px;min-width:0}
.approach-number{display:block;font-size:14px;color:#627987;margin-bottom:14px}
.approach-grid h3{font-size:20px;margin-bottom:10px}
.approach-grid p{font-size:16px;line-height:1.55;margin:0;max-width:32ch}
.business-closing{padding-block:36px;background:#f3f6f8;border-top:1px solid #e2e8ed}
.business-closing>.business-container{display:flex;justify-content:space-between;gap:32px;align-items:center}
.business-closing h2{font-size:clamp(24px,2.3vw,30px);margin-bottom:10px;max-width:34ch}
.business-closing p{font-size:16px;line-height:1.55;max-width:52ch;margin:0}
.business-closing .button{flex-shrink:0}
.business-page-heading{padding-block:36px 28px}
.business-page-heading h1{font-size:clamp(30px,3vw,38px);max-width:32ch;margin-bottom:14px}
.business-page-heading>p:last-child{font-size:16px;max-width:58ch;margin:0}
.business-services .division-section{padding-top:28px}
/* Five navigation destinations replace the repeated service list. */
.site-header{height:80px;gap:24px;padding-inline:clamp(16px,3vw,48px);box-shadow:0 2px 16px #14233605}
.site-header nav a{font-size:15px;min-height:48px;padding-inline:4px}
.site-header .language-switch a{min-width:44px;min-height:44px;font-size:14px}
@media(min-width:960px){
 .site-header .menu-toggle{display:none}
 .site-header nav,.site-header nav.open{display:flex;position:static;order:1;width:auto;margin-left:auto;padding:0;flex-direction:row;align-items:center;gap:clamp(14px,2vw,28px);border:0;max-height:none;overflow:visible;box-shadow:none;animation:none}
 .site-header nav a{white-space:nowrap}
 .site-header .language-switch{margin-left:0}
}
@media(max-width:959px){
 .site-header{gap:14px;padding-inline:20px}
 .site-header .language-switch{margin-left:auto}
 .site-header .menu-toggle{display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;border:1px solid var(--line);border-radius:8px;font-size:24px}
 .site-header nav{display:none;position:absolute;left:0;right:0;top:80px;margin:0;width:100%;padding:12px 20px 20px;max-height:calc(100dvh - 80px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:0;background:white;box-shadow:0 12px 20px #1423360d;border-bottom:1px solid var(--line)}
 .site-header nav.open{display:flex}
 .site-header nav a{font-size:17px;min-height:52px;padding:12px;border-radius:6px}
 .site-header nav a[aria-current=page]{background:var(--paper)}
 .site-header nav a[aria-current=page]::after{display:none}
 .site-header nav a:last-child{margin-top:8px;justify-content:center}
}
/* Keep product titles and action links independent, with equal card spacing. */
.service-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;align-items:stretch;gap:20px;padding-block:24px 36px}
.service-products .service-note{display:flex;flex-direction:column;grid-row:auto;min-width:0;padding:20px 22px;border:1px solid var(--line);border-radius:12px;margin-top:0}
.service-products .service-note h2{font-size:22px;line-height:1.3;margin:0 0 14px;grid-row:auto}
.service-products .service-note .product-benefits{font-size:16px;line-height:1.5;grid-row:auto;margin-bottom:16px}
.service-products .product-benefits span{margin-bottom:6px}
.service-products .hql-crm-trial{display:block;grid-row:auto;margin-top:auto}
.service-products .booking-product-actions{grid-row:auto;margin-top:auto}
.immigration-product-link::after,.booking-product-link::after{display:none}
.immigration-product-link:focus-visible,.booking-product-link:focus-visible{outline:3px solid #466681;outline-offset:5px;border-radius:3px}
.service-products .button{font-size:15px;white-space:normal;min-height:48px;padding:11px 18px;margin-top:0}
.service-products .hql-crm-trial [data-hql-demo-pricing]{font-size:14px;line-height:1.5;margin-top:10px}
.service-page .service-intro h1 em{display:block;margin-top:8px}
.service-page .service-hero{padding-top:36px;padding-bottom:36px;gap:32px}
.service-page .service-offerings,.service-page .service-questions{padding-block:40px}
.service-page .service-cards{gap:18px}
.service-page .service-cards article{padding:22px}
.site-footer{padding-block:32px;gap:20px 32px;align-items:center}
.site-footer>div{gap:8px 24px;align-items:center}
.site-footer a,.site-footer [data-cookie-settings]{display:inline-flex;align-items:center;min-height:44px}
/* Consent choices stay readable and reachable on short and narrow viewports. */
.cookie-banner{max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border-top-width:2px}
.cookie-banner p{font-size:15px;line-height:1.6}
.cookie-banner h2{font-size:24px;margin-top:8px}
.cookie-actions button{font-size:15px;line-height:1.4}
@media(max-width:800px){
 .business-container{padding-inline:24px}
 .business-hero{padding-block:36px}
 .business-hero h1{font-size:clamp(32px,4.8vw,40px)}
 .business-hero-intro{font-size:17px}
 .division-grid,.software-grid{gap:20px}
 .division-card,.software-card{padding:22px}
 .division-category{font-size:14px}
 .division-card :is(h2,h3),.software-card h3{font-size:22px}
 .approach-heading{display:block}
 .approach-heading .text-action{margin:-10px 0 20px}
 .approach-grid{gap:24px}
 .business-closing>.business-container{display:block}
 .business-closing .button{margin-top:26px}
 .service-products{grid-template-columns:1fr}
 .service-page .service-hero{gap:28px;padding-top:40px;padding-bottom:40px}
}
@media(max-width:600px){
 .business-container{padding-inline:20px}
 .business-hero{padding-block:32px;text-align:left}
  .business-hero h1{font-size:clamp(30px,7.7vw,36px);margin-inline:0;max-width:18ch}
 .business-hero .eyebrow{margin-bottom:14px}
 .business-hero-intro{margin-inline:0;max-width:42ch;margin-bottom:22px}
 .business-hero-actions{display:grid;grid-template-columns:1fr;gap:12px}
 .business-hero-actions .button{justify-content:space-between;width:100%;padding-inline:20px}
 .division-grid,.software-grid,.approach-grid{grid-template-columns:1fr;gap:20px}.division-grid{grid-auto-rows:auto}
 .business-section-heading{margin-bottom:22px}
 .business-section-heading h2{font-size:25px}
 .division-card,.software-card{padding:20px}
 .division-top{margin-bottom:12px;align-items:flex-start;gap:12px}
 .division-card :is(h2,h3){font-size:22px}
 .division-card>p{margin-bottom:14px}
 .software-card .button{width:100%;justify-content:space-between}
 .approach-grid{gap:28px}
 .approach-grid article{padding-top:22px}
 .approach-number{margin-bottom:16px}
 .approach-grid p{max-width:44ch}
 .business-closing{padding-block:40px}
 .business-closing .button{width:100%;justify-content:space-between}
 .business-page-heading{padding-top:40px;padding-bottom:32px}
 .business-services .division-section{padding-top:32px}
 .service-products .service-note{padding:20px}
 .service-products .service-note h2{font-size:22px}
 .service-products .button{width:100%;justify-content:center}
 .service-page .service-cards article{padding:20px}
 .service-page .service-offerings,.service-page .service-questions{padding-block:40px}
 .site-footer{display:block;padding:28px 20px 88px}
 .site-footer>span{display:block;margin-bottom:12px;font-size:14px;line-height:1.6}
 .site-footer>div{display:flex;flex-wrap:wrap;gap:4px 24px}
 .cookie-banner{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:20px;gap:16px;grid-template-columns:1fr;max-height:calc(100dvh - 24px)}
 .cookie-actions{grid-template-columns:1fr}
 .cookie-actions button:last-child{grid-column:auto}
}
@media(max-width:380px){
 .site-header{gap:8px;padding-inline:12px}
 .site-header .brand img{width:66px;height:58px}
 .site-header .menu-toggle{min-width:44px;min-height:44px}
 .site-header .language-switch a{min-width:44px;min-height:44px}
 .division-card,.software-card{padding-inline:18px}
}
@media(prefers-reduced-motion:reduce){.division-card{transition:none}}
@media print{.business-hero,.division-section,.software-section,.business-approach,.business-closing{padding-block:24px}.division-grid,.software-grid,.approach-grid{display:block}.division-card,.software-card,.approach-grid article{break-inside:avoid;margin-bottom:20px}.software-section{background:white;color:#142336}.software-section .business-section-heading p{color:#526373}}

/* A compact help control leaves more of the phone screen available to the page. */
@media(max-width:600px){.hql-help-launch{width:52px;height:52px;min-height:52px;border-radius:50%;padding:0;font-size:0;display:flex;align-items:center;justify-content:center}.hql-help-launch::before{content:"";display:block;width:25px;height:25px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26' fill='none'%3E%3Cpath d='M5 5h16v12H11l-6 5V5Z' stroke='white' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M9 10h8M9 13h5' stroke='white' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E")}}
/* Align product headings, benefits and actions without fixed text heights. */
@supports(grid-template-rows:subgrid){
 @media(min-width:801px){
  .service-products{grid-template-rows:auto auto auto auto auto;row-gap:0}
  .service-products>.service-note{display:grid;grid-template-rows:subgrid;grid-row:span 5}
  .service-products .service-note h2{grid-row:1}
  .service-products .product-benefits{grid-row:2}
  .service-products .hql-crm-trial{display:grid;grid-template-rows:subgrid;grid-row:3 / span 3;margin-top:0}
  .service-products .hql-demo-actions{grid-row:1;align-self:start;margin:0}
  .service-products .hql-crm-trial [data-hql-demo-pricing]{grid-row:2;margin-bottom:0}
  .service-products .hql-crm-trial .trial-language-note{grid-row:3;margin-bottom:0}
  .service-products .booking-product-actions{grid-row:3;align-self:start;margin:0}
 }
}

/* A compact desktop overview keeps all four divisions in one scan. */
@media(min-width:1100px){.division-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto}.division-top{align-items:flex-start}.division-category{max-width:18ch}}
.service-page .service-intro h1{font-size:clamp(30px,3vw,40px)}
.service-page .service-visual h2{font-size:26px;margin-bottom:18px}
.service-section-heading h2{font-size:28px}
.service-page .service-cards :is(h2,h3){font-size:21px}
.service-cards p{font-size:16px;line-height:1.55}
@media(max-width:600px){.service-page .service-visual h2{font-size:24px}.service-section-heading h2{font-size:25px}}

@media(min-width:601px){.site-footer{padding-bottom:72px}}

/* One compact scale for every public page, including translated reading pages. */
:root{--gutter:clamp(20px,3vw,40px);--compact-h1:clamp(30px,3vw,38px);--compact-h2:clamp(24px,2.2vw,28px);--compact-h3:21px;--compact-space:clamp(32px,3.5vw,44px)}
.button{min-height:48px;padding:11px 18px;font-size:15px}
.business-hero h1{font-size:clamp(32px,3.2vw,42px)}
.service-page .service-intro h1,.about-page h1,.contact-page h1,.policy-page>h1,.business-page-heading h1{font-size:var(--compact-h1);line-height:1.2;margin-bottom:18px}
.about-page h1 em,.contact-page h1 em{display:block;margin-top:6px}
.business-section-heading h2,.business-closing h2,.service-section-heading h2,.service-questions h2,.service-page .service-enquiry h2,.immigration-page .roles h2,.immigration-page .questions h2,.immigration-page .consultation h2,.medical-rcm .rcm-benefits h2,.medical-rcm .rcm-consultation h2{font-size:var(--compact-h2);line-height:1.25;margin-bottom:14px}
.service-page .service-visual h2{font-size:26px;line-height:1.25;margin-bottom:16px}
.service-page .service-description,.about-page p,.contact-page>div>p{font-size:17px;line-height:1.6}
.service-page .service-cards :is(h2,h3),.immigration-page .role-grid h3,.medical-rcm .rcm-audience-grid h3,.medical-rcm .rcm-benefits h3,.service-process h3{font-size:var(--compact-h3);line-height:1.3;margin:0 0 10px}
.service-page .service-cards article{padding:20px}
.service-page .service-cards p,.immigration-page .role-grid p,.medical-rcm .rcm-benefits p,.medical-rcm .rcm-audience-grid p,.service-process p{font-size:16px;line-height:1.6}
.service-page .service-visual{padding:24px}
.service-page .service-visual li{padding-block:14px}
.service-page .service-visual strong{font-size:18px}
.service-page .service-visual li:last-child{padding-bottom:0}
.service-page .service-offerings,.service-page .service-questions,.service-page .service-enquiry,.immigration-page .roles,.immigration-page .questions,.immigration-page .consultation,.medical-rcm .rcm-benefits,.medical-rcm .rcm-audience{padding-block:var(--compact-space)}
.immigration-page .role-grid,.medical-rcm .rcm-benefits{gap:28px}
.immigration-page .role-grid p:last-child{margin-bottom:0}
.immigration-page .questions details{padding-block:14px}
.immigration-page .questions summary,.service-questions summary{font-size:17px;min-height:48px}
.immigration-page .questions details p,.service-questions details p{font-size:16px;line-height:1.65}
.medical-rcm .rcm-card-mark{width:36px;height:36px;font-size:22px;margin-bottom:16px}
.medical-rcm .rcm-benefits li{padding-block:14px}
.medical-rcm .rcm-flow>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-bottom:18px}
.medical-rcm .rcm-audience-grid{gap:22px}
.medical-rcm .rcm-consultation{padding-block:32px;gap:24px}
.medical-rcm .rcm-consultation p{font-size:16px;line-height:1.6}
.service-process{padding-block:32px}
.service-process ol{gap:24px}
.about-page,.contact-page{padding-block:36px;gap:32px}
.about-brand{padding:22px}
.about-brand img{height:140px}
.about-brand address{padding-top:18px;margin-top:18px}
.process{padding-block:36px;gap:24px}
.process>article{border-top:1px solid var(--line);padding-top:18px;min-width:0}
.process h2{font-size:21px;line-height:1.3;margin:0 0 10px}
.process p{font-size:16px;line-height:1.6}
.contact-choice{font-size:16px;min-height:48px;padding-block:12px}
.contact-choices{margin-block:18px}
.enquiry-frame{padding:20px}
.policy-page{padding-block:36px 44px}
.policy-page>h1{max-width:30ch}
.policy-page .meta{margin-bottom:18px}
.policy-nav{padding-block:12px;margin-bottom:24px;gap:4px 18px}
.policy-nav a{min-height:44px;font-size:15px}
.policy-page section{margin-bottom:28px}
.policy-page section h2{font-size:26px;line-height:1.3;margin-bottom:12px}
.policy-page p,.policy-page li{font-size:17px;line-height:1.65}
.policy-page li{margin-bottom:8px}
.policy-note{padding:20px;margin-bottom:24px}
.policy-cards a{padding:20px;font-size:19px;line-height:1.4}
.policy-cards a span{font-size:16px;line-height:1.55;margin-top:10px}
.cookie-panel{padding:28px}
.cookie-panel h2{font-size:26px;margin-block:12px 16px}
.cookie-panel p,.cookie-category p{font-size:16px;line-height:1.6}
.cookie-category strong{font-size:17px}
.cookie-panel-actions button{font-size:15px}
@media(min-width:1000px){.about-page,.contact-page{grid-template-columns:1.1fr 1fr}.about-brand{max-width:none}}
@media(min-width:601px){.site-footer>div{padding-inline-end:160px}}
@media(max-width:800px){.about-page,.contact-page{gap:24px}.about-brand{gap:20px}.about-brand address{padding-top:0;margin-top:0}.service-process ol{gap:20px}}
@media(max-width:600px){
 .business-hero h1{font-size:clamp(30px,7.7vw,36px)}
 .service-page .service-visual{padding:20px}
 .service-page .service-visual h2{font-size:24px}
 .service-page .service-cards :is(h2,h3),.immigration-page .role-grid h3{font-size:21px}
 .about-page,.contact-page{padding-block:32px}
 .about-brand{padding:20px}
 .about-brand address{padding-top:18px;margin-top:18px}
 .process{padding-block:32px}
 .policy-page{padding-block:28px 36px}
 .policy-page section h2{font-size:24px}
 .policy-note,.policy-cards a{padding:18px}
 .policy-nav{gap:2px 16px}
 .enquiry-frame{padding:16px 12px}
 .cookie-panel{padding:26px 20px}
 .immigration-page .role-grid,.medical-rcm .rcm-benefits{gap:22px}
}
.about-page .eyebrow,.contact-page .eyebrow{font-size:14px;line-height:1.55}
