/*
Theme Name: Syntrix Partners Modern
Theme URI: https://syntrixpartners.com
Author: OpenAI
Description: A modern, conversion-focused WordPress theme for Syntrix Partners, using the Syntrix navy, blue, and magenta brand palette for global BPO and professional services.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: syntrix-modern
*/

:root {
  --ink:#07183f;
  --muted:#5f6878;
  --line:#e2e7ee;
  --soft:#ffffff;
  --mint:#ffffff;
  --green:#079bd3;
  --green-dark:#07183f;
  --blue:#079bd3;
  --lavender:#ffffff;
  --magenta:#c21ab5;
  --white:#ffffff;
  --radius:28px;
  --shadow:0 24px 70px rgba(7,24,63,.09);
}

/* =========================================================
   ABOUT US + FOUNDATION SECTION (shared with homepage)
   Consolidated here (near top of file) so these rules survive
   even if a later upload gets cut short partway through.
========================================================= */

.split.foundation-split{
  grid-template-columns:1fr;
}

.about-hero-image{
  border-radius:34px;
  overflow:hidden;
  min-height:420px;
  margin-bottom:40px;
}

.about-hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.content-panel.content-panel-light{
  background:transparent;
  color:var(--ink);
  padding:0 0 0 12px;
  align-items:flex-start;
}

.content-panel.content-panel-light h2,
.content-panel.content-panel-light h1{
  font-size:clamp(40px,3vw,70px);
  line-height:.98;
  letter-spacing:-.06em;
  margin:16px 0 18px;
}

.content-panel.content-panel-light p{
  color:var(--muted);
  font-size:19px;
  margin:0 0 16px;
}

.content-panel.content-panel-light .eyebrow{
  background:#fff;
  border-color:rgba(7,155,211,.24);
  color:var(--blue);
}

.brand-lockup{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:20px;
}

.brand-lockup-name{
  font-size:20px;
  font-weight:850;
  letter-spacing:-.02em;
  color:var(--ink);
}

.brand-lockup-x{
  font-size:16px;
  color:var(--muted);
}

.brand-lockup-partner{
  font-size:20px;
  font-weight:700;
  color:var(--blue);
}

.stats-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:32px;
  margin-top:48px;
  padding-top:40px;
  border-top:1px solid var(--line);
}

.stat-item{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.stat-icon{
  width:28px;
  height:28px;
  color:var(--blue);
  margin-bottom:4px;
}

.stat-icon svg{
  width:100%;
  height:100%;
}

.stat-number{
  font-size:22px;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--ink);
}

.stat-label{
  font-size:14px;
  color:var(--muted);
}

/* ABOUT US PAGE — neutralize the generic index.php wrapper */
/* (page-id-112 is auto-added by WordPress body_class() for this page) */

.page-id-112 .page-shell{
  padding:0;
}

.page-id-112 .entry-content{
  max-width:none;
  width:100%;
  margin:0;
  padding:0;
}

.page-id-112 .entry-content > article > h1{
  display:none;
}


/* ABOUT US + FOUNDATION — mobile (consolidated, see note above) */
@media (max-width:680px){

  .stats-row{
    grid-template-columns:1fr 1fr;
    gap:28px;
    margin-top:32px;
    padding-top:28px;
  }

  .foundation-split{
    display:block;
    background:#f6f7f9;
    border-radius:0;
    padding:28px 24px;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
  }

  .foundation-split .content-panel-light{
    padding:0;
  }

  .visual-panel{
    min-height:390px;
    border-radius:0;
    border:0;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
  }

  .visual-panel.svcops-hero-visual{
    min-height:280px;
    border-radius:0;
    border:0;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
  }

  .about-hero-image{
    min-height:280px;
    border-radius:0;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
    margin-bottom:24px;
  }

  .foundation-split .visual-panel{
    width:auto;
    position:static;
    left:auto;
    right:auto;
    margin-left:-24px;
    margin-right:-24px;
  }

}


*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--white);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}

a{
  color:inherit;
  text-decoration:none;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

::selection{
  background:var(--magenta);
  color:#fff;
}

.container{
  width:min(1180px,calc(100% - 40px));
  margin-inline:auto;
}


/* HEADER */

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
}

.nav-wrap{
  height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  letter-spacing:-.03em;
  font-size:20px;
  white-space:nowrap;
  margin:0;
  padding:0;
}

.custom-logo-link{
  display:flex;
  align-items:center;
  margin:0 0 0 -32px;
  padding:0;
}

.custom-logo-link img{
  display:block;
  margin:0;
  max-height:45px;
}

.brand-mark{
  width:34px;
  height:34px;
  border-radius:11px;
  background:linear-gradient(135deg,var(--ink),var(--blue));
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:900;
}

