/********************************************************
			Ratui Custom Styles
********************************************************/

.tm-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.cp-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px);
  -ms-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate3d(0px, 0px, 0px);
  -moz-transform: translate3d(0px, 0px, 0px);
  display: flex !important;
  flex-wrap: wrap;
}
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.owl-carousel .owl-wrapper-outer {
  overflow-x: clip;
  position: relative;
  float: left;
  width: 100%;
  padding: 0;
}
.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; 
}
.owl-carousel .owl-item {
  float: left;
  height: auto;
}
.owl-carousel .owl-item .manu_image a {
  display: inline-block;
}
.owl-carousel .owl-item .manu_image a img {
  max-width: 100%;
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  /* fix */
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  text-align: center;
}

/* mouse grab icon */
.customNavigation {
	position: absolute;
	z-index: 9;
	width: 100%;
	top: 50%;
	direction: ltr !important;
	right: 0;
	left: auto;
  opacity: 0;
  -khtml-opacity: 0;
-webkit-opacity: 0;
-moz-opacity: 0;
}
.products .customNavigation {
	top: 48%;
}
.tmcategorylist .customNavigation, .testimonial-block-part .customNavigation {
	top: 54%;
}
.tmcategorylist:hover .customNavigation {
	opacity: 1;
	-khtml-opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
}
.customNavigation a.prev::before {
	content: "\E314";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	right: 5px;
	top: -1px;
	color: #757575;
}
.customNavigation a.next::before {
	content: "\E315";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	position: absolute;
	right: 3px;
	top: -1px;
	color: #757575;
}
#tmtestimonialcmsblock .customNavigation {
  top: -24px;
  z-index: 5;
  right: 15px;
}
#index #tmtestimonialcmsblock .customNavigation {
  top: -40px;
  right: 0;
}
.special-products .customNavigation {
	top: 52%;
}
.homepage-latest-blog:hover .customNavigation, 
.sidebar-latest-blog:hover .customNavigation, 
.ets-blog-related-posts:hover .customNavigation, 
.special-products:hover .customNavigation, 
.products:hover .customNavigation,
.testimonial-block-part:hover .customNavigation,
.tmblog-latest:hover .customNavigation, 
#tminstagramblock:hover .customNavigation,
.product-accessories:hover .customNavigation,
.productscategory-products:hover .customNavigation{
  opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
}
.lastest_block .customNavigation {
	top: 44%;
}
.customNavigation i {
	color: #222 !important;
	cursor: pointer;
	font-size: 0;
	font-weight: 500;
	height: 38px;
	line-height: 32px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 38px;
	background: transparent;
	border-radius: 0;
	font-style: unset;
	box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.11);
}
.customNavigation i.prev {
	background: transparent;
	right: auto;
	background: #fff;
	border-radius: 50%;
	left: -5px;
}
.sidebar-latest-blog .customNavigation i.prev{
  left: 2px;
}
.sidebar-latest-blog .customNavigation i.next{
  right: 2px;
}

.customNavigation i.next {
	background: transparent;
	right: 0px;
	background: #fff;
	border-radius: 50%;
	right: -5px;
}
.tmcategorylist .customNavigation i.prev, 
.testimonial-block-part .customNavigation i.prev, 
#tminstagramblock .btn.prev.instagram_prev,
.special-products .customNavigation i.prev,
.btn.prev.accessories_prev {
	left: -20px;
}
.tmcategorylist .customNavigation i.next, 
.testimonial-block-part .customNavigation i.next, 
#tminstagramblock .btn.next.instagram_next,
.special-products .customNavigation i.next,
.btn.next.accessories_next  {
  right: -20px;
}
.customNavigation i.prev::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-left.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-left.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
#tmtestimonialcmsblock .customNavigation i.prev::before {
  right: 1px;
  font-weight: 500;
}
#tmtestimonialcmsblock .customNavigation i.next::before {
  right: 0;
  font-weight: 500;
}
.customNavigation i.next::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-right.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-right.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
.customNavigation i.next:hover::before,.customNavigation i.prev:hover::before  {
  color: #fff;
}
#cpleftbanner1 img,
#cpleftbanner2 img {
  max-width: 100%;
  border-radius: 5px;
}
#cpleftbanner1 li,
#cpleftbanner2 li {
  overflow: hidden;
  position: relative;
  float: left;
  border-radius: 5px;
}
#cpleftbanner1 li a,
#cpleftbanner2 li a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: top;
}
.footer-container .links.lastest_block .customNavigation i.prev:hover {
  color: #9bbab1 !important;
}
.footer-container .links.lastest_block .customNavigation i.next:hover {
  color: #9bbab1 !important;
}

