.btn.btn-secondary .pc-si {
  stroke: var(--phoca-white)
}

.ph-cart-module-box .btn,
.ph-cart-module-box .btn .pc-si {
  background: 0 0;
  color: var(--phoca-color-primary);
  stroke: var(--phoca-color-primary);
  border-color: transparent
}

.ph-cart-module-box .btn .pc-si:active,
.ph-cart-module-box .btn .pc-si:focus,
.ph-cart-module-box .btn .pc-si:hover,
.ph-cart-module-box .btn:active,
.ph-cart-module-box .btn:focus,
.ph-cart-module-box .btn:hover {
  background: 0 0;
  color: var(--phoca-color-primary);
  stroke: var(--phoca-color-primary);
  border-color: transparent
}

.ph-cart-module-box .btn .pc-si sup,
.ph-cart-module-box .btn sup {
  background: var(--phoca-module-sup-bg);
  color: var(--phoca-color-light-fixed);
  stroke: var(--phoca-color-light-fixed)
}

.ph-filter-box .btn-danger,
.ph-filter-box .btn-success {
  background: var(--phoca-color-primary);
  border: 1px solid var(--phoca-color-primary);
  margin-left: 2px
}

.ph-filter-box .btn-danger .pc-si,
.ph-filter-box .btn-success .pc-si {
  stroke: var(--phoca-color-light)
}

h4.panel-title {
  text-transform: uppercase;
  font-size: 1.2em;
  font-weight: 400
}

h4.panel-title,
h4.panel-title a {
  text-decoration: none
}

.ph-item-box .btn-sm {
  padding: 1em 1.5em;
  text-transform: uppercase;
  font-size: .75em
}

.ph-item-box.grid,
.ph-item-box.grid .ph-item-content,
h4.panel-title a {
  margin: 0;
  padding: 0
}

h3.grid.ph-product-header {
  text-align: left;
  font-size: 1em;
  margin: .5em 0 .2em;
  color: var(--phoca-color-dark);
  text-transform: none;
  font-weight: 400
}

.ph-category-action-buttons {
  margin: 1em 0
}

.ph-category-action-buttons.grid .ph-pull-left,
.ph-category-action-buttons.grid .ph-pull-right {
  text-align: center;
  margin: .2em;
  float: none
}

.row.ph-pagination div,
.row.ph-pagination-top div {
  line-height: auto
}

.row.ph-pagination-top .btn {
  padding: 0;
  background: 0 0;
  border: 0;
  color: var(--phoca-color-gray-500);
  margin-left: .3em;
  margin-right: .3em
}

.row.ph-pagination-top .btn svg {
  fill: var(--phoca-color-gray-500);
  stroke: var(--phoca-color-gray-500)
}

[data-bs-theme=dark] .row.ph-pagination-top .btn svg {
  fill: var(--phoca-color-gray-100);
  stroke: var(--phoca-color-gray-100)
}

.row.ph-pagination-top .btn.active svg {
  fill: var(--phoca-color-primary);
  stroke: var(--phoca-color-primary)
}

.ph-pagination .pagination {
  margin-left: 0;
  margin-right: 0
}

#phItems .ph-center-pagination,
.com_phocagallery .pagination-centered {
  line-height: normal
}

#phItems .ph-center-pagination li.disabled>span,
#phItems .ph-center-pagination li>a,
.com_phocagallery .pagination-centered li.disabled>span,
.com_phocagallery .pagination-centered li>a {
  background: var(--phoca-pagination-bg);
  border: var(--phoca-pagination-border)
}

#phItems .ph-center-pagination li.active>a,
.com_phocagallery .pagination-centered li.active>a {
  background: var(--phoca-pagination-active-bg);
  border: var(--phoca-pagination-active-border);
  color: var(--phoca-pagination-active-color)
}

.panel-body {
  margin-left: 1em
}

.ph-filter-box .btn {
  margin-top: .2em;
  margin-bottom: .2em;
  padding: .75em
}

.ph-checkout-cart-quantity input {
  flex-grow: 0 !important
}

.ph-checkout-cart-quantity .btn,
.ph-checkout-cart-quantity input {
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  margin: .25em;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0
}

h4.panel-title a svg {
  margin-top: -2px
}

.modal-title {
  margin: .1em 0 0
}

.modal-title svg,
h4.panel-title a svg {
  vertical-align: middle
}

.ph-checkout-icon-spec-finished {
  background: var(--phoca-success);
  color: var(--phoca-color-dark-fixed)
}

.ph-checkout-icon-spec-pending {
  background: var(--phoca-color-gray-500)
}

#phoca-pc-item-box .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down,
#phoca-pc-item-box .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up,
.ph-account-box-header,
.ph-checkout-box-header {
  border-radius: 0
}

