/* =========================================================
   SPECIAL-SNACKS URLAUB POPUP START
   TEMPORÄR – NACH DEM URLAUB KOMPLETT LÖSCHEN
   ========================================================= */


/* ---------------------------------------------------------
   POPUP-BOX
   --------------------------------------------------------- */

#ws5_Popup .ws5_popupBannermittig{
  position: relative !important;

  width: calc(100% - 40px) !important;
  max-width: 760px !important;

  padding: 0 !important;

  background: #fff !important;
  border: 0 !important;
  border-radius: 18px !important;

  box-shadow: 0 18px 50px rgba(0,0,0,.18) !important;

  overflow: visible !important;
}


/* ---------------------------------------------------------
   POPUP-INHALT
   --------------------------------------------------------- */

#ws5_Popup #ws5_popupText{
  padding: 0 !important;
}

#ws5_Popup .ss-urlaub-popup{
  padding: 30px 28px 28px !important;

  text-align: center !important;
  font-family: inherit !important;
  color: #333 !important;
}


/* ---------------------------------------------------------
   BADGE
   --------------------------------------------------------- */

#ws5_Popup .ss-urlaub-popup__badge{
  display: inline-block !important;

  margin: 0 0 12px !important;
  padding: 6px 14px !important;

  background: rgba(180,0,0,.08) !important;
  border: 1px solid rgba(180,0,0,.18) !important;
  border-radius: 999px !important;

  color: #a80000 !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .06em !important;
}


/* ---------------------------------------------------------
   TITEL
   --------------------------------------------------------- */

#ws5_Popup .ss-urlaub-popup__title{
  margin: 0 0 14px !important;
  padding: 0 !important;

  color: #2f2f2f !important;

  font-size: 27px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}


/* ---------------------------------------------------------
   TEXT
   --------------------------------------------------------- */

#ws5_Popup .ss-urlaub-popup__text{
  max-width: 540px !important;

  margin: 0 auto 20px !important;
  padding: 0 !important;

  color: #555 !important;

  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

#ws5_Popup .ss-urlaub-popup__text strong{
  color: #333 !important;
  font-weight: 700 !important;
}


/* ---------------------------------------------------------
   VERSAND-DATUM
   --------------------------------------------------------- */

#ws5_Popup .ss-urlaub-popup__shipping{
  display: inline-block !important;

  margin: 0 auto !important;
  padding: 11px 18px !important;

  background: #f5f5f5 !important;
  border: 1px solid #e1e1e1 !important;
  border-radius: 10px !important;

  color: #3f3f3f !important;

  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

#ws5_Popup .ss-urlaub-popup__shipping strong{
  color: #a80000 !important;
  font-weight: 800 !important;
}


/* ---------------------------------------------------------
   CLOSE BUTTON
   echtes vorhandenes "x"
   --------------------------------------------------------- */

#ws5_Popup .ws5_popupBannermittig .close{
  position: absolute !important;

  top: 10px !important;
  right: 10px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 32px !important;
  height: 32px !important;

  margin: 0 !important;
  padding: 0 !important;

  background: #f5f5f5 !important;
  border: 1px solid #e1e1e1 !important;
  border-radius: 50% !important;

  color: #777 !important;

  font-family: Arial, sans-serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  text-align: center !important;

  cursor: pointer !important;
  opacity: 1 !important;

  z-index: 20 !important;

  transform: none !important;

  transition:
    background .15s ease,
    border-color .15s ease,
    color .15s ease !important;
}

#ws5_Popup .ws5_popupBannermittig .close:hover{
  background: #fff5f5 !important;
  border-color: #ddbcbc !important;
  color: #a80000 !important;

  transform: none !important;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 640px){

  #ws5_Popup .ws5_popupBannermittig{
    width: calc(100% - 24px) !important;
    border-radius: 14px !important;
  }

  #ws5_Popup .ss-urlaub-popup{
    padding: 26px 18px 22px !important;
  }

  #ws5_Popup .ss-urlaub-popup__title{
    font-size: 22px !important;
  }

  #ws5_Popup .ss-urlaub-popup__text{
    font-size: 14px !important;
  }

  #ws5_Popup .ss-urlaub-popup__shipping{
    padding: 9px 14px !important;
    font-size: 14px !important;
  }

  #ws5_Popup .ws5_popupBannermittig .close{
    top: 8px !important;
    right: 8px !important;

    width: 30px !important;
    height: 30px !important;

    font-size: 19px !important;
  }
}


