/* =========================================================
   SWGR Service Page styles (self-contained).
   Loaded only on the Service Page template.
   ========================================================= */

:root{
  --swgr-orange:#ff6b35; --swgr-orange-light:#ff8555; --swgr-orange-dark:#e85525; --swgr-orange-soft:#ffe9e0;
  --swgr-navy:#1a2840; --swgr-slate:#475569; --swgr-muted:#717182; --swgr-light:#f8fafc; --swgr-border:#e2e8f0;
  --swgr-grad-orange:linear-gradient(135deg,#ff6b35,#ff8555);
  --swgr-grad:linear-gradient(135deg,#f9fafb 0%,#eff6ff 100%);
  --swgr-hw:600;
  --swgr-shadow:0 10px 30px -12px rgba(26,40,64,.18);
}

/* base */
.swgr{font-family:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;color:var(--swgr-slate);line-height:1.6;-webkit-font-smoothing:antialiased;}
.swgr *{box-sizing:border-box;margin:0;padding:0;}
.swgr img{max-width:100%;display:block;}
.swgr a{text-decoration:none;color:inherit;}
.swgr h1,.swgr h2,.swgr h3,.swgr h4{color:var(--swgr-navy);font-weight:var(--swgr-hw);line-height:1.2;letter-spacing:-.005em;}
.swgr-wrap{max-width:1240px;margin:0 auto;padding:0 24px;}

/* buttons */
.swgr-btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;padding:13px 24px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:.2s ease;}
.swgr-btn svg{width:16px;height:16px;}
.swgr-btn.swgr-btn-primary{color:#fff;}
.swgr-btn-primary{background:var(--swgr-navy);}
.swgr-btn-primary:hover{background:#10192b;color:#fff;transform:translateY(-1px);}
.swgr-btn-ghost{background:#fff;color:var(--swgr-navy);border-color:var(--swgr-border);}
.swgr-btn-ghost:hover{border-color:var(--swgr-orange);color:var(--swgr-orange);}
.swgr-btn-lg{padding:15px 32px;font-size:16px;}

/* hero */
.swgr-svc-hero{position:relative;height:70vh;min-height:460px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.swgr-svc-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;will-change:background-position;}
.swgr-svc-hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse 90% 78% at 50% 45%,rgba(255,255,255,.93) 0%,rgba(255,255,255,.78) 34%,rgba(255,255,255,.58) 66%,rgba(255,255,255,.5) 100%);}
.swgr-svc-hero-fade{position:absolute;left:0;right:0;bottom:0;height:240px;background:linear-gradient(to top,#fff 0%,rgba(255,255,255,.92) 16%,rgba(255,255,255,.72) 36%,rgba(255,255,255,.42) 58%,rgba(255,255,255,.18) 78%,rgba(255,255,255,0) 100%);z-index:2;pointer-events:none;}
.swgr-svc-hero-inner{position:relative;z-index:3;max-width:880px;text-align:center;padding:40px 24px;}
.swgr-svc-hero h1{color:var(--swgr-navy);font-size:clamp(34px,6vw,68px);line-height:1.1;margin-bottom:18px;text-shadow:0 1px 2px rgba(255,255,255,.6);}
.swgr-svc-hero p{color:#2b3340;font-size:clamp(18px,2.4vw,24px);max-width:680px;margin:0 auto;text-shadow:0 1px 2px rgba(255,255,255,.55);}

/* content sections */
.swgr-svc-sec{padding:88px 0;background:#fff;}
.swgr-svc-sec.alt{background:var(--swgr-grad);}
.swgr-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.swgr-svc-img{position:relative;height:400px;border-radius:16px;overflow:hidden;box-shadow:0 24px 50px -18px rgba(26,40,64,.4);background-size:cover;background-position:center;will-change:background-position;background-color:#e2e8f0;}
.swgr-svc-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.2),transparent);}
.swgr-svc-grid.rev .swgr-svc-img{order:2;}
.swgr-svc-content h2{font-size:clamp(26px,3.4vw,38px);margin-bottom:18px;}
.swgr-svc-content p{font-size:18px;color:#374151;margin-bottom:28px;line-height:1.7;}
.swgr-svc-feat{list-style:none;display:flex;flex-direction:column;gap:14px;}
.swgr-svc-feat li{display:flex;align-items:flex-start;gap:12px;color:#374151;font-size:16px;}
.swgr-svc-feat svg{width:22px;height:22px;color:var(--swgr-navy);flex:0 0 auto;margin-top:1px;}
.swgr-svc-feat-navy svg{color:var(--swgr-navy);}
.swgr-svc-feat-orange svg{color:var(--swgr-orange);}

/* cta */
.swgr-svc-cta{padding:96px 0;background:linear-gradient(135deg,#ff6b35 0%,#e85525 100%);text-align:center;}
.swgr-svc-cta h2{color:#fff;font-size:clamp(30px,4.4vw,48px);margin-bottom:18px;}
.swgr-svc-cta p{color:rgba(255,255,255,.92);font-size:20px;max-width:680px;margin:0 auto 36px;}
.swgr-svc-cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.swgr-svc-cta .swgr-btn-primary{background:var(--swgr-navy);color:#fff;}
.swgr-svc-cta .swgr-btn-primary:hover{background:#10192b;color:#fff;}
.swgr-svc-cta .swgr-btn-ghost{background:#fff;border-color:#fff;color:var(--swgr-navy);}
.swgr-svc-cta .swgr-btn-ghost:hover{background:#f1f5f9;border-color:#f1f5f9;color:var(--swgr-navy);}

@media(max-width:840px){
  .swgr-svc-grid{grid-template-columns:1fr;gap:32px;}
  .swgr-svc-grid.rev .swgr-svc-img{order:0;}
  .swgr-svc-sec{padding:60px 0;}
  .swgr-svc-img{height:300px;}
}

/* ---------- scroll-in animations (images + feature bullets) ----------
   Hidden state only applies once JS adds .swgr-anim-ready to <html>,
   and only when the visitor hasn't requested reduced motion — so with
   JS off or reduced-motion on, all content is fully visible. */
.swgr-anim-ready .swgr-svc-img{opacity:0;transform:translateY(40px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1);}
.swgr-anim-ready .swgr-svc-img.is-in{opacity:1;transform:none;}

.swgr-anim-ready .swgr-svc-feat li{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);}
.swgr-anim-ready .swgr-svc-grid:not(.rev) .swgr-svc-feat li{transform:translateX(38px);}   /* image left  -> bullets in from right */
.swgr-anim-ready .swgr-svc-grid.rev      .swgr-svc-feat li{transform:translateX(-38px);}  /* image right -> bullets in from left  */
.swgr-anim-ready .swgr-svc-feat.is-in li{opacity:1;}
.swgr-anim-ready .swgr-svc-grid:not(.rev) .swgr-svc-feat.is-in li,
.swgr-anim-ready .swgr-svc-grid.rev      .swgr-svc-feat.is-in li{transform:none;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(1){transition-delay:.06s;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(2){transition-delay:.21s;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(3){transition-delay:.36s;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(4){transition-delay:.51s;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(5){transition-delay:.66s;}
.swgr-anim-ready .swgr-svc-feat li:nth-child(6){transition-delay:.81s;}

/* =========================================================
   EXTRA SECTION TYPES
   ========================================================= */

/* ---- Stats Band ---- */
.swgr-svc-stats{padding:76px 0;background:linear-gradient(135deg,#1a2840,#2a3850);}
.swgr-svc-stats-head{text-align:center;color:#fff;font-size:clamp(26px,3.4vw,38px);margin-bottom:44px;}
.swgr-svc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:32px;text-align:center;}
.swgr-svc-stat .num{font-size:clamp(40px,5vw,58px);font-weight:700;color:var(--swgr-orange);line-height:1;}
.swgr-svc-stat .lab{margin-top:10px;color:#cbd5e1;font-size:15px;}

/* ---- Awards / Accreditations strip ---- */
.swgr-svc-awards{padding:76px 0;background:#fff;}
.swgr-svc-awards-head{text-align:center;font-size:clamp(24px,3vw,34px);margin-bottom:40px;}
.swgr-svc-awards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:26px;}
.swgr-svc-award-wrap{display:flex;}
.swgr-svc-award{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:26px 20px;border:1px solid #1a2840;border-radius:14px;background:#1a2840;transition:.25s;}
.swgr-svc-award:hover{box-shadow:var(--swgr-shadow);transform:translateY(-3px);border-color:var(--swgr-orange);}
.swgr-svc-award img{height:60px;width:auto;max-width:100%;object-fit:contain;}
.swgr-svc-award .t{font-weight:700;color:#fff;font-size:13px;letter-spacing:.05em;text-transform:uppercase;}
.swgr-svc-award .s{font-size:14px;color:#cbd5e1;line-height:1.45;}

/* ---- Testimonials ---- */
.swgr-svc-tst{padding:88px 0;background:var(--swgr-grad);}
.swgr-svc-tst-head{text-align:center;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.swgr-svc-tst-intro{text-align:center;max-width:640px;margin:0 auto 44px;color:#374151;font-size:17px;line-height:1.7;}
.swgr-tst-carousel{position:relative;overflow:hidden;max-width:1180px;margin:0 auto;padding:16px 0 6px;}
.swgr-tst-track{display:flex;align-items:center;will-change:transform;}
.swgr-tst-slide{flex:0 0 100%;box-sizing:border-box;padding:12px 14px;display:flex;}
.swgr-svc-tst-card{width:100%;background:#fff;border:1px solid var(--swgr-border);border-radius:16px;padding:30px;box-shadow:var(--swgr-shadow);display:flex;flex-direction:column;gap:18px;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .6s cubic-bezier(.4,0,.2,1),border-color .35s,box-shadow .35s;}
.swgr-tst-slide:not(.is-center) .swgr-svc-tst-card{opacity:.5;transform:scale(.9);}
.swgr-tst-slide.is-center .swgr-svc-tst-card{opacity:1;transform:scale(1);border-color:var(--swgr-orange);box-shadow:0 18px 44px -16px rgba(255,107,53,.4);}
.swgr-tst-track.swgr-tst-nojump .swgr-svc-tst-card{transition:none;}
@media(prefers-reduced-motion:reduce){.swgr-svc-tst-card{transition:none;}}
.swgr-tst-dots{display:flex;justify-content:center;gap:8px;margin-top:24px;}
.swgr-tst-dots button{width:9px;height:9px;border-radius:50%;border:0;background:#cbd5e1;cursor:pointer;padding:0;transition:.25s;}
.swgr-tst-dots button:hover{background:#94a3b8;}
.swgr-tst-dots button.active{background:var(--swgr-orange);width:24px;border-radius:5px;}
.swgr-svc-tst-card .q{color:#374151;font-size:16px;line-height:1.7;}
.swgr-svc-tst-card .q::before{content:"\201C";color:var(--swgr-orange);font-size:40px;line-height:0;vertical-align:-14px;margin-right:4px;font-weight:700;}
.swgr-svc-tst-card .who{margin-top:auto;}
.swgr-svc-tst-card .who .n{font-weight:700;color:var(--swgr-navy);}
.swgr-svc-tst-card .who .r{font-size:14px;color:var(--swgr-muted);margin-top:2px;}

/* ---- Video ---- */
.swgr-svc-video{padding:88px 0;background:#fff;}
.swgr-svc-video-head{text-align:center;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.swgr-svc-video-desc{text-align:center;max-width:640px;margin:0 auto 40px;color:#374151;font-size:17px;line-height:1.7;}
.swgr-svc-video-frame{position:relative;max-width:900px;margin:0 auto;aspect-ratio:16/9;border-radius:16px;overflow:hidden;box-shadow:0 24px 50px -18px rgba(26,40,64,.4);background:#000;}
.swgr-svc-video-frame iframe,.swgr-svc-video-frame video,.swgr-svc-video-frame embed,.swgr-svc-video-frame object{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain;}

@media(max-width:600px){
  .swgr-svc-stats,.swgr-svc-awards{padding:56px 0;}
  .swgr-svc-tst,.swgr-svc-video{padding:60px 0;}
}

/* ---- Awards cards: staggered fade-up reveal (reveal transform on the wrap,
        so it never fights the hover-lift transform on the card itself) ---- */
.swgr-anim-ready .swgr-svc-award-wrap{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);}
.swgr-anim-ready .swgr-svc-awards-grid.is-in .swgr-svc-award-wrap{opacity:1;transform:none;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(1){transition-delay:.05s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(2){transition-delay:.13s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(3){transition-delay:.21s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(4){transition-delay:.29s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(5){transition-delay:.37s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(6){transition-delay:.45s;}
.swgr-anim-ready .swgr-svc-awards-grid .swgr-svc-award-wrap:nth-child(n+7){transition-delay:.5s;}

/* ---- Contact ---- */
.swgr-svc-contact{padding:88px 0;background:#fff;}
.swgr-svc-contact.alt{background:var(--swgr-grad);}
.swgr-svc-contact-head{text-align:center;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.swgr-svc-contact-intro{text-align:center;max-width:640px;margin:0 auto 44px;color:#374151;font-size:17px;line-height:1.7;}
.swgr-svc-contact-body{max-width:760px;margin:0 auto;}
.swgr-svc-contact-body.swgr-svc-contact-split{max-width:1060px;display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:start;}
.swgr-svc-contact-details{display:flex;flex-direction:column;gap:20px;}
.swgr-svc-contact-row{display:flex;align-items:center;gap:14px;color:#374151;font-size:16px;}
.swgr-svc-contact-row a:hover{color:var(--swgr-orange-dark);}
.swgr-svc-contact-ico{display:inline-flex;flex:0 0 auto;width:42px;height:42px;align-items:center;justify-content:center;border-radius:10px;background:var(--swgr-orange-soft);color:var(--swgr-orange-dark);}
.swgr-svc-contact-ico svg{width:20px;height:20px;}

/* Contact Form 7 fields, scoped + brand-styled (works with a standard CF7 form) */
.swgr-svc-contact-form .wpcf7{max-width:100%;}
.swgr-svc-contact-form p{margin:0 0 16px;}
.swgr-svc-contact-form label{display:block;font-size:14px;font-weight:600;color:var(--swgr-navy);}
.swgr-svc-contact-form input[type=text],
.swgr-svc-contact-form input[type=email],
.swgr-svc-contact-form input[type=tel],
.swgr-svc-contact-form input[type=url],
.swgr-svc-contact-form input[type=number],
.swgr-svc-contact-form input[type=date],
.swgr-svc-contact-form select,
.swgr-svc-contact-form textarea{
  width:100%;margin-top:6px;padding:13px 15px;border:1px solid var(--swgr-border);border-radius:10px;
  font-family:inherit;font-size:15px;color:var(--swgr-navy);background:#fff;
  transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none;
}
.swgr-svc-contact-form textarea{min-height:140px;resize:vertical;}
.swgr-svc-contact-form input:focus,
.swgr-svc-contact-form select:focus,
.swgr-svc-contact-form textarea:focus{outline:none;border-color:var(--swgr-orange);box-shadow:0 0 0 3px var(--swgr-orange-soft);}
.swgr-svc-contact-form .wpcf7-submit{
  display:inline-flex;align-items:center;gap:8px;background:var(--swgr-navy);color:#fff;border:0;cursor:pointer;
  font-family:inherit;font-weight:600;font-size:16px;padding:14px 32px;border-radius:8px;transition:.2s ease;width:auto;margin-top:4px;
}
.swgr-svc-contact-form .wpcf7-submit:hover{background:#10192b;transform:translateY(-1px);}
.swgr-svc-contact-form .wpcf7-spinner{margin:0 0 0 10px;}

/* ---- News / Blog ---- */
.swgr-svc-news{padding:88px 0;background:var(--swgr-grad);}
.swgr-svc-news-head{text-align:center;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.swgr-svc-news-intro{text-align:center;max-width:640px;margin:0 auto 44px;color:#374151;font-size:17px;line-height:1.7;}
.swgr-svc-news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;}
.swgr-svc-news-card{background:#fff;border:1px solid var(--swgr-border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--swgr-shadow);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.swgr-svc-news-card:hover{transform:translateY(-4px);border-color:var(--swgr-orange);box-shadow:0 22px 44px -20px rgba(26,40,64,.4);}
.swgr-svc-news-thumb{display:block;aspect-ratio:16/10;background:#e2e8f0;overflow:hidden;}
.swgr-svc-news-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.swgr-svc-news-card:hover .swgr-svc-news-thumb img{transform:scale(1.05);}
.swgr-svc-news-noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#1a2840,#2a3850);}
.swgr-svc-news-body{padding:24px;display:flex;flex-direction:column;flex:1 1 auto;}
.swgr-svc-news-date{font-size:13px;font-weight:600;color:var(--swgr-orange-dark);text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px;}
.swgr-svc-news-title{font-size:20px;line-height:1.3;margin-bottom:12px;}
.swgr-svc-news-title a:hover{color:var(--swgr-orange);}
.swgr-svc-news-excerpt{color:#475569;font-size:15px;line-height:1.65;margin-bottom:18px;}
.swgr-svc-news-more{display:inline-flex;align-items:center;gap:6px;margin-top:auto;color:var(--swgr-orange-dark);font-weight:600;font-size:15px;}
.swgr-svc-news-more svg{width:16px;height:16px;transition:transform .2s ease;}
.swgr-svc-news-more:hover svg{transform:translateX(3px);}
.swgr-svc-news-allbtn{text-align:center;margin-top:44px;}

/* ---- Contact + News responsive ---- */
@media(max-width:840px){
  .swgr-svc-contact-body.swgr-svc-contact-split{grid-template-columns:1fr;gap:34px;max-width:640px;}
}
@media(max-width:600px){
  .swgr-svc-contact,.swgr-svc-news{padding:56px 0;}
  .swgr-svc-news-grid{gap:20px;}
}

/* ---- Downloads / Documents ---- */
.swgr-svc-downloads{padding:88px 0;background:#fff;}
.swgr-svc-downloads.alt{background:var(--swgr-grad);}
.swgr-svc-dl-head{text-align:center;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.swgr-svc-dl-intro{text-align:center;max-width:640px;margin:0 auto 44px;color:#374151;font-size:17px;line-height:1.7;}
.swgr-svc-dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;max-width:980px;margin:0 auto;}
.swgr-svc-doc{display:flex;align-items:center;gap:16px;padding:18px 20px;background:#fff;border:1px solid var(--swgr-border);border-radius:12px;box-shadow:var(--swgr-shadow);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.swgr-svc-downloads.alt .swgr-svc-doc{background:#fff;}
a.swgr-svc-doc:hover{transform:translateY(-3px);border-color:var(--swgr-orange);box-shadow:0 18px 36px -18px rgba(26,40,64,.4);}
.swgr-svc-doc-ico{flex:0 0 auto;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--swgr-orange-soft);color:var(--swgr-orange-dark);}
.swgr-svc-doc-ico svg{width:22px;height:22px;}
.swgr-svc-doc-txt{display:flex;flex-direction:column;gap:3px;min-width:0;}
.swgr-svc-doc-title{font-weight:600;color:var(--swgr-navy);font-size:16px;line-height:1.3;}
.swgr-svc-doc-desc{font-size:13px;color:var(--swgr-muted);text-transform:uppercase;letter-spacing:.03em;}
@media(max-width:600px){
  .swgr-svc-downloads{padding:56px 0;}
  .swgr-svc-dl-grid{gap:14px;}
}

/* ---- Logo Carousel section (reused from the home-page marquee) ---- */
.swgr-svc-logos{padding:72px 0;background:linear-gradient(135deg,#f9fafb,#eff6ff);}
.swgr-svc-logos .swgr-svc-logos-head{text-align:center;margin-bottom:34px;}
.swgr-svc-logos .swgr-svc-logos-head h2{color:#1a2840;font-size:clamp(26px,3.4vw,40px);line-height:1.15;}
.swgr-svc-logos-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.swgr-svc-logos-track{display:flex;gap:22px;width:max-content;animation:swgr-svc-logoscroll 38s linear infinite;}
.swgr-svc-logos-marquee:hover .swgr-svc-logos-track{animation-play-state:paused;}
@keyframes swgr-svc-logoscroll{to{transform:translateX(-50%);}}
.swgr-svc-logo-chip{flex:0 0 auto;width:170px;height:88px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:0 20px;}
.swgr-svc-logo-chip img{max-height:46px;max-width:128px;width:auto;object-fit:contain;}
.swgr-svc-logos-cap{text-align:center;font-size:14px;color:#475569;margin-top:30px;}
@media(prefers-reduced-motion:reduce){.swgr-svc-logos-track{animation:none;flex-wrap:wrap;justify-content:center;}}
@media(max-width:600px){.swgr-svc-logos{padding:52px 0;}}

/* ---- Rich-text body blocks + inline button (Text + Image) ---- */
.swgr-svc-content .swgr-svc-rt{margin-bottom:28px;}
.swgr-svc-content .swgr-svc-rt > :last-child{margin-bottom:0;}
.swgr-svc-content strong{font-weight:700;color:#1f2937;}
.swgr-svc-content em{font-style:italic;}
.swgr-svc-content .swgr-svc-rt a{color:var(--swgr-orange);text-decoration:underline;text-underline-offset:2px;}
.swgr-svc-content .swgr-svc-rt a:hover{color:var(--swgr-orange-dark);}
.swgr-svc-rt ul,.swgr-svc-rt ol{margin:0 0 18px 1.15em;color:#374151;font-size:18px;line-height:1.7;}
.swgr-svc-rt li{margin-bottom:6px;}
.swgr-svc-rt2{margin-top:26px;}
.swgr-svc-btnwrap{margin-top:30px;}


/* ---- Text + Image image carousel ---- */
.swgr-svc-img.is-carousel{background-image:none;}
.swgr-svc-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease;}
.swgr-svc-slide.is-active{opacity:1;}
.swgr-svc-dots{position:absolute;bottom:14px;left:0;right:0;z-index:3;display:flex;gap:7px;justify-content:center;}
.swgr-svc-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:.2s ease;}
.swgr-svc-dot:hover{background:rgba(255,255,255,.85);}
.swgr-svc-dot.is-active{background:#fff;transform:scale(1.15);}

/* ---- Text + Image: image display controls (fit / size / mask) ---- */
/* fit */
.swgr-svc-img.fit-contain{background-size:contain;background-repeat:no-repeat;background-color:#fff;}
.swgr-svc-img.fit-contain::after{display:none;}
.swgr-svc-img.fit-contain .swgr-svc-slide{background-size:contain;background-repeat:no-repeat;}
/* style / mask */
.swgr-svc-img.mask-plain{box-shadow:none;border-radius:10px;}
.swgr-svc-img.mask-plain::after{display:none;}
.swgr-svc-img.mask-circle{border-radius:50%;aspect-ratio:1/1;height:auto;width:min(380px,100%);margin-left:auto;margin-right:auto;}
.swgr-svc-img.mask-circle::after{display:none;}
.swgr-svc-img.mask-soft{border-radius:0;box-shadow:none;-webkit-mask-image:radial-gradient(125% 125% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(125% 125% at 50% 50%,#000 60%,transparent 100%);}
.swgr-svc-img.mask-soft::after{display:none;}
.swgr-svc-img.mask-arch{border-radius:48% 48% 14px 14px / 26% 26% 4% 4%;}
/* size (after mask so it wins for width) */
.swgr-svc-img.size-medium{width:min(440px,100%);height:360px;margin-left:auto;margin-right:auto;}
.swgr-svc-img.size-small{width:min(300px,100%);height:300px;margin-left:auto;margin-right:auto;}
.swgr-svc-img.size-medium.mask-circle{width:min(440px,100%);height:auto;}
.swgr-svc-img.size-small.mask-circle{width:min(300px,100%);height:auto;}

/* ---- Features as rich text: style editor lists as tick items ---- */
.swgr-svc-feat-rich{display:block;}
.swgr-svc-feat-rich ul,.swgr-svc-feat-rich ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;}
.swgr-svc-feat-rich li{display:block;position:relative;padding-left:34px;color:#374151;font-size:16px;line-height:1.6;}
.swgr-svc-feat-rich li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff6b35' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpath d='M22 4 12 14.01l-3-3'/%3E%3C/svg%3E") no-repeat center/contain;}
.swgr-svc-feat-rich.swgr-svc-feat-navy li::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a2840' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpath d='M22 4 12 14.01l-3-3'/%3E%3C/svg%3E") no-repeat center/contain;}
.swgr-svc-feat-rich.swgr-svc-feat-orange li::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff6b35' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpath d='M22 4 12 14.01l-3-3'/%3E%3C/svg%3E") no-repeat center/contain;}
.swgr-svc-feat-rich strong{font-weight:700;color:#1f2937;}
.swgr-svc-feat-rich em{font-style:italic;}
.swgr-svc-feat-rich a{color:var(--swgr-orange);text-decoration:underline;text-underline-offset:2px;}
.swgr-svc-feat-rich a:hover{color:var(--swgr-orange-dark);}

/* ---- Text + Image: full-width parallax background layout ---- */
.swgr-svc-bgsec{position:relative;overflow:hidden;padding:130px 0;color:#fff;}
.swgr-svc-bgsec-img{position:absolute;left:0;right:0;top:-14%;height:128%;background-size:cover;background-position:center;background-repeat:no-repeat;will-change:background-position;z-index:0;background-color:#1a2840;}
.swgr-svc-bgsec-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(26,40,64,.42),rgba(26,40,64,.55));}
.swgr-svc-bgsec .swgr-wrap{position:relative;z-index:2;}
.swgr-svc-bgsec-inner{max-width:760px;}
.swgr-svc-bgsec .swgr-svc-content{text-shadow:0 1px 14px rgba(15,23,42,.45);}
/* light text on the dark background */
.swgr-svc-bgsec .swgr-svc-content h2{color:#fff;}
.swgr-svc-bgsec .swgr-svc-content p,
.swgr-svc-bgsec .swgr-svc-rt,
.swgr-svc-bgsec .swgr-svc-rt2{color:rgba(255,255,255,.92);}
.swgr-svc-bgsec .swgr-svc-content strong{color:#fff;}
.swgr-svc-bgsec .swgr-svc-feat li,
.swgr-svc-bgsec .swgr-svc-feat-rich li{color:#fff;}
.swgr-svc-bgsec .swgr-svc-rt a,
.swgr-svc-bgsec .swgr-svc-feat-rich a{color:#fff;}
@media(max-width:600px){.swgr-svc-bgsec{padding:84px 0;}}

/* ============ v1.2.0 home-page alignment ============ */

/* Hero eyebrow pill */
.swgr-svc-hero-eyebrow{display:inline-block;background:#e7ebf3;color:var(--swgr-navy);font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:7px 16px;border-radius:999px;margin-bottom:18px;}

/* Section kicker: icon chip + eyebrow pill above a heading */
.swgr-svc-kicker{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:18px;}
.swgr-svc-kicker.is-left{align-items:flex-start;}
.swgr-svc-eyebrow{display:inline-block;background:#e7ebf3;color:var(--swgr-navy);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 14px;border-radius:999px;}
.swgr-svc-ico{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:13px;background:linear-gradient(135deg,#1a2840,#2a3850);color:#fff;box-shadow:0 10px 22px -10px rgba(26,40,64,.5);}
.swgr-svc-ico svg{width:25px;height:25px;}
.swgr-svc-ico.ico-orange{background:var(--swgr-grad-orange);box-shadow:0 10px 22px -10px rgba(255,107,53,.55);}
.swgr-svc-ico.ico-blue{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 10px 22px -10px rgba(37,99,235,.5);}
.swgr-svc-ico.ico-green{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 10px 22px -10px rgba(22,163,74,.5);}
.swgr-svc-ico.ico-red{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 10px 22px -10px rgba(220,38,38,.5);}
.swgr-svc-ico.ico-navy{background:linear-gradient(135deg,#1a2840,#2a3850);box-shadow:0 10px 22px -10px rgba(26,40,64,.5);}

/* Eyebrow/icon legibility on the orange CTA band */
.swgr-svc-cta .swgr-svc-eyebrow{background:rgba(255,255,255,.2);color:#fff;}
.swgr-svc-cta .swgr-svc-ico{background:rgba(255,255,255,.22);color:#fff;box-shadow:none;}

/* Approach Cards section */
.swgr-svc-approach{padding:90px 0;background:var(--swgr-grad);}
.swgr-svc-approach-head{text-align:center;max-width:720px;margin:0 auto 46px;}
.swgr-svc-approach-head h2{font-size:clamp(28px,3.6vw,42px);}
.swgr-svc-approach-intro{color:var(--swgr-slate);font-size:18px;line-height:1.6;margin-top:12px;}
.swgr-svc-approach-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.swgr-svc-card{background:#fff;border:1px solid var(--swgr-border);border-radius:18px;padding:30px;box-shadow:var(--swgr-shadow);display:flex;flex-direction:column;}
.swgr-svc-card h3{color:var(--swgr-navy);font-size:21px;margin:18px 0 10px;line-height:1.25;}
.swgr-svc-card > p{color:var(--swgr-slate);font-size:15.5px;line-height:1.65;margin-bottom:16px;}
.swgr-svc-card-feat{list-style:none;display:flex;flex-direction:column;gap:9px;margin:0 0 18px;padding:0;}
.swgr-svc-card-feat li{display:flex;align-items:flex-start;gap:9px;color:#374151;font-size:14.5px;line-height:1.5;}
.swgr-svc-card-feat svg{width:18px;height:18px;color:var(--swgr-orange);flex:0 0 auto;margin-top:2px;}
.swgr-svc-card-link{margin-top:auto;color:var(--swgr-orange);font-weight:600;text-decoration:none;display:inline-flex;gap:6px;align-items:center;}
.swgr-svc-card-link:hover{color:var(--swgr-orange-dark);}
.swgr-svc-card-link span{transition:transform .2s ease;}
.swgr-svc-card-link:hover span{transform:translateX(3px);}

/* Stats: light "cards" variant */
.swgr-svc-stats.is-cards{background:var(--swgr-grad);}
.swgr-svc-stats.is-cards .swgr-svc-stats-head{color:var(--swgr-navy);}
.swgr-svc-stats.is-cards .swgr-svc-stats-grid{gap:24px;}
.swgr-svc-stats.is-cards .swgr-svc-stat{background:#fff;border:1px solid var(--swgr-border);border-radius:18px;padding:32px 24px;box-shadow:var(--swgr-shadow);}
.swgr-svc-stats.is-cards .swgr-svc-stat .num{color:var(--swgr-orange);}
.swgr-svc-stats.is-cards .swgr-svc-stat .lab{color:var(--swgr-slate);}
@media(max-width:600px){.swgr-svc-approach{padding:60px 0;}}

/* v1.2.1 - hero icon chip + eyebrow stack */
.swgr-svc-hero-kicker{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:18px;}
.swgr-svc-hero-kicker .swgr-svc-hero-eyebrow{margin-bottom:0;}

/* Shortcode / plugin section (e.g. WP Job Manager) */
.swgr-svc-shortcode{padding:80px 0;background:#fff;}
.swgr-svc-shortcode-head{text-align:center;max-width:720px;margin:0 auto 40px;}
.swgr-svc-shortcode-head h2{font-size:clamp(28px,3.6vw,42px);}
.swgr-svc-shortcode-intro{color:var(--swgr-slate);font-size:18px;line-height:1.6;margin-top:12px;}
.swgr-svc-shortcode-body.is-contained{max-width:1000px;margin:0 auto;}
.swgr-svc-shortcode-body.is-full{max-width:100%;}
/* Light brand polish for WP Job Manager output */
.swgr-svc-shortcode .job_listings .load_more_jobs,
.swgr-svc-shortcode input[type="submit"],
.swgr-svc-shortcode button[type="submit"]{background:var(--swgr-navy);color:#fff;border:none;border-radius:8px;padding:12px 22px;font-weight:600;cursor:pointer;}
.swgr-svc-shortcode .job_listings li.job_listing{border:1px solid var(--swgr-border);border-radius:14px;margin-bottom:12px;transition:.2s ease;}
.swgr-svc-shortcode .job_listings li.job_listing:hover{box-shadow:var(--swgr-shadow);border-color:var(--swgr-orange);}
.swgr-svc-shortcode a{color:var(--swgr-orange-dark);}

/* Text+Image: centered alignment (centres eyebrow, heading, text, list, button) */
.swgr-svc-content.is-centered{text-align:center;}
.swgr-svc-content.is-centered .swgr-svc-btnwrap{display:flex;justify-content:center;}
.swgr-svc-content.is-centered .swgr-svc-feat{display:inline-block;text-align:left;}