@media (max-width: 1449px) {
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev,
  .special-products .customNavigation i.prev,
  .btn.prev.accessories_prev {
    left: -15px;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next,
   .special-products .customNavigation i.next,
   .btn.next.accessories_next {
    right: -15px;
  }
  .customNavigation i.next {
    right: 0;
  }
  .customNavigation i.prev {
    left: 0;
  }
}
@media (max-width: 1199px) {
  #tmtestimonialcmsblock .customNavigation {
    top: -36px;
    z-index: 5;
    right: -18px;
  }
}

@media (max-width: 991px) {
  #cpleftbanner1 li img,
  #cpleftbanner2 li a {
    width: auto;
  }
}
@media (max-width: 767px) {
  .customNavigation {
    opacity: 1;
    -khtml-opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
  }
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev, 
  .special-products .customNavigation i.prev,
  .btn.prev.accessories_prev {
    left: 0;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next, 
   .special-products .customNavigation i.next,
   .btn.next.accessories_next {
    right: 0;
  }
  .quickview .mask.additional_slider .customNavigation i.prev {
    left: -10px !important;
  }
  .quickview .mask.additional_slider .customNavigation i.next {
    right: -10px !important;
  }
  .btn.next.brand_next {
    left: auto;
    right: 0;
    position: absolute;
  }
  .btn.prev.brand_prev {
    left: 0;
    right: auto;
  }
  .customNavigation i.next {
    left: auto;
    right: 0;
  }
}
@media (max-width: 480px) {
}

/* ===== MENU RESPONSIVE FIXES ===== */

/* ----------------------------------------------------------------
   PASEK GÓRNY – wyśrodkowanie i płynne skalowanie
   ---------------------------------------------------------------- */

/* Nadpisuje ręczne margin-inline-start: 23%/27% z theme.css */
#header .header-top .menu {
  margin-inline-start: 0 !important;
  width: auto !important;
}

/* Menu wypełnia środkową kolumnę headera */
.header-top .header-center .header-top-main.bg_main {
  width: 100%;
}

#header { min-height: 0 !important; }


/* Środkuje inline-block li wewnątrz menu */
#_top_main_menu {
  text-align: center;
  width: 100%;
}

/* Płynna zmiana rozmiaru fontu z szerokością ekranu */
.header-top-main.bg_main #_top_main_menu li a[data-depth="0"] {
  padding: 14px 0;
  font-size: clamp(9px, 0.82vw, 14px);
}

/* Płynna zmiana marginesów */
.header-top-main.bg_main #_top_main_menu li {
  margin-inline: clamp(1px, 0.35vw, 10px);
}

/* ----------------------------------------------------------------
   SUB-MENU PANEL
   ---------------------------------------------------------------- */

.top-menu .sub-menu {
  padding: 20px 28px;
  max-height: 80vh;
  overflow-y: auto;
  overflow-x: hidden;
}

/* Główna lista kolumn (depth=1) – flex, żeby kolumny nie nachodziły */
#_top_main_menu .top-menu .sub-menu ul[data-depth="1"] {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
}

/* Każda kolumna: równa szerokość, blokada overflow */
#_top_main_menu .top-menu .sub-menu ul[data-depth="1"] > li {
  flex: 1 1 0;
  min-width: 0;
  max-width: none;
  padding-inline-end: 0;
  padding-bottom: 8px;
  display: block !important;
}

/* Reset min-width: 170px z theme.css który powodował overflow */
#header .header-top-main.bg_main .menu .sub-menu a {
  min-width: 0;
  padding-bottom: 4px;
  margin-bottom: 4px;
  white-space: normal;
  word-break: break-word;
}

/* Nagłówki kolumn (Obróbka termiczna, Piece, itd.) */
#_top_main_menu .top-menu .sub-menu a[data-depth="1"] {
  display: block;
  padding: 0 0 8px 0;
  font-size: 13px;
  font-weight: 700;
  word-break: break-word;
  white-space: normal;
}

/* Podkategorie (depth=2) – auto-wielokolumnowość:
   krótkie listy = 1 kolumna, długie = 2 kolumny */