.main-nav{
  display:flex;
  align-items:center;
  gap:28px;
  font-size:14px;
  font-weight:650;
}

.main-nav a:hover{
  color:var(--blue);
}

.nav-actions{
  display:flex;
  align-items:center;
  gap:12px;
  margin-left:32px;
}


/* BUTTONS */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:13px 20px;
  font-weight:750;
  font-size:14px;
  border:1px solid transparent;
  transition:.22s ease;
  cursor:pointer;
}

.btn-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:20px 27px;
  font-weight:750;
  font-size:14px;
  border:1px solid transparent;
  transition:.22s ease;
  cursor:pointer;
}

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

.btn-primary{
  background:var(--ink);
  color:#fff;
  box-shadow:0 10px 30px rgba(7,24,63,.16);
}

.btn-primary:hover{
  background:#0b255d;
}

.btn-secondary{
  background:#fff;
  border-color:var(--line);
}

.btn-secondary:hover{
  border-color:var(--blue);
  color:var(--blue);
}

.btn-green{
  background:var(--blue);
  color:#fff;
}

.btn-green:hover{
  background:#087faf;
}

.mobile-toggle{
  display:none;
  background:none;
  border:0;
  font-size:28px;
  color:var(--ink);
}

.mobile-menu{
  display:none;
}


/* ANNOUNCEMENT */

.announcement{
  background:var(--ink);
  color:#fff;
  text-align:center;
  font-size:13px;
  padding:9px 16px;
}

.announcement strong{
  color:var(--blue);
}


/* HERO */

.hero-mobile-image{
  display:none;
}

.hero{
  padding:0 0 48px;
  overflow:hidden;
  background:#fff;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  color:var(--blue);
  border:1px solid rgba(7,155,211,.24);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.hero-top{
  display:grid;
  grid-template-columns:1.75fr 1fr;
  gap:16px;
  align-items:start;
  margin-bottom:42px;
  padding:40px 0 0;
  position:relative;
  z-index:0;
}

.hero-top::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:url('https://syntrixpartners.com/wp-content/uploads/2026/09/hero-bg-2.jpg') no-repeat center top;
  background-size:cover;
  z-index:-1;
}

.hero-intro{
  min-width:0;
}

.hero h1{
  font-size:clamp(34px,3.6vw,64px);
  line-height:.99;
  letter-spacing:-.07em;
  margin:25px 0 26px;
}

.hero h1 .accent{
  color:var(--blue);
  position:relative;
}

.hero h1 .accent::after{
  content:"";
  display:block;
  width:72px;
  height:5px;
  border-radius:999px;
  background:var(--magenta);
  margin-top:12px;
}

.hero-copy-text p{
  font-size:clamp(17px,1.6vw,21px);
  color:#465166;
  margin:0;
}

.hero-actions{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin: 25px 0 0;
}

.hero-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:750;
  font-size:14px;
  color:var(--ink);
  padding:6px 4px;
}

.hero-link:hover{
  color:var(--blue);
}

.hero-link .play-dot{
  width:34px;
  height:34px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--blue);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  box-shadow:0 8px 18px rgba(7,155,211,.35);
}

.video-modal{
  position:fixed;
  inset:0;
  z-index:999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.video-modal.open{
  display:flex;
}

.video-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(7,24,63,.88);
}

.video-modal-inner{
  position:relative;
  z-index:1;
  width:min(920px, 100%);
}

.video-modal-frame{
  position:relative;
  width:100%;
  padding-top:56.25%;
  border-radius:18px;
  overflow:hidden;
  background:#000;
  box-shadow:0 30px 80px rgba(0,0,0,.45);
}

.video-modal-frame iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  border:0;
}

.video-modal-close{
  position:absolute;
  top:-44px;
  right:0;
  background:none;
  border:0;
  color:#fff;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  padding:4px 8px;
}

.video-modal-close:hover{
  color:var(--blue);
}

.hero-person{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
}

.hero-person img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:656px;
}


/* LOGO STRIP */

.logo-strip{
  padding:50px 0;
  border-bottom:1px solid var(--line);
  background:#fff;
}

.logo-strip p{
  text-align:center;
  color:var(--muted);
  font-size:13px;
  margin:0 0 22px;
}

.logo-row{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:18px;
}

.logo-chip{
  height:50px;
  border:1px solid var(--line);
  border-radius:16px;
  display:grid;
  place-items:center;
  font-weight:800;
  color:var(--ink);
  background:#fff;
}

.logo-chip:hover{
  border-color:rgba(7,155,211,.45);
  color:var(--blue);
}


/* SECTIONS */

.section{
  padding:20px 0;
  background:#fff;
}

.section.soft{
  background:#fff;
}

.section-head{
  margin-bottom:48px;
}

