.elementor-74 .elementor-element.elementor-element-8409f1a{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-a037b6e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-a037b6e */@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&display=swap');

.tfp-header *, .tfp-header *::before, .tfp-header *::after { box-sizing: border-box; margin: 0; padding: 0; }

.tfp-header {
  --tfp-bg: #0A0B12; --tfp-bg-elevated: #12131C; --tfp-navy: #14162B;
  --tfp-gold: #C9A44C; --tfp-gold-light: #E8D5A3; --tfp-gold-deep: #8B6914;
  --tfp-cream: #F5EFE0; --tfp-border: rgba(201,164,76,0.28);
  --tfp-light-bg: #FBF7EE; --tfp-ink: #1A1B26; --tfp-ink-soft: #5A5648;
  --tfp-font-display: 'Cinzel', Georgia, serif;
  --tfp-font-body: 'Cormorant Garamond', Georgia, serif;
  position: sticky; top: 0; z-index: 99999; width: 100%;
  background: linear-gradient(180deg, var(--tfp-bg) 0%, var(--tfp-navy) 100%);
  color: var(--tfp-cream); font-family: var(--tfp-font-body);
  border-bottom: 1px solid var(--tfp-border);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
}
.tfp-header a { color: inherit; text-decoration: none; }
.tfp-header__accent { height: 2px; background: linear-gradient(90deg, transparent 0%, var(--tfp-gold-deep) 15%, var(--tfp-gold) 50%, var(--tfp-gold-deep) 85%, transparent 100%); }

.tfp-header__inner { position: relative; max-width: 1280px; margin: 0 auto; padding: 0 28px; height: 84px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }

/* Logo */
.tfp-logo { justify-self: start; display: flex; align-items: center; gap: 14px; transition: opacity .25s ease; }
.tfp-logo:hover { opacity: .88; }
.tfp-logo__mark { width: 46px; height: 46px; flex-shrink: 0; }
.tfp-logo__mark svg { width: 100%; height: 100%; display: block; }
.tfp-logo__text { display: flex; flex-direction: column; line-height: 1.05; }
.tfp-logo__brand { font-family: var(--tfp-font-display); font-size: 18px; font-weight: 500; letter-spacing: .28em; color: var(--tfp-cream); text-transform: uppercase; white-space: nowrap; }
.tfp-logo__sub { font-family: var(--tfp-font-display); font-size: 10px; letter-spacing: .42em; color: var(--tfp-gold); text-transform: uppercase; margin-top: 5px; }

/* Center menu */
.tfp-nav { justify-self: center; }
.tfp-nav__list { list-style: none; display: flex; align-items: center; gap: 6px; }
.tfp-nav__list > li { position: static; }
.tfp-nav__link { position: relative; display: inline-flex; align-items: center; padding: 10px 14px; font-family: var(--tfp-font-display); font-size: 12px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--tfp-cream); transition: color .25s ease; white-space: nowrap; }
.tfp-nav__link::after { content: ''; position: absolute; left: 14px; right: 14px; bottom: 4px; height: 1px; background: var(--tfp-gold); transform: scaleX(0); transition: transform .28s ease; }
.tfp-nav__link:hover, .tfp-nav__link:focus-visible { color: var(--tfp-gold-light); outline: none; }
.tfp-nav__link:hover::after, .tfp-nav__link:focus-visible::after { transform: scaleX(1); }
.tfp-has-mega.is-mega-open > .tfp-shop-trigger .tfp-nav__link,
.tfp-has-mega:hover > .tfp-shop-trigger .tfp-nav__link { color: var(--tfp-gold-light); }
.tfp-has-mega.is-mega-open > .tfp-shop-trigger .tfp-nav__link::after,
.tfp-has-mega:hover > .tfp-shop-trigger .tfp-nav__link::after { transform: scaleX(1); }

/* Shop trigger */
.tfp-shop-trigger { display: inline-flex; align-items: center; }
.tfp-mega-chevron { display: none; width: 34px; height: 34px; margin-left: 2px; border: 1px solid transparent; background: transparent; border-radius: 2px; cursor: pointer; align-items: center; justify-content: center; color: var(--tfp-gold); padding: 0; }
.tfp-mega-chevron svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .28s ease; }
.tfp-has-mega.is-mega-open .tfp-mega-chevron svg { transform: rotate(180deg); }

