:root{
  --bg:#f8fafc;
  --card:#ffffff;
  --line:#dbe3ee;
  --text:#0f172a;
  --muted:#64748b;
  --accent:#2563eb;
  --accent2:#60a5fa;
  --gold:#f6c85f;
  --shadow:0 24px 80px rgba(15,23,42,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  background:linear-gradient(180deg,#ffffff 0%,#f4f7fb 40%,#e9eef4 100%);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
}
a{color:inherit}
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:28px;
  min-height:112px;
  padding:14px 6vw;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.brand,.footer-brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  font-weight:700;
}
.logo-brand{line-height:0}
.site-logo{
  height:110px;
  width:auto;
  display:block;
  filter:drop-shadow(0 12px 26px rgba(0,0,0,.16));
}
.nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:26px;
  margin-left:auto;
}
.nav a{
  text-decoration:none;
  color:#334155;
  font-weight:850;
  font-size:14px;
  white-space:nowrap;
}
.nav a:hover{color:var(--accent)}
.nav-cta,.phone-cta{
  padding:15px 24px;
  border:1px solid rgba(37,99,235,.25);
  border-radius:999px;
  background:linear-gradient(135deg,#2563eb,#60a5fa);
  color:#fff!important;
  font-size:1.08rem!important;
  font-weight:950!important;
  box-shadow:0 12px 30px rgba(37,99,235,.32);
}
.menu-toggle{
  display:none;
  background:#2563eb;
  border:0;
  color:#fff;
  font-size:26px;
  border-radius:12px;
  padding:6px 12px;
}
main{position:relative;isolation:isolate}
main::before{
  content:"";
  position:fixed;
  inset:115px auto auto 50%;
  width:min(1300px,92vw);
  height:min(900px,75vw);
  transform:translateX(-50%);
  background:url("images/gotham-solutions-group-logo.png") center top / contain no-repeat;
  opacity:.12;
  filter:grayscale(1) contrast(1.1);
  pointer-events:none;
  z-index:-1;
}
.premium-hero,.page-hero,.section,.site-footer{position:relative;z-index:1}
.hero,.page-hero{padding:100px 6vw 74px}
.premium-hero,.page-hero{
  background:linear-gradient(180deg,rgba(255,255,255,.72) 0%,rgba(245,248,252,.58) 100%);
  color:var(--text);
}
.premium-hero{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) 420px;
  gap:44px;
  align-items:center;
  min-height:680px;
}
.page-hero{border-bottom:1px solid var(--line)}
.eyebrow{
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--accent);
  font-weight:900;
  font-size:12px;
}
.hero h1,.page-hero h1{
  font-size:clamp(42px,7vw,82px);
  line-height:.96;
  margin:12px 0 24px;
  letter-spacing:-.06em;
  max-width:980px;
}
.hero-text,.page-hero p:not(.eyebrow),.section-lead{
  font-size:clamp(18px,2vw,22px);
  color:var(--muted);
  max-width:760px;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 20px;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
  border:1px solid var(--line);
  cursor:pointer;
}
.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
.secondary{background:rgba(255,255,255,.65);color:var(--accent)}
.hero-panel{display:grid;gap:18px}
.glass{
  padding:24px;
  border:1px solid rgba(255,255,255,.45);
  background:rgba(255,255,255,.58);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-radius:30px;
  box-shadow:var(--shadow);
}
.hero-panel div,.proof-cards article,.feature-card,.contact-card,.lead-form,.values article,.case-grid article,blockquote,.rating-bar{
  background:rgba(255,255,255,.58)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.45)!important;
  border-radius:24px;
  padding:24px;
  box-shadow:0 12px 35px rgba(15,23,42,.08);
}
.stat,.case-grid span{
  display:block;
  font-size:42px;
  line-height:1;
  font-weight:900;
  color:var(--accent);
}
.logo-strip{display:none!important}
.section{padding:86px 6vw}
.split,.proof,.contact-layout,.service-detail{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:54px;
  align-items:start;
}
.section h2{
  font-size:clamp(32px,4vw,56px);
  line-height:1.02;
  letter-spacing:-.04em;
  margin:0 0 18px;
  color:var(--text);
}
.feature-grid,.review-grid,.values,.case-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:34px;
}
.feature-card{text-decoration:none;transition:.2s transform,.2s border,.2s box-shadow}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.feature-card span{color:var(--accent);font-weight:900}
.feature-card h3,.values h3{font-size:22px;margin:18px 0 10px}
.feature-card p,.values p,.case-grid p,.hero-panel p,.proof-cards span,.service-detail li,.review-grid p,.contact-card p,.site-footer p{
  color:var(--muted);
}
.dark-band,.final-cta{
  background:rgba(255,255,255,.38)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border-block:1px solid rgba(255,255,255,.45);
}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}

.gotham-taglines{
  padding-top:0;
  padding-bottom:56px;
}

.gotham-taglines ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.gotham-taglines li{
  padding:22px 20px;
  border-radius:16px;
  background:rgba(37,99,235,.06);
  border:1px solid rgba(37,99,235,.16);
  color:#0f172a;
  font-weight:800;
  font-size:17px;
  text-align:center;
  line-height:1.35;
}

@media(max-width:860px){
  .gotham-taglines ul{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:620px){
  .gotham-taglines ul{
    grid-template-columns:1fr;
  }
}
.steps div{border-top:1px solid rgba(15,23,42,.14);padding-top:22px}
.steps span{color:#d97706;font-weight:900}
.proof-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.text-link{font-weight:900;color:var(--accent);text-decoration:none}
.stars{color:var(--gold);letter-spacing:.08em}
.review-grid{grid-template-columns:repeat(3,1fr)}
blockquote{margin:0;color:#122033}
blockquote p{color:#243449!important}
cite{display:block;margin-top:18px;font-style:normal;font-weight:900;color:#1d4ed8}
.final-cta{text-align:center;border-top:1px solid rgba(255,255,255,.45)}
.final-cta h2,.final-cta p{margin-inline:auto;max-width:900px}
.service-detail{border-top:1px solid rgba(15,23,42,.12)}
.service-detail ul{margin:0;display:grid;gap:12px}
.wide-copy{max-width:920px;color:var(--muted);font-size:20px}
.case-grid{grid-template-columns:repeat(2,1fr)}
.contact-layout{align-items:stretch}
.lead-form{display:grid;gap:16px}
.lead-form label{display:grid;gap:7px;color:var(--muted);font-weight:800}
.lead-form input,.lead-form textarea,.lead-form select{
  width:100%;
  border:1px solid var(--line);
  background:rgba(255,255,255,.75);
  border-radius:14px;
  color:var(--text);
  padding:14px;
  font:inherit;
}
.lead-form select{appearance:auto;}
.site-footer{
  display:grid;
  grid-template-columns:1.4fr .7fr .7fr;
  gap:28px;
  padding:50px 6vw 28px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-top:1px solid var(--line);
}
.site-footer a{color:var(--accent);text-decoration:none}
.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:14px}

/* Expense Reduction Strategy hero image - matched to service detail hero layout */
.expense-hero{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(340px,.86fr);
  align-items:center;
  gap:44px;
  padding-top:78px;
  padding-bottom:66px;
}
.expense-hero-copy{
  display:grid;
  gap:16px;
}
.expense-hero h1{
  max-width:640px;
  font-size:clamp(34px,4.4vw,56px);
  line-height:1.05;
  letter-spacing:-.045em;
  margin:0;
}
.expense-hero p:not(.eyebrow){
  max-width:600px;
  font-size:clamp(17px,1.35vw,20px);
  line-height:1.58;
  margin:0;
}
.expense-hero .eyebrow{
  margin:0;
}
.expense-hero-media{
  margin:0;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(15,23,42,.22);
  border:1px solid rgba(255,255,255,.62);
  background:rgba(255,255,255,.38);
  justify-self:stretch;
  max-width:680px;
}
.expense-hero-media img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:920px){
  .expense-hero{grid-template-columns:1fr;gap:30px;padding-top:70px}
  .expense-hero h1{font-size:clamp(34px,9vw,56px)}
  .expense-hero-media{max-width:680px;width:100%}
}

@media(max-width:1100px){
  .site-header{grid-template-columns:auto 1fr;gap:18px}
  .nav{gap:14px}
  .nav a{font-size:13px}
  .phone-cta{padding:12px 18px;font-size:1rem!important}
}
@media(max-width:920px){
  .premium-hero,.split,.proof,.contact-layout,.service-detail{grid-template-columns:1fr}
  .feature-grid,.steps,.review-grid,.values,.case-grid,.proof-cards{grid-template-columns:1fr 1fr}
  .nav{
    display:none;
    position:absolute;
    top:112px;
    left:0;
    right:0;
    padding:20px 6vw;
    background:#fff;
    border-bottom:1px solid var(--line);
    flex-direction:column;
    align-items:flex-start;
  }
  .nav.open{display:flex}
  .menu-toggle{display:block;justify-self:end}
  .site-footer{grid-template-columns:1fr}
  .site-logo{height:80px}
  main::before{width:95vw;height:55vw;opacity:.08}
}
@media(max-width:560px){
  .hero,.page-hero,.section{padding-left:24px;padding-right:24px}
  .feature-grid,.steps,.review-grid,.values,.case-grid,.proof-cards{grid-template-columns:1fr}
  .hero h1,.page-hero h1{font-size:42px}
  .site-header{padding:12px 24px;min-height:86px}
  .site-logo{height:64px}
  .nav{top:86px}
  main::before{inset:95px auto auto 50%;width:115vw;height:70vw;opacity:.07}
}

/* Gotham Solutions Assistant */
.gotham-ai-widget{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9999;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
}
.gotham-ai-toggle{
  width:68px;
  height:68px;
  border:0;
  border-radius:999px;
  cursor:pointer;
  background:linear-gradient(135deg,#2563eb,#60a5fa);
  color:#fff;
  font-weight:950;
  font-size:20px;
  box-shadow:0 18px 40px rgba(37,99,235,.34);
}
.gotham-ai-toggle span{
  display:grid;
  place-items:center;
}
.gotham-ai-panel{
  display:none;
  position:absolute;
  right:0;
  bottom:84px;
  width:min(390px,calc(100vw - 32px));
  overflow:hidden;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 30px 80px rgba(15,23,42,.22);
  color:#0f172a;
}
.gotham-ai-panel.open{
  display:block;
}
.gotham-ai-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 20px;
  background:linear-gradient(135deg,#0f172a,#1e3a8a);
  color:#fff;
}
.gotham-ai-close{
  border:0;
  background:rgba(255,255,255,.14);
  color:#fff;
  width:30px;
  height:30px;
  border-radius:999px;
  cursor:pointer;
  font-size:20px;
}
.gotham-ai-messages{
  display:grid;
  gap:12px;
  max-height:330px;
  overflow:auto;
  padding:18px;
}
.gotham-ai-message{
  padding:12px 14px;
  border-radius:16px;
  font-size:14px;
  line-height:1.5;
}
.gotham-ai-message.bot{
  background:#eef4ff;
  color:#0f172a;
}
.gotham-ai-message.user{
  background:#2563eb;
  color:#fff;
  justify-self:end;
}
.gotham-ai-quick{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:0 18px 14px;
}
.gotham-ai-quick button{
  border:1px solid #dbe3ee;
  background:#fff;
  color:#1f2937;
  border-radius:999px;
  padding:10px 12px;
  font-weight:800;
  cursor:pointer;
}
.gotham-ai-quick button:hover{
  border-color:#2563eb;
  color:#2563eb;
}
.gotham-ai-form{
  display:flex;
  gap:8px;
  padding:14px;
  border-top:1px solid #dbe3ee;
  background:rgba(248,250,252,.9);
}
.gotham-ai-form input{
  flex:1;
  min-width:0;
  border:1px solid #dbe3ee;
  border-radius:999px;
  padding:12px 14px;
  font:inherit;
}
.lead-form select{appearance:auto;}
.gotham-ai-form button{
  border:0;
  background:#2563eb;
  color:#fff;
  border-radius:999px;
  padding:12px 16px;
  font-weight:900;
  cursor:pointer;
}
@media(max-width:560px){
  .gotham-ai-widget{
    right:16px;
    bottom:16px;
  }
  .gotham-ai-toggle{
    width:60px;
    height:60px;
  }
}


/* Polished About Us team section */
.team-section .section-lead{
  margin-bottom:34px;
}
.team-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  margin-top:34px;
}
.team-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:26px;
  border-radius:24px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(255,255,255,.52);
  box-shadow:0 12px 35px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.team-avatar{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:18px;
  margin-bottom:18px;
  color:#ffffff;
  font-weight:950;
  letter-spacing:.04em;
  background:linear-gradient(135deg,#0f172a,#2563eb);
  box-shadow:0 12px 28px rgba(37,99,235,.24);
}
.team-card h3{
  margin:0 0 4px;
  font-size:22px;
  letter-spacing:-.03em;
  color:#0f172a;
}
.team-role{
  margin:0 0 14px;
  color:#2563eb!important;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.team-card p:not(.team-role){
  color:#64748b;
  flex:1;
}
.linkedin-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  margin-top:18px;
  padding:10px 14px;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
  color:#ffffff!important;
  background:#0a66c2;
  box-shadow:0 10px 24px rgba(10,102,194,.22);
}
.linkedin-link:hover{
  transform:translateY(-2px);
}
@media(max-width:1180px){
  .team-grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:760px){
  .team-grid{grid-template-columns:1fr;}
}

.team-photo{
 width:120px;
 height:120px;
 object-fit:cover;
 border-radius:50%;
 display:block;
 margin:0 auto 18px;
 border:4px solid rgba(37,99,235,.15);
 box-shadow:0 10px 25px rgba(15,23,42,.12);
}
.team-card{text-align:center;}


/* Remove background cards behind hero stats */
.hero-panel{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}
.hero-panel div{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  padding:8px 0 !important;
}


/* Restore stat bubbles but remove large white panel behind them */
.hero-panel{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}

.hero-panel div{
  background:rgba(255,255,255,.55) !important;
  border:1px solid rgba(255,255,255,.45) !important;
  border-radius:24px !important;
  padding:24px !important;
  box-shadow:0 12px 35px rgba(15,23,42,.08) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}


/* Matched style update: larger logo without changing header strip */
.site-header{
  overflow:visible !important;
}
.site-logo{
  height:118px !important;
  width:auto !important;
  max-height:none !important;
  transform:scale(1.08);
  transform-origin:left center;
}

/* Roberto photo refinement */
.team-photo-roberto{
  object-position:center 20%;
  transform:scale(1.12);
}

/* Keep circular crop clean while allowing Roberto's image to zoom inside */
.team-card .team-photo{
  overflow:hidden;
}


/* Core Services update: remove number spacing, enlarge cards, and center the three tiles */
main > section.section:nth-of-type(2) .feature-grid{
  grid-template-columns:repeat(3,minmax(300px,420px)) !important;
  justify-content:center !important;
  align-items:stretch !important;
}

main > section.section:nth-of-type(2) .feature-card{
  min-height:280px !important;
  padding:42px 34px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

main > section.section:nth-of-type(2) .feature-card h3{
  margin-top:0 !important;
  font-size:clamp(26px,2.5vw,32px) !important;
  line-height:1.08 !important;
}

main > section.section:nth-of-type(2) .feature-card p{
  max-width:340px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:1050px){
  main > section.section:nth-of-type(2) .feature-grid{
    grid-template-columns:1fr !important;
  }
}


/* Final heading/core-services matched style and Roberto photo zoom */
.team-photo-roberto{
  object-position:center 18% !important;
  transform:scale(1.20) !important;
}

main > section.section:nth-of-type(2) .feature-grid{
  grid-template-columns:repeat(3,minmax(300px,420px)) !important;
  justify-content:center !important;
  align-items:stretch !important;
}

main > section.section:nth-of-type(2) .feature-card{
  min-height:280px !important;
  padding:42px 34px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

main > section.section:nth-of-type(2) .feature-card h3{
  margin-top:0 !important;
  font-size:clamp(26px,2.5vw,32px) !important;
  line-height:1.08 !important;
}

main > section.section:nth-of-type(2) .feature-card p{
  max-width:340px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:1050px){
  main > section.section:nth-of-type(2) .feature-grid{
    grid-template-columns:1fr !important;
  }
}


/* Final Roberto crop: zoom enough to remove black at top of frame */
.team-photo-roberto{
  object-position:center 38% !important;
  transform:scale(1.32) !important;
}


/* Footer consultation button styling */
.site-footer .button.primary{
  background: linear-gradient(135deg,#2563eb,#60a5fa) !important;
  color:#ffffff !important;
  border:1px solid rgba(37,99,235,.25) !important;
  box-shadow:0 12px 30px rgba(37,99,235,.32) !important;
}

.social-links{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}
.social-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#60a5fa);
  box-shadow:0 10px 24px rgba(37,99,235,.22);
}
.social-btn:hover{
  transform:translateY(-2px);
}


/* Service Providers panel */
.service-providers-panel{
  background:rgba(255,255,255,.38);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border-top:1px solid rgba(255,255,255,.45);
  border-bottom:1px solid rgba(255,255,255,.45);
}

.service-providers-panel .section-lead{
  margin-bottom:34px;
}

.provider-logo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:18px;
  margin-top:34px;
  align-items:stretch;
}

.provider-logo-grid figure{
  margin:0;
  min-height:150px;
  padding:24px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(255,255,255,.52);
  box-shadow:0 12px 35px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease;
}

.provider-logo-grid figure:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow);
}

.provider-logo-grid img{
  width:100%;
  max-width:165px;
  max-height:74px;
  object-fit:contain;
  display:block;
}

.provider-logo-grid figcaption{
  margin-top:14px;
  color:#64748b;
  font-size:13px;
  font-weight:900;
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .provider-logo-grid figure{
    min-height:130px;
    padding:18px 12px;
  }
}

.provider-logo-grid figcaption{display:none !important;}


/* Rotating cube service providers panel */
.service-providers-cube-section{
  background:rgba(255,255,255,.38);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border-top:1px solid rgba(255,255,255,.45);
  border-bottom:1px solid rgba(255,255,255,.45);
  overflow:hidden;
}

.provider-cube-wrap{
  width:min(420px,82vw);
  height:min(420px,82vw);
  margin:54px auto 40px;
  perspective:1100px;
}

.provider-cube{
  position:relative;
  width:100%;
  height:100%;
  transform-style:preserve-3d;
  animation:gothamProviderCube 24s infinite linear;
}

.provider-cube-wrap:hover .provider-cube{
  animation-play-state:paused;
}

.cube-face{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:1fr;
  align-content:center;
  justify-items:center;
  gap:24px;
  padding:42px;
  border-radius:34px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 20px 60px rgba(15,23,42,.14);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  backface-visibility:hidden;
}

.cube-face img{
  width:100%;
  max-width:250px;
  max-height:90px;
  object-fit:contain;
  display:block;
}

.cube-face-front{transform:translateZ(210px);}
.cube-face-back{transform:rotateY(180deg) translateZ(210px);}
.cube-face-right{transform:rotateY(90deg) translateZ(210px);}
.cube-face-left{transform:rotateY(-90deg) translateZ(210px);}
.cube-face-top{transform:rotateX(90deg) translateZ(210px);}
.cube-face-bottom{transform:rotateX(-90deg) translateZ(210px);}

@keyframes gothamProviderCube{
  0%{transform:rotateX(-14deg) rotateY(0deg);}
  16%{transform:rotateX(-14deg) rotateY(90deg);}
  32%{transform:rotateX(-14deg) rotateY(35deg);}
  48%{transform:rotateX(-14deg) rotateY(270deg);}
  64%{transform:rotateX(76deg) rotateY(270deg);}
  80%{transform:rotateX(-104deg) rotateY(270deg);}
  100%{transform:rotateX(-14deg) rotateY(360deg);}
}

.provider-fallback-grid{
  display:none;
}

@media(max-width:760px), (prefers-reduced-motion:reduce){
  .provider-cube-wrap{
    display:none;
  }
  .provider-fallback-grid{
    display:grid !important;
  }
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Premium smoothed Gotham Partners rotating cube */
.service-providers-cube-section{
  overflow:hidden;
}

.provider-cube-wrap{
  position:relative;
  filter:drop-shadow(0 34px 45px rgba(15,23,42,.18));
}

.provider-cube-wrap::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-34px;
  width:70%;
  height:38px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(15,23,42,.22), rgba(15,23,42,0) 68%);
  animation:gothamCubeShadow 10s ease-in-out infinite;
  pointer-events:none;
}

.provider-cube{
  animation:gothamProviderCubeSmooth 30s infinite cubic-bezier(.45,0,.25,1);
  will-change:transform;
}

.cube-face{
  border-radius:46px !important;
  overflow:hidden;
  background:
    linear-gradient(145deg, rgba(255,255,255,.88), rgba(239,246,255,.58)) !important;
  border:1px solid rgba(255,255,255,.78) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    inset 0 -18px 40px rgba(37,99,235,.06),
    0 24px 70px rgba(15,23,42,.16) !important;
}

.cube-face::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 24% 18%, rgba(255,255,255,.9), rgba(255,255,255,0) 34%),
    linear-gradient(135deg, rgba(96,165,250,.16), rgba(255,255,255,0) 48%);
  pointer-events:none;
}

