/* ============================================================================
   inner.css - every page that is not the front page
   ----------------------------------------------------------------------------
   Load order:
     bootstrap -> general -> shared -> inner -> shared-responsive
               -> inner-responsive -> header-footer

   All base rules, then all @media blocks, shared before page in each half. That
   is not decoration: the harvester writes every media rule after every base rule
   and the responsive layer beats the base layer on source order alone, since both
   are plain classes. Splitting the chrome out without this left the homepage on
   its desktop padding at 450px. check-css-order.py asserts it.

   `shared.css` carries the design's global layer: the header, the footer, the
   benefits bar, the FAQ accordion, the base typography and the utilities. It is
   generated from the homepage extraction and loads on every page, so nothing
   here repeats it.

   HOW SEVERAL SCREENS SHARE ONE FILE
   ----------------------------------
   Each screen's block is that screen's design.css in the design's own order,
   with every selector scoped to its page template:

       .hero-copy  ->  :where(body.page-template-page-about-php) .hero-copy

   `:where()` contributes nothing to specificity, so inside a block the cascade
   is exactly the design's own, and nothing from another screen can reach it.

   That order is load-bearing, which is why the scope has to be there rather
   than a prefix. `.pad` and `.w1170` override the section they sit on below
   1200px; the prefooter's own rule overrides `.w1170` back at 768px. All three
   are plain classes, so only source order decides - and concatenating a second
   screen's stylesheet after the first interleaves two such orders. Every
   attempt to fix that by raising specificity broke something else: the goal
   grid kept its desktop padding at 1099, the prefooter gained 20px of side
   padding on a phone.

   CLASS NAMES
   -----------
   The harvester names classes per screen - `el-section-3` is a different
   element in every export - so each screen's roots are renamed:

     aliased    the design's own hooks, and every root a SHARED template part
                touches: .hero-copy, .goal-grid, .prefoot-title, .img-cover.
                One name on every screen is what lets sh-hero.php and
                sh-goals.php be one file across four inner pages.
     prefixed   everything else, by screen: .ab-* about-us, .tr-* our-trainers.
                The page scope already keeps them apart, so this is for reading
                the markup rather than for correctness.

   Two blocks sit outside any page scope, at the end:

     shared-section refinements   the newer design bundle's 768px treatment of
                the benefits bar and the FAQ. They belong to sections several
                inner pages render, so scoping them to one page would leave the
                others on the older behaviour.

   `check-classes.py` verifies that every class the templates emit has a rule,
   and the reverse. Run it after any rename.

   The rules below are generated. Do not edit by hand: change the extraction's
   css-assignment.json and re-run build-inner-css.sh.
   ============================================================================ */

