/*
Theme Name: Rotulamed Theme 2026
Template: Divi
Text Domain: rotulamed-theme-2026
Author: gomolecdev
Version: 1.1.0
*/

:root {
  /* font-size */
  --fs-h1: clamp(1.875rem, 4vw, 3rem); /* 30px ~ 48px */
  --fs-h2: clamp(1.75rem, 3.2vw, 2.5rem); /* 28px ~ 40px */
  --fs-h3: clamp(1.5rem, 2.6vw, 2.0625rem); /* 24px ~ 33px */
  --fs-h4: clamp(1.25rem, 2vw, 1.75rem); /* 20px ~ 28px */
  --fs-h5: clamp(1.125rem, 1.6vw, 1.4375rem); /* 18px ~ 23px */
  --fs-h6: clamp(1rem, 1.2vw, 1.1875rem); /* 16px ~ 19px */
  --fs-body: 1rem; /* 16px */
  --fs-body-small: .9375rem; /* 15px */
  --fs-caption: .8125rem; /* 13px */
  --fs-footnote: .6875rem; /* 11px */
  --fs-label: 16px; /* 16px */

  /* line-height */
  --lh-heading: 1.2;     /* H1–H6 */
  --lh-body: 1.6;        /* akapit */
  --lh-caption: 1.45;
  --lh-footnote: 1.35;

  /* spacing */
  --sp-heading: -0.0625rem; /* -1px */
  --sp-body: 0rem; /* 0px */

  /* Neutral */
  --neutral-50:#F8F8F8; --neutral-100:#E6E6E7; --neutral-200:#D5D5D6;
  --neutral-300:#C1C1C3; --neutral-400:#B0B0B2; --neutral-500:#8F8F92;
  --neutral-600:#6A6A6E; --neutral-700:#45454A; --neutral-800:#39393D;
  --neutral-900:#202025; --neutral-950:#07070D;

  /* Primary */
  --primary-50:#EBEBF5; --primary-100:#D7D7EA; --primary-200:#B3B2D7;
  --primary-300:#8C89C2; --primary-400:#6764AF; --primary-500:#4C498E;
  --primary-600:#3D3B73; --primary-700:#2D2B54; --primary-800:#1F1D39;
  --primary-900:#0E0E1B; --primary-950:#07070D;

  /* Secondary */
  --secondary-50:#F0F6FA; --secondary-100:#E0EDF5; --secondary-200:#BED9E9;
  --secondary-300:#A0C6DF; --secondary-400:#7DB2D3; --secondary-500:#5FA0C9;
  --secondary-600:#3B82AF; --secondary-700:#2D6385; --secondary-800:#1E4158;
  --secondary-900:#0F222E; --secondary-950:#081117;

  /* Tertiary */
  --tertiary-50:#F5EBF1; --tertiary-100:#EAD7E3; --tertiary-200:#D7B2CA;
  --tertiary-300:#C289AE; --tertiary-400:#AF6495; --tertiary-500:#8E4976;
  --tertiary-600:#733B5F; --tertiary-700:#542B46; --tertiary-800:#391D30;
  --tertiary-900:#1B0E16; --tertiary-950:#0D070B;

  /* Black/White */
  --black:#030712;
  --white:#FFFFFF;

  --default-shadow: 0 8px 20px #20202518;

  --radius: 12px;

  --max-width-content: 1500px;
}

@media (max-width: 48rem) {
	:root {
    --lh-body: 1.5;
  }
}

/* h1, h2, h3, h4, h5, h6 {} ustawienia divi -> custom css */

/* .caption, .footnote, .label {}  ustawienia divi -> custom css */

/* style dla przycisków - ustawienia divi -> custom css */

/* Style dla custom headera */


/* RESET OGÓLNY */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}


/* ---------------- MARKETING BAR ---------------- */

.rm-marketing-bar {
  width: 100%;
  background-color: var(--primary-500);
  z-index: 60;
}