.cube-face::after{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:36px;
  border:1px solid rgba(255,255,255,.45);
  pointer-events:none;
}

.cube-face img{
  position:relative;
  z-index:1;
  transform:translateZ(1px);
  filter:drop-shadow(0 8px 14px rgba(15,23,42,.10));
}

@keyframes gothamProviderCubeSmooth{
  0%, 10%{transform:rotateX(-12deg) rotateY(0deg) rotateZ(0deg);}
  16%, 26%{transform:rotateX(-12deg) rotateY(90deg) rotateZ(.6deg);}
  32%, 42%{transform:rotateX(-12deg) rotateY(35deg) rotateZ(0deg);}
  48%, 58%{transform:rotateX(-12deg) rotateY(270deg) rotateZ(-.6deg);}
  64%, 74%{transform:rotateX(78deg) rotateY(270deg) rotateZ(0deg);}
  80%, 90%{transform:rotateX(-102deg) rotateY(270deg) rotateZ(.4deg);}
  100%{transform:rotateX(-12deg) rotateY(360deg) rotateZ(0deg);}
}

@keyframes gothamCubeShadow{
  0%,100%{opacity:.58; transform:translateX(-50%) scaleX(1);}
  50%{opacity:.34; transform:translateX(-50%) scaleX(.72);}
}

@media(max-width:760px), (prefers-reduced-motion:reduce){
  .provider-cube-wrap::after{
    display:none;
  }
}


/* Clean cube edge refinement: removes film/halo around cube faces */
.cube-face{
  border-radius:40px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(255,255,255,.35) !important;
  box-shadow:0 20px 50px rgba(15,23,42,.12) !important;
}

.cube-face::before,
.cube-face::after{
  display:none !important;
  content:none !important;
}

.provider-cube-wrap{
  filter:drop-shadow(0 28px 36px rgba(15,23,42,.14)) !important;
}

.provider-cube-wrap::after{
  opacity:.28 !important;
}

.cube-face img{
  max-width:275px !important;
  max-height:100px !important;
}


/* True Rubik-style Gotham Partners cube */
.gotham-partners-rubik-section{
  background:rgba(255,255,255,.38);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border-top:1px solid rgba(255,255,255,.45);
  border-bottom:1px solid rgba(255,255,255,.45);
  overflow:hidden;
}

.rubik-stage{
  width:min(560px,88vw);
  height:min(560px,88vw);
  margin:56px auto 28px;
  perspective:1300px;
  position:relative;
  filter:drop-shadow(0 28px 36px rgba(15,23,42,.14));
}

.rubik-stage::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:12px;
  width:68%;
  height:38px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(15,23,42,.18), rgba(15,23,42,0) 70%);
  pointer-events:none;
}

.rubik-cube{
  position:absolute;
  inset:9%;
  transform-style:preserve-3d;
  transform:rotateX(-16deg) rotateY(28deg);
  animation:rubikWholeFloat 36s ease-in-out infinite;
}

.rubik-cube:hover,
.rubik-stage:hover .rubik-cube,
.rubik-stage:hover .rubik-layer,
.rubik-stage:hover .rubik-column{
  animation-play-state:paused;
}

.rubik-layer,
.rubik-column{
  position:absolute;
  display:grid;
  gap:10px;
  transform-style:preserve-3d;
}

.rubik-layer{
  left:0;
  right:0;
  height:31%;
  grid-template-columns:repeat(3,1fr);
}

.layer-a{top:0; animation:rubikRowA 8s ease-in-out infinite;}
.layer-b{top:34.5%; animation:rubikRowB 9s ease-in-out infinite 1.1s;}
.layer-c{bottom:0; animation:rubikRowC 10s ease-in-out infinite 2.2s;}

.rubik-column{
  top:0;
  bottom:0;
  width:31%;
  grid-template-rows:repeat(3,1fr);
  opacity:.54;
  pointer-events:none;
}

.col-a{left:0; animation:rubikColA 11s ease-in-out infinite 3s;}
.col-b{right:0; animation:rubikColB 12s ease-in-out infinite 4.2s;}

.rubik-tile{
  position:relative;
  min-width:0;
  min-height:0;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.45);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    0 12px 28px rgba(15,23,42,.10);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  overflow:hidden;
  transform:translateZ(18px);
}

.rubik-tile::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(96,165,250,.10),rgba(255,255,255,0) 55%);
  pointer-events:none;
}

.rubik-tile img{
  position:relative;
  z-index:1;
  width:100%;
  max-width:124px;
  max-height:58px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 5px 10px rgba(15,23,42,.10));
}

.rubik-tile.ghost{
  background:rgba(255,255,255,.58);
  transform:translateZ(-48px);
}

.rubik-tile.ghost img{
  opacity:.65;
}

@keyframes rubikWholeFloat{
  0%,100%{transform:rotateX(-16deg) rotateY(26deg) translateY(0);}
  50%{transform:rotateX(-12deg) rotateY(34deg) translateY(-8px);}
}

@keyframes rubikRowA{
  0%,12%{transform:rotateY(0deg) translateZ(0);}
  24%,38%{transform:rotateY(92deg) translateZ(18px);}
  50%,100%{transform:rotateY(0deg) translateZ(0);}
}

@keyframes rubikRowB{
  0%,18%{transform:rotateX(0deg) translateZ(0);}
  32%,48%{transform:rotateX(-90deg) translateZ(18px);}
  62%,100%{transform:rotateX(0deg) translateZ(0);}
}

@keyframes rubikRowC{
  0%,22%{transform:rotateY(0deg) translateZ(0);}
  36%,52%{transform:rotateY(-90deg) translateZ(18px);}
  66%,100%{transform:rotateY(0deg) translateZ(0);}
}

@keyframes rubikColA{
  0%,20%{transform:rotateX(0deg) translateZ(-32px);}
  34%,50%{transform:rotateX(90deg) translateZ(-16px);}
  64%,100%{transform:rotateX(0deg) translateZ(-32px);}
}

@keyframes rubikColB{
  0%,24%{transform:rotateY(0deg) translateZ(-32px);}
  38%,54%{transform:rotateY(-90deg) translateZ(-16px);}
  68%,100%{transform:rotateY(0deg) translateZ(-32px);}
}

.rubik-fallback-grid{
  display:none;
}

@media(max-width:760px), (prefers-reduced-motion:reduce){
  .rubik-stage{
    display:none;
  }
  .rubik-fallback-grid{
    display:grid !important;
  }
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Full 3-face Rubik's cube for Gotham Partners */
.full-rubik-section{
  background:
    radial-gradient(circle at 50% 18%, rgba(96,165,250,.14), rgba(255,255,255,0) 38%),
    rgba(255,255,255,.38);
  border-top:1px solid rgba(255,255,255,.45);
  border-bottom:1px solid rgba(255,255,255,.45);
  overflow:hidden;
}

.full-rubik-stage{
  width:min(720px,94vw);
  height:620px;
  margin:42px auto 16px;
  perspective:1600px;
  position:relative;
  display:grid;
  place-items:center;
}

.full-rubik-stage::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:44px;
  width:54%;
  height:48px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(15,23,42,.23), rgba(15,23,42,0) 70%);
  filter:blur(2px);
  pointer-events:none;
}

.full-rubik-cube{
  --cube:360px;
  --depth:120px;
  position:relative;
  width:var(--cube);
  height:var(--cube);
  transform-style:preserve-3d;
  transform:rotateX(-18deg) rotateY(28deg) rotateZ(0deg);
  animation:fullRubikFloat 12s ease-in-out infinite;
}

.full-rubik-cube:hover,
.full-rubik-cube:hover .rubik-slice{
  animation-play-state:paused;
}

.rubik-face{
  position:absolute;
  width:var(--cube);
  height:var(--cube);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(3,1fr);
  gap:10px;
  padding:10px;
  border-radius:34px;
  background:rgba(226,238,255,.54);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 24px 60px rgba(15,23,42,.12);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transform-style:preserve-3d;
}

.rubik-front{
  transform:translateZ(var(--depth));
}

.rubik-right{
  transform-origin:right center;
  transform:rotateY(90deg) translateZ(var(--depth));
}

.rubik-top{
  transform-origin:center top;
  transform:rotateX(90deg) translateZ(var(--depth));
}

.rubik-cell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:13px;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border-radius:22px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.95), rgba(239,246,255,.84));
  border:1px solid rgba(255,255,255,.75);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -10px 18px rgba(37,99,235,.05),
    0 10px 22px rgba(15,23,42,.10);
}

.rubik-cell::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(135deg, rgba(96,165,250,.12), rgba(255,255,255,0) 54%);
  pointer-events:none;
}

.rubik-cell img{
  position:relative;
  z-index:1;
  width:100%;
  max-width:105px;
  max-height:50px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 5px 8px rgba(15,23,42,.10));
}

.rubik-right .rubik-cell,
.rubik-top .rubik-cell{
  opacity:.92;
}

.rubik-slice{
  position:absolute;
  display:grid;
  gap:10px;
  padding:10px;
  transform-style:preserve-3d;
  pointer-events:none;
}

.rubik-slice span{
  display:block;
  border-radius:22px;
  background:rgba(255,255,255,.34);
  border:1px solid rgba(96,165,250,.22);
  box-shadow:0 10px 24px rgba(37,99,235,.09);
}

.slice-row{
  left:0;
  width:var(--cube);
  height:120px;
  grid-template-columns:repeat(3,1fr);
  transform:translateZ(calc(var(--depth) + 4px));
}

.slice-row-top{
  top:0;
  animation:rubikSliceTop 7.8s ease-in-out infinite;
}

.slice-row-middle{
  top:120px;
  animation:rubikSliceMiddle 9.4s ease-in-out infinite 1.8s;
}

.slice-col{
  top:0;
  right:0;
  width:120px;
  height:var(--cube);
  grid-template-rows:repeat(3,1fr);
  transform:translateZ(calc(var(--depth) + 8px));
}

.slice-col-right{
  animation:rubikSliceRight 8.8s ease-in-out infinite 3.2s;
}

@keyframes fullRubikFloat{
  0%,100%{transform:rotateX(-18deg) rotateY(28deg) translateY(0);}
  50%{transform:rotateX(-15deg) rotateY(33deg) translateY(-8px);}
}

@keyframes rubikSliceTop{
  0%,18%{transform:translateZ(calc(var(--depth) + 6px)) rotateY(0deg);}
  32%,48%{transform:translateZ(calc(var(--depth) + 28px)) rotateY(90deg);}
  62%,100%{transform:translateZ(calc(var(--depth) + 6px)) rotateY(0deg);}
}

@keyframes rubikSliceMiddle{
  0%,20%{transform:translateZ(calc(var(--depth) + 8px)) rotateX(0deg);}
  34%,52%{transform:translateZ(calc(var(--depth) + 28px)) rotateX(-90deg);}
  68%,100%{transform:translateZ(calc(var(--depth) + 8px)) rotateX(0deg);}
}

@keyframes rubikSliceRight{
  0%,22%{transform:translateZ(calc(var(--depth) + 10px)) rotateY(0deg);}
  36%,54%{transform:translateZ(calc(var(--depth) + 30px)) rotateY(-90deg);}
  70%,100%{transform:translateZ(calc(var(--depth) + 10px)) rotateY(0deg);}
}

.rubik-fallback-grid{
  display:none;
}

@media(max-width:860px), (prefers-reduced-motion:reduce){
  .full-rubik-stage{
    display:none;
  }
  .rubik-fallback-grid{
    display:grid !important;
  }
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Six-sided rotating Gotham Partners cube, no moving panels */
.six-rubik-section{
  background:
    radial-gradient(circle at 50% 18%, rgba(96,165,250,.16), rgba(255,255,255,0) 40%),
    rgba(255,255,255,.38);
  border-top:1px solid rgba(255,255,255,.45);
  border-bottom:1px solid rgba(255,255,255,.45);
  overflow:hidden;
}

.six-rubik-stage{
  width:min(760px,94vw);
  height:650px;
  margin:42px auto 18px;
  perspective:1700px;
  position:relative;
  display:grid;
  place-items:center;
}

.six-rubik-stage::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:46px;
  width:58%;
  height:48px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(15,23,42,.24), rgba(15,23,42,0) 72%);
  filter:blur(2px);
  pointer-events:none;
}

.six-rubik-cube{
  --cube:360px;
  --half:180px;
  position:relative;
  width:var(--cube);
  height:var(--cube);
  transform-style:preserve-3d;
  transform:rotateX(-18deg) rotateY(30deg);
  animation:sixCubeRotateOnly 28s linear infinite;
}

.six-rubik-cube:hover{
  animation-play-state:paused;
}

.six-rubik-face{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(3,1fr);
  gap:10px;
  padding:10px;
  border-radius:34px;
  background:rgba(226,238,255,.54);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 24px 60px rgba(15,23,42,.12);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transform-style:preserve-3d;
  backface-visibility:hidden;
}

.six-rubik-front{transform:translateZ(var(--half));}
.six-rubik-back{transform:rotateY(180deg) translateZ(var(--half));}
.six-rubik-right{transform:rotateY(90deg) translateZ(var(--half));}
.six-rubik-left{transform:rotateY(-90deg) translateZ(var(--half));}
.six-rubik-top{transform:rotateX(90deg) translateZ(var(--half));}
.six-rubik-bottom{transform:rotateX(-90deg) translateZ(var(--half));}

.six-rubik-cell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:0;
  padding:13px;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(145deg, rgba(255,255,255,.96), rgba(239,246,255,.84));
  border:1px solid rgba(255,255,255,.75);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -10px 18px rgba(37,99,235,.05),
    0 10px 22px rgba(15,23,42,.10);
}

.six-rubik-cell::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(135deg, rgba(96,165,250,.12), rgba(255,255,255,0) 54%);
  pointer-events:none;
}

.six-rubik-cell img{
  position:relative;
  z-index:1;
  width:100%;
  max-width:105px;
  max-height:50px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 5px 8px rgba(15,23,42,.10));
}

.six-rubik-right .six-rubik-cell,
.six-rubik-top .six-rubik-cell,
.six-rubik-left .six-rubik-cell,
.six-rubik-back .six-rubik-cell,
.six-rubik-bottom .six-rubik-cell{
  opacity:.9;
}

@keyframes sixCubeRotateOnly{
  0%{transform:rotateX(-18deg) rotateY(30deg) translateY(0);}
  25%{transform:rotateX(-14deg) rotateY(120deg) translateY(-7px);}
  50%{transform:rotateX(-20deg) rotateY(210deg) translateY(0);}
  75%{transform:rotateX(-12deg) rotateY(300deg) translateY(-7px);}
  100%{transform:rotateX(-18deg) rotateY(390deg) translateY(0);}
}

.rubik-fallback-grid{
  display:none;
}

@media(max-width:860px), (prefers-reduced-motion:reduce){
  .six-rubik-stage{
    display:none;
  }
  .rubik-fallback-grid{
    display:grid !important;
  }
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Polished Gotham Partners: remove blue section header/glow and keep cube-only animation */
.gotham-partners-rubik-section,
.full-rubik-section,
.six-rubik-section{
  background:transparent !important;
  border-top:none !important;
  border-bottom:none !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

.six-rubik-section{
  padding-top:74px !important;
}

.six-rubik-section .section-lead{
  max-width:820px;
  margin-bottom:24px;
}

/* Six-sided rotating Gotham Partners cube, no moving panels */
.six-rubik-stage{
  width:min(760px,94vw);
  height:650px;
  margin:36px auto 10px;
  perspective:1700px;
  position:relative;
  display:grid;
  place-items:center;
}

.six-rubik-stage::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:46px;
  width:54%;
  height:46px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(15,23,42,.18), rgba(15,23,42,0) 72%);
  filter:blur(2px);
  pointer-events:none;
}