/* ============================ fitforce-about ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-about-php) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
}

:where(body.page-template-page-about-php) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.page-template-page-about-php) .hero-crumb-current {
color: #ffffff;
}

:where(body.page-template-page-about-php) .ab-el-span {
font-weight: 700;
}

:where(body.page-template-page-about-php) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-about-php) .band-inner--1 {
padding: 120px 0 130px;
  text-align: center;
}

:where(body.page-template-page-about-php) .hero-copy {
padding: 110px 0 0;
  max-width: 760px;
}

:where(body.page-template-page-about-php) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-about-php) .hero-crumb-link {
color: #6BD1F4;
}

:where(body.page-template-page-about-php) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.page-template-page-about-php) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.page-template-page-about-php) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.page-template-page-about-php) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
  animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.page-template-page-about-php) .hero-lede {
margin: 30px 0 0;
  font-size: 1.125rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 520px;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .32s both;
}

:where(body.page-template-page-about-php) .hero-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
  animation: fffadeup 1s var(--ff-ease) .46s both;
}

:where(body.page-template-page-about-php) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.page-template-page-about-php) .hero-note {
margin-top: 34px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.7;
  color: #ffffff;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) .58s both;
}

:where(body.page-template-page-about-php) .ab-shared-section {
width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-about-php) .ab-shared-section--1 {
padding: 100px 0 110px;
}

:where(body.page-template-page-about-php) .ab-shared-section--2 {
padding: 110px 0 0;
}

:where(body.page-template-page-about-php) .ab-shared-section--3 {
padding: 110px 0 120px;
}

:where(body.page-template-page-about-php) .ab-shared-p {
font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
}

:where(body.page-template-page-about-php) .ab-shared-p--1 {
margin: 20px 0 0;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--2 {
margin: 22px 0 0;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--3 {
margin: 28px 0 0;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--4 {
margin: 0;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--5 {
margin: 20px 0 0;
  max-width: 460px;
}

:where(body.page-template-page-about-php) .ab-shared-p--6 {
margin: 20px 0 0;
  max-width: 480px;
}

:where(body.page-template-page-about-php) .ab-shared-p--7 {
margin: 20px 0 0;
  max-width: 520px;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--8 {
margin: 24px 0 0;
}

:where(body.page-template-page-about-php) .ab-shared-p--9 {
margin: 28px 0 0;
  max-width: 740px;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--10 {
margin: 30px 0 0;
  max-width: 520px;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-p--11 {
margin: 64px 0 0;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-shared-h2 {
font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.page-template-page-about-php) .ab-shared-h2--1 {
margin: 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-about-php) .ab-shared-h2--2 {
margin: 80px 0 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-about-php) .ab-shared-h2--3 {
margin: 0;
  font-size: 2.375rem;
  line-height: 1.25;
  max-width: 460px;
}

:where(body.page-template-page-about-php) .ab-shared-h2--4 {
margin: 64px 0 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-about-php) .ab-shared-div-16 {
display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}

:where(body.page-template-page-about-php) .ab-shared-div-16--1 {
margin-top: 44px;
}

:where(body.page-template-page-about-php) .ab-shared-div-16--2 {
margin-top: 64px;
}

:where(body.page-template-page-about-php) .ab-shared-div-10 {
background: #F9F5ED;
  border-radius: 12px;
  padding: 60px 60px 56px;
  text-align: center;
  padding-top: 78px;
}

:where(body.page-template-page-about-php) .ab-shared-div-11 {
width: 370px;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 12px;
}

:where(body.page-template-page-about-php) .ab-shared-img-4 {
display: block;
  width: 100%;
  object-fit: cover;
}

:where(body.page-template-page-about-php) .ab-shared-img-4--1 {
aspect-ratio: 1/1;
}

:where(body.page-template-page-about-php) .ab-shared-img-4--2 {
height: 100%;
}

:where(body.page-template-page-about-php) .ab-shared-div-14 {
margin-top: 28px;
  font-size: 1.375rem;
  font-weight: 600;
}

:where(body.page-template-page-about-php) .ab-shared-div-12 {
margin-top: 6px;
  font-size: 0.9375rem;
  color: #3A3A3A;
}

:where(body.page-template-page-about-php) .ab-shared-div-9 {
background: #F9F5ED;
  border-radius: 12px;
  padding: 40px 40px 48px;
}

:where(body.page-template-page-about-php) .ab-shared-h3 {
margin: 0;
  font-size: 1.625rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-about-php) .ab-el-section-4 {
background: #F7F2EA;
}

:where(body.page-template-page-about-php) .ab-el-div-5 {
display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
}

:where(body.page-template-page-about-php) .ab-el-div-18 {
display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px 80px 90px 90px;
  box-sizing: border-box;
}

:where(body.page-template-page-about-php) .ab-el-div-23 {
display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 36px;
}

:where(body.page-template-page-about-php) .ab-shared-p-2 {
margin: 0;
  padding-left: 18px;
  position: relative;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #2A2A2A;
  max-width: 740px;
}

:where(body.page-template-page-about-php) .ab-shared-span-3 {
position: absolute;
  left: 0;
  color: #8A8375;
}

:where(body.page-template-page-about-php) .ab-el-div-31 {
position: relative;
  min-height: 640px;
}

:where(body.page-template-page-about-php) .ab-el-div-16 {
margin-top: 40px;
  border: 1px solid #E6E3DC;
  border-radius: 10px;
  overflow: hidden;
}

:where(body.page-template-page-about-php) .ab-el-div-27 {
display: grid;
  grid-template-columns: 1.1fr 1fr 1fr 1.1fr;
  min-width: 760px;
}

:where(body.page-template-page-about-php) .ab-el-div-12 {
padding: 20px 24px;
  background: repeating-linear-gradient(135deg,#F7F2EA 0 6px,#FDFBF7 6px 12px);
  border-bottom: 1px solid #E6E3DC;
}

:where(body.page-template-page-about-php) .ab-shared-div-4 {
padding: 20px 24px;
  font-size: 1.125rem;
  font-weight: 600;
  border-bottom: 1px solid #E6E3DC;
  border-left: 1px solid #E6E3DC;
}

:where(body.page-template-page-about-php) .ab-el-div-10 {
padding: 20px 24px;
  font-size: 1.125rem;
  font-weight: 600;
  background: #F7F2EA;
  border-bottom: var(--u-row-border);
}

:where(body.page-template-page-about-php) .ab-shared-div-5 {
padding: 20px 24px;
  font-size: 1rem;
  line-height: 1.5;
  color: #3A3A3A;
  border-left: 1px solid #E6E3DC;
  border-bottom: var(--u-row-border);
}

:where(body.page-template-page-about-php) .ab-el-a-5 {
display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 36px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.page-template-page-about-php) .ab-el-div {
font-weight: 400;
  line-height: 1;
}

:where(body.page-template-page-about-php) .ab-el-div--2 {
font-size: 1.25rem;
}

:where(body.page-template-page-about-php) .ab-el-section-5 {
background: #F7F2EA;
  padding: 100px 0 110px;
}

:where(body.page-template-page-about-php) .ab-el-div-3 {
width: 1170px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

:where(body.page-template-page-about-php) .ab-el-div-14 {
border-radius: 14px;
  height: 440px;
}

:where(body.page-template-page-about-php) .ab-el-div-22 {
display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 26px;
}

:where(body.page-template-page-about-php) .ab-shared-div {
display: flex;
  gap: 10px;
  font-size: 1rem;
  font-weight: 700;
}

:where(body.page-template-page-about-php) .ab-shared-span-2 {
color: #8A8375;
  font-weight: 400;
}

:where(body.page-template-page-about-php) .ab-shared-span-4 {
font-size: 1.125rem;
}

:where(body.page-template-page-about-php) .ab-el-div-9 {
margin-top: 48px;
  border-radius: 14px;
  padding: 64px 70px 60px;
  background-color: #F6F2EA;
}

:where(body.page-template-page-about-php) .ab-el-p-5 {
margin: 0;
  font-size: 1.6875rem;
  line-height: 1.55;
  font-weight: 500;
  letter-spacing: -0.01em;
  max-width: 1010px;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .ab-el-div-19 {
margin-top: 32px;
  font-size: 1rem;
  color: #2A2A2A;
}

:where(body.page-template-page-about-php) .prefoot {
position: relative;
  margin-top: 150px;
  background: #12181D;
  overflow: hidden;
}

:where(body.page-template-page-about-php) .prefoot-title {
margin: 0;
  font-size: 2.625rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #ffffff;
}

:where(body.page-template-page-about-php) .prefoot-text {
margin: 22px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 620px;
  text-wrap: pretty;
}

:where(body.page-template-page-about-php) .prefoot-cta-wrap {
margin-top: 40px;
}

:where(body.page-template-page-about-php) .prefoot-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 21px 34px;
  border-radius: 6px;
}

:where(body.page-template-page-about-php) .cmp-cell {
--u-row-border: 1px solid #E6E3DC;
}

:where(body.page-template-page-about-php) .cmp-cell--last {
--u-row-border: none;
}

:where(body.page-template-page-about-php) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.page-template-page-about-php) .hero-cta:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.page-template-page-about-php) .ab-el-a-5:hover {
color: #3BB9E4;
}

:where(body.page-template-page-about-php) .prefoot-cta:hover {
background: #37B2E2;
  color: #ffffff;
}





/* ============================ fitforce-trainers ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffgallery { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.post-type-archive-trainers) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
}

:where(body.post-type-archive-trainers) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.post-type-archive-trainers) .hero-crumb-current {
color: #ffffff;
}

:where(body.post-type-archive-trainers) .goal-icon {
display: block;
  width: 44px;
  height: 44px;
}

:where(body.post-type-archive-trainers) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
}

:where(body.post-type-archive-trainers) .hero-copy {
padding: 96px 0 0;
  max-width: 760px;
}

:where(body.post-type-archive-trainers) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.post-type-archive-trainers) .hero-crumb-link {
color: #6BD1F4;
}

:where(body.post-type-archive-trainers) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.post-type-archive-trainers) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.post-type-archive-trainers) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.post-type-archive-trainers) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
}

:where(body.post-type-archive-trainers) .hero-line-inner--1 {
animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.post-type-archive-trainers) .hero-line-inner--2 {
animation: ffheroline 1s var(--ff-ease) .17s forwards;
}

:where(body.post-type-archive-trainers) .hero-lede {
margin: 30px 0 0;
  font-size: 1.125rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 460px;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .32s both;
}

:where(body.post-type-archive-trainers) .hero-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
  animation: fffadeup 1s var(--ff-ease) .46s both;
}

:where(body.post-type-archive-trainers) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.post-type-archive-trainers) .hero-note {
margin-top: 34px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.7;
  color: #ffffff;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) .58s both;
}

:where(body.post-type-archive-trainers) .team {
width: 1170px;
  margin: 0 auto;
  padding: 100px 0 110px;
}

:where(body.post-type-archive-trainers) .trainers-grid {
display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 32px;
  align-items: stretch;
}

:where(body.post-type-archive-trainers) .trainer-card {
background: #ffffff;
  border: 1px solid #E6E3DC;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 14px rgba(16,16,16,0.05);
}

:where(body.post-type-archive-trainers) .trainer-photo {
position: relative;
  height: 300px;
  flex: none;
  background: #DDD6C9;
}

:where(body.post-type-archive-trainers) .trainer-name {
padding: 26px 26px 0;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.post-type-archive-trainers) .trainer-skills {
padding: 20px 26px 0;
  display: flex;
  flex-direction: column;
  gap: 9px;
  flex: 1;
}

:where(body.post-type-archive-trainers) .trainer-skill {
display: flex;
  gap: 10px;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #2A2A2A;
}

:where(body.post-type-archive-trainers) .trainer-skill-bullet {
color: #8A8375;
}

:where(body.post-type-archive-trainers) .trainer-bio {
margin: 15px 0 0;
  font-size: 1rem;
  line-height: 1.6;
  font-style: italic;
  color: #3A3A3A;
}

:where(body.post-type-archive-trainers) .trainer-more {
padding: 22px 26px 0;
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: pointer;
}

:where(body.post-type-archive-trainers) .trainer-more-circle {
width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid #101010;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}

:where(body.post-type-archive-trainers) .trainer-chev-down {
display: block;
  width: 8px;
  height: 8px;
  border-right: 1.5px solid #101010;
  border-bottom: 1.5px solid #101010;
  transform: rotate(45deg);
  margin-bottom: 4px;
}

:where(body.post-type-archive-trainers) .trainer-chev-up {
display: block;
  width: 8px;
  height: 8px;
  border-left: 1.5px solid #101010;
  border-top: 1.5px solid #101010;
  transform: rotate(45deg);
  margin-top: 4px;
}

:where(body.post-type-archive-trainers) .trainer-more-label {
font-size: 0.9375rem;
  font-weight: 600;
}

:where(body.post-type-archive-trainers) .trainer-more-rule {
flex: 1;
  height: 1px;
  background: #E6E3DC;
}

:where(body.post-type-archive-trainers) .trainer-cta-wrap {
padding: 24px 26px 26px;
}

:where(body.post-type-archive-trainers) .trainer-cta {
display: block;
  text-align: center;
  background: #6BD1F4;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 17px 0;
  border-radius: 4px;
}

:where(body.post-type-archive-trainers) .goals {
background: #F7F2EA;
  padding: 110px 64px 120px;
}

:where(body.post-type-archive-trainers) .goals-inner {
max-width: 1720px;
  margin: 0 auto;
}

:where(body.post-type-archive-trainers) .goals-head {
text-align: center;
}

:where(body.post-type-archive-trainers) .goals-title {
margin: 0;
  font-size: 2.625rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.post-type-archive-trainers) .goals-lede {
margin: 22px 0 0;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: #2A2A2A;
}

:where(body.post-type-archive-trainers) .goals-lede-strong {
font-weight: 600;
}

:where(body.post-type-archive-trainers) .goal-grid {
margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
}

:where(body.post-type-archive-trainers) .goal-card {
background: #ffffff;
  border: 1px solid #ECE8E0;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

:where(body.post-type-archive-trainers) .goal-card-body {
padding: 26px 24px 30px;
  flex: 1;
}

:where(body.post-type-archive-trainers) .goal-title {
margin-top: 22px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.post-type-archive-trainers) .goal-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.post-type-archive-trainers) .goal-cta {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #E6E3DC;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.post-type-archive-trainers) .goal-cta-plus {
font-size: 1.375rem;
  font-weight: 400;
  line-height: 1;
}

:where(body.post-type-archive-trainers) .gallery {
padding: 110px 0 120px;
  overflow: hidden;
  padding-top: 40px;
  padding-bottom: 40px;
}

:where(body.post-type-archive-trainers) .gallery-track {
display: flex;
  gap: 24px;
  width: max-content;
  animation: ffgallery 45s linear infinite;
}

:where(body.post-type-archive-trainers) .gallery-item {
width: 426px;
  flex: none;
  border-radius: 12px;
}

:where(body.post-type-archive-trainers) .gallery-img {
display: block;
  width: 100%;
  height: 312px;
  object-fit: cover;
}

:where(body.post-type-archive-trainers) .trainer-photo-img {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 20%;
}

:where(body.post-type-archive-trainers) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.post-type-archive-trainers) .hero-cta:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.post-type-archive-trainers) .trainer-cta.tr-btn-blue:hover {
background: #4FC4EF;
  color: #ffffff;
}

:where(body.post-type-archive-trainers) .goal-cta:hover {
background: #FAF7F1;
  color: #101010;
}







/* ============================ fitforce-contact ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-contact-php) .el-header {
position: relative;
  z-index: 20;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 40px;
  padding: 0 0 0 64px;
  background: #0D1F26;
  height: 91px;
}

:where(body.page-template-page-contact-php) .goal-icon {
display: block;
  width: 44px;
  height: 44px;
}

:where(body.page-template-page-contact-php) .ct-el-section {
background: #F7F2EA;
  padding: 100px 0 110px;
}

:where(body.page-template-page-contact-php) .ct-el-div-4 {
width: 1170px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: stretch;
}

:where(body.page-template-page-contact-php) .ct-el-div-5 {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-contact-php) .ct-el-a-4 {
color: #3BB9E4;
}

:where(body.page-template-page-contact-php) .ct-el-span-2 {
padding: 0 8px;
  color: #6B6B6B;
}

:where(body.page-template-page-contact-php) .ct-el-h1 {
margin: 22px 0 0;
  font-size: 3.375rem;
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -0.01em;
  animation: fffadeup 1s var(--ff-ease) .12s both;
}

:where(body.page-template-page-contact-php) .ct-el-p {
margin: 28px 0 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #2A2A2A;
  max-width: 400px;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .2s both;
}

:where(body.page-template-page-contact-php) .ct-el-div-10 {
border-radius: 14px;
  min-height: 640px;
  position: relative;
}

:where(body.page-template-page-contact-php) .ct-el-img {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-contact-php) .goals {
padding: 110px 64px 120px;
}

:where(body.page-template-page-contact-php) .goals-inner {
max-width: 1720px;
  margin: 0 auto;
}

:where(body.page-template-page-contact-php) .goals-head {
text-align: center;
}

:where(body.page-template-page-contact-php) .goals-title {
margin: 0;
  font-size: 2.625rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.page-template-page-contact-php) .goals-lede {
margin: 22px 0 0;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: #2A2A2A;
}

:where(body.page-template-page-contact-php) .goals-lede-strong {
font-weight: 600;
}

:where(body.page-template-page-contact-php) .goal-grid {
margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
}

:where(body.page-template-page-contact-php) .goal-card {
background: #ffffff;
  border: 1px solid #ECE8E0;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-contact-php) .goal-card-body {
padding: 26px 24px 30px;
  flex: 1;
}

:where(body.page-template-page-contact-php) .goal-title {
margin-top: 22px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-contact-php) .goal-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.page-template-page-contact-php) .goal-cta {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #E6E3DC;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.page-template-page-contact-php) .goal-cta-plus {
font-size: 1.375rem;
  font-weight: 400;
  line-height: 1;
}

:where(body.page-template-page-contact-php) #ffroot .el-header {
border-bottom: none;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gform_wrapper {
margin-top: 40px;
  animation: fffadeup 1s var(--ff-ease) .3s both;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gform_fields {
row-gap: 22px;
  column-gap: 20px;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield_label {
display: block;
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield input[type="text"], :where(body.page-template-page-contact-php) #md-contact-hero .gfield input[type="tel"], :where(body.page-template-page-contact-php) #md-contact-hero .gfield input[type="email"], :where(body.page-template-page-contact-php) #md-contact-hero .gfield textarea {
display: block;
  width: 100%;
  box-sizing: border-box;
  margin-top: 10px;
  padding: 15px 16px;
  font-size: 1rem;
  font-family: inherit;
  border: 1px solid #E0DACE;
  border-radius: 6px;
  background: #ffffff;
  color: #101010;
  /* Gravity sizes its controls to a fixed height from its own custom properties -
     45px here - and with border-box that eats into the padding: the input came out
     6px shorter than the design's, which sets no height at all and lets the text
     and the 15px padding decide. Below 641px it also switches to a taller control
     with line-height 32px, which is the same fix. */
  height: auto;
  line-height: normal;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield textarea {
resize: vertical;
  /* Gravity gives its textarea line-height 1.5; the design declares none, so the
     font's own `normal` is what it draws - about 4px tighter per line. */
  line-height: normal;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-box {
display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding: 0 16px;
  border: 1px solid #E0DACE;
  border-radius: 6px;
  background: #ffffff;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-flag {
display: block;
  flex: none;
  border-radius: 2px;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-prefix {
font-size: 1rem;
  color: #101010;
  flex: none;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-box .ginput_container {
flex: 1;
  min-width: 0;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-box input[type="tel"], :where(body.page-template-page-contact-php) #md-contact-hero .ff-phone-box input[type="text"] {
display: block;
  width: 100%;
  min-width: 0;
  height: auto;
  line-height: normal;
  margin-top: 0;
  padding: 15px 0;
  font-size: 1rem;
  font-family: inherit;
  border: none;
  border-radius: 0;
  background: transparent;
  color: #101010;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gform_footer {
display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 28px;
  padding: 0;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gform_footer input[type="submit"], :where(body.page-template-page-contact-php) #md-contact-hero .gform_footer button {
flex: none;
  width: auto;
  background: #6BD1F4;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 17px 44px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  /* Gravity's own button defaults, which the design's rule has no counterpart
     for: an 8px bottom margin inside the flex row, position:relative for a
     spinner it does not use here, and centred text it inherits from a wrapper. */
  margin-bottom: 0;
  position: static;
  text-align: center;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gform_footer input[type="submit"]:hover, :where(body.page-template-page-contact-php) #md-contact-hero .gform_footer button:hover {
background: #4FC4EF;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-form-terms {
font-size: 0.8125rem;
  line-height: 1.55;
  color: #5A564E;
  max-width: 300px;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-form-terms a {
text-decoration: underline;
  color: #5A564E;
}

:where(body.page-template-page-contact-php) #md-contact-hero .ff-field-tracking {
display: none;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield_required {
display: none;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield_error input[type="text"], :where(body.page-template-page-contact-php) #md-contact-hero .gfield_error input[type="tel"], :where(body.page-template-page-contact-php) #md-contact-hero .gfield_error textarea {
border-color: #C0392B;
}

:where(body.page-template-page-contact-php) #md-contact-hero .gfield_validation_message, :where(body.page-template-page-contact-php) #md-contact-hero .validation_message {
margin-top: 8px;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #C0392B;
  background: none;
  border: none;
  padding: 0;
}



:where(body.page-template-page-contact-php) .goal-cta:hover {
background: #FAF7F1;
  color: #101010;
}





/* ============================ fitforce-mg ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-muscle-gain-php) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
}

:where(body.page-template-page-muscle-gain-php) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.page-template-page-muscle-gain-php) .hero-crumb-current {
color: #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-span {
font-weight: 700;
}

:where(body.page-template-page-muscle-gain-php) .band-inner {
width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-muscle-gain-php) .band-inner--1 {
position: relative;
  z-index: 2;
}

:where(body.page-template-page-muscle-gain-php) .band-inner--2 {
position: relative;
  z-index: 2;
  padding: 120px 0 130px;
  text-align: center;
}

:where(body.page-template-page-muscle-gain-php) .hero-copy {
padding: 72px 0 0;
  max-width: 760px;
}

:where(body.page-template-page-muscle-gain-php) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-muscle-gain-php) .hero-crumb-link {
color: rgba(255,255,255,0.85);
}

:where(body.page-template-page-muscle-gain-php) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.page-template-page-muscle-gain-php) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.page-template-page-muscle-gain-php) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
}

:where(body.page-template-page-muscle-gain-php) .hero-line-inner--1 {
animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.page-template-page-muscle-gain-php) .hero-line-inner--2 {
animation: ffheroline 1s var(--ff-ease) .17s forwards;
}

:where(body.page-template-page-muscle-gain-php) .hero-lede {
margin: 30px 0 0;
  font-size: 1.125rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 580px;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .32s both;
}

:where(body.page-template-page-muscle-gain-php) .hero-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
  animation: fffadeup 1s var(--ff-ease) .46s both;
}

:where(body.page-template-page-muscle-gain-php) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.page-template-page-muscle-gain-php) .hero-note {
margin-top: 34px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.7;
  color: #ffffff;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) .58s both;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div {
font-size: 1.125rem;
  font-weight: 500;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div--2 {
margin: 24px 0 0;
  line-height: 1.55;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-section {
width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-section--1 {
padding: 100px 0 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-section--2 {
padding: 100px 0 110px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-section--3 {
padding: 110px 0 120px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p {
font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
  text-wrap: pretty;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--1 {
margin: 28px 0 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--2 {
margin: 20px 0 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--3 {
margin: 22px 0 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--4 {
margin: 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--5 {
margin: 22px 0 0;
  max-width: 1100px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p--6 {
margin: 30px 0 0;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2 {
font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--1 {
margin: 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--2 {
margin: 0;
  font-size: 2.375rem;
  line-height: 1.25;
  color: #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--3 {
margin: 0;
  font-size: 2.25rem;
  line-height: 1.25;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--4 {
margin: 0;
  font-size: 2.375rem;
  line-height: 1.25;
  max-width: 380px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--5 {
margin: 56px 0 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-h2--6 {
margin: 64px 0 0;
  font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-section-2 {
background: #F7F2EA;
  padding: 100px 0 110px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-5 {
width: 1170px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-21 {
display: flex;
  flex-direction: column;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-21--1 {
gap: 22px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-21--2 {
gap: 30px;
  margin-top: 44px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div {
display: flex;
  align-items: center;
  gap: 14px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img {
display: block;
  width: 22px;
  height: 22px;
  flex: none;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img--1 {
margin-top: 2px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-4 {
font-size: 1.0625rem;
  font-weight: 600;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p-2 {
font-size: 0.9375rem;
  color: #3A3A3A;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p-2--1 {
margin: 10px 0 0 36px;
  line-height: 1.65;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-p-2--2 {
margin: 22px 0 0;
  line-height: 1.7;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-15 {
border-radius: 10px;
  overflow: hidden;
  height: 500px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img-4 {
display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-14 {
display: grid;
  gap: 32px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-14--1 {
margin-top: 80px;
  grid-template-columns: 1fr 1fr;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-14--2 {
margin-top: 44px;
  grid-template-columns: repeat(3,1fr);
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-14--3 {
margin-top: 56px;
  grid-template-columns: repeat(3,1fr);
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-8 {
background: #F9F5ED;
  border-radius: 12px;
  padding: 32px 32px 36px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-12 {
font-size: 1.375rem;
  font-weight: 600;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-7 {
display: inline-block;
  margin-top: 14px;
  background: #EDE6D8;
  border-radius: 5px;
  padding: 7px 12px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-11 {
margin-top: 90px;
  background: #F9F5ED;
  border-radius: 16px;
  padding: 70px 60px 76px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-19 {
display: grid;
  grid-template-columns: 1fr 1fr;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-19--1 {
gap: 80px;
  align-items: start;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-19--2 {
gap: 14px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-2 {
display: flex;
  gap: 14px;
  align-items: flex-start;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-3 {
font-size: 1rem;
  line-height: 1.6;
  color: #2A2A2A;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-17 {
border-radius: 10px;
  height: 440px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-section-2 {
max-width: 1720px;
  margin: 0 auto;
  padding: 150px 64px 0;
  display: grid;
  grid-template-columns: 480px 1fr;
  gap: 90px;
  align-items: stretch;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-22 {
display: flex;
  flex-direction: column;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-h2-2 {
margin: 0;
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  max-width: 420px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-p-2 {
margin: 28px 0 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #2A2A2A;
  max-width: 500px;
  text-wrap: pretty;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-3 {
display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-21 {
display: flex;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img-6 {
display: block;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img-6--1 {
margin-left: -12px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-29 {
font-size: 1.0625rem;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-26 {
display: flex;
  gap: 14px;
  margin-top: auto;
  padding-top: 90px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-button {
width: 52px;
  height: 52px;
  border: none;
  padding: 0;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-img-8 {
display: block;
  width: 52px;
  height: 52px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-27 {
min-width: 0;
  display: flex;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-24 {
display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  min-width: 0;
  flex: 1;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-12 {
border: 1px solid #E6E3DC;
  border-radius: 14px;
  padding: 22px;
  flex: none;
  width: calc(50% - 14px);
  box-sizing: border-box;
  background: #ffffff;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-16 {
position: relative;
  height: 300px;
  border-radius: 8px;
  overflow: hidden;
  background: repeating-linear-gradient(135deg,#E7E1D6 0 12px,#EFEAE0 12px 24px);
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-span-2 {
position: absolute;
  right: 10px;
  top: 10px;
  background: #fff;
  border-radius: 5px;
  padding: 5px 10px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-4 {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-31 {
font-size: 1.375rem;
  font-weight: 600;
  white-space: nowrap;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-div-10 {
background: #0E1B3C;
  color: #fff;
  border-radius: 6px;
  padding: 7px 12px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  white-space: nowrap;
}

:where(body.page-template-page-muscle-gain-php) .mg-el-p-3 {
margin: 16px 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #3A3A3A;
  max-height: 122px;
  overflow: auto;
  padding-right: 10px;
}

:where(body.page-template-page-muscle-gain-php) .band-bg {
position: relative;
  margin-top: 150px;
  overflow: hidden;
}

:where(body.page-template-page-muscle-gain-php) .band-bg--1 {
background: #0D1F26;
  padding: 110px 0 120px;
}

:where(body.page-template-page-muscle-gain-php) .band-bg--2 {
background: #12181D;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-9 {
background: #ffffff;
  border-radius: 12px;
  padding: 32px 30px 40px;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-div-11 {
font-size: 1.25rem;
  font-weight: 600;
}

:where(body.page-template-page-muscle-gain-php) .prefoot-title {
margin: 0;
  font-size: 2.625rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .prefoot-text {
margin: 22px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 620px;
  text-wrap: pretty;
}

:where(body.page-template-page-muscle-gain-php) .prefoot-cta-wrap {
margin-top: 40px;
}

:where(body.page-template-page-muscle-gain-php) .prefoot-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 21px 34px;
  border-radius: 6px;
}

:where(body.page-template-page-muscle-gain-php) .ba-photo {
display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-muscle-gain-php) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.page-template-page-muscle-gain-php) .hero-cta:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.page-template-page-muscle-gain-php) .mg-shared-button:hover {
opacity: 0.7;
}

:where(body.page-template-page-muscle-gain-php) .prefoot-cta:hover {
background: #37B2E2;
  color: #ffffff;
}





/* ============================ fitforce-sharjah ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-location-php) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
}

:where(body.page-template-page-location-php) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-location-php) .img-cover--1 {
object-position: center;
}

:where(body.page-template-page-location-php) .hero-crumb-current {
color: #ffffff;
}

:where(body.page-template-page-location-php) .prob-label {
display: flex;
  align-items: center;
}

:where(body.page-template-page-location-php) .prob-label--2 {
gap: 12px;
}

:where(body.page-template-page-location-php) .goal-icon {
display: block;
  width: 44px;
  height: 44px;
}

:where(body.page-template-page-location-php) .ba-count-num {
font-weight: 700;
}

:where(body.page-template-page-location-php) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-location-php) .band-inner--1 {
padding: 120px 0 130px;
  text-align: center;
}

:where(body.page-template-page-location-php) .hero-copy {
padding: 72px 0 0;
  max-width: 760px;
}

:where(body.page-template-page-location-php) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-location-php) .hero-crumb-link {
color: rgba(255,255,255,0.85);
}

:where(body.page-template-page-location-php) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.page-template-page-location-php) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.page-template-page-location-php) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
}

:where(body.page-template-page-location-php) .hero-line-inner--1 {
animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.page-template-page-location-php) .hero-line-inner--2 {
animation: ffheroline 1s var(--ff-ease) .17s forwards;
}

:where(body.page-template-page-location-php) .hero-lede {
margin: 30px 0 0;
  font-size: 1.125rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 420px;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .32s both;
}

:where(body.page-template-page-location-php) .hero-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
  animation: fffadeup 1s var(--ff-ease) .46s both;
}

:where(body.page-template-page-location-php) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.page-template-page-location-php) .hero-note {
margin-top: 34px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.7;
  color: #ffffff;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) .58s both;
}

:where(body.page-template-page-location-php) .list-icon {
display: block;
  flex: none;
}

:where(body.page-template-page-location-php) .list-icon--2 {
width: 24px;
  height: 24px;
}

:where(body.page-template-page-location-php) .list-icon--3 {
width: 22px;
  height: 22px;
}

:where(body.page-template-page-location-php) .intro-band {
width: 1170px;
  margin: 0 auto;
  padding: 110px 0 120px;
}

:where(body.page-template-page-location-php) .sec-title {
margin: 0;
  font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.page-template-page-location-php) .sec-title--1 {
font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.page-template-page-location-php) .sec-title--2 {
font-size: 2.375rem;
  line-height: 1.25;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .sec-title--3 {
font-size: 2.375rem;
  line-height: 1.25;
  max-width: 420px;
}

:where(body.page-template-page-location-php) .sec-title--4 {
font-size: 2.375rem;
  line-height: 1.25;
  max-width: 780px;
}

:where(body.page-template-page-location-php) .sec-title--6 {
font-size: 2.625rem;
}

:where(body.page-template-page-location-php) .intro-text {
font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .intro-text--1 {
margin: 26px 0 0;
  max-width: 1184px;
}

:where(body.page-template-page-location-php) .intro-text--2 {
margin: 34px 0 0;
  max-width: 1179px;
}

:where(body.page-template-page-location-php) .sec-band {
background: #F7F2EA;
  padding: 100px 0 110px;
}

:where(body.page-template-page-location-php) .stack1170 {
width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-location-php) .hiw-lede {
margin: 18px 0 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #2A2A2A;
}

:where(body.page-template-page-location-php) .grid4 {
display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
}

:where(body.page-template-page-location-php) .grid4--1 {
margin-top: 44px;
}

:where(body.page-template-page-location-php) .grid4--2 {
margin-top: 56px;
}

:where(body.page-template-page-location-php) .hiw-step {
background: #ffffff;
  border-radius: 12px;
  padding: 30px 28px 34px;
}

:where(body.page-template-page-location-php) .hiw-step-title {
font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #101010;
}

:where(body.page-template-page-location-php) .card-title {
font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-location-php) .card-title--1 {
margin-top: 16px;
  font-size: 1.25rem;
}

:where(body.page-template-page-location-php) .card-title--2 {
margin-top: 22px;
  font-size: 1.25rem;
}

:where(body.page-template-page-location-php) .card-title--3 {
font-size: 1.5rem;
}

:where(body.page-template-page-location-php) .hiw-step-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .areas-band {
background: #ffffff;
  padding: 110px 0 120px;
}

:where(body.page-template-page-location-php) .areas-head {
display: grid;
  grid-template-columns: 1fr 400px;
  gap: 40px;
  align-items: end;
}

:where(body.page-template-page-location-php) .areas-lede {
margin: 0;
  font-size: 1rem;
  line-height: 1.65;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .areas-chips {
display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 16px 24px;
  margin-top: 52px;
}

:where(body.page-template-page-location-php) .area-chip {
display: flex;
  align-items: center;
  gap: 12px;
  background: #F9F5ED;
  border-radius: 8px;
  padding: 18px 24px;
}

:where(body.page-template-page-location-php) .area-chip-label {
font-size: 1rem;
  font-weight: 600;
}

:where(body.page-template-page-location-php) .body-text {
font-size: 1rem;
  line-height: 1.7;
  color: #3A3A3A;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .body-text--1 {
margin: 44px 0 0;
  max-width: 900px;
}

:where(body.page-template-page-location-php) .body-text--2 {
margin: 48px 0 0;
  max-width: 1170px;
}

:where(body.page-template-page-location-php) .note-text {
font-size: 1rem;
  line-height: 1.7;
}

:where(body.page-template-page-location-php) .note-text--1 {
margin: 16px 0 0;
  color: #22333B;
}

:where(body.page-template-page-location-php) .note-text--2 {
margin: 24px 0 0;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .areas-note-link {
font-weight: 700;
  text-decoration: underline;
  color: #101010;
}

:where(body.page-template-page-location-php) .incl-lede {
margin: 18px 0 0;
  font-size: 1rem;
  line-height: 1.65;
  color: #2A2A2A;
  max-width: 900px;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .incl-card {
background: #ffffff;
  border: 1px solid #ECE8E0;
  border-radius: 4px;
  overflow: hidden;
}

:where(body.page-template-page-location-php) .incl-img {
display: block;
  width: 100%;
  height: 160px;
  object-fit: cover;
}

:where(body.page-template-page-location-php) .incl-card-body {
padding: 20px 18px 26px;
}

:where(body.page-template-page-location-php) .incl-card-title {
font-size: 1.1875rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-location-php) .incl-card-text {
margin: 12px 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .panel-cta {
display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 36px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.page-template-page-location-php) .cta-plus {
font-weight: 400;
  line-height: 1;
}

:where(body.page-template-page-location-php) .cta-plus--1 {
font-size: 1.25rem;
}

:where(body.page-template-page-location-php) .cta-plus--3 {
font-size: 1.375rem;
}

:where(body.page-template-page-location-php) .female-band {
background: #ffffff;
}

:where(body.page-template-page-location-php) .pair-grid {
display: grid;
  grid-template-columns: 1fr 1fr;
}

:where(body.page-template-page-location-php) .pair-grid--1 {
align-items: stretch;
}

:where(body.page-template-page-location-php) .pair-grid--2 {
gap: 14px;
}

:where(body.page-template-page-location-php) .female-copy {
display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px 80px 90px 90px;
  box-sizing: border-box;
}

:where(body.page-template-page-location-php) .female-text {
font-size: 0.9375rem;
  line-height: 1.7;
  color: #2A2A2A;
  max-width: 780px;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .female-text--1 {
margin: 18px 0 0;
}

:where(body.page-template-page-location-php) .female-text--2 {
margin: 30px 0 0;
}

:where(body.page-template-page-location-php) .female-photo {
position: relative;
  min-height: 480px;
}

:where(body.page-template-page-location-php) .prob-wrap {
background: #F7F2EA;
  padding: 110px 64px 120px;
}

:where(body.page-template-page-location-php) .band1170 {
max-width: 1170px;
  margin: 0 auto;
}

:where(body.page-template-page-location-php) .band1170--2 {
position: relative;
  z-index: 2;
}

:where(body.page-template-page-location-php) .prob-track {
display: grid;
  grid-template-columns: repeat(4,1fr);
  grid-template-rows: auto 1fr;
  gap: 2px;
  margin-top: 64px;
  border-radius: 12px;
  overflow: hidden;
}

:where(body.page-template-page-location-php) .prob-col {
display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 2px;
}

:where(body.page-template-page-location-php) .prob-problem {
padding: 28px 26px 30px;
  background-color: #EDE6DA;
}

:where(body.page-template-page-location-php) .prob-label-text {
font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

:where(body.page-template-page-location-php) .prob-label-text--1 {
color: #101010;
}

:where(body.page-template-page-location-php) .prob-label-text--2 {
color: #1D9AD0;
}

:where(body.page-template-page-location-php) .prob-title {
margin: 16px 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-location-php) .prob-fix {
padding: 26px 26px 30px;
  flex: 1;
  background-color: #FFFFFF;
}

:where(body.page-template-page-location-php) .goals {
position: relative;
  background: #0D1F26;
  padding: 110px 64px 130px;
  overflow: hidden;
}

:where(body.page-template-page-location-php) .prog-overlay {
position: absolute;
  inset: 0;
  background: rgba(10,18,22,0.45);
}

:where(body.page-template-page-location-php) .goals-lede {
margin: 20px 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #E8EEF1;
}

:where(body.page-template-page-location-php) .goal-grid {
margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 32px;
}

:where(body.page-template-page-location-php) .card-white {
background: #ffffff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-location-php) .card-white--1 {
border-radius: 16px;
  box-shadow: 0 2px 14px rgba(16,16,16,0.05);
}

:where(body.page-template-page-location-php) .card-white--2 {
border-radius: 8px;
}

:where(body.page-template-page-location-php) .goal-card-body {
padding: 26px 24px 30px;
  flex: 1;
}

:where(body.page-template-page-location-php) .goal-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .goal-cta {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #E6E3DC;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.page-template-page-location-php) .res-band {
max-width: 1720px;
  margin: 0 auto;
  padding: 150px 64px 0;
  display: grid;
  grid-template-columns: 480px 1fr;
  gap: 90px;
  align-items: stretch;
  padding-top: 100px;
  padding-bottom: 100px;
}

:where(body.page-template-page-location-php) .ba-copy {
display: flex;
  flex-direction: column;
}

:where(body.page-template-page-location-php) .ba-heading {
margin: 0;
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  max-width: 420px;
}

:where(body.page-template-page-location-php) .ba-lede {
margin: 28px 0 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #2A2A2A;
  max-width: 500px;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .ba-social {
display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
}

:where(body.page-template-page-location-php) .ba-avatars {
display: flex;
}

:where(body.page-template-page-location-php) .ba-avatar {
display: block;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ffffff;
}

:where(body.page-template-page-location-php) .ba-avatar--1 {
margin-left: -12px;
}

:where(body.page-template-page-location-php) .ba-count {
font-size: 1.0625rem;
}

:where(body.page-template-page-location-php) .ba-arrows {
display: flex;
  gap: 14px;
  margin-top: auto;
  padding-top: 90px;
}

:where(body.page-template-page-location-php) .ba-arrow {
width: 52px;
  height: 52px;
  border: none;
  padding: 0;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

:where(body.page-template-page-location-php) .ba-arrow-icon {
display: block;
  width: 52px;
  height: 52px;
}

:where(body.page-template-page-location-php) .ba-wrap {
min-width: 0;
  display: flex;
}

:where(body.page-template-page-location-php) .ba-track {
display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  min-width: 0;
  flex: 1;
}

:where(body.page-template-page-location-php) .ba-card {
border: 1px solid #E6E3DC;
  border-radius: 14px;
  padding: 22px;
  flex: none;
  width: calc(50% - 14px);
  box-sizing: border-box;
  background: #ffffff;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-location-php) .ba-img {
position: relative;
  height: 300px;
  border-radius: 8px;
  overflow: hidden;
  background: repeating-linear-gradient(135deg,#E7E1D6 0 12px,#EFEAE0 12px 24px);
}

:where(body.page-template-page-location-php) .ba-photo {
display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-location-php) .ba-badge {
position: absolute;
  right: 10px;
  top: 10px;
  background: #fff;
  border-radius: 5px;
  padding: 5px 10px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

:where(body.page-template-page-location-php) .meta-row {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

:where(body.page-template-page-location-php) .meta-row--1 {
margin-top: 24px;
}

:where(body.page-template-page-location-php) .meta-row--2 {
padding: 24px 26px 0;
}

:where(body.page-template-page-location-php) .ba-title {
font-size: 1.375rem;
  font-weight: 600;
  white-space: nowrap;
}

:where(body.page-template-page-location-php) .ba-weeks {
background: #0E1B3C;
  color: #fff;
  border-radius: 6px;
  padding: 7px 12px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  white-space: nowrap;
}

:where(body.page-template-page-location-php) .ba-quote {
margin: 16px 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #3A3A3A;
  max-height: 122px;
  overflow: auto;
  padding-right: 10px;
}

:where(body.page-template-page-location-php) .team-wrap {
margin-top: 0;
  background: #F7F2EA;
  padding: 110px 0 120px;
}

:where(body.page-template-page-location-php) .team-head {
text-align: center;
}

:where(body.page-template-page-location-php) .team-lede {
margin: 22px 0 0;
  font-size: 1.0625rem;
  color: #2A2A2A;
}

:where(body.page-template-page-location-php) .trainers-grid {
width: 1146px;
  margin: 64px auto 0;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 32px;
  align-items: stretch;
}

:where(body.page-template-page-location-php) .trainer-photo {
position: relative;
  height: 230px;
  flex: none;
  background: #DDD6C9;
}

:where(body.page-template-page-location-php) .trainer-profile {
font-size: 0.9375rem;
  font-weight: 600;
  color: #101010;
}

:where(body.page-template-page-location-php) .trainer-skills {
padding: 22px 26px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

:where(body.page-template-page-location-php) .tr-skill {
display: flex;
  gap: 10px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  color: #2A2A2A;
}

:where(body.page-template-page-location-php) .skill-dot {
color: #8A8375;
}

:where(body.page-template-page-location-php) .trainer-bio {
margin: 14px 0 0;
  font-size: 1rem;
  line-height: 1.6;
  font-style: italic;
  color: #3A3A3A;
}

:where(body.page-template-page-location-php) .trainer-more {
padding: 22px 26px 0;
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: pointer;
  margin-top: auto;
}

:where(body.page-template-page-location-php) .trainer-more-icon {
width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid #101010;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}

:where(body.page-template-page-location-php) .chev-down {
display: block;
  width: 8px;
  height: 8px;
  border-right: 1.5px solid #101010;
  border-bottom: 1.5px solid #101010;
  transform: rotate(45deg);
  margin-bottom: 4px;
}

:where(body.page-template-page-location-php) .chev-up {
display: block;
  width: 8px;
  height: 8px;
  border-left: 1.5px solid #101010;
  border-top: 1.5px solid #101010;
  transform: rotate(45deg);
  margin-top: 4px;
}

:where(body.page-template-page-location-php) .trainer-more-label {
font-size: 0.9375rem;
  font-weight: 600;
}

:where(body.page-template-page-location-php) .trainer-rule {
flex: 1;
  height: 1px;
  background: #E6E3DC;
}

:where(body.page-template-page-location-php) .trainer-cta {
padding: 24px 26px 26px;
}

:where(body.page-template-page-location-php) .btn-blue {
display: block;
  text-align: center;
  background: #6BD1F4;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 17px 0;
  border-radius: 4px;
}

:where(body.page-template-page-location-php) .team-more-wrap {
display: flex;
  justify-content: center;
  margin-top: 48px;
}

:where(body.page-template-page-location-php) .team-more-btn {
display: inline-block;
  background: #0A0A0A;
  color: #ffffff;
  border-radius: 8px;
  padding: 18px 32px;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  text-align: center;
}

:where(body.page-template-page-location-php) .band-bg {
position: relative;
  margin-top: 150px;
  background: #12181D;
  overflow: hidden;
}

:where(body.page-template-page-location-php) .prefoot-title {
margin: 0;
  font-size: 2.625rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .prefoot-text {
margin: 22px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 520px;
  text-wrap: pretty;
}

:where(body.page-template-page-location-php) .prefoot-cta-wrap {
margin-top: 40px;
}

:where(body.page-template-page-location-php) .prefoot-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 21px 34px;
  border-radius: 6px;
}

:where(body.page-template-page-location-php) .prefoot-note {
margin-top: 28px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #ffffff;
  text-transform: uppercase;
}

:where(body.page-template-page-location-php) .js-photoimg {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 20%;
}

:where(body.page-template-page-location-php) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.page-template-page-location-php) .hero-cta:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .areas-note-link:hover {
color: #3BB9E4;
}

:where(body.page-template-page-location-php) .panel-cta:hover {
color: #3BB9E4;
}

:where(body.page-template-page-location-php) .goal-cta:hover {
background: #FAF7F1;
  color: #101010;
}

:where(body.page-template-page-location-php) .ba-arrow:hover {
opacity: 0.7;
}

:where(body.page-template-page-location-php) .trainer-profile:hover {
color: #3BB9E4;
}

:where(body.page-template-page-location-php) .btn-blue:hover {
background: #4FC4EF;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .team-more-btn:hover {
background: #262626;
  color: #ffffff;
}

:where(body.page-template-page-location-php) .prefoot-cta:hover {
background: #37B2E2;
  color: #ffffff;
}





/* ============================ fitforce-trainer ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.single-trainers) .slider-row {
display: flex;
  align-items: center;
}

:where(body.single-trainers) .slider-row--2 {
gap: 32px;
}

:where(body.single-trainers) .goal-icon {
display: block;
  width: 44px;
  height: 44px;
}

:where(body.single-trainers) .session-note-strong {
font-weight: 700;
}

:where(body.single-trainers) .hero-band {
background: linear-gradient(180deg, #F7F2EA 0%, #F7F2EA 68%, #ffffff 68%);
  padding: 90px 0 0;
}

:where(body.single-trainers) .hero-col {
width: 1170px;
  margin: 0 auto;
}

:where(body.single-trainers) .hero-grid {
display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 80px;
  align-items: start;
}

:where(body.single-trainers) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.single-trainers) .hero-crumb-link {
color: #3BB9E4;
}

:where(body.single-trainers) .hero-crumb-sep {
padding: 0 8px;
  color: #6B6B6B;
}

:where(body.single-trainers) .hero-crumb-parent {
color: #6B6B6B;
}

:where(body.single-trainers) .hero-title {
margin: 28px 0 0;
  font-size: 3.625rem;
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -0.01em;
  animation: fffadeup 1s var(--ff-ease) .12s both;
}

:where(body.single-trainers) .hero-quote {
margin: 0;
  font-size: 1.375rem;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: -0.01em;
  text-wrap: pretty;
  animation: fffadeup 1s var(--ff-ease) .2s both;
}

:where(body.single-trainers) .hero-cta-row {
display: flex;
  align-items: center;
  gap: 32px;
  margin-top: 36px;
  animation: fffadeup 1s var(--ff-ease) .34s both;
}

:where(body.single-trainers) .cta-btn {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
}

:where(body.single-trainers) .cta-btn--1 {
flex: none;
}

:where(body.single-trainers) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.single-trainers) .hero-note {
font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-transform: uppercase;
}

:where(body.single-trainers) .pair-grid {
display: grid;
  gap: 32px;
  align-items: stretch;
}

:where(body.single-trainers) .pair-grid--1 {
margin-top: 56px;
  grid-template-columns: 1fr 1fr;
}

:where(body.single-trainers) .pair-grid--2 {
grid-template-columns: 365px 1fr;
  margin-top: 72px;
}

:where(body.single-trainers) .media-cell {
border-radius: 12px;
  min-height: 460px;
}

:where(body.single-trainers) .media-cell--2 {
position: relative;
  overflow: hidden;
}

:where(body.single-trainers) .hero-video {
display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #101010;
}

:where(body.single-trainers) .video-overlay {
position: absolute;
  inset: 0;
  display: var(--u-playbtndisplay);
  align-items: center;
  justify-content: center;
  pointer-events: none;
  background: rgba(0,0,0,0.12);
}

:where(body.single-trainers) .video-play {
width: 84px;
  height: 84px;
  border-radius: 50%;
  background: rgba(255,255,255,0.92);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 24px rgba(0,0,0,0.25);
  pointer-events: auto;
  cursor: pointer;
}

:where(body.single-trainers) .video-play-icon {
display: block;
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 22px solid #101010;
  margin-left: 6px;
}

:where(body.single-trainers) .img-cover {
display: block;
  width: 100%;
  object-fit: cover;
}

:where(body.single-trainers) .img-cover--1 {
height: 100%;
}

:where(body.single-trainers) .img-cover--2 {
flex: none;
  height: 440px;
}

:where(body.single-trainers) .img-cover--3 {
height: 100%;
  object-position: 50% 20%;
}

:where(body.single-trainers) .img-cover--4 {
height: 520px;
}

:where(body.single-trainers) .approach-col {
width: 1170px;
  margin: 110px auto 0;
}

:where(body.single-trainers) .approach-grid {
background: #F7F2EA;
  border-radius: 16px;
  padding: 72px 64px;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 72px;
  align-items: center;
}

:where(body.single-trainers) .sec-title {
margin: 0;
  font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.single-trainers) .sec-title--1 {
font-size: 2.375rem;
  line-height: 1.25;
}

:where(body.single-trainers) .sec-title--2 {
font-size: 2rem;
  line-height: 1.25;
}

:where(body.single-trainers) .sec-title--3 {
font-size: 2.375rem;
  line-height: 1.2;
  color: #ffffff;
}

:where(body.single-trainers) .sec-title--4 {
font-size: 2.375rem;
  line-height: 1.25;
  max-width: 420px;
}

:where(body.single-trainers) .sec-title--5 {
font-size: 2.375rem;
  line-height: 1.25;
  text-align: center;
}

:where(body.single-trainers) .sec-title--6 {
font-size: 2.625rem;
}

:where(body.single-trainers) .body-text {
font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
  text-wrap: pretty;
}

:where(body.single-trainers) .body-text--1 {
margin: 20px 0 0;
}

:where(body.single-trainers) .body-text--2 {
margin: 26px 0 0;
}

:where(body.single-trainers) .body-text--3 {
margin: 26px 0 0;
  max-width: 480px;
}

:where(body.single-trainers) .body-text--4 {
margin: 28px 0 0;
}

:where(body.single-trainers) .body-text--5 {
margin: 30px 0 0;
}

:where(body.single-trainers) .approach-photo {
border-radius: 12px;
  height: 330px;
}

:where(body.single-trainers) .gallery-col {
width: 1170px;
  margin: 110px auto 0;
  position: relative;
}

:where(body.single-trainers) .slider-arrows {
flex: none;
}

:where(body.single-trainers) .slider-arrow {
width: 64px;
  height: 64px;
  border: 1px solid #101010;
  border-radius: 50%;
  background: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

:where(body.single-trainers) .slider-chev-prev {
display: block;
  width: 12px;
  height: 12px;
  border-left: 2px solid #101010;
  border-bottom: 2px solid #101010;
  transform: rotate(45deg);
  margin-left: 5px;
}

:where(body.single-trainers) .slider-view {
flex: 1;
  overflow: hidden;
  border-radius: 14px;
  min-width: 0;
}

:where(body.single-trainers) .slider-track {
display: flex;
  width: 100%;
  transform: var(--u-slidetransform);
}

:where(body.single-trainers) .slider-chev-next {
display: block;
  width: 12px;
  height: 12px;
  border-right: 2px solid #101010;
  border-top: 2px solid #101010;
  transform: rotate(45deg);
  margin-right: 5px;
}

:where(body.single-trainers) .programs-col {
width: 1170px;
  margin: 110px auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: stretch;
}

:where(body.single-trainers) .panel-cream {
background: #F9F5ED;
  border-radius: 14px;
  padding: 48px 44px 52px;
}

:where(body.single-trainers) .list-col {
display: flex;
  flex-direction: column;
}

:where(body.single-trainers) .list-col--1 {
gap: 16px;
  margin-top: 30px;
}

:where(body.single-trainers) .list-col--2 {
gap: 14px;
}

:where(body.single-trainers) .tick-row {
display: flex;
  gap: 14px;
  align-items: flex-start;
}

:where(body.single-trainers) .tick-icon {
display: block;
  width: 22px;
  height: 22px;
  flex: none;
  margin-top: 1px;
}

:where(body.single-trainers) .bullet-text {
font-size: 1rem;
  color: #2A2A2A;
}

:where(body.single-trainers) .bullet-text--1 {
line-height: 1.55;
}

:where(body.single-trainers) .bullet-text--2 {
margin: 26px 0 0;
  line-height: 1.7;
}

:where(body.single-trainers) .bullet-text--3 {
margin-top: 32px;
}

:where(body.single-trainers) .who-col {
width: 1170px;
  margin: 110px auto 0;
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 80px;
  align-items: center;
}

:where(body.single-trainers) .bullet-list {
display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 22px;
}

:where(body.single-trainers) .bullet-row {
display: flex;
  gap: 10px;
  font-size: 1rem;
  color: #2A2A2A;
}

:where(body.single-trainers) .bullet-dot {
color: #8A8375;
}

:where(body.single-trainers) .side-photo {
border-radius: 14px;
  height: 440px;
}

:where(body.single-trainers) .quote-card {
border-radius: 14px;
  padding: 64px 70px 60px;
  background-color: #F7F2EB;
}

:where(body.single-trainers) .quote-text {
margin: 0;
  font-size: 1.6875rem;
  line-height: 1.55;
  font-weight: 500;
  letter-spacing: -0.01em;
  max-width: 1010px;
  text-wrap: pretty;
}

:where(body.single-trainers) .banner-card {
position: relative;
  border-radius: 16px;
  overflow: hidden;
}

:where(body.single-trainers) .banner-inner {
position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 40px;
}

:where(body.single-trainers) .banner-text {
margin: 20px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.96);
  max-width: 640px;
  text-wrap: pretty;
}

:where(body.single-trainers) .banner-cta-wrap {
margin-top: 36px;
}

:where(body.single-trainers) .philo-grid {
margin-top: 48px;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 32px;
}

:where(body.single-trainers) .philo-photo {
border-radius: 12px;
  height: 360px;
}

:where(body.single-trainers) .band-pad {
background: #F7F2EA;
  margin-top: 110px;
}

:where(body.single-trainers) .band-pad--1 {
padding: 100px 0 110px;
}

:where(body.single-trainers) .band-pad--2 {
padding: 110px 64px 120px;
}

:where(body.single-trainers) .panel-white {
background: #ffffff;
  border-radius: 14px;
  padding: 40px 44px 44px;
}

:where(body.single-trainers) .panel-title {
font-size: 1.3125rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.single-trainers) .session-note {
margin: 56px auto 0;
  font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
  max-width: 820px;
  text-align: center;
  text-wrap: pretty;
}

:where(body.single-trainers) .panel-cream-tight {
background: #F9F5ED;
  border-radius: 14px;
  padding: 44px 48px;
}

:where(body.single-trainers) .goals-inner {
max-width: 1720px;
  margin: 0 auto;
}

:where(body.single-trainers) .goals-head {
text-align: center;
}

:where(body.single-trainers) .goals-lede {
margin: 22px 0 0;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: #2A2A2A;
}

:where(body.single-trainers) .goals-lede-strong {
font-weight: 600;
}

:where(body.single-trainers) .goal-grid {
margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
}

:where(body.single-trainers) .goal-card {
background: #ffffff;
  border: 1px solid #ECE8E0;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

:where(body.single-trainers) .goal-card-body {
padding: 26px 24px 30px;
  flex: 1;
}

:where(body.single-trainers) .goal-title {
margin-top: 22px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.single-trainers) .goal-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.single-trainers) .goal-cta {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #E6E3DC;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.single-trainers) .goal-cta-plus {
font-size: 1.375rem;
  font-weight: 400;
  line-height: 1;
}

:where(body.single-trainers) .cta-btn.cta-btn--1:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.single-trainers) .slider-arrow:hover {
background: #F7F2EA;
}

:where(body.single-trainers) .cta-btn:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.single-trainers) .goal-cta:hover {
background: #FAF7F1;
  color: #101010;
}





/* ============================ fitforce-blog ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-blog-php) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-blog-php) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.page-template-page-blog-php) .hero-crumb-current {
color: #ffffff;
}

:where(body.page-template-page-blog-php) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
  flex: 1;
  display: flex;
  align-items: center;
}

:where(body.page-template-page-blog-php) .hero-copy {
padding: 0 0 40px;
  max-width: 760px;
}

:where(body.page-template-page-blog-php) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-blog-php) .hero-crumb-link {
color: rgba(255,255,255,0.85);
}

:where(body.page-template-page-blog-php) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.page-template-page-blog-php) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.page-template-page-blog-php) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.page-template-page-blog-php) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
  animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.page-template-page-blog-php) .blog-list {
width: 1170px;
  margin: 0 auto;
  padding: 120px 0 0;
}

:where(body.page-template-page-blog-php) .blog-grid {
display: grid;
  grid-template-columns: repeat(3,1fr);
  column-gap: 32px;
  row-gap: 64px;
  align-items: start;
}

:where(body.page-template-page-blog-php) .blog-card-thumb {
display: block;
  border-radius: 6px;
  overflow: hidden;
  height: 240px;
}

:where(body.page-template-page-blog-php) .blog-card-img {
display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:where(body.page-template-page-blog-php) .blog-card-date {
margin-top: 26px;
  font-size: 0.9375rem;
  color: #3A3A3A;
}

:where(body.page-template-page-blog-php) .blog-card-title {
margin: 12px 0 0;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-blog-php) .blog-card-title-link {
color: #101010;
}

:where(body.page-template-page-blog-php) .blog-card-excerpt {
margin: 14px 0 0;
  font-size: 1rem;
  line-height: 1.65;
  color: #3A3A3A;
}

:where(body.page-template-page-blog-php) .blog-card-more {
display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  font-size: 1rem;
  font-weight: 600;
  color: #101010;
  text-transform: uppercase;
}

:where(body.page-template-page-blog-php) .blog-card-more-plus {
font-size: 1.25rem;
  font-weight: 400;
}

:where(body.page-template-page-blog-php) .page-nav {
display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 80px;
}

:where(body.page-template-page-blog-php) .pager-btn {
width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: 1rem;
  color: #101010;
  padding: 0;
  transition: border-color 300ms cubic-bezier(.22,1,.36,1);
}

:where(body.page-template-page-blog-php) .pager-btn--1 {
cursor: pointer;
  border: 1px solid #D9D9D9;
}

:where(body.page-template-page-blog-php) .pager-btn--2 {
cursor: pointer;
  border: 1px solid #101010;
}

:where(body.page-template-page-blog-php) .pager-btn--3 {
cursor: default;
  border: 1px solid #D9D9D9;
}

:where(body.page-template-page-blog-php) .pager-icon {
display: block;
  width: 9px;
  height: 14px;
}

:where(body.page-template-page-blog-php) .band-bg {
position: relative;
  margin-top: 150px;
  background: #12181D;
  overflow: hidden;
}

:where(body.page-template-page-blog-php) .prefoot-band {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
  padding: 120px 0 130px;
  text-align: center;
}

:where(body.page-template-page-blog-php) .prefoot-title {
margin: 0;
  font-size: 2.625rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #ffffff;
}

:where(body.page-template-page-blog-php) .prefoot-text {
margin: 22px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 620px;
  text-wrap: pretty;
}

:where(body.page-template-page-blog-php) .prefoot-cta-wrap {
margin-top: 40px;
}

:where(body.page-template-page-blog-php) .prefoot-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 21px 34px;
  border-radius: 6px;
}

:where(body.page-template-page-blog-php) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.page-template-page-blog-php) .cr-pager a, :where(body.page-template-page-blog-php) .cr-pager span {
box-sizing: border-box;
  text-align: center;
}

:where(body.page-template-page-blog-php) .cr-pager a {
text-decoration: none;
}



:where(body.page-template-page-blog-php) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.page-template-page-blog-php) .blog-card-title-link:hover {
color: #3A3A3A;
}

:where(body.page-template-page-blog-php) .blog-card-more:hover {
color: #3A3A3A;
}

:where(body.page-template-page-blog-php) .pager-btn.pager-btn--1:hover {
border-color: #101010;
}

:where(body.page-template-page-blog-php) .prefoot-cta:hover {
background: #37B2E2;
  color: #ffffff;
}









/* ============================ fitforce-results ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.page-template-page-client-results-php) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

:where(body.page-template-page-client-results-php) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.page-template-page-client-results-php) .hero-crumb-current {
color: #ffffff;
}

:where(body.page-template-page-client-results-php) .goal-icon {
display: block;
  width: 44px;
  height: 44px;
}

:where(body.page-template-page-client-results-php) .hero-count-num {
font-weight: 700;
}

:where(body.page-template-page-client-results-php) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
  flex: 1;
  display: flex;
  align-items: center;
}

:where(body.page-template-page-client-results-php) .hero-copy {
padding: 0 0 40px;
  max-width: 760px;
}

:where(body.page-template-page-client-results-php) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.page-template-page-client-results-php) .hero-crumb-link {
color: rgba(255,255,255,0.85);
}

:where(body.page-template-page-client-results-php) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.page-template-page-client-results-php) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.page-template-page-client-results-php) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.page-template-page-client-results-php) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
  animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.page-template-page-client-results-php) .hero-social {
display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 28px;
  animation: fffadeup 1s var(--ff-ease) .32s both;
}

:where(body.page-template-page-client-results-php) .hero-avatars {
display: flex;
}

:where(body.page-template-page-client-results-php) .hero-avatar {
display: block;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ffffff;
}

:where(body.page-template-page-client-results-php) .hero-avatar--1 {
margin-left: -12px;
}

:where(body.page-template-page-client-results-php) .hero-count {
font-size: 1.0625rem;
  color: #ffffff;
}

:where(body.page-template-page-client-results-php) .hero-cta {
display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 19px 30px;
  border-radius: 6px;
  animation: fffadeup 1s var(--ff-ease) .46s both;
}

:where(body.page-template-page-client-results-php) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.page-template-page-client-results-php) .hero-note {
margin-top: 34px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.7;
  color: #ffffff;
  text-transform: uppercase;
  animation: fffadeup 1s var(--ff-ease) .58s both;
}

:where(body.page-template-page-client-results-php) .cr-section {
width: 1170px;
  margin: 0 auto;
  padding: 120px 0 150px;
}

:where(body.page-template-page-client-results-php) .cr-row {
display: grid;
  grid-template-columns: 1fr 1fr;
}

:where(body.page-template-page-client-results-php) .cr-row--1 {
gap: 80px;
  align-items: start;
}

:where(body.page-template-page-client-results-php) .cr-row--2 {
gap: 12px;
}

:where(body.page-template-page-client-results-php) .cr-title {
margin: 0;
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  max-width: 420px;
}

:where(body.page-template-page-client-results-php) .cr-lede {
margin: 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #2A2A2A;
  max-width: 500px;
  text-wrap: pretty;
}

:where(body.page-template-page-client-results-php) .cr-list {
display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 72px;
}

:where(body.page-template-page-client-results-php) .cr-card {
display: grid;
  grid-template-columns: 432px 1fr;
  gap: 48px;
  align-items: start;
  border: 1px solid #E6E3DC;
  border-radius: 8px;
  padding: 24px;
  background: #ffffff;
}

:where(body.page-template-page-client-results-php) .cr-photo {
position: relative;
  height: 280px;
  border-radius: 6px;
  overflow: hidden;
  background: #F1EEE8;
}

:where(body.page-template-page-client-results-php) .cr-photo-img {
display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 20%;
}

:where(body.page-template-page-client-results-php) .cr-photo-label {
position: absolute;
  top: 12px;
  right: 12px;
  background: #101010;
  color: #ffffff;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 6px 10px;
  border-radius: 4px;
  pointer-events: none;
}

:where(body.page-template-page-client-results-php) .cr-body {
padding-top: 8px;
}

:where(body.page-template-page-client-results-php) .cr-titlerow {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

:where(body.page-template-page-client-results-php) .cr-card-title {
margin: 0;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-client-results-php) .cr-card-title--2 {
font-size: 1.5rem;
}

:where(body.page-template-page-client-results-php) .cr-weeks {
flex: none;
  background: #101010;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 8px 12px;
  border-radius: 4px;
}

:where(body.page-template-page-client-results-php) .cr-quote {
margin: 20px 0 0;
  font-size: 1rem;
  line-height: 1.7;
  color: #2A2A2A;
  text-wrap: pretty;
}

:where(body.page-template-page-client-results-php) .page-nav {
display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 44px;
}

:where(body.page-template-page-client-results-php) .pager-btn {
width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: 1rem;
  color: #101010;
  padding: 0;
  transition: border-color 300ms cubic-bezier(.22,1,.36,1);
}

:where(body.page-template-page-client-results-php) .pager-btn--1 {
cursor: pointer;
  border: 1px solid #D9D9D9;
}

:where(body.page-template-page-client-results-php) .pager-btn--2 {
cursor: pointer;
  border: 1px solid #101010;
}

:where(body.page-template-page-client-results-php) .pager-btn--3 {
cursor: default;
  border: 1px solid #D9D9D9;
}

:where(body.page-template-page-client-results-php) .pager-icon {
display: block;
  width: 9px;
  height: 14px;
}

:where(body.page-template-page-client-results-php) .goals {
background: #F7F2EA;
  padding: 140px 64px 150px;
}

:where(body.page-template-page-client-results-php) .goals-head {
text-align: center;
}

:where(body.page-template-page-client-results-php) .goals-title {
margin: 0;
  font-size: 2.625rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

:where(body.page-template-page-client-results-php) .goals-lede {
margin: 22px 0 0;
  font-size: 1.0625rem;
  color: #2A2A2A;
}

:where(body.page-template-page-client-results-php) .goals-lede-strong {
font-weight: 600;
}

:where(body.page-template-page-client-results-php) .goal-grid {
max-width: 1170px;
  margin: 64px auto 0;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
}

:where(body.page-template-page-client-results-php) .goal-card {
border: 1px solid #E6E3DC;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #ffffff;
}

:where(body.page-template-page-client-results-php) .goal-card-body {
padding: 26px 24px 30px;
  flex: 1;
}

:where(body.page-template-page-client-results-php) .goal-title {
margin-top: 22px;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

:where(body.page-template-page-client-results-php) .goal-text {
margin: 14px 0 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.page-template-page-client-results-php) .goal-cta {
display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #E6E3DC;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
}

:where(body.page-template-page-client-results-php) .goal-cta-plus {
font-size: 1.375rem;
  font-weight: 400;
  line-height: 1;
}

:where(body.page-template-page-client-results-php) .cr-pager a, :where(body.page-template-page-client-results-php) .cr-pager span {
box-sizing: border-box;
  text-align: center;
}

:where(body.page-template-page-client-results-php) .cr-pager a {
text-decoration: none;
}



:where(body.page-template-page-client-results-php) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.page-template-page-client-results-php) .hero-cta:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.page-template-page-client-results-php) .pager-btn.pager-btn--1:hover {
border-color: #101010;
}

:where(body.page-template-page-client-results-php) .goal-cta:hover {
background: #FAF7F1;
  color: #101010;
}













/* ============================ fitforce-blog-single ============================ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }

:where(body.single-post) .hero {
position: relative;
  background: #12181D;
  overflow: hidden;
  height: 700px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

:where(body.single-post) .hero-crumb-current {
color: #ffffff;
}

:where(body.single-post) .bs-prev {
display: flex;
  align-items: center;
}

:where(body.single-post) .bs-prev--2 {
gap: 16px;
  color: #101010;
}

:where(body.single-post) .band-inner {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
  flex: 1;
  display: flex;
  align-items: center;
}

:where(body.single-post) .hero-copy {
padding: 0 0 40px;
  max-width: 900px;
}

:where(body.single-post) .hero-crumbs {
font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.85);
  text-transform: uppercase;
  margin-bottom: 26px;
  animation: fffadeup 1s var(--ff-ease) 0s both;
}

:where(body.single-post) .hero-crumb-link {
color: rgba(255,255,255,0.85);
}

:where(body.single-post) .hero-crumb-sep {
padding: 0 8px;
}

:where(body.single-post) .hero-title {
margin: 0;
  font-size: 3.625rem;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #ffffff;
}

:where(body.single-post) .hero-line {
display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.08em;
  margin-bottom: -0.08em;
}

:where(body.single-post) .hero-line-inner {
display: inline-block;
  transform: translateY(115%);
  animation: ffheroline 1s var(--ff-ease) .05s forwards;
}

:where(body.single-post) .hero-cta {
margin-top: 40px;
  opacity: 0;
  animation: fffadeup 1s var(--ff-ease) .35s both;
}

:where(body.single-post) .cta-btn {
display: inline-flex;
  align-items: center;
  gap: 16px;
  background: #4FBFEA;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 21px 34px;
  border-radius: 6px;
}

:where(body.single-post) .icon-24 {
display: block;
  width: 24px;
  height: 24px;
}

:where(body.single-post) .bs-section {
width: 1170px;
  margin: 0 auto;
  padding: 100px 0 0;
}

:where(body.single-post) .bs-stack {
display: flex;
  flex-direction: column;
}

:where(body.single-post) .bs-stack--1 {
gap: 24px;
}

:where(body.single-post) .bs-stack--2 {
gap: 6px;
}

:where(body.single-post) .bs-meta {
display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 24px;
  font-size: 0.9375rem;
  color: #3A3A3A;
  padding-bottom: 32px;
  border-bottom: 1px solid #DDDDDD;
}

:where(body.single-post) .bs-meta-dot {
width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #101010;
}

:where(body.single-post) .bs-faq-title {
font-size: 2.375rem;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #101010;
}

:where(body.single-post) .bs-faq-title--2 {
margin: 0;
}

:where(body.single-post) .bs-faq-a {
font-size: 1.125rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.single-post) .bs-faq-a--2 {
margin: 0;
  padding: 0 60px 28px 0;
}

:where(body.single-post) .bs-faq {
margin-top: 100px;
}

:where(body.single-post) .bs-faq-list {
margin-top: 32px;
  border-top: 1px solid #DDDDDD;
}

:where(body.single-post) .bs-faq-item {
border-bottom: 1px solid #DDDDDD;
}

:where(body.single-post) .bs-faq-btn {
width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 0;
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  font-family: inherit;
  color: #101010;
}

:where(body.single-post) .bs-faq-q {
font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.4;
}

:where(body.single-post) .bs-faq-sign {
flex: none;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1;
  transition: transform 400ms cubic-bezier(.22,1,.36,1);
  transform: var(--u-f-rot);
}

:where(body.single-post) .bs-faq-panel {
display: grid;
  grid-template-rows: var(--u-f-rows);
  transition: grid-template-rows 500ms cubic-bezier(.22,1,.36,1);
}

:where(body.single-post) .bs-faq-clip {
overflow: hidden;
}

:where(body.single-post) .bs-nav {
display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-top: 80px;
  padding-top: 40px;
  border-top: 1px solid #DDDDDD;
}

:where(body.single-post) .bs-prev-icon {
display: block;
  width: 9px;
  height: 14px;
}

:where(body.single-post) .bs-prev-label {
font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #3A3A3A;
}

:where(body.single-post) .bs-prev-title {
font-size: 1.125rem;
  font-weight: 600;
}

:where(body.single-post) .bs-back {
font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #101010;
  text-decoration: underline;
}

:where(body.single-post) .band-bg {
position: relative;
  margin-top: 150px;
  background: #12181D;
  overflow: hidden;
}

:where(body.single-post) .img-cover {
position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:where(body.single-post) .prefoot-band {
position: relative;
  z-index: 2;
  width: 1170px;
  margin: 0 auto;
  padding: 120px 0 130px;
  text-align: center;
}

:where(body.single-post) .prefoot-title {
margin: 0;
  font-size: 2.625rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #ffffff;
}

:where(body.single-post) .prefoot-text {
margin: 22px auto 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.94);
  max-width: 620px;
  text-wrap: pretty;
}

:where(body.single-post) .prefoot-cta-wrap {
margin-top: 40px;
}

:where(body.single-post) .bs-content > p {
margin: 0;
  font-size: 1.125rem;
  line-height: 1.75;
  color: #3A3A3A;
  text-wrap: pretty;
}

:where(body.single-post) .bs-content > p:first-of-type {
margin: 16px 0 0;
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
  color: #101010;
  text-wrap: pretty;
}

:where(body.single-post) .bs-content > h2 {
margin: 40px 0 0;
  font-size: 2.375rem;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #101010;
  text-wrap: balance;
}

:where(body.single-post) .bs-content > h3 {
margin: 16px 0 0;
  font-size: 1.5rem;
  line-height: 1.35;
  font-weight: 600;
  color: #101010;
}

:where(body.single-post) .bs-content > figure {
margin: 24px 0;
  width: auto !important;
  max-width: 100%;
}

:where(body.single-post) .bs-content > figure img {
display: block;
  width: 100%;
  height: 560px;
  object-fit: cover;
  border-radius: 10px;
  background: #F3EFE7;
}

:where(body.single-post) .bs-content > figure figcaption {
margin: 16px 0 0;
  font-size: 1rem;
  line-height: 1.6;
  font-style: italic;
  color: #3A3A3A;
}

:where(body.single-post) .bs-content > ul {
list-style: disc;
  margin: 8px 0 0;
  padding: 40px 48px 40px 76px;
  background: #FBF7F0;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

:where(body.single-post) .bs-content > ul > li {
padding-left: 6px;
  font-size: 1.125rem;
  line-height: 1.7;
  color: #3A3A3A;
}

:where(body.single-post) .bs-content > ul > li::marker {
color: #101010;
  font-size: 1rem;
}

:where(body.single-post) .bs-content strong {
font-weight: 600;
  color: #101010;
}

:where(body.single-post) .bs-content a {
font-weight: 600;
  text-decoration: underline;
  color: #101010;
}

:where(body.single-post) .bs-content a:hover {
color: #3BB9E4;
}

:where(body.single-post) .bs-faq-item {
--u-f-rows: 0fr;
  --u-f-rot: rotate(0deg);
}

:where(body.single-post) .bs-faq-item.is-open {
--u-f-rows: 1fr;
  --u-f-rot: rotate(45deg);
}

:where(body.single-post) .bs-back:only-child {
margin-left: auto;
}





:where(body.single-post) .hero-crumb-current:hover {
color: #6BD1F4;
}

:where(body.single-post) .cta-btn:hover {
background: #37B2E2;
  color: #ffffff;
}

:where(body.single-post) .bs-prev.bs-prev--2:hover {
color: #3A3A3A;
}

:where(body.single-post) .bs-back:hover {
color: #3A3A3A;
}









/* ============ shared-section refinements, every inner page ============ */

@keyframes ffmarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

@keyframes ffheroline { to { transform:translateY(0); } }

@keyframes fffadeup { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:none; } }