.section-head h2{
  font-size:clamp(40px,3vw,70px);
  letter-spacing:-.06em;
  line-height:.98;
  margin:16px 0 18px;
}

.section-head p{
  font-size:19px;
  color:var(--muted);
  margin:0;
}


/* WHY SYNTRIX PANEL */

.why-panel{
  background:var(--ink);
  border-radius:var(--radius);
  padding:64px;
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:40px;
  align-items:center;
}

.eyebrow-dark{
  background:transparent;
  border-color:rgba(7,155,211,.4);
  color:#39b6e2;
}

.why-panel-intro h2{
  font-size:clamp(30px,3vw,42px);
  letter-spacing:-.03em;
  line-height:1.08;
  color:#fff;
  margin:20px 0 18px;
}

.why-panel-intro p{
  font-size:17px;
  color:#fff;
  margin:0;
  max-width:440px;
}

.why-panel-list{
  display:flex;
  flex-direction:column;
}

.why-item{
  display:flex;
  align-items:flex-start;
  gap:20px;
  padding:20px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.why-item:first-child{
  padding-top:0;
}

.why-item:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.why-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  flex:0 0 auto;
  color:#fff;
  margin-top:4px;
}

.why-icon svg{
  width:100%;
  height:100%;
}

.why-item-text h3{
  font-size:18px;
  color:#fff;
  margin:0 0 4px;
  letter-spacing:-.02em;
}

.why-item-text p{
  font-size:14px;
  color:#fff;
  margin:0;
}

.why-item-text p + p{
  margin-top:8px;
}


/* SPLIT PANELS */

/* =========================================================
   SERVICES & OPS PAGE
========================================================= */

.svcops-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.svcops-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:26px;
}

.svcops-card-arrow{
  display:none;
}

.svcops-icon{
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(7,155,211,.12);
  color:var(--blue);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
}

.svcops-icon svg{
  width:22px;
  height:22px;
}

.svcops-card h3{
  font-size:18px;
  margin:0 0 8px;
  letter-spacing:-.02em;
}

.svcops-card p{
  color:var(--muted);
  font-size:14px;
  margin:0;
}

.svcops-support-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  margin-top:16px;
}

.svcops-support-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  background:#fff;
  border:1px solid var(--line);
  color:var(--blue);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
}

.svcops-support-icon svg{
  width:22px;
  height:22px;
}

.svcops-support-item h3{
  font-size:17px;
  margin:0 0 8px;
  letter-spacing:-.02em;
}

.svcops-support-item p{
  color:var(--muted);
  font-size:14px;
  margin:0;
}

.svcops-steps{
  display:flex;
  align-items:flex-start;
  gap:20px;
}

.svcops-step{
  flex:1;
}

.svcops-step-num{
  display:block;
  font-size:40px;
  font-weight:850;
  letter-spacing:-.03em;
  color:rgba(7,155,211,.35);
  margin-bottom:12px;
}

.svcops-step h3{
  font-size:18px;
  margin:0 0 8px;
  letter-spacing:-.02em;
}

.svcops-step p{
  color:var(--muted);
  font-size:14px;
  margin:0;
}

.svcops-step-arrow{
  color:var(--blue);
  font-size:22px;
  margin-top:8px;
  flex:0 0 auto;
}


.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:stretch;
}

.visual-panel{
  border-radius:34px;
  overflow:hidden;
  min-height:580px;
  background:#fff;
  border:1px solid var(--line);
}

.visual-panel.svcops-hero-visual{
  border-radius:0;
  border:0;
  width:100%;
}