#_top_main_menu .top-menu .sub-menu ul[data-depth="2"] {
  column-width: 130px;
  column-gap: 10px;
  margin: 0;
  padding: 0;
}
#_top_main_menu .top-menu .sub-menu ul[data-depth="2"] > li {
  break-inside: avoid;
  page-break-inside: avoid;
  display: block;
}
#_top_main_menu .top-menu .sub-menu a[data-depth="2"] {
  display: block;
  padding: 0 0 4px 0;
  font-size: 12px;
  word-break: break-word;
  white-space: normal;
}

/* Głębszy poziom (depth=3) – mały, szary, wcięty */
#_top_main_menu .top-menu .sub-menu a[data-depth="3"] {
  display: block;
  padding: 0 0 3px 10px;
  font-size: 11px;
  color: #888;
  word-break: break-word;
  white-space: normal;
}

/* Hover na podkategoriach */
#_top_main_menu .top-menu .sub-menu a[data-depth="2"]:hover,
#_top_main_menu .top-menu .sub-menu a[data-depth="3"]:hover {
  color: #f15252;
  text-decoration: none;
}

/* ----------------------------------------------------------------
   HAMBURGER OD 1199px
   theme.css ukrywa go przy min-width:992px – nadpisujemy to
   żeby był widoczny w zakresie 992px–1199px
   ---------------------------------------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
  .container.text-xs-center.mobile {
    display: inline-flex !important;
    align-items: center;
    align-self: center;
  }
  /* Usuwa margin-inline-start: 30px który odpycha ikonkę od reszty */
  .container.text-xs-center.mobile .material-icons.menu-open {
    margin-inline-start: 0;
    font-size: 24px;
    line-height: 1;
  }
}

/* Mobile: hamburger */
@media (max-width: 991px) {
  #mobile_top_menu_wrapper .top-menu a[data-depth="0"] {
    padding: 12px 0;
    font-size: 14px;
  }
}


.product_item:hover img.img_1,
.product-item:hover img.img_1 {
    opacity: 1 !important;
    transform: scaleX(1) !important;
}

/* Hover drugie zdjęcie */
.thumbnail-container {
    position: relative;
    overflow: hidden;
}

.product-miniature .thumbnail-container img.img_1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0 !important;
    transition: opacity 0.4s ease-in-out !important;
    -webkit-transition: opacity 0.4s ease-in-out !important;
}

.product-miniature .thumbnail-container img.img_1 {
    opacity: 0 !important;
    transform: none !important;
    transition: opacity 0.4s ease-in-out !important;
}

.product-miniature:hover .thumbnail-container img.img_1 {
    opacity: 1 !important;
    transform: none !important;
}

/* ===== SEARCH MODAL ===== */

/* Hide the legacy ps_searchbar (redundant with rt_blocksearch modal) */
#header #search_widget { display: none !important; }

/* Modal root – hidden by default */
#rt_search_modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 99999;
}
#rt_search_modal.is-open {
  display: block;
}

/* Backdrop */
.rt-search-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}

/* Prevent page scroll while modal open */
body.search-modal-open {
  overflow: hidden;
}

/* Modal box */
.rt-search-box {
  position: fixed;
  top: 90px;
  left: 50%;
  transform: translateX(-50%);
  width: min(660px, calc(100vw - 32px));
  background: #fff;
  border-radius: 14px;
  padding: 20px 20px 24px;
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.28);
  z-index: 1;
  animation: rtModalSlideIn 0.2s ease;
}

@keyframes rtModalSlideIn {
  from { opacity: 0; transform: translateX(-50%) translateY(-12px); }
  to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* Input row: form + close button */
.rt-search-input-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Form resets inside modal */
#rt_search_modal #searchbox {
  flex: 1;
  display: flex;
  align-items: stretch;
  background: #f4f4f4;
  border-radius: 10px;
  overflow: hidden;
  position: static;
  padding: 0;
  min-width: 0;
}

#rt_search_modal #searchbox input.search_query {
  flex: 1 1 0;
  min-width: 0;
  border: none;
  background: transparent;
  padding: 13px 16px;
  font-size: 16px;
  outline: none;
  color: #222;
  border-radius: 10px 0 0 10px;
  width: 100%;
  height: auto;
  box-shadow: none;
}
#rt_search_modal #searchbox input.search_query::placeholder {
  color: #aaa;
  font-size: 15px;
}