.rm-marketing-bar-inner {
  width: 100%;
  max-width: var(--max-width-content);
  margin: 0 auto;
  padding: 1rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.rm-marketing-bar-text {
  font-size: var(--fs-caption);
  line-height: var(--lh-heading);
  text-align: center;
  color: var(--white);
  font-weight: 600;
  width: 100%;
}

.rm-marketing-bar-text a {
  color: var(--white) !important;
  text-decoration: underline;
  font-weight: 700;
}

.rm-marketing-bar-actions {
  display: none;
}

@media (min-width: 768px) {
  .rm-marketing-bar-inner {
    height: 48px;
    padding: 0 1rem;
  }
}

@media (min-width: 992px) {
  .rm-marketing-bar-text {
    text-align: left;
    width: auto;
  }

  .rm-marketing-bar-actions {
    display: flex;
    align-items: center;
    gap: .5rem;
  }
}

.rm-marketing-bar-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: var(--white);
}

.rm-marketing-bar-icon .et-pb-icon {
  font-size: 20px !important;
  color: var(--white) !important;
  font-family: "ETmodules" !important;
  line-height: 1 !important;
}

.rm-marketing-bar-phone {
  display: flex;
  align-items: center;
  padding-right: .75rem;
}

.rm-marketing-bar-icon:hover, .rm-marketing-bar-phone:hover {
    background-color: var(--primary-600);
    border-radius: var(--radius);
  }

.rm-marketing-bar-icon:active, .rm-marketing-bar-phone:active {
  background-color: var(--primary-700);
  border-radius: var(--radius);
}

.rm-marketing-bar-phone-number {
  font-size: var(--fs-label);
  line-height: var(--lh-body);
  font-weight: 600;
  text-decoration: none;
  color: var(--white);
}


/* ---------------- HEADER ---------------- */

.rm-header {
  width: 100%;
  background-color: var(--white);
  z-index: 50;
  border-bottom: 1px solid var(--neutral-200);
  box-shadow: var(--default-shadow);

  h1, h2, h3, h4, h5, h6, a {
    color: var(--black) !important;
  }
}

.rm-header-top {
  width: 100%;
  max-width: var(--max-width-content);
  height: 64px;
  margin: 0 auto;
  padding: 0 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.rm-menu-btn .rm-header-action-icon {
  font-size: 24px !important;
}

.rm-header-logo {
  display: inline-block;
  line-height: 0;
  margin-left: .25rem;
}

.rm-header-logo img {
  width: 100%;
  max-width: 200px;
  height: auto;
  object-fit: cover;
}

.rm-header-top .rm-search-bar {
  display: none;
}

.rm-header-spacer {
  flex-grow: 1;
  min-width: 16px;
}

.rm-header-action-btns {
  display: flex;
  align-items: center;
  gap: .25rem;
}

.rm-header-action-btn {
  display: flex;
  align-items: center;

  &:hover {
    background-color: var(--primary-50);
    border-radius: var(--radius);
  }

  &:active {
    background-color: var(--primary-100);
    border-radius: var(--radius);
  }
}

.rm-header-action-icon {
  height: 44px !important;
  width: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: "ETmodules" !important;
  font-size: 20px !important;
  line-height: 1 !important;
  color: var(--neutral-900) !important;
  /* color: var(--white) !important; */
}

.rm-header-action-label {
  display: none;
  font-size: var(--fs-label);
  letter-spacing: var(--sp-body);
  font-weight: 600;
  white-space: nowrap;
}

@media (min-width: calc(992px + 100px)) {
  .rm-header-top {
    height: 5rem;
    gap: 5rem;
  }

  .rm-menu-btn-container {
    display: none;
  }

  .rm-header-logo {
    margin-left: .75rem;
  }

  .rm-header-logo img {
    width: 200px;
  }

  .rm-header-top .rm-search-bar {
    display: block;
  }

  .rm-header-spacer {
    display: none;
  }
}

@media (min-width: 1200px) {
  .rm-header-action-btn {
    padding: 0 1rem 0 .25rem;
  }

  .rm-header-action-label {
    display: block;
  }
}

.rm-header-bottom {
  width: 100%;
  max-width: var(--max-width-content);
  height: 64px;
  margin: 0 auto;
}

.rm-search-bar {
  width: 100%;
  height: 48px;
  padding: 0 1rem;
}

.rm-main-nav {
  display: none;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  padding: 0 1rem;
  position: relative;
}

ul.rm-main-nav {
  padding: 0 1rem;
}

.rm-main-nav li, .rm-main-nav .sub-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rm-main-nav > li {
  display: flex;
  align-items: stretch;
  height: 100%;
}

.rm-main-nav > li > a {
  display: flex;
  align-items: center;
  height: 100%;
  text-decoration: none;
  color: var(--neutral-900);
  padding: 0 1rem;
  font-weight: 600;
  text-transform: uppercase;
  font-size: var(--fs-body);

  &:hover {
    border-bottom: 1px solid var(--primary-500);
  }
}

@media (min-width: calc(992px + 100px)) {
  .rm-header-bottom {
    height: 48px;
  }

  .rm-header-bottom .rm-search-bar {
    display: none;
  }

  .rm-main-nav {
    display: flex;
  }
}

.rm-main-nav > li.rm-header-home-item > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 100%;
  font-family: "ETmodules";
  font-size: 18px;
}