.ph-account-box-action,
.ph-checkout-box-action {
  border-radius: 0;
  background: var(--phoca-color-light)
}

.ph-account-box-action .form-control,
.ph-account-box-action .form-select,
.ph-checkout-box-action .form-control,
.ph-checkout-box-action .form-select {
  border: 1px solid var(--phoca-color-dark)
}

.ph-checkout-cart-box .input-group .btn,
.ph-checkout-cart-box .input-group input,
.ph-item-price-panel .form-group .btn,
.ph-item-price-panel .form-group input {
  text-align: center
}

.input-group.bootstrap-touchspin {
  margin-right: .85em
}

.ph-item-add-to-cart-box .ph-input-quantity {
  min-width: 4em
}

ul.ph-filter-module-category-tree {
  padding-left: 0;
  margin-left: 1em
}

.ph-item-content.grid .ph-stars-box {
  padding: 0;
  margin: .1em 0
}

span.ph-stars,
span.ph-stars span {
  display: block;
  background: url(../images/com_phocacart/star-small-yellow.svg) 0 -16px repeat-x;
  width: 80px;
  height: 16px
}

span.ph-stars span {
  background-position: 0 0
}

.ph-rating .br-widget a {
  background: url(../images/com_phocacart/star-yellow.svg);
  width: 24px;
  height: 24px;
  display: block;
  float: left
}

.ph-item-price-panel .ph-price-brutto {
  color: var(--phoca-color-primary)
}

.img-thumbnail {
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0
}

.ph-category-action-buttons.gridlist {
  margin-top: 2em
}

.ph-category-action-buttons.list .btn {
  font-size: .7em;
  padding: 1em .7em
}

.pc-categories-view .ph-item-box {
  padding: 1em
}

.pc-categories-view .ph-category-header,
.pc-categories-view .ph-item-action-box {
  padding: .5em;
  text-align: center
}

.ph-cart-module-box {
  position: relative;
  color: var(--phoca-top-menu-btn-color);
  margin-top: .5em
}

.ph-cart-module-cart-box {
  display: flex;
  align-items: start
}

.ph-cart-module-cart-box-info {
  padding: 0;
  line-height: 1
}

.ph-cart-module-cart-box-info-amount,
.ph-cart-module-cart-box-info-title {
  padding: .1em 0;
  margin: 0;
  line-height: 1;
  font-size: .85em
}

.ph-cart-module-cart-box-info-amount {
  font-weight: 700;
  font-size: 1em
}

.ph-cart-module-box .btn {
  margin-left: 0;
  padding: .2em 1em
}

.ph-cart-module-cart-box .btn {
  margin-left: 0;
  padding: .2em 1em .2em .2em
}

.ph-cart-module-currency-box .btn {
  margin-left: 0;
  padding: .2em 1em .2em 2em
}

.ph-cart-module-box .btn .pc-si {
  height: 1.6em;
  width: 1.6em
}

.ph-currency-image-list {
  height: 1em;
  margin: .5em 0;
  width: auto
}

@media screen and (max-width:768px) {
  .ph-cart-module-cart-box-info {
    display: none
  }

  .ph-cart-module-currency-box .btn {
    padding: .2em 1em
  }
}

.ph-search-box {
  margin: .3em auto;
  width: 100%;
  display: block
}

.phSearchBoxSearchInput {
  color: var(--phoca-input-color);
  background-color: var(--phoca-input-bg);
  border: var(--phoca-input-border);
  width: 100%
}

.phSearchBox .input-group {
  display: block
}

@media screen and (min-width:576px) {
  .ph-search-box {
    margin: 0 2em;
    width: auto
  }

  .phSearchBoxSearchInput {
    color: var(--phoca-input-color);
    background-color: var(--phoca-input-bg);
    border: var(--phoca-input-border);
    width: 30vw
  }

  .phSearchBox .input-group {
    display: flex
  }
}

.ph-main-nav-top-box .g-content .platform-content {
  float: right;
  margin: auto .5em;
  padding: 0
}

.ph-main-nav-top-box .g-content .jmoddiv.jmodinside {
  position: static
}

.container-topbar .ph-cart-module-box>.btn {
  background: 0 0;
  border: 0;
  color: var(--phoca-top-menu-btn-color)
}

.container-topbar .ph-cart-module-box>.btn-secondary:active:focus,
.container-topbar .ph-cart-module-box>.btn-secondary:focus,
.ph-pag-top-row .btn:focus {
  box-shadow: none;
  border: 0;
  background: 0 0
}

.container-topbar .ph-cart-module-box>.btn .pc-si {
  stroke: var(--phoca-top-menu-icon-color)
}

.container-topbar .dropdown-menu {
  min-width: 18rem
}