/* Submit button */
.rt-search-submit {
  background: #f15252;
  border: none;
  color: #fff;
  padding: 0 18px;
  cursor: pointer;
  display: flex;
  align-items: center;
  border-radius: 0 10px 10px 0;
  transition: background 0.2s;
  flex-shrink: 0;
}
.rt-search-submit:hover { background: #e04040; }
.rt-search-submit .material-icons { font-size: 20px; }

/* Close button */
.rt-search-close {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: #777;
  border-radius: 50%;
  display: flex;
  align-items: center;
  transition: background 0.15s, color 0.15s;
  flex-shrink: 0;
}
.rt-search-close:hover { background: #f5f5f5; color: #f15252; }
.rt-search-close .material-icons { font-size: 22px; }

/* AJAX results inside modal — now a sibling of .rt-search-input-row, NOT inside #searchbox */
#rt_search_modal #cpsearch_content_result {
  position: static !important;
  display: none;
  margin-top: 12px;
  box-shadow: none !important;
  border: 1px solid #eee;
  border-radius: 10px;
  max-height: 55vh;
  overflow-y: auto;
  padding: 10px;
  width: 100% !important;
  top: auto !important;
  left: auto !important;
}
#rt_search_modal #cpsearch_eccept_data {
  max-height: none !important;
  overflow-y: visible !important;
}

/* Results list layout fixes */
#rt_search_modal #cpsearch_eccept_data .items-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
#rt_search_modal #cpsearch_eccept_data .items-list > li {
  display: flex !important;
  align-items: center;
  gap: 12px;
  float: none !important;
  width: 100% !important;
  padding: 8px 4px;
  border-bottom: 1px solid #f0f0f0;
}
#rt_search_modal #cpsearch_eccept_data .items-list > li:last-child {
  border-bottom: none;
}
/* Image column */
#rt_search_modal #cpsearch_eccept_data .items-list li .image {
  flex-shrink: 0;
  width: 70px !important;
  text-align: center;
}
#rt_search_modal #cpsearch_eccept_data .items-list li .image img {
  max-width: 70px;
  max-height: 70px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}
/* Content column */
#rt_search_modal #cpsearch_eccept_data .items-list li .cpsearch-content {
  flex: 1;
  min-width: 0;
  width: auto !important;
  padding: 0 !important;
  position: static !important;
}
#rt_search_modal #cpsearch_eccept_data .items-list li .product-name a {
  font-size: 14px;
  color: #222;
  text-decoration: none;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#rt_search_modal #cpsearch_eccept_data .items-list li .product-name a:hover {
  color: #f15252;
}
#rt_search_modal #cpsearch_eccept_data .items-list li .price {
  font-size: 14px;
  font-weight: 700;
  color: #f15252;
}
/* Search summary row */
#rt_search_modal #cpsearch_eccept_data .search-title {
  float: none;
  text-align: center;
  padding: 8px 0 4px;
  font-size: 13px;
  color: #888;
  border-top: 1px solid #f0f0f0;
  margin-top: 6px;
  width: 100%;
}

@media (max-width: 640px) {
  .rt-search-box {
    top: 60px;
    padding: 14px 14px 18px;
    border-radius: 10px;
  }
  #rt_search_modal #searchbox input.search_query {
    font-size: 15px;
    padding: 11px 12px;
  }
  .rt-search-submit { padding: 0 14px; }
}

/* ===== SIDE MENU FIXES ===== */

/* Bigger expand/collapse icons */
#cp_sidevertical_menu_top .material-icons.add,
#cp_sidevertical_menu_top .material-icons.remove {
  font-size: 22px;
  width: 28px;
  height: 28px;
  line-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Bottom static links */
.sidemenu-bottom-links {
  border-top: 1px solid rgba(0,0,0,0.1);
  margin-top: 12px;
  padding-top: 8px;
}
.sidemenu-bottom-links ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidemenu-bottom-links ul li a {
  display: block;
  padding: 9px 20px;
  font-size: 14px;
  color: inherit;
  text-decoration: none;
  transition: color 0.2s;
}
.sidemenu-bottom-links ul li a:hover {
  color: #f15252;
}