.rm-main-nav > li.menu-item-has-children > a {
  padding-right: .5rem;
}

.rm-main-nav > li.menu-item-has-children > a .rm-dropdown-icon{
  width: 1.5rem;
  text-align: center;
  font-family: "ETmodules";
  font-size: .875rem;
  pointer-events: none;
}

/* DROPDOWN NAVBAR - LARGE VIEW */

.rm-main-nav .mega-menu:hover > .sub-menu {
  display: flex;
}

/* 1. poziom */
.rm-main-nav .mega-menu > .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: var(--white);
  display: none;
  width: 100%;
  max-width: var(--max-width-content);
  z-index: 9999;
  margin-top: 0;
  border: 1px solid var(--neutral-200);
  border-radius: 0 0 var(--radius) var(--radius);
  gap: .25rem;
  flex-wrap: wrap;
  padding: .5rem 0;
  box-shadow: var(--default-shadow);
}

.rm-main-nav .mega-menu > .sub-menu > li {
  display: flex;
  flex-direction: column;
  width: 240px;
  padding: .5rem;

  & > a {
    font-weight: 600;
    text-transform: uppercase;
  }
}

.rm-main-nav .sub-menu > li > a {
  display: block;
  width: 100%;
  font-size: var(--fs-caption);
  font-weight: 500;
  letter-spacing: var(--sp-body);
  line-height: var(--lh-caption);
  text-decoration: none;
  color: var(--neutral-900);
  padding: .25rem .5rem;

  &[href="#"] {
    cursor: default;
  }

  &:not([href="#"]):hover {
    text-decoration: underline;
    text-decoration-color: var(--primary-500);
  }
}

/* 2. poziom */
.rm-main-nav .mega-menu > .sub-menu > li > .sub-menu {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: .25rem;
  margin-top: .25rem;
}

.rm-main-nav li.current-menu-item > a,
.rm-main-nav li.current-menu-ancestor > a {
    color: var(--tertiary-500) !important;
}

.sub-menu li.current-menu-item > a {
    color: var(--tertiary-500) !important;
}

.rm-mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  background: var(--white);
  z-index: 9999;
  display: none;
  height: 100dvh;
  width: 100%;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: none;
  padding: .25rem 1rem .25rem 1rem;
}

.rm-mobile-nav {
  height: calc(100% + 1px);
}

.rm-mobile-menu-topbar {
  display: flex;
  justify-content: flex-end;
  padding: .25rem 0;
}

.rm-mobile-menu-overlay.is-open {
  display: block;
}

@media (min-width: calc(992px + 100px)) {
  .rm-mobile-menu-overlay {
    display: none !important;
  }
}

.rm-mobile-nav a {
  text-decoration: none;
  color: var(--neutral-900);
  font-weight: 600;
}

ul.rm-mobile-nav, .rm-mobile-nav li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rm-mobile-nav > li {
  border-bottom: 1px solid var(--neutral-200);

  &:last-child {
    border-bottom: none;
  }
}

.rm-mobile-nav > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 48px;
  width: 100%;
  text-transform: uppercase;
  font-size: var(--fs-body);
  font-weight: 600;
}

.rm-mobile-nav .rm-dropdown-icon{
  width: 1.5rem;
  text-align: center;
  font-family: "ETmodules";
  font-size: 14px;
  pointer-events: none;
}