.ph-cart-count-sup {
  color: var(--phoca-white);
  background: var(--phoca-color-secondary);
  border-radius: 0;
  width: 1em;
  height: 1em;
  padding: .75em;
  font-size: .75em;
  line-height: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-content: center;
  align-items: center;
  position: absolute;
  right: .5em
}

.ph-cart-cart-row-item {
  align-items: center
}

.ph-mod-cart-image {
  padding: .3em
}

.ph-mod-cart-image img {
  background: #f4f9fc;
  background: radial-gradient(circle, #f4f9fc 0, #f5f9fc 35%, #f7f8fc 100%)
}

.ph-item-cart-box .ph-small,
.ph-item-compare-box .ph-small,
.ph-item-currency-box .ph-small,
.ph-item-wishlist-box .ph-small {
  font-size: inherit
}

.ph-dropdown-cart,
.ph-dropdown-compare,
.ph-dropdown-currency,
.ph-dropdown-wishlist {
  min-width: 35%
}

.container-footer .mod-custom img,
.ph-item-cart-box,
.ph-item-compare-box,
.ph-item-currency-box,
.ph-item-wishlist-box {
  margin: 1em
}

.ph-item-cart-box {
  padding: 1em
}

@media screen and (max-width:768px) {

  .ph-dropdown-cart,
  .ph-dropdown-compare,
  .ph-dropdown-currency,
  .ph-dropdown-wishlist {
    min-width: 80%
  }
}

.ph-main-nav-mod .g-menu-item-container {
  white-space: nowrap
}

.g-main-nav .g-toplevel>li.g-parent .g-menu-parent-indicator,
.ph-attribute-title,
.ph-available-options-title {
  display: none
}

#phPriceFilterRange .ui-widget-header,
#phPriceFilterRange.ui-slider-horizontal .ui-slider-handle {
  background: var(--phoca-color-secondary)
}

.ui-slider .ui-slider-handle {
  height: 14px;
  width: 14px
}

#phPriceFilterRange.ui-slider-horizontal .ui-slider-handle {
  top: -6px
}

#phPriceFilterRange.ui-widget.ui-widget-content {
  height: 2px
}

.ph-product-module-item-box-content h4 {
  font-size: 1em
}

.ph-product-module-item-box-image img {
  margin: .5rem 1rem
}

.ph-color-1 {
  color: var(--phoca-color-1)
}

.ph-color-2 {
  color: var(--phoca-color-2)
}

.ph-color-3 {
  color: var(--phoca-color-3)
}

.ph-color-4 {
  color: var(--phoca-color-4)
}

.ph-form-input-box input.form-control:focus,
.ph-form-input-box select.form-select:focus,
form.ph-form-placeholder input.form-control:focus {
  border: 1px solid var(--phoca-color-secondary);
  box-shadow: 0 0 0 2px var(--phoca-color-secondary)
}

.ph-form-input-box input.form-control:focus~label,
.ph-form-input-box input.form-control:not([value=""])~label,
.ph-form-input-box select~label {
  background: linear-gradient(var(--phoca-color-gray-100), var(--phoca-color-light));
  color: var(--phoca-color-primary)
}

.ph-payment-title-box,
.ph-shipping-title-box {
  display: flex;
  flex-direction: column;
  justify-content: flex-start
}

.ph-checkout-box-action {
  display: flex;
  align-items: flex-start
}

.ph-checkout-payment-items-box,
.ph-checkout-shipping-items-box {
  display: flex;
  justify-content: space-between;
  gap: .25em
}

.ph-checkout-payment-item,
.ph-checkout-shipping-item {
  width: calc(33.33% - .5em);
  max-width: calc(33.33% - .5em);
  background: var(--phoca-color-background-checkout-item-box);
  border-radius: 0;
  padding: 1em;
  margin: .25em 0;
  display: flex;
  flex-direction: column
}

@media screen and (max-width:768px) {

  .ph-checkout-payment-item,
  .ph-checkout-shipping-item {
    width: 100%;
    max-width: 100%
  }
}

.ph-payment-title-box,
.ph-shipping-title-box {
  width: 100%;
  margin: .25em;
  flex-grow: 1
}

.ph-payment-price-box,
.ph-shipping-price-box {
  width: 100%;
  margin: .25em
}

.ph-payment-title-box .controls,
.ph-shipping-title-box .controls {
  flex-grow: 1
}

.ph-payment-title-box label,
.ph-shipping-title-box label {
  padding: 1em;
  background: var(--phoca-color-light);
  border: 1px solid var(--phoca-color-gray-500);
  border-radius: 0;
  min-height: 6em
}

.ph-payment-title-box label:has(input[type=radio]:checked),
.ph-shipping-title-box label:has(input[type=radio]:checked) {
  border: 1px solid var(--phoca-color-secondary);
  box-shadow: 0 0 0 2px var(--phoca-color-secondary)
}

