.elementor-78 .elementor-element.elementor-element-4891d91 > .elementor-container{max-width:1400px;}.elementor-78 .elementor-element.elementor-element-4891d91:not(.elementor-motion-effects-element-type-background), .elementor-78 .elementor-element.elementor-element-4891d91 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-78 .elementor-element.elementor-element-4891d91{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:120px 40px 40px 40px;}.elementor-78 .elementor-element.elementor-element-4891d91 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-78 .elementor-element.elementor-element-e107908.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-78 .elementor-element.elementor-element-e107908.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-78 .elementor-element.elementor-element-1cb102f{text-align:start;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-78 .elementor-element.elementor-element-0b1bc01{text-align:start;}.elementor-78 .elementor-element.elementor-element-0b1bc01 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:52px;font-weight:800;text-transform:uppercase;line-height:1.1em;letter-spacing:2px;color:#ffffff;}.elementor-78 .elementor-element.elementor-element-4491445{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-78 .elementor-element.elementor-element-e107908{width:100%;}}@media(max-width:1024px){.elementor-78 .elementor-element.elementor-element-4891d91{padding:30px 30px 30px 30px;}.elementor-78 .elementor-element.elementor-element-0b1bc01 .elementor-heading-title{font-size:40px;}}@media(max-width:767px){.elementor-78 .elementor-element.elementor-element-4891d91{padding:30px 20px 24px 20px;}.elementor-78 .elementor-element.elementor-element-1cb102f{text-align:center;}.elementor-78 .elementor-element.elementor-element-0b1bc01{text-align:center;}.elementor-78 .elementor-element.elementor-element-0b1bc01 .elementor-heading-title{font-size:32px;}}/* Start custom CSS for shortcode, class: .elementor-element-2d5665e *//* ════════════════════════════════════════
   GLOBAL FONT
════════════════════════════════════════ */
#sunshine,
#sunshine * {
  font-family: 'Barlow Condensed', sans-serif !important;
}

/* ════════════════════════════════════════
   ACCOUNT PAGE
════════════════════════════════════════ */
#sunshine--account {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: unset !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 20px !important;
}

#sunshine--account--menu {
  margin-bottom: 0 !important;
  width: 100% !important;
}

#sunshine--account--content {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  flex: none !important;
  width: 100% !important;
  align-self: stretch !important;
}

/* ════════════════════════════════════════
   GALLERY LISTING PAGE (home)
════════════════════════════════════════ */

#sunshine--gallery-items .sunshine--gallery-item a {
  display: block !important;
  height: 250px !important;
  overflow: hidden !important;
}

#sunshine--gallery-items .sunshine--gallery-item a img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* ════════════════════════════════════════
   GALLERY DETAIL PAGE
════════════════════════════════════════ */

.sunshine--gallery-store.sunshine--action-menu--item-10 a {
  display: inline-block !important;
  background-color: #DD3333 !important;
  border: 5px solid #bb2222 !important;
  color: #fff !important;
  padding: 8px 20px !important;
  font-size: 17px !important;
  text-decoration: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
}

.sunshine--gallery-store.sunshine--action-menu--item-10 a:hover {
  background-color: #bb2222 !important;
}

#sunshine--image-items .sunshine--image-item a {
  display: block !important;
  height: 220px !important;
  overflow: hidden !important;
}

#sunshine--image-items .sunshine--image-item a img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* ════════════════════════════════════════
   CART PAGE
════════════════════════════════════════ */

#sunshine--cart--items thead tr {
  background-color: #DD3333 !important;
}

#sunshine--cart--items thead th {
  color: #fff !important;
  padding: 12px 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 14px !important;
  border: none !important;
}

#sunshine--cart--items tbody tr {
  border-bottom: 1px solid #e0e0e0 !important;
}

#sunshine--cart--items tbody td {
  padding: 16px !important;
  color: #111 !important;
  vertical-align: middle !important;
}

.sunshine--cart-item--image img {
  width: 80px !important;
  height: 60px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  border: 2px solid #DD3333 !important;
}

.sunshine--product--category {
  font-weight: 700 !important;
  color: #111 !important;
}

.sunshine--cart-item--image-name a,
.sunshine--cart-item--name a {
  color: #DD3333 !important;
  text-decoration: none !important;
}

.sunshine--cart-item--image-name a:hover,
.sunshine--cart-item--name a:hover {
  text-decoration: underline !important;
}

.sunshine--cart-item--price .sunshine-price,
.sunshine--cart-item--total .sunshine-price {
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}

