/* =========================================================
   BUILD 46.11 — APPROVED PUBLIC WEBSITE MODERNISATION
   Shared responsive layer for the public website only.
   Portal/admin/employee styles are intentionally untouched.
   ========================================================= */

:root{
  --public-deep:#064d2b;
  --public-emerald:#087a3d;
  --public-sage:#e8f2ea;
  --public-sage-strong:#d9e9dc;
  --public-ivory:#f8f5ea;
  --public-paper:#fffdf8;
  --public-gold:#c9a86a;
  --public-ink:#173b2b;
  --public-muted:#587064;
  --public-line:rgba(6,77,43,.13);
  --public-shadow:0 18px 48px rgba(6,77,43,.10);
  --public-shadow-hover:0 24px 60px rgba(6,77,43,.15);
  --public-radius:22px;
  --public-max:1440px;
}

html{overflow-x:clip}
body.public-modern{
  overflow-x:clip;
  background:var(--public-ivory);
  color:var(--public-ink);
  font-family:Inter,"Avenir Next","Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
}
body.public-modern :where(p,li,dd,td,th,label,input,select,textarea,button){line-height:1.6}
body.public-modern :where(h1,h2,h3,h4,strong,b){font-weight:700}
body.public-modern img{height:auto}
body.public-modern main{min-width:0}
body.public-modern :focus-visible{outline:3px solid rgba(201,168,106,.65);outline-offset:3px}

/* Header and navigation */
body.public-modern .header{
  width:100%;
  height:82px !important;
  min-height:82px !important;
  padding:0 clamp(22px,4vw,72px) !important;
  gap:24px !important;
  background:rgba(248,245,234,.90) !important;
  border-bottom:1px solid var(--public-line) !important;
  box-shadow:0 8px 30px rgba(6,77,43,.06);
  backdrop-filter:blur(18px) saturate(125%);
  -webkit-backdrop-filter:blur(18px) saturate(125%);
}
body.public-modern .header.focused-unit-header,
body.public-modern .header.main-landing-header{
  height:116px !important;
  min-height:116px !important;
  padding:0 clamp(22px,4vw,72px) 30px !important;
}
body.public-modern .header .brand{min-width:370px !important;gap:14px !important}
body.public-modern .header .brand img{width:58px !important;height:58px !important}
body.public-modern .header .brand-name-main{
  color:var(--public-emerald) !important;
  font-size:18px !important;
  line-height:1.06 !important;
  letter-spacing:-.01em !important;
}
body.public-modern .header .brand-name-legal{
  margin-top:5px !important;
  color:var(--public-deep) !important;
  font-size:9px !important;
  letter-spacing:.17em !important;
}
body.public-modern .header nav{gap:clamp(15px,1.6vw,28px) !important;align-items:center}
body.public-modern .header nav>a,
body.public-modern .nav-services-toggle{
  color:var(--public-deep) !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
}
body.public-modern .header-cta{
  min-height:42px;
  padding:0 20px !important;
  display:inline-flex;
  align-items:center;
  border-radius:999px !important;
  background:var(--public-emerald) !important;
  box-shadow:0 10px 24px rgba(8,122,61,.18);
  font-size:12px !important;
}
body.public-modern .header-slogan{
  left:clamp(22px,4vw,72px) !important;
  right:clamp(22px,4vw,72px) !important;
  bottom:8px !important;
}
body.public-modern .header-slogan span,
body.public-modern .company-slogan span{
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.19em !important;
}
body.public-modern .company-slogan{
  min-height:42px;
  padding:10px clamp(20px,4vw,72px);
  background:linear-gradient(90deg,var(--public-ivory),rgba(232,242,234,.88),var(--public-ivory));
}
body.public-modern .nav-services-menu{
  min-width:255px;
  padding:10px !important;
  border:1px solid var(--public-line) !important;
  border-radius:16px !important;
  background:rgba(255,253,248,.97) !important;
  box-shadow:var(--public-shadow) !important;
  backdrop-filter:blur(18px);
}
body.public-modern .nav-services-menu a{border-radius:10px !important;font-size:12px !important}

/* Homepage hero — follows approved concept */
body.public-home .hero{
  min-height:590px !important;
  padding:46px max(5vw,calc((100vw - var(--public-max))/2)) 48px !important;
  display:grid !important;
  grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr) !important;
  gap:clamp(38px,5vw,76px) !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 4% 16%,rgba(201,168,106,.18) 0 1px,transparent 1.7px) 0 0/16px 16px,
    linear-gradient(126deg,#064d2b 0%,#075d34 58%,#087a3d 100%) !important;
  border-bottom:0 !important;
}
body.public-home .hero::before{
  content:"" !important;
  display:block !important;
  position:absolute;
  inset:auto auto -180px 18%;
  width:650px;
  height:420px;
  border:1px solid rgba(232,242,234,.10);
  border-radius:50%;
  transform:rotate(-14deg);
  pointer-events:none;
}
body.public-home .hero::after{
  width:480px !important;
  height:480px !important;
  right:-230px !important;
  top:-250px !important;
  border-color:rgba(201,168,106,.18) !important;
}
body.public-home .hero-copy{max-width:720px}
body.public-home .hero .eyebrow{
  margin:0 0 22px !important;
  color:var(--public-gold) !important;
  font-size:11px !important;
  letter-spacing:.18em !important;
}
body.public-home .hero h1{
  margin:0 0 24px !important;
  max-width:760px;
  color:var(--public-ivory) !important;
  font-size:clamp(43px,4.15vw,66px) !important;
  font-weight:700 !important;
  line-height:1.04 !important;
  letter-spacing:-.045em !important;
}
body.public-home .hero .lead{
  max-width:690px !important;
  margin:0 !important;
  color:rgba(248,245,234,.93) !important;
  font-size:16px !important;
  line-height:1.7 !important;
}
body.public-home .hero-actions{margin-top:28px !important;gap:12px !important}
body.public-home .hero-actions .btn{
  min-height:50px !important;
  padding:0 20px !important;
  border-radius:10px !important;
  font-size:12px !important;
  box-shadow:none !important;
}
body.public-home .hero-actions .primary{box-shadow:0 14px 30px rgba(0,0,0,.13) !important}
body.public-home .hero-actions .secondary{background:rgba(255,255,255,.035)}
body.public-home .hero-trust{display:none !important}
body.public-home .aida-hero-art{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  display:block !important;
}
body.public-home .aida-hero-art .gold-line{display:none !important}
body.public-home .hero .aida-start-panel{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  max-width:720px !important;
  min-height:0 !important;
  margin:0 0 0 auto !important;
  padding:22px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.62) !important;
  border-radius:26px !important;
  background:linear-gradient(145deg,rgba(255,253,248,.94),rgba(232,242,234,.88)) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
}
body.public-home .hero .aida-start-panel::after{
  content:"";
  position:absolute;
  width:210px;
  height:210px;
  right:-72px;
  top:-82px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,106,.16),transparent 68%);
  pointer-events:none;
}
body.public-home .aida-start-head{
  padding:2px 8px 20px !important;
  border:0 !important;
  background:transparent !important;
}
body.public-home .aida-start-head small{
  color:#ac7f34 !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
}
body.public-home .aida-start-head strong{
  color:var(--public-deep) !important;
  font-size:clamp(28px,2.35vw,38px) !important;
  font-weight:700 !important;
  line-height:1.12 !important;
}
body.public-home .aida-start-head p{
  max-width:590px !important;
  margin:8px 0 0 !important;
  color:var(--public-muted) !important;
  font-size:14px !important;
  line-height:1.55 !important;
}
body.public-home .aida-start-list{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  padding:0 !important;
}
body.public-home .aida-start-list>a{
  min-width:0 !important;
  min-height:126px !important;
  padding:15px !important;
  display:grid !important;
  grid-template-columns:36px minmax(0,1fr) 18px !important;
  gap:10px !important;
  align-items:start !important;
  border:1px solid var(--public-line) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.78) !important;
  box-shadow:0 8px 22px rgba(6,77,43,.06) !important;
  transform:none !important;
}
body.public-home .aida-start-list>a::before{display:none !important}
body.public-home .aida-start-list>a:hover{
  background:#fff !important;
  border-color:rgba(8,122,61,.30) !important;
  box-shadow:0 14px 28px rgba(6,77,43,.11) !important;
  transform:translateY(-3px) !important;
}
body.public-home .aida-start-list b{
  width:34px !important;
  height:34px !important;
  display:grid !important;
  place-items:center;
  border-radius:50%;
  background:var(--public-sage) !important;
  color:#a7792f !important;
  font-size:10px !important;
}
body.public-home .aida-start-list strong{
  margin:0 0 4px !important;
  color:var(--public-deep) !important;
  font-size:14px !important;
  line-height:1.32 !important;
}
body.public-home .aida-start-list small{
  color:var(--public-muted) !important;
  font-size:10.5px !important;
  line-height:1.35 !important;
}
body.public-home .aida-start-list em{
  color:var(--public-emerald) !important;
  font-size:18px !important;
  line-height:1 !important;
}
body.public-home .aida-start-actions{display:none !important}