.rm-mobile-nav .sub-menu {
  display: none;
  border: none;
  padding: .25rem 0 .25rem 1.5rem;
}

.rm-mobile-nav .sub-menu li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 500;
  height: 40px;
  text-transform: none;
  font-size: var(--fs-body);
}


/* ---------------- SEARCH BAR ---------------- */
.ysm-smart-search-input-holder input {
  border: 2px solid var(--neutral-100) !important;
  border-radius: var(--radius);
  color: var(--neutral-600) !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
  height: 48px !important;

}

.ysm-smart-search-input-holder input label {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
}

.ysm-smart-search-input-holder .search-submit {
  color: var(--neutral-800) !important;
  right: 4px;
}

.smart-search-popup {
  border: 2px solid var(--neutral-100) !important;
  border-radius: var(--radius);
  margin-top: .25rem;
}

.smart-search-suggestions .autocomplete-suggestion {
  border-bottom: 2px solid var(--neutral-100) !important;
}

.smart-search-suggestions .smart-search-post-icon {
  margin-right: 1rem;
}

.smart-search-suggestions .smart-search-post-title {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
  color: var(--black) !important;
}

.smart-search-view-all {
  background-color: var(--primary-50) !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600 !important;
  font-size: var(--fs-body) !important;
  color: var(--primary-600) !important;
}


/* ---------------- LINK CARD MODULE ---------------- */
.link-card {
  width: 100%;
  min-width: 280px;
  height: auto;
  padding-bottom: 1rem;
  scroll-snap-align: center;
}

.link-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.link-card-link:hover .link-img {
  box-shadow: var(--default-shadow);
}

.link-img {
  width: 100%;
  border: 1px solid var(--neutral-300);
  background-color: var(--neutral-50);
  border-radius: var(--radius);
  overflow: hidden;
}

.link-img img {
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.link-title {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding-top: 1rem;
  padding-bottom: .5rem;
}

.link-title h4 {
  padding: 0;
  margin: 0;
  font-size: var(--fs-h6);
  letter-spacing: var(--ls-heading);
  line-height: 1;
  font-weight: 600;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  overflow: hidden;
}

.link-card-link:hover .link-title h4 {
  text-decoration: underline;
  text-decoration-color: var(--neutral-500);
}

.link-title-icon {
  height: 24px;
  width: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: .5rem;
  font-size: 16px;
  line-height: 1;
}

.link-description {
  font-size: var(--fs-caption);
  line-height: var(--lh-body);
  letter-spacing: var(--ls-heading);
  color: var(--neutral-900);
  font-weight: 500;
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}


/* ---------------- PRODUCT CARD MODULE ---------------- */
.product-card {
  position: relative;
  width: 100%;
  padding-bottom: 1rem;
  min-width: 280px;
  scroll-snap-align: center;
}

.product-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.product-card-link:hover .product-img {
  box-shadow: var(--default-shadow);
}

.product-img {
  width: 100%;
  border: 1px solid var(--neutral-300);
  background-color: var(--neutral-50);
  border-radius: var(--radius);
  overflow: hidden;
}

.product-img img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.product-wishlist {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  margin: .5rem;
}

.product-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before {
  font-size: 2rem;
  color: var(--primary-600);
  margin: 0 !important;
  position: static;
}

.product-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-title {
  display: flex;
  align-items: center;
  padding-top: 1rem;
  padding-bottom: .5rem;
}

.product-title h4 {
  padding: 0;
  margin: 0;
  font-size: var(--fs-h6);
  letter-spacing: var(--ls-heading);
  line-height: 1;
  font-weight: 600;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.product-card-link:hover .product-title h4 {
  text-decoration: underline;
  text-decoration-color: var(--neutral-500);
}

.product-description {
  margin: 0;
  font-size: var(--fs-caption);
  line-height: var(--lh-body);
  color: var(--neutral-900);
  letter-spacing: var(--ls-heading);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  font-weight: 500;
}

.product-price {
  margin-top: .5rem;
  font-size: var(--fs-h6);
  letter-spacing: var(--ls-heading);
  line-height: var(--lh-body);
  font-weight: 700;
  color: var(--primary-600);
}


/* ---------------- BRAND CARD MODULE ---------------- */
.brand-card {
  width: 100%;
}

.brand-card-link {
  height: 100%;
  display: block;
  text-decoration: none;
  color: inherit;
  background-color: var(--neutral-50);
  border: 1px solid var(--neutral-300);
  border-radius: var(--radius);
  padding: 1.5rem;
}

.brand-card-link:hover {
  box-shadow: var(--default-shadow);
}

.brand-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
}

.brand-card-logo img {
  display: block;
  max-height: 40px;
  width: 100%;
  object-fit: contain;
  margin: .5rem 0;
  pointer-events: none;
}

.brand-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "ETmodules";
  font-size: 24px;
  line-height: 1;
  width: 44px;
  height: 44px;
}