.sunshine--cart-item--qty input.sunshine--qty {
  width: 52px !important;
  padding: 6px 8px !important;
  border: 2px solid #DD3333 !important;
  border-radius: 4px !important;
  text-align: center !important;
  font-size: 15px !important;
  color: #111 !important;
}

.sunshine--cart-item--delete {
  color: #DD3333 !important;
  font-size: 18px !important;
  margin-left: 8px !important;
}

#sunshine--cart--update-button input[type="submit"] {
  background-color: #fff !important;
  color: #DD3333 !important;
  border: 2px solid #DD3333 !important;
  padding: 10px 24px !important;
  font-size: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border-radius: 4px !important;
  cursor: pointer !important;
}

#sunshine--cart--update-button input[type="submit"]:hover:not(:disabled) {
  background-color: #DD3333 !important;
  color: #fff !important;
}

#sunshine--cart--gallery-return a {
  color: #DD3333 !important;
  text-decoration: none !important;
  font-size: 15px !important;
}

#sunshine--cart--gallery-return a:hover {
  text-decoration: underline !important;
}

#sunshine--cart--totals {
  margin-top: 20px !important;
}

#sunshine--cart--totals--items {
  width: 100% !important;
  max-width: 400px !important;
  margin-left: auto !important;
}

#sunshine--cart--totals--items th,
#sunshine--cart--totals--items td {
  padding: 10px 16px !important;
  font-size: 16px !important;
  color: #111 !important;
}

#sunshine--cart--totals--items tr.sunshine--cart--subtotal {
  border-bottom: 1px solid #e0e0e0 !important;
}

#sunshine--cart--totals--items tr.sunshine--cart--total th,
#sunshine--cart--totals--items tr.sunshine--cart--total td {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #111 !important;
}

#sunshine--cart--checkout-button a.sunshine--button {
  display: block !important;
  background-color: #111 !important;
  color: #fff !important;
  padding: 14px 28px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 15px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  border: 2px solid #111 !important;
}

#sunshine--cart--checkout-button a.sunshine--button:hover {
  background-color: #DD3333 !important;
  border-color: #DD3333 !important;
}

/* ════════════════════════════════════════
   CHECKOUT PAGE
════════════════════════════════════════ */

#sunshine--checkout {
  display: flex !important;
  gap: 40px !important;
  align-items: flex-start !important;
  padding: 30px 0 !important;
}

#sunshine--checkout--main {
  flex: 1 !important;
}

#sunshine--checkout--summary {
  width: 380px !important;
  flex-shrink: 0 !important;
  background: #111 !important;
  border-radius: 8px !important;
  padding: 24px !important;
  color: #fff !important;
}

.sunshine--page--checkout fieldset {
  border: none !important;
  border-left: 4px solid #DD3333 !important;
  padding: 20px 24px !important;
  margin-bottom: 16px !important;
  background: #fff !important;
  border-radius: 0 8px 8px 0 !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
}

.sunshine--page--checkout fieldset legend {
  font-size: 20px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #111 !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.sunshine--checkout--section-edit {
  font-size: 12px !important;
  background: transparent !important;
  border: 1.5px solid #DD3333 !important;
  color: #DD3333 !important;
  border-radius: 4px !important;
  padding: 3px 10px !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.sunshine--checkout--section-edit:hover {
  background: #DD3333 !important;
  color: #fff !important;
}

.sunshine--form--fields {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}

.sunshine--form--field {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

.sunshine--form--field.sunshine--form--field-half {
  flex: 1 1 calc(50% - 7px) !important;
  min-width: 140px !important;
}

.sunshine--form--field.sunshine--form--field-full {
  flex: 1 1 100% !important;
}

.sunshine--form--field label {
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #555 !important;
}

.sunshine--form--field abbr {
  color: #DD3333 !important;
  margin-left: 2px !important;
  text-decoration: none !important;
}

.sunshine--form--field input[type="text"],
.sunshine--form--field input[type="email"],
.sunshine--form--field input[type="tel"] {
  padding: 10px 14px !important;
  border: 1.5px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 15px !important;
  color: #111 !important;
  outline: none !important;
}

.sunshine--form--field input:focus {
  border-color: #DD3333 !important;
}

.sunshine--checkout--section-button .sunshine--button {
  display: inline-block !important;
  margin-top: 20px !important;
  background: #DD3333 !important;
  color: #fff !important;
  border: none !important;
  padding: 13px 36px !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
}

.sunshine--checkout--section-button .sunshine--button:hover {
  background: #bb2222 !important;
}

#sunshine--checkout--order-review--toggle {
  display: none !important;
  width: 100% !important;
  background: #DD3333 !important;
  color: #fff !important;
  border: none !important;
  padding: 14px 20px !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  cursor: pointer !important;
  border-radius: 6px !important;
}

#sunshine--checkout--order-review h2 {
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #fff !important;
  margin-bottom: 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
}