.ph-checkout-payment-add-info,
.ph-checkout-shipping-additional-info {
  padding: 1em;
  border-radius: 0;
  margin-left: 0;
  margin-top: .5em
}

.ph-checkout-payment-info-box,
.ph-checkout-shipping-info-box {
  padding: 1em
}

.ph-label-box {
  top: .5em
}

.ph-corner-icon a {
  text-decoration: none;
  color: var(--phoca-pc-label-color)
}

.ph-corner-icon-new {
  border: 2px dashed var(--phoca-color-info);
  background: var(--phoca-color-info)
}

.ph-corner-icon-new,
.ph-corner-icon-popular,
.ph-corner-icon-sale {
  border-radius: var(--phoca-pc-label-radius);
  color: var(--phoca-pc-label-color)
}

.ph-corner-icon-sale {
  border: 2px dashed var(--phoca-color-secondary);
  background: var(--phoca-color-secondary)
}

.ph-corner-icon-popular {
  border: 2px dashed var(--phoca-color-warning);
  background: var(--phoca-color-warning)
}

.modal .btn {
  margin: 0;
  padding-left: .75em
}

.ph-row-flex.grid .row-item .ph-item-box {
  margin-bottom: .5em;
  border: 0;
  border-radius: 16px;
  background-color: var(--phoca-item-box-bg);
  box-shadow: var(--phoca-item-box-shadow);
  transition: box-shadow .2s;
  padding: .5em
}

.container-footer .mod-custom,
.container-footer .pc-email-newsletter-mod {
  padding: 2em
}

.container-footer small {
  font-size: .75em
}

.swiper-button-next:after,
.swiper-button-prev:after {
  color: var(--phoca-swiper-pagination-color)
}

.ph-account-box-action,
.ph-checkout-box-action {
  border: 0;
  background: 0
}

.ph-checkout-box-header {
  border: 0
}

.ph-checkout-icon-spec-finished,
.ph-checkout-icon-spec-pending {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 5px 0
}

.ph-checkout-box-status-pending .ph-checkout-box-row {
  background: var(--phoca-color-background-not-finished);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  width: 50%
}

.ph-checkout-box-status-pending .ph-checkout-box-action {
  background: var(--phoca-color-background-not-finished);
  border-top-right-radius: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  padding: 1em
}

.ph-checkout-box-status-finished .ph-checkout-box-row {
  background: var(--phoca-color-background-finished);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  width: 50%
}

.ph-checkout-box-status-finished .ph-checkout-box-action {
  background: var(--phoca-color-background-finished);
  border-top-right-radius: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  padding: 1em
}

.ph-checkout-box-header-pas {
  border: 0
}

.ph-msg-success-box {
  background: var(--phoca-success)
}

.ph-price-filter-box {
  margin: 1em 0
}

.ph-account-box-header,
.ph-account-box-header-pas,
.ph-checkout-box-header,
.ph-checkout-box-header-pas {
  background: 0 0
}

.ph-pull-right.ph-button-display-category-box {
  text-align: center;
  float: none
}

.ph-orders-item-box-row .btn {
  margin: .25em
}

.ph-orders-item-box-row .btn .pc-si {
  margin: 0;
  padding: 0
}

.phItemCartUpdateBoxForm .input-group {
  justify-content: center
}

.phModParticlesFeatureBox .phModParticlesItem {
  width: auto;
  border-radius: var(--phoca-border-radius);
  background: 0 0;
  flex-grow: 1;
  flex-basis: 0
}

@media only screen and (max-width:768px) {
  .phModParticlesFeatureBox .phModParticlesItem {
    width: 100%;
    flex-basis: auto
  }
}

.phModParticlesFeatureBox .phModParticlesItem .phModParticlesDesc {
  margin-top: 0;
  padding-top: 0
}

.phModParticlesImageContent {
  background-position-x: right
}

.phModParticlesImageContent .phModParticlesItemContent {
  padding-top: 10%;
  padding-bottom: 10%
}

.phModParticlesImageContent .phModParticlesItem.pmpReverse .phModParticlesItemImage,
.phModParticlesImageFeatureBox .phModParticlesItem .phModParticlesItemImage {
  text-align: center
}

.phModParticlesFeatureRow .phModParticlesSvg {
  height: 2em;
  width: auto
}

.container-footer .phModParticlesFeatureRow .phModParticlesItem {
  padding-top: 0
}

.phBrandsModuleBox .ph-brand-name {
  padding: 3rem
}

#phItemSearchBoxOffCanvas .phSearchBox .ph-radio-container label {
  display: flex;
  margin: .5em
}

#phItemSearchBoxOffCanvas .phSearchBox .ph-radio-container label input[type=radio] {
  margin-right: .5em
}

.phModParticlesImageContent .phModParticlesItemContent .phModParticlesButtonBox {
  margin-top: 2em
}

