:root {
  --color-ink: #142438;
  --color-ink-soft: #405267;
  --color-muted: #687789;
  --color-teal: #09B5C1;
  --color-teal-dark: #087f89;
  --color-navy: #10263d;
  --color-violet: #7565d8;
  --color-yellow: #f2c94c;
  --color-paper: #ffffff;
  --color-cloud: #f5f8fa;
  --color-line: #e4ebef;
  --radius-card: 22px;
  --shadow-soft: 0 16px 48px rgba(20, 36, 56, .08);
  --container: 1160px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { margin: 0; color: var(--color-ink); background: var(--color-paper); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
p { margin: 0 0 1rem; color: var(--color-ink-soft); }
h1, h2, h3, h4 { margin: 0; color: var(--color-ink); line-height: 1.12; letter-spacing: -.035em; }
h1 { font-size: clamp(2.8rem, 5.2vw, 5rem); font-weight: 750; }
h2 { font-size: clamp(2.1rem, 3.8vw, 3.4rem); font-weight: 730; }
h3 { font-size: 1.25rem; font-weight: 700; }
.container { width: min(var(--container), calc(100% - 48px)); margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: 10px 16px; color: white; background: var(--color-navy); border-radius: 8px; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--color-teal); outline-offset: 3px; }
.site-header { position: sticky; z-index: 100; top: 0; background: rgba(255,255,255,.92); border-bottom: 1px solid rgba(228,235,239,.85); backdrop-filter: blur(16px); }
.header-inner { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand { flex-shrink: 0; }
.wordmark { display: inline-flex; align-items: center; gap: 10px; font-size: 1.58rem; font-weight: 780; letter-spacing: -.065em; color: var(--color-navy); }
.brand-mark { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px 11px 11px 4px; color: var(--color-navy); background: var(--color-teal); font-size: 1.1rem; font-weight: 850; letter-spacing: -.04em; }
.wordmark-dot { color: var(--color-teal-dark); }
.primary-nav { display: flex; align-items: center; gap: 30px; }
.nav-list { display: flex; align-items: center; gap: clamp(18px, 2.4vw, 32px); list-style: none; padding: 0; margin: 0; }
.nav-list a { color: #35475a; font-size: .91rem; font-weight: 620; transition: color .18s ease; }
.nav-list a:hover, .nav-list a:focus-visible { color: var(--color-teal-dark); }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 0 22px; border: 1px solid var(--color-teal); border-radius: 999px; color: #062d34; background: var(--color-teal); font-weight: 720; font-size: .94rem; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(9,181,193,.23); background: #2bc5ce; }
.button-small { min-height: 44px; padding-inline: 18px; font-size: .86rem; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--color-line); border-radius: 12px; background: white; color: var(--color-navy); }
.menu-toggle-lines, .menu-toggle-lines::before, .menu-toggle-lines::after { display: block; width: 18px; height: 2px; margin: auto; background: currentColor; position: relative; }
.menu-toggle-lines::before, .menu-toggle-lines::after { content: ""; position: absolute; left: 0; }
.menu-toggle-lines::before { top: -6px; }
.menu-toggle-lines::after { top: 6px; }
.hero-section { position: relative; overflow: hidden; padding: 84px 0 30px; background: radial-gradient(ellipse at 78% 36%, rgba(9,181,193,.09), transparent 34%), linear-gradient(180deg, #fff 0%, #fbfdfe 100%); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr); align-items: center; gap: 34px; min-height: 510px; }
.hero-copy { position: relative; z-index: 2; padding: 10px 0 30px; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 22px; color: var(--color-teal-dark); font-size: .75rem; line-height: 1.4; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow-line { display: inline-block; width: 24px; height: 2px; background: var(--color-teal); }
.hero-copy h1 { max-width: 700px; }
.text-gradient { color: var(--color-teal-dark); }
.hero-intro { max-width: 580px; margin-top: 26px; font-size: 1.1rem; line-height: 1.8; color: #536477; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 26px; margin-top: 30px; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--color-ink); font-size: .95rem; font-weight: 740; }
.text-link span { color: var(--color-teal-dark); transition: transform .18s ease; }
.text-link:hover span { transform: translateX(4px); }
.hero-proof { display: flex; align-items: center; gap: 10px; margin-top: 38px; color: var(--color-muted); font-size: .83rem; }
.proof-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--color-teal); box-shadow: 0 0 0 5px rgba(9,181,193,.12); }
.hero-visual { min-height: 500px; position: relative; display: grid; place-items: center; isolation: isolate; }
.visual-glow { position: absolute; width: 330px; height: 330px; border-radius: 50%; background: radial-gradient(circle, rgba(9,181,193,.18), rgba(117,101,216,.08) 55%, transparent 72%); filter: blur(6px); }
.visual-orbit { position: absolute; border: 1px solid rgba(9,181,193,.22); border-radius: 50%; transform: rotate(-24deg); }
.orbit-one { width: 420px; height: 250px; }
.orbit-two { width: 320px; height: 430px; border-color: rgba(117,101,216,.2); transform: rotate(48deg); }
.visual-core { position: relative; z-index: 2; width: 176px; height: 176px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; border: 1px solid rgba(255,255,255,.8); border-radius: 40px; background: linear-gradient(145deg, #fff, #f2fbfc); box-shadow: 0 26px 80px rgba(29,94,109,.17), inset 0 0 0 1px rgba(9,181,193,.12); transform: rotate(-4deg); }
.core-symbol { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 22px 22px 22px 8px; background: var(--color-teal); color: var(--color-navy); font-size: 2.5rem; font-weight: 850; line-height: 1; }
.core-caption { color: #4b6473; font-size: .7rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.visual-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 12px; min-width: 200px; padding: 14px 17px; border: 1px solid rgba(228,235,239,.9); border-radius: 17px; background: rgba(255,255,255,.94); box-shadow: var(--shadow-soft); }
.visual-card strong, .visual-card small { display: block; }
.visual-card strong { font-size: .84rem; letter-spacing: -.015em; }
.visual-card small { margin-top: 3px; color: var(--color-muted); font-size: .7rem; }
.card-top { top: 54px; left: 4%; }
.card-right { top: 205px; right: -2%; }
.card-bottom { bottom: 52px; left: 8%; }
.mini-icon { width: 37px; height: 37px; display: grid; place-items: center; border-radius: 12px; font-size: 1.2rem; font-weight: 800; }
.mini-teal { color: #087f89; background: #d9f7f7; }
.mini-violet { color: #5f50bd; background: #ece9ff; }
.mini-yellow { color: #8b6a00; background: #fff5cb; }
.visual-spark { position: absolute; z-index: 1; width: 9px; height: 9px; border-radius: 50%; background: var(--color-yellow); box-shadow: 0 0 0 7px rgba(242,201,76,.13); }
.spark-one { top: 18%; right: 22%; }
.spark-two { bottom: 18%; right: 20%; background: var(--color-violet); box-shadow: 0 0 0 7px rgba(117,101,216,.12); }
.spark-three { top: 48%; left: 8%; width: 6px; height: 6px; background: var(--color-teal); }
.hero-bottom { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-top: 28px; border-top: 1px solid var(--color-line); color: var(--color-muted); font-size: .68rem; font-weight: 800; letter-spacing: .1em; }
.capability-list { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; color: #43576a; font-size: .79rem; letter-spacing: 0; }
.capability-list i { width: 4px; height: 4px; border-radius: 50%; background: var(--color-teal); }
.trust-strip { padding: 22px 0; border-bottom: 1px solid var(--color-line); background: #fff; }
.trust-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.trust-inner p { margin: 0; color: var(--color-ink); font-size: .9rem; font-weight: 700; }
.trust-tag { display: inline-flex; align-items: center; gap: 7px; color: #627283; font-size: .77rem; white-space: nowrap; }
.tiny-check { display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; color: #087f89; background: #def8f8; font-size: .72rem; font-weight: 800; }
.section { padding: 108px 0; }
.section-heading { max-width: 720px; margin-bottom: 44px; }
.section-heading h2 { max-width: 700px; }
.section-heading p { max-width: 560px; margin-top: 18px; font-size: 1.02rem; }
.section-heading-row { display: flex; align-items: end; justify-content: space-between; gap: 50px; max-width: none; }
.section-heading-row > div { max-width: 660px; }
.section-heading-row > p { max-width: 370px; margin-bottom: 5px; }
.service-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 17px; }
.service-card { --service-accent: var(--color-teal); position: relative; display: flex; flex-direction: column; min-height: 330px; padding: 25px; border: 1px solid var(--color-line); border-radius: var(--radius-card); background: white; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.service-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-soft); border-color: rgba(9,181,193,.45); }
.service-teal { --service-accent: #09B5C1; }
.service-violet { --service-accent: #7565d8; }
.service-yellow { --service-accent: #d4a900; }
.service-blue { --service-accent: #428bd2; }
.service-coral { --service-accent: #dc7868; }
.service-mint { --service-accent: #319b83; }
.service-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }
.service-number { color: var(--service-accent); font-size: .76rem; font-weight: 850; letter-spacing: .08em; }
.service-arrow { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; color: var(--service-accent); background: color-mix(in srgb, var(--service-accent) 12%, white); }
.service-card h3 { max-width: 260px; font-size: 1.32rem; }
.service-card > p { margin-top: 13px; font-size: .91rem; line-height: 1.7; }
.service-details { display: grid; gap: 6px; margin-top: auto; padding-top: 18px; color: #657486; font-size: .76rem; }
.details-label { color: var(--service-accent); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.card-link { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--color-line); color: var(--color-ink); font-size: .83rem; font-weight: 750; }
.card-link span { color: var(--service-accent); }
.section-end-link { display: flex; justify-content: center; margin-top: 38px; }
.approach-section { background: var(--color-cloud); }
.approach-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(45px, 8vw, 120px); align-items: start; }
.approach-intro { position: sticky; top: 125px; }
.approach-intro h2 { font-size: clamp(2.3rem, 3.6vw, 3.1rem); }
.approach-intro p { margin-top: 20px; margin-bottom: 24px; }
.process-list { border-top: 1px solid #dce5ea; }
.process-item { display: grid; grid-template-columns: 42px 1fr 34px; gap: 20px; align-items: start; padding: 28px 0; border-bottom: 1px solid #dce5ea; }
.process-number { padding-top: 4px; color: var(--color-teal-dark); font-size: .76rem; font-weight: 850; }
.process-item h3 { margin-bottom: 8px; font-size: 1.13rem; }
.process-item p { margin: 0; font-size: .9rem; }
.process-symbol { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; color: var(--color-teal-dark); background: white; font-size: 1.15rem; }
.industries-section { background: white; }
.industry-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.industry-tile { position: relative; display: flex; flex-direction: column; min-height: 210px; padding: 23px; border: 1px solid var(--color-line); border-radius: 19px; background: white; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.industry-tile:hover { border-color: rgba(9,181,193,.5); transform: translateY(-3px); box-shadow: var(--shadow-soft); }
.industry-icon { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 25px; border-radius: 13px; color: var(--color-teal-dark); background: #e0f8f8; font-size: 1.2rem; font-weight: 800; }
.industry-tile strong { font-size: .98rem; }
.industry-tile > span:not(.industry-icon) { margin-top: 8px; color: var(--color-muted); font-size: .81rem; }
.industry-tile b { position: absolute; top: 25px; right: 22px; color: var(--color-teal-dark); }
.feature-section { padding-top: 20px; }
.feature-panel { position: relative; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 40px; min-height: 410px; overflow: hidden; padding: clamp(35px, 6vw, 70px); border-radius: 30px; color: white; background: var(--color-navy); }
.feature-copy { position: relative; z-index: 2; }
.eyebrow-light { color: #7ce4e8; }
.feature-copy h2 { color: white; font-size: clamp(2.2rem, 3.6vw, 3.25rem); }
.feature-copy h2 span { color: #7ce4e8; }
.feature-copy p { max-width: 520px; margin-top: 20px; color: #c0ced9; }
.button-light { margin-top: 8px; color: var(--color-navy); background: white; border-color: white; }
.button-light:hover { background: #e8fbfc; }
.feature-art { position: relative; min-height: 300px; display: grid; place-items: center; }
.art-ring { position: absolute; width: 270px; height: 270px; border: 1px solid rgba(124,228,232,.38); border-radius: 50%; }
.ring-a { transform: scaleX(.65) rotate(35deg); }
.ring-b { width: 340px; height: 180px; transform: rotate(-32deg); border-color: rgba(168,151,255,.55); }
.art-center { position: relative; display: grid; place-items: center; width: 108px; height: 108px; border-radius: 30px 30px 30px 9px; color: var(--color-navy); background: var(--color-teal); box-shadow: 0 0 70px rgba(9,181,193,.24); font-size: 3.5rem; font-weight: 850; }
.art-center span { color: white; }
.art-label { position: absolute; padding: 8px 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #e0e9ef; background: rgba(255,255,255,.07); font-size: .72rem; }
.art-label-a { top: 20px; left: 0; }
.art-label-b { right: -4px; top: 100px; }
.art-label-c { bottom: 20px; left: 20px; }
.faq-section { background: #f8fafb; }
.faq-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(45px, 8vw, 110px); align-items: start; }
.faq-intro h2 { font-size: clamp(2.25rem, 3.5vw, 3rem); }
.faq-intro p { margin-top: 18px; }
.faq-list { border-top: 1px solid #dce5ea; }
.faq-item { border-bottom: 1px solid #dce5ea; }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0; color: var(--color-ink); cursor: pointer; list-style: none; font-weight: 720; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary span { display: grid; place-items: center; width: 29px; height: 29px; flex-shrink: 0; border-radius: 50%; color: var(--color-teal-dark); background: white; font-size: 1.1rem; transition: transform .18s ease; }
.faq-item[open] summary span { transform: rotate(45deg); }
.faq-item p { max-width: 620px; padding: 0 45px 22px 0; margin: 0; font-size: .92rem; }
.final-cta-section { padding: 30px 0 100px; background: #f8fafb; }
.final-cta { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 40px; overflow: hidden; padding: 44px 48px; border: 1px solid #dcebed; border-radius: 24px; background: white; }
.final-cta .eyebrow { margin-bottom: 12px; }
.final-cta h2 { font-size: clamp(1.9rem, 3vw, 2.7rem); }
.final-cta p { margin: 12px 0 0; }
.cta-orb { position: absolute; right: 20%; top: -100px; width: 230px; height: 230px; border-radius: 50%; background: rgba(9,181,193,.08); pointer-events: none; }
.final-cta .button { position: relative; z-index: 1; flex-shrink: 0; }
.site-footer { padding: 66px 0 22px; color: white; background: #0c1d30; }
.footer-main { display: grid; grid-template-columns: 1fr .6fr 1fr; gap: 60px; padding-bottom: 55px; }
.wordmark-light { color: white; }
.footer-brand-block p { max-width: 260px; margin-top: 20px; color: #b1c0cc; font-size: .9rem; }
.footer-email { display: inline-block; margin-top: 7px; color: #7ce4e8; font-size: .9rem; font-weight: 650; }
.footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.footer-links h2 { margin-bottom: 6px; color: white; font-size: .95rem; letter-spacing: 0; }
.footer-links a { color: #b1c0cc; font-size: .88rem; }
.footer-links a:hover, .footer-email:hover { color: white; }
.footer-cta h2 { max-width: 350px; color: white; font-size: 2rem; }
.footer-cta .button { margin-top: 20px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.13); color: #93a4b4; font-size: .75rem; }
.content-main { min-height: 60vh; padding-top: 80px; padding-bottom: 100px; }
.standard-page { max-width: 820px; margin: 0 auto; }
.standard-page-header, .archive-heading { margin-bottom: 45px; }
.standard-page-header h1, .archive-heading h1 { font-size: clamp(2.4rem, 4.5vw, 4rem); }
.entry-content { font-size: 1.05rem; line-height: 1.85; }
.entry-content h2 { margin-top: 2em; margin-bottom: .7em; font-size: 2rem; }
.entry-content h3 { margin-top: 1.5em; margin-bottom: .6em; }
.entry-content ul, .entry-content ol { padding-left: 1.4em; color: var(--color-ink-soft); }
.entry-content a { color: var(--color-teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.post-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.post-card { overflow: hidden; border: 1px solid var(--color-line); border-radius: 20px; background: white; }
.post-card-image { display: block; aspect-ratio: 1.55; overflow: hidden; background: var(--color-cloud); }
.post-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.post-card:hover .post-card-image img { transform: scale(1.04); }
.image-placeholder { display: grid; width: 100%; height: 100%; place-items: center; color: var(--color-teal-dark); background: linear-gradient(135deg, #e0f8f8, #f0edff); font-size: 1.8rem; font-weight: 800; }
.post-card-body { padding: 23px; }
.post-meta { color: var(--color-muted); font-size: .76rem; font-weight: 650; }
.post-card h2 { margin: 10px 0; font-size: 1.35rem; letter-spacing: -.025em; }
.post-card p { font-size: .89rem; }
.post-card .text-link { margin-top: 7px; font-size: .84rem; }
.article-single { max-width: 800px; margin: 0 auto; }
.article-header { margin-bottom: 35px; }
.article-header h1 { margin-top: 16px; font-size: clamp(2.4rem, 5vw, 4.2rem); }
.article-excerpt { margin-top: 20px; font-size: 1.15rem; }
.article-featured-image { overflow: hidden; margin-bottom: 40px; border-radius: 22px; }
.article-featured-image img { display: block; width: 100%; }
.empty-state { padding: 70px 0; text-align: center; }
.empty-state p { margin-top: 15px; }
@media (max-width: 1050px) {
  .hero-grid { grid-template-columns: minmax(0,1fr) minmax(360px,.85fr); gap: 15px; }
  .hero-visual { transform: scale(.92); transform-origin: center right; }
  .trust-inner { flex-wrap: wrap; }
  .trust-inner p { width: 100%; }
  .industry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-main { gap: 35px; }
}
@media (max-width: 800px) {
  .container { width: min(var(--container), calc(100% - 36px)); }
  .header-inner { min-height: 74px; }
  .menu-toggle { display: block; }
  .primary-nav { position: absolute; top: 100%; left: 0; right: 0; display: none; align-items: stretch; gap: 20px; padding: 20px 24px 26px; border-bottom: 1px solid var(--color-line); background: white; box-shadow: 0 20px 30px rgba(20,36,56,.08); }
  .primary-nav.is-open { display: flex; flex-direction: column; }
  .nav-list { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .nav-list li { border-bottom: 1px solid var(--color-line); }
  .nav-list a { display: block; padding: 13px 0; font-size: 1rem; }
  .header-cta { align-self: flex-start; }
  .hero-section { padding-top: 54px; }
  .hero-grid { grid-template-columns: 1fr; gap: 0; }
  .hero-copy { padding-bottom: 0; }
  .hero-copy h1 { max-width: 680px; }
  .hero-visual { min-height: 400px; transform: scale(.9); transform-origin: center top; margin-bottom: -20px; }
  .hero-bottom { align-items: flex-start; flex-direction: column; gap: 12px; }
  .section { padding: 76px 0; }
  .section-heading-row { align-items: flex-start; flex-direction: column; gap: 15px; }
  .section-heading-row > p { max-width: 560px; }
  .service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .approach-grid, .faq-grid { grid-template-columns: 1fr; gap: 40px; }
  .approach-intro { position: static; }
  .feature-panel { grid-template-columns: 1fr; }
  .feature-art { min-height: 260px; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-cta { grid-column: 1 / -1; }
  .post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 540px) {
  h1 { font-size: clamp(2.55rem, 12vw, 3.6rem); }
  h2 { font-size: clamp(2rem, 9vw, 2.6rem); }
  .container { width: calc(100% - 32px); }
  .wordmark { font-size: 1.42rem; }
  .hero-section { padding-top: 42px; }
  .hero-intro { font-size: 1rem; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 19px; }
  .hero-visual { min-height: 340px; margin-inline: -25px; transform: scale(.76); transform-origin: center top; margin-bottom: -65px; }
  .visual-card { min-width: 180px; padding: 11px 12px; }
  .card-top { left: 0; top: 30px; }
  .card-right { right: 0; top: 155px; }
  .card-bottom { left: 2%; bottom: 15px; }
  .visual-core { width: 145px; height: 145px; }
  .core-symbol { width: 55px; height: 55px; font-size: 2rem; }
  .orbit-one { width: 340px; height: 210px; }
  .orbit-two { width: 250px; height: 340px; }
  .capability-list { gap: 9px; }
  .capability-list i { display: none; }
  .trust-inner { align-items: flex-start; flex-direction: column; gap: 10px; }
  .service-grid, .industry-grid, .post-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 300px; }
  .process-item { grid-template-columns: 30px 1fr 28px; gap: 12px; }
  .process-symbol { width: 28px; height: 28px; }
  .feature-panel { padding: 32px 24px; border-radius: 22px; }
  .feature-art { transform: scale(.82); margin-inline: -25px; }
  .final-cta { align-items: flex-start; flex-direction: column; padding: 30px 24px; }
  .footer-main { grid-template-columns: 1fr; gap: 35px; }
  .footer-cta { grid-column: auto; }
  .footer-bottom { flex-direction: column; gap: 6px; }
  .content-main { padding-top: 55px; padding-bottom: 70px; }
  .standard-page-header, .archive-heading { margin-bottom: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* =========================================
   PROFILENT HEADER / NAVIGATION
   Consolidated responsive navigation styles
   ========================================= */

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, .94);
  border-bottom: 1px solid rgba(228, 235, 239, .85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-header .header-inner {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.site-header .brand {
  flex-shrink: 0;
}

.site-header .primary-nav {
  display: flex;
  align-items: center;
  gap: 26px;
  margin-left: auto;
}

.site-header .nav-list,
.site-header .nav-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-header .nav-list {
  display: flex;
  align-items: center;
  gap: clamp(16px, 2vw, 28px);
}

.site-header .nav-list li {
  position: relative;
  margin: 0;
  border: 0;
}

.site-header .nav-list a {
  display: inline-flex;
  align-items: center;
  color: #35475a;
  font-size: .91rem;
  font-weight: 620;
  text-decoration: none;
  white-space: nowrap;
  transition: color .18s ease, background .18s ease;
}

.site-header .nav-list a:hover,
.site-header .nav-list a:focus-visible {
  color: var(--color-teal-dark);
}

/* Desktop dropdown: hidden until hover or keyboard focus */
.site-header .nav-list .sub-menu {
  display: none;
  position: absolute;
  top: calc(100% + 14px);
  left: -16px;
  z-index: 1100;
  min-width: 245px;
  padding: 10px;
  background: #fff;
  border: 1px solid #e8edf0;
  border-radius: 14px;
  box-shadow: 0 16px 40px rgba(20, 40, 60, .12);
}

.site-header .nav-list li:hover > .sub-menu,
.site-header .nav-list li:focus-within > .sub-menu {
  display: block;
}

.site-header .nav-list .sub-menu li {
  width: 100%;
}

.site-header .nav-list .sub-menu a {
  display: flex;
  width: 100%;
  padding: 11px 12px;
  border-radius: 8px;
  white-space: normal;
}

.site-header .nav-list .sub-menu a:hover,
.site-header .nav-list .sub-menu a:focus-visible {
  color: #078d97;
  background: #f0fbfc;
}

.site-header .header-cta {
  flex-shrink: 0;
  white-space: nowrap;
}

/* Tablet and mobile navigation */
@media (max-width: 900px) {
  .site-header .header-inner {
    position: relative;
    min-height: 76px;
    flex-wrap: wrap;
    gap: 12px;
  }

  .site-header .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    cursor: pointer;
  }

  .site-header .primary-nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: none;
    flex: 0 0 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
    width: 100%;
    margin: 0;
    padding: 18px 24px 24px;
    background: #fff;
    border-bottom: 1px solid var(--color-line);
    box-shadow: 0 20px 30px rgba(20, 36, 56, .08);
  }

  .site-header .primary-nav.is-open {
    display: flex;
  }

  .site-header .nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
  }

  .site-header .nav-list > li {
    border-bottom: 1px solid var(--color-line);
  }

  .site-header .nav-list > li > a {
    display: flex;
    width: 100%;
    padding: 12px 0;
    white-space: normal;
  }

  /* Keep submenu links in the flow on touch screens */
  .site-header .nav-list .sub-menu {
    position: static;
    min-width: 0;
    padding: 0 0 8px 14px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .site-header .nav-list li:hover > .sub-menu,
  .site-header .nav-list li:focus-within > .sub-menu {
    display: block;
  }

  .site-header .nav-list .sub-menu a {
    padding: 9px 10px;
  }

  .site-header .header-cta {
    align-self: flex-start;
  }
}

@media (max-width: 540px) {
  .site-header .header-inner {
    min-height: 72px;
  }

  .site-header .primary-nav {
    padding-inline: 16px;
  }

  .site-header .header-cta {
    max-width: 100%;
    white-space: normal;
  }
}

/* Fix dropdown disappearing while moving the mouse */
.site-header .nav-list > li.menu-item-has-children {
  position: relative;
  padding-bottom: 14px;
  margin-bottom: -14px;
}

.site-header .nav-list > li.menu-item-has-children > .sub-menu {
  top: 100%;
  left: -16px;
  margin-top: 0;
}

/* Keep the dropdown open while hovering over its contents */
.site-header .nav-list > li.menu-item-has-children:hover > .sub-menu,
.site-header .nav-list > li.menu-item-has-children:focus-within > .sub-menu,
.site-header .nav-list > li.menu-item-has-children > .sub-menu:hover {
  display: block;
}

/* Avoid extra spacing on mobile */
@media (max-width: 900px) {
  .site-header .nav-list > li.menu-item-has-children {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}


/* PROFILENT: stable Services dropdown */
@media (min-width: 901px) {
  .site-header .nav-list > li.menu-item-has-children {
    position: relative;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  .site-header .nav-list > li.menu-item-has-children > .sub-menu {
    top: 100% !important;
    left: -16px;
    margin-top: 0 !important;
  }

  /* Invisible bridge prevents the hover state from breaking */
  .site-header .nav-list > li.menu-item-has-children > .sub-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -18px;
    height: 18px;
  }

  .site-header .nav-list > li.menu-item-has-children:hover > .sub-menu,
  .site-header .nav-list > li.menu-item-has-children:focus-within > .sub-menu,
  .site-header .nav-list > li.menu-item-has-children > .sub-menu:hover {
    display: block !important;
  }
}

/* CMS-managed imagery and testimonial cards */
.hero-cms-image { display:block; width:100%; height:100%; min-height:340px; object-fit:cover; border-radius:24px; position:relative; z-index:1; }
.cms-card-image { margin: -6px 0 18px; overflow:hidden; border-radius:12px; }
.cms-card-image img { display:block; width:100%; max-height:150px; object-fit:cover; }
.industry-icon img { width:36px; height:36px; object-fit:cover; border-radius:8px; }
.testimonial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.testimonial-card { padding:28px; border:1px solid var(--color-line); border-radius:var(--radius-card); background:#fff; }
.testimonial-mark { display:block; color:var(--color-teal); font-size:3rem; line-height:.8; }
.testimonial-card blockquote { margin:18px 0 24px; font-size:.98rem; line-height:1.75; }
.testimonial-card blockquote p:last-child { margin-bottom:0; }
.testimonial-person { display:grid; grid-template-columns:42px 1fr; gap:3px 12px; align-items:center; }
.testimonial-person img { grid-row:span 2; width:42px; height:42px; border-radius:50%; object-fit:cover; }
.testimonial-person strong { font-size:.92rem; }
.testimonial-person span { font-size:.82rem; color:var(--color-muted); }
@media(max-width:800px) { .testimonial-grid { grid-template-columns:1fr; } }

/* CMS-managed technology, case study, insights, contact and flexible sections */
.technology-filters{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 22px}.technology-filter{border:1px solid #dce7ea;background:#fff;color:#263b4a;border-radius:999px;padding:10px 16px;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.technology-filter:hover,.technology-filter.is-active{background:#09b5c1;border-color:#09b5c1;color:#fff}.technology-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.technology-card{display:flex;align-items:center;gap:12px;min-width:0;padding:16px;border:1px solid #e0eaed;background:#fff;border-radius:14px;box-shadow:0 7px 20px rgba(22,57,70,.035)}.technology-card[hidden]{display:none!important}.technology-card img{width:38px;height:38px;object-fit:contain;border-radius:9px}.technology-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#e7f9fa;color:#087e87;font-size:1.2rem}.technology-card h3{margin:0;font-size:.9rem}.technology-card p{margin:4px 0 0;color:#71808b;font-size:.76rem;line-height:1.45}.cms-case-grid,.cms-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cms-case-card,.cms-blog-card{overflow:hidden;border:1px solid #e1eaed;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(20,57,69,.045)}.cms-case-card>a,.cms-blog-card>a{display:block;height:100%;color:inherit;text-decoration:none}.cms-case-card>a>img,.cms-blog-card>a>img{display:block;width:100%;height:190px;object-fit:cover;background:#eef5f6}.cms-case-copy,.cms-blog-copy{padding:20px}.cms-case-copy h3,.cms-blog-copy h3{margin:0 0 9px;font-size:1.18rem;line-height:1.25;letter-spacing:-.025em}.cms-case-copy p,.cms-blog-copy p{color:#6a7a85;font-size:.86rem;line-height:1.65}.cms-blog-date{display:block;margin-bottom:8px;color:#078b95;font-size:.75rem;font-weight:750}.cms-case-card .text-link,.cms-blog-card .text-link{font-size:.84rem;font-weight:750;color:#087f89}.cms-case-card:hover,.cms-blog-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(20,57,69,.09)}.cms-case-card,.cms-blog-card{transition:transform .2s,box-shadow .2s}.custom-home-section .section-heading{max-width:780px}.custom-section-image{margin:20px 0;border-radius:18px;overflow:hidden}.custom-section-image img{display:block;width:100%;max-height:520px;object-fit:cover}.custom-section-content{max-width:900px;line-height:1.75}.custom-section-content>*:first-child{margin-top:0}.custom-section-content img{max-width:100%;height:auto;border-radius:12px}.homepage-contact{background:linear-gradient(135deg,#f3fbfc,#f8f8ff)}.homepage-contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:clamp(28px,6vw,80px);align-items:start}.homepage-contact-grid h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.055em;line-height:1.08;margin:12px 0}.homepage-contact-grid>div:first-child>p{max-width:540px;color:#667782;line-height:1.7}.contact-details{display:grid;gap:9px;margin-top:24px}.contact-details a{color:#087f89;font-weight:700;text-decoration:none}.homepage-contact-card{padding:25px;border:1px solid #dce9eb;border-radius:20px;background:#fff;box-shadow:0 18px 45px rgba(20,57,69,.07)}.homepage-contact-card form{display:grid;gap:13px}.homepage-contact-card label{display:grid;gap:6px;font-size:.8rem;font-weight:750;color:#41535f}.homepage-contact-card input,.homepage-contact-card textarea{width:100%;border:1px solid #dce7ea;border-radius:10px;padding:12px 13px;font:inherit;font-size:.9rem}.homepage-contact-card input:focus,.homepage-contact-card textarea:focus{outline:2px solid #09b5c133;border-color:#09b5c1}.homepage-contact-card small{font-size:.72rem;color:#7b8991;line-height:1.5}.cms-card-image img{width:100%;height:120px;object-fit:cover;border-radius:10px;margin:10px 0}.hero-cms-image{width:100%;height:auto;max-height:480px;object-fit:contain;border-radius:18px}
@media(max-width:900px){.technology-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-case-grid,.cms-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homepage-contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.technology-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.technology-card{padding:12px;gap:8px}.technology-card img,.technology-mark{width:30px;height:30px;flex-basis:30px}.technology-card h3{font-size:.8rem}.technology-card p{font-size:.7rem}.cms-case-grid,.cms-blog-grid,.homepage-contact-grid{grid-template-columns:1fr}.cms-case-card>a>img,.cms-blog-card>a>img{height:175px}.homepage-contact-card{padding:19px}}


/* =========================================
   PROFILENT CMS EDITION — layout refinements
   Kept as a small final override layer so existing
   working navigation and CMS features remain intact.
   ========================================= */
:root { --container: 1200px; }
.container { width: min(var(--container), calc(100% - 64px)); }
.hero-section { padding-top: clamp(66px, 7vw, 100px); }
.hero-grid { grid-template-columns: minmax(0, 1.04fr) minmax(390px, .96fr); gap: clamp(28px, 4vw, 58px); min-height: 540px; }
.hero-copy h1 { max-width: 680px; font-size: clamp(3rem, 5.4vw, 5.15rem); line-height: 1.04; letter-spacing: -.055em; }
.hero-intro { max-width: 550px; font-size: clamp(1rem, 1.2vw, 1.12rem); }
.hero-visual { min-height: 520px; }
.section { padding-block: clamp(76px, 8vw, 112px); }
.section-heading { margin-bottom: 42px; }
.section-heading h2 { line-height: 1.08; }
.section-heading p { font-size: 1rem; line-height: 1.75; }
.service-grid { gap: 20px; }
.service-card { padding: clamp(22px, 2.2vw, 30px); }
.technology-section { background: linear-gradient(180deg, #fff 0%, #fbfdff 100%); }
.technology-section .section-heading { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr); align-items: end; gap: 30px 64px; max-width: none; }
.technology-section .section-heading .eyebrow,
.technology-section .section-heading h2 { grid-column: 1; }
.technology-section .section-heading p { grid-column: 2; grid-row: 1 / span 2; margin: 0 0 4px; }
.technology-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.technology-card { min-height: 118px; align-items: flex-start; padding: 20px; border-radius: 16px; box-shadow: 0 8px 26px rgba(22,57,70,.045); }
.technology-card h3 { font-size: .96rem; line-height: 1.35; }
.technology-card p { font-size: .8rem; line-height: 1.55; }
.cms-case-grid, .cms-blog-grid { gap: 22px; }
@media (max-width: 1050px) {
  .container { width: min(var(--container), calc(100% - 48px)); }
  .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); }
  .technology-section .section-heading { gap: 20px 36px; }
  .technology-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .container { width: calc(100% - 40px); }
  .hero-grid { grid-template-columns: 1fr; min-height: 0; }
  .hero-copy h1 { max-width: 700px; }
  .hero-visual { min-height: 400px; }
  .technology-section .section-heading { display: block; }
  .technology-section .section-heading p { margin-top: 16px; }
  .technology-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  .container { width: calc(100% - 32px); }
  .hero-copy h1 { font-size: clamp(2.65rem, 12vw, 3.6rem); }
  .hero-visual { min-height: 340px; }
  .technology-grid { grid-template-columns: 1fr; }
  .technology-card { min-height: 0; padding: 16px; }
  .section { padding-block: 66px; }
}


/* Reference-matched interactive services section (v1.2) */
.ref-services{background:linear-gradient(135deg,#f1fbff 0%,#fff 48%,#fff8ef 100%)}
.ref-services-head{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,7vw,100px);align-items:end;margin-bottom:42px}
.ref-services-head h2{max-width:690px;font-size:clamp(2.2rem,4vw,3.55rem);line-height:1.08;letter-spacing:-.045em}
.ref-services-head p{max-width:490px;margin:0 0 12px;color:#667782;font-size:1rem;line-height:1.8}
.ref-link-arrow{display:inline-flex;gap:12px;align-items:center;color:#087f89;font-weight:750;font-size:.92rem}.ref-link-arrow span{font-size:1.2rem}
.ref-service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:stretch}
.ref-service-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:245px;padding:22px 19px 20px;border:1px solid #dce7ec;border-radius:17px;background:rgba(255,255,255,.92);text-align:left;color:var(--color-ink);font:inherit;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s}
.ref-service-card:hover,.ref-service-card.is-active{transform:translateY(-3px);border-color:#09b5c1;box-shadow:0 16px 34px rgba(22,75,91,.09);background:#fff}
.ref-service-card.is-active{box-shadow:inset 0 3px #09b5c1,0 16px 34px rgba(22,75,91,.08)}
.ref-service-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:22px;border-radius:11px;background:#e1f8fa;color:#078b95;font-size:1.15rem;font-weight:800}
.ref-icon-1{background:#efedff;color:#7565d8}.ref-icon-2{background:#fff5d5;color:#9a7800}.ref-icon-3{background:#e7f2ff;color:#3579b9}.ref-icon-4{background:#e3f7ef;color:#278a6e}
.ref-service-card h3{font-size:1.02rem;line-height:1.25;letter-spacing:-.025em;margin:0 0 10px}.ref-service-card p{font-size:.82rem;line-height:1.65;color:#657583;margin:0 0 24px}.ref-service-arrow{margin-top:auto;align-self:flex-end;color:#078b95;font-size:1.25rem;line-height:1}
.ref-service-detail{position:relative;display:grid;grid-template-columns:1fr 1fr .22fr;gap:30px;align-items:center;overflow:hidden;margin-top:22px;padding:34px 38px;border:1px solid #d8e9ed;border-radius:22px;background:linear-gradient(115deg,#fff 0%,#f7fcfd 100%);box-shadow:0 15px 38px rgba(20,57,69,.045)}
.ref-detail-copy,.ref-subservices{position:relative;z-index:1}.ref-detail-tag{display:inline-block;margin-bottom:12px;color:#078b95;font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.ref-detail-copy h3{font-size:clamp(1.5rem,2.5vw,2.15rem);line-height:1.15;margin-bottom:12px}.ref-detail-copy p{font-size:.9rem;line-height:1.75;color:#657583;margin-bottom:20px}.ref-detail-copy .button{min-height:46px;font-size:.84rem}.ref-subservices{display:grid;grid-template-columns:1fr;gap:12px}.ref-subservice{display:flex;align-items:flex-start;gap:10px;color:#405566;font-size:.85rem;line-height:1.45}.ref-subservice span{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:50%;background:#def8f5;color:#078b80;font-size:.72rem;font-weight:800}.ref-detail-visual{display:grid;place-items:center;width:100px;height:100px;border-radius:32px 32px 32px 9px;background:#09b5c1;color:#10263d;font-size:3.8rem;box-shadow:0 20px 50px rgba(9,181,193,.22);transform:rotate(9deg)}
@media(max-width:1050px){.ref-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-service-card{min-height:220px}.ref-service-detail{grid-template-columns:1fr 1fr}.ref-detail-visual{display:none}}
@media(max-width:800px){.ref-services-head{grid-template-columns:1fr;gap:16px}.ref-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-service-detail{padding:28px;gap:22px}}
@media(max-width:540px){.ref-service-grid{grid-template-columns:1fr}.ref-service-card{min-height:0;padding:19px}.ref-service-icon{margin-bottom:14px}.ref-service-card p{margin-bottom:14px}.ref-service-detail{grid-template-columns:1fr;padding:24px 20px}.ref-services-head h2{font-size:2.25rem}}


/* v1.3 focused header refinement: match the supplied Profilent reference */
.site-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.97); border-bottom: 1px solid #e9eef1; box-shadow: 0 4px 18px rgba(17,38,54,.025); }
.site-header .header-inner { width: min(1440px, calc(100% - 64px)); min-height: 66px; gap: clamp(18px, 2.4vw, 38px); }
.site-header .brand { flex: 0 0 auto; min-width: 190px; }
.site-header .custom-logo-link { display: inline-flex; align-items: center; }
.site-header .custom-logo { display: block; width: auto; max-width: 190px; max-height: 48px; object-fit: contain; }
.site-header .wordmark { font-size: 1.8rem; letter-spacing: -.06em; }
.site-header .brand-mark { width: 35px; height: 35px; }
.site-header .primary-nav { display: flex; flex: 1 1 auto; align-items: center; justify-content: flex-end; gap: clamp(14px, 2vw, 30px); margin-left: auto; }
.site-header .nav-list { display: flex; flex: 1 1 auto; align-items: center; justify-content: center; gap: clamp(16px, 2vw, 30px); }
.site-header .nav-list > li > a { min-height: 66px; display: inline-flex; align-items: center; font-size: .9rem; font-weight: 700; }
.site-header .nav-list > li.current-menu-item > a,
.site-header .nav-list > li.current-menu-ancestor > a,
.site-header .nav-list > li:hover > a { color: #078b95; }
.site-header .nav-list > li.menu-item-has-children > a::after { content: "⌄"; margin-left: 8px; color: #078b95; font-size: .85rem; }
.site-header .nav-list .sub-menu { top: calc(100% - 1px) !important; left: 50% !important; transform: translateX(-28%); width: min(600px, 78vw); min-width: 540px; display: none; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 4px 18px; padding: 24px 25px; border: 1px solid #dce7ec; border-radius: 20px; box-shadow: 0 22px 55px rgba(17,38,54,.14); }
.site-header .nav-list li:hover > .sub-menu,
.site-header .nav-list li:focus-within > .sub-menu,
.site-header .nav-list > li.menu-item-has-children > .sub-menu:hover { display: grid !important; }
.site-header .nav-list .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.site-header .nav-list .sub-menu li { min-width: 0; }
.site-header .nav-list .sub-menu a { display: flex; align-items: flex-start; min-height: 76px; padding: 13px 10px; border-radius: 10px; color: #334557; font-size: .92rem; font-weight: 800; line-height: 1.35; }
.site-header .nav-list .sub-menu a:hover,
.site-header .nav-list .sub-menu a:focus-visible { color: #087f89; background: #f3fbfc; }
.site-header .header-search { display: inline-grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border: 1px solid #dbe6eb; border-radius: 50%; color: #13283c; background: #fff; font-size: 1.3rem; line-height: 1; }
.site-header .header-search:hover { border-color: #09b5c1; color: #078b95; }
.site-header .header-cta { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 50px; padding: 0 22px; border: 0; border-radius: 999px; color: #082a34; background: linear-gradient(105deg,#09b5c1,#36d0bd); box-shadow: 0 8px 22px rgba(9,181,193,.17); font-size: .87rem; font-weight: 800; white-space: nowrap; }
.site-header .header-cta:hover { background: linear-gradient(105deg,#12c0cb,#4bd8c6); }
@media (max-width: 1100px) and (min-width: 901px) {
 .site-header .header-inner { width: calc(100% - 32px); gap: 14px; }
 .site-header .brand { min-width: 150px; }
 .site-header .custom-logo { max-width: 150px; }
 .site-header .nav-list { gap: 13px; }
 .site-header .nav-list > li > a { font-size: .82rem; }
 .site-header .header-cta { padding-inline: 15px; font-size: .8rem; }
 .site-header .nav-list .sub-menu { min-width: 480px; }
}
@media (max-width: 900px) {
 .site-header .header-inner { width: calc(100% - 32px); min-height: 72px; flex-wrap: nowrap; }
 .site-header .brand { min-width: 0; }
 .site-header .custom-logo { max-width: 170px; max-height: 44px; }
 .site-header .primary-nav { top: 100%; gap: 14px; }
 .site-header .nav-list > li > a { min-height: 0; }
 .site-header .nav-list .sub-menu { transform: none; width: 100%; min-width: 0; grid-template-columns: 1fr; gap: 0; }
 .site-header .nav-list li:hover > .sub-menu,
 .site-header .nav-list li:focus-within > .sub-menu { display: grid !important; }
 .site-header .header-search { align-self: flex-start; }
}
@media (max-width: 540px) {
 .site-header .custom-logo { max-width: 150px; }
 .site-header .header-cta { white-space: normal; }
}


/* Profilent Services mega menu */
@media (min-width: 901px) {
  .site-header .nav-list > li.menu-item-has-children {
    position: static;
  }

  .site-header .header-inner {
    position: relative;
  }

  .site-header .nav-list > li.menu-item-has-children > .sub-menu {
    display: none;
    position: absolute;
    top: calc(100% - 1px) !important;
    left: 50% !important;
    transform: translateX(-50%);
    width: min(960px, calc(100vw - 40px));
    min-width: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 24px;
    background: linear-gradient(
      120deg,
      #ffffff 0%,
      #f5fcfd 70%,
      #f2efff 100%
    );
    border: 1px solid #dcebed;
    border-radius: 22px;
    box-shadow: 0 24px 60px rgba(20, 45, 60, 0.16);
    z-index: 1200;
  }

  /* Heading above the six services */
  .site-header .nav-list > li.menu-item-has-children > .sub-menu::before {
    content: "EXPLORE OUR EXPERTISE";
    grid-column: 1 / -1;
    padding: 2px 12px 10px;
    color: #078b95;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
  }

  .site-header .nav-list > li.menu-item-has-children:hover > .sub-menu,
  .site-header .nav-list > li.menu-item-has-children:focus-within > .sub-menu {
    display: grid !important;
  }

  /* Keep the menu open while moving the pointer into it */
  .site-header .nav-list > li.menu-item-has-children > .sub-menu::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 14px;
  }

  .site-header .nav-list .sub-menu > li {
    min-width: 0;
  }

  .site-header .nav-list .sub-menu > li > a {
    display: block;
    padding: 12px 12px 3px;
    color: #172033;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
    white-space: normal;
  }

  .site-header .nav-list .sub-menu > li > a:hover {
    background: transparent;
    color: #078b95;
  }

  .site-header .menu-item-description {
    display: block;
    padding: 3px 12px 13px;
    color: #586b80;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.6;
  }

  .site-header .nav-list .sub-menu > li:hover {
    background: #ffffff;
    border-color: #c9ecef;
    border-radius: 13px;
    box-shadow: 0 6px 18px rgba(9, 181, 193, 0.08);
  }

  .site-header .nav-list .sub-menu > li:last-child {
    background: linear-gradient(120deg, #e4fafa, #f0ecff);
    border: 1px solid #d6edef;
    border-radius: 13px;
  }

  .site-header .nav-list .sub-menu > li:last-child > a::after {
    content: " ↗";
    color: #078b95;
  }
}

@media (max-width: 900px) {
  .site-header .menu-item-description {
    display: block;
    padding: 0 10px 8px;
    color: #586b80;
    font-size: 12px;
    line-height: 1.5;
  }
}


/* ========================================
   PROFILENT — Interactive hero refinement
   ======================================== */

.hero-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 5% 5%, rgba(9,181,193,.12), transparent 35%),
    radial-gradient(ellipse at 76% 28%, rgba(111,103,255,.13), transparent 32%),
    radial-gradient(ellipse at 95% 65%, rgba(255,190,112,.17), transparent 36%),
    linear-gradient(120deg, #f8feff 0%, #fff 48%, #fffaf3 100%);
}

.hero-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 480px;
  height: 480px;
  top: -180px;
  right: 8%;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    rgba(117,104,255,.25),
    rgba(9,181,193,.16)
  );
  filter: blur(55px);
  animation: heroGlowDrift 12s ease-in-out infinite alternate;
  pointer-events: none;
}

.hero-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 340px;
  height: 340px;
  right: 4%;
  bottom: 0;
  border-radius: 50%;
  background: rgba(255,190,112,.15);
  filter: blur(65px);
  animation: heroGlowDrift 15s ease-in-out infinite alternate-reverse;
  pointer-events: none;
}

.hero-visual {
  position: relative;
  isolation: isolate;
  perspective: 1000px;
}

.visual-glow {
  position: absolute;
  inset: 12% 5%;
  z-index: -1;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    rgba(9,181,193,.22),
    rgba(112,99,255,.2),
    rgba(255,190,112,.15)
  );
  filter: blur(42px);
  animation: heroGlowDrift 9s ease-in-out infinite alternate;
}

.visual-orbit {
  transition: transform .35s ease-out;
  will-change: transform;
}

.visual-core {
  transform-style: preserve-3d;
  animation: heroCoreFloat 6s ease-in-out infinite;
  will-change: transform;
}

.visual-card {
  transition:
    transform .35s ease-out,
    box-shadow .3s ease,
    border-color .3s ease;
  will-change: transform;
  border: 1px solid rgba(220,235,240,.9);
  box-shadow: 0 18px 48px rgba(32,62,86,.10);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.visual-card:hover {
  box-shadow: 0 24px 55px rgba(9,181,193,.17);
  border-color: rgba(9,181,193,.35);
}

@keyframes heroGlowDrift {
  from { transform: translate3d(-12px, 0, 0) scale(.96); }
  to   { transform: translate3d(18px, 20px, 0) scale(1.08); }
}

@keyframes heroCoreFloat {
  0%, 100% { translate: 0 0; }
  50%      { translate: 0 -9px; }
}

@media (max-width: 900px) {
  .hero-section::before {
    right: -140px;
    top: -100px;
  }

  .hero-section::after {
    right: -100px;
  }

  .hero-visual {
    min-height: 390px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-section::before,
  .hero-section::after,
  .visual-glow,
  .visual-core {
    animation: none !important;
  }

  .visual-card,
  .visual-orbit {
    transition: none !important;
  }
}


/* === Profilent interactive hero === */
.hero-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 4% 10%, rgba(9,181,193,.15), transparent 34%),
    radial-gradient(ellipse at 76% 24%, rgba(125,102,255,.17), transparent 32%),
    radial-gradient(ellipse at 95% 85%, rgba(255,184,104,.19), transparent 35%),
    linear-gradient(115deg, #f4fcfd, #ffffff 55%, #fff9f0);
}

.hero-section .hero-grid {
  position: relative;
  z-index: 1;
}

.hero-section .hero-visual {
  position: relative;
  perspective: 1000px;
  isolation: isolate;
  min-height: 420px;
}

.hero-section .visual-orbit {
  position: absolute;
  border-radius: 32% 68% 63% 37% / 43% 42% 58% 57%;
  pointer-events: none;
  animation: profilentOrbit 10s ease-in-out infinite alternate;
}

.hero-section .orbit-one {
  background: linear-gradient(135deg, rgba(129,104,255,.34), rgba(9,181,193,.22));
}

.hero-section .orbit-two {
  animation-delay: -4s;
  background: linear-gradient(135deg, rgba(9,181,193,.2), rgba(255,193,119,.23));
}

.hero-section .visual-glow {
  background: radial-gradient(
    circle,
    rgba(95,104,255,.22),
    rgba(9,181,193,.12) 45%,
    transparent 72%
  );
  filter: blur(25px);
  animation: profilentGlow 7s ease-in-out infinite alternate;
}

.hero-section .visual-core {
  animation: profilentFloat 5s ease-in-out infinite;
  box-shadow: 0 30px 70px rgba(37,60,92,.15);
}

.hero-section .visual-card {
  z-index: 2;
  border: 1px solid rgba(221,231,245,.95);
  background: rgba(255,255,255,.91);
  box-shadow: 0 16px 42px rgba(46,67,105,.12);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: box-shadow .25s ease, border-color .25s ease;
  will-change: transform;
}

.hero-section .visual-card:hover {
  border-color: rgba(9,181,193,.5);
  box-shadow: 0 22px 50px rgba(9,181,193,.2);
}

.hero-section .hero-cms-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
  box-shadow: 0 30px 75px rgba(46,67,105,.13);
}

@keyframes profilentOrbit {
  from { transform: rotate(-7deg) translateY(0) scale(.98); }
  to { transform: rotate(7deg) translateY(-12px) scale(1.03); }
}

@keyframes profilentGlow {
  from { opacity: .65; transform: scale(.92); }
  to { opacity: 1; transform: scale(1.08); }
}

@keyframes profilentFloat {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -10px; }
}

@media (max-width: 900px) {
  .hero-section .hero-visual {
    min-height: 340px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-section .visual-orbit,
  .hero-section .visual-glow,
  .hero-section .visual-core {
    animation: none !important;
  }
}

/* =========================================
   PROFILENT FINAL OVERRIDES
   - Header scrolls away naturally (not sticky/fixed)
   - Transparent header border and no shadow
   - Hero begins white, gradient fades in below the top 10%
   - Compact service mega-menu title/description spacing
   ========================================= */
.site-header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100%;
  z-index: 1000;
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.site-header .header-inner {
  background: #ffffff !important;
}

.site-header .primary-nav > ul > li > a,
.site-header .wordmark {
  color: #172033;
}

.site-header .primary-nav .sub-menu {
  background-color: #ffffff;
}

.hero-section {
  position: relative;
  margin-top: 0 !important;
  padding-top: 25px !important;
  background-color: #ffffff !important;
  background-image:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #ffffff 10%,
      rgba(255,255,255,.96) 16%,
      rgba(255,255,255,0) 34%
    ),
    radial-gradient(
      ellipse at 80% 60%,
      rgba(117,101,216,.16) 0%,
      transparent 58%
    ),
    radial-gradient(
      ellipse at 10% 65%,
      rgba(9,181,193,.13) 0%,
      transparent 52%
    ),
    linear-gradient(135deg, #f4fcfd 0%, #ffffff 55%, #fff9f0 100%) !important;
}

/* Keep the existing decorative glow from tinting the top edge. */
.hero-section::before {
  top: 10% !important;
}

/* Compact service menu: grid rows should fit their content. */
@media (min-width: 901px) {
  .site-header .nav-list > li.menu-item-has-children > .sub-menu {
    row-gap: 2px !important;
    grid-auto-rows: min-content !important;
    align-content: start !important;
    align-items: start !important;
  }

  .site-header .nav-list .sub-menu > li {
    align-self: start !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .site-header .nav-list .sub-menu > li > a {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 8px 12px 0 !important;
    line-height: 1.35 !important;
  }

  .site-header .menu-item-description {
    display: block !important;
    margin: 0 !important;
    padding: 2px 12px 8px !important;
    line-height: 1.4 !important;
  }
}

@media (max-width: 900px) {
  .site-header {
    position: relative !important;
  }

  .site-header .primary-nav {
    background: #ffffff;
  }

  .hero-section {
    padding-top: 20px !important;
  }

  .site-header .menu-item-description {
    display: block !important;
    margin: 0 !important;
    padding: 2px 10px 8px !important;
    line-height: 1.45 !important;
  }
}

/* Keep the existing hero/trust design; remove only the thin divider line. */
.hero-bottom { border-top: 0 !important; }


/* Profilent services: auto-fit cards as services are added */
.ref-service-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)) !important;
  align-items: stretch;
}
.ref-service-card {
  height: 100%;
}
@media (max-width: 800px) {
  .ref-service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 540px) {
  .ref-service-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Profilent Industries section: responsive, editable cards. */
.industries-section .section-heading { max-width: 760px; margin-bottom: 30px; }
.industry-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.industry-tile { min-width: 0; text-decoration: none; }
.industry-icon { overflow: hidden; }
.industry-icon img { display: block; width: 100%; height: 100%; max-width: 42px; max-height: 42px; object-fit: cover; border-radius: 8px; }
@media (max-width: 980px) { .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .industry-grid { grid-template-columns: 1fr; } .industry-tile { min-height: 175px; } }


/* Profilent Industries section — visual treatment matching the supplied reference.
   Add this file after layout.css, or append its contents to assets/css/layout.css. */
.industries-section {
  padding-top: 66px;
  padding-bottom: 44px;
}
.industries-section .container {
  max-width: 1170px;
}
.industries-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 36px;
  margin-bottom: 34px;
}
.industries-heading-copy {
  max-width: 610px;
}
.industries-section .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 17px;
  color: #078b9a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1;
  text-transform: uppercase;
}
.industries-section .eyebrow::before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 2px;
  background: #09b5c1;
}
.industries-section .industries-heading-copy h2 {
  max-width: 540px;
  margin: 0 0 12px;
  color: #07152d;
  font-size: clamp(34px, 3.3vw, 44px);
  font-weight: 750;
  letter-spacing: -.055em;
  line-height: 1.12;
}
.industries-section .industries-heading-copy p {
  max-width: 570px;
  margin: 0;
  color: #536783;
  font-size: 15px;
  line-height: 1.65;
}
.industries-section-cta {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 3px;
  color: #008b9b;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
}
.industries-section-cta:hover {
  color: #056d7b;
}
.industry-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 13px;
}
.industry-tile {
  min-width: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 204px;
  border: 1px solid #d8e5ef;
  border-radius: 16px;
  background: #fff;
  color: #08172d;
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(22, 54, 91, .045);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.industry-tile:hover {
  transform: translateY(-3px);
  border-color: #b7dfe6;
  box-shadow: 0 13px 28px rgba(22, 54, 91, .09);
}
.industry-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 112px;
  min-height: 112px;
  overflow: hidden;
  color: #008ba1;
  font-size: 24px;
  background: linear-gradient(115deg, #ddf7f7 0%, #e8f0ff 54%, #ffe9d0 100%);
}
.industry-icon::before,
.industry-icon::after {
  content: "";
  position: absolute;
  width: 90px;
  height: 90px;
  border: 1px solid rgba(97, 166, 255, .42);
  border-radius: 24px;
  transform: rotate(28deg);
  pointer-events: none;
}
.industry-icon::after {
  width: 66px;
  height: 100px;
  border-color: rgba(132, 129, 255, .28);
  transform: rotate(-28deg);
}
.industry-icon img {
  position: relative;
  z-index: 1;
  display: block;
  width: 48px;
  height: 48px;
  object-fit: contain;
  padding: 10px;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 5px 16px rgba(31, 68, 115, .06);
}
.industry-icon:not(:has(img)) {
  text-shadow: none;
}
.industry-icon:not(:has(img)) {
  isolation: isolate;
}
.industry-icon:not(:has(img))::selection { background: transparent; }
.industry-tile > strong {
  display: block;
  padding: 16px 14px 0;
  color: #08172d;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
}
.industry-tile > span:not(.industry-icon) {
  display: block;
  padding: 7px 14px 15px;
  color: #405775;
  font-size: 11px;
  line-height: 1.55;
}
.industry-tile > b {
  display: none;
}
@media (max-width: 1100px) {
  .industry-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .industries-section { padding-top: 48px; padding-bottom: 36px; }
  .industries-section-head { display: block; margin-bottom: 25px; }
  .industries-section .industries-heading-copy h2 { font-size: 34px; }
  .industries-section-cta { margin-top: 17px; }
  .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .industry-tile { min-height: 198px; }
  .industry-icon { height: 100px; min-height: 100px; }
}
@media (max-width: 390px) {
  .industry-grid { grid-template-columns: 1fr; }
}


/* ==========================================
   PROFILENT INDUSTRIES — FINAL CARD STYLING
   Append to the bottom of assets/css/layout.css
   ========================================== */

.industries-section .industry-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 13px !important;
  align-items: stretch !important;
}

.industries-section .industry-tile {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 204px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #d8e5ef !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: #08172d !important;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(22, 54, 91, .045) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}

.industries-section .industry-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 13px 28px rgba(22, 54, 91, .09) !important;
}

/* Full-width gradient icon panel */
.industries-section .industry-tile .industry-icon {
  position: relative !important;
  isolation: isolate !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 112px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 112px !important;
  min-height: 112px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  color: #008ba1 !important;
  background: linear-gradient(
    115deg,
    #ddf7f7 0%,
    #e8f0ff 54%,
    #ffe9d0 100%
  ) !important;
  font-size: 24px !important;
}

/* Decorative outlines */
.industries-section .industry-tile .industry-icon::before,
.industries-section .industry-tile .industry-icon::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  display: block !important;
  width: 90px !important;
  height: 90px !important;
  border: 1px solid rgba(97, 166, 255, .42) !important;
  border-radius: 24px !important;
  background: transparent !important;
  transform: rotate(28deg) !important;
  pointer-events: none !important;
}

.industries-section .industry-tile .industry-icon::after {
  width: 66px !important;
  height: 100px !important;
  border-color: rgba(132, 129, 255, .28) !important;
  transform: rotate(-28deg) !important;
}

/* Uploaded icon stays centered and proportional */
.industries-section .industry-tile .industry-icon img {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  box-sizing: border-box !important;
  flex: 0 0 48px !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 10px !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: 0 5px 16px rgba(31, 68, 115, .06) !important;
}

/* Industry name */
.industries-section .industry-tile > strong {
  display: block !important;
  margin: 0 !important;
  padding: 16px 14px 0 !important;
  color: #08172d !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
}

/* Industry description */
.industries-section .industry-tile > span:not(.industry-icon) {
  display: block !important;
  margin: 0 !important;
  padding: 7px 14px 15px !important;
  color: #405775 !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
}

/* Hide the extra arrow inside the card */
.industries-section .industry-tile > b {
  display: none !important;
}

/* Tablet */
@media (max-width: 1100px) {
  .industries-section .industry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile */
@media (max-width: 680px) {
  .industries-section .industry-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 11px !important;
  }

  .industries-section .industry-tile .industry-icon {
    flex-basis: 100px !important;
    height: 100px !important;
    min-height: 100px !important;
  }
}

@media (max-width: 390px) {
  .industries-section .industry-grid {
    grid-template-columns: 1fr !important;
  }
}