.six-rubik-cube{
  --cube:360px;
  --half:180px;
  position:relative;
  width:var(--cube);
  height:var(--cube);
  transform-style:preserve-3d;
  transform:rotateX(-18deg) rotateY(30deg);
  animation:sixCubeRotateOnly 28s linear infinite !important;
}

.six-rubik-cube:hover{
  animation-play-state:paused !important;
}

.six-rubik-face{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(3,1fr);
  gap:10px;
  padding:10px;
  border-radius:34px;
  background:rgba(226,238,255,.48);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 24px 60px rgba(15,23,42,.11);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transform-style:preserve-3d;
  backface-visibility:hidden;
}

.six-rubik-front{transform:translateZ(var(--half));}
.six-rubik-back{transform:rotateY(180deg) translateZ(var(--half));}
.six-rubik-right{transform:rotateY(90deg) translateZ(var(--half));}
.six-rubik-left{transform:rotateY(-90deg) translateZ(var(--half));}
.six-rubik-top{transform:rotateX(90deg) translateZ(var(--half));}
.six-rubik-bottom{transform:rotateX(-90deg) translateZ(var(--half));}

.six-rubik-cell{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:0;
  padding:13px;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(145deg, rgba(255,255,255,.96), rgba(239,246,255,.86));
  border:1px solid rgba(255,255,255,.78);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -10px 18px rgba(37,99,235,.05),
    0 10px 22px rgba(15,23,42,.10);
}

.six-rubik-cell::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(135deg, rgba(96,165,250,.10), rgba(255,255,255,0) 54%);
  pointer-events:none;
}

.six-rubik-cell img{
  position:relative;
  z-index:1;
  width:100%;
  max-width:108px;
  max-height:52px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 5px 8px rgba(15,23,42,.10));
}

.six-rubik-right .six-rubik-cell,
.six-rubik-top .six-rubik-cell,
.six-rubik-left .six-rubik-cell,
.six-rubik-back .six-rubik-cell,
.six-rubik-bottom .six-rubik-cell{
  opacity:.9;
}

@keyframes sixCubeRotateOnly{
  0%{transform:rotateX(-18deg) rotateY(30deg) translateY(0);}
  25%{transform:rotateX(-14deg) rotateY(120deg) translateY(-7px);}
  50%{transform:rotateX(-20deg) rotateY(210deg) translateY(0);}
  75%{transform:rotateX(-12deg) rotateY(300deg) translateY(-7px);}
  100%{transform:rotateX(-18deg) rotateY(390deg) translateY(0);}
}

.six-rubik-slice,
.rubik-slice{
  display:none !important;
}

.rubik-fallback-grid{
  display:none;
}

@media(max-width:860px), (prefers-reduced-motion:reduce){
  .six-rubik-stage{
    display:none;
  }
  .rubik-fallback-grid{
    display:grid !important;
  }
}

@media(max-width:560px){
  .provider-logo-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* Gotham Partners heading cleanup: remove only the small blue eyebrow label */
.gotham-partners-rubik-section > .eyebrow{
  display:none !important;
}

.gotham-partners-rubik-section > h2{
  color:#0f172a !important;
  margin-top:0 !important;
}

.gotham-partners-rubik-section > .section-lead{
  color:#64748b !important;
}


/* ===============================
   V2 Executive Redesign Layer
   =============================== */
body{
  background:
    radial-gradient(circle at 18% 10%, rgba(96,165,250,.16), transparent 32%),
    radial-gradient(circle at 90% 28%, rgba(37,99,235,.08), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f5f8fc 42%,#e8eef6 100%) !important;
}

.v2-hero{
  min-height:760px;
  padding-top:118px;
  padding-bottom:100px;
  grid-template-columns:minmax(0,1.14fr) minmax(340px,440px);
}

.v2-hero h1{
  max-width:940px;
  font-size:clamp(54px,8vw,104px);
  letter-spacing:-.075em;
}

.v2-hero .hero-text{
  max-width:830px;
  font-size:clamp(20px,2.2vw,26px);
}

.v2-insight-panel{
  display:grid;
  gap:18px;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.v2-insight-panel div{
  border-radius:30px !important;
  padding:28px !important;
  background:rgba(255,255,255,.66) !important;
  border:1px solid rgba(255,255,255,.58) !important;
  box-shadow:0 20px 60px rgba(15,23,42,.10) !important;
}

.section-kicker{
  max-width:1050px;
}

.v2-outcomes{
  padding-top:98px;
}

.outcome-grid,.industry-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:34px;
}

.outcome-grid article,
.industry-grid article{
  background:rgba(255,255,255,.64);
  border:1px solid rgba(255,255,255,.55);
  border-radius:28px;
  padding:28px;
  box-shadow:0 16px 44px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .22s ease, box-shadow .22s ease;
}

.outcome-grid article:hover,
.industry-grid article:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 80px rgba(15,23,42,.12);
}

.outcome-grid span{
  display:inline-grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:#fff;
  font-weight:950;
  margin-bottom:18px;
}

.outcome-grid h3,
.industry-grid h3{
  margin:0 0 10px;
  font-size:22px;
  letter-spacing:-.03em;
}

.outcome-grid p,
.industry-grid p{
  margin:0;
  color:var(--muted);
}

.v2-stat-band{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  background:linear-gradient(135deg,#0f172a,#1e3a8a) !important;
  color:#fff;
  border-radius:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  text-align:center;
  align-items:center;
}

.v2-stat-band div{
  padding:18px 10px;
  border-left:1px solid rgba(255,255,255,.16);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.v2-stat-band div:first-child{
  border-left:0;
}

.v2-stat-band strong{
  display:block;
  font-size:clamp(30px,3.4vw,48px);
  line-height:1;
  letter-spacing:-.05em;
}

.v2-stat-band span{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.78);
  font-weight:750;
}

.v2-services .feature-grid{
  grid-template-columns:repeat(3,minmax(260px,1fr)) !important;
}

.v2-services .feature-card{
  align-items:flex-start !important;
  text-align:left !important;
}

.mini-proof{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.mini-proof span{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(37,99,235,.09);
  color:#1d4ed8;
  font-weight:900;
  border:1px solid rgba(37,99,235,.16);
}

.why-quote-belt{
  padding-top:72px;
  padding-bottom:72px;
  text-align:center;
  background:linear-gradient(135deg,#07111f 0%,#0f172a 58%,#10253f 100%);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.footer-quote-belt{
  margin-top:0;
}

.why-quote-rotator{
  position:relative;
  min-height:140px;
  max-width:1180px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  color:#f8fafc;
  font-size:clamp(24px,2.5vw,40px);
  font-weight:850;
  letter-spacing:-.04em;
  line-height:1.22;
  padding:0 40px;
}

.why-quote-rotator span{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform:translateY(14px);
  animation:whyQuoteFade 25s infinite;
  padding:0 36px;
  text-align:center;
  white-space:normal;
}

.why-quote-rotator span:nth-child(2){animation-delay:5s;}
.why-quote-rotator span:nth-child(3){animation-delay:10s;}
.why-quote-rotator span:nth-child(4){animation-delay:15s;}
.why-quote-rotator span:nth-child(5){animation-delay:20s;}

@keyframes whyQuoteFade{
  0%{opacity:0; transform:translateY(14px);}
  6%{opacity:1; transform:translateY(0);}
  18%{opacity:1; transform:translateY(0);}
  24%{opacity:0; transform:translateY(-12px);}
  100%{opacity:0; transform:translateY(-12px);}
}

@media (max-width:720px){
  .why-quote-belt{padding-top:34px; padding-bottom:34px;}
  .why-quote-rotator{min-height:150px; font-size:clamp(19px,6vw,26px); padding:0 14px;}
  .why-quote-rotator span{padding:0 18px;}
}

@media (prefers-reduced-motion:reduce){
  .why-quote-rotator span{animation:none; opacity:0; transform:none;}
  .why-quote-rotator span:first-child{opacity:1;}
}

.industry-grid{
  grid-template-columns:repeat(3,1fr);
}

.v2-method{
  display:block;
}

.v2-proof .proof-cards article strong{
  display:block;
  color:var(--accent);
  font-size:clamp(32px,4vw,52px);
  letter-spacing:-.05em;
  line-height:1;
  margin-bottom:10px;
}

.team-section{
  padding-top:98px;
}

.team-card{
  transition:transform .22s ease, box-shadow .22s ease;
}

.team-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 80px rgba(15,23,42,.12);
}

.gotham-partners-rubik-section{
  padding-top:88px !important;
}

.gotham-partners-rubik-section > h2{
  font-size:clamp(42px,6vw,76px) !important;
  letter-spacing:-.065em !important;
}

.six-rubik-stage{
  transform:scale(.94);
  transform-origin:center top;
}

.v2-testimonials blockquote{
  min-height:220px;
}

.v2-final{
  background:
    radial-gradient(circle at 50% 0%, rgba(96,165,250,.18), transparent 38%),
    rgba(255,255,255,.48) !important;
}

.button,
.feature-card,
.team-card,
.outcome-grid article,
.industry-grid article,
.social-btn{
  will-change:transform;
}


/* Expense Reduction Strategy hero image - matched to service detail hero layout */
.expense-hero{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(340px,.86fr);
  align-items:center;
  gap:44px;
  padding-top:78px;
  padding-bottom:66px;
}
.expense-hero-copy{
  display:grid;
  gap:16px;
}
.expense-hero h1{
  max-width:640px;
  font-size:clamp(34px,4.4vw,56px);
  line-height:1.05;
  letter-spacing:-.045em;
  margin:0;
}
.expense-hero p:not(.eyebrow){
  max-width:600px;
  font-size:clamp(17px,1.35vw,20px);
  line-height:1.58;
  margin:0;
}
.expense-hero .eyebrow{
  margin:0;
}
.expense-hero-media{
  margin:0;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(15,23,42,.22);
  border:1px solid rgba(255,255,255,.62);
  background:rgba(255,255,255,.38);
  justify-self:stretch;
  max-width:680px;
}
.expense-hero-media img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:920px){
  .expense-hero{grid-template-columns:1fr;gap:30px;padding-top:70px}
  .expense-hero h1{font-size:clamp(34px,9vw,56px)}
  .expense-hero-media{max-width:680px;width:100%}
}

@media(max-width:1100px){
  .v2-hero{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .outcome-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .industry-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:860px){
  .v2-services .feature-grid{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:620px){
  .v2-hero h1{
    font-size:46px;
  }
  .outcome-grid,
  .industry-grid,
  .v2-stat-band{
    grid-template-columns:1fr;
  }
  .v2-stat-band div{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.16);
  }
  .v2-stat-band div:first-child{
    border-top:0;
  }
}


/* Uniform team headshots */
.team-card img,
.team-photo,
.team-avatar{
    width: 220px !important;
    height: 220px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block;
    margin: 0 auto 18px;
}


/* Final team headshot refinement: smaller, uniform matching circles */
.team-card .team-photo,
.team-photo,
.team-card img.team-photo{
  width: 132px !important;
  height: 132px !important;
  min-width: 132px !important;
  min-height: 132px !important;
  max-width: 132px !important;
  max-height: 132px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
  margin: 0 auto 18px !important;
  border: 4px solid rgba(15, 43, 91, .95) !important;
  box-shadow: 0 12px 26px rgba(15, 23, 42, .14) !important;
  transform: none !important;
}

/* Keep Roberto cropped cleanly inside the same-sized circle */
.team-card .team-photo-roberto,
.team-photo-roberto{
  object-position: center 28% !important;
  transform: none !important;
}

/* Align team cards after smaller photos */
.team-card{
  align-items: center !important;
}

.team-card h3{
  margin-top: 0 !important;
}


/* LinkedIn logo-only buttons for team cards */
.linkedin-link{
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #0a66c2 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(10,102,194,.22) !important;
}

.linkedin-icon{
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 23px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
  color: #ffffff !important;
}

.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* Contact page social icon buttons */
.social-links a,
.contact-social a{
  width:40px !important;
  height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:8px !important;
  text-decoration:none !important;
  font-weight:800 !important;
  font-size:18px !important;
  color:#fff !important;
  margin:0 6px !important;
}

.social-links a.linkedin,
.contact-social a.linkedin{background:#0A66C2 !important;}
.social-links a.facebook,
.contact-social a.facebook{background:#1877F2 !important;}
.social-links a.x,
.contact-social a.x{background:#111 !important;}


/* Official SVG social icon buttons */
.social-links{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-top:14px !important;
}

.social-links .social-btn{
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  padding:0 !important;
  border-radius:10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#ffffff !important;
  box-shadow:0 10px 24px rgba(15,23,42,.16) !important;
  transform:none;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.social-links .social-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(15,23,42,.20) !important;
}

.social-links .social-btn:nth-child(1){
  background:#0A66C2 !important;
}

.social-links .social-btn:nth-child(2){
  background:#1877F2 !important;
}

.social-links .social-btn:nth-child(3){
  background:#111111 !important;
}



.social-svg{
  width:21px !important;
  height:21px !important;
  display:block !important;
}

.social-links .social-btn:nth-child(3) .social-svg{
  width:19px !important;
  height:19px !important;
}

.social-links .social-btn:nth-child(4) .social-svg{
  width:21px !important;
  height:21px !important;
}


.footer-brand-concept{
display:flex;
align-items:center;
justify-content:center;
gap:14px;
margin-top:20px;
margin-bottom:10px;
}
.footer-concept-logo{
height:60px;
width:auto;
}
.footer-brand-concept span{
font-style:italic;
color:#666;
}


/* Enhanced footer branding */
.footer-brand-concept{
  gap:24px;
}
.footer-brand-concept span{
  font-style:italic;
  color:#666;
  font-weight:500;
}
.footer-brand-concept::after{
  content:'';
  width:1px;
  height:56px;
  background:rgba(0,0,0,.15);
  order:1;
}
.footer-brand-concept .footer-concept-logo{
  order:2;
  height:72px;
  width:auto;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.08));
}
.footer-brand-concept span{
  order:0;
}


/* Valued Clients logo section */
.valued-clients-section{
  background:rgba(255,255,255,.42);
  border-top:1px solid rgba(255,255,255,.48);
  border-bottom:1px solid rgba(255,255,255,.48);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.valued-clients-section .section-lead{
  max-width:860px;
}

.client-logo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:18px;
  margin-top:36px;
  align-items:stretch;
}

.client-logo-card{
  margin:0;
  min-height:142px;
  padding:24px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.58);
  box-shadow:0 14px 38px rgba(15,23,42,.07);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .2s ease, box-shadow .2s ease;
}

.client-logo-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 70px rgba(15,23,42,.12);
}

.client-logo-card img{
  width:100%;
  max-width:170px;
  max-height:82px;
  object-fit:contain;
  display:block;
  filter:grayscale(.04) contrast(1.02);
}

@media(max-width:560px){
  .client-logo-grid{
    grid-template-columns:repeat(2,1fr);
    gap:14px;
  }

  .client-logo-card{
    min-height:120px;
    padding:18px 12px;
  }
}


/* Valued Clients motion enhancements */
.valued-clients-section{
  overflow:hidden;
}

.client-logo-motion{
  perspective:900px;
}

.client-logo-motion .client-logo-card{
  opacity:0;
  transform:translateY(18px) scale(.98);
  animation:clientLogoReveal .7s ease forwards, clientLogoFloat 7s ease-in-out infinite;
  animation-delay:calc((var(--client-logo-index, 0) * .045s));
  will-change:transform, opacity;
}

.client-logo-motion .client-logo-card:nth-child(1){--client-logo-index:1}
.client-logo-motion .client-logo-card:nth-child(2){--client-logo-index:2}
.client-logo-motion .client-logo-card:nth-child(3){--client-logo-index:3}
.client-logo-motion .client-logo-card:nth-child(4){--client-logo-index:4}
.client-logo-motion .client-logo-card:nth-child(5){--client-logo-index:5}
.client-logo-motion .client-logo-card:nth-child(6){--client-logo-index:6}
.client-logo-motion .client-logo-card:nth-child(7){--client-logo-index:7}
.client-logo-motion .client-logo-card:nth-child(8){--client-logo-index:8}
.client-logo-motion .client-logo-card:nth-child(9){--client-logo-index:9}
.client-logo-motion .client-logo-card:nth-child(10){--client-logo-index:10}
.client-logo-motion .client-logo-card:nth-child(11){--client-logo-index:11}
.client-logo-motion .client-logo-card:nth-child(12){--client-logo-index:12}
.client-logo-motion .client-logo-card:nth-child(13){--client-logo-index:13}
.client-logo-motion .client-logo-card:nth-child(14){--client-logo-index:14}
.client-logo-motion .client-logo-card:nth-child(15){--client-logo-index:15}
.client-logo-motion .client-logo-card:nth-child(16){--client-logo-index:16}
.client-logo-motion .client-logo-card:nth-child(17){--client-logo-index:17}
.client-logo-motion .client-logo-card:nth-child(18){--client-logo-index:18}
.client-logo-motion .client-logo-card:nth-child(19){--client-logo-index:19}
.client-logo-motion .client-logo-card:nth-child(20){--client-logo-index:20}
.client-logo-motion .client-logo-card:nth-child(21){--client-logo-index:21}
.client-logo-motion .client-logo-card:nth-child(22){--client-logo-index:22}
.client-logo-motion .client-logo-card:nth-child(23){--client-logo-index:23}
.client-logo-motion .client-logo-card:nth-child(24){--client-logo-index:24}
.client-logo-motion .client-logo-card:nth-child(25){--client-logo-index:25}
.client-logo-motion .client-logo-card:nth-child(26){--client-logo-index:26}
.client-logo-motion .client-logo-card:nth-child(27){--client-logo-index:27}
.client-logo-motion .client-logo-card:nth-child(28){--client-logo-index:28}
.client-logo-motion .client-logo-card:nth-child(29){--client-logo-index:29}
.client-logo-motion .client-logo-card:nth-child(30){--client-logo-index:30}
.client-logo-motion .client-logo-card:nth-child(31){--client-logo-index:31}
.client-logo-motion .client-logo-card:nth-child(32){--client-logo-index:32}
.client-logo-motion .client-logo-card:nth-child(33){--client-logo-index:33}
.client-logo-motion .client-logo-card:nth-child(34){--client-logo-index:34}
.client-logo-motion .client-logo-card:nth-child(35){--client-logo-index:35}
.client-logo-motion .client-logo-card:nth-child(36){--client-logo-index:36}
.client-logo-motion .client-logo-card:nth-child(37){--client-logo-index:37}
.client-logo-motion .client-logo-card:nth-child(38){--client-logo-index:38}
.client-logo-motion .client-logo-card:nth-child(39){--client-logo-index:39}
.client-logo-motion .client-logo-card:nth-child(40){--client-logo-index:40}
.client-logo-motion .client-logo-card:nth-child(41){--client-logo-index:41}
.client-logo-motion .client-logo-card:nth-child(42){--client-logo-index:42}

.client-logo-card{
  position:relative;
  overflow:hidden;
}

.client-logo-card::after{
  content:"";
  position:absolute;
  inset:-40%;
  background:linear-gradient(115deg, transparent 35%, rgba(255,255,255,.48) 50%, transparent 65%);
  transform:translateX(-130%) rotate(8deg);
  transition:transform .65s ease;
  pointer-events:none;
}

.client-logo-card:hover::after{
  transform:translateX(130%) rotate(8deg);
}

.client-logo-card:hover img{
  transform:scale(1.035);
}

.client-logo-card img{
  transition:transform .22s ease, filter .22s ease;
}

@keyframes clientLogoReveal{
  from{opacity:0; transform:translateY(18px) scale(.98);}
  to{opacity:1; transform:translateY(0) scale(1);}
}

@keyframes clientLogoFloat{
  0%,100%{translate:0 0;}
  50%{translate:0 -4px;}
}

@media(prefers-reduced-motion:reduce){
  .client-logo-motion .client-logo-card{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }

  .client-logo-card::after{
    display:none !important;
  }
}


/* Rotating Valued Clients logo carousel */
.client-logo-rotator{
  --card-count: 42;
  --radius: min(470px, 42vw);
  position: relative !important;
  display: block !important;
  width: min(980px, 92vw);
  height: 560px;
  margin: 46px auto 0;
  perspective: 1500px;
  transform-style: preserve-3d;
}

.client-logo-rotator .client-logo-card{
  position: absolute !important;
  top: 50%;
  left: 50%;
  width: 155px;
  height: 118px;
  min-height: 118px !important;
  margin: -59px 0 0 -77.5px !important;
  padding: 20px 16px !important;
  opacity: 1 !important;
  animation: none !important;
  transform:
    rotateY(calc((360deg / var(--card-count)) * var(--client-logo-index)))
    translateZ(var(--radius));
  transform-style: preserve-3d;
  backface-visibility: visible;
}

.client-logo-rotator{
  animation:valuedClientsRotate 42s linear infinite;
}

.valued-clients-section:hover .client-logo-rotator{
  animation-play-state: paused;
}

.client-logo-rotator .client-logo-card img{
  max-width: 130px !important;
  max-height: 62px !important;
}

@keyframes valuedClientsRotate{
  from{ transform: rotateX(-6deg) rotateY(0deg); }
  to{ transform: rotateX(-6deg) rotateY(-360deg); }
}

@media(max-width:900px), (prefers-reduced-motion:reduce){
  .client-logo-rotator{
    display:grid !important;
    width:auto;
    height:auto;
    perspective:none;
    transform:none !important;
    animation:none !important;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  }

  .client-logo-rotator .client-logo-card{
    position:relative !important;
    top:auto;
    left:auto;
    width:auto;
    height:auto;
    min-height:142px !important;
    margin:0 !important;
    transform:none !important;
  }
}

/* Replace full 3D carousel with visible continuous logo marquee */
.client-logo-rotator{
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
  width:100% !important;
  height:auto !important;
  perspective:none !important;
  animation:none !important;
  margin-top:36px !important;
}

.client-logo-rotator .client-logo-card{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  margin:0 12px !important;
  flex:0 0 180px !important;
  width:180px !important;
  transform:none !important;
  animation:clientMarquee 28s linear infinite !important;
  opacity:1 !important;
}

.valued-clients-section:hover .client-logo-card{
  animation-play-state:paused !important;
}

@keyframes clientMarquee{
  from{transform:translateX(0);}
  to{transform:translateX(-2200px);}
}

.client-logo-card img{
  max-width:140px !important;
  max-height:70px !important;
}


/* 5x5 rotating Valued Clients logo wall */
.client-logo-batch-grid{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  gap:18px !important;
  margin-top:36px !important;
  width:100% !important;
  height:auto !important;
  overflow:visible !important;
  perspective:1200px !important;
  animation:none !important;
}

.client-logo-batch-grid .client-logo-card{
  display:none !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  width:auto !important;
  height:auto !important;
  min-height:132px !important;
  margin:0 !important;
  flex:none !important;
  opacity:0 !important;
  transform:rotateY(-12deg) translateY(12px) scale(.96) !important;
  animation:none !important;
}

.client-logo-batch-grid .client-logo-card.is-visible-client{
  display:flex !important;
  opacity:1 !important;
  transform:rotateY(0deg) translateY(0) scale(1) !important;
  animation:clientBatchFlipIn .85s cubic-bezier(.22,.61,.36,1) both, clientBatchBreathe 5.2s ease-in-out infinite !important;
  animation-delay:var(--batch-delay, 0ms), calc(var(--batch-delay, 0ms) + .55s) !important;
}

.client-logo-batch-grid .client-logo-card img{
  max-width:150px !important;
  max-height:72px !important;
}

.valued-clients-section:hover .client-logo-batch-grid .client-logo-card.is-visible-client{
  animation-play-state:paused !important;
}

@keyframes clientBatchFlipIn{
  from{
    opacity:0;
    transform:rotateY(-18deg) translateY(14px) scale(.96);
  }
  to{
    opacity:1;
    transform:rotateY(0deg) translateY(0) scale(1);
  }
}

@keyframes clientBatchBreathe{
  0%,100%{
    translate:0 0;
  }
  50%{
    translate:0 -3px;
  }
}

@media(max-width:1000px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
}

@media(max-width:760px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width:560px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .client-logo-batch-grid .client-logo-card.is-visible-client{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
  }
}


/* Smoother, uniform 5x5 client-logo transitions */
.client-logo-batch-grid{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  gap:18px !important;
  margin-top:36px !important;
  width:100% !important;
  height:auto !important;
  overflow:visible !important;
  perspective:none !important;
  animation:none !important;
}

.client-logo-batch-grid .client-logo-card{
  display:flex !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  width:auto !important;
  height:auto !important;
  min-height:132px !important;
  margin:0 !important;
  flex:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:translateY(8px) scale(.985) !important;
  transition:
    opacity .52s ease,
    transform .52s ease,
    visibility 0s linear .52s,
    box-shadow .2s ease !important;
  animation:none !important;
  pointer-events:none !important;
}

.client-logo-batch-grid .client-logo-card.is-visible-client{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) scale(1) !important;
  transition:
    opacity .52s ease,
    transform .52s ease,
    visibility 0s linear 0s,
    box-shadow .2s ease !important;
  pointer-events:auto !important;
}

.client-logo-batch-grid .client-logo-card.is-exiting-client{
  opacity:0 !important;
  visibility:visible !important;
  transform:translateY(-8px) scale(.985) !important;
  pointer-events:none !important;
}

.client-logo-batch-grid .client-logo-card img{
  max-width:150px !important;
  max-height:72px !important;
}

.client-logo-batch-grid .client-logo-card:hover{
  transform:translateY(-4px) scale(1.01) !important;
}

@media(max-width:1000px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
}

@media(max-width:760px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width:560px){
  .client-logo-batch-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .client-logo-batch-grid .client-logo-card,
  .client-logo-batch-grid .client-logo-card.is-visible-client,
  .client-logo-batch-grid .client-logo-card.is-exiting-client{
    transition:none !important;
    transform:none !important;
  }
}


/* Glitch-free Valued Clients 5x5 rotating wall */
.client-logo-stable-wall{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  gap:18px !important;
  margin-top:36px !important;
  width:100% !important;
  height:auto !important;
  overflow:visible !important;
  perspective:none !important;
  animation:none !important;
}

.client-logo-stable-wall .client-logo-card,
.client-logo-stable-wall .client-logo-slot,
.client-logo-stable-wall .client-logo-slot.is-visible-client,
.client-logo-stable-wall .client-logo-slot.is-exiting-client{
  display:grid !important;
  place-items:center !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  width:auto !important;
  height:auto !important;
  min-height:132px !important;
  margin:0 !important;
  flex:none !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:none !important;
  pointer-events:auto !important;
  will-change:transform, box-shadow !important;
  transition:transform .65s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease !important;
}

.client-logo-stable-wall .client-logo-slot{
  contain:layout paint !important;
}

.client-logo-stable-wall .client-logo-slot::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  opacity:0;
  background:linear-gradient(135deg, rgba(255,255,255,.42), rgba(255,255,255,.16) 44%, rgba(255,255,255,0) 72%);
  pointer-events:none;
  transition:opacity 1.15s cubic-bezier(.45, 0, .15, 1) var(--client-slot-delay, 0ms) !important;
}