.phModParticlesImageContent .phModParticlesItemContent .phModParticlesButtonBox .phModParticlesButton,
.phModParticlesItemFeatureBox .phModParticlesButtonBox .phModParticlesButton {
  border-radius: 1px;
  text-decoration: none;
  font-size: 1rem;
  text-transform: uppercase;
  padding: .7rem 2.4rem;
  white-space: nowrap
}

.phModParticlesFeatureBoxContainer .phModParticlesItemTitle .phModParticlesImageFeatureBox .phModParticlesItemTitle,
.phModParticlesImageContent .phModParticlesItemContent .phModParticlesItemTitle {
  line-height: 1.1;
  font-size: 3.8vh
}

.container-banner .phModParticles {
  padding-top: 0;
  padding-bottom: 0
}

.container-bottom-a .phModParticles,
.container-bottom-b .phModParticles,
.container-main .phModParticles {
  padding-top: 2em;
  padding-bottom: 2em
}

.container-banner .phModParticlesSimpleContent {
  background: var(--phoca-phoca-particles-bg-color-simple-content)
}

.container-banner .phModParticlesImageContent {
  background: var(--phoca-phoca-particles-bg-color-image-content)
}

.container-banner .phModParticlesFeatureBox {
  background: var(--phoca-phoca-particles-bg-color-feature-box)
}

.container-banner .phModParticlesImageFeatureBox {
  background: var(--phoca-phoca-particles-bg-color-image-feature-box)
}

.container-banner .phModParticlesSimpleContentContainer {
  background: var(--phoca-particles-bg-color-banner-simple-content)
}

.container-banner .phModParticlesSimpleContentContainer .phModParticlesFooter {
  height: 6vw;
  margin-top: -6vw;
  background: var(--phoca-particles-bg-color-top-a-feature-box)
}

.container-top-a .phModParticlesFeatureBoxContainer {
  background: var(--phoca-particles-bg-color-top-a-feature-box);
  color: var(--phoca-particles-color-top-a-feature-box);
  padding-left: 5%;
  padding-right: 5%
}

.container-bottom-c .phModParticlesImageContentContainer {
  background: var(--phoca-particles-bg-color-bottom-c-image-content);
  color: var(--phoca-particles-color-bottom-c-image-content);
  margin: 2em;
  padding: 2em;
  border-radius: 1em
}

.container-banner .phModParticlesImageContent .phModParticlesItemContent .phModParticlesItemContentIn,
.container-banner .phModParticlesImageContent .phModParticlesItemContent .phModParticlesItemTitle {
  padding: 1em;
  background: var(--phoca-particles-bg-content)
}

.container-banner .phModParticlesImageContent .phModParticlesItemContent .phModParticlesItemTitle {
  font-size: 6vh;
  margin-top: 4rem;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  margin-bottom: .25rem
}

.phModParticlesImageContent .phModParticlesItemContent ul {
  list-style: none;
  padding-left: 0;
  margin: 3em 0
}

.phModParticlesImageContent .phModParticlesItemContent ul li {
  position: relative;
  padding: .25em 1em .25em 2em;
  line-height: 1.4
}

.phModParticlesImageContent .phModParticlesItemContent ul li:before {
  content: "";
  position: absolute;
  left: 1em;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background-color: var(--phoca-color-primary)
}

.phModParticlesSimpleContent .phModParticlesItem .phModParticlesTitle {
  font-size: 3.6vw;
  font-size: clamp(1.5rem, 3.6vw, 3rem)
}

.phModParticlesTitle:has(.phAnimCounterNumber) {
  font-size: 7em;
  font-weight: 700;
  min-width: 3em
}

.phModParticlesTitle .phModParticlesTitleSuffix {
  font-size: .7em;
  font-weight: 400;
  color: var(--phoca-color-primary);
  padding: .5em;
  display: block
}

.phModParticlesTitle:has(.phAnimCounterNumber) .phModParticlesTitleSuffix {
  font-size: 4rem;
  font-weight: 700;
  color: var(--phoca-color-primary);
  padding: 0;
  vertical-align: super;
  display: inline
}

.phModParticlesItemContentIn {
  text-align: justify;
  -webkit-hyphens: auto;
  hyphens: auto
}

.phModParticlesTitle:has(.phAnimScrambleWord) {
  color: var(--phoca-color-primary);
  font-weight: 900
}

.container-top-a .phModParticlesItemTitle {
  margin-bottom: .5em
}

.phModParticlesFeatureBoxContainer .phModParticlesImage img {
  border: 5px solid #f2edfd;
  border-radius: 50%;
  width: 12em;
  height: 12em
}

.container-top-a .phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage:has(.phAnimKenBurnsImg),
.container-top-a .phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage:has(.phAnimZoomImage) {
  box-shadow: 1em 1em 0 var(--phoca-color-primary)
}

