/* PDP */
.pdp-full-width {
    padding: 1rem;
}
.page-title-wrapper.product {
    margin: 0;
}
.product.photo img.product-image-photo.default_image.porto-lazyload {
    aspect-ratio: 1;
}
/* Eof PDP */

/* Homepage */
.holographic-text {
  font-size: 60px;
  font-weight: bold;
  text-transform: uppercase;
  background: linear-gradient(90deg, #1cfe00, #1000ff, #0acae9, #f5c304);
  background-size: 400%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: holoAnimation 10s infinite linear;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 
               0 0 20px rgba(255, 255, 255, 0.6),
               0 0 30px rgba(255, 255, 255, 0.4);
}

@keyframes holoAnimation {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Eof homepage */

/* CMS page style */

.page-title-wrapper, .row-full-width {
    max-width: 1200px;
    margin: auto;
}
.row-full-width h1 {
    line-height: 1.2;
}
h1.page-title span.base {
    font-size: 36px;
    color: #222529;
    line-height: 1.2;
}
@media (max-width: 768px) {
.page-title-wrapper, .row-full-width {
    margin: auto 1rem;
}
.porto-u-main-heading h3.holographic-text {
    font-size: 2rem !important;
    margin-top: 2rem;
}
}
/* Eof CMS page style */

/* Mega menu custom style */

/* Base styles for the submenus */
.subchildmenu {
    display: grid;
    grid-template-columns: 1fr; /* Start with a single column */
    gap: 10px; /* Add space between items */
    padding: 10px;
}

/* For submenus with more than 10 items, use two columns */
.subchildmenu.two-columns {
    grid-template-columns: 1fr 1fr; /* Two columns */
}

/* For submenus with more than 20 items, use three columns */
.subchildmenu.three-columns {
    grid-template-columns: 1fr 1fr 1fr; /* Three columns */
}


/* Optional: Add styles for a responsive menu on smaller screens */
@media (max-width: 768px) {
    .subchildmenu {
        grid-template-columns: 1fr; /* Ensure one column on smaller screens */
    }
}

@media (min-width: 768px) {
    .sw-megamenu.navigation li.level0.classic .submenu a {
	font-weight: 500 !important;
        line-height: 18px !important;
        padding: 15px 17px 14px 17px !important;
        letter-spacing: 0.5px !important;
        text-transform: none!important;
        font-size: 14px !important;
    }
.sw-megamenu.navigation.side-megamenu li.level0	.level0.submenu {
    padding: 0 !important;
}
.sw-megamenu.navigation .subchildmenu.mega-columns > li {
    padding: 15px 18px 14px 18px!important;
}
.sw-megamenu.navigation .subchildmenu.mega-columns > li:hover {
    background: #F2EBDC;

}
.subchildmenu {
    gap: 0;
}

    .page-header .sw-megamenu.navigation li.level0.fullwidth > .submenu .level1 > a {
	text-transform: none!important;
	font-size: 14px !important;
    }
.page-header .sw-megamenu.navigation li.level0.fullwidth > .submenu .level1 > a:hover {
    color: #45597F;
    text-decoration: none;
}
.main-toggle-menu .menu-title:hover, .sw-megamenu.navigation.side-megamenu li.level0 > a:hover {
    color: #45597F;;
}
    .sw-megamenu.navigation.side-megamenu li.level0.fullwidth .submenu li.level1 > a, .sw-megamenu.navigation.side-megamenu li.level0:first-child > a {
	letter-spacing: 0.5px!important;
    }

    .main-toggle-menu .menu-title, 
    .page-header.type27 .navigation:not(.side-megamenu) .ui-menu-item .level-top {
        letter-spacing: 0.2px!important;
    }
    .page-header.type27 .navigation:not(.side-megamenu) .ui-menu-item.level0 .level-top {
        padding-bottom: 18px!important;
    }
    .main-toggle-menu .menu-title {
        font-size: 14px!important;
    }
    li.ui-menu-item.level0.fullwidth.parent:hover {
        background-color: #F2EBDC!important;
    }
    .sw-megamenu.navigation.side-megamenu li.level0.fullwidth > .submenu {
        height: 100%!important;
        width: 200px!important;
    }
    .sw-megamenu.navigation.side-megamenu li.level0.fullwidth > .submenu.two-columns {
        width: 400px!important;
    }
    .sw-megamenu.navigation.side-megamenu li.level0.fullwidth > .submenu.three-columns {
        width: 600px!important;
    }
    .sw-megamenu.navigation .subchildmenu.mega-columns.columns4 > li {
        width: 100%!important;
    }
    .sw-megamenu.navigation .subchildmenu.mega-columns > li {
        padding-top: 10px!important;
        padding-left: 10px!important;
    }
    .sw-megamenu.navigation li.level0.fullwidth .submenu li.level1 > a, 
    .sw-megamenu.navigation li.level0.staticwidth .submenu li.level1 > a {
        font-weight: 400!important;
    }
}

/* Eof Mega menu */

/* Theme configuration style */
body {
    line-height: 22px;
    letter-spacing: 0;
}
p,li {
    letter-spacing: 0;
    line-height: 22px;
}
@media (min-width: 1440px) {
.layout-1220 .block.category.event, .layout-1220 .footer.content, .layout-1220 .header.content, .layout-1220 .navigation, .layout-1220 .page-main, .layout-1220 .page-wrapper>.breadcrumbs >ul, .layout-1220 .page-wrapper>.page-bottom, .layout-1220 .page-wrapper>.widget, .layout-1220 .top-container,.layout-1220 .container {
    max-width: 1440px;
}
}
@media (max-width: 575px){
body {
    font-size: 13px;
    line-height: 21px;
}
}
h1, h2, h3, h4, h5, h6 {
    font-family: Poppins,sans-serif;
    color: #222529;
    letter-spacing: normal;
}
h1 {
    font-weight: 700;
    font-size: 36px;
    line-height: 44px;
    margin: 0 0 32px 0;
}
h2 {
    font-weight: 700;
    font-size: 30px;
    line-height: 40px;
    margin: 0 0 32px 0;
}
h3 {
    font-weight: 700;
    font-size: 25px;
    line-height: 32px;
    margin: 0 0 20px 0;
}
h4 {
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    margin: 0 0 14px 0;
}
h5 {
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    margin: 0 0 14px 0;
}
h6 {
    font-family: "Open Sans";
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    margin: 0 0 14px 0;
}

.catalog-product-view h1.page-title span.base {
    font-size: 1.5rem;
}
.catalog-product-view h2 {
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 40px;
    margin: 0 0 32px 0;
}
.catalog-product-view h3 {
    font-weight: 700;
    font-size: 1.15rem;
    line-height: 32px;
    margin: 0 0 20px 0;
}
.catalog-product-view h4 {
    font-weight: 700;
    font-size: 1rem;
    line-height: 27px;
    margin: 0 0 14px 0;
}
.catalog-product-view h5 {
    font-weight: 700;
    font-size: 0.85rem;
    line-height: 18px;
    margin: 0 0 14px 0;
}
.catalog-product-view h6 {
    font-family: "Open Sans";
    font-weight: 700;
    font-size: 0.75rem;
    line-height: 18px;
    margin: 0 0 14px 0;
}
.home-banner-slider h2.vc_custom_heading, .custom-font4 {
    font-family: 'Segoe Script','Savoye LET';
}
html .heading-secondary, html .lnk-secondary, html .text-color-secondary {
    color: #ff7272;
}
html .btn-modern {
    text-transform: uppercase;
    font-size: .75rem;
    padding: .75rem 1.5rem;
    font-weight: 600;
    height: auto;
}
html .action.primary, html .btn {
    font-family: Poppins;
    letter-spacing: .01em;
    font-weight: 700;
    line-height: 1.42857;
    padding: .8em 2em;
}
html .btn-modern {
    font-size: .8125rem;
    padding: 1em 2.8em;
}
html .btn-xl {
    font-size: 1rem;
    padding: .8rem 2rem;
}
.btn-modern.btn-xl {
    font-size: 1rem;
    padding: 1.25em 3.125em;
}
.btn-flat {
    padding: 0!important;
    background: none!important;
    border: none!important;
    border-bottom: 1px solid transparent!important;
    box-shadow: none!important;
    text-transform: uppercase;
    font-size: .75rem;
}
html .btn-dark {
    color: #fff;
    background-color: #222529;
    border-color: #222529 #222529 #0b0c0e;
}
html .btn-light {
    color: #222529;
    background-color: #fff;
    border-color: #fff #fff #e6e6e6;
}
html .btn-quaternary {
    color: #fff;
    background-color: #000;
    border-color: #000 #000 #000;
}
html .background-color-secondary {
    background-color: #f4a085 !important;
}
.top-icon .porto-sicon-header {
    margin-bottom: .75rem;
}
.wel-msg i {
    font-size: 23.68px;
    color: #4dae65;
}
.page-wrapper > .breadcrumbs {
    margin-bottom: 35px;
    padding: 12px 0;
}
.page-wrapper > .breadcrumbs .items {
    position: relative;
    font-size: 14px;
    padding-top: 24px;
    padding-bottom: 24px;
}
.page-wrapper > .breadcrumbs .items > li {
    line-height: 26px;
}
.page-wrapper > .breadcrumbs .items > li:not(:last-child)::after {
    content: "/ ";
    font-size: 20px;
}
.product.data.items > .item.content {
    background: none;
}
.product-type-carousel:not(.weltpixel_quickview-catalog_product-view) .product-info-main .product-add-form {
    border: none;
}
.product-item-info:hover .product-item-photo:not(.porto-tb-featured-image) {
    box-shadow: none;
}
.post-carousel .post-item .post-date {
    display: none;
}
.porto-recent-posts h4 {
    font-size: 15px;
    font-weight: 600;
    line-height: 26px;
    letter-spacing: -.025em;
    color: #222329;
    margin-bottom: 3px;
}
.porto-recent-posts .post-meta {
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    display: block !important;
    color: #999999;
}
.porto-recent-posts .post-item .post-excerpt {
    font-size: 14px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: -.025em;
    color: #777777;
}
.post-item .read-more {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: -.015em;
    color: var(--theme-color);
    margin-top: 14px;
}
.product.info.detailed.sticky .product.data.items>.item.content {
    border: none;
}
.sticky .product.data.items > .item.title.active {
    display: none;
}
.product.attribute.description > .value > h2 {
    display: none !important;
}
.product.detailed .data.content h2 {
    display: block;
    font-weight: 600;
    font-size: 22px;
    margin-bottom: 0.7em;
    color: #222529;
}
.product.data.items > .item.content p {
    line-height: 2.1;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.005em;
}
.accordion .product.data.items > .item.title{
    border: none;
    display: block;
    font-weight: 600;
    font-size: 22px;
    text-transform: capitalize;
    color: #222529;
    padding-top: 30px;
}
.accordion .product.data.items > .item.title:first-child {
    display: none;
}
.accordion .product.data.items > .item.title a {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}
.accordion .product.data.items > .item.content {
    display: block !important;
}
.fieldset .review-legend.legend {
    color: #222529;
}
.product.description ul li {
    margin: 0 !important;
    list-style: disc;
    display: list-item;
}
.product.description .row>* {
    padding-left: 10px;
    padding-right: 10px;
}
.fotorama__wrap--slide .fotorama__stage__frame {
    background: #f3f3f3;
}
.footer .widgettitle, .footer .widget-title {
    font-size: .9375rem;
    font-weight: 600;
}
html .background-color-secondary {
    background-color: #ff7272!important;
}
.footer, .footer p {
    font-size: 13px;
    line-height: 22px;
    letter-spacing: 0;
}
.footer .widgettitle, .footer .widget-title {
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -.025em;
    text-transform: capitalize;
}
.footer-top .custom-block:before,.footer-top .custom-block:after {
    margin-bottom: 0;
    border: none;
    margin-top: 0;
}
.footer-top h4.porto-sicon-title {
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -.025em;
    line-height: 22px;
    color: #222529;
}
.footer-top p {
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.025em;
    line-height: 22px;
}
.footer-middle > .container::after {
     border: none;
}
.footer .block.newsletter .form.subscribe {
    margin-bottom: 10px;
}
.footer .newsletter input {
    height: 3rem;
    padding-left: 1.25rem;
    background: #f4f4f4;
    border-radius: 0;
}
.footer .newsletter .action.subscribe {
    height: 3rem;
    font-weight: 600;
    border-radius: 0;
    border: none;
    letter-spacing: .15em;
}
.footer .widget>div>ul li {
    margin-bottom: 14px;
}
.footer-middle > .container {
    padding-top: 49px;
    padding-bottom: 59px;
}
.footer-bottom address {
    font-size: 13px;
    line-height: 22px;
    text-align: center;
    font-weight: 400;
    letter-spacing: -.025em;
}
.footer-bottom {
    font-size: 1em;
    padding-top: 1.125rem;
    padding-bottom: 1.125rem;
    border: #e7e7e7 solid 1px;
}

/* Eof Theme configuration style */



  .cms-index-index .page-main,
  .layout-1220.cms-index-index .page-main {
    max-width: 100%;
    padding: 0;
  }
  .columns .column.main {
    padding: 0;
  }
  .owl-carousel.custom-dots .owl-dots {
    position: absolute;
    margin-top: 0!important;
    line-height: 1;
    right: 0% !important;
    left: 0% !important;
    bottom: 1.95rem !important;
  }
  .intro .owl-carousel .owl-dots .owl-dot span {
    width: 6.25vw;
    height: 2px;
    border-radius: 0;
    margin: 5px 11px;
  }
  .porto-btn-data {
    z-index: 3;
    position: inherit;
    display: block;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
  }
  .intro .owl-carousel .owl-dot.active span, .intro .owl-carousel .owl-dot:hover span {
    background-color: #222529;
  }
  #banner-slider-demo-43 .owl-stage {
    display: flex;
  }
  .ps-2 {
    padding-left: 0.5rem !important;
  }
  .ms-4 {
    margin-left: 1.5rem !important;
  }
  .mb-0 {
    margin-bottom: 0 !important;
  }
  .ms-auto {
    margin-left: auto !important;
  }
  .mt-2 {
    margin-top: 0.5rem !important;
  }
  .p-b-xs {
    padding-bottom: 5px!important;
  }
  .porto-ibanner-layer {
    text-align: left;
    font-size: 1rem;
    position: absolute;
    z-index: 10;
  }
  .porto-u-heading {
    margin-bottom: 17px;
  }
  @media (max-width: 991px) {
    .porto-ibanner-layer {
      font-size: 0.875rem;
    }
  }
  @media (max-width: 1439px){
    .intro, .banner-group .porto-ibanner-layer {
      font-size: .7rem;
    }
  }
  @media (max-width: 767px){
    .intro h3, .intro .porto-u-sub-heading {
        font-size: 2.4em !important;
    }
    .intro a.porto-btn {
      font-size: 1rem;
    }
  }
  @media (min-width: 576px){
    .ps-sm-4 {
        padding-left: 1.5rem !important;
    }
  }
  @media (min-width: 768px) {
    .py-md-0 {
      padding-top: 0 !important;
      padding-bottom: 0 !important;
    }
    .ms-md-auto {
      margin-left: auto !important;
    }
    .py-md-5 {
      padding-top: 3rem !important;
      padding-bottom: 3rem !important;
    }
    .me-md-0 {
      margin-right: 0 !important;
    }
  }
  @media (min-width: 992px){
    .ms-lg-4 {
      margin-left: 1.5rem !important;
    }
    .pe-lg-0 {
      padding-right: 0 !important;
    }
    .ps-lg-4 {
      padding-left: 1.5rem !important;
    }
    .ps-lg-5 {
      padding-left: 3rem !important;
    }
  }