.visual-panel img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.content-panel{
  border-radius:34px;
  background:var(--ink);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.content-panel h2{
  font-size:clamp(38px,4.5vw,62px);
  line-height:1;
  letter-spacing:-.055em;
  margin:16px 0 22px;
}

.content-panel p{
  color:#c7cfd3;
  font-size:18px;
}

.content-panel .eyebrow{
  background:transparent;
  border-color:rgba(7,155,211,.4);
  color:#39b6e2;
}

.checks{
  display:grid;
  gap:16px;
  margin:28px 0 34px;
}

.check{
  display:flex;
  gap:12px;
  align-items:flex-start;
}

.check i{
  font-style:normal;
  width:24px;
  height:24px;
  background:var(--blue);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:13px;
  flex:0 0 auto;
}


/* AUDIENCE CARDS */

.audience-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.audience-card{
  border-radius:24px;
  padding:26px;
  background:#fff;
  border:1px solid var(--line);
  min-height:220px;
  transition:.22s ease;
}

.audience-card:nth-child(1),
.audience-card:nth-child(2),
.audience-card:nth-child(3),
.audience-card:nth-child(4){
  background:#fff;
}

.audience-card:hover{
  border-color:rgba(7,155,211,.3);
  box-shadow:0 18px 50px rgba(7,24,63,.07);
  transform:translateY(-3px);
}

.audience-card span{
  color:var(--blue);
  font-weight:850;
}

.audience-card h3{
  font-size:22px;
  margin:46px 0 8px;
  letter-spacing:-.03em;
}

.audience-card p{
  margin:0;
  color:#4f5a61;
}


/* SERVICES */

.services-accordion,
.why-accordion{
  display:none;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.service-card{
  border-radius:20px;
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  transition:.22s ease;
  display:flex;
  flex-direction:column;
  height:240px;
}

.service-card:hover{
  border-color:rgba(7,155,211,.3);
  box-shadow:0 18px 50px rgba(7,24,63,.07);
  transform:translateY(-3px);
}

.service-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  color:var(--blue);
  margin-bottom:22px;
}

.service-icon svg{
  width:100%;
  height:100%;
}

.service-card h3{
  font-size:20px;
  letter-spacing:-.03em;
  margin:0 0 12px;
}

.service-list{
  list-style:none;
  margin:0 0 20px;
  padding:0;
  flex:1;
}

.service-list li{
  color:#4f5a61;
  font-size:15px;
}

.service-desc{
  color:#4f5a61;
  margin:0 0 20px;
  font-size:15px;
  flex:1;
}

.service-link{
  font-weight:750;
  font-size:14px;
  color:#0d7a4f;
}

.service-card:hover .service-link{
  color:#0a5f3d;
}


/* PROCESS */

.process-track{
  display:flex;
  align-items:flex-start;
}

.process-step{
  flex:1;
  padding-right:24px;
}

.process-step:last-child{
  padding-right:0;
}

.process-top{
  display:flex;
  align-items:center;
  margin-bottom:22px;
}

.process-num{
  width:40px;
  height:40px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:800;
}

.process-line{
  flex:1;
  height:1px;
  background:var(--line);
  margin-left:14px;
}

.process-step:last-child .process-line{
  display:none;
}

.process-step h3{
  font-size:20px;
  letter-spacing:-.02em;
  margin:0 0 6px;
}

.process-step p{
  color:var(--muted);
  margin:0;
  font-size:15px;
}


/* QUOTE */

.quote{
  padding:38px;
  border-radius:32px;
  background:#fff;
  border:1px solid var(--line);
  border-left:5px solid var(--blue);
  font-size:clamp(28px,4vw,48px);
  line-height:1.08;
  letter-spacing:-.045em;
  font-weight:750;
  color:var(--ink);
}

.quote small{
  display:block;
  font-size:14px;
  letter-spacing:0;
  color:var(--muted);
  margin-top:26px;
  font-weight:650;
}


/* CTA */

.cta{
  padding:20px 0;
  background:#fff;
}

.cta-box{
  background:var(--ink);
  color:#fff;
  border-radius:38px;
  padding:64px;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  align-items:end;
  gap:30px;
  overflow:hidden;
  position:relative;
}

.cta-box:after{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  background:rgba(7,155,211,.18);
  right:-80px;
  top:-120px;
}

.cta-box h2{
  font-size:clamp(44px,5.5vw,78px);
  letter-spacing:-.065em;
  line-height:.95;
  margin:0;
}

.cta .cta-box p{
  font-size:18px;
  color:#fff;
}

.cta-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  position:relative;
  z-index:2;
}


/* CTA BAND — full-bleed (About Us) */

.cta-band{
  padding:20px 0;
  background:#fff;
}

.cta-band-inner{
  background:var(--ink);
  border-radius:var(--radius);
  padding:64px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:14px;
}

.cta-band-inner h2{
  color:#fff;
  font-size:clamp(30px,3vw,42px);
  letter-spacing:-.03em;
  line-height:1.08;
  margin:0;
  max-width:720px;
}

.cta-band-inner p{
  color:#c7cfd3;
  font-size:17px;
  margin:0 0 8px;
  max-width:560px;
}


/* STATS ROW (About Us) */

.cta .btn-primary{
  background:#fff;
  color:var(--ink);
}

.cta .btn-primary:hover{
  background:var(--blue);
  color:#fff;
}

.cta-band .btn-primary{
  background:#fff;
  color:var(--ink);
}

.cta-band .btn-primary:hover{
  background:var(--blue);
  color:#fff;
}


/* FOOTER */

.site-footer{
  padding:64px 0 26px;
  background:#fff;
  color:var(--ink);
  border-top:1px solid var(--line);
}

.footer-grid{
  display:grid;
  grid-template-columns:1.6fr 2fr;
  gap:40px;
}

.footer-links-group{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px;
}

.footer-logo{
  font-size:22px;
  font-weight:900;
  letter-spacing:-.02em;
  margin-bottom:16px;
}