#sunshine--checkout--cart-items {
  width: 100% !important;
  margin-bottom: 16px !important;
}

#sunshine--checkout--cart-items td {
  padding: 10px 4px !important;
  border-bottom: 1px solid rgba(255,255,255,0.1) !important;
  color: #fff !important;
  font-size: 14px !important;
  vertical-align: middle !important;
}

.sunshine--checkout--cart-item--image {
  position: relative !important;
  width: 56px !important;
}

.sunshine--checkout--cart-item--image img {
  width: 56px !important;
  height: 42px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  display: block !important;
}

.sunshine--checkout--cart-item--image .sunshine--count {
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  background: #DD3333 !important;
  color: #fff !important;
  font-size: 11px !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.sunshine--checkout--cart-item--name .sunshine--product--category {
  color: rgba(255,255,255,0.6) !important;
  font-size: 12px !important;
}

.sunshine--checkout--cart-item--name .sunshine--product--name {
  color: #fff !important;
  font-weight: 600 !important;
}

/* ════════════════════════════════════════
   ALL PRICES IN DARK SUMMARY PANEL
════════════════════════════════════════ */
#sunshine--checkout--cart-items .sunshine-price,
#sunshine--checkout--cart-items .sunshine-currency-symbol,
#sunshine--checkout--cart-items .sunshine-amount,
#sunshine--checkout--order-review--amounts .sunshine-price,
#sunshine--checkout--order-review--amounts .sunshine-currency-symbol,
#sunshine--checkout--order-review--amounts .sunshine-amount,
#sunshine--checkout--order-review--total .sunshine-price,
#sunshine--checkout--order-review--total .sunshine-currency-symbol,
#sunshine--checkout--order-review--total .sunshine-amount {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}

#sunshine--checkout--order-review--amounts th,
#sunshine--checkout--order-review--amounts td {
  padding: 10px 4px !important;
  color: rgba(255,255,255,0.75) !important;
  font-size: 15px !important;
}

#sunshine--checkout--order-review--amounts td {
  text-align: right !important;
}

#sunshine--checkout--order-review--total th,
#sunshine--checkout--order-review--total td {
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  border-top: 1px solid rgba(255,255,255,0.2) !important;
  padding-top: 14px !important;
}

#sunshine--checkout--order-review--amounts {
  width: 100% !important;
  border-top: 1px solid rgba(255,255,255,0.15) !important;
  margin-top: 8px !important;
}

/* ════════════════════════════════════════
   DISCOUNT FORM — FIXED
════════════════════════════════════════ */
#sunshine--checkout--discount-form {
  display: flex !important;
  gap: 8px !important;
  margin: 16px 0 !important;
}

#sunshine--checkout--discounts input[type="text"],
#sunshine--checkout--discount-form input[type="text"] {
  flex: 1 !important;
  padding: 9px 12px !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 6px !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  font-size: 14px !important;
  font-family: 'Barlow Condensed', sans-serif !important;
}

#sunshine--checkout--discounts input[type="text"]::-webkit-input-placeholder,
#sunshine--checkout--discount-form input[type="text"]::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
  opacity: 1 !important;
}

#sunshine--checkout--discounts input[type="text"]::-moz-placeholder,
#sunshine--checkout--discount-form input[type="text"]::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
  opacity: 1 !important;
}

#sunshine--checkout--discounts input[type="text"]:-ms-input-placeholder,
#sunshine--checkout--discount-form input[type="text"]:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
  opacity: 1 !important;
}

#sunshine--checkout--discounts input[type="text"]::placeholder,
#sunshine--checkout--discount-form input[type="text"]::placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
  opacity: 1 !important;
}

#sunshine--checkout--discount-form button {
  background: transparent !important;
  border: 1.5px solid #DD3333 !important;
  color: #DD3333 !important;
  padding: 9px 16px !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

#sunshine--checkout--discount-form button:hover {
  background: #DD3333 !important;
  color: #fff !important;
}


/* ════════════════════════════════════════
   RESPONSIVE — TABLET (max-width: 768px)
════════════════════════════════════════ */