.client-logo-stable-wall.is-switching .client-logo-slot::before{
  opacity:.16;
}

.client-logo-stable-wall .client-logo-img{
  grid-area:1 / 1 !important;
  max-width:150px !important;
  max-height:72px !important;
  object-fit:contain !important;
  backface-visibility:hidden !important;
  transform:translate3d(0,0,0) scale(1) !important;
  will-change:opacity !important;
  transition:opacity 1.2s cubic-bezier(.45, 0, .15, 1) var(--client-slot-delay, 0ms) !important;
}

.client-logo-stable-wall[data-active-layer="0"] .client-logo-layer-a,
.client-logo-stable-wall[data-active-layer="1"] .client-logo-layer-b{
  opacity:1 !important;
  filter:none !important;
  transform:translate3d(0,0,0) scale(1) !important;
  z-index:2;
}

.client-logo-stable-wall[data-active-layer="0"] .client-logo-layer-b,
.client-logo-stable-wall[data-active-layer="1"] .client-logo-layer-a{
  opacity:0 !important;
  filter:none !important;
  transform:translate3d(0,0,0) scale(1) !important;
  z-index:1;
}

.client-logo-stable-wall .client-logo-slot:hover{
  transform:translateY(-4px) scale(1.01) !important;
}

.client-logo-stable-wall .client-logo-slot:hover .client-logo-img{
  transform:translate3d(0,0,0) scale(1.035) !important;
}

.client-logo-stable-wall.is-switching .client-logo-slot:hover .client-logo-img{
  transform:translate3d(0,0,0) scale(1) !important;
}

@media (max-width:900px){
  .client-logo-stable-wall{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width:620px){
  .client-logo-stable-wall{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width:420px){
  .client-logo-stable-wall{
    grid-template-columns:1fr !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .client-logo-stable-wall,
  .client-logo-stable-wall .client-logo-slot,
  .client-logo-stable-wall .client-logo-img{
    transition:none !important;
    animation:none !important;
  }
}


/* Accessibility, polish, and deployment hardening */
.skip-link{
  position:absolute;
  left:16px;
  top:-80px;
  z-index:1000;
  padding:10px 14px;
  border-radius:999px;
  background:#0f172a;
  color:#fff;
  text-decoration:none;
  font-weight:900;
  box-shadow:0 12px 28px rgba(15,23,42,.22);
  transition:top .18s ease;
}
.skip-link:focus{top:16px}
:focus-visible{
  outline:3px solid rgba(37,99,235,.65);
  outline-offset:4px;
  border-radius:8px;
}
img{max-width:100%;height:auto}
.client-logo-card img,
.team-photo,
.site-logo,
.footer-logo{user-select:none}
.button,.feature-card,.nav a,.text-link,.linkedin-link{transition:transform .18s ease, box-shadow .18s ease, color .18s ease, border-color .18s ease, background .18s ease}
.button:hover,.feature-card:hover,.linkedin-link:hover{transform:translateY(-2px)}
@media (max-width:720px){
  .site-header{min-height:88px;padding:10px 5vw}
  .site-logo{height:78px}
  .hero,.page-hero{padding-top:64px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}


/* Client logo polish pass: optical sizing, hover color, mobile spacing, scroll reveals */
.valued-clients-section{
  padding-top:clamp(64px, 8vw, 96px);
  padding-bottom:clamp(64px, 8vw, 96px);
}

.client-logo-stable-wall{
  gap:clamp(14px, 2vw, 22px) !important;
  margin-top:clamp(28px, 4vw, 42px) !important;
}

.client-logo-stable-wall .client-logo-slot{
  min-height:clamp(124px, 13vw, 148px) !important;
  padding:clamp(20px, 2.5vw, 28px) clamp(14px, 2vw, 22px) !important;
}

.client-logo-stable-wall .client-logo-img,
.client-logo-card img{
  width:100% !important;
  max-width:clamp(142px, 13vw, 178px) !important;
  max-height:78px !important;
  object-fit:contain !important;
  filter:grayscale(1) saturate(.1) contrast(1.06) opacity(.78) !important;
  transition:filter .32s ease, transform .28s ease, opacity .32s ease !important;
}

.client-logo-stable-wall .client-logo-slot:hover .client-logo-img,
.client-logo-card:hover img{
  filter:grayscale(0) saturate(1) contrast(1.02) opacity(1) !important;
}

/* Keep wide wordmark logos optically substantial without overpowering stacked logos. */
.client-logo-stable-wall img[src*="COVINGTON"],
.client-logo-stable-wall img[src*="NORDSTROM"],
.client-logo-stable-wall img[src*="BLACKSTONE"],
.client-logo-stable-wall img[src*="PERFORMANCE-TRUST"],
.client-logo-stable-wall img[src*="WORLD-GOLD-COUNCIL"],
.client-logo-stable-wall img[src*="William_Grant"],
.client-logo-stable-wall img[src*="Lazard"],
.client-logo-stable-wall img[src*="LEFRAK"]{
  max-width:188px !important;
  max-height:82px !important;
}

@media (max-width:900px){
  .valued-clients-section{padding-top:58px;padding-bottom:58px;}
  .client-logo-stable-wall{gap:14px !important;}
  .client-logo-stable-wall .client-logo-slot{min-height:118px !important; padding:18px 12px !important;}
}

@media (max-width:620px){
  .valued-clients-section{padding-left:20px !important;padding-right:20px !important;}
  .client-logo-stable-wall{gap:12px !important;margin-top:26px !important;}
  .client-logo-stable-wall .client-logo-slot{min-height:108px !important;border-radius:20px !important;}
  .client-logo-stable-wall .client-logo-img,
  .client-logo-card img{max-width:150px !important;max-height:70px !important;}
}

@media (max-width:420px){
  .client-logo-stable-wall{grid-template-columns:repeat(2, minmax(0, 1fr)) !important;}
  .client-logo-stable-wall .client-logo-slot{min-height:102px !important;padding:16px 10px !important;}
  .client-logo-stable-wall .client-logo-img,
  .client-logo-card img{max-width:132px !important;max-height:64px !important;}
}

.scroll-reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .7s ease, transform .7s cubic-bezier(.22, 1, .36, 1);
  will-change:opacity, transform;
}

.scroll-reveal.is-revealed{
  opacity:1;
  transform:translateY(0);
}

@media (prefers-reduced-motion:reduce){
  .scroll-reveal{opacity:1 !important;transform:none !important;transition:none !important;}
  .client-logo-stable-wall .client-logo-img,
  .client-logo-card img{transition:none !important;}
}

/* Remove post-cube CTA: tighten transition from Gotham Partners cube into footer */
.gotham-partners-rubik-section{
  padding-bottom:68px !important;
}

.gotham-partners-rubik-section + .site-footer,
main + .site-footer{
  border-top:1px solid rgba(15,23,42,.10);
}


/* Refined Valued Clients logo transitions: softer, staggered, less aggressive */
.client-logo-stable-wall .client-logo-slot{
  transition:
    transform .55s cubic-bezier(.22, 1, .36, 1) var(--client-slot-delay, 0ms),
    box-shadow .45s ease var(--client-slot-delay, 0ms),
    background-color .45s ease var(--client-slot-delay, 0ms) !important;
}

.client-logo-stable-wall .client-logo-slot::before{
  opacity:0 !important;
  transition:opacity .7s ease var(--client-slot-delay, 0ms) !important;
}

.client-logo-stable-wall.is-switching .client-logo-slot::before{
  opacity:.06 !important;
}

.client-logo-stable-wall .client-logo-img{
  transition:
    opacity .9s cubic-bezier(.45, 0, .15, 1) var(--client-slot-delay, 0ms),
    filter .65s ease,
    transform .45s cubic-bezier(.22, 1, .36, 1) !important;
}

.client-logo-stable-wall[data-active-layer="0"] .client-logo-layer-a,
.client-logo-stable-wall[data-active-layer="1"] .client-logo-layer-b{
  filter:grayscale(.72) saturate(.72) contrast(1.02) opacity(.9) !important;
}

.client-logo-stable-wall .client-logo-slot:hover{
  transform:translateY(-3px) scale(1.006) !important;
  box-shadow:0 18px 48px rgba(15,23,42,.095) !important;
}

.client-logo-stable-wall .client-logo-slot:hover .client-logo-img{
  filter:grayscale(0) saturate(1) contrast(1) opacity(1) !important;
  transform:translate3d(0,0,0) scale(1.02) !important;
}

.client-logo-stable-wall.is-switching .client-logo-slot:hover{
  transform:translateY(-2px) scale(1.002) !important;
}

@media (prefers-reduced-motion:reduce){
  .client-logo-stable-wall[data-active-layer="0"] .client-logo-layer-a,
  .client-logo-stable-wall[data-active-layer="1"] .client-logo-layer-b,
  .client-logo-stable-wall .client-logo-slot:hover .client-logo-img{
    filter:none !important;
  }
}

/* No color transition for Valued Clients logos: keep staggered reveal and hover lift only */
.client-logo-stable-wall .client-logo-img,
.client-logo-stable-wall[data-active-layer="0"] .client-logo-layer-a,
.client-logo-stable-wall[data-active-layer="1"] .client-logo-layer-b,
.client-logo-stable-wall .client-logo-slot:hover .client-logo-img,
.client-logo-card img,
.client-logo-card:hover img{
  filter:none !important;
}

.client-logo-stable-wall .client-logo-img{
  transition:
    opacity .9s cubic-bezier(.45, 0, .15, 1) var(--client-slot-delay, 0ms),
    transform .45s cubic-bezier(.22, 1, .36, 1) !important;
}

.client-logo-card img{
  transition:transform .22s ease !important;
}

.form-success-message {
  padding: 1rem 1.1rem;
  border-radius: 14px;
  border: 1px solid rgba(34, 197, 94, 0.35);
  background: rgba(34, 197, 94, 0.10);
  color: #0f5132;
  margin: 1rem 0;
}
.form-success-message[hidden] { display: none; }
/* Contact page: form removed, contact information only */
.contact-info-only{
  grid-template-columns:minmax(0, 760px);
  justify-content:center;
}
.contact-info-card{
  width:100%;
}
.contact-info-list{
  display:grid;
  gap:10px;
  margin:22px 0;
}
.contact-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:18px;
}


/* Professional consultation/contact page without submission form */
.consultation-hero{
  position:relative;
  overflow:hidden;
}
.consultation-hero::after{
  content:"";
  position:absolute;
  right:6vw;
  bottom:-70px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(37,99,235,.16), rgba(37,99,235,0) 68%);
  pointer-events:none;
}
.consultation-hero-actions{
  margin-top:28px;
}
.consultation-layout{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:28px;
  align-items:stretch;
  padding-top:64px;
}
.consultation-card{
  background:rgba(255,255,255,.62);
  border:1px solid rgba(255,255,255,.48);
  border-radius:28px;
  padding:30px;
  box-shadow:0 18px 48px rgba(15,23,42,.10);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.consultation-card h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.035em;
  margin:0 0 14px;
}
.contact-method-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:28px;
}
.contact-method-card{
  display:flex;
  flex-direction:column;
  gap:9px;
  min-height:160px;
  padding:22px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:22px;
  background:rgba(255,255,255,.76);
  color:var(--text);
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.contact-method-card:hover{
  transform:translateY(-3px);
  border-color:rgba(37,99,235,.34);
  box-shadow:0 16px 35px rgba(15,23,42,.12);
}
.contact-method-label{
  color:var(--accent);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
}
.contact-method-card strong{
  font-size:clamp(20px,2vw,28px);
  line-height:1.08;
  letter-spacing:-.025em;
}
.contact-method-card small{
  color:var(--muted);
  font-size:15px;
  line-height:1.45;
}
.consultation-checklist{
  display:grid;
  gap:14px;
  margin:20px 0 0;
  padding:0;
  list-style:none;
}
.consultation-checklist li{
  position:relative;
  padding-left:30px;
  color:var(--muted);
  line-height:1.55;
}
.consultation-checklist li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:20px;
  height:20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.consultation-focus-section{
  padding-top:36px;
}
.consultation-kicker{
  max-width:920px;
}
.consultation-topic-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}
.consultation-topic-grid article{
  background:rgba(255,255,255,.58);
  border:1px solid rgba(255,255,255,.45);
  border-radius:24px;
  padding:24px;
  box-shadow:0 12px 35px rgba(15,23,42,.08);
}
.consultation-topic-grid span{
  color:#d97706;
  font-weight:900;
  letter-spacing:.12em;
  font-size:13px;
}
.consultation-topic-grid h3{
  margin:14px 0 10px;
  font-size:20px;
}
.consultation-topic-grid p{
  color:var(--muted);
  margin:0;
  line-height:1.55;
}
@media (max-width: 980px){
  .consultation-layout,
  .contact-method-grid,
  .consultation-topic-grid{
    grid-template-columns:1fr;
  }
  .consultation-card{
    padding:24px;
  }
}