.footer-brand p{
  color:var(--muted);
  max-width:320px;
  font-size:15px;
}

.footer-social{
  display:flex;
  gap:10px;
  margin-top:20px;
}

.footer-social-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid var(--line);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--ink);
}

.footer-social-icon svg{
  width:16px;
  height:16px;
}

.footer-social-icon:hover{
  border-color:var(--blue);
  color:var(--blue);
}

.footer-social-icon-mobile{
  display:none;
}

.footer-col h4{
  font-size:15px;
  font-weight:800;
  letter-spacing:-.01em;
  margin:0 0 16px;
}

.footer-col h4 a{
  color:var(--ink);
}

.footer-col a{
  display:block;
  color:var(--muted);
  margin:9px 0;
  font-size:14px;
}

.footer-col a:hover{
  color:var(--blue);
}

.footer-bottom{
  margin-top:56px;
  padding-top:22px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  color:var(--muted);
  font-size:13px;
}


/* INNER PAGES */

.page-shell{
  padding:80px 0;
  background:#fff;
}


/* CONTACT US PAGE — neutralize the generic index.php wrapper */
/* (page-id-114 is auto-added by WordPress body_class() for this page) */

.page-id-114 .page-shell{
  padding:0;
}

.page-id-114 .entry-content{
  max-width:none;
  width:100%;
  margin:0;
  padding:0;
}

.page-id-114 .entry-content > article > h1{
  display:none;
}


/* SERVICES & OPS PAGE — neutralize the generic index.php wrapper */
/* (page-id-110 is auto-added by WordPress body_class() for this page) */

.page-id-110 .page-shell{
  padding:0;
}

.page-id-110 .entry-content{
  max-width:none;
  width:100%;
  margin:0;
  padding:0;
}

.page-id-110 .entry-content > article > h1{
  display:none;
}

.entry-content{
  max-width:820px;
  margin:auto;
}

.entry-content h1{
  font-size:58px;
  letter-spacing:-.05em;
}

.entry-content p{
  font-size:18px;
  color:#48535a;
}


/* TABLET */

@media (max-width:960px){

  .main-nav{
    display:none;
  }

  .mobile-toggle{
    display:block;
  }

  .nav-actions .btn-secondary{
    display:none;
  }

  .hero-top,
  .split,
  .why-panel,
  .cta-box{
    grid-template-columns:1fr;
  }

  .hero-person{
    display:none;
  }

  .hero-actions,
  .cta-actions{
    justify-content:flex-start;
  }

  .audience-grid{
    grid-template-columns:1fr 1fr;
  }

  .services-grid{
    grid-template-columns:1fr 1fr;
  }

  .process-track{
    flex-direction:column;
    gap:28px;
  }

  .process-step{
    padding-right:0;
  }

  .process-line{
    display:none;
  }

  .footer-grid{
    grid-template-columns:1fr;
  }

  .footer-links-group{
    grid-template-columns:1fr 1fr 1fr;
  }

  .mobile-menu{
    display:none;
    position:absolute;
    left:20px;
    right:20px;
    top:68px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    box-shadow:var(--shadow);
  }

  .mobile-menu.open{
    display:grid;
    gap:6px;
  }

  .mobile-menu a{
    padding:12px;
    font-weight:700;
  }

}


/* =========================================================
   CONTACT US PAGE
========================================================= */

/* Hero + form */

.contact-hero{
  background:var(--ink);
  padding:76px 0;
}

.contact-hero-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
  align-items:start;
}

.contact-hero-text .eyebrow-dark{
  margin-bottom:0;
}

.contact-hero-text h1{
  color:#fff;
  font-size:clamp(34px,3.4vw,52px);
  letter-spacing:-.04em;
  line-height:1.05;
  margin:18px 0 20px;
}

.contact-hero-text p{
  color:#c7cfd3;
  font-size:17px;
  margin:0 0 16px;
  max-width:460px;
}

.contact-hero-phone{
  color:#9aa4ab;
  font-size:14px;
}

.contact-hero-phone strong{
  color:#fff;
}

.contact-form-card{
  background:#fff;
  border-radius:24px;
  padding:36px;
  box-shadow:0 30px 80px rgba(0,0,0,.25);
}

.contact-form-card h3{
  font-size:22px;
  letter-spacing:-.02em;
  margin:0 0 20px;
  color:var(--ink);
}

.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.form-group{
  margin-bottom:16px;
}

.form-group label{
  display:block;
  font-size:13px;
  font-weight:650;
  color:var(--ink);
  margin-bottom:6px;
}

.form-group label .req{
  color:var(--magenta);
}

