/* =========================================================
   MRCAP THEME
   Main stylesheet
========================================================= */


/* =========================================================
   01. VARIABLES
========================================================= */

:root{
  --mrcap-black:#080a0b;
  --mrcap-dark:#0d1012;
  --mrcap-dark-2:#121517;
  --mrcap-line:rgba(255,255,255,.13);
  --mrcap-white:#ffffff;
  --mrcap-muted:#a6aaad;
  --mrcap-yellow:#ffe500;
  --mrcap-width:1240px;
  --mrcap-heading-section:clamp(28px,3vw,42px);
  --mrcap-heading-card:clamp(24px,2.4vw,32px);
  --mrcap-text-body:16px;
  --mrcap-text-lead:18px;
  --mrcap-section-space:clamp(32px,3.5vw,48px);
}


@media (max-width:767px){
  :root{ --mrcap-text-lead:17px; }
}

/* =========================================================
   02. RESET / GLOBAL
========================================================= */

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  background:#fff;
  color:#111;
  line-height:1.5;
  overflow-x:hidden;
}

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

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

button,
input,
textarea,
select{
  font:inherit;
}

.mrcap-container{
  width:min(calc(100% - 40px),var(--mrcap-width));
  margin:0 auto;
}


/* =========================================================
   03. HEADER
========================================================= */

.mrcap-site-header{
  position:sticky;
  top:0;
  z-index:1000;

  background:rgba(8,10,11,.96);
  color:#fff;

  border-bottom:1px solid var(--mrcap-line);

  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.mrcap-site-header__inner{
  position:relative;

  min-height:76px;

  display:flex;
  align-items:center;

  gap:24px;
}


/* =========================================================
   04. LOGO
========================================================= */

.mrcap-logo{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}

.mrcap-logo img{
  display:block;
  width:auto;
  height:44px;
}


/* =========================================================
   05. DESKTOP NAVIGATION
========================================================= */

.mrcap-nav{
  display:flex;
  align-items:center;

  gap:24px;
  margin-left:auto;
}

.mrcap-nav ul{
  list-style:none;
}

.mrcap-nav .menu-item{
  position:relative;
  list-style:none;
}

.mrcap-nav .menu-item > a{
  display:flex;
  align-items:center;

  min-height:76px;
  padding:0 2px;

  color:#fff;

  font-size:11px;
  font-weight:600;
  letter-spacing:.045em;
  text-transform:uppercase;

  transition:
    color .2s ease,
    opacity .2s ease,
    background .2s ease;
}

.mrcap-nav .menu-item > a:hover{
  color:var(--mrcap-yellow);
}
.mrcap-nav .mrcap-phone-menu > a{
  color:#d7d9da;
  font-weight:600;
  margin-left:4px;
}


/* =========================================================
   06. FIRST-LEVEL DROPDOWN
========================================================= */

.mrcap-nav .sub-menu{
  position:absolute;
  top:100%;
  left:0;

  z-index:150;

  min-width:290px;

  margin:0;
  padding:6px 0;

  background:rgba(12,14,15,.92);

  border:1px solid rgba(255,255,255,.08);

  box-shadow:
    0 20px 60px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.025);

  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  opacity:0;
  visibility:hidden;

  transform:translateY(6px);

  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease;
}

.mrcap-nav .menu-item:hover > .sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

@media(min-width:1001px){
  .mrcap-nav .menu-item:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
}

.mrcap-nav .sub-menu .menu-item > a{
  min-height:50px;

  padding:0 22px;

  font-size:14px;
  font-weight:500;
  letter-spacing:.01em;

  text-transform:none;

  color:#dfe2e3;

  border-bottom:1px solid rgba(255,255,255,.03);

  white-space:nowrap;
}

.mrcap-nav .sub-menu .menu-item-has-children > a:hover{
  color:var(--mrcap-yellow);
  background:rgba(255,255,255,.025);
}

.mrcap-nav .sub-menu .menu-item-has-children:hover > a{
  background:rgba(255,255,255,.035);
}
.mrcap-nav .sub-menu .menu-item:not(.menu-item-has-children) > a:hover{
  color:var(--mrcap-yellow);
  background:rgba(255,255,255,.025);
}

/* =========================================================
   07. THIRD-LEVEL DROPDOWN
========================================================= */

.mrcap-nav .sub-menu .menu-item-has-children{
  position:relative;
}

.mrcap-nav .sub-menu .menu-item-has-children > .sub-menu{
  position:absolute;

  top:-1px;
  left:100%;

  z-index:200;

  min-width:280px;
  margin-left:0;

  padding:0;

  background:rgba(10,12,13,.94);
  border:1px solid rgba(255,255,255,.08);

  box-shadow:0 20px 60px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.02);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  transform:translateX(6px);
}

.mrcap-nav .sub-menu .menu-item-has-children:hover > .sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
}

.mrcap-nav .sub-menu .menu-item-has-children > a{
  position:relative;
  padding-right:36px;
}

.mrcap-nav .sub-menu .menu-item-has-children > a::after{
  content:"›";

  position:absolute;
  top:50%;
  right:16px;

  transform:translateY(-50%);

  color:#72777a;

  font-size:17px;
  font-weight:400;
  line-height:1;
}

/* конкретные услуги справа */
.mrcap-nav .sub-menu .sub-menu .menu-item > a{
  min-height:48px;

  padding:0 22px;

  font-size:13.5px;
  font-weight:500;
  letter-spacing:.005em;

  text-transform:none;

  color:#d8dbdc;

  border-bottom:1px solid rgba(255,255,255,.04);
}

.mrcap-nav .sub-menu .sub-menu .menu-item:last-child > a{
  border-bottom:0;
}

.mrcap-nav .sub-menu .sub-menu .menu-item > a:hover{
  background:rgba(255,255,255,.025);
  color:var(--mrcap-yellow);
}


/* =========================================================
   08. BOOKING MENU CTA
========================================================= */

.mrcap-nav .mrcap-booking-menu > a{
  min-height:48px;

  padding:0 20px;

  background:var(--mrcap-yellow);
  color:#111 !important;

  font-weight:700;
  border-radius:4px;

  text-transform:uppercase;
  letter-spacing:.045em;
}

.mrcap-nav .mrcap-booking-menu > a:hover{
  background:#fff;
  color:#111 !important;
}

.mrcap-nav .mrcap-booking-menu > .sub-menu{
  left:auto;
  right:0;

  min-width:270px;
}
@media(max-width:1000px){

  .mrcap-nav .mrcap-booking-menu > a{
    position:relative;

    background:var(--mrcap-yellow);
    color:#111 !important;

    padding-right:54px;
  }

  .mrcap-nav .mrcap-booking-menu > a::after{
    content:"+";

    position:absolute;
    right:20px;
    top:50%;

    transform:translateY(-50%);

    color:#111;
    font-size:22px;
    font-weight:400;
    line-height:1;
  }

  .mrcap-nav .mrcap-booking-menu.is-open > a{
    background:var(--mrcap-yellow);
    color:#111 !important;
  }

  .mrcap-nav .mrcap-booking-menu.is-open > a::after{
    content:"−";
  }

  .mrcap-nav .mrcap-booking-menu > a:hover{
    background:var(--mrcap-yellow);
    color:#111 !important;
  }

}


/* =========================================================
   09. BUTTONS
========================================================= */

.mrcap-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:48px;
  padding:0 20px;

  background:var(--mrcap-yellow);
  color:#111;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.045em;
  border-radius:4px;

  transition:
    background .2s ease,
    color .2s ease;
}

.mrcap-button:hover{
  background:#fff;
  color:#111;
}


/* =========================================================
   10. ACCESSIBILITY
========================================================= */

.screen-reader-text{
  position:absolute !important;

  width:1px !important;
  height:1px !important;

  padding:0 !important;
  margin:-1px !important;

  overflow:hidden !important;

  clip:rect(0,0,0,0) !important;

  white-space:nowrap !important;

  border:0 !important;
}


/* =========================================================
   11. MOBILE MENU BUTTON
========================================================= */

.mrcap-menu-toggle{
  display:none;

  width:44px;
  height:44px;

  padding:10px;
  margin-left:auto;

  border:0;
  background:transparent;

  cursor:pointer;
}

.mrcap-menu-toggle span:not(.screen-reader-text){
  display:block;

  width:100%;
  height:2px;

  margin:5px 0;

  background:#fff;

  transition:
    transform .2s ease,
    opacity .2s ease;
}


/* =========================================================
   12. GENERIC PAGE
========================================================= */

.mrcap-main{
  min-height:70vh;
  padding:80px 0;
}


/* =========================================================
   13. HOME HERO
========================================================= */

.mrcap-home-hero{
  position:relative;

  min-height:620px;

  overflow:hidden;

  background:var(--mrcap-black);
}