/* =========================================================
   SPECIAL-SNACKS URLAUB POPUP ENDE
   ========================================================= */



.productbox-price {
  text-align: center;
  width: 100%;
  margin-top: 10px;
  font-size: 18px;
}
.productbox-title {
    display: block;
    text-align: center;
}
img.img-sm.img-fluid {
    width: 64px;
}
span.fas.fa-user-check {
    font-size: 25px;
}
i.fas.fa-shopping-cart.cart-icon-dropdown-icon {
    font-size: 25px;
}
span.fas.fa-user {
    font-size: 25px;
}
@media (min-width: 992px) {
    header .navbar-brand img {
        height: 60px;
    }
}
hr {
    border-top: 1px solid #F3F3F3;
}
#footer a.nav-link {
    color: #fff !important;
}

#footer a.nav-link:hover {
    color: #555 !important;
}
#footer .productlist-filter-headline {
    font-size: 16px;
    text-decoration: underline;
    text-transform: uppercase;
}
p.copyright-footer {
    font-size: 11px;
}
@media (hover) {
    .btn-icon-secondary:hover {
        border-color: #525252;
        color: #333333;
        background-color: #F3F3F3;
    }
}
.btn-icon-secondary {
    border-color: #F3F3F3;
    color: #F3F3F3;
    background-color: transparent;
}
/* Artikelnummer ausblenden */
li.product-sku {
    display: none;
}
span.fas.fa-home {
    font-size: 20px;
}
span.text-truncate.d-block {
    font-size: 20px;
    font-weight: bolder;
}
/* Suche in Header ausblenden */
.col.main-search-wrapper.nav-right.order-lg-2 {
    display: none;
}
/* Die Social-Media-Row selbst */
.footer-social-media {
    display: flex !important;
    justify-content: center !important;   /* Row-Inhalt in die Mitte */
}

/* Die UL mit den Icons */
.footer-social-media .list-unstyled {
    display: flex !important;            /* sicherstellen, dass Flex aktiv ist */
    justify-content: center !important;  /* Icons horizontal zentrieren */
    align-items: center !important;      /* vertikal mittig */
    padding-left: 0 !important;          /* evtl. Standard-Einrückung weg */
    margin: 0 !important;
}

/* Abstand zwischen den Icons (optional) */
.footer-social-media .list-unstyled li {
    margin: 0 8px !important;
}


.footnote-vat {
    text-align: center;
}
div#copyright {
    display: none;
}
.btn.btn-primary {
    background-color: #555 !important;
    color: #fff !important;
    border-color: #333 !important;
    border-radius: 10px !important;   /* <-- hier die Rundung */
}

.btn.btn-primary:hover,
.btn.btn-primary:focus {
    background-color: #777 !important;
    border-color: #555 !important;
    color: #fff !important;
}
h1.wow.bounce.h1_home {
    font-weight: bolder;
}
.col.col-md-6.col-lg-4.col-xl-4.col-12 {
    padding-right: 0rem;
}
.col.col-md-6.col-lg-6.col-xl-6.col-12 {
    padding-right: 0rem;
}
.grid_home {
    display: flex;
    align-items: center;  /* vertikal zentrieren */
}

.grid_home > .col {
    display: flex;
    flex-direction: column;   /* untereinander */
    justify-content: center;  /* ebenfalls vertikal zentrieren */
}

@media (hover) {
  .btn-outline-primary:hover {
    background-color: #a6a6a6;
    color: #fff;
  }
}

.ai-image-note{
  display: inline-flex;
  align-items: center;
  margin: 0 0 14px;
  padding: 6px 10px;

  font-size: 12px;
  font-weight: 700;
  line-height: 1;

  color: #3f3f3f;
  background: #f2f2f2;

  border: 1px solid #cfcfcf;
  border-radius: 6px;

  box-shadow: 0 2px 6px rgba(0,0,0,.06);
}