.phModParticlesItemContentIn .phocamaps-box .leaflet-container {
  box-shadow: 1em 1em 0 var(--phoca-color-primary)
}

.container-bottom-e .phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage,
.container-bottom-e .phModParticlesImageContent .phModParticlesItem.pmpReverse .phModParticlesItemImage,
.container-bottom-f .phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage,
.container-bottom-f .phModParticlesImageContent .phModParticlesItem.pmpReverse .phModParticlesItemImage {
  padding: 0
}

.container-bottom-e .phModParticlesImageContent .phModParticlesItem,
.container-bottom-f .phModParticlesImageContent .phModParticlesItem {
  background: #f2edfd
}

[data-bs-theme=dark] .container-bottom-e .phModParticlesImageContent .phModParticlesItem,
[data-bs-theme=dark] .container-bottom-f .phModParticlesImageContent .phModParticlesItem {
  background: #000
}

[data-bs-theme=dark] .container-bottom-c {
  color: #000
}

.phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  display: block
}

.phAnimCounterNumber {
  display: inline
}

.phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage:has(.phAnimZoomImage) {
  padding: 0;
  overflow: hidden;
  height: 500px;
  max-width: 500px;
  margin: 0 auto
}

@media only screen and (max-width:768px) {
  .phModParticlesImageContent .phModParticlesItem .phModParticlesItemImage:has(.phAnimZoomImage) {
    height: 300px;
    max-width: 300px;
    margin: 2em auto
  }
}

.container-bottom-b .phModParticlesItem {
  padding-top: 5em;
  padding-bottom: 5em
}

div.mod-languages ul li.lang-active {
  background-color: var(--phoca-color-light)
}

[data-bs-theme=dark] .btn-primary:not(.container-footer .btn-primary):not(.btn-primary.phItemSwitchLayoutType),
[data-bs-theme=dark] .phModParticlesButton:not(.container-banner .phModParticlesButton) {
  color: #fff;
  background-color: #000;
  border: 1px solid #fff
}

[data-bs-theme=dark] .btn-primary:not(.container-footer .btn-primary):not(.btn-primary.phItemSwitchLayoutType) svg,
[data-bs-theme=dark] .phModParticlesButton:not(.container-banner .phModParticlesButton) svg {
  fill: #fff;
  stroke: #fff
}

[data-bs-theme=dark] .btn-primary:not(.container-footer .btn-primary):not(.btn-primary.phItemSwitchLayoutType):active,
[data-bs-theme=dark] .btn-primary:not(.container-footer .btn-primary):not(.btn-primary.phItemSwitchLayoutType):focus,
[data-bs-theme=dark] .phModParticlesButton:not(.container-banner .phModParticlesButton):active,
[data-bs-theme=dark] .phModParticlesButton:not(.container-banner .phModParticlesButton):focus {
  color: #fff;
  background-color: #000;
  border: 1px solid #fff
}

[data-bs-theme=dark] .form-check-input[type=checkbox]:checked,
[data-bs-theme=dark] input[type=checkbox]:checked {
  background: #000
}

[data-bs-theme=dark] .alert-dark,
[data-bs-theme=dark] .alert-primary {
  border-color: var(--phoca-white)
}

.container-banner .phModParticlesButton {
  --phoca-btn-color: hsl(0, 0%, 100%);
  --phoca-btn-bg: #d22030;
  --phoca-btn-hover-bg: #b31b29;
  --phoca-btn-hover-border-color: #a81a26;
  --phoca-btn-focus-shadow-rgb: 217, 65, 79;
  --phoca-btn-active-bg: #a81a26;
  --phoca-btn-active-border-color: #9e1824;
  --phoca-btn-disabled-color: hsl(0, 0%, 100%);
  --phoca-btn-disabled-bg: #d22030
}

.container-banner .phModParticlesButton,
.container-footer .btn-outline-primary,
.container-footer .btn-primary {
  --phoca-btn-border-color: #d22030;
  --phoca-btn-hover-color: hsl(0, 0%, 100%);
  --phoca-btn-active-color: hsl(0, 0%, 100%);
  --phoca-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --phoca-btn-disabled-border-color: #d22030
}

.container-footer .btn-primary {
  --phoca-btn-color: hsl(0, 0%, 100%);
  --phoca-btn-bg: #d22030;
  --phoca-btn-hover-bg: #b31b29;
  --phoca-btn-hover-border-color: #a81a26;
  --phoca-btn-focus-shadow-rgb: 217, 65, 79;
  --phoca-btn-active-bg: #a81a26;
  --phoca-btn-active-border-color: #9e1824;
  --phoca-btn-disabled-color: hsl(0, 0%, 100%);
  --phoca-btn-disabled-bg: #d22030
}