/* Simple contact page */
.simple-contact-page{
  text-align:center;
  max-width:960px;
  margin-left:auto;
  margin-right:auto;
}
.simple-contact-page h1{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}
.simple-contact-page p{
  max-width:620px;
  margin-left:auto;
  margin-right:auto;
}
.enhanced-contact-page h1{
  font-size:clamp(2.9rem,6vw,5rem);
  letter-spacing:-.06em;
}
.contact-accent-line{
  display:block;
  width:92px;
  height:4px;
  margin:1.15rem auto 1.35rem;
  border-radius:999px;
  background:linear-gradient(90deg,#c8a24a,#f2d27a,#c8a24a);
}
.simple-contact-section{
  padding-top:2rem;
}
.enhanced-contact-section{
  padding-top:1.25rem;
  padding-bottom:5rem;
}
.simple-contact-card{
  max-width:900px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
.enhanced-contact-card{
  max-width:960px;
  gap:1.5rem;
}
.simple-contact-option{
  background:#fff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:24px;
  padding:2rem;
  text-align:center;
  box-shadow:0 20px 60px rgba(15,23,42,.08);
}
.enhanced-contact-option{
  position:relative;
  overflow:hidden;
  padding:2.6rem 2rem 2.4rem;
  border:1px solid rgba(15,45,82,.12);
  border-radius:28px;
  box-shadow:0 24px 70px rgba(15,23,42,.11);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.enhanced-contact-option::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,#0f2d52,#1f5f9b,#c8a24a);
}
.enhanced-contact-option:hover{
  transform:translateY(-4px);
  box-shadow:0 30px 85px rgba(15,23,42,.16);
  border-color:rgba(15,45,82,.2);
}
.contact-method-icon{
  display:grid;
  width:56px;
  height:56px;
  margin:0 auto 1rem;
  place-items:center;
  border-radius:18px;
  background:#f4f7fb;
  font-size:1.5rem;
}
.contact-method-label{
  display:block;
  color:#6b7280;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.simple-contact-link{
  display:inline-block;
  margin-top:.75rem;
  font-size:clamp(1.45rem,2.7vw,2.25rem);
  line-height:1.2;
  font-weight:900;
  color:#0f2d52;
  text-decoration:none;
}
.simple-contact-link:hover{
  text-decoration:underline;
}
.contact-action-button{
  display:inline-flex;
  justify-content:center;
  min-width:180px;
  margin-top:1.35rem;
  padding:.95rem 1.5rem;
  border-radius:999px;
}
@media (max-width:720px){
  .simple-contact-card{
    grid-template-columns:1fr;
  }
  .enhanced-contact-option{
    padding:2.25rem 1.4rem 2rem;
  }
}

/* v1.4.19: smoother staggered Valued Clients transition */
.client-logo-stable-wall.client-logo-reveal-ready .client-logo-slot{
  opacity:0 !important;
  transform:translateY(18px) scale(.985) !important;
  transition:
    opacity .72s ease var(--client-reveal-delay, 0ms),
    transform .72s cubic-bezier(.22, 1, .36, 1) var(--client-reveal-delay, 0ms),
    box-shadow .35s ease,
    background-color .35s ease !important;
}

.client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}

.client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot:hover{
  transform:translateY(-4px) scale(1.008) !important;
  box-shadow:0 20px 54px rgba(15,23,42,.11) !important;
}

.client-logo-stable-wall .client-logo-img{
  transition:
    opacity 1.05s cubic-bezier(.45, 0, .15, 1) var(--client-slot-delay, 0ms),
    transform .42s cubic-bezier(.22, 1, .36, 1) !important;
}

.client-logo-stable-wall.is-switching .client-logo-slot{
  transition:
    transform .6s cubic-bezier(.22, 1, .36, 1) var(--client-slot-delay, 0ms),
    box-shadow .35s ease !important;
}

@media (prefers-reduced-motion:reduce){
  .client-logo-stable-wall.client-logo-reveal-ready .client-logo-slot,
  .client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot,
  .client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot:hover{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}


/* v1.4.21: cleaner Book a Consultation page */
.clean-contact-hero{
  text-align:center;
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  padding-bottom:34px !important;
}
.clean-contact-hero h1{
  font-size:clamp(3rem, 7vw, 5.6rem);
  letter-spacing:-.07em;
  margin-bottom:.6rem;
}
.clean-contact-hero p{
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
  color:var(--muted);
  font-size:clamp(1.05rem, 1.4vw, 1.2rem);
}
.clean-contact-line{
  width:76px;
  height:3px;
  margin:1rem auto 1.2rem;
  opacity:.95;
}
.clean-contact-section{
  padding-top:0 !important;
  padding-bottom:clamp(76px, 9vw, 122px) !important;
}
.clean-contact-card{
  max-width:860px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}
.clean-contact-method{
  position:relative;
  display:flex;
  min-height:230px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:16px;
  padding:34px 24px;
  border-radius:30px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.76));
  border:1px solid rgba(15,45,82,.12);
  box-shadow:0 22px 70px rgba(15,23,42,.095);
  text-align:center;
  color:var(--text);
  text-decoration:none;
  overflow:hidden;
  transition:
    transform .32s cubic-bezier(.22, 1, .36, 1),
    box-shadow .32s ease,
    border-color .32s ease;
}
.clean-contact-method::before{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  top:0;
  height:4px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg, var(--accent), #c8a24a);
  opacity:.9;
}
.clean-contact-method:hover{
  transform:translateY(-4px);
  border-color:rgba(37,99,235,.28);
  box-shadow:0 30px 90px rgba(15,23,42,.14);
}
.clean-contact-label{
  color:var(--accent);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.clean-contact-method strong{
  font-size:clamp(1.75rem, 3vw, 2.75rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
.clean-contact-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  margin-top:2px;
  padding:.82rem 1.25rem;
  border-radius:999px;
  background:linear-gradient(135deg, var(--accent), var(--accent2));
  color:#fff;
  font-weight:850;
  box-shadow:0 12px 28px rgba(37,99,235,.20);
}
@media (max-width:760px){
  .clean-contact-card{
    grid-template-columns:1fr;
  }
  .clean-contact-method{
    min-height:190px;
    padding:30px 18px;
  }
}

/* v1.4.21: smoother, slower Valued Clients logo transitions */
.client-logo-stable-wall.client-logo-reveal-ready .client-logo-slot{
  opacity:0 !important;
  transform:translateY(12px) scale(.992) !important;
  transition:
    opacity 1s cubic-bezier(.16, 1, .3, 1) var(--client-reveal-delay, 0ms),
    transform 1s cubic-bezier(.16, 1, .3, 1) var(--client-reveal-delay, 0ms),
    box-shadow .5s ease,
    background-color .5s ease !important;
}
.client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}
.client-logo-stable-wall .client-logo-img{
  transition:
    opacity 1.45s cubic-bezier(.4, 0, .2, 1) var(--client-slot-delay, 0ms),
    transform .65s cubic-bezier(.22, 1, .36, 1) !important;
}
.client-logo-stable-wall .client-logo-slot{
  transition:
    transform .7s cubic-bezier(.22, 1, .36, 1) var(--client-slot-delay, 0ms),
    box-shadow .5s ease,
    background-color .5s ease !important;
}
.client-logo-stable-wall.is-switching .client-logo-slot::before{
  opacity:.06 !important;
  transition:opacity 1.1s ease var(--client-slot-delay, 0ms) !important;
}
.client-logo-stable-wall.client-logo-reveal-ready.logos-in-view .client-logo-slot:hover{
  transform:translateY(-3px) scale(1.004) !important;
  box-shadow:0 18px 50px rgba(15,23,42,.10) !important;
}
.client-logo-stable-wall .client-logo-slot:hover .client-logo-img{
  transform:translate3d(0,0,0) scale(1.015) !important;
}


/* Vendor cube cleanup: transparent replacement logos, enlarged by request */
.six-rubik-cell img[src*="vendor-01-ring-central-clean"],
.six-rubik-cell img[src*="vendor-04-crown-castle-clean"],
.six-rubik-cell img[src*="vendor-06-zultys-clean"],
.six-rubik-cell img[src*="vendor-09-command-link-clean"],
.six-rubik-cell img[src*="vendor-10-dialpad-clean"],
.six-rubik-cell img[src*="vendor-11-att-clean"],
.six-rubik-cell img[src*="vendor-12-comcast-clean"],
.six-rubik-cell img[src*="vendor-14-cox-clean"],
.six-rubik-cell img[src*="vendor-16-sourcepass-clean"],
.six-rubik-cell img[src*="vendor-19-microsoft-365-clean"],
.six-rubik-cell img[src*="vendor-22-8x8-clean"]{
  max-width:132px !important;
  max-height:64px !important;
}

.provider-logo-grid img[src*="vendor-01-ring-central-clean"],
.provider-logo-grid img[src*="vendor-04-crown-castle-clean"],
.provider-logo-grid img[src*="vendor-06-zultys-clean"],
.provider-logo-grid img[src*="vendor-09-command-link-clean"],
.provider-logo-grid img[src*="vendor-10-dialpad-clean"],
.provider-logo-grid img[src*="vendor-11-att-clean"],
.provider-logo-grid img[src*="vendor-12-comcast-clean"],
.provider-logo-grid img[src*="vendor-14-cox-clean"],
.provider-logo-grid img[src*="vendor-16-sourcepass-clean"],
.provider-logo-grid img[src*="vendor-19-microsoft-365-clean"],
.provider-logo-grid img[src*="vendor-22-8x8-clean"]{
  max-width:206px !important;
  max-height:93px !important;
}

/* Service detail hero images for Managed Services and Infrastructure */
.service-detail-visual{
  grid-template-columns:minmax(0,.92fr) minmax(340px,.86fr);
  align-items:center;
  gap:44px;
}
.service-detail-visual .service-detail-copy{
  display:grid;
  gap:16px;
}
.service-detail-visual .service-detail-copy h2{
  max-width:640px;
  font-size:clamp(34px,4.4vw,56px);
  line-height:1.05;
  letter-spacing:-.045em;
  margin:0;
}
.service-detail-visual .service-detail-copy p:not(.eyebrow){
  max-width:600px;
  font-size:clamp(17px,1.35vw,20px);
  line-height:1.58;
  margin:0;
}
.service-detail-visual .service-detail-copy ul{
  margin:8px 0 0;
  display:grid;
  gap:12px;
}
.service-detail-media{
  margin:0;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(15,23,42,.22);
  border:1px solid rgba(255,255,255,.62);
  background:rgba(255,255,255,.38);
  justify-self:stretch;
}
.service-detail-media img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:920px){
  .service-detail-visual{grid-template-columns:1fr;gap:30px}
  .service-detail-media{max-width:680px;width:100%}
}


/* Right-side testimonial hero images for Managed Services and Infrastructure pages */
.page-hero-visual{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(340px,.86fr);
  align-items:center;
  gap:44px;
}
.page-hero-visual .page-hero-copy{
  max-width:720px;
}
.page-hero-visual h1{
  max-width:680px;
}
.page-hero-visual .page-hero-copy p:not(.eyebrow){
  max-width:620px;
}
.page-hero-image{
  margin:0;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(15,23,42,.22);
  border:1px solid rgba(255,255,255,.62);
  background:rgba(255,255,255,.38);
  justify-self:stretch;
}
.page-hero-image img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:920px){
  .page-hero-visual{
    grid-template-columns:1fr;
    gap:30px;
  }
  .page-hero-image{
    max-width:680px;
    width:100%;
  }
}


/* v1-4-36: requested polish - smaller service hero images, remove Gotham Method bubbles, and center three-stat band */
.gotham-taglines{
  display:none !important;
}

.v2-stat-band{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  align-items:stretch !important;
  justify-items:stretch !important;
  text-align:center !important;
  padding:0 !important;
}
.v2-stat-band div{
  min-height:112px !important;
  padding:26px 28px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  width:100% !important;
}
.v2-stat-band strong{
  width:100% !important;
  text-align:center !important;
}
.v2-stat-band span{
  max-width:260px !important;
  text-align:center !important;
}

.expense-hero,
.page-hero-visual{
  grid-template-columns:minmax(0,1fr) minmax(280px,.58fr) !important;
  gap:56px !important;
}
.expense-hero-media,
.page-hero-image{
  width:100% !important;
  max-width:500px !important;
  justify-self:end !important;
  align-self:center !important;
  border-radius:22px !important;
  box-shadow:0 18px 44px rgba(15,23,42,.18) !important;
}
.expense-hero-media img,
.page-hero-image img{
  width:100% !important;
  height:auto !important;
}