.home-ai-image-note{
  display: inline-flex;
  align-items: center;
  margin: 0 0 12px;
  padding: 5px 9px;

  font-size: 12px;
  font-weight: 600;
  line-height: 1;

  color: #4a4a4a;
  background: #f5f5f5;
  border: 1px solid #d6d6d6;
  border-radius: 6px;

  box-shadow: none;
}

/* =========================================================
   RIEMENSCHNEIDER – PRODUKTSTREAM
   OPC-Klasse: riem-productstream
   ========================================================= */

.riem-productstream,
.riem-productstream *{
  box-sizing: border-box;
}

/* =========================================================
   GESAMTBREITE
   ========================================================= */

.riem-productstream{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 26px 58px 34px;
  position: relative;
}

/* =========================================================
   SLIDER
   ========================================================= */

.riem-productstream .slick-list{
  overflow: hidden;
  padding: 8px 0 22px;
}

.riem-productstream .slick-track{
  display: flex !important;
  align-items: stretch;
}

.riem-productstream .product-wrapper{
  height: auto !important;
  padding: 0 9px;
}

/* =========================================================
   PRODUKTKARTEN
   ========================================================= */

.riem-productstream .product-wrapper > a{
  display: flex;
  flex-direction: column;
  height: 100%;

  padding: 12px 12px 16px;

  color: #444;
  text-decoration: none !important;

  background: #f5f5f5;
  border: 1px solid #e5e5e5;
  border-radius: 18px;

  box-shadow: 0 8px 22px rgba(0,0,0,.05);

  overflow: hidden;

  transition:
    background .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.riem-productstream .product-wrapper > a:hover{
  background: #fff;
  border-color: #d8d8d8;
  box-shadow: 0 12px 30px rgba(0,0,0,.09);
}

/* =========================================================
   BILDER
   ========================================================= */

.riem-productstream .productbox-image{
  width: 100%;
  margin: 0 0 14px;

  background: #ececec;

  border-radius: 14px;
  overflow: hidden;
}

.riem-productstream .productbox-image.square{
  position: relative;
  aspect-ratio: 1 / 1;
  height: auto !important;
}

.riem-productstream .productbox-image .inner{
  position: absolute !important;
  inset: 0;

  width: 100% !important;
  height: 100% !important;

  display: flex;
  align-items: center;
  justify-content: center;
}

.riem-productstream .productbox-image picture{
  display: block;
  width: 100%;
  height: 100%;
}

.riem-productstream .productbox-image img{
  display: block;

  width: 100% !important;
  height: 100% !important;

  object-fit: cover;

  border-radius: 14px;

  transition: filter .2s ease;
}

.riem-productstream .product-wrapper > a:hover .productbox-image img{
  filter: brightness(1.025);
}

/* =========================================================
   PRODUKTNAME
   ========================================================= */

.riem-productstream .item-slider-desc{
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;

  min-height: 44px;
  margin: 0;
  padding: 0 2px;

  overflow: hidden;

  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;

  color: #444;
  text-align: left;

  text-decoration: none !important;
}

.riem-productstream .item-slider-desc,
.riem-productstream .item-slider-desc span{
  text-decoration: none !important;
}

/* =========================================================
   PREIS
   ========================================================= */

.riem-productstream .item-slider-price{
  margin-top: auto;
  padding: 13px 2px 0;

  text-align: left;
}

.riem-productstream .price_wrapper{
  margin: 0;
}

.riem-productstream .productbox-price{
  margin: 0;

  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;

  color: #3f3f3f;
}

.riem-productstream .footnote-reference{
  font-size: 10px;
  vertical-align: top;
}

/* =========================================================
   SLICK-PFEILE
   NICHT mehr über dem Bild
   ========================================================= */

.riem-productstream .slick-prev,
.riem-productstream .slick-next{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);

  z-index: 30;

  width: 38px;
  height: 64px;

  margin: 0;
  padding: 0;

  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;

  background: #3f3f3f;

  box-shadow: 0 8px 22px rgba(0,0,0,.12);

  font-size: 0;

  opacity: .92;

  cursor: pointer;

  transition:
    background .18s ease,
    opacity .18s ease,
    box-shadow .18s ease;
}