.form-group input,
.form-group select,
.form-group textarea{
  width:100%;
  padding:12px 14px;
  border-radius:10px;
  border:1px solid var(--line);
  font-family:inherit;
  font-size:14px;
  color:var(--ink);
  background:#fff;
}

.form-group textarea{
  resize:vertical;
  min-height:100px;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
  outline:2px solid rgba(7,155,211,.35);
  border-color:var(--blue);
}

.contact-form-submit{
  width:100%;
  justify-content:center;
  border:0;
  cursor:pointer;
  margin-top:4px;
}


/* Restyle the native Jetpack Form block to match the original design */

.wp-block-jetpack-contact-form{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:0 16px !important;
}

.wp-block-jetpack-contact-form > *:nth-child(n+7){
  grid-column:1 / -1 !important;
}

.wp-block-jetpack-field-text,
.wp-block-jetpack-field-email,
.wp-block-jetpack-field-telephone,
.wp-block-jetpack-field-url,
.wp-block-jetpack-field-select,
.wp-block-jetpack-field-textarea,
.wp-block-jetpack-field-checkbox,
.wp-block-jetpack-field-radio{
  margin-bottom:16px;
}

.wp-block-jetpack-field-text label,
.wp-block-jetpack-field-email label,
.wp-block-jetpack-field-telephone label,
.wp-block-jetpack-field-url label,
.wp-block-jetpack-field-select label,
.wp-block-jetpack-field-textarea label{
  display:block;
  font-size:13px;
  font-weight:650;
  color:var(--ink);
  margin-bottom:6px;
}

.wp-block-jetpack-contact-form input[type="text"],
.wp-block-jetpack-contact-form input[type="email"],
.wp-block-jetpack-contact-form input[type="tel"],
.wp-block-jetpack-contact-form input[type="url"],
.wp-block-jetpack-contact-form select,
.wp-block-jetpack-contact-form textarea{
  width:100%;
  padding:12px 14px;
  border-radius:10px;
  border:1px solid var(--line);
  font-family:inherit;
  font-size:14px;
  color:var(--ink);
  background:#fff;
}

.wp-block-jetpack-contact-form textarea{
  resize:vertical;
  min-height:100px;
}

.contact-form__select-wrapper{
  border:1px solid var(--line) !important;
  border-radius:10px !important;
  background:#fff !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6878' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 14px center !important;
  background-size:14px !important;
}

.wp-block-jetpack-contact-form select{
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  padding:12px 38px 12px 14px !important;
}

.wp-block-jetpack-contact-form input:focus,
.wp-block-jetpack-contact-form select:focus,
.wp-block-jetpack-contact-form textarea:focus{
  outline:2px solid rgba(7,155,211,.35);
  border-color:var(--blue);
}

.wp-block-jetpack-button{
  margin-top:20px !important;
}

.wp-block-jetpack-button button,
.wp-block-jetpack-button a.wp-block-jetpack-button__button,
.wp-block-jetpack-button .wp-block-button__link{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  font-weight:700;
  font-size:15px;
  padding:14px 24px;
  border:0;
  cursor:pointer;
  text-decoration:none;
}

.wp-block-jetpack-button button:hover,
.wp-block-jetpack-button a.wp-block-jetpack-button__button:hover,
.wp-block-jetpack-button .wp-block-button__link:hover{
  background:var(--blue);
  color:#fff;
}

.contact-form-note{
  text-align:center;
  font-size:13px;
  color:var(--muted);
  margin:12px 0 0;
}


/* Reassurance strip */

.contact-reassure-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:48px;
}

.reassure-text p{
  color:var(--muted);
  font-size:16px;
  margin:0 0 14px;
}

.reassure-list{
  display:flex;
  flex-direction:column;
  gap:22px;
  padding-left:48px;
  border-left:1px solid var(--line);
}

.reassure-item{
  display:flex;
  align-items:flex-start;
  gap:16px;
}

.reassure-icon{
  width:22px;
  height:22px;
  flex:0 0 auto;
  color:var(--blue);
  margin-top:2px;
}

.reassure-icon svg{
  width:100%;
  height:100%;
}

.reassure-item p{
  font-weight:700;
  color:var(--ink);
  margin:0;
  font-size:15px;
}


/* Specialist teams grid */

.specialist-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:32px;
}

.specialist-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:24px;
}

.specialist-icon{
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(7,155,211,.12);
  color:var(--blue);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
}

.specialist-icon svg{
  width:22px;
  height:22px;
}

.specialist-card h3{
  font-size:17px;
  margin:0 0 8px;
  letter-spacing:-.02em;
}

.specialist-card p{
  color:var(--muted);
  font-size:14px;
  margin:0;
}

.specialist-note{
  text-align:center;
  color:var(--muted);
  font-size:14px;
  margin:28px 0 0;
}


/* Simple full-bleed CTA (text left, button right) */