/* Homepage bridge into the remaining content */
body.public-home .main-landing-strip{
  min-height:150px !important;
  padding:28px max(5vw,calc((100vw - var(--public-max))/2)) 24px !important;
  display:grid !important;
  gap:20px !important;
  justify-items:center;
  background:var(--public-paper) !important;
  color:var(--public-deep) !important;
  border:0 !important;
  border-bottom:1px solid var(--public-line) !important;
}
body.public-home .landing-strip-heading{text-align:center}
body.public-home .landing-strip-heading small{
  display:block;
  color:#ac7f34;
  font-size:9px;
  font-weight:700;
  letter-spacing:.17em;
}
body.public-home .landing-strip-heading strong{
  display:block;
  margin-top:5px;
  color:var(--public-deep);
  font-size:20px;
  line-height:1.25;
}
body.public-home .landing-strip-units{
  width:min(100%,1050px);
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
body.public-home .landing-strip-units a{
  min-width:0;
  padding:4px 18px;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  color:var(--public-ink);
  font-size:12px;
  font-weight:700;
  text-align:center;
}
body.public-home .landing-strip-units a+a{border-left:1px solid var(--public-line)}
body.public-home .landing-strip-units b{color:var(--public-gold);font-size:9px}
body.public-home .statement{display:none !important}

/* Shared public-page hierarchy */
body.public-modern .page-hero{
  min-height:430px !important;
  padding:58px max(5vw,calc((100vw - var(--public-max))/2)) !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,.72fr) !important;
  gap:clamp(38px,6vw,90px) !important;
  background:linear-gradient(126deg,#064d2b 0%,#075d34 62%,#087a3d 100%) !important;
}
body.public-modern .page-hero h1{
  margin:14px 0 18px !important;
  font-size:clamp(40px,4vw,58px) !important;
  font-weight:700 !important;
  line-height:1.06 !important;
  letter-spacing:-.04em !important;
}
body.public-modern .page-hero-copy>p:not(.eyebrow){
  max-width:740px !important;
  color:rgba(248,245,234,.90) !important;
  font-size:15px !important;
  line-height:1.7 !important;
}
body.public-modern .page-hero-art{min-height:290px !important;display:grid;place-items:center}
body.public-modern .executive-panel{
  width:min(100%,480px) !important;
  padding:30px !important;
  border:1px solid rgba(255,255,255,.60) !important;
  border-radius:22px !important;
  background:linear-gradient(145deg,rgba(255,253,248,.95),rgba(232,242,234,.90)) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.17) !important;
  backdrop-filter:blur(16px);
}
body.public-modern .executive-panel h3{font-size:26px !important;line-height:1.2 !important}
body.public-modern :where(.about,.business,.capability,.panindia,.cta,.content-section,.split-section,.page-cta,.aida-path,.journey){
  padding-top:clamp(60px,6vw,88px) !important;
  padding-bottom:clamp(60px,6vw,88px) !important;
}
body.public-modern :where(.about h2,.section-head h2,.capability h2,.pan-copy h2,.cta h2,.content-head h2,.page-cta h2,.aida-path-head h2){
  font-size:clamp(34px,3.65vw,54px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
body.public-modern :where(.about-copy p,.section-head>p,.pan-copy>p,.cta>p,.content-head p,.split-copy p,.page-cta>p){
  font-size:14px !important;
  line-height:1.7 !important;
}
body.public-modern .section-label,
body.public-modern .eyebrow{font-weight:700 !important}

/* Cards, grids and surfaces */
body.public-modern :where(.business-grid,.aida-path-grid,.feature-grid,.decision-grid,.service-grid,.product-grid,.steps){gap:16px !important}
body.public-modern :where(.business-grid article,.aida-path-grid article,.premium-card,.feature-box,.decision-grid article,.service-card,.product-card,.step,.safe){
  border:1px solid var(--public-line) !important;
  border-radius:var(--public-radius) !important;
  box-shadow:var(--public-shadow) !important;
}
body.public-modern :where(.business-grid article,.aida-path-grid article,.premium-card,.feature-box,.decision-grid article,.service-card,.product-card,.step){
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease !important;
}
@media(hover:hover) and (pointer:fine){
  body.public-modern :where(.business-grid article,.aida-path-grid article,.premium-card,.feature-box,.decision-grid article,.service-card,.product-card,.step):hover{
    transform:translateY(-4px) !important;
    border-color:rgba(8,122,61,.26) !important;
    box-shadow:var(--public-shadow-hover) !important;
  }
}
body.public-modern .business-grid article{min-height:330px !important;padding:26px !important}
body.public-modern .business-grid h3{font-size:19px !important;line-height:1.28 !important}
body.public-modern .business-grid p{font-size:12px !important;line-height:1.65 !important}
body.public-modern .aida-path-grid article{min-height:190px !important;padding:23px !important;background:rgba(255,253,248,.92) !important}
body.public-modern .aida-path-grid h3{font-size:18px !important}
body.public-modern .aida-path-grid p{font-size:12px !important;line-height:1.6 !important}
body.public-modern .map-frame,
body.public-modern .service-operations-graphic{
  border:1px solid var(--public-line) !important;
  border-radius:var(--public-radius) !important;
  box-shadow:var(--public-shadow) !important;
  overflow:hidden;
}

/* Buttons and form controls */
body.public-modern .btn,
body.public-modern button,
body.public-modern input[type="submit"]{
  border-radius:10px !important;
  font-family:inherit;
  font-weight:700 !important;
}
body.public-modern :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  max-width:100%;
  border:1px solid rgba(6,77,43,.20) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.88) !important;
  color:var(--public-ink) !important;
  font:inherit;
  box-shadow:0 1px 0 rgba(255,255,255,.65) inset;
}
body.public-modern :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus{
  border-color:var(--public-emerald) !important;
  box-shadow:0 0 0 4px rgba(8,122,61,.10) !important;
  outline:0;
}
body.public-modern :where(.form-card,.rfqbox,.dpbox,.fcbox,form){border-radius:var(--public-radius)}
body.public-modern :where(.rfqbox,.dpbox,.fcbox){border:1px solid var(--public-line) !important;box-shadow:var(--public-shadow)}
body.public-modern :where(.rfq,.dp,.fc){width:min(100%,1120px);margin:34px auto !important;padding:clamp(18px,3vw,32px) !important}
body.public-modern :where(.rfq,.dp,.fc)>h1{font-size:clamp(32px,4vw,48px);line-height:1.12;color:var(--public-deep)}

/* Data tables remain usable on phones without widening the page */
body.public-modern .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
body.public-modern table{max-width:100%;border-collapse:collapse}

/* Floating contact actions */
body.public-modern .floating-contact{right:18px !important;bottom:18px !important;gap:10px !important}
body.public-modern .floating-contact a{
  width:54px !important;
  min-width:54px !important;
  height:54px !important;
  padding:0 !important;
  border-radius:50% !important;
  box-shadow:0 14px 34px rgba(6,77,43,.22) !important;
}
body.public-modern .floating-contact .call{background:rgba(255,253,248,.96) !important}
body.public-modern .floating-contact .wa{background:var(--public-emerald) !important}

