/* Follow the active Porto palette and retain its native shop layout. */
.elementor-143 .elementor-element.elementor-element-34b494f {
  background-color: var(--porto-placeholder-color, #f4f4f4) !important;
  border: 0 !important;
}
.elementor-143 .elementor-element.elementor-element-34b494f > .elementor-background-overlay {
  opacity: 0 !important;
}
.elementor-143 .elementor-element-f2e29cd .elementor-heading-title,
.elementor-143 .elementor-element-731597a .elementor-heading-title {
  -webkit-text-stroke: 0 !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .4) !important;
}
.elementor-143 .porto-ibanner .btn {
  background-color: var(--porto-dark-color, #222529) !important;
  border-color: var(--porto-dark-color, #222529) !important;
  color: var(--porto-dark-color-inverse, #fff) !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.elementor-143 .porto-ibanner .btn:hover,
.elementor-143 .porto-ibanner .btn:focus-visible {
  background-color: var(--porto-primary-color, #65829d) !important;
  border-color: var(--porto-primary-color, #65829d) !important;
  color: var(--porto-primary-color-inverse, #fff) !important;
}
.elementor-143 .elementor-element.elementor-element-437546 {
  background-color: var(--porto-dark-color, #222529) !important;
}
.elementor-143 .elementor-element-b41e3f3 {
  --divider-color: var(--porto-primary-light-10, #859cb1);
}
/* Keep content visible during script startup; replace zoom entrances with a fade. */
.elementor-143 [data-settings*="animation"] {
  animation: none !important;
  visibility: visible !important;
}
.elementor-143 .elementor-element.animated {
  animation: c63-soft-reveal .3s ease-out both !important;
}
@keyframes c63-soft-reveal {
  from { opacity: .65; }
  to { opacity: 1; }
}
ul.products li.product .product-image .inner > img {
  transition: opacity .2s ease !important;
  filter: none;
}
ul.products li.product .product-image .inner {
  background-color: var(--porto-placeholder-color, #f4f4f4);
}
/* Keep Porto's four-banner composition without JS masonry movement. */
@media (min-width: 768px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    display: grid !important;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 20px;
    padding: 0 10px;
    aspect-ratio: 2.34;
    height: auto !important;
  }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
  }
  .elementor-143 .elementor-element-c100ba6 .grid-col-sizer { display: none !important; }
  .elementor-143 .elementor-element-ca616c8 { grid-column: 1; grid-row: 1 / span 2; }
  .elementor-143 .elementor-element-1351b23 { grid-column: 2; grid-row: 1; }
  .elementor-143 .elementor-element-6ab25d6 { grid-column: 3; grid-row: 1 / span 2; }
  .elementor-143 .elementor-element-f8b5f90 { grid-column: 2; grid-row: 2; }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item > .elementor-element-populated,
  .elementor-143 .elementor-element-34b494f,
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner {
    height: 100% !important;
    min-height: 0 !important;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 240px 240px;
    aspect-ratio: auto;
  }
  .elementor-143 .elementor-element-ca616c8 { grid-column: 1 / span 2; grid-row: 1; aspect-ratio: 1.414; }
  .elementor-143 .elementor-element-1351b23 { grid-column: 1; grid-row: 2; }
  .elementor-143 .elementor-element-6ab25d6 { grid-column: 2; grid-row: 2 / span 2; }
  .elementor-143 .elementor-element-f8b5f90 { grid-column: 1; grid-row: 3; }
}
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    padding: 0 10px;
  }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item {
    margin-bottom: 0;
    padding: 0 !important;
  }
  .elementor-143 .elementor-element-ca616c8 > .elementor-element-populated {
    padding-top: 0 !important;
  }
  .elementor-143 .elementor-element-34b494f .porto-ibanner,
  .elementor-143 .elementor-element-34b494f .porto-ibanner-img {
    min-height: 0 !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-143 .elementor-element.animated {
    animation: none !important;
  }
  ul.products li.product .product-image .inner > img,
  .elementor-143 .porto-ibanner .btn {
    transition-duration: .01ms !important;
  }
}

/* Archive content shares the header and footer's responsive Porto container. */
@media (min-width: 768px) {
  body.archive.woocommerce #main > .container-fluid {
    width: 100%;
    max-width: none;
    padding-inline: 20px;
    margin-inline: auto;
  }
}
@media (min-width: 992px) {
  body.archive.woocommerce #main > .container-fluid { max-width: 960px; padding-inline: 10px; }
}
@media (min-width: 1200px) {
  body.archive.woocommerce #main > .container-fluid { max-width: 1170px; }
}

/* Balance the original Porto footer and use consistent widget spacing. */
#footer .footer-main > .container { padding-top: 36px; padding-bottom: 28px; }
#footer .footer-main > .container > .row { align-items: flex-start; }
#footer .footer-main .widget { margin: 0 0 18px !important; }
#footer .footer-main .widget:last-child { margin-bottom: 0 !important; }
#footer .widget-title { margin: 0 0 16px; line-height: 1.4; }
#footer .footer-main p { margin: 0 0 12px !important; line-height: 1.7; }
#footer .footer-main p:last-child { margin-bottom: 0 !important; }
#footer #media_image-2 img { width: 210px; max-width: 100%; height: auto; }
#footer #custom_html-3 ul { margin: 0; padding: 0; list-style: none; }
#footer #custom_html-3 li { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; line-height: 1.5; }
#footer #custom_html-3 li i { flex: 0 0 16px; width: 16px !important; padding: 0 !important; text-align: center !important; }
#footer #text-3 br { display: none; }
#footer .wpcf7 input[type=email] { width: 100%; max-width: 100%; }
#footer .wp-block-search__inside-wrapper { display: flex; align-items: stretch; width: 100%; }
#footer .wp-block-search__input { min-width: 0; width: 100%; height: 44px; }
#footer .wp-block-search__button { margin: 0; padding: 0 14px; height: 44px; }
#footer .footer-bottom { padding-top: 16px; padding-bottom: 16px; }
#footer .footer-bottom > .container { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
#footer .footer-bottom .footer-left,
#footer .footer-bottom .footer-right { float: none; padding: 0; }
#footer .footer-payment-img { display: block; max-width: 100%; height: auto; }
@media (min-width: 992px) {
  #footer .footer-main > .container > .row { display: grid; grid-template-columns: 1.05fr 1fr 1.05fr 1.4fr; gap: 24px; margin: 0; }
  #footer .footer-main > .container > .row > .col-lg-3 { width: auto; padding: 0; min-width: 0; }
}
@media (min-width: 768px) and (max-width: 991px) {
  #footer .footer-main > .container > .row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; margin: 0; }
  #footer .footer-main > .container > .row > .col-lg-3 { width: auto; padding: 0; min-width: 0; }
}
@media (max-width: 767px) {
  #footer .footer-main > .container { padding-top: 28px; padding-bottom: 24px; }
  #footer .footer-main > .container > .row { row-gap: 28px; }
  #footer .footer-main .widget { margin-bottom: 14px !important; }
  #footer .footer-bottom > .container { flex-direction: column; align-items: flex-start; gap: 12px; padding-bottom: 70px; }
}

/* Clean mobile category cards: complete photos above a short caption and CTA. */
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px; width: 100% !important; margin: 0 auto !important; padding: 0 !important;
  }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item {
    padding: 0 !important; margin: 0 !important; min-width: 0; border: 1px solid #e8e8e8; border-radius: 3px; overflow: hidden;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-grid-item > .elementor-element-populated { padding: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner { display: flex; flex-direction: column; min-height: 0 !important; height: auto !important; background: #f4f4f4 !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img {
    position: static !important; display: block; width: 100%; height: auto !important; min-height: 0 !important;
    aspect-ratio: 2000 / 1414; object-fit: contain !important; margin: 0 !important;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column { position: static; width: 100%; height: auto !important; flex: 0 0 auto; background: transparent !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer {
    position: static !important; inset: auto !important; transform: none !important; width: 100% !important;
    height: auto !important; min-height: 122px; padding: 10px !important; display: flex; flex-direction: column; flex-wrap: nowrap !important; gap: 8px; justify-content: flex-start; align-items: stretch; align-content: normal !important; text-align: left !important;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element { width: 100% !important; margin: 0 !important; padding: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .elementor-heading-title {
    font-family: var(--porto-body-ff,Poppins,sans-serif); font-size: 16px !important; font-weight: 700; line-height: 1.25 !important;
    color: var(--porto-dark-color,#222529) !important; text-align: left !important; letter-spacing: 0 !important; text-shadow: none !important; -webkit-text-stroke: 0 !important; min-height: 40px;
  }
  .elementor-143 .elementor-element-c100ba6 .btn { display: block; width: 100%; min-height: 36px; padding: 10px 5px !important; font-size: 9px !important; line-height: 16px; white-space: normal; text-align: center; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element:not(.elementor-widget-porto_button):not(.elementor-element-f2e29cd):not(.elementor-element-39e60f3):not(.elementor-element-8456c19):not(.elementor-element-196cfc7) { display: none !important; }
}

#footer .c63-footer-shop { list-style: none; padding: 0; margin: 0; }
#footer .c63-footer-shop li { margin-bottom: 8px; line-height: 1.6; }
#footer .widget_search .wp-block-search { margin: 0; }
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-widget-porto_button { margin-top: auto !important; }
}
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner {
    display: grid !important; grid-template-columns: minmax(0,1fr); grid-template-rows: auto 122px; align-content: start;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column { display: block !important; height: 122px !important; min-height: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer {
    height: 122px !important; min-height: 0 !important; max-height: 122px; box-sizing: border-box;
    justify-content: flex-start !important; align-self: stretch;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer .elementor-widget-container { padding: 0 !important; margin: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .btn { font-size: 10px !important; }
}
#footer .c63-footer-shop li { border: 0 !important; padding: 0 !important; margin: 0 0 8px !important; }

#footer .footer-main > .container,
#footer .footer-bottom > .container { padding-inline: 10px; }
#footer .footer-bottom .footer-left,
#footer .footer-bottom .footer-right { width: auto; flex: 0 1 auto; margin: 0; }
@media (max-width: 991px) {
  #footer .footer-main > .container,
  #footer .footer-bottom > .container { padding-inline: 20px; }
}
/* Porto's generated settings use !important for these footer dimensions. */
#footer .footer-main > .container { padding-top: 36px !important; padding-bottom: 28px !important; }
#footer .footer-bottom { padding-top: 16px !important; padding-bottom: 16px !important; }
#footer .footer-bottom .footer-left,
#footer .footer-bottom .footer-right { width: auto !important; padding: 0 !important; }
@media (max-width: 767px) {
  #footer .footer-main > .container { padding-top: 28px !important; padding-bottom: 24px !important; }
}
#footer #custom_html-3 li { padding: 0 !important; border: 0 !important; }
@media (max-width: 767px) {
  #footer #custom_html-3 ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 16px; }
  #footer #custom_html-3 li { margin: 0; min-width: 0; }
}

#footer .footer-bottom .footer-left,
#footer .footer-bottom .footer-right { flex: 0 0 auto !important; }
#footer .footer-bottom .footer-right { margin-left: auto !important; }
#footer .wp-block-search { margin: 0 !important; }
@media (max-width: 767px) {
  #footer .footer-bottom .footer-right { margin-left: 0 !important; }
}

/* Homepage collection cards: C63 red accents and an editorial caption hierarchy. */
.elementor-143 .elementor-element-c100ba6 .porto-grid-item {
  --c63-card-label: "THE COLLECTION";
  border-radius: 6px !important;
  overflow: hidden;
}
.elementor-143 .elementor-element-ca616c8 { --c63-card-label: "MAKE IT YOURS" !important; }
.elementor-143 .elementor-element-1351b23 { --c63-card-label: "HER EVERYDAY STYLE" !important; }
.elementor-143 .elementor-element-6ab25d6 { --c63-card-label: "WEAR YOUR PERSONALITY" !important; }
.elementor-143 .elementor-element-f8b5f90 { --c63-card-label: "FIND YOUR NEXT FAVOURITE" !important; }
.elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer::before {
  content: var(--c63-card-label);
  display: block; color: #fff; font: 600 10px/1.4 var(--porto-body-ff,Poppins,sans-serif);
  letter-spacing: 1.2px; border-left: 3px solid #e60028; padding-left: 8px;
}
.elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element:not(.elementor-widget-porto_button):not(.elementor-element-f2e29cd):not(.elementor-element-39e60f3):not(.elementor-element-8456c19):not(.elementor-element-196cfc7) { display: none !important; }
.elementor-143 .elementor-element-c100ba6 .btn {
  background: #e60028 !important; border-color: #e60028 !important; color: #fff !important;
  border-radius: 2px; box-shadow: none !important;
}
.elementor-143 .elementor-element-c100ba6 .btn::after { content: " \2192"; margin-left: 8px; }
.elementor-143 .elementor-element-c100ba6 .btn:hover,
.elementor-143 .elementor-element-c100ba6 .btn:focus-visible { background: #bd0021 !important; border-color: #bd0021 !important; }
.elementor-143 .elementor-element-c100ba6 .btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (min-width: 768px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner { position: relative; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(180deg,transparent 38%,rgba(16,18,21,.2) 55%,rgba(16,18,21,.88) 100%);
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column {
    position: absolute !important; inset: auto 0 0 !important; width: 100% !important; height: auto !important; z-index: 2;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer {
    position: static !important; transform: none !important; width: 100% !important; height: auto !important;
    padding: 22px !important; display: flex !important; flex-direction: column; flex-wrap: nowrap !important;
    align-items: flex-start !important; justify-content: flex-end !important; gap: 10px; text-align: left !important;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element { width: auto !important; margin: 0 !important; padding: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .elementor-heading-title {
    color: #fff !important; font-family: var(--porto-body-ff,Poppins,sans-serif) !important;
    font-size: 24px !important; font-weight: 700 !important; line-height: 1.15 !important;
    text-align: left !important; text-shadow: none !important; -webkit-text-stroke: 0 !important;
  }
  .elementor-143 .elementor-element-ca616c8 .elementor-heading-title { font-size: clamp(28px,3vw,42px) !important; }
  .elementor-143 .elementor-element-c100ba6 .btn { padding: 11px 16px !important; font-size: 11px !important; }
}
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item { border: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner { background: #222529 !important; grid-template-rows: auto 154px !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column { height: 154px !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer {
    height: 154px !important; max-height: 154px !important; padding: 12px !important;
    border-top: 3px solid #e60028; gap: 8px;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer::before { font-size: 8px; letter-spacing: .7px; border: 0; padding: 0; min-height: 22px; }
  .elementor-143 .elementor-element-c100ba6 .elementor-heading-title { color: #fff !important; font-size: 17px !important; }
  .elementor-143 .elementor-element-c100ba6 .btn { padding: 9px 4px !important; font-size: 9px !important; }
}

@media (min-width: 768px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer { min-height: 0 !important; align-content: normal !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element,
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer::before { flex: 0 0 auto !important; align-self: flex-start !important; }
}

/* Owner-supplied film leads the collections; it downloads only on Play. */
.elementor-143 .elementor-element-c100ba6 > .elementor-container {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  grid-template-rows: auto 280px !important; aspect-ratio: auto !important;
}
.elementor-143 .elementor-element-ca616c8 { grid-column: 1 / -1 !important; grid-row: 1 !important; aspect-ratio: auto !important; }
.elementor-143 .elementor-element-1351b23 { grid-column: 1 !important; grid-row: 2 !important; }
.elementor-143 .elementor-element-6ab25d6 { grid-column: 2 !important; grid-row: 2 !important; }
.elementor-143 .elementor-element-f8b5f90 { grid-column: 3 !important; grid-row: 2 !important; }
.c63-home-film { background: #222529; width: 100%; overflow: hidden; border-radius: 6px; }
.c63-home-film video { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: contain; background: #111; }
.c63-film-caption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; color: #fff; }
.c63-film-caption > div > span { display: block; font-size: 10px; letter-spacing: 1.3px; color: #fff; border-left: 3px solid #e60028; padding-left: 8px; }
.c63-film-caption h2 { font: 700 25px/1.25 var(--porto-body-ff,Poppins,sans-serif); color: #fff; margin: 8px 0 0; }
.c63-film-caption .btn { background: #e60028; color: #fff; border: 1px solid #e60028; font-size: 11px; padding: 13px 18px; white-space: normal; }
.c63-film-caption .btn:hover { background: #bd0021; }
.c63-film-caption .btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container { grid-template-columns: minmax(0,1fr) !important; grid-template-rows: auto !important; }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item { grid-column: 1 !important; grid-row: auto !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner { grid-template-columns: 42% minmax(0,1fr) !important; grid-template-rows: 154px !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img { height: 154px !important; aspect-ratio: auto; object-fit: cover !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer { border-top: 0; border-left: 3px solid #e60028; }
  .c63-film-caption { flex-direction: column; align-items: stretch; padding: 16px; gap: 14px; }
  .c63-film-caption h2 { font-size: 22px; }
  .c63-film-caption .btn { text-align: center; }
}

/* Keep the film within the original compact homepage feature area. */
@media (min-width: 992px) {
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    grid-template-columns: minmax(0,1.7fr) minmax(0,1fr) !important;
    grid-template-rows: repeat(3,148px) !important; gap: 16px !important;
  }
  .elementor-143 .elementor-element-ca616c8 { grid-column: 1 !important; grid-row: 1 / span 3 !important; }
  .elementor-143 .elementor-element-1351b23 { grid-column: 2 !important; grid-row: 1 !important; }
  .elementor-143 .elementor-element-6ab25d6 { grid-column: 2 !important; grid-row: 2 !important; }
  .elementor-143 .elementor-element-f8b5f90 { grid-column: 2 !important; grid-row: 3 !important; }
  .c63-home-film { height: 100%; display: flex; flex-direction: column; }
  .c63-home-film video { min-height: 0; flex: 1 1 auto; height: 0; }
  .c63-film-caption { flex: 0 0 auto; padding: 16px 20px; gap: 12px; }
  .c63-film-caption h2 { font-size: 21px; }
  .c63-film-caption .btn { font-size: 10px; padding: 12px; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer { padding: 14px 18px !important; gap: 7px; }
  .elementor-143 .elementor-element-c100ba6 .elementor-heading-title { font-size: 20px !important; }
  .elementor-143 .elementor-element-c100ba6 .btn { padding: 8px 12px !important; font-size: 10px !important; }
}
@media (max-width: 767px) {
  .c63-film-caption { padding: 12px; gap: 10px; }
  .c63-film-caption h2 { font-size: 18px; margin-top: 5px; }
  .c63-film-caption > div > span { font-size: 8px; }
  .c63-film-caption .btn { font-size: 10px; padding: 10px; }
}

.c63-home-film video { object-fit: cover !important; }

/* Full collection photographs alongside captions, instead of shallow cropped banners. */
@media (min-width: 768px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner {
    display: grid !important; grid-template-columns: 45% minmax(0,1fr); grid-template-rows: minmax(0,1fr); background: #222529;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner::after { display: none; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img { object-fit: contain !important; background: #f4f4f4; height: 100% !important; min-height: 0; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column { position: static !important; height: 100% !important; min-width: 0; border-left: 3px solid #e60028; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer { height: 100% !important; padding: 12px !important; justify-content: center !important; gap: 8px; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer > .elementor-element { max-width: 100%; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-layer::before { font-size: 8px; letter-spacing: .6px; padding: 0; border: 0; }
  .elementor-143 .elementor-element-c100ba6 .elementor-heading-title { font-size: 19px !important; letter-spacing: 0 !important; }
  .elementor-143 .elementor-element-c100ba6 .btn { font-size: 9px !important; white-space: normal; }
}
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img { object-fit: contain !important; background: #f4f4f4; }
}
/* Preserve full model/print photos in the homepage arrival cards. */
.elementor-143 .elementor-element-9b4a579 ul.products .product-image .inner > img { object-fit: contain !important; }
/* Keep model faces in frame in Just Arrived and make the desktop hover zoom clear. */
.elementor-143 .elementor-element-9b4a579 ul.products .product-image .inner > img {
  object-position: center !important;
  transform-origin: center;
  box-sizing: border-box;
  padding: 7px !important;
  transition: transform .4s ease !important;
  opacity: 1 !important;
}
@media (prefers-reduced-motion: reduce) {
  .elementor-143 .elementor-element-9b4a579 ul.products .product-image .inner > img { transition: none !important; transform: none !important; }
}
.elementor-143 .elementor-element-9b4a579 ul.products .product-image .inner > img.hover-image { display: none !important; }
@media (hover: hover) and (pointer: fine) {
  .elementor-143 .elementor-element-9b4a579 ul.products .product-image:hover .inner > img {
    transform: scale(1.035) !important;
  }
}

@media (min-width: 992px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner { grid-template-columns: 209px minmax(0,1fr) !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img { object-fit: cover !important; }
}
@media (max-width: 767px) {
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img { object-fit: cover !important; object-position: center; }
}

.elementor-143 .elementor-element-c100ba6 .porto-ibanner,
.elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column { background: #222529 !important; }

/* Featured gift and business-branding cards follow the shop's portrait image system. */
.c63-home-featured-gifts { width: 100%; margin: 38px 0 48px; }
.c63-home-featured-gifts-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 0 0 20px; }
.c63-home-featured-gifts-heading p { margin: 0 0 6px; color: #b71922; font-size: 11px; font-weight: 700; letter-spacing: .12em; }
.c63-home-featured-gifts-heading h2 { margin: 0; color: #222529; font-size: clamp(25px, 3vw, 34px); line-height: 1.15; }
.c63-home-featured-gifts-heading > a { color: #222529; font-weight: 600; white-space: nowrap; }
.c63-home-featured-gifts ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 20px; margin: 0; padding: 0; }
.c63-home-featured-gifts ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
.c63-home-featured-gifts ul.products li.product .product-inner { display: flex; height: 100%; flex-direction: column; overflow: hidden; border: 1px solid #e7e5e2; border-radius: 6px; background: #fff; box-shadow: 0 3px 14px rgba(34, 37, 41, .06); }
.c63-home-featured-gifts ul.products li.product .product-image { margin: 0; }
.c63-home-featured-gifts ul.products li.product .product-image .inner { aspect-ratio: 2 / 3 !important; background: #f1f0ed; }
.c63-home-featured-gifts ul.products li.product .product-image .inner > img { object-fit: cover !important; object-position: center; padding: 0; }
.c63-home-featured-gifts ul.products li.product .product-image .inner > img.hover-image { display: none !important; }
.c63-home-featured-gifts ul.products li.product .product-content { display: flex; flex: 1; flex-direction: column; align-items: stretch; padding: 15px 16px 16px; text-align: left; }
.c63-home-product-kicker { display: block; min-height: 1.2em; margin: 0 0 6px; color: #b71922; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.c63-home-featured-gifts ul.products li.product .product-loop-title { display: block; }
.c63-home-featured-gifts ul.products li.product .woocommerce-loop-product__title { display: -webkit-box; min-height: 2.7em; margin: 0 0 8px; overflow: hidden; color: #222529; font-size: 16px; font-weight: 600; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.c63-home-featured-gifts ul.products li.product .price { display: flex; min-height: 43px; flex-direction: column; align-items: flex-start; margin: 0 0 16px; color: #222529; font-size: 15px; font-weight: 700; line-height: 1.35; }
.c63-home-featured-gifts ul.products li.product .price .c63-gift-price-label { display: block; min-height: 1.35em; margin: 0 0 2px; color: #676b70; font-size: 11px; font-weight: 400; line-height: 1.35; }
.c63-home-featured-gifts ul.products li.product .price .amount { white-space: nowrap; }
.c63-home-featured-gifts ul.products li.product .add-links-wrap { margin-top: auto; }
.c63-home-featured-gifts ul.products li.product .add-links .button { display: block; width: 100%; border: 1px solid #222529; border-radius: 3px; background: #222529; color: #fff; text-align: center; transition: background-color .2s ease, border-color .2s ease; }
/* The theme reserves an invisible arrow beside Select options, shifting its label. */
ul.products li.product a.button.product_type_variable{display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;text-align:center!important;width:auto!important;padding:0 18px!important;min-height:40px;line-height:1.3!important;white-space:nowrap;}
@media(max-width:600px){ul.products li.product a.button.product_type_variable{padding:0 12px!important;font-size:11px!important;text-indent:0!important;max-width:100%!important;}}
ul.products li.product a.button.product_type_variable::before{content:none!important;display:none!important;margin:0!important;}
.c63-home-featured-gifts ul.products li.product .add-links .button:hover,
.c63-home-featured-gifts ul.products li.product .add-links .button:focus-visible { border-color: #b71922; background: #b71922; color: #fff; }
@media (min-width: 768px) and (max-width: 1199px) {
  .c63-home-featured-gifts ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .c63-home-featured-gifts { margin: 28px auto 34px; }
  .c63-home-featured-gifts-heading { align-items: center; gap: 12px; margin-bottom: 14px; }
  .c63-home-featured-gifts-heading p { font-size: 9px; }
  .c63-home-featured-gifts-heading h2 { font-size: 23px; }
  .c63-home-featured-gifts-heading > a { font-size: 12px; }
  .c63-home-featured-gifts ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
  .c63-home-featured-gifts ul.products li.product .product-content { padding: 11px 11px 12px; }
  .c63-home-product-kicker { font-size: 8px; }
  .c63-home-featured-gifts ul.products li.product .woocommerce-loop-product__title { font-size: 14px; }
}

/* Collection captions use one predictable layout, independent of old Elementor offsets. */
.c63-collection-card { display: grid; grid-template-columns: 209px minmax(0,1fr); height: 100%; overflow: hidden; background: #222529; color: #fff; border-radius: 6px; text-decoration: none !important; }
.c63-collection-card > img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.c63-collection-copy { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 8px; padding: 12px; min-width: 0; border-left: 3px solid #e60028; }
.c63-collection-copy small { font: 600 8px/1.4 Poppins,sans-serif; text-transform: uppercase; letter-spacing: .6px; color: #fff; }
.c63-collection-copy h3 { font: 700 19px/1.2 Poppins,sans-serif; color: #fff; margin: 0; letter-spacing: 0; }
.c63-card-cta { display: inline-block; background: #e60028; color: #fff; font: 600 9px/1.4 Poppins,sans-serif; padding: 9px 12px; text-transform: uppercase; border-radius: 2px; }
.c63-card-cta > span { margin-left: 6px; }
.c63-collection-card:hover .c63-card-cta { background: #bd0021; }
.c63-collection-card:focus-visible { outline: 3px solid #e60028; outline-offset: 3px; }
@media (min-width: 768px) and (max-width: 991px) {
  .c63-collection-card { grid-template-columns: minmax(0,1fr); grid-template-rows: 150px minmax(0,1fr); }
  .c63-collection-copy { border-left: 0; border-top: 3px solid #e60028; }
  .c63-collection-copy h3 { font-size: 16px; }
}
@media (max-width: 767px) {
  .c63-collection-card { grid-template-columns: 42% minmax(0,1fr); height: 154px; }
  .c63-collection-copy h3 { font-size: 17px; }
}

.elementor-143 .elementor-element-c100ba6 .c63-collection-card { width: 100%; flex: 1 1 100%; align-self: stretch; }

/* Consistent complete-photo hover treatment throughout product listings. */
body ul.products li.product .product-image .inner.inner > img {
 object-fit:contain!important;object-position:center!important;box-sizing:border-box;
 padding:7px!important;opacity:1!important;visibility:visible!important;
 transform:none!important;transform-origin:center;transition:transform .4s ease!important;
}
body ul.products li.product .product-image .inner.inner > img.hover-image{display:none!important}
@media(hover:hover) and (pointer:fine){
 body ul.products li.product .product-image:hover .inner.inner > img:not(.hover-image){transform:scale(1.035)!important}
}
@media(prefers-reduced-motion:reduce){
 body ul.products li.product .product-image .inner.inner > img,
 body ul.products li.product .product-image:hover .inner.inner > img:not(.hover-image){transition:none!important;transform:none!important}
}

/* Smaller gift cards show more of the curated collection at once. */
.home .c63-home-featured-gifts .c63-home-products-scroll:not(.owl-carousel)>li.product-col{
 flex:0 0 calc((100% - 64px)/5)!important;width:calc((100% - 64px)/5)!important;min-width:180px;max-width:250px;
}
.c63-home-featured-gifts ul.products li.product .product-image .inner{aspect-ratio:1/1!important}
.c63-home-featured-gifts ul.products li.product .woocommerce-loop-product__title{font-size:14px}
.c63-home-featured-gifts ul.products li.product .product-content{padding:10px!important}
.c63-home-featured-gifts ul.products li.product .price{margin-bottom:10px;min-height:35px}
.c63-home-featured-gifts ul.products li.product .add-links .button{font-size:11px;padding:8px 6px}
.c63-home-film .c63-film-stage video{object-fit:contain!important}
.elementor-143 .elementor-element-c100ba6 .porto-ibanner-img{object-fit:contain!important}
@media(max-width:767px){.home .c63-home-featured-gifts .c63-home-products-scroll:not(.owl-carousel)>li.product-col{flex-basis:58vw!important;width:58vw!important;min-width:180px;max-width:230px}}

.c63-home-featured-gifts ul.products li.product .product-image .inner{background:#fff!important}

/* Edge-to-edge product frames with a useful closer view of the artwork. */
body ul.products li.product .product-image .inner.inner > img:not(.hover-image){
 object-fit:cover!important;object-position:center!important;padding:0!important;
}
@media(hover:hover) and (pointer:fine){
 body ul.products li.product .product-image:hover .inner.inner > img:not(.hover-image){transform:scale(1.22)!important}
}
@media(prefers-reduced-motion:reduce){
 body ul.products li.product .product-image:hover .inner.inner > img:not(.hover-image){transform:none!important}
}

.c63-tee-collection-kids{margin-top:38px}

/* Gift silhouettes retain their complete outline inside compact square cards. */
body.home .c63-home-featured-gifts ul.products li.product .product-image .inner.inner > img:not(.hover-image){
 width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:10px!important;box-sizing:border-box;transform:none!important;
}
body.home .c63-home-featured-gifts ul.products li.product .product-image:hover .inner.inner > img:not(.hover-image){transform:none!important}