.brand-card-text {
  margin-top: 1rem;
  line-height: 1.5;
  color: var(--black);
  letter-spacing: 0rem;
  /* display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3; */
  overflow: hidden;
  font-weight: 500;
}

/* ---------------- REVIEW CARD MODULE ---------------- */

.review-card {
  width: 100%;
  min-width: 320px;
  border: 1px solid var(--neutral-300);
  border-radius: var(--radius);
  padding: 1.5rem;
  background-color: var(--neutral-50);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  scroll-snap-align: center;
}

.review-stars {
  display: flex;
  gap: .5rem;
  margin-bottom: 1rem;
}

.review-star {
  font-family: "ETmodules";
  font-size: 20px;
  color: var(--secondary-600);
}

.review-text {
  line-height: var(--lh-body);
  font-style: italic;
  font-weight: 500;
  letter-spacing: var(--sp-heading);
  color: var(--neutral-900);
  margin-bottom: 1.25rem;
  /* text-align: justify; */
  /* display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4; */
  overflow: hidden;
}

.review-footer {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.review-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--primary-500);
  display: flex;
  align-items: center;
  justify-content: center;
}

.review-avatar-icon {
  font-family: "ETmodules";
  font-size: 24px;
  color: var(--white);
}

.review-meta {
  display: flex;
  flex-direction: column;
}

.review-author {
  font-size: var(--fs-body);
  font-weight: 600;
  line-height: 120%;
  color: var(--neutral-900);
}

.review-source {
  font-size: var(--fs-caption);
  color: var(--neutral-700);
}


/* ---------------- BLOG POST CARD MODULE ---------------- */

.blog-post-card {
  width: 100%;
  min-width: 320px;
  scroll-snap-align: center;
}

.blog-post-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.blog-post-card-image {
  aspect-ratio: 3/2;
  border: 1px solid var(--neutral-200);
  background-color: var(--neutral-50);
  border-radius: var(--radius);
  overflow: hidden;
}

.blog-post-card-image img {
  width: 100%;
  display: block;
  aspect-ratio: 3/2;
  object-fit: cover;
  pointer-events: none;
}

.blog-post-card-link:hover .blog-post-card-image {
  box-shadow: var(--default-shadow);
}

.blog-post-card-body {
  padding: 1rem 0 .5rem 0;
}

.blog-post-card-meta {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  color: var(--neutral-700);
  font-weight: 500;
  letter-spacing: var(--sp-heading);
  margin-bottom: .5rem;
}

.blog-post-card-title {
  margin-bottom: .5rem;
  padding: 0;
  font-size: var(--fs-h6);
  line-height: var(--lh-heading);
  font-weight: 600;
  letter-spacing: var(--sp-heading);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.blog-post-card-link:hover .blog-post-card-title {
  text-decoration: underline;
  text-decoration-color: var(--neutral-500);
}

.blog-post-card-excerpt {
  margin: 0;
  font-size: var(--fs-caption);
  line-height: var(--lh-body);
  color: var(--black);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}


/* ---------------- FOOTER ---------------- */

.rm-footer {
  background-color: var(--primary-500);
  color: var(--white);
  padding: 2rem 1rem;
  width: 100%;

  h1, h2, h3, h4, h5, h6, a {
    color: var(--white) !important;
  }
}

@media (min-width: 768px) {
  .rm-footer {
    padding: 3rem 1rem 2rem 1rem;
  }
}

.rm-footer-inner {
  width: 100%;
}

@media (min-width: 1200px) {
  .rm-footer-inner {
    max-width: var(--max-width-content);
    margin: 0 auto 2rem auto;
    display: flex;
    gap: 5rem;
  }
}

.rm-footer-col {
  width: 100%;
}

.rm-footer-logo {
  width: 200px;
  aspect-ratio: 5/1;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
}

.rm-footer-logo img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.rm-footer-newsletter-title {
  font-size: var(--fs-h5) !important;
  line-height: var(--lh-heading) !important;
  letter-spacing: var(--sp-heading) !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  padding: 0 !important;
  margin-bottom: .5rem !important;
}

.rm-footer-newsletter-desc {
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--white);
  padding: 0;
  margin: 0 0 1.5rem 0;
}