@media (max-width: 768px) {

  /* Account page padding */
  #sunshine--account {
    padding: 16px !important;
  }

  /* Gallery listing: 2-column grid */
  #sunshine--gallery-items .sunshine--gallery-item a {
    height: 200px !important;
  }

  /* Gallery detail: shorter image thumbnails */
  #sunshine--image-items .sunshine--image-item a {
    height: 180px !important;
  }

  /* Cart: allow horizontal scroll on narrow screens */
  #sunshine--cart--items {
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Cart totals: full width on tablet */
  #sunshine--cart--totals--items {
    max-width: 100% !important;
    margin-left: 0 !important;
  }

  /* Checkout: stack main + summary vertically */
  #sunshine--checkout {
    flex-direction: column !important;
    gap: 24px !important;
    padding: 20px 0 !important;
  }

  /* Summary panel: full width */
  #sunshine--checkout--summary {
    width: 100% !important;
  }

  /* Show the order review toggle button */
  #sunshine--checkout--order-review--toggle {
    display: block !important;
  }

  /* Half-width form fields collapse to full width */
  .sunshine--form--field.sunshine--form--field-half {
    flex: 1 1 100% !important;
  }

  /* Fieldset padding tightened */
  .sunshine--page--checkout fieldset {
    padding: 16px 18px !important;
  }

  /* Discount form: stack input + button */
  #sunshine--checkout--discount-form {
    flex-direction: column !important;
    gap: 8px !important;
  }

  #sunshine--checkout--discount-form button {
    width: 100% !important;
  }
}


/* ════════════════════════════════════════
   RESPONSIVE — MOBILE (max-width: 480px)
════════════════════════════════════════ */

@media (max-width: 480px) {

  /* Account page */
  #sunshine--account {
    padding: 12px !important;
  }

  /* Gallery listing: single column */
  #sunshine--gallery-items .sunshine--gallery-item a {
    height: 180px !important;
  }

  /* Gallery detail: shorter thumbnails */
  #sunshine--image-items .sunshine--image-item a {
    height: 150px !important;
  }

  /* Cart table: smaller cells */
  #sunshine--cart--items thead th {
    padding: 10px 10px !important;
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
  }

  #sunshine--cart--items tbody td {
    padding: 10px !important;
    font-size: 14px !important;
  }

  /* Cart thumbnail smaller on mobile */
  .sunshine--cart-item--image img {
    width: 60px !important;
    height: 45px !important;
  }

  /* Cart qty input: bigger tap target */
  .sunshine--cart-item--qty input.sunshine--qty {
    width: 44px !important;
    font-size: 16px !important; /* prevent iOS zoom */
  }

  /* Cart totals: full width */
  #sunshine--cart--totals--items {
    max-width: 100% !important;
    margin-left: 0 !important;
  }

  #sunshine--cart--totals--items th,
  #sunshine--cart--totals--items td {
    padding: 8px 10px !important;
    font-size: 14px !important;
  }

  #sunshine--cart--totals--items tr.sunshine--cart--total th,
  #sunshine--cart--totals--items tr.sunshine--cart--total td {
    font-size: 17px !important;
  }

  /* Cart update button full width */
  #sunshine--cart--update-button input[type="submit"] {
    width: 100% !important;
    padding: 12px !important;
  }

  /* Checkout button full width */
  #sunshine--cart--checkout-button a.sunshine--button {
    padding: 14px 20px !important;
    font-size: 14px !important;
    letter-spacing: 1px !important;
  }

  /* Checkout layout */
  #sunshine--checkout {
    gap: 16px !important;
    padding: 14px 0 !important;
  }

  /* Checkout fieldset */
  .sunshine--page--checkout fieldset {
    padding: 14px 14px !important;
  }

  .sunshine--page--checkout fieldset legend {
    font-size: 16px !important;
  }

  /* Checkout form inputs: prevent iOS zoom */
  .sunshine--form--field input[type="text"],
  .sunshine--form--field input[type="email"],
  .sunshine--form--field input[type="tel"] {
    font-size: 16px !important;
    padding: 12px 12px !important;
  }

  /* Checkout section button full width */
  .sunshine--checkout--section-button .sunshine--button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 14px 20px !important;
  }

  /* Order review summary */
  #sunshine--checkout--order-review h2 {
    font-size: 15px !important;
  }

  #sunshine--checkout--order-review--amounts th,
  #sunshine--checkout--order-review--amounts td {
    font-size: 13px !important;
    padding: 8px 4px !important;
  }

  #sunshine--checkout--order-review--total th,
  #sunshine--checkout--order-review--total td {
    font-size: 17px !important;
  }

  /* Discount form */
  #sunshine--checkout--discount-form {
    flex-direction: column !important;
    gap: 8px !important;
  }

  #sunshine--checkout--discount-form input[type="text"] {
    font-size: 16px !important; /* prevent iOS zoom */
  }

  #sunshine--checkout--discount-form button {
    width: 100% !important;
    padding: 12px !important;
  }
}/* End custom CSS */