.mrcap-home-hero__media{
  position:absolute;
  inset:0;

  background-image:url('/wp-content/uploads/Hero-1-scaled.jpg.jpeg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.mrcap-home-hero__shade{
  position:relative;
  z-index:1;

  min-height:620px;

  display:flex;
  align-items:center;
}

.mrcap-home-hero__shade::before{
  content:"";

  position:absolute;
  inset:0;

  background:linear-gradient(
    90deg,
    rgba(5,7,8,.72) 0%,
    rgba(5,7,8,.58) 28%,
    rgba(5,7,8,.32) 48%,
    rgba(5,7,8,.18) 72%,
    rgba(5,7,8,.04) 100%
  );

  pointer-events:none;
}

.mrcap-home-hero__content{
  position:relative;
  z-index:2;

  max-width:780px;

  padding:100px 0;
  transform:translateY(-28px);
}

.mrcap-eyebrow{
  margin:0 0 24px;

  color:var(--mrcap-yellow);

  font-size:15px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}

.mrcap-home-hero h1{
  max-width:780px;

  margin:0;

  color:#fff;

  font-size:clamp(50px,5vw,76px);
  font-weight:300;

  line-height:1.01;
  letter-spacing:-.047em;
}

.mrcap-home-hero__lead{
  max-width:620px;

  margin:30px 0 0;

  color:#c4c7c9;

  font-size:18px;
  line-height:1.6;
}

.mrcap-home-hero__actions{
  display:flex;
  align-items:center;

  gap:26px;

  margin-top:36px;
}

.mrcap-home-hero__link{
  position:relative;

  color:#fff;

  font-size:14px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}

.mrcap-home-hero__link::after{
  content:"";

  position:absolute;

  left:0;
  right:0;
  bottom:-5px;

  height:2px;

  background:var(--mrcap-yellow);
}


/* =========================================================
   14. HOME INTRO
========================================================= */

.mrcap-home-intro{
  background:#f1f0ed;
  color:#17191b;
}

.mrcap-home-intro__inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:clamp(24px,4vw,56px);
  row-gap:0;
  align-items:start;
  padding:var(--mrcap-section-space) 0;
}

.mrcap-home-intro .mrcap-home-intro__eyebrow{
  grid-column:1 / -1;
  margin:0 0 14px;
}

.mrcap-eyebrow--light{
  position:relative;

  display:inline-block;

  padding-left:22px;
  margin-bottom:18px;

  color:#62676a;

  font-size:15px;
  font-weight:700;

  letter-spacing:.04em;
}

.mrcap-eyebrow--light::before{
  content:"";

  position:absolute;

  left:0;
  top:50%;

  width:13px;
  height:3px;

  background:var(--mrcap-yellow);

  transform:translateY(-50%);
}

.mrcap-home-intro h2{
  margin:0;
  font-size:var(--mrcap-heading-section);
  font-weight:300;
  line-height:1.15;
  letter-spacing:-.03em;
  overflow-wrap:break-word;
}

.mrcap-home-intro__copy{
  min-width:0;
  border-left:1px solid var(--mrcap-yellow);
  padding-left:24px;
}

.mrcap-home-intro__copy p{
  margin:0 0 16px;
  color:#606568;
  font-size:var(--mrcap-text-lead);
  line-height:1.7;
}

.mrcap-home-intro__copy p:last-child{
  margin-bottom:0;
}


/* =========================================================
   16. TABLET / MOBILE NAVIGATION
========================================================= */

@media (max-width:1000px){

  .mrcap-menu-toggle{
    display:block;
  }

  .mrcap-nav{
    position:absolute;

    top:100%;
    left:0;
    right:0;

    display:none;

    flex-direction:column;
    align-items:stretch;

    gap:0;

    margin:0;
    padding:12px 20px 24px;

    background:var(--mrcap-black);

    border-top:1px solid var(--mrcap-line);

    max-height:calc(100vh - 70px);
    overflow-y:auto;
  }

  .mrcap-site-header.is-open .mrcap-nav{
    display:flex;
  }

  .mrcap-nav .menu-item > a{
    min-height:auto;

    padding:14px 0;
  }

  .mrcap-nav .sub-menu{
    position:static;

    min-width:0;

    margin:0;
    padding:0 0 0 16px;

    border:0;

    background:transparent;

    opacity:1;
    visibility:visible;

    transform:none;

    display:none;
  }

  .mrcap-nav .menu-item-has-children.is-open > .sub-menu{
    display:block;
  }

  .mrcap-nav .sub-menu .menu-item-has-children > .sub-menu{
    position:static;

    transform:none;

    margin:0;
  }

  .mrcap-nav .sub-menu .menu-item-has-children > a::after{
    content:"+";
  }

  .mrcap-nav .mrcap-booking-menu > a{
    min-height:48px;

    margin-top:10px;
    padding:0 18px;

    justify-content:center;

    color:#111 !important;
  }

  .mrcap-nav .mrcap-booking-menu > .sub-menu{
    padding-top:8px;
    padding-left:16px;
  }

}


/* =========================================================
   17. TABLET HERO
========================================================= */

@media (max-width:900px){

  .mrcap-home-hero,
  .mrcap-home-hero__shade{
    min-height:680px;
  }

  .mrcap-home-hero h1{
    font-size:clamp(48px,10vw,72px);
  }

}


/* =========================================================
   18. MOBILE
========================================================= */

@media (max-width:800px){

  .mrcap-site-header__inner{
    min-height:70px;
  }

  .mrcap-logo img{
    height:32px;
  }

  .mrcap-main{
    padding:50px 0;
  }

  .mrcap-home-intro__inner{
    grid-template-columns:1fr;

    row-gap:0;
  }

  .mrcap-home-intro__copy{
    margin-top:20px;
    padding-left:18px;
  }

}


/* =========================================================
   19. SMALL MOBILE HERO
========================================================= */

@media (max-width:640px){

  .mrcap-container{
    width:calc(100% - 32px);
  }

  .mrcap-home-hero{
    min-height:620px;
  }

  .mrcap-home-hero__media{
    background-position:56% center;
  }

  .mrcap-home-hero__shade{
    min-height:620px;

    align-items:center;
  }

  .mrcap-home-hero__shade::before{
    background:linear-gradient(
      180deg,
      rgba(8,10,11,.12) 0%,
      rgba(8,10,11,.42) 42%,
      rgba(8,10,11,.72) 78%,
      rgba(8,10,11,.82) 100%
    );
  }

  .mrcap-home-hero__content{
    padding:90px 0 70px;
  }

  .mrcap-home-hero h1{
    font-size:clamp(42px,12vw,58px);
  }

  .mrcap-home-hero__lead{
    font-size:16px;
  }

  .mrcap-home-hero__actions{
    flex-direction:column;
    align-items:flex-start;
  }

}
/* =========================================================
   HOME SOLUTIONS
========================================================= */

.mrcap-home-solutions{
  padding:var(--mrcap-section-space) 0;
  background:#fff;
  color:#17191b;
}

.mrcap-home-solutions__head{
  max-width:760px;
  margin-bottom:48px;
}