.container-banner .phModParticlesButton,
.container-footer .btn-outline-primary {
  --phoca-btn-color: #d22030;
  --phoca-btn-hover-bg: #d22030;
  --phoca-btn-hover-border-color: #d22030;
  --phoca-btn-focus-shadow-rgb: 210, 32, 48;
  --phoca-btn-active-bg: #d22030;
  --phoca-btn-active-border-color: #d22030;
  --phoca-btn-disabled-color: #d22030;
  --phoca-btn-disabled-bg: transparent;
  --phoca-gradient: none
}

.container-footer .form-check-input[type=checkbox] {
  color: var(--phoca-color-light);
  border: 1px solid var(--phoca-color-light)
}

.container-footer .form-control {
  color: var(--phoca-color-light);
  background-color: transparent
}

.container-footer .form-control::-moz-placeholder {
  color: var(--phoca-color-gray-600)
}

.container-footer .form-control::placeholder {
  color: var(--phoca-color-gray-600)
}

.mod-login__username.form-group .input-group span.input-group-text {
  border-radius: 1px
}

.card.phModParticlesItem {
  background: var(--phoca-card-bg-particles-item)
}

.card.phModParticlesItem .btn {
  background: var(--phoca-card-bg-color-button-particles-item);
  border: var(--phoca-card-border-button-particles-item)
}

.phFontColorDark,
.phFontColorDark .ph-cart-module-box,
.phFontColorDark a,
.phFontColorDark a:not(.btn):not(.dropdown-item) {
  color: var(--phoca-color-dark-fixed)
}

.phFontColorDark .dropdown-menu {
  --phoca-dropdown-color: var(--phoca-color-light-fixed);
  --phoca-dropdown-bg: var(--phoca-color-dark-fixed)
}

[data-bs-theme=dark] .phFontColorDark .dropdown-menu {
  --phoca-dropdown-bg: var(--phoca-color-light-fixed);
  --phoca-dropdown-color: var(--phoca-color-dark-fixed)
}

.phFontColorDark .ph-cart-module-box .btn .pc-si {
  color: var(--phoca-color-dark-fixed);
  stroke: var(--phoca-color-dark-fixed)
}

.phFontColorDark svg.dark-light {
  fill: var(--phoca-color-dark-fixed)
}

.phFontColorDark .mod-menu>li.active::after,
.phFontColorDark .mod-menu>li:hover::after {
  background: var(--phoca-color-dark-fixed)
}

.phFontColorLight,
.phFontColorLight .ph-cart-module-box,
.phFontColorLight a:not(.btn):not(.dropdown-item) {
  color: var(--phoca-color-light-fixed)
}

.phFontColorLight .dropdown-menu {
  --phoca-dropdown-bg: var(--phoca-color-light-fixed);
  --phoca-dropdown-color: var(--phoca-color-dark-fixed)
}

[data-bs-theme=dark] .phFontColorLight .dropdown-menu {
  --phoca-dropdown-color: var(--phoca-color-light-fixed);
  --phoca-dropdown-bg: var(--phoca-color-dark-fixed)
}

.phFontColorLight .ph-cart-module-box .btn,
.phFontColorLight .ph-cart-module-box .btn .pc-si {
  color: var(--phoca-color-light-fixed);
  stroke: var(--phoca-color-light-fixed)
}

.phFontColorLight svg.dark-light {
  fill: var(--phoca-color-light-fixed)
}

.phFontColorLight .mod-menu>li.active::after,
.phFontColorLight .mod-menu>li:hover::after {
  background: var(--phoca-color-light-fixed)
}

.phFontColorLight .navbar-toggler {
  color: var(--phoca-color-light-fixed);
  border: 1px solid var(--phoca-color-light-fixed)
}