/* ===== Shop dropdown: LIGHT ===== */
.tfp-mega {
  position: absolute; left: 0; right: 0; top: 100%;
  background: linear-gradient(180deg, #FFFDF8 0%, var(--tfp-light-bg) 100%);
  border-top: 2px solid var(--tfp-gold);
  border-bottom: 1px solid rgba(201,164,76,.35);
  box-shadow: 0 28px 60px rgba(0,0,0,.28);
  color: var(--tfp-ink);
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translateY(-6px);
  transition: opacity .28s ease, transform .28s ease, visibility .28s;
  z-index: 100000;
}
.tfp-has-mega.is-mega-open .tfp-mega,
.tfp-has-mega:hover .tfp-mega,
.tfp-has-mega:focus-within .tfp-mega { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.tfp-mega[hidden] { display: block !important; }
.tfp-has-mega:not(.is-mega-open):not(:hover):not(:focus-within) .tfp-mega { opacity: 0; visibility: hidden; pointer-events: none; }

.tfp-mega__inner { max-width: 1280px; margin: 0 auto; padding: 22px 28px 28px; }
.tfp-mega__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid rgba(139,105,20,.2); }
.tfp-mega__title { font-family: var(--tfp-font-display); font-size: 11px; font-weight: 600; letter-spacing: .36em; text-transform: uppercase; color: var(--tfp-gold-deep); }
.tfp-header .tfp-mega__all { font-family: var(--tfp-font-display); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--tfp-ink); transition: color .2s ease; }
.tfp-header .tfp-mega__all:hover { color: var(--tfp-gold-deep); }
.tfp-mega__empty { font-family: var(--tfp-font-body); font-size: 16px; color: var(--tfp-ink-soft); padding: 24px 0; text-align: center; grid-column: 1 / -1; }
.tfp-header .tfp-mega__empty a { color: var(--tfp-gold-deep); text-decoration: underline; }

.tfp-mega__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 14px 12px; }
@media (max-width: 1200px) { .tfp-mega__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }

/* Product card + image hover (full bottle, no crop) */
.tfp-header .tfp-pcard { display: flex; flex-direction: column; gap: 10px; color: var(--tfp-ink); border-radius: 2px; transition: transform .25s ease; }
.tfp-pcard:hover { transform: translateY(-2px); }
.tfp-pcard__media { position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: radial-gradient(circle at 50% 40%, #FFFFFF 0%, #F3ECDD 100%); border: 1px solid rgba(201,164,76,.25); border-radius: 2px; transition: border-color .28s ease, box-shadow .28s ease; }
.tfp-pcard:hover .tfp-pcard__media { border-color: var(--tfp-gold); box-shadow: 0 0 0 1px rgba(201,164,76,.25), 0 12px 28px rgba(139,105,20,.18); }
.tfp-header .tfp-pcard__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain !important; object-position: center; padding: 10%; transition: opacity .4s ease, transform .5s ease; }
.tfp-pcard__img--primary { opacity: 1; transform: scale(1); }
.tfp-pcard__img--secondary { opacity: 0; transform: scale(1.06); }
.tfp-pcard:hover .tfp-pcard__img--primary { transform: scale(1.06); }
.tfp-pcard.has-swap:hover .tfp-pcard__img--primary { opacity: 0; }
.tfp-pcard.has-swap:hover .tfp-pcard__img--secondary { opacity: 1; transform: scale(1); }
.tfp-pcard__ph { position: absolute; inset: 18%; border: 1px dashed rgba(139,105,20,.3); }
.tfp-pcard__view { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%) translateY(8px); padding: 6px 14px; font-family: var(--tfp-font-display); font-size: 9px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--tfp-cream); background: linear-gradient(135deg, #14162B 0%, #0A0B12 100%); border: 1px solid var(--tfp-gold); border-radius: 1px; opacity: 0; pointer-events: none; transition: opacity .25s ease, transform .25s ease; box-shadow: 0 4px 14px rgba(0,0,0,.2); }
.tfp-pcard:hover .tfp-pcard__view { opacity: 1; transform: translateX(-50%) translateY(0); }
.tfp-pcard__badge { position: absolute; top: 8px; left: 8px; z-index: 2; padding: 4px 8px; font-family: var(--tfp-font-display); font-size: 8px; letter-spacing: .14em; text-transform: uppercase; color: var(--tfp-cream); background: rgba(20,22,43,.9); border: 1px solid rgba(201,164,76,.5); }
.tfp-pcard__body { display: flex; flex-direction: column; gap: 4px; padding: 0 2px; min-height: 44px; }
.tfp-pcard__name { font-family: var(--tfp-font-display); font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--tfp-ink); line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tfp-pcard:hover .tfp-pcard__name { color: var(--tfp-gold-deep); }
.tfp-pcard__price { font-family: var(--tfp-font-body); font-size: 15px; font-weight: 600; color: var(--tfp-gold-deep); letter-spacing: .04em; }
.tfp-pcard__price--request { font-size: 13px; font-weight: 500; font-style: italic; color: var(--tfp-ink-soft); }
.tfp-pcard__was { color: rgba(26,27,38,.45); font-size: 13px; margin-right: 4px; }
.tfp-pcard__now { color: var(--tfp-gold-deep); }
.tfp-pcard.is-oos { opacity: .65; }

/* Loading skeleton */
.tfp-pcard--skeleton { pointer-events: none; }
.tfp-pcard--skeleton .tfp-pcard__media, .tfp-skel { background: linear-gradient(110deg, #F1EADB 25%, #FBF7EE 40%, #F1EADB 55%); background-size: 200% 100%; animation: tfpShimmer 1.2s ease-in-out infinite; }
.tfp-skel { display: block; height: 10px; width: 82%; border-radius: 2px; margin-top: 2px; }
.tfp-skel--sm { width: 48%; height: 9px; margin-top: 6px; }
@keyframes tfpShimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }

/* Right side */
.tfp-actions { justify-self: end; display: flex; align-items: center; gap: 10px; }
.tfp-icon-btn { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--tfp-border); border-radius: 50%; color: var(--tfp-gold-light) !important; transition: background .25s ease, color .25s ease, transform .2s ease; }
.tfp-icon-btn svg { width: 19px; height: 19px; stroke: currentColor; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.tfp-icon-btn:hover, .tfp-icon-btn:focus-visible { background: rgba(201,164,76,.12); color: var(--tfp-gold) !important; transform: translateY(-1px); outline: none; }
.tfp-checkout-btn { display: inline-flex; align-items: center; justify-content: center; height: 42px; padding: 0 22px; font-family: var(--tfp-font-display); font-size: 11px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; white-space: nowrap; color: #0A0B12 !important; background: linear-gradient(135deg, #E8D5A3 0%, #C9A44C 45%, #A8842E 100%); border: 1px solid var(--tfp-gold-light); border-radius: 2px; box-shadow: 0 2px 12px rgba(201,164,76,.35); transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.tfp-checkout-btn:hover, .tfp-checkout-btn:focus-visible { color: #0A0B12 !important; filter: brightness(1.08); transform: translateY(-1px); box-shadow: 0 4px 18px rgba(201,164,76,.5); outline: none; }

/* Hamburger */
.tfp-toggle { display: none; width: 42px; height: 42px; border: 1px solid var(--tfp-border); background: transparent; border-radius: 2px; cursor: pointer; align-items: center; justify-content: center; flex-direction: column; gap: 5px; padding: 0; }
.tfp-toggle__bar { display: block; width: 20px; height: 1.5px; background: var(--tfp-gold); transition: transform .28s ease, opacity .28s ease; }
.tfp-header.is-open .tfp-toggle__bar:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.tfp-header.is-open .tfp-toggle__bar:nth-child(2) { opacity: 0; }
.tfp-header.is-open .tfp-toggle__bar:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ===== Shop page: full bottle, nothing cut off ===== */
.woocommerce ul.products li.product a img,
.elementor-widget-woocommerce-products ul.products li.product a img,
.elementor-widget-wc-archive-products ul.products li.product a img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  object-fit: contain !important;
  object-position: center;
  padding: 8%;
  background: #FBF7EE;
  border: 1px solid rgba(201,164,76,.25);
  border-radius: 2px;
  transition: transform .4s ease, border-color .3s ease, box-shadow .3s ease;
}
.woocommerce ul.products li.product a:hover img,
.elementor-widget-woocommerce-products ul.products li.product a:hover img,
.elementor-widget-wc-archive-products ul.products li.product a:hover img {
  transform: scale(1.03);
  border-color: #C9A44C;
  box-shadow: 0 10px 26px rgba(139,105,20,.18);
}

/* ===== Mobile ===== */
@media (max-width: 960px) {
  .tfp-header__inner { display: flex; justify-content: space-between; height: 72px; padding: 0 16px; gap: 12px; }
  .tfp-logo__brand { font-size: 15px; letter-spacing: .22em; }
  .tfp-logo__sub { font-size: 9px; letter-spacing: .36em; }
  .tfp-logo__mark { width: 40px; height: 40px; }
  .tfp-actions { gap: 8px; }
  .tfp-icon-btn, .tfp-toggle { width: 38px; height: 38px; }
  .tfp-checkout-btn { height: 38px; padding: 0 14px; font-size: 10px; letter-spacing: .14em; }
  .tfp-toggle { display: inline-flex; }

  .tfp-nav { justify-self: stretch; width: 100%; position: absolute; top: 100%; left: 0; right: 0; background: var(--tfp-bg-elevated); border-bottom: 1px solid var(--tfp-border); box-shadow: 0 18px 40px rgba(0,0,0,.5); max-height: 0; overflow: hidden; opacity: 0; visibility: hidden; transition: max-height .4s ease, opacity .3s ease, visibility .3s; }
  .tfp-header.is-open .tfp-nav { max-height: min(86vh, 720px); opacity: 1; visibility: visible; overflow-y: auto; }
  .tfp-nav__list { flex-direction: column; align-items: stretch; gap: 0; padding: 12px 18px 22px; width: 100%; }
  .tfp-nav__list > li { width: 100%; display: block; position: relative; }
  .tfp-nav__link { display: flex; width: 100%; padding: 14px 8px; font-size: 13px; border-bottom: 1px solid rgba(201,164,76,.12); }
  .tfp-nav__link::after { left: 8px; right: auto; width: 28px; bottom: 10px; }

  .tfp-shop-trigger { display: flex; align-items: center; width: 100%; border-bottom: 1px solid rgba(201,164,76,.12); }
  .tfp-shop-trigger .tfp-nav__link { border-bottom: none; flex: 1; }
  .tfp-mega-chevron { display: inline-flex; flex-shrink: 0; margin-right: 4px; border-color: var(--tfp-border); }

  .tfp-mega, .tfp-has-mega.is-mega-open .tfp-mega, .tfp-has-mega:hover .tfp-mega, .tfp-has-mega:focus-within .tfp-mega { position: static; transform: none; box-shadow: none; border-top: none; border-bottom: none; background: var(--tfp-light-bg); border-radius: 2px; margin: 8px 0 4px; opacity: 1; visibility: visible; pointer-events: auto; }
  .tfp-has-mega:not(.is-mega-open) .tfp-mega { display: none !important; }
  .tfp-has-mega.is-mega-open .tfp-mega { display: block !important; }

  .tfp-mega__inner { padding: 12px 10px 14px; max-width: none; }
  .tfp-mega__head { margin-bottom: 12px; padding: 0 4px 10px; }
  .tfp-mega__title, .tfp-header .tfp-mega__all { font-size: 10px; }
  .tfp-mega__grid { display: flex; flex-wrap: nowrap; gap: 12px; overflow-x: auto; overflow-y: hidden; padding: 4px 4px 10px; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; }
  .tfp-mega__grid::-webkit-scrollbar { height: 4px; }
  .tfp-mega__grid::-webkit-scrollbar-thumb { background: rgba(139,105,20,.35); border-radius: 2px; }
  .tfp-header .tfp-pcard, .tfp-pcard--skeleton { flex: 0 0 128px; width: 128px; scroll-snap-align: start; }
  .tfp-pcard:hover { transform: none; }
  .tfp-pcard__view { display: none; }
  .tfp-pcard__name { font-size: 9px; letter-spacing: .08em; }
  .tfp-pcard__price { font-size: 13px; }
  .tfp-pcard__price--request { font-size: 11px; }
}
@media (max-width: 420px) {
  .tfp-header__inner { padding: 0 12px; gap: 8px; }
  .tfp-logo { gap: 8px; }
  .tfp-logo__mark { width: 34px; height: 34px; }
  .tfp-logo__brand { font-size: 12px; letter-spacing: .16em; }
  .tfp-logo__sub { font-size: 8px; letter-spacing: .3em; }
  .tfp-actions { gap: 6px; }
  .tfp-icon-btn, .tfp-toggle { width: 36px; height: 36px; }
  .tfp-checkout-btn { height: 36px; padding: 0 10px; font-size: 9px; letter-spacing: .1em; }
  .tfp-header .tfp-pcard, .tfp-pcard--skeleton { flex-basis: 112px; width: 112px; }
}/* End custom CSS */