@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

:root{--ink:#0b1632;--muted:#66748c;--blue:#065ef2;--line:#dfe4eb;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;background:#fff;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%}.wrap{max-width:var(--max);padding:0 30px;margin:auto}.header{border-bottom:1px solid var(--line);background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:80px}.logo{width:290px;max-width:43vw;height:auto;display:block}.nav{display:flex;align-items:center;gap:34px;font-size:14px}.nav a:not(.btn):hover,.nav .active{color:var(--blue)}.nav .active{border-bottom:2px solid var(--blue);padding-bottom:8px}.btn{background:var(--blue);color:#fff!important;border:0;border-radius:3px;padding:13px 24px;display:inline-block;font-size:14px;font-weight:500;cursor:pointer}.btn:hover{background:#004cc9}.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:12px;color:#66748c;margin:0 0 12px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(37px,4vw,56px);line-height:1.08;letter-spacing:-.035em;margin-bottom:18px}h2{font-size:clamp(26px,2.6vw,35px);line-height:1.18;letter-spacing:-.02em;margin-bottom:14px}h3{font-size:20px;line-height:1.2;margin-bottom:9px}.lead{font-size:18px;color:var(--muted);line-height:1.45}.muted{color:var(--muted)}.section{padding:48px 0;border-bottom:1px solid var(--line)}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:55px;align-items:center;padding:48px 0 34px}.hero .photo{width:100%;height:280px;object-fit:cover}.hero.home{padding:45px 0 0;min-height:355px}.hero.home .photo{height:440px;object-fit:contain;object-position:bottom center;mix-blend-mode:multiply}.hero.home h1{font-size:clamp(46px,5vw,67px)}.grid3{display:grid;grid-template-columns:repeat(3,1fr)}.grid3>div{padding:14px 22px;border-right:1px solid var(--line)}.grid3>div:first-child{padding-left:0}.grid3>div:nth-child(3n){border-right:0}.grid3 p,.grid2 p{color:var(--muted);font-size:15px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 45px}.small-card{background:#f3f5f7;padding:14px;margin-top:15px;font-size:14px}.small-card p{margin-bottom:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split img{width:100%;height:275px;object-fit:cover}.industry{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 32px}.industry span{border-bottom:1px solid var(--line);padding:7px 0;font-size:15px}.cta{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta p{max-width:620px;margin:0}.footer{padding:28px 0;color:#7b8798;font-size:12px}.service-grid>div{border-bottom:1px solid var(--line);min-height:190px}.experience-row{display:grid;grid-template-columns:65px 175px 1fr;gap:25px;padding:17px 0;border-top:1px solid var(--line);align-items:center}.experience-row img{width:175px;height:110px;object-fit:cover}.number{font-size:40px;color:#a6c7f5}.insights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 28px;padding-bottom:50px}.insight-card img{width:100%;height:220px;object-fit:cover;display:block;margin-bottom:15px}.insight-card h2{font-size:23px;margin-bottom:8px}.insight-card p{font-size:15px;color:var(--muted);margin-bottom:12px}.read-link,.back{font-size:12px;color:var(--blue);text-transform:uppercase;letter-spacing:.04em;font-weight:bold}.article{max-width:800px;margin:0 auto;padding:40px 30px 70px}.article h1{font-size:clamp(34px,4vw,49px)}.article .hero-image{width:100%;height:320px;object-fit:cover;margin:22px 0 25px}.article-content{font-size:17px;line-height:1.75;color:#29354a}.article-content p{margin-bottom:18px}.article-content h2{font-size:25px;color:var(--ink);margin:36px 0 14px}.article-content li{margin-bottom:8px}.article-cta{margin-top:50px;padding-top:28px;border-top:1px solid var(--line)}.contact-hero{padding:65px 0;background:linear-gradient(105deg,#fff 0%,#fff 57%,#f2f5f8 100%)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px}.form-card{background:white;border:1px solid var(--line);padding:35px;box-shadow:0 9px 25px #0b16320a}.field{margin-bottom:18px}.field label{display:block;font-weight:bold;font-size:14px;margin-bottom:7px}.field input,.field textarea{width:100%;padding:12px;border:1px solid #cbd3df;border-radius:4px;font:inherit}.field textarea{min-height:120px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-card button{width:100%}.privacy{font-size:12px;color:var(--muted);margin-top:15px}.notice{padding:10px 0;font-size:14px}.mobile-nav{display:none}@media(max-width:760px){.wrap{padding:0 20px}.header-inner{min-height:68px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.logo{width:230px;max-width:75vw}.nav{gap:16px;flex-wrap:wrap;font-size:13px}.hero,.split,.contact-layout{grid-template-columns:1fr;gap:20px}.hero.home .photo{height:300px}.grid3,.industry,.insights-grid{grid-template-columns:1fr}.grid3>div{padding:14px 0;border-right:0;border-bottom:1px solid var(--line)}.grid2{grid-template-columns:1fr}.experience-row{grid-template-columns:50px 95px 1fr;gap:12px}.experience-row img{width:95px;height:85px}.experience-row h3{font-size:17px}.cta{align-items:flex-start;flex-direction:column}.article .hero-image{height:210px}.contact-hero{padding:35px 0}.form-card{padding:20px}}

/* Approved 2026-10-28 homepage header/hero refinement. Other sections unchanged. */
@media (min-width: 1000px) {
  body:has(.hero.home) .header-inner { min-height: 94px; }
  body:has(.hero.home) .logo { width: 380px; max-width: 37vw; }
  body:has(.hero.home) .nav { gap: 42px; font-size: 16px; }
  body:has(.hero.home) .nav .btn { font-size: 17px; padding: 15px 34px; border-radius: 7px; }
  body:has(.hero.home) .hero.home { min-height: 625px; padding: 50px 0 0; grid-template-columns: 1.12fr 1fr; gap: 25px; align-items: center; }
  body:has(.hero.home) .hero.home .eyebrow { font-size: 14px; letter-spacing: .18em; margin-bottom: 32px; }
  body:has(.hero.home) .hero.home h1 { font-size: clamp(68px, 6.3vw, 104px); line-height: 1.04; letter-spacing: -.045em; margin-bottom: 25px; }
  body:has(.hero.home) .hero.home .lead { font-size: clamp(21px, 1.75vw, 27px); line-height: 1.38; max-width: 690px; margin-bottom: 36px; }
  body:has(.hero.home) .hero.home .btn { font-size: 18px; padding: 17px 34px; border-radius: 6px; }
  body:has(.hero.home) .hero.home .photo { width: 100%; height: 555px; object-fit: contain; object-position: bottom center; }
}
@media (min-width: 1400px) {
  body:has(.hero.home) { --max: 1500px; }
  body:has(.hero.home) .hero.home { min-height: 700px; }
  body:has(.hero.home) .hero.home .photo { height: 625px; }
}
@media (max-width: 999px) and (min-width: 761px) {
  body:has(.hero.home) .hero.home { min-height: 460px; }
  body:has(.hero.home) .hero.home .photo { height: 425px; }
  body:has(.hero.home) .hero.home h1 { font-size: clamp(54px, 6vw, 75px); }
}
@media (max-width: 760px) {
  body:has(.hero.home) .hero.home { padding-top: 38px; }
  body:has(.hero.home) .hero.home h1 { font-size: clamp(45px, 10vw, 65px); }
  body:has(.hero.home) .hero.home .photo { height: 340px; }
}

/* Transparent portrait: no compositing against background */
.hero.home .photo { mix-blend-mode: normal; }