@media(max-width:920px){
  .expense-hero,
  .page-hero-visual{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
  .expense-hero-media,
  .page-hero-image{
    max-width:560px !important;
    justify-self:start !important;
  }
}

@media(max-width:720px){
  .v2-stat-band{
    grid-template-columns:1fr !important;
  }
  .v2-stat-band div{
    min-height:auto !important;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
  }
  .v2-stat-band div:first-child{
    border-top:0 !important;
  }
}


/* v1-4-37: remove service hero images and rebuild three-stat band */
.gotham-taglines{
  display:none !important;
}

.page-hero-text-only{
  display:block !important;
  max-width:1120px !important;
  margin:0 auto !important;
  padding-top:72px !important;
  padding-bottom:72px !important;
  text-align:left !important;
}
.page-hero-text-only .page-hero-copy,
.page-hero-text-only .expense-hero-copy{
  max-width:920px !important;
}
.page-hero-text-only .page-hero-copy h1,
.page-hero-text-only .expense-hero-copy h1{
  max-width:900px !important;
}
.page-hero-text-only .page-hero-copy p,
.page-hero-text-only .expense-hero-copy p{
  max-width:760px !important;
}
.page-hero-image,
.expense-hero-media{
  display:none !important;
}

.v2-stat-band{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
  padding:24px !important;
  background:linear-gradient(135deg,#0f172a,#1e3a8a) !important;
  text-align:center !important;
}
.v2-stat-band div{
  min-height:132px !important;
  padding:28px 22px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.08) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.v2-stat-band div:first-child{
  border-left:1px solid rgba(255,255,255,.18) !important;
}
.v2-stat-band strong{
  display:block !important;
  width:100% !important;
  font-size:clamp(34px,3.4vw,50px) !important;
  line-height:1 !important;
  text-align:center !important;
  letter-spacing:-.05em !important;
}
.v2-stat-band span{
  display:block !important;
  max-width:250px !important;
  margin:12px auto 0 !important;
  color:rgba(255,255,255,.8) !important;
  font-weight:750 !important;
  text-align:center !important;
}

@media(max-width:860px){
  .v2-stat-band{
    grid-template-columns:1fr !important;
    padding:18px !important;
  }
  .v2-stat-band div{
    min-height:auto !important;
  }
  .page-hero-text-only{
    padding-top:52px !important;
    padding-bottom:52px !important;
  }
}


/* Footer quote belt refinements -- closing section */

.footer-quote-belt .why-quote-rotator::before,
.footer-quote-belt .why-quote-rotator::after{
  position:absolute;
  color:rgba(42,168,90,.55);
  font-size:clamp(38px,5vw,72px);
  line-height:1;
  font-weight:900;
  pointer-events:none;
}
.footer-quote-belt .why-quote-rotator::before{content:"\201C"; left:0; top:50%; transform:translateY(-50%);}
.footer-quote-belt .why-quote-rotator::after{content:"\201D"; right:0; top:50%; transform:translateY(-50%);}
.footer-quote-belt + .site-footer{margin-top:0;}

@media (max-width:720px){
  .footer-quote-belt{padding-top:48px; padding-bottom:48px;}
  .footer-quote-belt .why-quote-rotator{min-height:170px; font-size:clamp(22px,7vw,30px); padding:0 24px;}
  .footer-quote-belt .why-quote-rotator::before,
  .footer-quote-belt .why-quote-rotator::after{display:none;}
}

/* Footer quote belt white-background refinement */
.footer-quote-belt{
  background:#ffffff !important;
  border-top:1px solid rgba(7,17,31,.08) !important;
  border-bottom:1px solid rgba(7,17,31,.08) !important;
  padding-top:82px !important;
  padding-bottom:82px !important;
}
.footer-quote-belt .why-quote-rotator{
  color:#06182F !important;
  max-width:1040px !important;
  min-height:168px !important;
  font-size:clamp(26px,2.4vw,38px) !important;
  line-height:1.24 !important;
  letter-spacing:-.035em !important;
  padding:0 64px !important;
}
.footer-quote-belt .why-quote-rotator span{
  color:#06182F !important;
  padding:0 56px !important;
}
.footer-quote-belt .why-quote-rotator::before,
.footer-quote-belt .why-quote-rotator::after{
  color:#06182F !important;
}
.footer-quote-belt + .site-footer{
  margin-top:0 !important;
}
@media (max-width:720px){
  .footer-quote-belt{
    padding-top:56px !important;
    padding-bottom:56px !important;
  }
  .footer-quote-belt .why-quote-rotator{
    min-height:180px !important;
    font-size:clamp(22px,7vw,30px) !important;
    padding:0 20px !important;
  }
  .footer-quote-belt .why-quote-rotator span{
    padding:0 18px !important;
  }
}


/* Explicit deep navy quote marks requested */
.footer-quote-belt .why-quote-rotator::before,
.footer-quote-belt .why-quote-rotator::after{
  color:#06182F !important;
  opacity:1 !important;
  font-size:clamp(46px,6vw,88px) !important;
  font-weight:950 !important;
}


/* Match footer quote belt to Gotham logo blue */
.footer-quote-belt .why-quote-rotator,
.footer-quote-belt .why-quote-rotator span,
.footer-quote-belt .why-quote-rotator::before,
.footer-quote-belt .why-quote-rotator::after{
  color:#082050 !important;
}

.footer-quote-belt .why-quote-rotator::before,
.footer-quote-belt .why-quote-rotator::after{
  opacity:1 !important;
  font-size:clamp(46px,6vw,88px) !important;
  font-weight:950 !important;
}

/* Rotating testimonial image panel */
.testimonial-showcase{background:#fff;padding-top:70px;padding-bottom:76px;}
.testimonial-showcase .section-head{max-width:760px;margin:0 auto 34px;text-align:center;}
.testimonial-rotator-panel{position:relative;max-width:1180px;min-height:430px;margin:0 auto;overflow:hidden;}
.testimonial-slide{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;opacity:0;transform:scale(.985);filter:blur(1px);animation:testimonialFlip 24s cubic-bezier(.22,.61,.36,1) infinite;will-change:opacity,transform;transform-style:preserve-3d;backface-visibility:hidden;}
.testimonial-slide:nth-child(2){animation-delay:10s;}
.testimonial-slide figure{margin:0;border-radius:22px;overflow:hidden;background:#06182F;box-shadow:0 20px 45px rgba(6,24,47,.18);border:1px solid rgba(6,24,47,.12);aspect-ratio:1/1;transform:translateZ(0);}
.testimonial-slide img{width:100%;height:100%;object-fit:cover;display:block;}
@keyframes testimonialFlip{0%{opacity:0;transform:perspective(1000px) rotateY(-90deg);}12%{opacity:1;transform:perspective(1000px) rotateY(0);}43%{opacity:1;transform:perspective(1000px) rotateY(0);}55%{opacity:0;transform:perspective(1000px) rotateY(90deg);}100%{opacity:0;transform:perspective(1000px) rotateY(90deg);}}12%{opacity:1;transform:scale(1);filter:blur(0);}43%{opacity:1;transform:scale(1);filter:blur(0);}55%{opacity:0;transform:scale(1.01);filter:blur(1px);}100%{opacity:0;transform:scale(1.01);filter:blur(1px);}}
@media (max-width:900px){.testimonial-rotator-panel{min-height:980px;}.testimonial-slide{grid-template-columns:1fr;max-width:460px;margin:0 auto;left:0;right:0;}}
@media (prefers-reduced-motion:reduce){.testimonial-slide{animation:none;position:relative;opacity:1;transform:none;}.testimonial-slide+.testimonial-slide{margin-top:24px;}.testimonial-rotator-panel{min-height:auto;}}

/* Global spacing refinement */
section,.section{padding-top:60px!important;padding-bottom:60px!important;}h2,h3{margin-bottom:.75rem!important;}footer{margin-top:40px!important;}


/* Global spacing refinement v2 */
section, .section {padding-top:48px !important;padding-bottom:48px !important;}
.section-title,.section-heading,h2{margin-bottom:18px !important;}
.hero{padding-top:72px !important;padding-bottom:56px !important;}
footer{margin-top:48px !important;}
.btn,.button{margin-top:20px !important;}

/* v1-4-53: final design-system polish pass */
:root{
  --radius-sm:14px;
  --radius-md:20px;
  --radius-lg:28px;
  --shadow-soft:0 14px 36px rgba(15,23,42,.08);
  --shadow-lift:0 22px 58px rgba(15,23,42,.13);
  --shadow-blue:0 16px 36px rgba(37,99,235,.28);
}

body{
  letter-spacing:-.01em;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

.site-header{
  min-height:104px !important;
  box-shadow:0 10px 28px rgba(15,23,42,.045);
}

.nav a,
.button,
.btn{
  transition:color .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

.nav a:hover{
  transform:translateY(-1px);
}

.hero,
.page-hero{
  padding-top:64px !important;
  padding-bottom:52px !important;
}

.premium-hero{
  min-height:610px !important;
  gap:40px !important;
}

.hero h1,
.page-hero h1,
.section h2{
  letter-spacing:-.055em !important;
}

.hero h1,
.page-hero h1{
  margin-bottom:18px !important;
}

.hero-text,
.page-hero p:not(.eyebrow),
.section-lead{
  line-height:1.55 !important;
}

.eyebrow{
  margin-bottom:10px !important;
}

section,
.section{
  padding-top:54px !important;
  padding-bottom:54px !important;
}

.section + .section{
  margin-top:0 !important;
}

.section-head,
.section-kicker{
  margin-bottom:28px !important;
}

.feature-grid,
.review-grid,
.values,
.case-grid,
.outcome-grid,
.steps,
.proof-cards,
.team-grid,
.client-logo-grid{
  gap:20px !important;
  margin-top:26px !important;
}

.hero-panel div,
.proof-cards article,
.feature-card,
.contact-card,
.lead-form,
.values article,
.case-grid article,
blockquote,
.rating-bar,
.outcome-grid article,
.steps div,
.team-card,
.client-logo-card{
  border-radius:var(--radius-lg) !important;
  box-shadow:var(--shadow-soft) !important;
  border-color:rgba(148,163,184,.22) !important;
}

.feature-card,
.outcome-grid article,
.steps div,
.team-card,
.client-logo-card,
.contact-card,
.case-grid article{
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}

.feature-card:hover,
.outcome-grid article:hover,
.team-card:hover,
.client-logo-card:hover,
.contact-card:hover,
.case-grid article:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-lift) !important;
  border-color:rgba(37,99,235,.22) !important;
}

.button,
.btn,
.nav-cta,
.phone-cta{
  border-radius:999px !important;
  box-shadow:var(--shadow-blue);
}

.button:hover,
.btn:hover,
.nav-cta:hover,
.phone-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 44px rgba(37,99,235,.34) !important;
}

.secondary:hover{
  border-color:rgba(37,99,235,.35) !important;
  background:rgba(255,255,255,.92) !important;
}

.mini-proof span{
  border-radius:999px !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mini-proof span:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(15,23,42,.08);
  border-color:rgba(37,99,235,.22) !important;
}

.dark-band,
.final-cta,
.v2-stat-band{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45), 0 18px 44px rgba(15,23,42,.06);
}

.testimonial-showcase{
  padding-top:56px !important;
  padding-bottom:58px !important;
}

.testimonial-showcase .section-head{
  margin-bottom:26px !important;
}

.testimonial-slide{
  gap:22px !important;
}

.testimonial-slide figure{
  border-radius:24px !important;
  box-shadow:0 18px 44px rgba(6,24,47,.16) !important;
}

.footer-quote-belt{
  padding-top:64px !important;
  padding-bottom:64px !important;
}

.footer-quote-belt .why-quote-rotator{
  min-height:145px !important;
}

.site-footer,
footer{
  margin-top:0 !important;
}

.site-footer{
  padding-top:48px !important;
  padding-bottom:34px !important;
}

@media(max-width:900px){
  .site-header{min-height:88px !important;}
  .hero,.page-hero{padding-top:50px !important;padding-bottom:44px !important;}
  section,.section{padding-top:42px !important;padding-bottom:42px !important;}
  .premium-hero{min-height:auto !important;gap:28px !important;}
  .footer-quote-belt{padding-top:48px !important;padding-bottom:48px !important;}
}

@media(max-width:640px){
  .feature-grid,.review-grid,.values,.case-grid,.outcome-grid,.steps,.proof-cards,.team-grid,.client-logo-grid{gap:14px !important;}
  .hero-panel div,.proof-cards article,.feature-card,.contact-card,.lead-form,.values article,.case-grid article,blockquote,.rating-bar,.outcome-grid article,.steps div,.team-card,.client-logo-card{border-radius:20px !important;}
  .button,.btn{width:100%;}
}




/* v1-4-55: Gotham Method text retained, bubble styling removed */
.v2-method{
  text-align:center;
  display:flex !important;
  justify-content:center;
  align-items:center;
  padding-top:clamp(52px, 6vw, 84px) !important;
  padding-bottom:clamp(52px, 6vw, 84px) !important;
}
.v2-method > div:first-child{
  max-width:1080px;
  margin:0 auto;
}
.v2-method h2{
  margin-left:auto;
  margin-right:auto;
}
.v2-method .method-text-list{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px !important;
  margin:30px auto 0 !important;
  max-width:1080px;
}
.v2-method .method-text-list div{
  padding:0 16px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:auto;
  position:relative;
}
.v2-method .method-text-list div + div{
  border-left:1px solid rgba(15,23,42,.18) !important;
}
.v2-method .method-text-list span{
  color:#0f172a !important;
  font-weight:850;
  font-size:clamp(15px, 1.25vw, 18px);
  line-height:1.35;
  letter-spacing:-.02em;
}
@media(max-width:860px){
  .v2-method .method-text-list{grid-template-columns:1fr 1fr;}
  .v2-method .method-text-list div{padding:8px 12px !important;}
  .v2-method .method-text-list div + div{border-left:0 !important;}
}
@media(max-width:620px){
  .v2-method .method-text-list{grid-template-columns:1fr;}
}


/* v1-4-56: Restore Gotham Method framework layout from approved reference */
.gotham-method-framework{
  background:#edf3fb !important;
  border:0 !important;
  text-align:left !important;
  display:block !important;
  padding-top:clamp(72px, 8vw, 116px) !important;
  padding-bottom:clamp(78px, 8vw, 120px) !important;
}
.gotham-method-framework > div:first-child{
  max-width:1720px !important;
  margin:0 auto !important;
  padding:0 clamp(24px, 4.4vw, 84px) !important;
}
.gotham-method-framework .eyebrow{
  color:#2563eb !important;
  letter-spacing:.22em !important;
  font-weight:900 !important;
  margin-bottom:24px !important;
}
.gotham-method-framework h2{
  max-width:1340px !important;
  margin:0 0 clamp(46px, 5vw, 72px) 0 !important;
  color:#071225 !important;
  font-size:clamp(48px, 6.1vw, 86px) !important;
  line-height:.98 !important;
  letter-spacing:-.065em !important;
  text-align:left !important;
}
.gotham-method-framework .method-framework-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:clamp(28px, 3vw, 50px) !important;
  max-width:none !important;
  margin:0 !important;
}
.gotham-method-framework .method-framework-grid article{
  border-top:2px solid rgba(15,23,42,.10) !important;
  padding-top:34px !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:auto !important;
}
.gotham-method-framework .method-framework-grid .step-number{
  display:block !important;
  color:#d97706 !important;
  font-size:clamp(21px, 1.65vw, 30px) !important;
  font-weight:900 !important;
  line-height:1 !important;
  margin-bottom:42px !important;
}
.gotham-method-framework .method-framework-grid h3{
  color:#071225 !important;
  font-size:clamp(24px, 2vw, 34px) !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
  margin:0 0 26px 0 !important;
  font-weight:900 !important;
}
.gotham-method-framework .method-framework-grid p{
  color:#071225 !important;
  font-size:clamp(18px, 1.45vw, 29px) !important;
  line-height:1.42 !important;
  margin:0 !important;
  max-width:390px !important;
}
@media(max-width:980px){
  .gotham-method-framework .method-framework-grid{grid-template-columns:1fr 1fr !important;}
  .gotham-method-framework h2{font-size:clamp(42px, 9vw, 70px) !important;}
}
@media(max-width:640px){
  .gotham-method-framework{padding-top:56px !important;padding-bottom:64px !important;}
  .gotham-method-framework .method-framework-grid{grid-template-columns:1fr !important;}
  .gotham-method-framework .method-framework-grid .step-number{margin-bottom:22px !important;}
  .gotham-method-framework .method-framework-grid h3{margin-bottom:14px !important;}
}

/* v1-4-57: Scale Gotham Method section back into the global section rhythm */
.gotham-method-framework{
  padding-top:54px !important;
  padding-bottom:54px !important;
}
.gotham-method-framework > div:first-child{
  max-width:1280px !important;
  padding:0 6vw !important;
}
.gotham-method-framework .eyebrow{
  margin-bottom:12px !important;
}
.gotham-method-framework h2{
  max-width:900px !important;
  margin-bottom:34px !important;
  font-size:clamp(32px, 4vw, 56px) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
}
.gotham-method-framework .method-framework-grid{
  gap:22px !important;
}
.gotham-method-framework .method-framework-grid article{
  padding-top:22px !important;
}
.gotham-method-framework .method-framework-grid .step-number{
  font-size:clamp(16px, 1.15vw, 20px) !important;
  margin-bottom:24px !important;
}
.gotham-method-framework .method-framework-grid h3{
  font-size:clamp(19px, 1.45vw, 24px) !important;
  margin-bottom:14px !important;
}
.gotham-method-framework .method-framework-grid p{
  font-size:clamp(15px, 1.05vw, 17px) !important;
  line-height:1.55 !important;
  max-width:280px !important;
}
@media(max-width:980px){
  .gotham-method-framework h2{font-size:clamp(32px, 7vw, 52px) !important;}
}
@media(max-width:640px){
  .gotham-method-framework{padding-top:46px !important;padding-bottom:48px !important;}
  .gotham-method-framework .method-framework-grid article{padding-top:18px !important;}
  .gotham-method-framework .method-framework-grid .step-number{margin-bottom:16px !important;}
}

/* v1-4-58: Align global size and spacing more closely with current live site while preserving recent content changes */
.site-header{
  min-height:112px !important;
  padding:14px 6vw !important;
  gap:28px !important;
}
.site-logo{
  height:110px !important;
  transform:none !important;
}
.nav{gap:26px !important;}
.nav a{font-size:14px !important;}
.nav-cta,.phone-cta{
  padding:15px 24px !important;
  font-size:1.08rem !important;
}

.hero,.page-hero{
  padding-top:100px !important;
  padding-bottom:74px !important;
}
.premium-hero{
  min-height:680px !important;
  gap:44px !important;
  grid-template-columns:minmax(0,1.2fr) 420px !important;
}
.hero h1,.page-hero h1{
  font-size:clamp(42px,7vw,82px) !important;
  line-height:.96 !important;
  margin:12px 0 24px !important;
  letter-spacing:-.06em !important;
}
.hero-text,.page-hero p:not(.eyebrow),.section-lead{
  font-size:clamp(18px,2vw,22px) !important;
  line-height:1.6 !important;
  max-width:760px !important;
}
.hero-actions{margin-top:32px !important;}
.button,.btn{margin-top:0 !important;}

section,.section{
  padding-top:86px !important;
  padding-bottom:86px !important;
}
.section h2{
  font-size:clamp(32px,4vw,56px) !important;
  line-height:1.02 !important;
  margin:0 0 18px !important;
  letter-spacing:-.04em !important;
}
.section-head,.section-kicker{
  margin-bottom:34px !important;
}
.feature-grid,.review-grid,.values,.case-grid,.outcome-grid,.steps,.proof-cards,.team-grid,.client-logo-grid{
  gap:18px !important;
  margin-top:34px !important;
}
.feature-card,.contact-card,.lead-form,.values article,.case-grid article,blockquote,.rating-bar,.outcome-grid article,.team-card,.client-logo-card,.hero-panel div,.proof-cards article{
  border-radius:24px !important;
}
.feature-card h3,.values h3,.outcome-grid h3,.industry-grid h3{
  font-size:22px !important;
  margin:18px 0 10px !important;
}
.outcome-grid span{margin-bottom:18px !important;}

