[x-cloak]{display:none!important}html[lang=en] body{font-family:Manrope,Arial,sans-serif}html[lang=ur-PK] body{font-family:'Noto Nastaliq Urdu',Estedad,serif;line-height:2.5}body{overflow-x:clip}.main-nav{gap:22px}.nav-shell{gap:25px}.services-trigger{border:0;background:none;padding:10px 0;font-size:inherit;font-weight:inherit;display:flex;gap:8px;align-items:center}.services-menu{position:relative}.services-dropdown{position:absolute;top:calc(100% + 15px);inset-inline-start:-35px;width:410px;background:#fff;padding:14px;border:1px solid #dce7e0;box-shadow:0 20px 45px #12373114;border-radius:10px}.services-dropdown a{display:flex;align-items:flex-start;gap:17px;padding:16px;border-radius:6px}.services-dropdown a:hover{background:#f1f6f2}.services-dropdown a:after{display:none}.services-dropdown svg{width:32px;min-width:32px;color:#238878}.services-dropdown strong{display:block;font-size:12px}.services-dropdown small{display:block;font-size:10px;font-weight:400;color:#7b8e81;line-height:1.9;margin-top:4px}.locale-menu{position:relative;font-size:11px;white-space:nowrap}.locale-menu summary{list-style:none;display:flex;gap:8px;cursor:pointer}.locale-menu>div{position:absolute;background:white;border:1px solid #dfe8e2;border-radius:7px;padding:9px;top:35px;inset-inline-end:0;min-width:100px;box-shadow:0 8px 30px #15372c12}.locale-menu a{display:block;padding:8px}.locale-menu [aria-current]{color:#087f7d;background:#eff6f1}.hero h1{font-size:46px}.hero-copy{width:60%;max-width:670px}.hero-description{max-width:570px}.hero-disciplines{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:34px}.hero-disciplines a{display:flex;gap:8px;align-items:center;font-size:10px;color:#c3ded3}.hero-disciplines svg{width:24px;height:24px}.domain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.domain-card{padding:32px;background:white;border:1px solid #dfe7df;border-radius:7px;transition:transform .25s,border-color .25s;display:flex;flex-direction:column}.domain-card:hover{transform:translateY(-5px);border-color:#6d9f92}.domain-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.domain-top svg{width:44px;height:44px;color:#197e72}.domain-top>span{font:11px Manrope;color:#94a99b}.domain-card h3{font-size:21px;min-height:65px}.domain-card>p{font-size:12px;line-height:2.1;color:#6c8176;margin:18px 0}.domain-card>a{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#087f7d;font-weight:600;margin-top:auto;border-top:1px solid #e4ebe5;padding-top:19px}.domain-mini{display:flex;align-items:center;justify-content:center;gap:8px;margin:15px 0 30px;height:65px;background:linear-gradient(135deg,#f7faf6,#edf4ef);border-radius:4px}.domain-mini span{width:26px;height:26px;background:#bdd7c9;border:1px solid #8bb8a3;border-radius:5px}.domain-mini span:nth-of-type(2){width:36px;height:36px;transform:rotate(45deg);background:#8bbaa5}.domain-mini i{width:32px;height:1px;background:#9fbfb1}.journey-stages{display:flex;position:relative;gap:18px;align-items:stretch}.journey-stages:before{content:'';position:absolute;top:23px;inset-inline:30px;height:1px;background:#427365}.journey-stages button{flex:1;position:relative;background:transparent;border:0;color:#a7c5b8;text-align:start;padding:0 0 20px}.journey-stages button>span{position:relative;display:grid;place-items:center;width:48px;height:48px;background:#153e3e;border:1px solid #4e7c70;border-radius:50%;margin-bottom:18px;font:12px Manrope}.journey-stages strong{display:block;font-size:14px;line-height:1.8}.journey-stages .is-current{color:#e4f6ec}.journey-stages .is-current>span{background:#a8ddc7;color:#153f35;border-color:#a8ddc7;box-shadow:0 0 0 7px #9adbc015}.journey-detail{display:flex;align-items:center;gap:22px;padding:25px 30px;background:#ffffff06;border:1px solid #51837355;border-radius:7px;margin-top:12px;min-height:105px;font-size:14px;color:#d0e4d9}.journey-detail>span{font-size:30px;color:#a1d4bb}.service-picker{background:#f1f5ef}.picker-domains{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.picker-domains button{display:flex;align-items:center;gap:15px;padding:24px;background:#fff;border:1px solid #d6e3d8;border-radius:6px;text-align:start;font-size:13px}.picker-domains button>span:last-child{margin-inline-start:auto;font-size:20px;color:#428d73}.picker-domains svg{width:33px;min-width:33px;height:33px;color:#218678}.picker-domains button.chosen{background:#e0eee2;border-color:#3b8c70}.picker-services{border:1px solid #d3dfd2;border-radius:6px;margin:24px 0;padding:20px}.picker-services legend{font-size:14px;padding:0 12px;color:#1e7162}.picker-services>div{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.picker-services label{display:flex;align-items:flex-start;gap:12px;padding:16px;background:white;border-radius:5px;cursor:pointer}.picker-services strong{display:block;font-size:12px}.picker-services small{display:block;font-size:10px;line-height:2;color:#7c8f80;margin-top:5px}.picker-services input,.picker-guidance input{accent-color:#187b69;margin-top:6px}.picker-guidance{display:flex;align-items:center;gap:12px;margin-top:30px;font-size:13px}.picker-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:20px}.picker-actions>span{font-size:12px;color:#6b8575}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.corporate-footer-links{display:flex;flex-wrap:wrap;gap:14px 30px;font-size:11px;color:#527367;padding:25px 0;border-bottom:1px solid #e5ece5}.service-hero{background:#112e35;color:#fff;padding:65px 0 70px;position:relative;overflow:hidden}.service-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.service-hero .eyebrow{color:#a3cdbb;font-size:11px}.service-hero h1{font-size:43px;line-height:1.65;letter-spacing:-1.2px}.service-hero p{color:#b6cbc5;font-size:14px;line-height:2.2;margin:23px 0 30px;max-width:540px}.service-visual{position:relative;border:1px solid #79b29b40;border-radius:18px;background:radial-gradient(ellipse at center,#49796755,#173e3c00 70%);overflow:hidden;min-height:385px}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(#91b9a809 1px,transparent 1px),linear-gradient(90deg,#91b9a809 1px,transparent 1px);background-size:30px 30px;mask-image:radial-gradient(ellipse at center,#000,transparent)}.visual-structure{width:100%;position:relative;filter:drop-shadow(0 15px 30px #0002);animation:visual-float 7s ease-in-out infinite}.visual-caption{position:absolute;top:18px;inset-inline-start:22px;font:9px Manrope;letter-spacing:2px;color:#8bb4a3}.visual-node-labels{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:0 15px 20px;position:relative}.visual-node-labels span{padding:5px 12px;background:#65978020;color:#b5d6c3;border:1px solid #78a98f30;border-radius:20px;font-size:10px}.service-intro{max-width:970px}.service-intro .large-copy{font-size:24px;line-height:2}.legal-scope{font-size:12px;padding:20px;border-inline-start:3px solid #8eb6a0;background:#f2f6f1;color:#5b7969;margin-top:25px}.subservice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #d9e2d8;border-inline-start:1px solid #d9e2d8}.subservice{padding:30px;border-bottom:1px solid #d9e2d8;border-inline-end:1px solid #d9e2d8;background:#fff9}.subservice>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.subservice svg{width:31px;height:31px;color:#448d7c}.subservice>div>span{font:10px Manrope;color:#8fa695}.subservice h3{font-size:17px;margin-bottom:17px}.subservice p{font-size:12px;color:#6b8072;line-height:2}.subservice small{display:block;margin:22px 0 5px;color:#2c8069;font-size:9px}.subservice .service-benefit{color:#345f4d;font-size:11px}.service-challenges{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.service-challenges h2{font-size:30px}.service-challenges ol{padding:0;margin:0;list-style:none}.service-challenges li{display:flex;align-items:center;gap:25px;border-bottom:1px solid #e2e9e0;padding:22px 0;font-size:14px}.service-challenges li>span{font:11px Manrope;color:#5b9a80}.outcomes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.outcomes-grid>div{display:flex;align-items:center;gap:18px;background:#f3f7f1;padding:25px;border-radius:5px;font-size:14px}.outcomes-grid span{color:#257b64}.diagram-suite{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:55px}.explanatory-diagram{padding:26px;border:1px solid #dfE8dc;border-radius:8px;background:#fbfcfa}.explanatory-diagram h3{font-size:15px;color:#36735c;margin-bottom:25px}.diagram-nodes{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:120px}.diagram-nodes span{font-size:10px;background:#e3eee0;padding:14px 8px;border:1px solid #bbd0b4;border-radius:5px;text-align:center;flex:1;position:relative}.diagram-nodes span:not(:last-child):after{position:absolute;content:'';width:10px;height:1px;background:#8da884;inset-inline-start:100%;top:50%}.diagram-org{flex-wrap:wrap;justify-content:center;align-items:flex-start}.diagram-org span:first-child{flex-basis:100%;margin-inline:32%;background:#c2d8bd}.diagram-org span:first-child:after{height:20px;width:1px;top:100%;inset-inline-start:50%}.diagram-kpi{align-items:flex-end}.diagram-kpi span{border:0;border-bottom:3px solid #5f976f}.diagram-kpi span:nth-child(2){padding-top:40px}.diagram-kpi span:nth-child(3){padding-top:55px}.diagram-cycle,.diagram-contract{flex-wrap:wrap}.diagram-cycle span,.diagram-contract span{flex-basis:40%;border-radius:30px}.diagram-integration span:nth-child(2){background:#b8d4c6;padding-block:35px}.diagram-note{font-size:10px;color:#8a9e8d;margin-top:16px}.consultation-section .contact-layout{grid-template-columns:.65fr 1.35fr;gap:70px}.consultation-choices{border:1px solid #dce6dd;padding:16px;margin:0;min-width:0;border-radius:6px}.consultation-choices legend{font-size:12px;color:#247762;padding:0 8px}.consultation-choices label{display:flex;align-items:flex-start;gap:12px;padding:8px 0;font-size:11px;cursor:pointer}.consultation-choices small{display:block;color:#8a9d8f;font-size:10px;line-height:2}.consultation-choices input,.consultation-consent input{accent-color:#087f7d;width:16px;min-width:16px;height:16px;margin-top:4px}.consultation-consent{display:flex;align-items:flex-start;gap:12px;font-size:11px;line-height:2.1}.consultation-consent a{color:#16836c;text-decoration:underline}.contact-field select{width:100%;font:inherit;font-size:12px;padding:12px;background:#fbfcfb;border:1px solid #dbe5df;border-radius:7px;color:#214c39}.upload-hint{font-size:10px;color:#82948a;margin-top:9px;line-height:2}.privacy-page{max-width:900px}.privacy-page h1{font-size:36px;margin-bottom:30px}.privacy-page p{line-height:2.3}html[lang=en] .contact-intro h2,html[lang=en] .contact-success h3{letter-spacing:-1px}html[lang=ur-PK] .hero h1{font-size:37px;line-height:2.3}html[lang=ur-PK] .service-hero h1{font-size:33px;line-height:2.2}html[lang=ur-PK] .subservice h3{line-height:2.5}html[lang=ur-PK] .contact-field label{line-height:2.8}html[lang=ur-PK] .main-nav{font-size:10px}html[lang=ur-PK] .service-visual{font-family:Estedad,Arial,sans-serif}@keyframes visual-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:1100px){.main-nav{gap:14px}.nav-shell{gap:18px}.brand img{width:160px}.nav-actions{gap:12px}.header-cta{padding-inline:12px!important;font-size:10px!important}.hero h1{font-size:40px}.hero-copy{width:65%}.service-hero-grid{gap:30px}.service-hero h1{font-size:36px}.domain-card{padding:25px}.consultation-section .contact-layout{gap:35px}.journey-stages strong{font-size:12px}}
@media(max-width:950px){.main-nav{display:none;position:absolute;top:88px;inset-inline:0;background:#fff;padding:20px 30px;box-shadow:0 12px 15px #142f3310;flex-direction:column;align-items:stretch}.main-nav.is-open{display:flex}.menu-toggle{display:block}.main-nav>a{padding:12px 0}.services-trigger{width:100%;justify-content:space-between}.services-dropdown{position:static;width:100%;box-shadow:none;margin:8px 0;border:0;border-inline-start:2px solid #b5d7c2;border-radius:0;padding:0}.services-dropdown a{padding:12px}.services-dropdown small{font-size:10px}.domain-grid{gap:12px}.domain-card{padding:22px}.domain-card h3{font-size:18px}.subservice-grid{grid-template-columns:repeat(2,1fr)}.consultation-section .contact-layout{grid-template-columns:1fr}.contact-intro{max-width:700px}.service-challenges{gap:35px}}
@media(max-width:760px){.main-nav{top:76px;max-height:calc(100dvh - 76px);overflow:auto}.main-nav a{border-bottom:0}.services-dropdown a{border:0}.nav-shell{gap:12px}.nav-actions{gap:12px}.header-cta{display:none}.hero-copy{width:100%;max-width:100%}.hero h1{font-size:33px;line-height:1.7}.hero-description{font-size:13px}.hero-inner{padding-block:45px 300px}.hero-disciplines{gap:13px;margin-top:25px}.hero-disciplines a{font-size:9px}.hero-disciplines svg{width:20px;height:20px}.domain-grid{grid-template-columns:1fr}.domain-card h3{min-height:0;font-size:22px}.domain-card{padding:28px}.domain-mini{height:60px;margin:5px 0 20px}.domain-top{margin-bottom:20px}.picker-domains{grid-template-columns:1fr;gap:10px}.picker-domains button{padding:18px}.picker-services>div{grid-template-columns:1fr}.picker-actions{align-items:stretch;flex-direction:column}.journey-stages{flex-direction:column;gap:15px}.journey-stages:before{inset-inline-start:23px;inset-inline-end:auto;top:20px;bottom:20px;height:auto;width:1px}.journey-stages button{display:flex;align-items:center;gap:20px;padding:0;min-height:49px}.journey-stages button>span{margin:0;width:48px;min-width:48px}.journey-stages strong{font-size:14px}.journey-detail{margin-top:25px;padding:20px;font-size:12px}.service-hero{padding:35px 0 45px}.service-hero-grid{grid-template-columns:1fr;gap:35px}.service-hero h1{font-size:32px}.service-hero p{font-size:12px}.service-visual{min-height:0}.visual-structure{max-height:310px}.service-intro .large-copy{font-size:19px}.service-challenges{grid-template-columns:1fr;gap:25px}.service-challenges h2{font-size:28px}.outcomes-grid,.diagram-suite{grid-template-columns:1fr}.outcomes-grid>div{font-size:12px;padding:20px}.subservice{padding:24px}.subservice h3{font-size:16px}.subservice p{font-size:11px}.corporate-footer-links{flex-direction:column;gap:15px}.contact-intro h2{font-size:31px}.consultation-section .contact-card{padding:25px 20px}.privacy-page h1{font-size:29px}html[lang=en] .hero h1{font-size:34px;line-height:1.3}html[lang=ur-PK] .hero h1{font-size:29px}html[lang=ur-PK] .hero-inner{padding-bottom:300px}html[lang=ur-PK] .hero{min-height:930px}html[lang=ur-PK] .hero-image{background-size:auto 450px}html[lang=ur-PK] .service-hero h1{font-size:28px}}
@media(max-width:480px){.subservice-grid{grid-template-columns:1fr}.diagram-nodes{flex-wrap:wrap}.diagram-nodes span{flex-basis:40%}.hero-disciplines{max-width:300px}.hero-copy h1{font-size:30px}.locale-menu{font-size:10px}.brand img{width:145px}}
@media(prefers-reduced-motion:reduce){.visual-structure{animation:none}.domain-card{transition:none}}
.mobile-consult-cta{display:none}.domain-card:nth-child(2) .domain-mini span{height:40px;width:28px;transform:rotate(-8deg);border-radius:3px}.domain-card:nth-child(2) .domain-mini span:nth-of-type(2){transform:rotate(8deg);height:48px}.domain-card:nth-child(2) .domain-mini i{width:12px}.domain-card:nth-child(3) .domain-mini span:nth-of-type(2){transform:translateY(-15px);border-radius:5px}.domain-card:nth-child(3) .domain-mini i{transform:rotate(-20deg)}html[lang=ur-PK] .locale-menu{font-size:14px}html[lang=ur-PK] .main-nav{font-size:13px}@media(max-width:950px){.main-nav .mobile-consult-cta{display:block;background:#087f7d;color:white;text-align:center;padding:14px;margin-top:16px;border-radius:5px}}
.domain-grid,.picker-domains{grid-template-columns:repeat(2,minmax(0,1fr))}.domain-card:nth-child(4) .domain-mini span{border-radius:50%;transform:none}.domain-card:nth-child(4) .domain-mini span:nth-of-type(1){width:22px;height:22px}.domain-card:nth-child(4) .domain-mini span:nth-of-type(2){width:34px;height:34px}.domain-card:nth-child(4) .domain-mini span:nth-of-type(3){width:45px;height:45px;background:#82b39d}.diagram-customer_journey span{border-radius:30px}.diagram-campaign span:nth-child(3){background:#c1dacb}@media(max-width:760px){.domain-grid,.picker-domains{grid-template-columns:1fr}}

/* Local Lucide icons and editorial service photography. */
.ui-icon { display: inline-block; flex: none; vertical-align: middle; }
.button > .ui-icon, .text-link > .ui-icon, .domain-card > a > .ui-icon,
.home-all-jobs > .ui-icon { width: 20px; height: 20px; }
.services-trigger > .ui-icon, .locale-menu summary > .ui-icon { width: 14px; height: 14px; }
.services-dropdown .ui-icon { width: 28px; min-width: 28px; height: 28px; }
.services-trigger[aria-expanded=true] > .ui-icon,
.locale-menu[open] summary > .ui-icon { transform: rotate(180deg); }
.locale-menu summary { align-items: center; }
.menu-toggle > .ui-icon { width: 24px; height: 24px; }
.picker-state { display: inline-flex; align-items: center; }
.picker-state .ui-icon { width: 20px; min-width: 20px; height: 20px; }
.journey-detail > .ui-icon { width: 26px; height: 26px; color: #a1d4bb; }
.outcomes-grid > div > .ui-icon { width: 22px; height: 22px; color: #257b64; }
.contact-success-icon > .ui-icon { width: 32px; height: 32px; }
.consultation-consent a, .home-all-jobs { display: inline-flex; align-items: center; gap: 8px; }
.faq-list summary::after, .faq-list details[open] summary::after { content: none; }
.faq-toggle { display: inline-flex; color: #087f7d; flex: none; }
.faq-toggle .ui-icon { width: 20px; height: 20px; }
.faq-close-icon, details[open] .faq-open-icon { display: none; }
details[open] .faq-close-icon { display: inline-block; }
.domain-photo { overflow: hidden; border-radius: 6px; margin: 0 0 28px; }
.domain-photo img { width: 100%; height: 200px; object-fit: cover; }
.service-photo-panel {
    position: relative;
    margin: 0;
}
.service-portrait {
    --portrait-surface: #2b9d83;
    --portrait-ink: #367d6c;
    position: relative;
    isolation: isolate;
    width: 100%;
    max-width: 520px;
    aspect-ratio: 1;
    margin-inline: auto;
}
.portrait-backdrop {
    position: absolute;
    inset: 18% 5% 4%;
    z-index: 1;
    border-radius: 48% 52% 58% 42% / 50% 48% 52% 50%;
    background: var(--portrait-surface);
    transform: rotate(-7deg);
}
.portrait-legal { --portrait-surface: #268c80; }
.portrait-legal .portrait-backdrop { border-radius: 50%; transform: none; }
.portrait-management { --portrait-surface: #278f77; }
.portrait-management .portrait-backdrop { border-radius: 54% 46% 39% 61% / 45% 53% 47% 55%; transform: rotate(6deg); }
.portrait-marketing { --portrait-surface: #3c9e88; }
.portrait-marketing .portrait-backdrop { border-radius: 42% 58% 52% 48% / 57% 44% 56% 43%; transform: rotate(-5deg); }
.portrait-person-frame {
    position: absolute;
    inset: 0 3% 4%;
    z-index: 2;
    overflow: hidden;
    border-radius: 0 0 50% 50% / 0 0 26% 26%;
}
.portrait-person { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.portrait-decoration { position: absolute; pointer-events: none; color: var(--portrait-ink); }
.portrait-dots {
    width: 82px;
    height: 86px;
    z-index: 0;
    opacity: .5;
    background: radial-gradient(circle, transparent 1.1px, currentColor 1.3px 2px, transparent 2.2px) 0 0 / 16px 16px;
    animation: portrait-drift 12s ease-in-out infinite;
}
.portrait-dots-top { top: 16%; inset-inline-end: 1%; }
.portrait-dots-bottom { bottom: 3%; inset-inline-start: 0; animation-delay: -6s; }
.portrait-ring {
    top: 25%;
    inset-inline-start: 1%;
    width: 70px;
    height: 70px;
    z-index: 0;
    border: 1px solid currentColor;
    border-radius: 50%;
    opacity: .55;
    animation: portrait-orbit 24s linear infinite;
}
.portrait-ring::after { content: ''; position: absolute; top: -3px; left: calc(50% - 3px); width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.portrait-diamond {
    top: 8%;
    inset-inline-end: 10%;
    width: 26px;
    height: 26px;
    z-index: 0;
    border: 1px solid currentColor;
    opacity: .65;
    animation: portrait-tilt 14s ease-in-out infinite;
}
.portrait-cross { bottom: 15%; inset-inline-start: 5%; width: 22px; height: 22px; z-index: 0; opacity: .7; animation: portrait-drift 10s ease-in-out -3s infinite; }
.portrait-cross::before, .portrait-cross::after { content: ''; position: absolute; background: currentColor; }
.portrait-cross::before { width: 22px; height: 1px; top: 10px; left: 0; }
.portrait-cross::after { width: 1px; height: 22px; top: 0; left: 10px; }
.service-photo-panel .service-portrait { --portrait-ink: #b6dbcc; }
@keyframes portrait-drift { 0%, 100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, -8px, 0); } }
@keyframes portrait-orbit { to { transform: rotate(360deg); } }
@keyframes portrait-tilt { 0%, 100% { transform: translateY(0) rotate(45deg); } 50% { transform: translateY(-6px) rotate(54deg); } }
@media (prefers-reduced-motion: reduce) { .portrait-decoration { animation: none; } }
.service-photo-panel figcaption {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px 12px 0;
    color: #fff;
    font-size: 12px;
    line-height: 2;
}
.photo-caption-brand { font: 9px Manrope, Arial, sans-serif; letter-spacing: 2px; color: #d7e9e1; }
@media (max-width: 760px) {
    .domain-photo img { height: 180px; }
    .service-photo-panel figcaption { padding: 20px 6px 0; font-size: 11px; }
    .portrait-dots { width: 65px; height: 68px; background-size: 14px 14px; }
    .portrait-ring { width: 48px; height: 48px; }
    .portrait-diamond { width: 20px; height: 20px; }
}

/* Open layouts for domains and the services within each domain. */
.domain-section { background: #fafbf8; }
.domain-section .section-heading { margin-bottom: 48px; }
.domain-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: 'media copy';
    gap: clamp(32px, 5vw, 76px);
    align-items: center;
    padding-block: 48px;
    border-top: 1px solid #dce5dd;
}
.domain-row:nth-child(even) { grid-template-areas: 'copy media'; }
.domain-row-media { grid-area: media; }
.domain-row-copy { grid-area: copy; padding-block: 8px; }
.domain-row-meta { display: flex; align-items: flex-end; gap: 28px; margin-bottom: 28px; color: #41877a; }
.domain-row-meta > span { font: 300 clamp(76px, 7.5vw, 108px)/.95 Manrope, Arial, sans-serif; letter-spacing: -.075em; color: #2e7c6f; direction: ltr; }
.domain-row-meta > .ui-icon { width: 48px; height: 48px; stroke-width: .7; margin-bottom: 6px; }
.domain-row h3 { max-width: 490px; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.7; }
.domain-row-copy > p { max-width: 490px; margin-top: 20px; font-size: 14px; line-height: 2.2; color: #63796e; }
.domain-link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    margin-top: 24px;
    padding-block: 10px;
    border-bottom: 1px solid #7ba99a;
    color: #087f7d;
    font-size: 12px;
    font-weight: 600;
}
.domain-link:hover { border-color: #087f7d; }
.domain-rows + .service-note { margin-top: 0; padding-top: 24px; border-top: 1px solid #dce5dd; }
.service-lines { margin: 0; padding: 0; list-style: none; }
.service-line {
    display: grid;
    grid-template-columns: 88px minmax(0, 1.35fr) minmax(0, .8fr);
    gap: 32px;
    align-items: start;
    padding-block: 32px;
    border-top: 1px solid #d9e2d8;
}
.service-line:last-child { border-bottom: 1px solid #d9e2d8; }
.service-line-number { font: 300 56px/1.1 Manrope, Arial, sans-serif; letter-spacing: -.065em; color: #2e7c6f; direction: ltr; }
.service-line-copy h3 { font-size: 20px; line-height: 1.8; }
.service-line-copy p { max-width: 66ch; margin-top: 14px; color: #6b8072; font-size: 14px; line-height: 2.1; }
.service-line-value { padding-top: 5px; }
.service-line-value > span { color: #41836e; font-size: 10px; }
.service-line-value p { margin-top: 10px; color: #345f4d; font-size: 13px; line-height: 2.1; }
.principles > div > span { font-size: 20px; font-weight: 300; }
.value > span { font: 300 52px/1.1 Manrope, Arial, sans-serif; letter-spacing: -.065em; }
.service-challenges li > span { font: 300 34px/1.2 Manrope, Arial, sans-serif; letter-spacing: -.065em; }
.journey-stages button > span { font-size: 18px; }
.service-picker .picker-domains { grid-template-columns: 1fr; gap: 0; border-top: 1px solid #ccdcd0; }
.service-picker .picker-domains button { padding: 24px 0; gap: 20px; border: 0; border-bottom: 1px solid #ccdcd0; border-radius: 0; background: transparent; }
.service-picker .picker-domains button.chosen { background: #e4eee2; padding-inline: 18px; border-color: #8fb29e; }
.service-picker .picker-domains button > .ui-icon { width: 28px; min-width: 28px; height: 28px; }
html[lang=ur-PK] .domain-row h3, html[lang=ur-PK] .service-line-copy h3 { line-height: 2.3; }
html[lang=ur-PK] .domain-row-copy > p,
html[lang=ur-PK] .service-line-copy p,
html[lang=ur-PK] .service-line-value p { line-height: 2.7; }
html[lang=en] .domain-row h3 { line-height: 1.35; }
html[lang=en] .service-line-copy h3 { line-height: 1.5; }
@media (max-width: 950px) {
    .domain-row { gap: 32px; padding-block: 40px; }
    .service-line { grid-template-columns: 64px minmax(0, 1.2fr) minmax(0, .8fr); gap: 24px; }
    .service-line-number { font-size: 48px; }
    .service-line-copy h3 { font-size: 18px; }
}
@media (max-width: 760px) {
    .domain-section .section-heading { margin-bottom: 32px; }
    .domain-row, .domain-row:nth-child(even) { grid-template-columns: 1fr; grid-template-areas: 'media' 'copy'; gap: 28px; padding-block: 32px 40px; }
    .domain-row-copy { padding: 0; }
    .domain-row-meta { margin-bottom: 24px; gap: 24px; }
    .domain-row-meta > span { font-size: 80px; }
    .domain-row-meta > .ui-icon { width: 42px; height: 42px; }
    .domain-row h3 { font-size: 25px; }
    .domain-row-copy > p { font-size: 13px; margin-top: 16px; }
    .domain-link { margin-top: 18px; }
    .service-line { grid-template-columns: 50px minmax(0, 1fr); gap: 12px 18px; padding-block: 28px; }
    .service-line-number { font-size: 40px; }
    .service-line-value { grid-column: 2; padding-top: 0; }
    .service-line-copy h3 { font-size: 17px; }
    .service-line-copy p { margin-top: 10px; }
    .service-line-value p { margin-top: 6px; }
}

/* A shared spacing rhythm for the public pages. */
:root {
    --section-space: clamp(64px, 7vw, 96px);
    --content-gap: clamp(32px, 5vw, 72px);
    --card-space: clamp(24px, 3vw, 36px);
    --grid-space: 24px;
}

.section { padding-block: var(--section-space); }
.section-heading { gap: var(--content-gap); margin-bottom: 40px; }
.section-heading .heading-aside { line-height: 2.1; }
.about, .faq-layout, .service-challenges { gap: var(--content-gap); }
.about-content .large-copy { margin-bottom: 24px; }
.service-intro .large-copy { margin-bottom: 0; }
.service-hero { padding-block: 80px; }
.service-hero-grid { gap: var(--content-gap); }
.service-hero .eyebrow { margin-bottom: 24px; line-height: 2; }
.service-hero p { margin-block: 24px 32px; }
.hero-buttons { gap: 24px 32px; }
.hero-disciplines { gap: 16px 24px; margin-top: 36px; }

.domain-grid, .picker-domains, .outcomes-grid, .diagram-suite {
    gap: var(--grid-space);
}
.domain-card { padding: var(--card-space); }
.domain-top { margin-bottom: 24px; }
.domain-card h3 { min-height: 0; line-height: 1.8; }
.domain-card > p { margin-block: 20px 24px; font-size: 13px; line-height: 2.1; }
.domain-mini { margin-block: 0 28px; height: 72px; }
.domain-card > a { padding-top: 22px; }
.service-note { margin-top: 28px; }

.subservice-grid { gap: var(--grid-space); border: 0; }
.subservice {
    padding: var(--card-space);
    border: 1px solid #d9e2d8;
    border-radius: 8px;
}
.subservice > div { margin-bottom: 28px; }
.subservice h3 { margin-bottom: 18px; line-height: 1.9; }
.subservice p { font-size: 13px; line-height: 2.1; }
.subservice small { margin-block: 24px 8px; }
.subservice .service-benefit { font-size: 12px; }
.service-challenges li { gap: 24px; padding-block: 24px; line-height: 2.1; }
.outcomes-grid > div { gap: 20px; padding: 28px; line-height: 2; }
.diagram-suite { margin-top: 40px; }
.explanatory-diagram { padding: 28px; }
.explanatory-diagram h3 { margin-bottom: 28px; line-height: 2; }
.diagram-note { margin-top: 20px; line-height: 2; }

.approach .section-heading { margin-bottom: 48px; }
.journey-stages { gap: 24px; }
.journey-stages button { padding-bottom: 24px; }
.journey-stages button > span { margin-bottom: 24px; }
.journey-detail { margin-top: 20px; padding: 28px 32px; line-height: 2; }
.picker-domains button { gap: 20px; padding: 28px; line-height: 2; }
.picker-services { margin-block: 28px; padding: 24px; }
.picker-services > div { gap: 16px; }
.picker-services label { gap: 16px; padding: 20px; }
.picker-actions { margin-top: 32px; gap: 24px; }
.faq-list summary { gap: 24px; padding-block: 24px; line-height: 2; }
.faq-list details > p { padding-block: 0 28px; line-height: 2.2; }
.home-job { gap: 32px; padding: var(--card-space); }
.home-job h3 { margin-block: 0; }

.consultation-section .contact-layout { gap: var(--content-gap); }
.contact-intro { padding-top: 8px; }
.contact-intro h2 { margin-block: 24px; }
.contact-promise { gap: 20px; margin-block: 32px 28px; padding-block: 28px; }
.consultation-section .contact-card { padding: 40px; }
.contact-card-heading h3 { margin-bottom: 12px; line-height: 1.9; }
.contact-card-heading p { margin-bottom: 32px; line-height: 2.1; }
.contact-fields { gap: 28px 24px; }
.contact-field label { margin-bottom: 12px; font-size: 13px; line-height: 2; }
.contact-field input, .contact-field textarea, .contact-field select {
    min-height: 52px;
    padding: 14px 16px;
    font-size: 14px;
    line-height: 1.8;
}
.contact-field textarea { min-height: 176px; line-height: 2; }
#consultation-document-links { min-height: 120px; }
.consultation-choices { padding: 20px 24px; }
.consultation-choices legend { padding-inline: 10px; line-height: 2; }
.consultation-choices label { gap: 14px; padding-block: 12px; font-size: 12px; line-height: 2; }
.consultation-choices small { margin-top: 6px; line-height: 2.1; }
.consultation-choices input, .consultation-consent input { margin-top: 5px; }
.consultation-consent { gap: 14px; font-size: 12px; line-height: 2.2; }
.upload-hint { margin-top: 12px; line-height: 2.1; }
.contact-submit { gap: 24px; margin-top: 32px; }
.contact-submit small { max-width: 300px; line-height: 2.1; }
.site-footer { padding-block: 48px 28px; }
.corporate-footer-links { gap: 20px 32px; padding-block: 28px; }

html[lang=ur-PK] .service-hero .eyebrow { line-height: 2.8; }
html[lang=ur-PK] .domain-card h3,
html[lang=ur-PK] .subservice h3,
html[lang=ur-PK] .contact-card-heading h3 { line-height: 2.5; }
html[lang=ur-PK] .domain-card > p,
html[lang=ur-PK] .subservice p,
html[lang=ur-PK] .contact-card-heading p,
html[lang=ur-PK] .consultation-choices label,
html[lang=ur-PK] .consultation-consent,
html[lang=ur-PK] .faq-list summary { line-height: 2.7; }
html[lang=ur-PK] .contact-field input:not([dir=ltr]),
html[lang=ur-PK] .contact-field textarea:not([dir=ltr]),
html[lang=ur-PK] .contact-field select { line-height: 2.6; }

@media (max-width: 1100px) {
    .service-hero { padding-block: 64px; }
    .consultation-section .contact-card { padding: 32px; }
}

@media (max-width: 760px) {
    :root { --grid-space: 20px; }
    .section-heading, .approach .section-heading { margin-bottom: 32px; }
    .section-heading .heading-aside { margin-top: 20px; }
    .service-hero { padding-block: 48px; }
    .service-hero-grid { gap: 40px; }
    .service-hero .eyebrow { margin-bottom: 20px; }
    .service-hero p { margin-block: 24px 28px; }
    .hero-disciplines { gap: 16px 20px; margin-top: 32px; }
    .domain-card { padding: 28px; }
    .subservice { padding: 24px; }
    .subservice > div { margin-bottom: 24px; }
    .outcomes-grid > div, .explanatory-diagram { padding: 24px; }
    .journey-stages { gap: 24px; }
    .journey-stages button { padding: 0; }
    .journey-stages button > span { margin: 0; }
    .journey-detail { margin-top: 28px; padding: 24px; }
    .picker-domains button { padding: 24px; gap: 16px; }
    .picker-services { padding: 16px; }
    .picker-services label { padding: 18px; }
    .faq-layout { gap: 32px; }
    .faq-list summary { padding-block: 22px; }
    .home-job .button { margin-top: 24px; }
    .consultation-section .contact-layout { gap: 36px; }
    .consultation-section .contact-card { padding: 28px 22px; }
    .contact-fields { gap: 26px; }
    .contact-promise { margin-top: 28px; }
    .contact-card-heading p { margin-bottom: 28px; }
    .consultation-choices { padding: 18px 16px; }
    .consultation-choices legend { max-width: 100%; }
    .contact-submit { gap: 20px; }
    .site-footer { padding-block: 40px 24px; }
}