.mrcap-home-solutions__head h2{
  max-width:720px;
  margin:0;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-solutions__head > p:last-child{
  max-width:620px;

  margin:24px 0 0;

  color:#5c6265;

  font-size:var(--mrcap-text-lead);
  line-height:1.7;
}


/* GRID */

.mrcap-home-solutions__grid{
  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:18px;

  background:#fff;
}


/* CARD */

.mrcap-solution-card{
  min-width:0;

  background:#f5f4f1;
}

.mrcap-solution-card > a{
  display:flex;
  flex-direction:column;

  height:100%;
}


/* IMAGE */

.mrcap-solution-card__image{
  height:320px;

  overflow:hidden;

  background:#d9d9d7;
}

.mrcap-solution-card__image img{
  width:100%;
  height:100%;

  object-fit:cover;

  transition:transform .45s ease;
}

.mrcap-solution-card:hover .mrcap-solution-card__image img{
  transform:scale(1.025);
}


/* CONTENT */

.mrcap-solution-card__body{
  display:flex;
  flex-direction:column;

  flex:1;

  min-height:270px;

  padding:32px 34px 34px;
}

.mrcap-solution-card__number{
  display:block;

  margin-bottom:24px;

  color:#8a7600;

  font-size:11px;
  font-weight:700;

  letter-spacing:.08em;
}

.mrcap-solution-card h3{
  max-width:520px;

  margin:0 0 18px;

  color:#17191b;

  font-size:clamp(24px,2.4vw,32px);
  font-weight:300;

  line-height:1.18;
  letter-spacing:-.02em;
}

.mrcap-solution-card p{
  max-width:500px;

  margin:0 0 20px;

  color:#5c6265;

  font-size:16px;
  line-height:1.7;
}

.mrcap-solution-card__link{
  display:inline-block;

  align-self:flex-start;

  margin-top:auto;
  padding-bottom:5px;

  border-bottom:2px solid var(--mrcap-yellow);

  color:#17191b;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}


/* =========================================================
   HOME SOLUTIONS — RESPONSIVE
========================================================= */

@media (max-width:900px){

  .mrcap-home-solutions{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-solutions__grid{
    grid-template-columns:1fr;
  }

  .mrcap-solution-card__image{
    height:340px;
  }

  .mrcap-solution-card__body{
    min-height:0;
  }

}

@media (max-width:640px){

  .mrcap-home-solutions{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-solutions__head{
    margin-bottom:32px;
  }

  .mrcap-home-solutions__head h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-solutions__head > p:last-child{
    font-size:var(--mrcap-text-lead);
  }

  .mrcap-solution-card__image{
    height:230px;
  }

  .mrcap-solution-card__body{
    padding:26px 22px 28px;
  }

  .mrcap-solution-card__number{
    margin-bottom:24px;
  }

  .mrcap-solution-card h3{
    font-size:clamp(24px,2.4vw,32px);
  }

  .mrcap-home-solutions__grid{
    gap:18px;
    background:#fff;

}
}
/* =========================================================
   HOME PROOF
========================================================= */

.mrcap-home-proof{
  padding:var(--mrcap-section-space) 0;
  background:var(--mrcap-black);
  color:#fff;
}

.mrcap-home-proof__inner{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:90px;
  align-items:start;
}

.mrcap-home-proof__copy{
  max-width:620px;
}

.mrcap-home-proof__copy h2{
  max-width:600px;
  margin:0;

  color:#fff;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-proof__copy > p:not(.mrcap-eyebrow){
  max-width:580px;

  margin:28px 0 0;

  color:#b6babc;

  font-size:var(--mrcap-text-lead);
  line-height:1.75;
}

.mrcap-home-proof__links{
  display:flex;
  flex-wrap:wrap;
  gap:28px;

  margin-top:34px;
}

.mrcap-home-proof__links a{
  position:relative;

  padding-bottom:5px;

  color:#fff;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}

.mrcap-home-proof__links a::after{
  content:"";

  position:absolute;

  left:0;
  right:0;
  bottom:0;

  height:2px;

  background:var(--mrcap-yellow);
}


/* STATS */

.mrcap-home-proof__stats{
  display:grid;
  grid-template-columns:1fr;

  border-top:1px solid var(--mrcap-line);
}

.mrcap-home-proof__stat{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:28px;

  align-items:center;

  padding:30px 0;

  border-bottom:1px solid var(--mrcap-line);
}

.mrcap-home-proof__stat strong{
  display:block;

  color:#fff;

  font-size:clamp(44px,4.6vw,68px);
  font-weight:300;

  line-height:1;
  letter-spacing:-.04em;
}

.mrcap-home-proof__stat span{
  position:relative;
  display:block;
  max-width:260px;
  padding-left:18px;

  color:#aeb2b4;

  font-size:14px;
  line-height:1.55;
}

.mrcap-home-proof__stat span::before{
  content:"";
  position:absolute;
  left:0;
  top:.7em;

  width:8px;
  height:2px;

  background:var(--mrcap-yellow);
}


/* =========================================================
   HOME PROOF — RESPONSIVE
========================================================= */

@media (max-width:900px){

  .mrcap-home-proof{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-proof__inner{
    grid-template-columns:1fr;
    gap:58px;
  }

  .mrcap-home-proof__copy{
    max-width:700px;
  }

}

@media (max-width:640px){

  .mrcap-home-proof{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-proof__copy h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-proof__copy > p:not(.mrcap-eyebrow){
    font-size:var(--mrcap-text-lead);
  }

  .mrcap-home-proof__links{
    flex-direction:column;
    align-items:flex-start;

    gap:18px;
  }

  .mrcap-home-proof__stat{
    grid-template-columns:1fr;

    gap:10px;

    padding:24px 0;
  }

  .mrcap-home-proof__stat strong{
    font-size:50px;
  }

  .mrcap-home-proof__stat span{
    max-width:320px;
    
  }

}
/* =========================================================
   HOME SERVICES
========================================================= */

.mrcap-home-services{
  padding:var(--mrcap-section-space) 0;
  background:#fff;
  color:#17191b;
}

.mrcap-home-services__head{
  max-width:760px;
  margin-bottom:48px;
}

.mrcap-home-services__head h2{
  max-width:720px;
  margin:0;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-services__head > p:last-child{
  max-width:620px;

  margin:24px 0 0;

  color:#5c6265;

  font-size:var(--mrcap-text-lead);
  line-height:1.7;
}


/* GRID */

.mrcap-home-services__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:18px;

  background:#fff;
}


/* CARD */

.mrcap-service-card{
  min-width:0;

  background:#f5f4f1;
}

.mrcap-service-card > a{
  display:flex;
  flex-direction:column;

  height:100%;
}


/* IMAGE */

.mrcap-service-card__image{
  height:300px;

  overflow:hidden;

  background:#d9d9d7;
}

.mrcap-service-card__image img{
  width:100%;
  height:100%;

  object-fit:cover;

  transition:transform .45s ease;
}

.mrcap-service-card:hover .mrcap-service-card__image img{
  transform:scale(1.025);
}


/* BODY */

.mrcap-service-card__body{
  display:flex;
  flex-direction:column;

  flex:1;

  min-height:260px;

  padding:30px 28px 32px;
}

.mrcap-service-card__category{
  display:block;

  margin-bottom:20px;

  color:#8a7600;

  font-size:12px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.06em;
}

.mrcap-service-card h3{
  margin:0 0 16px;

  color:#17191b;

  font-size:26px;
  font-weight:300;

  line-height:1.18;
  letter-spacing:-.02em;
}

.mrcap-service-card p{
  margin:0 0 20px;

  color:#5c6265;

  font-size:16px;
  line-height:1.7;
}

.mrcap-service-card .mrcap-service-card__price{
  margin:0 0 20px;
  color:#606568;
  font-size:15px;
  font-weight:400;
  line-height:1.5;
}

.mrcap-service-card__link{
  display:inline-block;

  align-self:flex-start;

  margin-top:auto;
  padding-bottom:5px;

  border-bottom:2px solid var(--mrcap-yellow);

  color:#17191b;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}


/* ALL SERVICES */

.mrcap-home-services__all{
  margin-top:34px;
}

.mrcap-home-services__all a{
  display:inline-block;

  padding-bottom:5px;

  border-bottom:2px solid var(--mrcap-yellow);

  color:#17191b;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}


/* =========================================================
   HOME SERVICES — RESPONSIVE
========================================================= */

@media (max-width:900px){

  .mrcap-home-services{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-services__grid{
    grid-template-columns:1fr;
  }

  .mrcap-service-card__image{
    height:360px;
  }

  .mrcap-service-card__body{
    min-height:0;
  }

}

@media (max-width:640px){

  .mrcap-home-services{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-services__head{
    margin-bottom:32px;
  }

  .mrcap-home-services__head h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-services__head > p:last-child{
    font-size:var(--mrcap-text-lead);
  }

  .mrcap-service-card__image{
    height:250px;
  }

  .mrcap-service-card__body{
    padding:26px 22px 28px;
  }

  .mrcap-service-card h3{
    font-size:26px;
  }
  .mrcap-home-services__grid{
    gap:18px;
    background:#fff;

}

}

/* =========================================================
   HOME LOCATIONS
========================================================= */

.mrcap-home-locations{
  padding:var(--mrcap-section-space) 0;
  background:#f1f0ed;
  color:#17191b;
}

.mrcap-home-locations__head{
  max-width:760px;
  margin-bottom:48px;
}

.mrcap-home-locations__head h2{
  margin:0;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-locations__head > p:last-child{
  max-width:620px;

  margin:24px 0 0;

  color:#5c6265;

  font-size:var(--mrcap-text-lead);
  line-height:1.7;
}


/* GRID */

.mrcap-home-locations__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:18px;
}
.mrcap-home-location-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
}



/* CARD */

.mrcap-location-card{
  min-width:0;

  background:#fff;
}

.mrcap-location-card__image{
  height:360px;

  overflow:hidden;

  background:#d9d9d7;
}

.mrcap-location-card__image img{
  width:100%;
  height:100%;

  object-fit:cover;

  transition:transform .45s ease;
}

.mrcap-location-card:hover .mrcap-location-card__image img{
  transform:scale(1.02);
}

.mrcap-location-card__body{
  padding:30px 34px 32px;
}

.mrcap-location-card__eyebrow{
  display:block;

  margin-bottom:24px;

  color:#8a7600;

  font-size:12px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.06em;
}

.mrcap-location-card h3{
  margin:0 0 14px;

  color:#17191b;

  font-size:var(--mrcap-heading-card);
  font-weight:300;

  line-height:1.18;
  letter-spacing:-.02em;
}

.mrcap-location-card__address{
  margin:0 0 18px !important;

  color:#17191b !important;

  font-size:16px !important;
  font-weight:700;
}

.mrcap-location-card__body > p:not(.mrcap-location-card__address){
  max-width:460px;

  margin:0 0 24px;

  color:#5c6265;

  font-size:15px;
  line-height:1.65;
}


/* META */

.mrcap-location-card__meta{
  display:flex;
  flex-wrap:wrap;

  gap:10px 18px;

  margin-bottom:28px;

  color:#777c7f;

  font-size:12px;
}

.mrcap-location-card__meta span{
  position:relative;
}

.mrcap-location-card__meta span:not(:last-child)::after{
  content:"";

  position:absolute;

  top:50%;
  right:-10px;

  width:3px;
  height:3px;

  border-radius:50%;

  background:#b5b7b8;

  transform:translateY(-50%);
}


/* LINK */

.mrcap-location-card__link{
  display:inline-block;

  padding-bottom:5px;

  border-bottom:2px solid var(--mrcap-yellow);

  color:#17191b;

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}


/* =========================================================
   HOME LOCATIONS — RESPONSIVE
========================================================= */

@media (max-width:900px){

  .mrcap-home-locations{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-locations__grid{
    grid-template-columns:1fr;
  }

  .mrcap-location-card__image{
    height:380px;
  }

}

@media (max-width:640px){

  .mrcap-home-locations{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-locations__head{
    margin-bottom:32px;
  }

  .mrcap-home-locations__head h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-locations__head > p:last-child{
    font-size:var(--mrcap-text-lead);
  }

  .mrcap-location-card__image{
    height:240px;
  }

  .mrcap-location-card__body{
    padding:28px 22px 30px;
  }

  .mrcap-location-card h3{
    font-size:var(--mrcap-heading-card);
  }

}
/* =========================================================
   HOME STORY
========================================================= */

.mrcap-home-story{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  background:#f1f0ed;
  color:#17191b;
}

.mrcap-home-story__media{
  min-height:520px;
  overflow:hidden;
}

.mrcap-home-story__media img{
  width:100%;
  height:100%;
  min-height:520px;

  object-fit:cover;
  object-position:center;

  transition:transform .6s ease;
}

.mrcap-home-story:hover .mrcap-home-story__media img{
  transform:scale(1.015);
}

.mrcap-home-story__content{
  position:relative;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:72px max(48px,calc((100vw - 1240px) / 2)) 72px 64px;
}
.mrcap-home-story__content::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:var(--mrcap-yellow);
}

.mrcap-home-story__content h2{
  max-width:560px;

  margin:0;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-story__content .mrcap-eyebrow{
  margin-bottom:22px;
}

.mrcap-home-story__content > p:not(.mrcap-eyebrow){
  max-width:500px;

  margin:24px 0 0;

  color:#5c6265;

  font-size:var(--mrcap-text-lead);
  line-height:1.75;
}

.mrcap-home-story__link{
  align-self:flex-start;

  margin-top:24px;
  padding-bottom:5px;

  border-bottom:2px solid var(--mrcap-yellow);

  font-size:13px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}

@media (max-width:900px){

  .mrcap-home-story{
    grid-template-columns:1fr;
  }

  .mrcap-home-story__media,
  .mrcap-home-story__media img{
    min-height:430px;
  }

  .mrcap-home-story__content{
    padding:56px 40px;
  }
  .mrcap-home-story__content::before{
  display:none;
}

}

@media (max-width:640px){

  .mrcap-home-story__media,
  .mrcap-home-story__media img{
    min-height:300px;
  }

  .mrcap-home-story__content{
    padding:48px 20px 52px;
  }

  .mrcap-home-story__content h2{
    font-size:var(--mrcap-heading-section);
  }

}
/* =========================================================
   HOME FINAL CTA
========================================================= */

.mrcap-home-cta{
  padding:var(--mrcap-section-space) 0;
  background:var(--mrcap-black);
  color:#fff;
}

.mrcap-home-cta__inner{
  display:block;
}

.mrcap-home-cta__copy{
  max-width:900px;
}

.mrcap-home-cta__copy h2{
  max-width:760px;
  margin:0;
  color:#fff;
  font-size:var(--mrcap-heading-section);
  font-weight:300;
  line-height:1.15;
  letter-spacing:-.03em;
}

.mrcap-home-cta__copy > p:not(.mrcap-eyebrow){
  max-width:620px;
  margin:26px 0 0;
  color:#a6aaad;
  font-size:var(--mrcap-text-lead);
  line-height:1.65;
}

.mrcap-home-cta__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:20px 28px;
  margin-top:24px;
}

.mrcap-home-cta__actions .mrcap-button{
  min-height:48px;
  padding:0 20px;
  font-size:13px;
}

.mrcap-home-cta__link{
  display:inline-block;
  padding-bottom:4px;
  border-bottom:2px solid var(--mrcap-yellow);
  color:#fff;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}


/* =========================================================
   HOME FINAL CTA — RESPONSIVE
========================================================= */

@media (max-width:640px){

  .mrcap-home-cta{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-cta__copy h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-cta__copy > p:not(.mrcap-eyebrow){
    font-size:var(--mrcap-text-lead);
  }

}
/* =========================================================
   HOME REVIEWS
========================================================= */

.mrcap-home-reviews{
  padding:var(--mrcap-section-space) 0;

  background:#f1f0ed;
  color:#17191b;
}


/* HEAD */

.mrcap-home-reviews__head{
  display:grid;
  grid-template-columns:1.25fr .75fr;

  gap:50px;

  align-items:end;

  margin-bottom:28px;
}

.mrcap-home-reviews__intro{
  max-width:700px;
}

.mrcap-home-reviews__intro h2{
  max-width:660px;

  margin:0;

  font-size:var(--mrcap-heading-section);
  font-weight:300;

  line-height:1.15;
  letter-spacing:-.03em;
}


/* RATING */

.mrcap-home-reviews__rating{
  display:flex;
  flex-direction:column;
  align-items:flex-start;

  padding-bottom:4px;
}

.mrcap-home-reviews__rating strong{
  display:block;

  color:#17191b;

  font-size:58px;
  font-weight:300;

  line-height:.9;
  letter-spacing:-.05em;
}

.mrcap-home-reviews__stars{
  margin-top:8px;

  color:#8a7600;

  font-size:16px;
  letter-spacing:.08em;
}

.mrcap-home-reviews__rating a{
  display:inline-block;

  margin-top:10px;
  padding-bottom:4px;

  border-bottom:2px solid var(--mrcap-yellow);

  color:#17191b;

  font-size:10.5px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.05em;
}


/* GRID */

.mrcap-home-reviews__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:18px;
}


/* CARD */

.mrcap-review-card{
  min-width:0;

  display:flex;
  flex-direction:column;

  min-height:220px;

  padding:24px 26px 24px;

  background:#fff;

  border:1px solid rgba(0,0,0,.055);
}

.mrcap-review-card__stars{
  margin-bottom:18px;

  color:#8a7600;

  font-size:13px;
  letter-spacing:.08em;
}

.mrcap-review-card > p{
  max-width:360px;

  margin:0 0 22px;

  color:#44494c;

  font-size:15px;
  line-height:1.6;
}


/* AUTHOR */

.mrcap-review-card__author{
  margin-top:auto;
}

.mrcap-review-card__author strong{
  display:block;

  color:#17191b;

  font-size:13px;
  font-weight:700;
}

.mrcap-review-card__author span{
  display:block;

  margin-top:4px;

  color:#8a8f92;

  font-size:10.5px;
}


/* =========================================================
   HOME REVIEWS — RESPONSIVE
========================================================= */

@media(max-width:900px){

  .mrcap-home-reviews__head{
    grid-template-columns:1fr;

    gap:32px;
  }

  .mrcap-home-reviews__grid{
    grid-template-columns:1fr;
  }

  .mrcap-review-card{
    min-height:0;
  }

}


@media(max-width:640px){

  .mrcap-home-reviews{
    padding:var(--mrcap-section-space) 0;
  }

  .mrcap-home-reviews__head{
    margin-bottom:30px;
  }

  .mrcap-home-reviews__intro h2{
    font-size:var(--mrcap-heading-section);
  }

  .mrcap-home-reviews__rating strong{
    font-size:54px;
  }

  .mrcap-home-reviews__grid{
    gap:18px;
  }

  .mrcap-review-card{
    padding:26px 22px 26px;
  }

  .mrcap-review-card__stars{
    margin-bottom:20px;
  }

  .mrcap-review-card > p{
    margin-bottom:24px;

    font-size:15px;
  }

}

/* =========================================================
   SITE FOOTER
========================================================= */

.mrcap-site-footer{
  position:relative;

  padding:68px 0 0;

  background:#080a0b;
  color:#fff;

  border-top:1px solid rgba(255,255,255,.08);
}

/* фирменный акцент сверху */
.mrcap-site-footer::before{
  content:"";

  position:absolute;
  top:0;
  left:0;

  width:84px;
  height:3px;

  background:var(--mrcap-yellow);
}


/* =========================================================
   FOOTER MAIN GRID
========================================================= */

.mrcap-footer__main{
  display:grid;

  grid-template-columns:
    1.25fr
    .65fr
    .9fr
    1.05fr;

  gap:64px;

  padding-bottom:64px;
}


/* =========================================================
   BRAND
========================================================= */

.mrcap-footer__brand{
  max-width:300px;
}

.mrcap-footer__logo{
  display:inline-block;
  margin-bottom:24px;
}

.mrcap-footer__logo img{
  width:auto;
  height:48px;
}

.mrcap-footer__brand > p{
  max-width:270px;

  margin:0;

  color:#92979a;

  font-size:13px;
  line-height:1.65;
}

.mrcap-footer__contact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;

  gap:7px;

  margin-top:24px;
}

.mrcap-footer__contact a{
  color:#e2e4e5;

  font-size:13px;
  font-weight:500;

  transition:color .2s ease;
}

.mrcap-footer__contact a:hover{
  color:var(--mrcap-yellow);
}


/* =========================================================
   COLUMN TITLES
========================================================= */

.mrcap-footer__title{
  display:block;

  margin-bottom:22px;

  color:#858a8d;

  font-size:10px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.11em;
}


/* =========================================================
   NAVIGATION
========================================================= */

.mrcap-footer__column nav{
  display:flex;
  flex-direction:column;
  align-items:flex-start;

  gap:10px;
}

.mrcap-footer__column nav a{
  color:#d2d5d6;

  font-size:13px;
  font-weight:500;

  transition:
    color .2s ease,
    transform .2s ease;
}

.mrcap-footer__column nav a:hover{
  color:#fff;
}


/* =========================================================
   LOCATION
========================================================= */

.mrcap-footer__location{
  display:flex;
  flex-direction:column;

  gap:11px;
}

.mrcap-footer__location strong{
  color:#fff;

  font-size:14px;
  font-weight:600;
}

.mrcap-footer__location span{
  color:#92979a;

  font-size:13px;
  line-height:1.6;
}

.mrcap-footer__text-link{
  display:inline-block;

  margin-top:20px;
  padding-bottom:4px;

  color:#fff;

  border-bottom:2px solid var(--mrcap-yellow);

  font-size:10.5px;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.04em;
}


/* =========================================================
   BOOKING
========================================================= */

.mrcap-footer__booking{
  padding-left:4px;
}

.mrcap-footer__booking h3{
  max-width:290px;

  margin:0;

  color:#fff;

  font-size:28px;
  font-weight:300;

  line-height:1.07;
  letter-spacing:-.035em;
}

.mrcap-footer__booking p{
  max-width:270px;

  margin:16px 0 24px;

  color:#92979a;

  font-size:13px;
  line-height:1.65;
}

.mrcap-footer__booking .mrcap-button{
  min-height:48px;
  padding:0 22px;
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.mrcap-footer__bottom{
  min-height:66px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:30px;

  border-top:1px solid rgba(255,255,255,.08);

  color:#6f7578;
}

.mrcap-footer__copyright{
  font-size:11px;
}

.mrcap-footer__legal{
  display:flex;
  align-items:center;

  gap:22px;
}

.mrcap-footer__legal a{
  color:#6f7578;

  font-size:11px;

  transition:color .2s ease;
}

.mrcap-footer__legal a:hover{
  color:#fff;
}


/* =========================================================
   FOOTER TABLET
========================================================= */

@media(max-width:1000px){

  .mrcap-footer__main{
    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:52px 60px;
  }

}


/* =========================================================
   FOOTER MOBILE — CLEAN FINAL
========================================================= */

@media(max-width:640px){

  .mrcap-site-footer{
    padding-top:46px;
  }

  .mrcap-site-footer .mrcap-container{
    width:calc(100% - 40px);
  }

  .mrcap-site-footer::before{
    left:20px;
    width:56px;
  }


  /* MAIN */
  .mrcap-footer__main{
    display:grid;
    grid-template-columns:1fr 1fr;

    column-gap:28px;
    row-gap:34px;

    padding-bottom:38px;
  }


  /* BRAND */
.mrcap-footer__brand{
  grid-column:1 / -1;

  display:block;

  max-width:none;
  margin:0;

  padding-bottom:28px;

  text-align:left;

  border-bottom:1px solid rgba(255,255,255,.08);
}

.mrcap-footer__logo{
  display:inline-block;
  margin:0 0 18px;
}

.mrcap-footer__logo img{
  height:40px;
}

.mrcap-footer__brand > p{
  max-width:none;
  margin:0;

  color:#92979a;

  font-size:12.5px;
  line-height:1.55;

  white-space:nowrap;
}

.mrcap-footer__contact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;

  gap:6px;

  margin-top:18px;

  text-align:left;
}

.mrcap-footer__contact a{
  font-size:12px;
  line-height:1.4;

  white-space:nowrap;
}

  /* LEFT / RIGHT COLUMNS */
  .mrcap-footer__column{
    min-width:0;

    text-align:left;
  }

  .mrcap-footer__column:nth-of-type(2){
    grid-column:2;
    grid-row:2;
  }

  .mrcap-footer__column:nth-of-type(3){
    grid-column:1;
    grid-row:2;
  }

  .mrcap-footer__title{
    margin-bottom:16px;

    font-size:9.5px;
    font-weight:700;

    letter-spacing:.12em;
  }

  .mrcap-footer__column nav{
    align-items:flex-start;

    gap:10px;
  }

  .mrcap-footer__column nav a{
    font-size:12.5px;
    line-height:1.4;
  }


  /* LOCATION */
  .mrcap-footer__location{
    align-items:flex-start;

    gap:9px;
  }

  .mrcap-footer__location strong{
    font-size:13.5px;
  }

  .mrcap-footer__location span{
    font-size:12px;
    line-height:1.5;
  }

  .mrcap-footer__text-link{
    display:inline-block;

    width:auto;

    margin-top:14px;
    padding-bottom:4px;

    font-size:9.5px;
    line-height:1.4;
  }


  /* BOOKING */
  .mrcap-footer__booking{
    grid-column:1 / -1;

    display:block;

    margin-top:4px;
    padding:30px 0 0;

    text-align:left;

    border-top:1px solid rgba(255,255,255,.08);
  }

  .mrcap-footer__booking .mrcap-footer__title{
    margin-bottom:14px;
  }

  .mrcap-footer__booking h3{
    max-width:320px;

    margin:0;

    font-size:29px;
    line-height:1.05;
  }

  .mrcap-footer__booking p{
    max-width:300px;

    margin:16px 0 22px;

    font-size:12.5px;
    line-height:1.55;
  }

  .mrcap-footer__booking .mrcap-button{
    min-height:50px;

    padding:0 22px;
  }


  /* SOCIAL ROW — READY FOR LATER */
  .mrcap-footer__social{
    grid-column:1 / -1;

    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:12px 22px;

    padding-top:28px;

    border-top:1px solid rgba(255,255,255,.08);
  }

  .mrcap-footer__social a{
    color:#b6babc;

    font-size:11px;
    font-weight:600;

    letter-spacing:.03em;

    transition:color .2s ease;
  }

  .mrcap-footer__social a:hover{
    color:var(--mrcap-yellow);
  }


  /* BOTTOM */
  .mrcap-footer__bottom{
    min-height:auto;

    flex-direction:column;
    align-items:flex-start;

    gap:12px;

    padding:22px 0;

    text-align:left;
  }

  .mrcap-footer__copyright{
    font-size:10.5px;
  }

  .mrcap-footer__legal{
    justify-content:flex-start;
    flex-wrap:wrap;

    gap:10px 18px;
  }

  .mrcap-footer__legal a{
    font-size:10.5px;
  }

}

/* Longer Russian service names must wrap inside all navigation levels. */
html[lang^="ru"] .mrcap-nav .sub-menu .menu-item > a {
  white-space:normal;
  overflow-wrap:anywhere;
  line-height:1.45;
  padding:12px 22px;
}
@media (min-width:1001px) {
  html[lang^="ru"] .mrcap-nav .sub-menu { width:320px; }
}
@media (max-width:1000px) {
  html[lang^="ru"] .mrcap-nav .sub-menu .menu-item > a { padding:12px 16px; }
}


/* =========================================================
   MRCAP 18+ — CAMPAIGN LANDING PAGE
   CLEAN FINAL VERSION
   ========================================================= */

.mrcap-18plus-main{
  --mrcap-18-black:#050607;
  --mrcap-18-dark:#0b0d0f;
  --mrcap-18-dark-2:#111416;
  --mrcap-18-warm:#f1efeb;
  --mrcap-18-white:#fff;
  --mrcap-18-text:#17191b;
  --mrcap-18-muted:#5b6063;
  --mrcap-18-yellow:#ffe500;
  --mrcap-18-red:#e21c25;
  --mrcap-18-width:1240px;
}


/* =========================================================
   00. GLOBAL
   ========================================================= */

.mrcap-18plus-hero,
.mrcap-18plus-reveal,
.mrcap-18plus-care,
.mrcap-18plus-proof,
.mrcap-18plus-programs,
.mrcap-18plus-quote,
.mrcap-18plus-final{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  margin-top:0!important;
  box-sizing:border-box!important;
  font-family:Arial,Helvetica,sans-serif!important;
}

.mrcap-18plus-hero *,
.mrcap-18plus-reveal *,
.mrcap-18plus-care *,
.mrcap-18plus-proof *,
.mrcap-18plus-programs *,
.mrcap-18plus-quote *,
.mrcap-18plus-final *{
  box-sizing:border-box;
}

.mrcap-18plus-hero .wpb_content_element,
.mrcap-18plus-reveal .wpb_content_element,
.mrcap-18plus-care .wpb_content_element,
.mrcap-18plus-proof .wpb_content_element,
.mrcap-18plus-programs .wpb_content_element,
.mrcap-18plus-quote .wpb_content_element,
.mrcap-18plus-final .wpb_content_element{
  margin-bottom:0!important;
}

.mrcap-18plus-hero-inner,
.mrcap-18plus-reveal-inner,
.mrcap-18plus-section-head,
.mrcap-18plus-care-grid,
.mrcap-18plus-proof-inner,
.mrcap-18plus-programs-grid,
.mrcap-18plus-programs-link,
.mrcap-18plus-final-inner{
  width:min(var(--mrcap-18-width),calc(100% - 64px));
  margin-left:auto;
  margin-right:auto;
}

.mrcap-18plus-hero h1,
.mrcap-18plus-reveal h2,
.mrcap-18plus-care h2,
.mrcap-18plus-care h3,
.mrcap-18plus-proof h2,
.mrcap-18plus-programs h2,
.mrcap-18plus-programs h3,
.mrcap-18plus-final h2{
  font-family:Arial,Helvetica,sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  letter-spacing:-.035em!important;
}


/* =========================================================
   01. HERO — 18+
   ========================================================= */

.mrcap-18plus-hero{
  position:relative;
  min-height:620px!important;
  overflow:hidden;
  display:flex!important;
  align-items:center!important;
  background:var(--mrcap-18-black)!important;
  color:#fff!important;
}

.mrcap-18plus-hero-visual{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:url('/wp-content/uploads/mrcap-18plus.jpg');
  background-size:cover;
  background-position:right center;
  background-repeat:no-repeat;
}

.mrcap-18plus-hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(
    90deg,
    rgba(2,3,3,.88) 0%,
    rgba(2,3,3,.72) 27%,
    rgba(2,3,3,.40) 48%,
    rgba(2,3,3,.11) 70%,
    rgba(2,3,3,0) 100%
  );
}

.mrcap-18plus-hero > .wpb_column{
  position:relative;
  z-index:2;
  width:100%!important;
}

.mrcap-18plus-hero .vc_column-inner{
  width:100%!important;
  max-width:1324px!important;
  margin:0 auto!important;
  padding:64px 42px!important;
}

.mrcap-18plus-hero-inner{
  position:relative!important;
  z-index:3!important;
  display:block!important;
  width:auto;
  max-width:610px;
  margin:0;
  opacity:1!important;
  visibility:visible!important;
}


/* 18+ */

.mrcap-18plus-age{
  position:relative;
  display:inline-block;
  margin:0 0 27px!important;
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
  font-size:clamp(74px,7vw,104px)!important;
  font-weight:300!important;
  line-height:.84!important;
  letter-spacing:-.07em!important;
}

.mrcap-18plus-age:after{
  content:"";
  display:block;
  width:34px!important;
  height:2px!important;
  margin-top:17px!important;
  background:var(--mrcap-18-red)!important;
}


/* Hero eyebrow */

.mrcap-18plus-hero .mrcap-eyebrow{
  display:block!important;
  position:relative!important;
  z-index:4!important;
  margin:0 0 10px!important;
  color:rgba(255,255,255,.70)!important;
  -webkit-text-fill-color:rgba(255,255,255,.70)!important;
  font-size:10px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:.085em!important;
  opacity:1!important;
  visibility:visible!important;
}


/* Hero heading */

.mrcap-18plus-hero h1{
  display:block!important;
  position:relative!important;
  z-index:4!important;
  max-width:560px!important;
  margin:0!important;
  color:#f4f1eb!important;
  -webkit-text-fill-color:#f4f1eb!important;
  font-size:clamp(42px,4vw,58px)!important;
  font-weight:300!important;
  line-height:1.03!important;
  letter-spacing:-.042em!important;
  opacity:1!important;
  visibility:visible!important;
}

.mrcap-18plus-hero h1 span{
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
}


/* Hero lead */

.mrcap-18plus-hero-lead{
  display:block!important;
  position:relative!important;
  z-index:4!important;
  max-width:470px!important;
  margin:17px 0 0!important;
  color:#c8c4bd!important;
  -webkit-text-fill-color:#c8c4bd!important;
  font-size:15px!important;
  font-style:normal!important;
  line-height:1.58!important;
  opacity:1!important;
  visibility:visible!important;
}

.mrcap-18plus-hero-actions{
  display:block!important;
  position:relative!important;
  z-index:4!important;
  margin-top:24px!important;
  opacity:1!important;
  visibility:visible!important;
}


/* =========================================================
   02. REVEAL — 18+ AASTAT EESTIS
   ========================================================= */

.mrcap-18plus-reveal{
  background:var(--mrcap-18-warm)!important;
  color:var(--mrcap-18-text)!important;
}

.mrcap-18plus-reveal-inner{
  display:grid;
  grid-template-columns:.42fr 1.58fr;
  gap:56px;
  align-items:center;
  padding:52px 0;
}


/* 18+ / aastat Eestis */

.mrcap-18plus-reveal-number{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-self:start!important;
  width:max-content!important;
  margin:0!important;
}

.mrcap-18plus-reveal-number strong{
  display:block!important;
  width:auto!important;
  margin:0!important;
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
  font-size:clamp(78px,8vw,112px)!important;
  font-weight:300!important;
  line-height:.84!important;
  letter-spacing:-.075em!important;
}

.mrcap-18plus-reveal-number span{
  display:block!important;
  width:100%!important;
  margin:9px 0 0!important;
  padding:0!important;
  text-align:right!important;
  color:#606466!important;
  -webkit-text-fill-color:#606466!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
}


/* Light eyebrows */

.mrcap-18plus-reveal .mrcap-eyebrow,
.mrcap-18plus-care .mrcap-eyebrow,
.mrcap-18plus-programs .mrcap-eyebrow{
  position:relative;
  display:inline-block;
  padding-left:22px;
  color:#656a6c!important;
  -webkit-text-fill-color:#656a6c!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
}

.mrcap-18plus-reveal .mrcap-eyebrow:before,
.mrcap-18plus-care .mrcap-eyebrow:before,
.mrcap-18plus-programs .mrcap-eyebrow:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:13px;
  height:3px;
  background:var(--mrcap-18-yellow);
  transform:translateY(-50%);
}

.mrcap-18plus-reveal h2{
  max-width:720px;
  margin:0 0 18px!important;
  color:#17191b!important;
  font-size:clamp(37px,3.4vw,50px)!important;
  font-weight:300!important;
  line-height:1.04!important;
}

.mrcap-18plus-reveal p{
  max-width:760px;
  margin:0 0 14px!important;
  color:#555b5e!important;
  font-size:15.5px!important;
  line-height:1.7!important;
}

.mrcap-18plus-reveal-line{
  max-width:760px;
  margin-top:22px;
  padding:17px 0 0!important;
  border-top:1px solid rgba(0,0,0,.14)!important;
  border-left:0!important;
  color:#17191b!important;
  font-size:19px!important;
  line-height:1.4!important;
}


/* =========================================================
   03. KAITSE / TAASTA / HOOLITSE
   ========================================================= */

.mrcap-18plus-care{
  padding:54px 0 58px!important;
  background:#fff!important;
  color:#17191b!important;
}

.mrcap-18plus-section-head{
  max-width:none!important;
}

.mrcap-18plus-section-head h2{
  max-width:900px;
  margin:0!important;
  color:#17191b!important;
  font-size:clamp(37px,3.5vw,51px)!important;
  font-weight:300!important;
  line-height:1.04!important;
}

.mrcap-18plus-section-head > p{
  max-width:720px;
  margin:15px 0 0!important;
  color:#5b6063!important;
  font-size:15.5px!important;
  line-height:1.68!important;
}

.mrcap-18plus-care-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}


/* Care cards */

.mrcap-18plus-care-card{
  position:relative;
  overflow:hidden!important;
  background:var(--mrcap-18-dark-2);
  border:1px solid rgba(0,0,0,.07);
  transition:transform .22s ease,border-color .22s ease;
}

.mrcap-18plus-care-card:hover{
  transform:translateY(-2px);
  border-color:rgba(226,28,37,.30);
}

.mrcap-18plus-care-card:before{
  content:"";
  position:absolute;
  z-index:4;
  left:0;
  top:0;
  width:0;
  height:3px;
  background:var(--mrcap-18-red);
  transition:width .24s ease;
}

.mrcap-18plus-care-card:hover:before{
  width:100%;
}

.mrcap-18plus-care-card > a{
  display:block;
  height:100%;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  text-decoration:none!important;
}


/* Care images */

.mrcap-18plus-care-image{
  display:block!important;
  position:relative!important;
  height:255px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  background:#1c1f21;
  line-height:0!important;
  font-size:0!important;
}

.mrcap-18plus-care-image img,
.mrcap-18plus-care-image .mrcap-service-card-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:cover!important;
  vertical-align:top!important;
  transition:transform .35s ease;
}

.mrcap-18plus-care-card:hover .mrcap-18plus-care-image img{
  transform:scale(1.015);
}

.mrcap-18plus-care-image p{
  display:contents!important;
  margin:0!important;
  padding:0!important;
}

.mrcap-18plus-care-image br,
.mrcap-18plus-care-image:before,
.mrcap-18plus-care-image:after{
  display:none!important;
  content:none!important;
}


/* Care content */

.mrcap-18plus-care-body{
  min-height:290px;
  display:flex;
  flex-direction:column;
  padding:24px 23px 25px;
}

.mrcap-18plus-care-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:17px;
}

.mrcap-18plus-care-top > span{
  color:#73787b!important;
  font-size:10px!important;
  font-weight:700!important;
}

.mrcap-18plus-care-card .mrcap-eyebrow{
  margin:0!important;
  padding-left:0!important;
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
}

.mrcap-18plus-care-card .mrcap-eyebrow:before{
  display:none!important;
}

.mrcap-18plus-care-card h3{
  margin:0 0 12px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:23px!important;
  font-weight:400!important;
  line-height:1.13!important;
}

.mrcap-18plus-care-card p{
  margin:0 0 21px!important;
  color:#b8bcbe!important;
  -webkit-text-fill-color:#b8bcbe!important;
  font-size:15px!important;
  line-height:1.66!important;
}

.mrcap-18plus-care-card strong{
  display:inline-block;
  width:max-content;
  margin-top:auto;
  padding-bottom:5px;
  border-bottom:2px solid var(--mrcap-18-yellow);
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.045em!important;
}


/* =========================================================
   04. PROOF — 1990 / 2008 / 18+
   ========================================================= */

.mrcap-18plus-proof{
  padding:54px 0!important;
  background:var(--mrcap-18-dark)!important;
  color:#fff!important;
}

.mrcap-18plus-proof-inner{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:64px;
  align-items:center;
}

.mrcap-18plus-proof .mrcap-eyebrow{
  color:var(--mrcap-18-yellow)!important;
  -webkit-text-fill-color:var(--mrcap-18-yellow)!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
}

.mrcap-18plus-proof h2{
  max-width:610px;
  margin:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(36px,3.3vw,48px)!important;
  font-weight:300!important;
  line-height:1.045!important;
}

.mrcap-18plus-proof-copy p{
  max-width:620px;
  margin:17px 0 0!important;
  color:#b7bbbd!important;
  -webkit-text-fill-color:#b7bbbd!important;
  font-size:15px!important;
  line-height:1.68!important;
}

.mrcap-18plus-text-link{
  display:inline-block;
  margin-top:22px;
  padding-bottom:5px;
  border-bottom:2px solid var(--mrcap-18-yellow);
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.045em!important;
}


/* Proof stats */

.mrcap-18plus-proof-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(255,255,255,.13);
  border-left:1px solid rgba(255,255,255,.13);
}

.mrcap-18plus-proof-stats > div{
  min-height:185px;
  padding:25px 21px;
  border-right:1px solid rgba(255,255,255,.13);
  border-bottom:1px solid rgba(255,255,255,.13);
}

.mrcap-18plus-proof-stats strong{
  display:block;
  margin-bottom:21px;
  color:var(--mrcap-18-yellow)!important;
  -webkit-text-fill-color:var(--mrcap-18-yellow)!important;
  font-size:clamp(40px,3.8vw,56px)!important;
  font-weight:300!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}

.mrcap-18plus-proof-stats > div:last-child strong{
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
}

.mrcap-18plus-proof-stats span{
  display:block;
  color:#d1d4d6!important;
  font-size:13px!important;
  line-height:1.52!important;
}


/* =========================================================
   05. FORMULAU + MASTERTREATMENT
   ========================================================= */

.mrcap-18plus-programs{
  padding:54px 0 58px!important;
  background:var(--mrcap-18-warm)!important;
  color:#17191b!important;
}

.mrcap-18plus-programs-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}


/* Program cards */

.mrcap-18plus-program-card{
  overflow:hidden!important;
  background:#fff;
  border:1px solid rgba(0,0,0,.09);
  transition:transform .22s ease,border-color .22s ease;
}

.mrcap-18plus-program-card:hover{
  transform:translateY(-2px);
  border-color:rgba(0,0,0,.18);
}

.mrcap-18plus-program-card > a{
  display:block;
  height:100%;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  text-decoration:none!important;
}


/* Program images */

.mrcap-18plus-program-image{
  display:block!important;
  position:relative!important;
  height:275px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  background:#dedede;
  line-height:0!important;
  font-size:0!important;
}

.mrcap-18plus-program-image img,
.mrcap-18plus-program-image .mrcap-service-card-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:cover!important;
  vertical-align:top!important;
  transition:transform .35s ease;
}

.mrcap-18plus-program-card:hover .mrcap-18plus-program-image img{
  transform:scale(1.015);
}

.mrcap-18plus-program-image p{
  display:contents!important;
  margin:0!important;
  padding:0!important;
}

.mrcap-18plus-program-image br,
.mrcap-18plus-program-image:before,
.mrcap-18plus-program-image:after{
  display:none!important;
  content:none!important;
}


/* Program content */

.mrcap-18plus-program-body{
  min-height:225px;
  display:flex;
  flex-direction:column;
  padding:23px 24px 25px;
}

.mrcap-18plus-program-body .mrcap-eyebrow{
  margin-bottom:15px!important;
}

.mrcap-18plus-program-card h3{
  margin:0 0 11px!important;
  color:#17191b!important;
  font-size:24px!important;
  font-weight:400!important;
  line-height:1.12!important;
}

.mrcap-18plus-program-card p{
  margin:0 0 20px!important;
  color:#5c6265!important;
  font-size:15px!important;
  line-height:1.66!important;
}

.mrcap-18plus-program-card strong{
  display:inline-block;
  width:max-content;
  margin-top:auto;
  padding-bottom:5px;
  border-bottom:2px solid var(--mrcap-18-yellow);
  color:#17191b!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.045em!important;
}

.mrcap-18plus-programs-link{
  margin-top:24px;
}

.mrcap-18plus-programs-link a{
  display:inline-block;
  padding-bottom:5px;
  border-bottom:2px solid var(--mrcap-18-yellow);
  color:#17191b!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.045em!important;
}


/* =========================================================
   06. QUOTE — CAMPAIGN MOMENT
   ========================================================= */

.mrcap-18plus-quote{
  padding:50px 0 54px!important;
  background:#060708!important;
  color:#fff!important;
}

.mrcap-18plus-quote-inner{
  position:relative!important;
  width:min(820px,calc(100% - 64px))!important;
  max-width:820px!important;
  margin:0 auto!important;
  text-align:center!important;
}

.mrcap-18plus-quote-accent{
  display:block!important;
  width:34px!important;
  height:2px!important;
  margin:0 auto 21px!important;
  background:var(--mrcap-18-red)!important;
}


/* Kill all Maya/theme quotation marks */

.mrcap-18plus-quote blockquote:before,
.mrcap-18plus-quote blockquote:after,
.mrcap-18plus-quote .wpb_wrapper blockquote:before,
.mrcap-18plus-quote .wpb_wrapper blockquote:after,
.mrcap-18plus-quote blockquote p:before,
.mrcap-18plus-quote blockquote p:after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}

.mrcap-18plus-quote blockquote{
  quotes:none!important;
  position:relative!important;
  display:block!important;
  max-width:760px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  color:#f4f0e9!important;
  -webkit-text-fill-color:#f4f0e9!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(31px,3vw,43px)!important;
  font-weight:400!important;
  font-style:italic!important;
  line-height:1.16!important;
  letter-spacing:-.025em!important;
}

.mrcap-18plus-quote blockquote span{
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
}


/* =========================================================
   07. FINAL CTA
   ========================================================= */

.mrcap-18plus-final{
  padding:54px 0!important;
  background:#0b0d0f!important;
  color:#fff!important;
  border-top:1px solid rgba(255,255,255,.11);
}

.mrcap-18plus-final-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:62px;
}

.mrcap-18plus-final .mrcap-eyebrow{
  color:var(--mrcap-18-yellow)!important;
  -webkit-text-fill-color:var(--mrcap-18-yellow)!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
}

.mrcap-18plus-final h2{
  max-width:750px;
  margin:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(36px,3.4vw,49px)!important;
  font-weight:300!important;
  line-height:1.04!important;
}

.mrcap-18plus-final p{
  max-width:680px;
  margin:16px 0 0!important;
  color:#b8bcbe!important;
  -webkit-text-fill-color:#b8bcbe!important;
  font-size:15px!important;
  line-height:1.66!important;
}

.mrcap-18plus-final-actions{
  min-width:270px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
}

.mrcap-18plus-final-link{
  display:inline-block;
  padding-bottom:5px;
  border-bottom:2px solid var(--mrcap-18-yellow);
  color:#fff!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.045em!important;
}

.mrcap-18plus-phone{
  color:#fff!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:600!important;
}


/* =========================================================
   08. TABLET — ≤991px
   ========================================================= */

@media(max-width:991px){

  .mrcap-18plus-hero-inner,
  .mrcap-18plus-reveal-inner,
  .mrcap-18plus-section-head,
  .mrcap-18plus-care-grid,
  .mrcap-18plus-proof-inner,
  .mrcap-18plus-programs-grid,
  .mrcap-18plus-programs-link,
  .mrcap-18plus-final-inner{
    width:calc(100% - 44px);
  }

  .mrcap-18plus-hero{
    min-height:590px!important;
  }

  .mrcap-18plus-hero .vc_column-inner{
    padding:58px 32px!important;
  }

  .mrcap-18plus-reveal-inner,
  .mrcap-18plus-proof-inner{
    grid-template-columns:1fr;
    gap:26px;
  }

  .mrcap-18plus-reveal-number{
    justify-self:start!important;
  }

  .mrcap-18plus-care-grid{
    grid-template-columns:1fr;
  }

  .mrcap-18plus-care-card > a{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
  }

  .mrcap-18plus-care-image{
    height:100%!important;
    min-height:290px!important;
  }

  .mrcap-18plus-care-body{
    min-height:290px;
  }

  .mrcap-18plus-final-inner{
    flex-direction:column;
    align-items:flex-start;
  }

}


/* =========================================================
   09. MOBILE — ≤767px
   ========================================================= */

@media(max-width:767px){

  .mrcap-18plus-hero-inner,
  .mrcap-18plus-reveal-inner,
  .mrcap-18plus-section-head,
  .mrcap-18plus-care-grid,
  .mrcap-18plus-proof-inner,
  .mrcap-18plus-programs-grid,
  .mrcap-18plus-programs-link,
  .mrcap-18plus-final-inner{
    width:calc(100% - 32px);
  }


  /* HERO */

  .mrcap-18plus-hero{
    min-height:590px!important;
    align-items:flex-end!important;
  }

  .mrcap-18plus-hero-visual{
    background-position:72% center;
  }

  .mrcap-18plus-hero-overlay{
    background:linear-gradient(
      180deg,
      rgba(2,3,3,.08) 0%,
      rgba(2,3,3,.18) 28%,
      rgba(2,3,3,.58) 58%,
      rgba(2,3,3,.96) 100%
    );
  }

  .mrcap-18plus-hero .vc_column-inner{
    min-height:590px!important;
    display:flex!important;
    align-items:flex-end!important;
    padding:42px 22px!important;
  }

  .mrcap-18plus-hero-inner{
    width:100%;
    max-width:none;
  }

  .mrcap-18plus-age{
    margin-bottom:19px!important;
    font-size:58px!important;
  }

  .mrcap-18plus-age:after{
    width:30px!important;
    margin-top:13px!important;
  }

  .mrcap-18plus-hero .mrcap-eyebrow{
    font-size:9.5px!important;
    margin-bottom:9px!important;
  }

  .mrcap-18plus-hero h1{
    max-width:340px!important;
    font-size:33px!important;
    line-height:1.04!important;
  }

  .mrcap-18plus-hero-lead{
    max-width:330px!important;
    margin-top:15px!important;
    font-size:14px!important;
  }

  .mrcap-18plus-hero-actions{
    margin-top:20px!important;
  }


  /* REVEAL */

  .mrcap-18plus-reveal-inner{
    padding-top:46px;
    padding-bottom:46px;
    gap:23px;
  }

  .mrcap-18plus-reveal-number strong{
    font-size:70px!important;
  }

  .mrcap-18plus-reveal-number span{
    margin-top:7px!important;
    font-size:9px!important;
  }


  /* GENERAL SECTIONS */

  .mrcap-18plus-care,
  .mrcap-18plus-proof,
  .mrcap-18plus-programs,
  .mrcap-18plus-final{
    padding-top:46px!important;
    padding-bottom:46px!important;
  }

  .mrcap-18plus-reveal h2,
  .mrcap-18plus-section-head h2,
  .mrcap-18plus-proof h2,
  .mrcap-18plus-final h2{
    font-size:29px!important;
    line-height:1.07!important;
  }

  .mrcap-18plus-reveal p,
  .mrcap-18plus-section-head > p{
    font-size:15px!important;
  }

  .mrcap-18plus-reveal-line{
    font-size:17px!important;
  }


  /* CARE */

  .mrcap-18plus-care-grid{
    margin-top:26px;
  }

  .mrcap-18plus-care-card > a{
    display:block;
  }

  .mrcap-18plus-care-image{
    height:215px!important;
    min-height:0!important;
  }

  .mrcap-18plus-care-body{
    min-height:0;
    padding:22px 20px 23px;
  }

  .mrcap-18plus-care-card h3{
    font-size:22px!important;
  }


  /* PROOF */

  .mrcap-18plus-proof-stats{
    grid-template-columns:1fr;
  }

  .mrcap-18plus-proof-stats > div{
    min-height:0;
    padding:21px 20px;
  }

  .mrcap-18plus-proof-stats strong{
    margin-bottom:10px;
    font-size:44px!important;
  }


  /* PROGRAMS */

  .mrcap-18plus-programs-grid{
    grid-template-columns:1fr;
    margin-top:26px;
  }

  .mrcap-18plus-program-image{
    height:215px!important;
  }

  .mrcap-18plus-program-body{
    min-height:0;
    padding:22px 20px 23px;
  }

  .mrcap-18plus-program-card h3{
    font-size:23px!important;
  }


  /* QUOTE */

  .mrcap-18plus-quote{
    padding:43px 0 47px!important;
  }

  .mrcap-18plus-quote-inner{
    width:calc(100% - 32px)!important;
  }

  .mrcap-18plus-quote-accent{
    margin-bottom:17px!important;
  }

  .mrcap-18plus-quote blockquote{
    font-size:27px!important;
    line-height:1.17!important;
  }


  /* CTA */

  .mrcap-18plus-final-actions{
    width:100%;
    min-width:0;
  }

}
/* =========================================================
   MRCAP 18+ — BRAND COLOR NORMALIZATION
   Red = campaign / Yellow = MrCAP brand
   ========================================================= */


/* ---------------------------------------------------------
   01. CARE CARDS
   KAISTE / TAASTA / HOOLITSE -> MrCAP yellow
   --------------------------------------------------------- */

.mrcap-18plus-care-card .mrcap-eyebrow{
  color:var(--mrcap-18-yellow)!important;
  -webkit-text-fill-color:var(--mrcap-18-yellow)!important;
}

.mrcap-18plus-care-card:hover{
  border-color:rgba(255,229,0,.32)!important;
}

.mrcap-18plus-care-card:before{
  background:var(--mrcap-18-yellow)!important;
}


/* ---------------------------------------------------------
   02. PROOF STATS
   1990 / 2008 / 18+ all in brand yellow
   --------------------------------------------------------- */

.mrcap-18plus-proof-stats > div:last-child strong{
  color:var(--mrcap-18-yellow)!important;
  -webkit-text-fill-color:var(--mrcap-18-yellow)!important;
}


/* ---------------------------------------------------------
   03. QUOTE
   Remove red from body copy
   Keep only MrCAP yellow accent line
   --------------------------------------------------------- */

.mrcap-18plus-quote-accent{
  background:var(--mrcap-18-yellow)!important;
}

.mrcap-18plus-quote blockquote span{
  color:#f4f0e9!important;
  -webkit-text-fill-color:#f4f0e9!important;
}


/* ---------------------------------------------------------
   04. OPTIONAL HOVER CONSISTENCY
   All text links remain MrCAP yellow
   --------------------------------------------------------- */

.mrcap-18plus-text-link,
.mrcap-18plus-program-card strong,
.mrcap-18plus-programs-link a,
.mrcap-18plus-care-card strong,
.mrcap-18plus-final-link{
  border-bottom-color:var(--mrcap-18-yellow)!important;
}


/* ---------------------------------------------------------
   05. KEEP CAMPAIGN RED ONLY HERE
   Hero + reveal 18+
   --------------------------------------------------------- */

.mrcap-18plus-age,
.mrcap-18plus-hero h1 span,
.mrcap-18plus-reveal-number strong{
  color:var(--mrcap-18-red)!important;
  -webkit-text-fill-color:var(--mrcap-18-red)!important;
}

.mrcap-18plus-age:after{
  background:var(--mrcap-18-red)!important;
}
.mrcap-18plus-main{overflow:hidden;}
.mrcap-18plus-main .mrcap-button{display:inline-flex;align-items:center;padding:17px 25px;background:#fff;color:#090909;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.06em;}
.mrcap-18plus-main .mrcap-button:hover{background:#ffe500;}

/* Retained articles render natively, with a comfortable reading width. */
.single-post .mrcap-main > .mrcap-container{
  max-width:820px;
  font-size:18px;
  line-height:1.75;
}
.single-post .mrcap-main h1{
  font-size:clamp(30px,4vw,46px);
  line-height:1.15;
  font-weight:500;
  margin:0 0 32px;
}
.single-post .mrcap-main h2{
  font-size:var(--mrcap-heading-card);
  line-height:1.25;
  margin:40px 0 20px;
}
.single-post .mrcap-main img{
  max-width:100%;
  height:auto;
}

/* Language selection stays visible independently of the mobile menu. */
.mrcap-nav .wpml-ls-item{
  display:none !important;
}
.mrcap-language-switcher{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  gap:6px;
  padding-left:16px;
  border-left:1px solid rgba(255,255,255,.2);
}
.mrcap-language-switcher a{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  min-height:44px;
  color:#fff;
  font-size:11px;
  font-weight:600;
  letter-spacing:.045em;
  text-decoration:none;
}
.mrcap-language-switcher a + a::before{
  content:"·";
  position:absolute;
  left:-5px;
  color:#7a7e80;
}
.mrcap-language-switcher a[aria-current="page"],
.mrcap-language-switcher a:hover{
  color:var(--mrcap-yellow);
}
.mrcap-language-switcher a:focus-visible{
  outline:2px solid var(--mrcap-yellow);
  outline-offset:1px;
  border-radius:3px;
}
@media(max-width:1000px){
  .mrcap-site-header__inner{gap:8px;}
  .mrcap-logo img{height:32px;}
  .mrcap-language-switcher{
    margin-left:auto;
    padding-left:0;
    border-left:0;
    gap:4px;
  }
  .mrcap-language-switcher a{font-size:12px;}
  .mrcap-language-switcher a + a::before{left:-4px;}
  .mrcap-menu-toggle{
    flex:0 0 36px;
    width:36px;
    margin-left:0;
    padding:6px;
  }
}