.contact-cta{
  background:var(--ink);
  padding:56px 0;
}

.contact-cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  flex-wrap:wrap;
}

.contact-cta-text h2{
  color:#fff;
  font-size:clamp(26px,2.6vw,36px);
  letter-spacing:-.03em;
  margin:14px 0 8px;
}

.contact-cta-text p{
  color:#c7cfd3;
  font-size:15px;
  margin:0;
}

.contact-cta .btn-primary{
  background:#fff;
  color:var(--ink);
  flex:0 0 auto;
}

.contact-cta .btn-primary:hover{
  background:var(--blue);
  color:#fff;
}


/* MOBILE */
@media (max-width:680px){

  .container{
    width:min(100% - 28px,1180px);
  }

  .announcement{
    font-size:11px;
  }

  .nav-wrap{
    height:68px;
  }

  .custom-logo-link{
    margin-left:-37px;
  }

  .custom-logo-link img{
    transform:scale(1.2);
    transform-origin:left center;
  }

  .hero{
    padding-top:0;
  }

  .hero-mobile-image{
    display:block;
    width:100%;
    height:300px;
    overflow:hidden;
  }

  .hero-mobile-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
  }

  .hero-top{
    padding:20px 0 16px;
  }

  .hero h1{
    font-size:28px;
    line-height:1.1;
    margin:14px 0 14px;
  }

  .hero-actions{
    margin-top:14px;
  }

  .logo-row{
    grid-template-columns:repeat(2,1fr);
  }

  .section{
    padding:30px 0;
  }

  .hero{
    padding-bottom:30px;
  }

  .hero-top{
    margin-bottom:0;
  }

  .section-head{
    margin-bottom:24px;
  }

  .cta-band{
    padding:30px 0;
  }

  .cta-band-inner{
    padding:36px 28px;
  }

  .cta-band-inner h2{
    font-size:32px;
  }

  .section-head p,
  .hero-copy-text p,
  .why-panel-intro p,
  .why-item-text p,
  .content-panel p,
  .content-panel.content-panel-light p,
  .audience-card p,
  .process-step p,
  .service-desc,
  .cta-box p,
  .footer-brand p,
  .logo-strip p,
  .accordion-body p,
  .cta-band-inner p{
    font-size:15px;
    line-height:1.5;
  }

  .section-head h2,
  .content-panel.content-panel-light h2,
  .content-panel.content-panel-light h1{
    font-size:35px;
  }

  .audience-grid,
  .services-grid{
    grid-template-columns:1fr;
  }

  .cta-box{
    padding:38px 28px;
    border-radius:0;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
  }

  .why-panel{
    padding:36px 28px;
    gap:28px;
    border-radius:0;
    width:100vw;
    position:relative;
    left:50%;
    right:50%;
    margin-left:-50vw;
    margin-right:-50vw;
  }

  .cta-box h2{
    font-size:47px;
  }

  .cta-actions{
    flex-direction:column;
    align-items:flex-start;
  }

  .footer-grid{
    grid-template-columns:1fr;
    gap:20px;
  }

  .footer-brand{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:12px;
  }

  .footer-brand p{
    display:none;
  }

  .footer-logo{
    margin-bottom:0;
  }

  .footer-social{
    margin-top:0;
  }

  .footer-social-icon-mobile{
    display:inline-flex;
  }

  .footer-links-group{
    display:flex;
    gap:28px;
    flex-wrap:wrap;
  }

  .footer-col h4{
    margin:0;
  }

  .footer-col a.footer-sublink{
    display:none;
  }

  .footer-bottom{
    flex-direction:column;
    gap:8px;
  }

  .cta{
    padding:30px 0;
  }


  /* MOBILE ACCORDIONS: SERVICES + WHY SYNTRIX */

  .services-grid,
  .why-panel-list{
    display:none;
  }

  .services-accordion,
  .why-accordion{
    display:block;
  }

  .accordion-item{
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    margin-bottom:10px;
    overflow:hidden;
  }

  .accordion-item summary{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    cursor:pointer;
    list-style:none;
  }

  .accordion-item summary::-webkit-details-marker{
    display:none;
  }

  .accordion-icon{
    width:22px;
    height:22px;
    flex:0 0 auto;
    color:var(--ink);
  }

  .accordion-icon svg{
    width:100%;
    height:100%;
  }

  .accordion-title{
    flex:1;
    font-weight:700;
    font-size:15px;
    color:var(--ink);
  }

  .accordion-chevron{
    color:var(--muted);
    font-size:20px;
    line-height:1;
    transition:transform .2s ease;
  }

  .accordion-item[open] .accordion-chevron{
    transform:rotate(90deg);
  }

  .accordion-body{
    padding:0 16px 16px 50px;
  }

  .accordion-body .service-list{
    list-style:none;
    margin:0;
    padding:0;
  }

  .accordion-body .service-list li{
    color:#4f5a61;
    font-size:15px;
    padding:3px 0;
  }

  .accordion-body p{
    margin:0;
  }

  .accordion-body p + p{
    margin-top:8px;
  }

  .accordion-item-dark{
    background:transparent;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.12);
    border-radius:0;
    margin-bottom:0;
  }

  .accordion-item-dark:last-child{
    border-bottom:0;
  }

  .accordion-item-dark summary{
    padding:16px 0;
  }

  .accordion-item-dark .accordion-icon,
  .accordion-item-dark .accordion-title{
    color:#fff;
  }

  .accordion-item-dark .accordion-chevron{
    color:#9aa4ab;
  }

  .accordion-item-dark .accordion-body{
    padding:0 0 16px 50px;
  }

  .accordion-item-dark .accordion-body p{
    color:#9aa4ab;
  }


  /* MOBILE PROCESS TIMELINE */

  .process-track{
    position:relative;
    flex-direction:column;
  }

  .process-track::before{
    content:"";
    position:absolute;
    left:20px;
    top:20px;
    bottom:20px;
    width:1px;
    background:var(--line);
  }

  .process-step{
    display:grid;
    grid-template-columns:40px 1fr;
    column-gap:16px;
    row-gap:2px;
    align-items:start;
    padding:0 0 28px;
  }

  .process-step:last-child{
    padding-bottom:0;
  }

  .process-top{
    grid-row:1 / 3;
    grid-column:1;
    margin-bottom:0;
    position:relative;
    z-index:1;
  }

  .process-step h3{
    grid-row:1;
    grid-column:2;
    margin:0;
    align-self:center;
  }

  .process-step p{
    grid-row:2;
    grid-column:2;
    margin:0;
  }


  /* CONTACT US PAGE — mobile */

  .contact-hero{
    padding:36px 0;
  }

  .contact-hero-grid{
    grid-template-columns:1fr;
    gap:32px;
  }

  .contact-form-card{
    padding:24px;
  }

  .form-row{
    grid-template-columns:1fr;
  }

  .contact-reassure-grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .reassure-list{
    padding-left:0;
    border-left:0;
    padding-top:24px;
    border-top:1px solid var(--line);
  }

  .specialist-grid{
    grid-template-columns:1fr 1fr;
  }

  .contact-cta-inner{
    flex-direction:column;
    align-items:flex-start;
  }

  .contact-cta .btn-primary{
    width:100%;
    text-align:center;
    justify-content:center;
  }


  /* SERVICES & OPS PAGE — mobile */

  .svcops-grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .svcops-card{
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px;
  }

  .svcops-icon{
    margin-bottom:0;
    flex:0 0 auto;
    width:38px;
    height:38px;
  }

  .svcops-icon svg{
    width:18px;
    height:18px;
  }

  .svcops-card-text{
    flex:1;
    min-width:0;
  }

  .svcops-card h3{
    font-size:15px;
    margin:0 0 3px;
  }

  .svcops-card p{
    font-size:15px;
  }

  .svcops-card-arrow{
    display:block;
    flex:0 0 auto;
    color:var(--muted);
    font-size:18px;
  }

  .svcops-support-row{
    grid-template-columns:repeat(4,1fr);
    gap:8px;
  }

  .svcops-support-icon{
    width:36px;
    height:36px;
    margin-bottom:10px;
  }

  .svcops-support-icon svg{
    width:16px;
    height:16px;
  }

  .svcops-support-item h3{
    font-size:16px;
    line-height:1.3;
  }

  .svcops-support-item p{
    display:none;
  }


  .svcops-steps{
    flex-direction:column;
    gap:0;
    position:relative;
  }

  .svcops-steps::before{
    content:"";
    position:absolute;
    left:15px;
    top:16px;
    bottom:16px;
    width:1px;
    background:var(--line);
  }

  .svcops-step{
    display:grid;
    grid-template-columns:32px 1fr;
    column-gap:14px;
    row-gap:2px;
    align-items:start;
    padding-bottom:24px;
    position:relative;
    z-index:1;
  }

  .svcops-step:last-child{
    padding-bottom:0;
  }

  .svcops-step-num{
    grid-row:1 / 3;
    grid-column:1;
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:var(--ink);
    color:#fff;
    font-size:13px;
    font-weight:800;
    letter-spacing:0;
    margin-bottom:0;
  }

  .svcops-step h3{
    grid-row:1;
    grid-column:2;
    margin:0;
    align-self:center;
  }

  .svcops-step p{
    grid-row:2;
    grid-column:2;
    margin:0;
  }

  .svcops-step-arrow{
    display:none;
  }

}