.riem-productstream .slick-prev{
  left: 8px;
}

.riem-productstream .slick-next{
  right: 8px;
}

.riem-productstream .slick-prev:hover,
.riem-productstream .slick-next:hover{
  background: #2f2f2f;
  opacity: 1;

  box-shadow: 0 10px 26px rgba(0,0,0,.18);
}

/* JTL / Slick Standardpfeile entfernen */
.riem-productstream .slick-prev::before,
.riem-productstream .slick-next::before{
  content: "" !important;
  opacity: 1 !important;

  position: absolute;
  left: 50%;
  top: 50%;

  width: 10px;
  height: 10px;

  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.riem-productstream .slick-prev::before{
  transform: translate(-35%, -50%) rotate(-135deg);
}

.riem-productstream .slick-next::before{
  transform: translate(-65%, -50%) rotate(45deg);
}

/* falls Slick noch Text rendert */
.riem-productstream .slick-prev,
.riem-productstream .slick-next{
  color: transparent !important;
  text-indent: -9999px;
  overflow: hidden;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px){

  .riem-productstream{
    max-width: 100%;
    padding: 20px 46px 28px;
  }

  .riem-productstream .product-wrapper{
    padding: 0 7px;
  }

  .riem-productstream .slick-prev,
  .riem-productstream .slick-next{
    width: 34px;
    height: 56px;
  }

  .riem-productstream .slick-prev{
    left: 4px;
  }

  .riem-productstream .slick-next{
    right: 4px;
  }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 575px){

  .riem-productstream{
    padding: 16px 34px 24px;
  }

  .riem-productstream .product-wrapper{
    padding: 0 5px;
  }

  .riem-productstream .product-wrapper > a{
    padding: 9px 9px 13px;
    border-radius: 14px;
  }

  .riem-productstream .productbox-image{
    margin-bottom: 11px;
    border-radius: 12px;
  }

  .riem-productstream .productbox-image img{
    border-radius: 12px;
  }

  .riem-productstream .item-slider-desc{
    min-height: 40px;
    font-size: 13px;
    line-height: 1.45;
  }

  .riem-productstream .item-slider-price{
    padding-top: 11px;
  }

  .riem-productstream .productbox-price{
    font-size: 17px;
  }

  .riem-productstream .slick-prev,
  .riem-productstream .slick-next{
    width: 28px;
    height: 48px;
    border-radius: 8px;
  }

  .riem-productstream .slick-prev{
    left: 1px;
  }

  .riem-productstream .slick-next{
    right: 1px;
  }

  .riem-productstream .slick-prev::before,
  .riem-productstream .slick-next::before{
    width: 8px;
    height: 8px;
  }
}

/* =========================================================
   MOTION SAFETY
   ========================================================= */

@media (prefers-reduced-motion: reduce){

  .riem-productstream *,
  .riem-productstream *::before,
  .riem-productstream *::after{
    transition: none !important;
    animation: none !important;
  }
}

/* =========================================================
   RIEMENSCHNEIDER – PRODUKTBESCHREIBUNG
   Klasse am gesamten Beschreibungsbereich:
   .riem-product-description
   ========================================================= */

.riem-product-description,
.riem-product-description *{
  box-sizing: border-box;
}

.riem-product-description{
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 8px 0 28px;

  color: #454545;
  font-family: inherit;
}

/* =========================================================
   FLIEßTEXT
   ========================================================= */

.riem-product-description p{
  margin: 0 0 18px;
  line-height: 1.75;
  color: #4a4a4a;
}

/* vorhandene Inline-Fontgrößen etwas beruhigen */
.riem-product-description p span{
  line-height: inherit;
}

/* =========================================================
   H2 – echte Abschnittsüberschriften
   ========================================================= */

.riem-product-description h2{
  position: relative;

  margin: 42px 0 18px;
  padding: 0 0 12px;

  font-size: clamp(22px, 2vw, 28px);
  font-weight: 700;
  line-height: 1.25;

  color: #303030;
}

/* dezente Linie unter H2 */
.riem-product-description h2::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;

  width: 54px;
  height: 2px;

  border-radius: 999px;
  background: #454545;
  opacity: .22;
}