/* Footer refinement; values override the legacy inline footer layer */
body.public-modern footer{
  padding:30px clamp(24px,5vw,82px) 16px !important;
  column-gap:34px !important;
  row-gap:16px !important;
  background:linear-gradient(135deg,#064d2b,#075d34) !important;
  border-top:3px solid var(--public-gold) !important;
}
body.public-modern footer .footer-col a,
body.public-modern footer .footer-col span,
body.public-modern footer .footer-address span{font-size:9.5px !important;line-height:1.5 !important}
body.public-modern footer .footer-col>b,
body.public-modern footer .footer-address b{font-size:8.5px !important}
body.public-modern footer .footer-bottom{font-size:8px !important}

/* Tablet */
@media(max-width:1180px){
  body.public-modern .header .brand{min-width:310px !important}
  body.public-modern .header nav{gap:14px !important}
  body.public-modern .header nav>a,
  body.public-modern .nav-services-toggle{font-size:12px !important}
  body.public-modern .header-cta{display:none !important}
  body.public-home .hero{
    grid-template-columns:minmax(0,.9fr) minmax(470px,1.1fr) !important;
    gap:34px !important;
  }
  body.public-home .hero h1{font-size:clamp(40px,4.6vw,57px) !important}
  body.public-home .aida-start-list strong{font-size:13px !important}
  body.public-modern .business-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}

/* Mobile navigation and stacked public layouts */
@media(max-width:900px){
  body.public-modern{font-size:15px}
  body.public-modern .header,
  body.public-modern .header.focused-unit-header,
  body.public-modern .header.main-landing-header{
    height:76px !important;
    min-height:76px !important;
    padding:0 18px !important;
  }
  body.public-modern .header .brand{min-width:0 !important;max-width:calc(100% - 58px);gap:10px !important}
  body.public-modern .header .brand img{width:48px !important;height:48px !important;flex:0 0 auto}
  body.public-modern .header .brand-copy{min-width:0}
  body.public-modern .header .brand-name-main{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:13px !important;
  }
  body.public-modern .header .brand-name-legal{font-size:7px !important;letter-spacing:.13em !important}
  body.public-modern .header-slogan{display:none !important}
  body.public-modern .public-menu-toggle{
    width:44px !important;
    height:44px !important;
    margin-left:auto;
    padding:9px !important;
    display:grid !important;
    grid-template-rows:repeat(3,2px) 9px;
    gap:5px;
    place-content:center;
    border:1px solid var(--public-line) !important;
    border-radius:12px !important;
    background:rgba(255,253,248,.92) !important;
  }
  body.public-modern .public-menu-toggle span{width:20px;height:2px;background:var(--public-deep);border-radius:2px}
  body.public-modern .public-menu-toggle b{font-size:7px;line-height:1;color:var(--public-deep)}
  body.public-modern .header nav{
    position:absolute !important;
    left:12px !important;
    right:12px !important;
    top:68px !important;
    max-height:calc(100vh - 86px);
    overflow-y:auto;
    padding:10px !important;
    display:none !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:2px !important;
    border:1px solid var(--public-line) !important;
    border-radius:16px !important;
    background:rgba(255,253,248,.98) !important;
    box-shadow:0 22px 55px rgba(6,77,43,.18) !important;
    backdrop-filter:blur(18px);
  }
  body.public-modern .header.menu-open nav{display:flex !important}
  body.public-modern .header nav>a,
  body.public-modern .nav-services-toggle{
    width:100%;
    padding:12px 14px !important;
    border-radius:9px;
    text-align:left;
  }
  body.public-modern .nav-services-dropdown{width:100% !important}
  body.public-modern .nav-services-menu{
    position:static !important;
    width:100% !important;
    margin-top:3px !important;
    display:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    box-shadow:none !important;
    background:var(--public-sage) !important;
  }
  body.public-modern .nav-services-dropdown.is-open .nav-services-menu{display:grid !important}
  body.public-modern .company-slogan{min-height:36px;padding:8px 14px}
  body.public-modern .company-slogan span{font-size:7.5px !important;letter-spacing:.11em !important}

  body.public-home .hero{
    min-height:0 !important;
    padding:48px 22px 34px !important;
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  body.public-home .hero-copy{max-width:720px}
  body.public-home .hero h1{max-width:680px;font-size:clamp(39px,8.2vw,54px) !important}
  body.public-home .hero .lead{font-size:15px !important}
  body.public-home .hero-actions .btn{flex:1 1 190px}
  body.public-home .hero .aida-start-panel{max-width:none !important;margin:0 !important;padding:18px !important}
  body.public-home .main-landing-strip{padding:26px 22px !important}
  body.public-home .landing-strip-units{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.public-home .landing-strip-units a{padding:10px 8px}
  body.public-home .landing-strip-units a+a{border-left:0}
  body.public-home .landing-strip-units a:nth-child(even){border-left:1px solid var(--public-line)}
  body.public-home .landing-strip-units a:nth-child(n+3){border-top:1px solid var(--public-line)}

  body.public-modern .page-hero{
    min-height:0 !important;
    padding:52px 24px !important;
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  body.public-modern .page-hero-art{min-height:0 !important}
  body.public-modern :where(.about,.section-head,.capability,.panindia,.content-head,.split-section,.contact-grid,.aida-path-head){grid-template-columns:1fr !important;gap:28px !important}
  body.public-modern :where(.about,.business,.capability,.panindia,.cta,.content-section,.split-section,.page-cta,.aida-path,.journey){
    padding-left:24px !important;
    padding-right:24px !important;
  }
  body.public-modern .aida-path-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  body.public-modern .service-capability-points{grid-template-columns:1fr 1fr !important}
  body.public-modern footer{grid-template-columns:1fr 1fr !important;padding:28px 24px 16px !important}
  body.public-modern footer .footer-disclosure,
  body.public-modern footer .footer-bottom{grid-column:1/-1 !important}
}

/* Small phones */
@media(max-width:620px){
  body.public-modern .header .brand-name-main{font-size:11.5px !important}
  body.public-modern .header .brand-name-legal{font-size:6.5px !important}
  body.public-modern .header .brand img{width:44px !important;height:44px !important}
  body.public-home .hero{padding:42px 18px 28px !important}
  body.public-home .hero .eyebrow{margin-bottom:15px !important;font-size:9px !important}
  body.public-home .hero h1{font-size:clamp(34px,10.6vw,44px) !important;line-height:1.07 !important}
  body.public-home .hero .lead{font-size:14px !important;line-height:1.65 !important}
  body.public-home .hero-actions{display:grid !important;grid-template-columns:1fr !important}
  body.public-home .hero-actions .btn{width:100% !important;flex:none !important}
  body.public-home .hero .aida-start-panel{padding:15px !important;border-radius:20px !important}
  body.public-home .aida-start-head{padding:2px 3px 15px !important}
  body.public-home .aida-start-head strong{font-size:26px !important}
  body.public-home .aida-start-list{grid-template-columns:1fr !important}
  body.public-home .aida-start-list>a{min-height:104px !important}
  body.public-home .landing-strip-heading strong{font-size:17px}
  body.public-home .landing-strip-units{grid-template-columns:1fr}
  body.public-home .landing-strip-units a{justify-content:flex-start;text-align:left;padding:10px 8px}
  body.public-home .landing-strip-units a:nth-child(even){border-left:0}
  body.public-home .landing-strip-units a+a{border-top:1px solid var(--public-line)}

  body.public-modern .page-hero{padding:44px 18px !important}
  body.public-modern .page-hero h1{font-size:clamp(34px,10vw,44px) !important}
  body.public-modern :where(.about,.business,.capability,.panindia,.cta,.content-section,.split-section,.page-cta,.aida-path,.journey){
    padding:52px 18px !important;
  }
  body.public-modern :where(.about h2,.section-head h2,.capability h2,.pan-copy h2,.cta h2,.content-head h2,.page-cta h2,.aida-path-head h2){
    font-size:clamp(31px,9vw,40px) !important;
  }
  body.public-modern .business-grid,
  body.public-modern .aida-path-grid,
  body.public-modern :where(.feature-grid,.decision-grid,.service-grid,.product-grid,.steps),
  body.public-modern .service-capability-points{
    grid-template-columns:1fr !important;
  }
  body.public-modern .business-grid article,
  body.public-modern .aida-path-grid article{min-height:0 !important;padding:22px !important}
  body.public-modern :where(.rfqgrid,.dpgrid,.fcgrid,.item){grid-template-columns:1fr !important}
  body.public-modern :where(.rfq,.dp,.fc){margin:18px auto !important;padding:14px !important}
  body.public-modern :where(.rfqbox,.dpbox,.fcbox){padding:18px !important;border-radius:18px !important}
  body.public-modern .full{grid-column:auto !important}
  body.public-modern table{
    display:block;
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  body.public-modern footer{grid-template-columns:1fr !important;padding:26px 20px 14px !important}
  body.public-modern footer .footer-company-block,
  body.public-modern footer .footer-col,
  body.public-modern footer .footer-disclosure,
  body.public-modern footer .footer-bottom{grid-column:1 !important}
  body.public-modern footer .footer-disclosure{grid-template-columns:1fr !important}
  body.public-modern footer .footer-disclosure span:last-child{text-align:left !important}
  body.public-modern .floating-contact{right:12px !important;bottom:12px !important;gap:8px !important}
  body.public-modern .floating-contact a{width:48px !important;min-width:48px !important;height:48px !important}
  body.public-modern .floating-contact .call{font-size:8px !important}
  body.public-modern .floating-contact .wa svg{width:25px !important;height:25px !important}
}

@media(prefers-reduced-motion:reduce){
  body.public-modern *,body.public-modern *::before,body.public-modern *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

/* =========================================================
   BUILD 46.16 — ANDROID HOMEPAGE LAYOUT CORRECTION
   Forces a true stacked mobile flow across Android text scaling,
   browser zoom and tablet-like CSS viewport widths.
   ========================================================= */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

@media(max-width:1040px){
  html,body.public-modern{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }
  body.public-modern.public-home .header.main-landing-header{
    width:100% !important;
    height:76px !important;
    min-height:76px !important;
    padding:0 18px !important;
  }
  body.public-modern.public-home .header .brand{
    min-width:0 !important;
    max-width:calc(100% - 62px) !important;
  }
  body.public-modern.public-home .header .brand img{
    width:46px !important;
    height:46px !important;
  }
  body.public-modern.public-home .header .brand-name-main{
    font-size:clamp(12px,3.7vw,16px) !important;
    white-space:nowrap;
  }
  body.public-modern.public-home .header .brand-name-legal{
    display:none !important;
  }
  body.public-modern.public-home .header-slogan,
  body.public-modern.public-home .header-cta{
    display:none !important;
  }
  body.public-modern.public-home .public-menu-toggle{
    flex:0 0 48px;
    width:48px !important;
    height:48px !important;
    margin-left:auto !important;
  }

  body.public-modern.public-home .hero{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:42px 22px 34px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    gap:34px !important;
    align-items:start !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .hero-copy,
  body.public-modern.public-home .aida-hero-art{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    inset:auto !important;
    align-self:start !important;
    transform:none !important;
  }
  body.public-modern.public-home .hero .eyebrow{
    margin:0 0 15px !important;
    padding:0 !important;
    font-size:9px !important;
    line-height:1.45 !important;
  }
  body.public-modern.public-home .hero .eyebrow::after{
    display:none !important;
  }
  body.public-modern.public-home .hero h1{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 18px !important;
    font-size:clamp(36px,8.6vw,48px) !important;
    line-height:1.06 !important;
    letter-spacing:-.035em !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
  body.public-modern.public-home .hero .lead{
    width:100% !important;
    max-width:650px !important;
    font-size:14px !important;
    line-height:1.6 !important;
  }
  body.public-modern.public-home .hero-actions{
    width:100% !important;
    max-width:560px !important;
    margin-top:22px !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  body.public-modern.public-home .hero-actions .btn{
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    padding:0 14px !important;
    white-space:normal !important;
    line-height:1.25 !important;
  }
  body.public-modern.public-home .hero-actions .btn:nth-child(3){
    grid-column:1/-1;
  }

  body.public-modern.public-home .hero .aida-start-panel{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:18px !important;
    position:relative !important;
    inset:auto !important;
    overflow:hidden !important;
    transform:none !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .aida-start-head{
    width:100% !important;
    padding:2px 3px 17px !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .aida-start-head strong{
    font-size:clamp(26px,6.5vw,34px) !important;
    line-height:1.12 !important;
  }
  body.public-modern.public-home .aida-start-head p{
    max-width:100% !important;
    margin-top:7px !important;
    font-size:13px !important;
    line-height:1.55 !important;
  }
  body.public-modern.public-home .aida-start-list{
    width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:none !important;
    gap:12px !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:152px !important;
    padding:15px !important;
    grid-template-columns:48px minmax(0,1fr) 18px !important;
    grid-template-rows:auto 1fr !important;
    gap:5px 11px !important;
    align-items:center !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .aida-icon{
    width:48px;
    height:48px;
    padding:10px;
    grid-column:1 !important;
    grid-row:1/3 !important;
    align-self:center !important;
  }
  body.public-modern.public-home .aida-start-list b{
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:end !important;
    background:transparent !important;
    font-size:10px !important;
  }
  body.public-modern.public-home .aida-start-list>a>span{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    overflow:visible !important;
  }
  body.public-modern.public-home .aida-start-list strong{
    margin:0 0 6px !important;
    font-size:14px !important;
    line-height:1.3 !important;
    overflow-wrap:anywhere !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:11px !important;
    line-height:1.45 !important;
    overflow-wrap:anywhere !important;
  }
  body.public-modern.public-home .aida-start-list em{
    margin:0 !important;
    grid-column:3 !important;
    grid-row:1/3 !important;
    align-self:center !important;
    font-size:17px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:25px 22px !important;
    gap:18px !important;
    box-sizing:border-box !important;
  }
}

@media(max-width:620px){
  body.public-modern.public-home .hero{
    padding:36px 18px 28px !important;
    gap:28px !important;
  }
  body.public-modern.public-home .hero h1{
    font-size:clamp(34px,10.5vw,43px) !important;
  }
  body.public-modern.public-home .hero-actions{
    grid-template-columns:1fr !important;
  }
  body.public-modern.public-home .hero-actions .btn:nth-child(3){
    grid-column:auto;
  }
  body.public-modern.public-home .hero .aida-start-panel{
    padding:15px !important;
    border-radius:20px !important;
  }
  body.public-modern.public-home .aida-start-list{
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    min-height:142px !important;
    padding:16px 14px !important;
    grid-template-columns:50px minmax(0,1fr) 17px !important;
    gap:5px 11px !important;
  }
  body.public-modern.public-home .aida-icon{
    width:50px;
    height:50px;
  }
  body.public-modern.public-home .aida-start-list strong{
    font-size:15px !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:11.5px !important;
  }
  body.public-modern.public-home .landing-strip-units{
    grid-template-columns:1fr !important;
  }
  body.public-modern.public-home .landing-strip-units a,
  body.public-modern.public-home .landing-strip-units a:nth-child(even){
    min-height:48px;
    padding:10px 8px !important;
    justify-content:flex-start !important;
    border-left:0 !important;
    border-top:1px solid var(--public-line);
  }
  body.public-modern.public-home .landing-strip-units a:first-child{
    border-top:0;
  }
}

/* =========================================================
   BUILD 46.15 — FOUR PRIMARY FOCUS CARDS
   Uses the available card area for stronger hierarchy instead of
   leaving small text at the top with unused space below.
   ========================================================= */
@media(min-width:1041px){
  body.public-modern.public-home .aida-start-list>a{
    padding:clamp(16px,2.4svh,24px) !important;
    grid-template-columns:clamp(56px,4.7vw,70px) 28px minmax(0,1fr) 20px !important;
    gap:clamp(9px,1vw,15px) !important;
    align-items:center !important;
    border-color:rgba(6,77,43,.16) !important;
    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(232,242,234,.70)) !important;
    box-shadow:0 12px 30px rgba(6,77,43,.09),inset 0 1px 0 rgba(255,255,255,.92) !important;
  }
  body.public-modern.public-home .aida-start-list>a:nth-child(2),
  body.public-modern.public-home .aida-start-list>a:nth-child(3){
    background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(237,245,238,.78)) !important;
  }
  body.public-modern.public-home .aida-start-list>a:hover{
    border-color:rgba(8,122,61,.38) !important;
    background:linear-gradient(135deg,#fff,rgba(224,240,227,.92)) !important;
    box-shadow:0 18px 38px rgba(6,77,43,.15),inset 0 1px 0 #fff !important;
  }
  body.public-modern.public-home .aida-icon{
    width:clamp(56px,4.7vw,70px);
    height:clamp(56px,4.7vw,70px);
    padding:clamp(11px,1vw,15px);
    align-self:center;
    border-color:rgba(8,122,61,.20);
    background:linear-gradient(145deg,#f5faf6,#e3f0e6);
    box-shadow:0 8px 18px rgba(6,77,43,.09),inset 0 1px 0 rgba(255,255,255,.95);
  }
  body.public-modern.public-home .aida-start-list b{
    margin:0 !important;
    align-self:center;
    color:#a97525 !important;
    font-size:12px !important;
    letter-spacing:.11em;
  }
  body.public-modern.public-home .aida-start-list>a>span{
    height:100%;
    align-self:center;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  body.public-modern.public-home .aida-start-list strong{
    margin-bottom:7px !important;
    font-size:clamp(14px,1.12vw,18px) !important;
    line-height:1.25 !important;
    letter-spacing:-.012em;
  }
  body.public-modern.public-home .aida-start-list small{
    display:block;
    font-size:clamp(11px,.84vw,13px) !important;
    line-height:1.45 !important;
  }
  body.public-modern.public-home .aida-start-list em{
    margin:0 !important;
    align-self:center;
    font-size:20px !important;
    font-weight:700;
  }
}

/* Keep the stronger hierarchy on scaled/short laptop viewports. */
@media(min-width:1041px) and (max-height:760px){
  body.public-modern.public-home .aida-start-list>a{
    padding:10px !important;
    grid-template-columns:52px 25px minmax(0,1fr) 17px !important;
    gap:8px !important;
  }
  body.public-modern.public-home .aida-icon{
    width:52px;
    height:52px;
    padding:11px;
  }
  body.public-modern.public-home .aida-start-list b{
    font-size:10.5px !important;
  }
  body.public-modern.public-home .aida-start-list strong{
    margin-bottom:5px !important;
    font-size:13.5px !important;
    line-height:1.22 !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:10.25px !important;
    line-height:1.38 !important;
  }
  body.public-modern.public-home .aida-start-list em{
    font-size:17px !important;
  }
}

@media(max-width:1040px){
  body.public-home .aida-start-list>a{
    padding:15px !important;
    align-items:center !important;
    background:linear-gradient(135deg,#fff,rgba(232,242,234,.78)) !important;
    box-shadow:0 10px 24px rgba(6,77,43,.08) !important;
  }
  body.public-home .aida-start-list b,
  body.public-home .aida-start-list em,
  body.public-home .aida-start-list>a>span{align-self:center}
  body.public-home .aida-start-list strong{
    margin-bottom:6px !important;
    font-size:15px !important;
    line-height:1.28 !important;
  }
  body.public-home .aida-start-list small{
    font-size:11.5px !important;
    line-height:1.45 !important;
  }
}

/* Four public business units share one premium focus-card language. */
body.public-modern.public-unit-page{
  --unit-focus-accent:#087a3d;
  --unit-focus-soft:rgba(232,242,234,.86);
}
body.public-modern.public-unit-page.digital-page{
  --unit-focus-accent:#07845a;
  --unit-focus-soft:rgba(227,243,235,.88);
}
body.public-modern.public-unit-page.finance-page{
  --unit-focus-accent:#0a7040;
  --unit-focus-soft:rgba(239,243,226,.88);
}
body.public-modern.public-unit-page.sales-services-page{
  --unit-focus-accent:#0a7c45;
  --unit-focus-soft:rgba(232,243,232,.90);
}
body.public-modern.public-unit-page .executive-panel{
  width:min(100%,560px) !important;
  padding:clamp(20px,2.4vw,32px) !important;
  overflow:hidden;
  border-color:rgba(255,255,255,.72) !important;
  background:
    radial-gradient(circle at 91% 9%,rgba(201,168,106,.16),transparent 25%),
    linear-gradient(145deg,rgba(255,253,248,.97),var(--unit-focus-soft)) !important;
  box-shadow:0 28px 66px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body.public-modern.public-unit-page .executive-panel>small{
  color:#a97525 !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
}
body.public-modern.public-unit-page .executive-panel h3{
  margin:8px 0 17px !important;
  color:var(--public-deep) !important;
  font-size:clamp(25px,2vw,31px) !important;
  line-height:1.08 !important;
}
body.public-modern.public-unit-page .panel-stat-grid{
  gap:10px !important;
}
body.public-modern.public-unit-page .panel-stat-grid>div{
  min-width:0;
  min-height:94px !important;
  padding:14px !important;
  display:grid !important;
  grid-template-columns:48px 24px minmax(0,1fr) !important;
  gap:9px !important;
  align-items:center !important;
  border:1px solid rgba(6,77,43,.14) !important;
  border-radius:15px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(232,242,234,.68)) !important;
  box-shadow:0 10px 26px rgba(6,77,43,.08),inset 0 1px 0 rgba(255,255,255,.95) !important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease !important;
}
body.public-modern.public-unit-page .panel-stat-grid>div:hover{
  transform:translateY(-3px);
  border-color:rgba(8,122,61,.32) !important;
  box-shadow:0 16px 34px rgba(6,77,43,.13),inset 0 1px 0 #fff !important;
}
body.public-modern.public-unit-page .unit-focus-icon{
  width:48px;
  height:48px;
  padding:10px;
  display:grid;
  place-items:center;
  color:var(--unit-focus-accent);
  border:1px solid rgba(8,122,61,.18);
  border-radius:50%;
  background:linear-gradient(145deg,#f8fbf8,#e2efe5);
  box-shadow:0 7px 16px rgba(6,77,43,.08);
  font-style:normal;
}
body.public-modern.public-unit-page .unit-focus-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.public-modern.public-unit-page .panel-stat-grid b{
  color:#a97525 !important;
  font-size:10px !important;
  letter-spacing:.08em;
}
body.public-modern.public-unit-page .panel-stat-grid span{
  min-width:0;
  color:var(--public-deep) !important;
  font-size:clamp(13px,1.05vw,16px) !important;
  font-weight:700 !important;
  line-height:1.22 !important;
}

/* Continue the hierarchy through each unit's capability cards. */
body.public-modern.public-unit-page :where(.premium-card,.service-card,.feature-box,.decision-grid article){
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(232,242,234,.52)) !important;
  border-color:rgba(6,77,43,.14) !important;
  box-shadow:0 16px 38px rgba(6,77,43,.09) !important;
}
body.public-modern.public-unit-page :where(.premium-card,.service-card,.feature-box,.decision-grid article) h3{
  color:var(--public-deep) !important;
  font-size:clamp(17px,1.45vw,21px) !important;
  line-height:1.28 !important;
}
body.public-modern.public-unit-page :where(.premium-card,.service-card,.feature-box,.decision-grid article) p{
  color:var(--public-muted) !important;
  font-size:12.5px !important;
  line-height:1.62 !important;
}
body.public-modern.public-unit-page :where(.premium-card .num,.service-card>b){
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--unit-focus-soft);
  color:#a97525 !important;
  font-size:10px !important;
  font-weight:700;
}
body.public-modern.public-unit-page :where(.premium-card small,.service-card>span){
  color:var(--unit-focus-accent) !important;
  font-size:9px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
}

@media(min-width:1041px) and (max-height:760px){
  body.public-modern.public-unit-page .executive-panel{
    padding:17px !important;
  }
  body.public-modern.public-unit-page .executive-panel h3{
    margin:5px 0 10px !important;
    font-size:24px !important;
  }
  body.public-modern.public-unit-page .panel-stat-grid{
    gap:7px !important;
  }
  body.public-modern.public-unit-page .panel-stat-grid>div{
    min-height:76px !important;
    padding:9px !important;
    grid-template-columns:42px 21px minmax(0,1fr) !important;
    gap:7px !important;
  }
  body.public-modern.public-unit-page .unit-focus-icon{
    width:42px;
    height:42px;
    padding:9px;
  }
  body.public-modern.public-unit-page .panel-stat-grid span{
    font-size:12.5px !important;
  }
}

@media(max-width:900px){
  body.public-modern.public-unit-page .panel-stat-grid>div{
    min-height:86px !important;
    grid-template-columns:44px 22px minmax(0,1fr) !important;
  }
  body.public-modern.public-unit-page .unit-focus-icon{
    width:44px;
    height:44px;
    padding:9px;
  }
  body.public-modern.public-unit-page .panel-stat-grid span{
    font-size:14px !important;
  }
}

/* =========================================================
   BUILD 46.12 — DESKTOP SINGLE-VIEW ABOVE-THE-FOLD FIT
   Home: header + complete hero + business-unit bridge.
   Finance: header + complete hero + unit bar + credentials.
   Mobile stacking from Build 46.11 remains unchanged.
   ========================================================= */
@media(min-width:1041px){
  body.public-modern .header.focused-unit-header,
  body.public-modern .header.main-landing-header{
    height:96px !important;
    min-height:96px !important;
    padding:0 clamp(22px,4vw,72px) 23px !important;
  }
  body.public-modern .header-slogan{
    bottom:5px !important;
    height:18px !important;
  }
  body.public-modern .header-slogan span{
    font-size:8.5px !important;
    letter-spacing:.17em !important;
  }

  /* Screens 1 + 2: keep the entire home hero and bridge in one viewport. */
  body.public-modern.public-home .hero{
    height:clamp(465px,calc(100svh - 208px),570px) !important;
    min-height:0 !important;
    max-height:570px !important;
    padding-top:24px !important;
    padding-bottom:24px !important;
    align-items:center !important;
  }
  body.public-modern.public-home .hero .eyebrow{
    margin-bottom:12px !important;
    font-size:9.5px !important;
  }
  body.public-modern.public-home .hero h1{
    margin-bottom:16px !important;
    max-width:700px !important;
    font-size:clamp(43px,3.45vw,56px) !important;
    line-height:1 !important;
  }
  body.public-modern.public-home .hero .lead{
    max-width:690px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }
  body.public-modern.public-home .hero-actions{
    margin-top:18px !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
  }
  body.public-modern.public-home .hero-actions .btn{
    min-height:42px !important;
    padding:0 14px !important;
    font-size:10px !important;
    white-space:nowrap !important;
  }
  body.public-modern.public-home .hero .aida-start-panel{
    max-width:680px !important;
    padding:14px !important;
    border-radius:22px !important;
  }
  body.public-modern.public-home .aida-start-head{
    padding:0 4px 11px !important;
  }
  body.public-modern.public-home .aida-start-head small{
    margin-bottom:4px !important;
    font-size:8.5px !important;
  }
  body.public-modern.public-home .aida-start-head strong{
    font-size:clamp(24px,2vw,32px) !important;
    line-height:1.05 !important;
  }
  body.public-modern.public-home .aida-start-head p{
    margin-top:5px !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
  }
  body.public-modern.public-home .aida-start-list{
    gap:8px !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    min-height:94px !important;
    padding:10px !important;
    grid-template-columns:30px minmax(0,1fr) 14px !important;
    gap:8px !important;
    border-radius:14px !important;
  }
  body.public-modern.public-home .aida-start-list b{
    width:30px !important;
    height:30px !important;
    font-size:8.5px !important;
  }
  body.public-modern.public-home .aida-start-list strong{
    margin-bottom:2px !important;
    font-size:12px !important;
    line-height:1.2 !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:9px !important;
    line-height:1.25 !important;
  }
  body.public-modern.public-home .aida-start-list em{
    font-size:14px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    height:112px !important;
    min-height:112px !important;
    padding:15px max(5vw,calc((100vw - var(--public-max))/2)) 13px !important;
    gap:9px !important;
  }
  body.public-modern.public-home .landing-strip-heading small{
    font-size:8px !important;
  }
  body.public-modern.public-home .landing-strip-heading strong{
    margin-top:2px !important;
    font-size:17px !important;
  }
  body.public-modern.public-home .landing-strip-units a{
    padding:2px 12px !important;
    font-size:10px !important;
  }

  /* Screens 3 + 4: financial hero, unit bar and credentials in one viewport. */
  body.public-modern.finance-page .page-hero{
    height:clamp(350px,calc(100svh - 306px),430px) !important;
    min-height:0 !important;
    max-height:430px !important;
    padding:18px max(5vw,calc((100vw - var(--public-max))/2)) !important;
    gap:42px !important;
  }
  body.public-modern.finance-page .page-hero h1{
    margin:6px 0 10px !important;
    font-size:clamp(40px,3.2vw,52px) !important;
    line-height:1 !important;
  }
  body.public-modern.finance-page .page-hero-copy>p:not(.eyebrow){
    margin:0 !important;
    font-size:13px !important;
    line-height:1.5 !important;
  }
  body.public-modern.finance-page .hero-actions{
    margin-top:13px !important;
    gap:7px !important;
  }
  body.public-modern.finance-page .hero-actions .btn{
    min-height:39px !important;
    padding:0 12px !important;
    font-size:9px !important;
  }
  body.public-modern.finance-page .page-hero-art{
    height:100% !important;
    min-height:0 !important;
  }
  body.public-modern.finance-page .executive-panel{
    height:auto !important;
    max-height:100% !important;
    padding:22px 24px !important;
    border-radius:20px !important;
  }
  body.public-modern.finance-page .executive-panel h3{
    margin:7px 0 13px !important;
    font-size:28px !important;
    line-height:1.05 !important;
  }
  body.public-modern.finance-page .panel-stat-grid{
    gap:8px !important;
  }
  body.public-modern.finance-page .panel-stat-grid>div{
    min-height:62px !important;
    padding:9px 12px !important;
  }
  body.public-modern.finance-page .unit-title-strip{
    height:42px !important;
    min-height:42px !important;
    padding:9px 5.2vw !important;
  }
  body.public-modern.finance-page .finance-trust{
    min-height:168px !important;
    padding:12px 5.2vw 13px !important;
  }
  body.public-modern.finance-page .finance-trust-heading{
    margin-bottom:7px !important;
  }
  body.public-modern.finance-page .finance-trust-card,
  body.public-modern.finance-page .finance-trust-item{
    min-height:62px !important;
    padding:10px 14px !important;
  }
  body.public-modern.finance-page .finance-trust-card strong,
  body.public-modern.finance-page .finance-trust-item strong{
    font-size:15px !important;
  }
  body.public-modern.finance-page .finance-trust-note{
    margin-top:7px !important;
    font-size:10px !important;
    line-height:1.4 !important;
  }
}

/* Extra-safe compacting for laptop viewports affected by browser zoom. */
@media(min-width:1041px) and (max-height:760px){
  body.public-modern.public-home .hero{
    height:calc(100svh - 196px) !important;
    min-height:440px !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    height:100px !important;
    min-height:100px !important;
    padding-top:10px !important;
    padding-bottom:9px !important;
  }
  body.public-modern.public-home .hero h1{
    font-size:clamp(40px,3.2vw,51px) !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    min-height:86px !important;
  }

  body.public-modern.finance-page .page-hero{
    height:calc(100svh - 294px) !important;
    min-height:332px !important;
    padding-top:13px !important;
    padding-bottom:13px !important;
  }
  body.public-modern.finance-page .finance-trust{
    min-height:156px !important;
    padding-top:9px !important;
    padding-bottom:10px !important;
  }
}

/* =========================================================
   BUILD 46.13 — HOME CONTENT-FIT CORRECTION
   Removes the forced empty hero area seen at Windows display scaling
   and keeps header + hero + solution strip inside one desktop viewport.
   ========================================================= */
@media(min-width:1041px){
  body.public-modern.public-home .header.main-landing-header{
    height:88px !important;
    min-height:88px !important;
    padding:0 clamp(22px,4vw,72px) 19px !important;
  }
  body.public-modern.public-home .header-slogan{
    bottom:3px !important;
    height:15px !important;
  }
  body.public-modern.public-home .hero{
    height:clamp(350px,calc(100svh - 184px),500px) !important;
    min-height:0 !important;
    max-height:500px !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .hero .eyebrow{
    margin-bottom:8px !important;
  }
  body.public-modern.public-home .hero h1{
    margin-bottom:11px !important;
    font-size:clamp(40px,3.2vw,52px) !important;
  }
  body.public-modern.public-home .hero .lead{
    font-size:13px !important;
    line-height:1.45 !important;
  }
  body.public-modern.public-home .hero-actions{
    width:max-content !important;
    max-width:100% !important;
    margin-top:13px !important;
    display:inline-flex !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
  }
  body.public-modern.public-home .hero-actions .btn{
    min-height:40px !important;
    padding:0 12px !important;
  }
  body.public-modern.public-home .hero .aida-start-panel{
    padding:12px !important;
  }
  body.public-modern.public-home .aida-start-head{
    padding-bottom:8px !important;
  }
  body.public-modern.public-home .aida-start-head strong{
    font-size:clamp(23px,1.85vw,29px) !important;
  }
  body.public-modern.public-home .aida-start-head p{
    margin-top:4px !important;
    font-size:10.5px !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    min-height:82px !important;
    padding:8px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    height:96px !important;
    min-height:96px !important;
    padding:10px max(5vw,calc((100vw - var(--public-max))/2)) 9px !important;
    gap:6px !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .landing-strip-heading strong{
    font-size:16px !important;
  }
}

@media(min-width:1041px) and (max-height:620px){
  body.public-modern.public-home .hero{
    height:calc(100svh - 174px) !important;
    min-height:330px !important;
    padding-top:11px !important;
    padding-bottom:11px !important;
  }
  body.public-modern.public-home .header.main-landing-header{
    height:82px !important;
    min-height:82px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    height:92px !important;
    min-height:92px !important;
  }
}

/* =========================================================
   BUILD 46.14 — APPROVED REFERENCE HOMEPAGE
   Header, hero and expertise strip use the same viewport proportions
   as the approved 31-08-2026 visual reference.
   ========================================================= */
body.public-home .aida-icon,
body.public-home .unit-icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  color:var(--public-emerald);
  font-style:normal;
}
body.public-home .aida-icon svg,
body.public-home .unit-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(min-width:1041px){
  body.public-modern.public-home{
    --home-header-height:clamp(88px,16.5svh,154px);
    --home-strip-height:clamp(104px,19.5svh,182px);
  }
  body.public-modern.public-home .header.main-landing-header{
    height:var(--home-header-height) !important;
    min-height:var(--home-header-height) !important;
    padding:0 clamp(52px,5.3vw,90px) clamp(24px,4.2svh,39px) !important;
    background:rgba(255,253,248,.96) !important;
    box-shadow:none !important;
  }
  body.public-modern.public-home .header .brand{
    min-width:400px !important;
  }
  body.public-modern.public-home .header .brand img{
    width:62px !important;
    height:62px !important;
  }
  body.public-modern.public-home .header .brand-name-main{
    font-size:19px !important;
  }
  body.public-modern.public-home .header-cta{
    display:none !important;
  }
  body.public-modern.public-home .header-slogan{
    bottom:clamp(7px,1.5svh,14px) !important;
    height:18px !important;
  }
  body.public-modern.public-home .header-slogan span{
    font-size:9px !important;
    letter-spacing:.22em !important;
  }
  body.public-modern.public-home .hero{
    height:calc(100svh - var(--home-header-height) - var(--home-strip-height)) !important;
    min-height:350px !important;
    max-height:none !important;
    padding:clamp(14px,3.2svh,30px) max(5.3vw,calc((100vw - 1510px)/2)) !important;
    grid-template-columns:minmax(0,1.02fr) minmax(500px,.98fr) !important;
    gap:clamp(38px,4.5vw,74px) !important;
    box-sizing:border-box !important;
    background:
      radial-gradient(circle at 4% 16%,rgba(201,168,106,.18) 0 1px,transparent 1.7px) 0 0/16px 16px,
      linear-gradient(115deg,#064d2b 0%,#075b33 55%,#087a3d 100%) !important;
  }
  body.public-modern.public-home .hero-copy{
    max-width:740px !important;
  }
  body.public-modern.public-home .hero .eyebrow{
    position:relative;
    margin-bottom:clamp(13px,2.3svh,22px) !important;
    padding-bottom:14px;
    font-size:10px !important;
  }
  body.public-modern.public-home .hero .eyebrow::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:50px;
    height:2px;
    background:var(--public-gold);
  }
  body.public-modern.public-home .hero h1{
    margin-bottom:clamp(15px,2.4svh,23px) !important;
    max-width:none !important;
    font-size:clamp(32px,2.75vw,50px) !important;
    line-height:1.08 !important;
    letter-spacing:-.04em !important;
    white-space:nowrap;
  }
  body.public-modern.public-home .hero .lead{
    max-width:600px !important;
    font-size:clamp(12px,1.05vw,16px) !important;
    line-height:1.55 !important;
  }
  body.public-modern.public-home .hero-actions{
    width:min(100%,510px) !important;
    margin-top:clamp(15px,2.7svh,26px) !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px 12px !important;
  }
  body.public-modern.public-home .hero-actions .btn{
    width:100% !important;
    min-height:clamp(40px,6.8svh,62px) !important;
    padding:0 18px !important;
    justify-content:space-between !important;
    font-size:11px !important;
  }
  body.public-modern.public-home .hero-actions .btn:nth-child(3){
    grid-column:1;
  }
  body.public-modern.public-home .hero-actions .btn b{
    margin-left:10px;
    color:inherit;
    font-size:15px;
    font-weight:400;
    line-height:1;
  }
  body.public-modern.public-home .aida-hero-art{
    height:100% !important;
    display:grid !important;
    place-items:center !important;
  }
  body.public-modern.public-home .hero .aida-start-panel{
    height:100% !important;
    max-height:540px !important;
    max-width:800px !important;
    padding:clamp(14px,2.7svh,27px) !important;
    display:flex !important;
    flex-direction:column !important;
    border-radius:24px !important;
  }
  body.public-modern.public-home .hero .aida-start-panel::before{
    content:"";
    position:absolute;
    inset:0 0 0 60%;
    opacity:.35;
    background:radial-gradient(circle,rgba(8,122,61,.22) 0 1px,transparent 1.5px) 0 0/13px 13px;
    pointer-events:none;
  }
  body.public-modern.public-home .aida-start-head{
    flex:0 0 auto;
    padding:0 10px clamp(10px,2svh,18px) !important;
  }
  body.public-modern.public-home .aida-start-head small{
    font-size:9px !important;
  }
  body.public-modern.public-home .aida-start-head strong{
    font-size:clamp(25px,2.15vw,35px) !important;
  }
  body.public-modern.public-home .aida-start-head p{
    margin-top:5px !important;
    font-size:clamp(10px,.92vw,13px) !important;
    line-height:1.45 !important;
  }
  body.public-modern.public-home .aida-start-list{
    position:relative;
    z-index:1;
    min-height:0;
    flex:1 1 auto;
    grid-template-rows:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    min-height:0 !important;
    height:100% !important;
    padding:clamp(9px,1.5svh,15px) !important;
    grid-template-columns:clamp(42px,4.2vw,58px) 22px minmax(0,1fr) 14px !important;
    gap:8px !important;
    align-items:start !important;
    border-radius:12px !important;
  }
  body.public-modern.public-home .aida-icon{
    width:clamp(42px,4.2vw,58px);
    height:clamp(42px,4.2vw,58px);
    padding:10px;
    grid-column:1;
    grid-row:1;
    border:1px solid var(--public-line);
    border-radius:50%;
    background:rgba(232,242,234,.68);
  }
  body.public-modern.public-home .aida-start-list b{
    width:auto !important;
    height:auto !important;
    margin-top:3px;
    display:block !important;
    grid-column:2;
    grid-row:1;
    background:transparent !important;
    color:#b07f2f !important;
    font-size:9px !important;
  }
  body.public-modern.public-home .aida-start-list>a>span{
    min-width:0;
    grid-column:3;
    grid-row:1;
  }
  body.public-modern.public-home .aida-start-list strong{
    margin-bottom:4px !important;
    font-size:clamp(10.5px,.95vw,14px) !important;
    line-height:1.28 !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:clamp(8.5px,.72vw,10.5px) !important;
    line-height:1.35 !important;
  }
  body.public-modern.public-home .aida-start-list em{
    margin-top:2px;
    grid-column:4;
    grid-row:1;
    font-size:15px !important;
  }
  body.public-modern.public-home .main-landing-strip{
    height:var(--home-strip-height) !important;
    min-height:var(--home-strip-height) !important;
    padding:clamp(11px,2.5svh,23px) max(5vw,calc((100vw - 1320px)/2)) clamp(8px,1.8svh,17px) !important;
    gap:clamp(6px,1.5svh,14px) !important;
    box-sizing:border-box !important;
    background:#fffdf8 !important;
  }
  body.public-modern.public-home .landing-strip-heading{
    position:relative;
  }
  body.public-modern.public-home .landing-strip-heading::before,
  body.public-modern.public-home .landing-strip-heading::after{
    content:"";
    position:absolute;
    top:68%;
    width:68px;
    height:1px;
    background:var(--public-gold);
  }
  body.public-modern.public-home .landing-strip-heading::before{right:calc(100% + 30px)}
  body.public-modern.public-home .landing-strip-heading::after{left:calc(100% + 30px)}
  body.public-modern.public-home .landing-strip-heading small{
    font-size:8.5px !important;
  }
  body.public-modern.public-home .landing-strip-heading strong{
    margin-top:3px !important;
    font-size:clamp(15px,1.35vw,20px) !important;
  }
  body.public-modern.public-home .landing-strip-units{
    width:min(100%,1120px) !important;
  }
  body.public-modern.public-home .landing-strip-units a{
    padding:2px 18px !important;
    gap:13px !important;
    font-size:11px !important;
  }
  body.public-modern.public-home .unit-icon{
    width:30px;
    height:30px;
  }
}

@media(min-width:1041px) and (max-height:760px){
  body.public-modern.public-home .hero{
    min-height:0 !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
  }
  body.public-modern.public-home .hero h1{
    font-size:clamp(36px,2.85vw,46px) !important;
  }
  body.public-modern.public-home .hero .lead{
    font-size:11.5px !important;
  }
  body.public-modern.public-home .hero-actions{
    margin-top:12px !important;
    gap:7px 9px !important;
  }
  body.public-modern.public-home .hero-actions .btn{
    min-height:38px !important;
  }
  body.public-modern.public-home .hero .aida-start-panel{
    padding:11px !important;
  }
  body.public-modern.public-home .aida-start-head{
    padding-bottom:7px !important;
  }
  body.public-modern.public-home .aida-start-head strong{
    font-size:24px !important;
  }
  body.public-modern.public-home .aida-start-head p{
    margin-top:2px !important;
    font-size:9.5px !important;
  }
  body.public-modern.public-home .aida-start-list>a{
    padding:7px !important;
  }
  body.public-modern.public-home .aida-icon{
    width:40px;
    height:40px;
    padding:8px;
  }
  body.public-modern.public-home .aida-start-list strong{
    font-size:10px !important;
  }
  body.public-modern.public-home .aida-start-list small{
    font-size:8px !important;
  }
}

@media(max-width:1040px){
  body.public-home .aida-start-list>a{
    grid-template-columns:48px 24px minmax(0,1fr) 16px !important;
  }
  body.public-home .aida-icon{
    width:48px;
    height:48px;
    padding:10px;
    grid-column:1;
    border:1px solid var(--public-line);
    border-radius:50%;
    background:var(--public-sage);
  }
  body.public-home .aida-start-list b{
    width:auto !important;
    height:auto !important;
    margin-top:4px;
    grid-column:2;
    background:transparent !important;
  }
  body.public-home .aida-start-list>a>span{grid-column:3}
  body.public-home .aida-start-list em{grid-column:4}
  body.public-home .unit-icon{width:27px;height:27px}
}

@media(max-width:620px){
  body.public-home .aida-start-list>a{
    grid-template-columns:44px 22px minmax(0,1fr) 14px !important;
  }
  body.public-home .aida-icon{
    width:44px;
    height:44px;
    padding:9px;
  }
}

/* Build 46.16 final placement must follow the earlier desktop-build layers. */
@media(max-width:1040px){
  body.public-modern.public-home .aida-start-list>a{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:152px !important;
    padding:15px !important;
    grid-template-columns:48px minmax(0,1fr) 18px !important;
    grid-template-rows:auto 1fr !important;
    gap:5px 11px !important;
    align-items:center !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  body.public-modern.public-home .aida-icon{
    width:48px !important;
    height:48px !important;
    padding:10px !important;
    grid-column:1 !important;
    grid-row:1/3 !important;
    align-self:center !important;
  }
  body.public-modern.public-home .aida-start-list b{
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:end !important;
    background:transparent !important;
    font-size:10px !important;
  }
  body.public-modern.public-home .aida-start-list>a>span{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    display:block !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:start !important;
    overflow:visible !important;
  }
  body.public-modern.public-home .aida-start-list em{
    margin:0 !important;
    grid-column:3 !important;
    grid-row:1/3 !important;
    align-self:center !important;
  }
}

@media(max-width:620px){
  body.public-modern.public-home .aida-start-list>a{
    min-height:142px !important;
    padding:16px 14px !important;
    grid-template-columns:50px minmax(0,1fr) 17px !important;
    grid-template-rows:auto 1fr !important;
    gap:5px 11px !important;
  }
  body.public-modern.public-home .aida-icon{
    width:50px !important;
    height:50px !important;
  }
}

/* =========================================================
   BUILD 46.17 — ABOUT SINGLE-VIEW + CONTACT RESPONSE STRIP
   About: header + hero + corporate-unit strip in one desktop view.
   Contact: replaces the blank first-view lower area with useful routing.
   ========================================================= */
@media(min-width:1041px){
  body.public-modern.about-page .page-hero{
    height:clamp(380px,calc(100svh - 172px),560px) !important;
    min-height:380px !important;
    max-height:560px !important;
    padding:clamp(22px,3.4svh,34px) max(5vw,calc((100vw - var(--public-max))/2)) !important;
    box-sizing:border-box !important;
  }
  body.public-modern.about-page .page-hero h1{
    margin:8px 0 14px !important;
    font-size:clamp(40px,3.55vw,58px) !important;
    line-height:1 !important;
  }
  body.public-modern.about-page .page-hero-copy>p:not(.eyebrow){
    margin-bottom:12px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }
  body.public-modern.about-page .hero-actions{
    margin-top:15px !important;
  }
  body.public-modern.about-page .page-hero-art{
    height:100% !important;
    min-height:0 !important;
  }
  body.public-modern.about-page .executive-panel{
    height:auto !important;
    max-height:100% !important;
    padding:clamp(20px,2.4vw,30px) !important;
  }
  body.public-modern.about-page .executive-panel h3{
    margin:7px 0 16px !important;
    font-size:clamp(25px,2vw,31px) !important;
    line-height:1.08 !important;
  }
  body.public-modern.about-page .panel-stat-grid{
    gap:9px !important;
  }
  body.public-modern.about-page .panel-stat-grid>div{
    min-height:82px !important;
    padding:12px 14px !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    border:1px solid rgba(6,77,43,.13) !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(232,242,234,.56)) !important;
  }
  body.public-modern.about-page .panel-stat-grid b{
    color:#a97525 !important;
    font-size:10px !important;
  }
  body.public-modern.about-page .panel-stat-grid span{
    color:var(--public-deep) !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
  }
  body.public-modern.about-page .about-first-view-strip{
    height:48px !important;
    min-height:48px !important;
    padding:13px 5.2vw !important;
    box-sizing:border-box !important;
  }

  body.public-modern.contact-page .page-hero{
    height:clamp(340px,calc(100svh - 224px),500px) !important;
    min-height:340px !important;
    max-height:500px !important;
    padding:clamp(18px,3svh,30px) max(5vw,calc((100vw - var(--public-max))/2)) !important;
    box-sizing:border-box !important;
  }
  body.public-modern.contact-page .page-hero h1{
    margin:7px 0 13px !important;
    font-size:clamp(40px,3.6vw,58px) !important;
    line-height:1 !important;
  }
  body.public-modern.contact-page .page-hero-copy>p:not(.eyebrow){
    margin-bottom:11px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }
  body.public-modern.contact-page .page-hero-actions{
    margin-top:15px !important;
  }
  body.public-modern.contact-page .page-hero-art{
    height:100% !important;
    min-height:0 !important;
  }
  body.public-modern.contact-page .executive-panel{
    height:auto !important;
    max-height:100% !important;
    padding:clamp(20px,2.4vw,30px) !important;
  }
  body.public-modern.contact-page .executive-panel h3{
    margin:7px 0 15px !important;
    font-size:clamp(25px,2vw,31px) !important;
  }
  body.public-modern.contact-page .panel-stat-grid{
    gap:9px !important;
  }
  body.public-modern.contact-page .panel-stat-grid>div{
    min-height:70px !important;
    padding:11px 14px !important;
  }
}

body.public-modern.contact-page .contact-response-strip{
  min-height:100px;
  padding:15px max(5vw,calc((100vw - 1440px)/2));
  display:grid;
  grid-template-columns:minmax(250px,1.18fr) repeat(3,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
  background:linear-gradient(90deg,#fffdf8,rgba(232,242,234,.72),#fffdf8);
  border-bottom:1px solid var(--public-line);
  box-sizing:border-box;
}
body.public-modern.contact-page .contact-response-intro{
  min-width:0;
  padding:10px 18px 10px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid var(--public-line);
}
body.public-modern.contact-page .contact-response-intro small{
  color:#a97525;
  font-size:8px;
  font-weight:700;
  letter-spacing:.14em;
}
body.public-modern.contact-page .contact-response-intro strong{
  margin-top:4px;
  color:var(--public-deep);
  font-size:16px;
  line-height:1.25;
}
body.public-modern.contact-page .contact-response-strip>a,
body.public-modern.contact-page .contact-response-strip>div:not(.contact-response-intro){
  min-width:0;
  padding:10px 12px;
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  gap:9px;
  align-items:center;
  border:1px solid rgba(6,77,43,.12);
  border-radius:12px;
  background:rgba(255,255,255,.70);
  color:var(--public-ink);
  text-decoration:none;
  box-shadow:0 7px 18px rgba(6,77,43,.05);
}
body.public-modern.contact-page .contact-response-strip b{
  color:#a97525;
  font-size:9px;
  letter-spacing:.08em;
}
body.public-modern.contact-page .contact-response-strip span,
body.public-modern.contact-page .contact-response-strip strong,
body.public-modern.contact-page .contact-response-strip small{
  min-width:0;
  display:block;
}
body.public-modern.contact-page .contact-response-strip strong{
  color:var(--public-deep);
  font-size:11px;
  line-height:1.25;
}
body.public-modern.contact-page .contact-response-strip small{
  margin-top:3px;
  color:var(--public-muted);
  font-size:8.5px;
  line-height:1.35;
}
@media(hover:hover) and (pointer:fine){
  body.public-modern.contact-page .contact-response-strip>a:hover{
    border-color:rgba(8,122,61,.30);
    background:#fff;
    box-shadow:0 12px 24px rgba(6,77,43,.10);
    transform:translateY(-2px);
  }
}

@media(max-width:1040px){
  body.public-modern.about-page .page-hero,
  body.public-modern.contact-page .page-hero{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  body.public-modern.about-page .about-first-view-strip{
    height:auto !important;
    min-height:0 !important;
  }
  body.public-modern.contact-page .contact-response-strip{
    min-height:0;
    padding:24px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.public-modern.contact-page .contact-response-intro{
    grid-column:1/-1;
    padding:0 0 12px;
    border-right:0;
    border-bottom:1px solid var(--public-line);
  }
}

@media(max-width:620px){
  body.public-modern.contact-page .contact-response-strip{
    padding:22px 18px;
    grid-template-columns:1fr;
    gap:9px;
  }
  body.public-modern.contact-page .contact-response-intro{
    grid-column:auto;
  }
  body.public-modern.contact-page .contact-response-strip>a,
  body.public-modern.contact-page .contact-response-strip>div:not(.contact-response-intro){
    min-height:72px;
    padding:12px;
  }
  body.public-modern.contact-page .contact-response-strip strong{
    font-size:13px;
  }
  body.public-modern.contact-page .contact-response-strip small{
    font-size:10.5px;
  }
}

/* =========================================================
   BUILD 46.18 — VERIFIED MOBILE NAVIGATION + FOCUS CARD FIX
   Keeps the approved desktop visual language while correcting the
   Android menu, unit-card clipping and floating-contact obstruction.
   ========================================================= */
body.public-modern .mobile-nav-cta{
  display:none !important;
}

@media(min-width:1181px){
  body.public-modern.public-home .header-cta{
    display:inline-flex !important;
  }
}

@media(max-width:900px){
  body.public-modern .header.menu-open{
    z-index:1200 !important;
  }
  body.public-modern .header nav{
    max-height:calc(100vh - 84px) !important;
    max-height:calc(100dvh - 84px) !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    background:#fffdf8 !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    scrollbar-gutter:stable;
    z-index:1201 !important;
  }
  body.public-modern .header nav .mobile-nav-cta{
    min-height:48px;
    margin-top:7px;
    padding:12px 16px !important;
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    color:#fffdf8 !important;
    border:1px solid rgba(255,255,255,.35) !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#075b33,#087a3d) !important;
    box-shadow:0 11px 24px rgba(6,77,43,.18);
  }
  body.public-modern .header nav .mobile-nav-cta b{
    color:inherit;
    font-size:17px;
    line-height:1;
  }
}

@media(max-width:620px){
  body.public-modern.public-unit-page .panel-stat-grid{
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
  }
  body.public-modern.public-unit-page .panel-stat-grid>div{
    width:100% !important;
    min-height:82px !important;
    padding:12px 14px !important;
    grid-template-columns:44px 25px minmax(0,1fr) !important;
    gap:10px !important;
  }
  body.public-modern.public-unit-page .panel-stat-grid span{
    min-width:0 !important;
    font-size:15px !important;
    line-height:1.25 !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }
  body.public-modern .floating-contact{
    right:8px !important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px)) !important;
    gap:6px !important;
  }
  body.public-modern .floating-contact a{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
  }
  body.public-modern .floating-contact .call{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    font-size:7px !important;
  }
  body.public-modern .floating-contact .wa svg{
    width:22px !important;
    height:22px !important;
  }
}

/* =========================================================
   BUILD 46.19 — ANDROID SERVICE-DELIVERY DIAGRAM
   Replaces the desktop-width SVG on phones with a readable vertical flow.
   ========================================================= */
body.public-modern .service-operations-mobile{
  display:none;
}

@media(max-width:700px){
  body.public-modern .landing-service-capability .service-operations-graphic{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:16px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  body.public-modern .landing-service-capability .service-operations-graphic>svg{
    display:none !important;
    width:0 !important;
    min-width:0 !important;
  }
  body.public-modern .service-operations-mobile{
    width:100%;
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:11px;
    color:var(--public-deep);
  }
  body.public-modern .mobile-operation-group{
    min-width:0;
    padding:15px;
    border:1px solid rgba(6,77,43,.13);
    border-radius:16px;
    background:rgba(255,253,248,.88);
    box-shadow:0 9px 22px rgba(6,77,43,.07);
  }
  body.public-modern .mobile-operation-group>small{
    display:block;
    margin-bottom:10px;
    color:#a97525;
    font-size:9px;
    font-weight:700;
    letter-spacing:.14em;
  }
  body.public-modern .mobile-operation-list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:8px;
  }
  body.public-modern .mobile-operation-list>div{
    min-width:0;
    min-height:48px;
    padding:10px 12px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    align-items:center;
    border:1px solid rgba(6,77,43,.11);
    border-radius:12px;
    background:linear-gradient(135deg,#fff,#edf5ef);
  }
  body.public-modern .mobile-operation-list b{
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    color:#a97525;
    border:1px solid rgba(169,117,37,.45);
    border-radius:50%;
    background:#fffdf8;
    font-size:9px;
    letter-spacing:.05em;
  }
  body.public-modern .mobile-operation-list span{
    min-width:0;
    color:var(--public-deep);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    overflow-wrap:break-word;
  }
  body.public-modern .mobile-operation-arrow{
    height:24px;
    display:grid;
    place-items:center;
    color:#a97525;
    font-size:24px;
    font-weight:700;
    line-height:1;
  }
  body.public-modern .mobile-operation-core{
    min-width:0;
    padding:20px 16px;
    display:grid;
    justify-items:center;
    text-align:center;
    border:2px solid rgba(169,117,37,.70);
    border-radius:22px;
    background:radial-gradient(circle at 50% 25%,#fffdf8,#e6f1e8 72%);
    box-shadow:0 15px 32px rgba(6,77,43,.11);
  }
  body.public-modern .mobile-operation-core img{
    width:68px !important;
    height:68px !important;
    margin-bottom:9px;
    object-fit:contain;
  }
  body.public-modern .mobile-operation-core strong{
    color:var(--public-deep);
    font-size:14px;
    line-height:1.3;
    letter-spacing:.04em;
  }
  body.public-modern .mobile-operation-core span{
    margin-top:3px;
    color:var(--public-muted);
    font-size:11px;
    font-weight:700;
    letter-spacing:.04em;
  }
  body.public-modern .mobile-operation-ribbon{
    min-width:0;
    padding:12px 10px;
    color:#fffdf8;
    border-radius:999px;
    background:linear-gradient(135deg,#064d2b,#087a3d);
    font-size:8px;
    font-weight:700;
    line-height:1.35;
    letter-spacing:.055em;
    text-align:center;
    overflow-wrap:break-word;
  }
}