/* ── Share trigger button ── */
.rt-product-title-row {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: .5rem;
}
.rt-product-title-row .productpage_title {
  flex: 1;
  min-width: 0;
  margin-bottom: 0;
}
.rt-share-trigger {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: .35rem;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .4rem .85rem;
  border: 1.5px solid #e0e0e0;
  border-radius: 20px;
  background: #fff;
  color: #555;
  font-size: .8rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .15s, color .15s, background .15s;
  line-height: 1;
}
.rt-share-trigger:hover {
  border-color: #d32f2f;
  color: #d32f2f;
  background: #fff8f8;
}

/* ── Share modal overlay ── */
.rt-share-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.48);
  z-index: 99990;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  animation: rtOverlayIn .18s ease;
}
.rt-share-overlay.is-open {
  display: flex;
}
@keyframes rtOverlayIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ── Modal card ── */
.rt-share-modal {
  background: #fff;
  border-radius: 18px;
  width: 100%;
  max-width: 420px;
  padding: 1.75rem;
  box-shadow: 0 24px 60px rgba(0,0,0,.22);
  animation: rtModalIn .22s cubic-bezier(.34,1.3,.64,1);
}
@keyframes rtModalIn {
  from { transform: translateY(24px) scale(.97); opacity: 0; }
  to   { transform: translateY(0) scale(1);      opacity: 1; }
}
.rt-share-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.rt-share-modal-title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #1a1a1a;
}
.rt-share-modal-close {
  background: #f4f4f4;
  border: none;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #555;
  transition: background .15s;
  flex-shrink: 0;
  padding: 0;
}
.rt-share-modal-close:hover { background: #e8e8e8; color: #111; }

.rt-share-modal-product-name {
  font-size: .83rem;
  color: #888;
  margin: 0 0 1.35rem;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── Platform buttons ── */
.rt-share-modal-platforms {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .7rem;
  margin-bottom: 1.25rem;
}
.rt-sm-platform {
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .75rem 1rem;
  border-radius: 12px;
  text-decoration: none;
  font-size: .9rem;
  font-weight: 600;
  color: #fff;
  transition: transform .15s, opacity .15s;
}
.rt-sm-platform:hover { transform: translateY(-2px); opacity: .9; text-decoration: none; color: #fff; }
.rt-sm-platform > svg { width: 20px !important; height: 20px !important; display: block !important; flex-shrink: 0 !important; }
.rt-sm-copy-btn svg { width: 15px !important; height: 15px !important; display: block !important; flex-shrink: 0 !important; }
.rt-share-modal-close svg { width: 20px !important; height: 20px !important; display: block !important; }
.rt-share-trigger svg { width: 17px !important; height: 17px !important; display: block !important; }
.rt-sm-fb   { background: #1877f2; }
.rt-sm-x    { background: #000; }
.rt-sm-wa   { background: #25d366; }
.rt-sm-mail { background: #6c757d; }

/* ── Copy link row ── */
.rt-share-modal-copy {
  display: flex;
  gap: .5rem;
  background: #f6f6f6;
  border-radius: 10px;
  padding: .45rem .45rem .45rem .9rem;
  align-items: center;
}
.rt-sm-copy-input {
  flex: 1;
  border: none;
  background: transparent;
  font-size: .82rem;
  color: #555;
  outline: none;
  min-width: 0;
}
.rt-sm-copy-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .5rem .9rem;
  border-radius: 7px;
  border: none;
  background: #1a1a1a;
  color: #fff;
  font-size: .8rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s;
  flex-shrink: 0;
}
.rt-sm-copy-btn:hover  { background: #333; }
.rt-sm-copy-btn.copied { background: #198754; }

@media (max-width: 480px) {
  .rt-share-modal-platforms { grid-template-columns: 1fr 1fr; }
  .rt-share-modal { padding: 1.25rem; border-radius: 14px 14px 0 0; margin-bottom: 0; align-self: flex-end; }
  .rt-share-overlay { align-items: flex-end; padding: 0; }
}

/* ── Contact page inline numbers ── */
.ct-inline {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .75rem;
  margin: .6rem 0 1.5rem;
}
.ct-inline-item {
  font-size: .88rem;
  font-weight: 600;
  color: #555;
  text-decoration: none;
  border-bottom: 1px dashed #ccc;
  padding-bottom: 1px;
  transition: color .15s, border-color .15s;
}
.ct-inline-item:hover { color: #d32f2f; border-color: #d32f2f; text-decoration: none; }