/* =========================================================
   LISTEN
   ========================================================= */

.riem-product-description ul{
  margin: 8px 0 24px;
  padding: 0;
  list-style: none;
}

.riem-product-description li{
  position: relative;

  margin: 0 0 10px;
  padding-left: 26px;

  line-height: 1.65;
  color: #4a4a4a;
}

/* eigener Bullet */
.riem-product-description li::before{
  content: "";
  position: absolute;
  left: 4px;
  top: .72em;

  width: 7px;
  height: 7px;

  border-radius: 50%;
  background: #6a6a6a;
  transform: translateY(-50%);
}

/* =========================================================
   STRONG / HERVORHEBUNGEN
   ========================================================= */

.riem-product-description strong{
  color: #2f2f2f;
  font-weight: 700;
}

/* =========================================================
   LETZTER ABSCHNITT
   ========================================================= */

.riem-product-description > *:last-child{
  margin-bottom: 0;
}

/* =========================================================
   OPTIONAL: HINWEIS-ABSCHNITT optisch hervorheben
   funktioniert bei deinem vorhandenen <h2>Hinweis</h2>
   ========================================================= */

.riem-product-description h2:has(+ p){
  scroll-margin-top: 120px;
}

/* =========================================================
   LINKS
   ========================================================= */

.riem-product-description a{
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;

  transition: opacity .18s ease;
}

.riem-product-description a:hover{
  opacity: .65;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 767px){

  .riem-product-description{
    padding: 4px 0 22px;
  }

  .riem-product-description p{
    margin-bottom: 16px;
    line-height: 1.7;
  }

  .riem-product-description h2{
    margin-top: 34px;
    margin-bottom: 16px;
    padding-bottom: 10px;

    font-size: 22px;
  }

  .riem-product-description ul{
    margin-bottom: 20px;
  }

  .riem-product-description li{
    padding-left: 23px;
    margin-bottom: 9px;
    line-height: 1.6;
  }
}

/* =========================================================
   RIEMENSCHNEIDER – KURZBESCHREIBUNG
   ========================================================= */

.riem-product-short{
  width: 100%;
  margin: 0 0 16px;
  padding: 0;

  font-family: inherit;
  color: #3f3f3f;
}

.riem-product-short p{
  margin: 0 0 10px;

  font-size: 12px;
  line-height: 1.55;

  color: #3f3f3f;
}

.riem-product-short p:last-child{
  margin-bottom: 0;
}

.riem-product-short strong{
  font-weight: 700;
  color: #2f2f2f;
}

@media (max-width: 767px){
  .riem-product-short{
    margin-bottom: 14px;
  }

  .riem-product-short p{
    font-size: 11.5px;
    line-height: 1.5;
  }
}

/* =========================================================
   RIEMENSCHNEIDER – PRODUKTBESCHREIBUNGEN
   Global einbinden
   Bestehende Klassen aus den Artikeln:
   .flowstrap-section
   .flowstrap-highlight
   .flowstrap-videos
   .flowstrap-videos-header
   .flowstrap-videos-icon
   .flowstrap-videos-title
   .flowstrap-video-list
   .flowstrap-video-link
   .flowstrap-link-icon
   .flowstrap-footer-text
   .flowstrap-notice
   ========================================================= */

.flowstrap-section{
  max-width: 780px;
  margin: 2rem auto;

  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  color: #333;
}

.flowstrap-section p{
  margin: 0 0 .75rem;
}

.flowstrap-highlight{
  font-weight: 600;
}

/* =========================================================
   VIDEO-BEREICH
   ========================================================= */

.flowstrap-videos{
  margin-top: 1.5rem;
  padding: 1.25rem 1.5rem;

  border-radius: 14px;

  background: #f7f7fb;
  border: 1px solid #e2e2f0;
}