.container-header.phFontColorLight.scrolled .ph-cart-module-box,
.container-header.phFontColorLight.scrolled a:not(.btn),
.container-header.scrolled .ph-cart-module-box,
.container-header.scrolled a:not(.btn),
.container-overheadbar.phFontColorLight.scrolled .ph-cart-module-box,
.container-overheadbar.phFontColorLight.scrolled a:not(.btn),
.container-overheadbar.scrolled .ph-cart-module-box,
.container-overheadbar.scrolled a:not(.btn) {
  color: var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorDark.scrolled .ph-cart-module-box .btn,
.container-header.phFontColorDark.scrolled .ph-cart-module-box .btn .pc-si,
.container-header.phFontColorLight.scrolled .ph-cart-module-box .btn,
.container-header.phFontColorLight.scrolled .ph-cart-module-box .btn .pc-si,
.container-header.scrolled .ph-cart-module-box .btn .container-header.scrolled .ph-cart-module-box .btn .pc-si,
.container-header.scrolled .ph-cart-module-box .btn .container-overheadbar.scrolled .ph-cart-module-box .btn .pc-si,
.container-overheadbar.phFontColorDark.scrolled .ph-cart-module-box .btn,
.container-overheadbar.phFontColorDark.scrolled .ph-cart-module-box .btn .pc-si,
.container-overheadbar.phFontColorLight.scrolled .ph-cart-module-box .btn,
.container-overheadbar.phFontColorLight.scrolled .ph-cart-module-box .btn .pc-si,
.container-overheadbar.scrolled .ph-cart-module-box .btn .container-header.scrolled .ph-cart-module-box .btn .pc-si,
.container-overheadbar.scrolled .ph-cart-module-box .btn .container-overheadbar.scrolled .ph-cart-module-box .btn .pc-si {
  color: var(--phoca-container-header-font-color-sticky);
  stroke: var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorDark.scrolled svg.dark-light,
.container-header.phFontColorLight.scrolled svg.dark-light,
.container-header.scrolled svg.dark-light,
.container-overheadbar.phFontColorDark.scrolled svg.dark-light,
.container-overheadbar.phFontColorLight.scrolled svg.dark-light,
.container-overheadbar.scrolled svg.dark-light {
  fill: var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorDark.scrolled .mod-menu>li.active::after,
.container-header.phFontColorDark.scrolled .mod-menu>li:hover::after,
.container-header.phFontColorLight.scrolled .mod-menu>li.active::after,
.container-header.phFontColorLight.scrolled .mod-menu>li:hover::after,
.container-header.scrolled .mod-menu>li.active::after,
.container-header.scrolled .mod-menu>li:hover::after,
.container-overheadbar.phFontColorDark.scrolled .mod-menu>li.active::after,
.container-overheadbar.phFontColorDark.scrolled .mod-menu>li:hover::after,
.container-overheadbar.phFontColorLight.scrolled .mod-menu>li.active::after,
.container-overheadbar.phFontColorLight.scrolled .mod-menu>li:hover::after,
.container-overheadbar.scrolled .mod-menu>li.active::after,
.container-overheadbar.scrolled .mod-menu>li:hover::after {
  background: var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorLight.scrolled .navbar-toggler,
.container-overheadbar.phFontColorLight.scrolled .navbar-toggler {
  color: var(--phoca-container-header-font-color-sticky);
  border: 1px solid var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorDark.scrolled .ph-cart-module-box,
.container-header.phFontColorDark.scrolled a:not(.btn),
.container-overheadbar.phFontColorDark.scrolled .ph-cart-module-box,
.container-overheadbar.phFontColorDark.scrolled a:not(.btn) {
  color: var(--phoca-container-header-font-color-sticky)
}

.container-header.phFontColorDark.scrolled .navbar-toggler,
.container-overheadbar.phFontColorDark.scrolled .navbar-toggler {
  color: var(--phoca-container-header-font-color-sticky);
  border: 1px solid var(--phoca-container-header-font-color-sticky)
}

.phMarginTopNegative .phModParticles {
  margin-top: -10em
}

@media only screen and (max-width:768px) {
  .phMarginTopNegative .phModParticles {
    margin-top: -12em
  }
}

.phBgColorGrey {
  background: #f8f9fa
}

[data-bs-theme=dark] .phBgColorGrey {
  background: #000
}

.phBgColorPrimary {
  background: var(--phoca-color-primary)
}

.phBgColorPrimary .btn-primary {
  color: var(--phoca-color-primary);
  background: var(--phoca-color-dark-fixed)
}

.leaflet-container,
.leaflet-map-pane {
  z-index: 1
}

.container-bottom-a:has(.phTplRow:empty),
.container-bottom-b:has(.phTplRow:empty),
.container-bottom-c:has(.phTplRow:empty),
.container-bottom-d:has(.phTplRow:empty) .container-bottom-e:has(.phTplRow:empty) .container-bottom-f:has(.phTplRow:empty) .container-bottom-g:has(.phTplRow:empty),
.container-top-a:has(.phTplRow:empty),
.container-top-b:has(.phTplRow:empty) {
  display: none
}

/* --- New Premium Features --- */

/* Reading Progress Bar */
.reading-progress-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  z-index: 99999;
  background: transparent;
  pointer-events: none;
}

.reading-progress-bar {
  height: 100%;
  background: linear-gradient(90deg, var(--phoca-color-primary), var(--phoca-color-secondary));
  width: 0%;
  transition: width 0.1s ease-out;
}

/* Glass Header */
.container-header.glass-header {
  background-color: rgba(255, 255, 255, 0.7);
  /* Light mode fallback */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  transition: background-color 0.3s ease, backdrop-filter 0.3s ease;
}

[data-bs-theme=dark] .container-header.glass-header {
  background-color: rgba(30, 30, 30, 0.7);
  /* Dark mode fallback */
}