.v2-services .feature-grid{
  grid-template-columns:repeat(3,minmax(260px,1fr)) !important;
}
main > section.section:nth-of-type(2) .feature-grid{
  grid-template-columns:repeat(3,minmax(260px,1fr)) !important;
  justify-content:stretch !important;
}
main > section.section:nth-of-type(2) .feature-card{
  min-height:auto !important;
  padding:24px !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  text-align:left !important;
}
main > section.section:nth-of-type(2) .feature-card h3{
  font-size:22px !important;
  line-height:1.2 !important;
  margin:18px 0 10px !important;
}
main > section.section:nth-of-type(2) .feature-card p{
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Keep the approved Gotham Method framework, but size it like the live sections */
.gotham-method-framework{
  padding-top:86px !important;
  padding-bottom:86px !important;
  background:#edf3fb !important;
}
.gotham-method-framework > div:first-child{
  max-width:1280px !important;
  padding:0 6vw !important;
}
.gotham-method-framework .eyebrow{
  margin-bottom:12px !important;
}
.gotham-method-framework h2{
  max-width:980px !important;
  margin:0 0 34px 0 !important;
  font-size:clamp(32px,4vw,56px) !important;
  line-height:1.02 !important;
  letter-spacing:-.04em !important;
}
.gotham-method-framework .method-framework-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  margin-top:28px !important;
}
.gotham-method-framework .method-framework-grid article{
  padding-top:22px !important;
  border-top:1px solid rgba(15,23,42,.14) !important;
}
.gotham-method-framework .method-framework-grid .step-number{
  font-size:18px !important;
  margin-bottom:24px !important;
}
.gotham-method-framework .method-framework-grid h3{
  font-size:22px !important;
  margin:0 0 10px 0 !important;
}
.gotham-method-framework .method-framework-grid p{
  font-size:16px !important;
  line-height:1.6 !important;
  max-width:280px !important;
}

.valued-clients-section{
  padding-top:86px !important;
  padding-bottom:86px !important;
}
.testimonial-showcase{
  padding-top:70px !important;
  padding-bottom:76px !important;
}
.testimonial-showcase .section-head{
  margin:0 auto 34px !important;
}
.testimonial-rotator-panel{
  min-height:430px !important;
}
.testimonial-slide{
  gap:24px !important;
}

.team-section{
  padding-top:98px !important;
}
.gotham-partners-rubik-section,.six-rubik-section{
  padding-top:88px !important;
  padding-bottom:86px !important;
}
.site-footer{
  padding:50px 6vw 28px !important;
  margin-top:0 !important;
}

@media(max-width:1100px){
  .premium-hero{grid-template-columns:1fr !important;min-height:auto !important;}
  .outcome-grid{grid-template-columns:repeat(2,1fr) !important;}
}
@media(max-width:920px){
  .site-header{min-height:86px !important;}
  .site-logo{height:80px !important;}
  .nav{top:86px !important;}
  .premium-hero,.split,.proof,.contact-layout,.service-detail{grid-template-columns:1fr !important;}
}
@media(max-width:860px){
  .v2-services .feature-grid,
  main > section.section:nth-of-type(2) .feature-grid{grid-template-columns:1fr !important;}
  .gotham-method-framework .method-framework-grid{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:560px){
  .site-header{padding:12px 24px !important;min-height:86px !important;}
  .site-logo{height:64px !important;}
  .hero,.page-hero,.section,section{padding-left:24px !important;padding-right:24px !important;}
  .hero,.page-hero{padding-top:72px !important;padding-bottom:58px !important;}
  section,.section{padding-top:64px !important;padding-bottom:64px !important;}
  .gotham-method-framework .method-framework-grid{grid-template-columns:1fr !important;}
  .gotham-method-framework .method-framework-grid .step-number{margin-bottom:16px !important;}
  .testimonial-rotator-panel{min-height:980px !important;}
}

/* v1.4.59 - Match Gotham Method content width to neighboring panels */
.gotham-method-framework{
  padding-left:6vw !important;
  padding-right:6vw !important;
}
.gotham-method-framework > div:first-child{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.gotham-method-framework .method-framework-grid{
  width:100% !important;
  max-width:none !important;
}
.gotham-method-framework .method-framework-grid p{
  max-width:none !important;
}
@media (max-width:700px){
  .gotham-method-framework{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}

/* v1-4-61: service-page heroes match the home hero proportions without duplicating home CTAs/stats */
.service-home-hero{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  align-items:center !important;
  min-height:680px !important;
  padding:100px 6vw 74px !important;
  text-align:left !important;
  border-bottom:0 !important;
}
.service-home-hero .hero-copy{
  max-width:1100px !important;
}
.service-home-hero h1{
  max-width:940px !important;
  font-size:clamp(54px,8vw,104px) !important;
  letter-spacing:-.075em !important;
}
.service-home-hero .hero-text{
  max-width:830px !important;
  font-size:clamp(20px,2.2vw,26px) !important;
}
.service-home-hero .hero-actions,
.service-home-hero .v2-insight-panel{
  display:none !important;
}
@media (max-width:900px){
  .service-home-hero{
    min-height:auto !important;
    padding:72px 24px 56px !important;
  }
}

/* v1.4.64 - Individual full-quality staggered testimonial flip */
.testimonial-rotator-panel{
  perspective:1200px !important;
  overflow:visible !important;
}
.testimonial-slide{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
  transform-style:preserve-3d !important;
  backface-visibility:visible !important;
}
.testimonial-slide figure{
  opacity:0;
  transform:perspective(1200px) rotateY(-36deg) scale(.992);
  transform-origin:center center;
  animation:testimonialIndividualFlip 18s cubic-bezier(.22,.61,.36,1) infinite both !important;
  will-change:transform,opacity;
  filter:none !important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.testimonial-slide img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  filter:none !important;
  image-rendering:auto !important;
  transform:none !important;
}
.testimonial-slide:nth-child(1) figure:nth-child(1){animation-delay:0s !important;}
.testimonial-slide:nth-child(1) figure:nth-child(2){animation-delay:.18s !important;}
.testimonial-slide:nth-child(1) figure:nth-child(3){animation-delay:.36s !important;}
.testimonial-slide:nth-child(2) figure:nth-child(1){animation-delay:9s !important;}
.testimonial-slide:nth-child(2) figure:nth-child(2){animation-delay:9.18s !important;}
.testimonial-slide:nth-child(2) figure:nth-child(3){animation-delay:9.36s !important;}
@keyframes testimonialIndividualFlip{
  0%{opacity:0;transform:perspective(1200px) rotateY(-36deg) scale(.992);}
  5%{opacity:1;transform:perspective(1200px) rotateY(0deg) scale(1);}
  45%{opacity:1;transform:perspective(1200px) rotateY(0deg) scale(1);}
  50%{opacity:0;transform:perspective(1200px) rotateY(36deg) scale(.992);}
  100%{opacity:0;transform:perspective(1200px) rotateY(36deg) scale(.992);}
}
@media (prefers-reduced-motion:reduce){
  .testimonial-slide{position:relative !important;}
  .testimonial-slide figure{animation:none !important;opacity:1 !important;transform:none !important;}
}

/* v1.4.65 - True individual testimonial card flip, no fade */
.true-flip-testimonials{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  max-width:1180px !important;
  min-height:auto !important;
  overflow:visible !important;
  perspective:1400px !important;
}
.true-flip-testimonials .testimonial-slide{
  display:none !important;
}
.testimonial-card-flipper{
  position:relative !important;
  aspect-ratio:1/1 !important;
  perspective:1400px !important;
}
.testimonial-card-inner{
  position:relative !important;
  width:100% !important;
  height:100% !important;
  transform-style:preserve-3d !important;
  animation:testimonialTrueCardFlip 14s cubic-bezier(.55,.08,.18,1) infinite !important;
  will-change:transform !important;
}
.testimonial-card-flipper:nth-child(2) .testimonial-card-inner{animation-delay:.18s !important;}
.testimonial-card-flipper:nth-child(3) .testimonial-card-inner{animation-delay:.36s !important;}
.testimonial-card-face{
  position:absolute !important;
  inset:0 !important;
  margin:0 !important;
  border-radius:22px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 20px 45px rgba(6,24,47,.18) !important;
  border:1px solid rgba(6,24,47,.12) !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  opacity:1 !important;
  filter:none !important;
  transform-style:preserve-3d !important;
}
.testimonial-card-back{
  transform:rotateY(180deg) !important;
}
.testimonial-card-face img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  opacity:1 !important;
  filter:none !important;
  image-rendering:auto !important;
  transform:translateZ(0) !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
}
@keyframes testimonialTrueCardFlip{
  0%,42%{transform:rotateY(0deg);}
  50%,92%{transform:rotateY(180deg);}
  100%{transform:rotateY(360deg);}
}
@media (max-width:900px){
  .true-flip-testimonials{
    grid-template-columns:1fr !important;
    max-width:460px !important;
    gap:24px !important;
  }
}
@media (prefers-reduced-motion:reduce){
  .testimonial-card-inner{animation:none !important;}
  .testimonial-card-back{display:none !important;}
}

/* v1.4.67 - Static testimonial grid, no motion */
.testimonial-showcase{
  background:#fff;
}
.testimonial-static-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  max-width:1180px;
  margin:0 auto;
}
.testimonial-static-grid figure{
  margin:0;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(6,24,47,.12);
  box-shadow:0 20px 45px rgba(6,24,47,.14);
  aspect-ratio:1/1;
}
.testimonial-static-grid img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  image-rendering:auto;
  filter:none;
  transform:none;
}
@media (max-width:900px){
  .testimonial-static-grid{
    grid-template-columns:1fr;
    max-width:460px;
  }
}

/* v1.4.68 - Reduce static testimonial graphic sizing */
.testimonial-static-grid{
  max-width:960px !important;
  gap:18px !important;
}
.testimonial-static-grid figure{
  border-radius:18px !important;
  box-shadow:0 14px 30px rgba(6,24,47,.12) !important;
  max-width:300px !important;
  width:100% !important;
  justify-self:center !important;
}
.testimonial-static-grid img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
@media (max-width:900px){
  .testimonial-static-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    max-width:640px !important;
  }
  .testimonial-static-grid figure{max-width:280px !important;}
}
@media (max-width:560px){
  .testimonial-static-grid{
    grid-template-columns:1fr !important;
    max-width:320px !important;
  }
}