.rm-footer-newsletter-note {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  color: var(--white);
  padding: 0;
  margin: 0 0 2rem 0;
}

.rm-footer-contact, .rm-footer-links {
  margin-bottom: 2rem;
  padding-top: 2rem;
  border-top: 1px solid var(--white);
}

@media (min-width: 768px) {
  .rm-footer-info-cols {
    display: flex;
    gap: 2rem;
    margin-bottom: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--white);
  }

  .rm-footer-contact, .rm-footer-links {
    flex: 1 1 0;
    margin: 0;
    padding: 0;
    border: none;
  }
}

@media (min-width: 1200px) {
  .rm-footer-info-cols {
    display: flex;
    gap: 5rem;
    margin: 0;
    padding: 0;
    border-top: none;
  }
}

.rm-footer-section-title {
  font-size: var(--fs-h5) !important;
  line-height: var(--lh-heading) !important;
  letter-spacing: var(--sp-heading) !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  padding: 0 !important;
  margin-bottom: 1rem !important;
}

.rm-footer-company-name {
  font-size: var(--fs-h6);
  line-height: var(--lh-heading);
  letter-spacing: var(--sp-heading);
  font-weight: 600;
  margin-bottom: 1rem;
}

.rm-footer-contact-item {
  display: flex;
  align-items: center;
  margin-bottom: .25rem;
}

.rm-footer-contact-icon, .rm-footer-social-media-icon {
  font-family: "ETmodules" !important;
  font-size: 20px !important;
  line-height: 1 !important;
  height: 44px !important;
  width: 44px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  color: var(--white) !important;
}

.rm-footer-contact-text {
  /* font-size: var(--fs-body); */
  line-height: var(--lh-heading);
}

.rm-footer-contact-label {
  font-weight: 600;
}

a.rm-footer-contact-body {
  color: var(--white);
  display: block;

  &:hover {
    text-decoration: underline;
  }
}

.rm-footer-links-menu,
.rm-footer-links-menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.rm-footer-links-menu {
  padding: 0 !important;
  line-height: var(--lh-body);
  list-style-type: none;
}

.rm-footer-links-menu {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}

.rm-footer-links-menu a {
  /* font-size: var(--fs-body); */
  line-height: var(--lh-body);
  font-weight: 500;
  color: var(--white);

  &:hover {
    text-decoration: underline;
  }
}

.rm-footer-social-media-icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.rm-footer-social-media-icon:hover, .rm-footer-social-media-icon:hover {
    background-color: var(--primary-600);
    border-radius: var(--radius);
  }

.rm-footer-social-media-icon:active, .rm-footer-social-media-icon:active {
  background-color: var(--primary-700);
  border-radius: var(--radius);
}

.rm-footer-bottom {
  border-top: 1px solid var(--white);
  padding-top: 2rem;
}

.rm-footer-bottom-text {
  display: block;
  border-top: 1px solid var(--white);
  padding-top: 2rem;
  /* font-size: var(--fs-body); */
  line-height: var(--lh-header);
  font-weight: 600;
  color: var(--white);
}

@media (min-width: 768px) {
  .rm-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .rm-footer-bottom-text {
    border-top: none;
    padding-top: 0;
    order: -1;
  }

  .rm-footer-social-media-icons {
    margin-bottom: 0;
    gap: 1rem;
  }
}

@media (min-width: 1200px) {
  .rm-footer-bottom {
    max-width: var(--max-width-content);
    margin: 0 auto;
  }
}