.flowstrap-videos-header{
  display: flex;
  align-items: center;
  gap: .75rem;

  margin-bottom: .75rem;
}

.flowstrap-videos-icon{
  font-size: 1.6rem;
}

.flowstrap-videos-title{
  margin: 0;

  font-size: 1.25rem;
  font-weight: 700;
}

.flowstrap-video-list{
  display: flex;
  flex-direction: column;
  gap: .5rem;

  margin: .75rem 0 1rem;
  padding: 0;

  list-style: none;
}

.flowstrap-video-link{
  display: inline-flex;
  align-items: center;
  gap: .5rem;

  padding: .55rem .9rem;

  border-radius: 999px;
  border: 1px solid #333;

  background: #333;
  color: #fff;

  font-size: .95rem;
  text-decoration: none;

  transition:
    background .15s ease,
    transform .1s ease,
    box-shadow .15s ease;
}

.flowstrap-video-link span{
  max-width: 100%;

  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

  color: #fff;
}

.flowstrap-video-link:hover{
  background: #555;

  box-shadow: 0 4px 10px rgba(60,64,198,.12);
  transform: translateY(-1px);
}

.flowstrap-link-icon{
  font-size: 1.1rem;
}

.flowstrap-footer-text{
  margin-top: .25rem;
  font-size: .95rem;
}

/* =========================================================
   HINWEIS
   ========================================================= */

.flowstrap-notice{
  margin-top: 1.5rem;
  padding: .9rem 1rem;

  border-radius: 10px;

  background: #fff7e6;
  border: 1px solid #f3ddaa;

  color: #6a4a16;
  font-size: .85rem;
  line-height: 1.6;
}

.flowstrap-notice b{
  font-weight: 600;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 640px){

  .flowstrap-section{
    padding: 0 1rem;
  }

  .flowstrap-videos{
    padding: 1rem;
  }
}

/* =========================================================
   RIEMENSCHNEIDER – ÜBUNGSBOX / SOCIAL ROUTINEN
   ========================================================= */

.riem-exercise-box{
  margin: 30px 0 34px;
  padding: 22px 24px;

  background: #f5f5f5;
  border: 1px solid #e1e1e1;
  border-radius: 16px;

  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}

.riem-exercise-box__head{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}

.riem-exercise-box__icon{
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;

  width: 42px;
  height: 42px;

  border-radius: 12px;
  background: #333;
  color: #fff;

  font-size: 16px;
  line-height: 1;
}

.riem-exercise-box h2{
  margin: 0 0 6px !important;
  padding: 0 !important;

  font-size: 22px;
  line-height: 1.25;
  color: #303030;
}

.riem-exercise-box h2::after{
  display: none !important;
}

.riem-exercise-box__head p{
  margin: 0;
  color: #666;
  line-height: 1.55;
}

.riem-exercise-links{
  display: grid;
  gap: 10px;
}

.riem-exercise-link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;

  padding: 13px 15px;

  background: #fff;
  border: 1px solid #dedede;
  border-radius: 10px;

  color: #333 !important;
  font-weight: 600;
  text-decoration: none !important;

  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease,
    background .18s ease;
}

.riem-exercise-link:hover{
  background: #fafafa;
  border-color: #c8c8c8;

  box-shadow: 0 5px 14px rgba(0,0,0,.07);
  transform: translateY(-1px);

  opacity: 1 !important;
}

.riem-exercise-link__arrow{
  flex: 0 0 auto;

  font-size: 17px;
  font-weight: 700;
  color: #555;
}

@media (max-width: 767px){

  .riem-exercise-box{
    margin: 24px 0 28px;
    padding: 18px;
    border-radius: 14px;
  }

  .riem-exercise-box__head{
    gap: 12px;
    margin-bottom: 15px;
  }

  .riem-exercise-box__icon{
    flex-basis: 38px;
    width: 38px;
    height: 38px;
    border-radius: 10px;
  }

  .riem-exercise-box h2{
    font-size: 19px;
  }

  .riem-exercise-link{
    padding: 12px 13px;
    font-size: 14px;
  }
}