/* testimonial-grid-final-css */
/* Final testimonial sizing override: exact markup, no animation, cache-resistant inline CSS */
.testimonial-showcase{background:#fff!important;padding-top:70px!important;padding-bottom:76px!important;}
.testimonial-showcase .section-head{max-width:760px!important;margin:0 auto 34px!important;text-align:center!important;}
.testimonial-grid-final{display:grid!important;grid-template-columns:repeat(3,minmax(0,320px))!important;justify-content:center!important;align-items:start!important;gap:24px!important;width:100%!important;max-width:1032px!important;margin:0 auto!important;padding:0 18px!important;box-sizing:border-box!important;}
.testimonial-grid-final .testimonial-grid-card{display:block!important;width:100%!important;max-width:320px!important;margin:0!important;border-radius:18px!important;overflow:hidden!important;background:#fff!important;border:1px solid rgba(6,24,47,.12)!important;box-shadow:0 12px 28px rgba(6,24,47,.12)!important;aspect-ratio:1/1!important;cursor:pointer!important;transition:transform .22s ease,box-shadow .22s ease!important;}
.testimonial-grid-final .testimonial-grid-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 38px rgba(6,24,47,.18)!important;}
.testimonial-grid-final .testimonial-grid-image{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;filter:none!important;transform:none!important;}
.testimonial-lightbox-final{display:none;position:fixed;inset:0;z-index:999999;background:rgba(6,24,47,.88);align-items:center;justify-content:center;padding:24px;box-sizing:border-box;}
.testimonial-lightbox-final.is-open{display:flex;}
.testimonial-lightbox-final img{display:block;max-width:min(92vw,900px);max-height:88vh;width:auto;height:auto;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35);}
.testimonial-lightbox-close{position:absolute;top:18px;right:22px;border:0;background:#fff;color:#06182f;border-radius:999px;width:42px;height:42px;font-size:30px;line-height:1;cursor:pointer;}
@media (max-width:1020px){.testimonial-grid-final{grid-template-columns:repeat(2,minmax(0,320px))!important;max-width:704px!important;}}
@media (max-width:620px){.testimonial-grid-final{grid-template-columns:minmax(0,320px)!important;max-width:360px!important;gap:20px!important;padding:0 20px!important;}.testimonial-grid-final .testimonial-grid-card{max-width:320px!important;}}



/* v1-4-69: prevent CTA/button clipping across responsive widths */
.button,
.btn,
.nav-cta,
.phone-cta,
.gotham-ai-quick button,
.gotham-ai-form button,
.clean-contact-action,
.menu-toggle,
.site-footer .button.primary{
  box-sizing:border-box !important;
  max-width:100% !important;
  line-height:1.15 !important;
  min-height:44px !important;
  white-space:normal !important;
  text-align:center !important;
  overflow:visible !important;
}

.button,
.btn,
.site-footer .button.primary{
  padding:14px 22px !important;
}

.hero-actions,
.consultation-hero-actions{
  align-items:center !important;
  overflow:visible !important;
}

.site-footer .button.primary{
  width:auto !important;
  min-width:min(220px,100%) !important;
}

.nav{
  min-width:0 !important;
}

.nav a:not(.nav-cta):not(.phone-cta){
  white-space:normal !important;
  line-height:1.2 !important;
  text-align:center !important;
}

@media(max-width:1180px){
  .site-header{gap:18px !important;}
  .nav{gap:16px !important;}
  .nav a{font-size:13px !important;}
  .nav-cta,.phone-cta{
    padding:12px 18px !important;
    font-size:.96rem !important;
    min-height:42px !important;
  }
  .site-logo{height:92px !important;}
}

@media(max-width:980px){
  .nav-cta,.phone-cta{
    padding:11px 15px !important;
    font-size:.9rem !important;
  }
}

@media(max-width:640px){
  .button,
  .btn,
  .site-footer .button.primary{
    width:100% !important;
    min-width:0 !important;
  }
  .hero-actions,
  .consultation-hero-actions{
    width:100% !important;
  }
  .gotham-ai-quick{
    grid-template-columns:1fr !important;
  }
  .gotham-ai-panel{
    width:calc(100vw - 32px) !important;
    max-width:calc(100vw - 32px) !important;
  }
}


/* v1-4-70: AI chat label and seamless quote band loop */
.gotham-ai-toggle{
  width:auto !important;
  min-width:76px !important;
  height:58px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  font-size:16px !important;
  line-height:1 !important;
}
.gotham-ai-toggle span{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
}
@media(max-width:560px){
  .gotham-ai-toggle{
    min-width:68px !important;
    height:52px !important;
    padding:0 14px !important;
    font-size:15px !important;
  }
}
.quote-track{
  gap:0 !important;
  display:flex !important;
  width:max-content !important;
  will-change:transform !important;
  animation:qb 34s linear infinite !important;
}
.quote-set{
  display:flex;
  align-items:center;
  gap:72px;
  padding-right:72px;
  flex:0 0 auto;
  white-space:nowrap;
}
@media(max-width:760px){
  .quote-set{gap:42px;padding-right:42px;}
}
@keyframes qb{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* v1-4-71: align Proof in Their Words heading with other section headers */
.testimonial-showcase .section-head{
  max-width:1180px !important;
  margin:0 auto 34px !important;
  padding:0 6vw !important;
  text-align:left !important;
  box-sizing:border-box !important;
}
.testimonial-showcase .section-head p{
  max-width:620px !important;
  margin-left:0 !important;
  margin-right:auto !important;
}

/* v1-4-71: gently reduce service page hero typography so copy fits better above the fold */
.service-home-hero{
  min-height:620px !important;
  padding-top:86px !important;
  padding-bottom:64px !important;
}
.service-home-hero h1{
  font-size:clamp(46px,6.5vw,82px) !important;
  line-height:.95 !important;
  max-width:900px !important;
}
.service-home-hero .hero-text{
  font-size:clamp(18px,1.75vw,22px) !important;
  line-height:1.5 !important;
  max-width:760px !important;
}
@media (max-width:900px){
  .service-home-hero{
    padding-top:60px !important;
    padding-bottom:48px !important;
  }
  .service-home-hero h1{
    font-size:clamp(40px,11vw,58px) !important;
  }
  .service-home-hero .hero-text{
    font-size:18px !important;
  }
}

/* v1-4-72: Correct Client Outcomes / Proof in Their Words heading alignment */
.testimonial-showcase > .section-head{
  width:min(1180px, calc(100% - 48px)) !important;
  max-width:1180px !important;
  margin:0 auto 34px !important;
  padding:0 !important;
  text-align:left !important;
  display:block !important;
  box-sizing:border-box !important;
}
.testimonial-showcase > .section-head .eyebrow,
.testimonial-showcase > .section-head h2,
.testimonial-showcase > .section-head p{
  text-align:left !important;
}
.testimonial-showcase > .section-head p{
  max-width:620px !important;
  margin-left:0 !important;
  margin-right:auto !important;
}
@media (max-width:700px){
  .testimonial-showcase > .section-head{
    width:calc(100% - 40px) !important;
  }
}

/* v1-4-78: tighter service-page hero spacing and smaller hero typography */
.service-home-hero{
  min-height:520px !important;
  padding-top:46px !important;
  padding-bottom:42px !important;
  align-items:start !important;
}
.service-home-hero .hero-copy{
  padding-top:0 !important;
}
.service-home-hero h1{
  font-size:clamp(40px,5.6vw,68px) !important;
  line-height:.96 !important;
  max-width:820px !important;
  margin-top:10px !important;
  margin-bottom:18px !important;
}
.service-home-hero .hero-text{
  font-size:clamp(17px,1.45vw,20px) !important;
  line-height:1.45 !important;
  max-width:720px !important;
}
@media (max-width:900px){
  .service-home-hero{
    min-height:auto !important;
    padding-top:36px !important;
    padding-bottom:34px !important;
  }
  .service-home-hero h1{
    font-size:clamp(34px,9.5vw,50px) !important;
    margin-bottom:16px !important;
  }
  .service-home-hero .hero-text{
    font-size:17px !important;
    line-height:1.45 !important;
  }
}

/* v1-4-79: balance service hero padding and restore a little heading impact */
.service-home-hero{
  padding-top:46px !important;
  padding-bottom:46px !important;
  min-height:520px !important;
  align-items:start !important;
}
.service-home-hero h1{
  font-size:clamp(42px,5.95vw,73px) !important;
  line-height:.96 !important;
  max-width:850px !important;
}
.service-home-hero .hero-text{
  font-size:clamp(17px,1.5vw,20.5px) !important;
  line-height:1.46 !important;
}
@media (max-width:900px){
  .service-home-hero{
    padding-top:36px !important;
    padding-bottom:36px !important;
    min-height:auto !important;
  }
  .service-home-hero h1{
    font-size:clamp(36px,9.8vw,53px) !important;
  }
}

/* v1-4-80: remove fixed hero height so service panels collapse to content */
.service-home-hero{
  min-height:0 !important;
  height:auto !important;
  padding-top:54px !important;
  padding-bottom:54px !important;
  align-items:center !important;
}
.service-home-hero .hero-copy{
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.service-home-hero h1{
  font-size:clamp(42px,5.95vw,73px) !important;
  line-height:.96 !important;
  max-width:850px !important;
  margin-top:10px !important;
  margin-bottom:18px !important;
}
.service-home-hero .hero-text{
  font-size:clamp(17px,1.5vw,20.5px) !important;
  line-height:1.46 !important;
  max-width:720px !important;
}
@media (max-width:900px){
  .service-home-hero{
    min-height:0 !important;
    height:auto !important;
    padding-top:38px !important;
    padding-bottom:38px !important;
  }
  .service-home-hero h1{
    font-size:clamp(36px,9.8vw,53px) !important;
  }
}


/* v1-4-85: standardized service-page content hierarchy and capabilities panels */
.service-cta{
  display:flex !important;
  margin-top:28px !important;
}
.service-home-hero .service-cta{
  display:flex !important;
}
.service-intro{
  align-items:start !important;
  gap:clamp(28px,4vw,64px) !important;
}
.standardized-service{
  align-items:start !important;
  gap:clamp(26px,4vw,58px) !important;
  padding-top:clamp(46px,6vw,74px) !important;
  padding-bottom:clamp(46px,6vw,74px) !important;
}
.standardized-service .service-detail-copy h2{
  margin:6px 0 14px !important;
  font-size:clamp(30px,3.8vw,48px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.standardized-service .service-detail-copy p:not(.eyebrow){
  max-width:620px !important;
  color:var(--muted) !important;
  font-size:18px !important;
  line-height:1.65 !important;
}
.capability-card{
  background:#fff !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:28px !important;
  box-shadow:0 24px 70px rgba(15,23,42,.09) !important;
  padding:clamp(24px,3vw,34px) !important;
}
.capability-card h3{
  margin:0 0 16px !important;
  font-size:15px !important;
  text-transform:uppercase !important;
  letter-spacing:.13em !important;
  color:var(--brand) !important;
}
.capability-card ul{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:13px !important;
}
.capability-card li{
  position:relative !important;
  padding-left:28px !important;
  color:#334155 !important;
  line-height:1.55 !important;
}
.capability-card li::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:.62em !important;
  width:10px !important;
  height:10px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,var(--brand),var(--brand-2)) !important;
  box-shadow:0 0 0 5px rgba(37,99,235,.10) !important;
}
.service-closing{
  display:block !important;
}
.service-closing .button{
  margin-top:24px !important;
}
@media (max-width:900px){
  .service-cta{margin-top:22px !important;}
  .standardized-service{grid-template-columns:1fr !important;}
  .standardized-service .service-detail-copy p:not(.eyebrow){font-size:17px !important;}
}
/* Dedicated TikTok social button override */
a.social-btn.social-btn-tiktok,
.social-links a.social-btn.social-btn-tiktok,
.footer a.social-btn.social-btn-tiktok {
  background: #000000 !important;
  background-image: none !important;
}

a.social-btn.social-btn-tiktok:hover,
.social-links a.social-btn.social-btn-tiktok:hover,
.footer a.social-btn.social-btn-tiktok:hover {
  background: #111111 !important;
  background-image: none !important;
}


/* Major content refresh: Why Gotham, Cost Recovery & Optimization, and homepage close */
.why-gotham-rebuild{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:34px;
  align-items:stretch;
}
.why-gotham-copy,
.call-gotham-card,
.cost-intro-panel,
.technology-confidant,
.findings-grid-section,
.results-bottom-line,
.gotham-difference-cost,
.home-closing-statement{
  border-radius:30px;
  border:1px solid rgba(255,255,255,.48);
  background:rgba(255,255,255,.58);
  box-shadow:0 18px 45px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.why-gotham-copy,.call-gotham-card{padding:34px;}
.why-gotham-copy p:not(.eyebrow),.call-gotham-card p{color:var(--muted);font-size:18px;line-height:1.65;}
.why-gotham-pillars{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px;}
.why-gotham-pillars span,.aligned-proof span,.results-list span,.findings-grid article{
  border:1px solid rgba(37,99,235,.18);
  background:rgba(37,99,235,.08);
  color:#12366d;
  border-radius:18px;
  padding:14px 16px;
  font-weight:900;
}
.call-gotham-card{background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(30,64,175,.90));color:#fff;}
.call-gotham-card h3{font-size:clamp(28px,3vw,42px);margin:0 0 20px;color:#fff;}
.call-gotham-card ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.call-gotham-card li{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);font-weight:800;}
.call-gotham-card li::before{content:"✓";margin-right:10px;color:#bfdbfe;font-weight:900;}
.call-gotham-card .call-gotham-close{color:#e0ecff;margin-top:24px;font-size:19px;}
.call-gotham-card strong{color:#fff;}
.home-closing-statement{text-align:center;margin:40px 6vw 0;padding:72px 6vw!important;background:linear-gradient(135deg,rgba(15,23,42,.98),rgba(29,78,216,.88))!important;color:#fff;}
.home-closing-statement .eyebrow,.home-closing-statement h2,.home-closing-statement h3,.home-closing-statement p{color:#fff!important;}
.home-closing-statement h2{font-size:clamp(42px,7vw,86px);margin-bottom:8px;}
.home-closing-statement h3{font-size:clamp(24px,3vw,38px);margin:0 0 18px;}
.home-closing-line{font-size:clamp(22px,3vw,36px);font-weight:900;margin:24px auto 12px;max-width:980px;}
.home-closing-statement p:not(.eyebrow){max-width:900px;margin-left:auto;margin-right:auto;font-size:21px;line-height:1.55;}
.home-closing-statement .button{margin-top:22px;}
.cost-hero .hero-copy{max-width:980px;}
.cost-hero h1{max-width:940px;}
.cost-intro-panel{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.cost-intro-panel h2{font-size:clamp(30px,3.8vw,52px);}
.technology-confidant,.findings-grid-section,.results-bottom-line,.gotham-difference-cost{padding-left:6vw!important;padding-right:6vw!important;}
.confidant-grid,.findings-grid,.results-list,.difference-questions{display:grid;gap:16px;margin-top:30px;}
.confidant-grid{grid-template-columns:repeat(3,1fr);}
.confidant-grid article{border-radius:22px;padding:24px;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.10);}
.confidant-grid h3{font-size:22px;margin:0 0 10px;color:#0f172a;}
.confidant-grid p{color:var(--muted);line-height:1.6;}
.cost-checklist-card ul{columns:2;column-gap:34px;}
.findings-grid{grid-template-columns:repeat(3,1fr);}
.findings-grid article{text-align:center;font-size:20px;}
.aligned-interests{text-align:center;background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(37,99,235,.86))!important;color:#fff;}
.aligned-interests .eyebrow,.aligned-interests h2,.aligned-interests p{color:#fff!important;}
.aligned-interests p{font-size:22px;max-width:760px;margin:0 auto 24px;}
.aligned-proof{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:28px;}
.aligned-proof span{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24);color:#fff;font-size:18px;}
.results-list{grid-template-columns:repeat(3,1fr);}
.results-list span{background:#fff;}

.results-bullets{
  margin:28px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 28px;
}
.results-bullets li{
  position:relative;
  padding-left:28px;
  color:#0f172a;
  font-size:18px;
  line-height:1.45;
  font-weight:800;
}
.results-bullets li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:#2563eb;
  font-weight:900;
}
@media(max-width:640px){
  .results-bullets{grid-template-columns:1fr;}
}
.difference-questions{grid-template-columns:repeat(5,1fr);}
.difference-questions p{margin:0;padding:18px;border-radius:18px;background:rgba(15,23,42,.06);font-weight:900;color:#0f172a;}
.cost-question{font-size:clamp(22px,3vw,34px);font-weight:900;color:#0f172a;max-width:980px;margin:28px auto;line-height:1.25;}
@media(max-width:980px){
  .why-gotham-rebuild,.cost-intro-panel{grid-template-columns:1fr;}
  .confidant-grid,.findings-grid,.results-list,.difference-questions{grid-template-columns:1fr 1fr;}
  .cost-checklist-card ul{columns:1;}
}
@media(max-width:640px){
  .why-gotham-pillars,.confidant-grid,.findings-grid,.results-list,.difference-questions{grid-template-columns:1fr;}
  .why-gotham-copy,.call-gotham-card{padding:24px;}
  .home-closing-statement{margin-left:4vw;margin-right:4vw;}
}


/* Simplified Why Gotham statement panel */
.why-gotham-simplified{
  display:block;
}
.why-gotham-simplified .why-gotham-copy{
  max-width:980px;
  margin:0 auto;
  text-align:center;
}
.why-gotham-statement{
  margin:34px auto 0;
  max-width:980px;
  color:var(--blue);
  font-size:clamp(44px,7vw,88px);
  line-height:1.02;
  letter-spacing:-0.055em;
  font-weight:900;
}
@media (max-width:700px){
  .why-gotham-statement{
    font-size:clamp(38px,13vw,62px);
  }
}




/* Whole-cube drag interaction for Gotham Partners cube */
.rubik-interaction-note{
  margin:.45rem auto 0;
  color:#64748b;
  font-size:.95rem;
  text-align:center;
}
.six-rubik-cube{
  cursor:grab;
  user-select:none;
  touch-action:none;
  animation:none !important;
  transform-style:preserve-3d;
  will-change:transform;
}
.six-rubik-cube:hover{
  animation-play-state:running !important;
}
.six-rubik-cube.is-dragging{
  cursor:grabbing;
}
.six-rubik-face,
.six-rubik-cell,
.six-rubik-cell img{
  pointer-events:none;
}


/* Why Gotham stamp-only panel */
.why-gotham-simplified .why-gotham-copy.why-gotham-stamp-only{
  max-width: 1120px;
  padding: clamp(30px, 5vw, 56px);
  text-align: center;
}
.why-gotham-heading{
  margin: 0 auto clamp(1.25rem, 3vw, 2rem) !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  color: var(--accent) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}
.why-gotham-stamp-only .stamped-letter-wrap{
  margin-top: 0;
}
.why-gotham-stamp-only .stamped-letter{
  width: min(760px, 100%);
  min-height: clamp(280px, 42vw, 430px);
  margin: 0 auto;
}
.why-gotham-stamp-only .notary-stamp{
  top: 50%;
}

/* v1.4.100: remove cube face shadow artifact without hiding any of the six faces */
.six-rubik-face{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}

/* Minute-by-minute light/dark test: even Chicago minutes are light; odd Chicago minutes are dark */
html.gsg-dark{
  color-scheme:dark;
  --bg:#07111f;
  --card:#0d1b2d;
  --line:#263a52;
  --text:#f3f7fb;
  --muted:#b7c4d5;
  --accent:#60a5fa;
  --accent2:#2563eb;
  --shadow:0 24px 80px rgba(0,0,0,.42);
}
html.gsg-dark body{
  background:linear-gradient(180deg,#07111f 0%,#0a1728 42%,#0c1d31 100%);
  color:var(--text);
  transition:background-color .6s ease,color .6s ease;
}
html.gsg-dark .site-header{
  background:rgba(5,14,27,.94);
  border-bottom-color:rgba(148,163,184,.22);
}
html.gsg-dark .nav a{color:#dce7f5}
html.gsg-dark .nav a:hover{color:#7db7ff}
html.gsg-dark .premium-hero,
html.gsg-dark .page-hero{
  background:linear-gradient(180deg,rgba(8,22,39,.86) 0%,rgba(12,29,49,.72) 100%);
  color:var(--text);
}
html.gsg-dark main::before{
  opacity:.075;
  filter:grayscale(1) brightness(1.8) contrast(.9);
}
html.gsg-dark .glass,
html.gsg-dark .hero-panel div,
html.gsg-dark .proof-cards article,
html.gsg-dark .feature-card,
html.gsg-dark .contact-card,
html.gsg-dark .lead-form,
html.gsg-dark .values article,
html.gsg-dark .case-grid article,
html.gsg-dark blockquote,
html.gsg-dark .rating-bar,
html.gsg-dark .testimonial-card,
html.gsg-dark .client-outcome-card{
  background:rgba(15,31,51,.82)!important;
  border-color:rgba(148,163,184,.20)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.28)!important;
}
html.gsg-dark .dark-band,
html.gsg-dark .final-cta,
html.gsg-dark .section,
html.gsg-dark .client-outcomes-section,
html.gsg-dark .partners-section{
  background-color:transparent!important;
  border-color:rgba(148,163,184,.18)!important;
}
html.gsg-dark .site-footer{
  background:rgba(5,14,27,.90);
  border-top-color:rgba(148,163,184,.20);
}
html.gsg-dark .secondary,
html.gsg-dark .lead-form input,
html.gsg-dark .lead-form textarea,
html.gsg-dark .lead-form select{
  background:rgba(18,38,62,.92);
  color:var(--text);
  border-color:rgba(148,163,184,.28);
}
html.gsg-dark .gotham-taglines li{
  background:rgba(37,99,235,.14);
  border-color:rgba(96,165,250,.28);
  color:#eef6ff;
}
html.gsg-dark .steps div,
html.gsg-dark .service-detail,
html.gsg-dark .copyright,
html.gsg-dark .page-hero{
  border-color:rgba(148,163,184,.18);
}
html.gsg-dark blockquote,
html.gsg-dark blockquote p,
html.gsg-dark .feature-card h3,
html.gsg-dark .values h3,
html.gsg-dark .section h2,
html.gsg-dark .hero h1,
html.gsg-dark .page-hero h1{
  color:var(--text)!important;
}
html.gsg-dark .hero-text,
html.gsg-dark .page-hero p:not(.eyebrow),
html.gsg-dark .section-lead,
html.gsg-dark .feature-card p,
html.gsg-dark .values p,
html.gsg-dark .case-grid p,
html.gsg-dark .hero-panel p,
html.gsg-dark .proof-cards span,
html.gsg-dark .service-detail li,
html.gsg-dark .review-grid p,
html.gsg-dark .contact-card p,
html.gsg-dark .site-footer p,
html.gsg-dark .wide-copy{
  color:var(--muted)!important;
}
html.gsg-dark .gotham-ai-panel{
  background:rgba(9,23,40,.97);
  border-color:rgba(148,163,184,.24);
  color:var(--text);
}
html.gsg-dark .gotham-ai-message.bot,
html.gsg-dark .gotham-ai-quick button,
html.gsg-dark .gotham-ai-form,
html.gsg-dark .gotham-ai-form input{
  background:#13263e;
  color:var(--text);
  border-color:#314a66;
}
html.gsg-dark .stamped-letter{
  box-shadow:0 24px 70px rgba(0,0,0,.45);
}
html.gsg-dark .nav.open{background:#07111f}
@media (prefers-reduced-motion:no-preference){
  body,.site-header,.premium-hero,.page-hero,.site-footer,.feature-card,.glass{transition:background .6s ease,color .6s ease,border-color .6s ease}
}


/* Black-and-white editorial team portraits */
.team-photo{
  background:#f4f4f2;
  filter:none !important;
  transform:none !important;
  object-position:center center !important;
  border-color:rgba(15,23,42,.16);
}
.team-card:hover .team-photo{
  transform:translateY(-2px) scale(1.025) !important;
  box-shadow:0 14px 30px rgba(15,23,42,.18);
}

/* v1-4-108: team line-art portraits cropped tighter for uniform face scale */

/* Renso portrait: use the supplied artwork, zoomed out and raised 15px while retaining visible neck */
.team-card img[alt="Renso Reyes"]{
  object-position:center center !important;
}


/* v1.4.115: 54 unique Gotham Partner logos on all six cube faces */
.six-rubik-cell img[src*="vendor-25-blue-mantis"],
.six-rubik-cell img[src*="vendor-27-broadvoice"],
.six-rubik-cell img[src*="vendor-31-zayo"],
.six-rubik-cell img[src*="vendor-35-lumen"],
.six-rubik-cell img[src*="vendor-36-frontier"],
.six-rubik-cell img[src*="vendor-39-intrado"],
.six-rubik-cell img[src*="vendor-43-cogent"],
.six-rubik-cell img[src*="vendor-46-databank"],
.six-rubik-cell img[src*="vendor-47-genesys"],
.six-rubik-cell img[src*="vendor-48-kinetic"],
.six-rubik-cell img[src*="vendor-50-natural-wireless"],
.six-rubik-cell img[src*="vendor-53-spectrotel"] { max-width:88%; max-height:58%; }
.six-rubik-cell img[src*="vendor-29-ultatel"],
.six-rubik-cell img[src*="vendor-30-xcitium"],
.six-rubik-cell img[src*="vendor-33-palo-alto"],
.six-rubik-cell img[src*="vendor-34-pax8"],
.six-rubik-cell img[src*="vendor-38-pilot"],
.six-rubik-cell img[src*="vendor-42-five9"],
.six-rubik-cell img[src*="vendor-49-managed-solution"] { max-width:76%; max-height:76%; }
.six-rubik-cell img[src*="vendor-40-accessone"],
.six-rubik-cell img[src*="vendor-41-tierpoint"] { max-width:84%; max-height:70%; }
.provider-logo-grid.rubik-fallback-grid { grid-template-columns:repeat(auto-fit,minmax(125px,1fr)); }


/* v1.4.118: normalized visual footprint for all 54 partner logos */
.six-rubik-cell img[src*="-normalized.png"]{width:88%!important;height:88%!important;max-width:88%!important;max-height:88%!important;object-fit:contain!important;object-position:center!important;transform:none!important;}
.provider-logo-grid img[src*="-normalized.png"],.rubik-fallback-grid img[src*="-normalized.png"]{width:86%!important;height:76%!important;max-width:86%!important;max-height:76%!important;object-fit:contain!important;object-position:center!important;}

/* v1-4-121: align team-card body copy beneath variable-length role titles */
.team-card .team-role{
  min-height: 2.6em;
  line-height: 1.3;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  text-align:center;
}
