.elementor-58068 .elementor-element.elementor-element-666f5fe{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:50;}.elementor-58068 .elementor-element.elementor-element-9e27e52{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-58068 .elementor-element.elementor-element-f4a51c0{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right: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-67b0952 *//* =========================================================
   FA · HEADER · iOS APP BACK
   Template 58068 · HTML widget 01a-0. Kept on the widget rather than
   Page Settings because the connector cannot read the existing A-L
   custom CSS, and a merge there would overwrite it. Letter M: F is
   already MENU PILL.

   IMPORTANT · .fa-hdr__bar is a GRID, not a flex row:
     >=1025px  minmax(0,1fr) auto minmax(0,1fr)  logo | nav | actions   padding-left 40px
     768-1024  same 3 columns                                            padding-left 28px
     <=767px   minmax(0,1fr) auto                logo | mobile menu      padding-left 16px
   A Back button left in normal flow becomes an EXTRA GRID ITEM: the logo
   is pushed into column 2 and the actions wrap onto a second row.
   So Back is position:absolute (out of flow, no column added) and sits in
   the bar's left padding, which is widened by 40px + the gap. The logo
   starts exactly at that padding edge, so the gap is exact and nothing
   in the other columns moves.
   ========================================================= */

/* ==== M. iOS APP BACK ==== */

/* M1. host generates no box; button invisible without html.fa-ios-app */
.elementor-58068 .elementor-element.elementor-element-67b0952{display:contents}
.fa-back{display:none}

/* M2. the circle, parked in the bar's left padding. NOT a grid item. */
.fa-ios-app .fa-hdr__bar{position:relative}
.fa-ios-app .fa-back{position:absolute;top:50%;left:16px;transform:translateY(-50%);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:999px;background:var(--lavender,#eef0fb);color:var(--navy,#02023e);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s ease,color .12s ease,transform .12s ease}
.fa-ios-app .fa-back[hidden]{display:none}

/* M3. 44px hit area without changing the 40px look */
.fa-ios-app .fa-back::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}

/* M4. chevron */
.fa-ios-app .fa-back svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}

/* M5. pressed: navy fill, white chevron, slight squeeze.
   Keeps translateY(-50%), or the button drops on tap. */
.fa-ios-app .fa-back:active,.fa-ios-app .fa-back.is-pressed{background:var(--navy,#02023e);color:#fff;transform:translateY(-50%) scale(.92)}

/* M6. loader ring inside the circle, site keyframe fa-ldr-pulse */
.fa-ios-app .fa-back .fa-back__ring{position:absolute;inset:4px;border-radius:999px;border:2px solid #fff;opacity:0;pointer-events:none}
.fa-ios-app .fa-back.is-pressed .fa-back__ring{opacity:1;animation:fa-ldr-pulse 1s ease-in-out infinite}

/* M7. keyboard focus (iPad with a hardware keyboard) */
.fa-ios-app .fa-back:focus-visible{outline:2px solid var(--royal,#004bfc);outline-offset:2px}

/* M8. PHONE (<=767): padding 16 -> 16+40+8. Logo narrows 150 -> 125, and
   max-width:100% lets it shrink further rather than spill into the menu
   column on a narrow phone (at 375pt column 1 is 136px, at 320pt only 81px).
   The mobile menu on the right does not move. */
.fa-ios-app .fa-has-back .fa-hdr__bar{padding-left:64px!important}
.fa-ios-app .fa-has-back .fa-hdr__logo{width:125px!important;max-width:100%!important;--container-widget-width:125px}

/* M9. sticky header shadow past 8px */
.fa-ios-app.fa-hdr-scrolled .fa-hdr{box-shadow:0 6px 18px rgba(2,2,62,.08)}

/* M10. iPAD / TABLET (768-1024): padding 28 -> 28+40+12. Logo keeps 150. */
@media (min-width:768px){
  .fa-ios-app .fa-back{left:28px}
  .fa-ios-app .fa-has-back .fa-hdr__bar{padding-left:80px!important}
  .fa-ios-app .fa-has-back .fa-hdr__logo{width:150px!important;max-width:150px!important;--container-widget-width:150px}
}

/* M11. LARGE iPAD (>=1025): padding 40 -> 40+40+12 */
@media (min-width:1025px){
  .fa-ios-app .fa-back{left:40px}
  .fa-ios-app .fa-has-back .fa-hdr__bar{padding-left:92px!important}
}

/* M12. reduced motion: colour change only, centring preserved */
@media (prefers-reduced-motion:reduce){
  .fa-ios-app .fa-back,.fa-ios-app .fa-back:active,.fa-ios-app .fa-back.is-pressed{transform:translateY(-50%);transition:background .12s ease,color .12s ease}
  .fa-ios-app .fa-back.is-pressed .fa-back__ring{animation:none;opacity:.9}
}

/* M13. HOME IS THE ROOT · belt. Turns off WebKit's horizontal swipe-navigation
   where it is honoured. Vertical is left alone, so normal scrolling and the
   rubber-band bounce are unchanged. Set by step 13, app only, home only. */
.fa-ios-app.fa-home-root,
.fa-ios-app.fa-home-root body{overscroll-behavior-x:none}

/* M14. HOME IS THE ROOT · braces. iOS ignores M13 for its own edge gesture, so
   this invisible strip down the left edge takes the swipe instead: a scroller
   with room to move in both directions wins the gesture over back-navigation.
   Width is set inline from GUARD_W (20px). Built by step 14, app only, home only.
   z-index 1 keeps the header and the bottom bar above it, so their taps work. */
.fa-swipe-guard{position:fixed;top:0;left:0;bottom:0;z-index:1;overflow-x:scroll;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:transparent;scrollbar-width:none}
.fa-swipe-guard::-webkit-scrollbar{display:none;width:0;height:0}
.fa-swipe-guard__i{width:300%;height:1px}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0015fe6 *//* =========================================================
   FA · SITE-WIDE UI FIXES · header 58068, HTML widget 99.
   Loaded on every page because the header is global. Written against both
   component families the site uses:
     Shop    .fa-shop-sort / .fa-sort-dropdown / .jet-active-filter
     Outfits .jet-sorting  / .jet-sorting-select / .jet-active-tag
   !important is needed because the page-level rules are .fa-shop-prefixed
   (specificity 0,2,0) and these are global.
   ========================================================= */

/* ==== N. SITE-WIDE UI FIXES ==== */

/* N1. PAGINATION · remove the box drawn around the Prev / Next label.
   Cause: a theme rule
     .woocommerce-pagination a, .woocommerce-pagination span
     { border:1px solid #ddd; background:#fff; padding:.5rem .75rem }
   It is meant for the standalone page-number spans, but it also matches the
   <span class="fa-shop-pl"> that sits INSIDE the Prev link, so the label gets
   a second border within the pill. Only spans inside a link are reset, so the
   current-page box keeps its styling. */
.woocommerce-pagination a span,
.woocommerce-pagination a .fa-shop-pl,
.woocommerce-pagination a .fa-shop-nl{border:0!important;background:none!important;padding:0!important;border-radius:0!important;box-shadow:none!important;color:inherit!important;font:inherit!important}

/* N2. SORT · the blue focus ring belongs to the whole pill.
   The browser draws its default ring on the bare <select>, which sits inside
   the pill and cuts across it. Move the ring to the pill, which already has
   the 12px radius, so it traces the border. */
.fa-shop-sort select,
.fa-sort-dropdown,
.jet-sorting select,
.jet-sorting-select{outline:none!important;box-shadow:none!important}

.fa-shop-sort:focus-within,
.jet-sorting:focus-within{outline:2px solid var(--royal,#004bfc)!important;outline-offset:2px!important;border-radius:12px}

/* N3. ACTIVE FILTER CHIPS · bigger pill, cross inside a grey circle.
   Two widgets, same treatment: Active Filters (.jet-active-filter) on Shop and
   Active Tags (.jet-active-tag) on Outfits.
   The remove control ships as a mask-image: an SVG mask with background-color
   as the ink, which is why a background cannot simply be coloured in. The mask
   is switched off so the element's own × character shows, and the element then
   becomes the grey circle.
   JetSmartFilters also positions the cross absolutely in the chip's top-right
   corner, where it covers the label; it is put back in the flex row after the
   text. */
.jet-active-filter,
.jet-active-tag{display:inline-flex!important;align-items:center;height:36px!important;padding:0 6px 0 14px!important;gap:8px!important;border-radius:999px!important}

.jet-active-filter__remove,
.jet-active-tag__remove{position:static!important;top:auto!important;right:auto!important;transform:none!important;margin:0!important;order:2;-webkit-mask-image:none!important;mask-image:none!important;width:22px!important;height:22px!important;min-width:22px!important;flex:0 0 22px;display:inline-flex!important;align-items:center;justify-content:center;border-radius:999px!important;background:var(--soft,#f1f3f9)!important;color:var(--muted,#5b5b7e)!important;font-size:15px!important;line-height:1!important;cursor:pointer;transition:background .15s ease,color .15s ease}

.jet-active-filter__remove:hover,
.jet-active-tag__remove:hover{background:var(--line,#dfe4ee)!important;color:var(--navy,#02023e)!important}

/* N4. the host renders nothing and must never join the header layout */
.elementor-58068 .elementor-element.elementor-element-0015fe6{display:none!important}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   FA · SITE HEADER  (Theme Builder header 58068 · whole site)
   Native: container, Image (logo 57707), Nav Menu (Header Menu).
   Login-aware links + mobile menu: [fa_header] in the helpers snippet
   (section H, with its small open/close script).
   A. tokens  B. bar  C. logo  D. nav tray  E. actions  F. mobile menu
   G. theme header off  H. account menu (signed in)  I. account page  J. wishlist
   ========================================================= */

/* ==== A. TOKENS ==== */
.fa-hdr, .fa-am, .fa-acct, .fa-acct__toast, .fa-wl, .fa-hs{
  --navy:#02023e; --royal:#004bfc; --sky:#02baff;
  --ink-2:#5b5b7e; --muted:var(--ink-2); --line:#dfe4ee; --line-soft:#eef1f6; --tray:#f1f5fc;
  --soft:#f4f6fb; --soft-blue:#eef3ff; --danger:#b42318; --danger-soft:#fdf2f2;
  --am-scrim:rgba(2,2,62,.45); --am-grab:#cfd6e6; --am-edge:#e6eaf2; --am-sub:#c9cbe6; --am-hint:#8a91ad;
  --ok:#0a7a3e; --warn:#b45f06; --img:#e8edf6; --wl-off:#e4e8f1;
  /* header search (K, L) */
  --white:#fff; --lavender:#eef0fb; --hover-soft:#f1f2fa; --hs-muted:#6b6f93; --hs-line:#e4e6f2; --hs-key:#f7f8fd;
  --hs-scrim:rgba(2,2,62,.30); --hs-shadow:0 24px 60px rgba(2,2,62,.18);
}
.fa-hdr{ background:#fff; font-family:Inter,sans-serif; color:var(--navy); }
.fa-hdr a{ text-decoration:none !important; }

/* ==== B. BAR · 80px desktop: logo left, nav centred, actions right ====
   1480px = the page sections' 1400px content + the 40px side padding, so the logo and the
   account button line up with the card edges below at every width. */
.fa-hdr .fa-hdr__bar{
  --display:grid; display:grid !important; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:24px;
  max-width:1480px; width:100%; height:80px; margin:0 auto; padding:0 40px !important;
}
@media (max-width:1024px){ .fa-hdr .fa-hdr__bar{ height:68px; gap:16px; padding:0 28px !important; } }
@media (max-width:767px){ .fa-hdr .fa-hdr__bar{ grid-template-columns:minmax(0,1fr) auto; height:60px; padding:0 16px !important; } }

/* ==== C. LOGO · the SVG has no intrinsic size, so the widget gets a fixed width ==== */
.fa-hdr .fa-hdr__logo{ justify-self:start; --container-widget-width:150px; width:150px !important; max-width:150px; line-height:0; }
.fa-hdr .fa-hdr__logo img{ width:100% !important; max-width:none; height:auto; display:block; }
@media (max-width:767px){ .fa-hdr .fa-hdr__logo{ --container-widget-width:120px; width:120px !important; max-width:120px; } } /* ~36px tall */

/* ==== D. NAV TRAY · active item white with shadow ==== */
.fa-hdr .fa-hdr__nav{ width:auto; }
.fa-hdr .fa-hdr__nav .elementor-nav-menu{ display:flex; gap:4px; padding:5px; border-radius:999px; background:var(--tray); }
.fa-hdr .fa-hdr__nav .elementor-item{
  height:40px; padding:0 18px !important; display:flex; align-items:center; border-radius:999px;
  font:500 14px/1 Inter,sans-serif !important; color:var(--navy) !important; white-space:nowrap; background:transparent;
}
.fa-hdr .fa-hdr__nav .elementor-item:hover, .fa-hdr .fa-hdr__nav .elementor-item:focus{ color:var(--royal) !important; }
.fa-hdr .fa-hdr__nav .elementor-item.elementor-item-active{ background:#fff; box-shadow:0 1px 3px rgba(2,2,62,.12); font-weight:700 !important; }
.fa-hdr .fa-hdr__nav .elementor-item::before, .fa-hdr .fa-hdr__nav .elementor-item::after{ display:none !important; }
@media (max-width:1024px){ .fa-hdr .fa-hdr__nav .elementor-item{ padding:0 14px !important; } }

/* ==== E. ACTIONS · wishlist · divider · Log in · Sign up ==== */
.fa-hdr .fa-hdr__act, .fa-hdr .fa-hdr__mob{ justify-self:end; width:auto; }
.fa-hdr__actions, .fa-hdr__m{ display:flex; align-items:center; gap:4px; }
.fa-hdr__icon{
  width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--navy) !important;
}
.fa-hdr__icon:hover, .fa-hdr__icon:focus-visible{ color:var(--royal) !important; }
.fa-hdr__div{ width:1px; height:24px; background:var(--line); margin:0 8px; }
.fa-hdr__link{ height:42px; padding:0 6px; display:flex; align-items:center; font:600 14px/1 Inter,sans-serif; color:var(--navy) !important; }
.fa-hdr__link:hover, .fa-hdr__link:focus-visible{ color:var(--royal) !important; }
.fa-hdr__cta{
  height:42px; padding:0 18px; margin-left:4px; display:flex; align-items:center; border-radius:999px;
  background:var(--navy); color:#fff !important; font:700 14px/1 Inter,sans-serif; white-space:nowrap;
}
.fa-hdr__cta:hover, .fa-hdr__cta:focus-visible{ background:var(--royal); color:#fff !important; }

/* ==== F. MENU PILL · menu lines + avatar (opens the account menu, section H) ==== */
.fa-hdr__m{ gap:8px; }
.fa-hdr .fa-hdr__m .fa-hdr__icon,
.fa-hdr .fa-hdr__actions:has(.fa-hdr__menu-btn) .fa-hdr__icon{ width:44px; height:44px; background:var(--tray); } /* signed in: same grey heart circle at every size */
.fa-hdr .fa-hdr__actions:has(.fa-hdr__menu-btn){ gap:8px; }
/* pill: menu lines + outline user in a royal circle (the theme resets button padding, hence the !important) */
.fa-hdr .fa-hdr__menu-btn{
  height:44px; min-width:0; padding:0 4px 0 16px !important; display:flex; align-items:center; gap:14px; margin:0; line-height:1;
  border-radius:999px; border:1px solid var(--line); background:#fff; color:var(--navy); box-shadow:none; cursor:pointer;
}
.fa-hdr .fa-hdr__menu-btn > svg{ width:20px; height:20px; flex:none; }
.fa-hdr__menu-btn:hover, .fa-hdr__menu-btn:focus{ background:#fff; color:var(--royal); border-color:var(--line); }
.fa-hdr .fa-hdr__av{ width:36px; height:36px; flex:none; border-radius:50%; background:var(--royal); color:#fff; display:flex; align-items:center; justify-content:center; }
.fa-hdr .fa-hdr__av svg{ width:18px; height:18px; flex:none; }

/* ==== G. THEME HEADER OFF · the Hostinger Affiliate theme always prints its own
   header (#masthead) and Elementor Pro cannot replace it, so it is hidden
   wherever this header loads. No theme file edits. ==== */
body #masthead{ display:none !important; }

/* ==== H. ACCOUNT MENU · signed in (options 5b / 6a / 6b)
   Markup + script: helpers snippet #61 section H, printed once in the footer
   as #fa-am and opened by the avatar pill [data-fa-am].
   < 768 bottom sheet · 768–1199 centred 520px sheet · ≥ 1200 popover under the pill ==== */
html.fa-am-lock, html.fa-am-lock body{ overflow:hidden !important; }
.fa-am{ position:fixed; inset:0; z-index:100050; font-family:Inter,sans-serif; color:var(--navy); }
.fa-am[hidden]{ display:none; }
.fa-am *, .fa-am *::before, .fa-am *::after{ box-sizing:border-box; }
.fa-am a{ text-decoration:none !important; }
.fa-am a:focus-visible, .fa-am button:focus-visible{ outline:2px solid var(--royal); outline-offset:2px; }
.fa-am svg{ flex:none; }
/* sheet + overlay (mobile) */
.fa-am__scrim{ position:absolute; inset:0; background:var(--am-scrim); opacity:0; transition:opacity .22s ease-out; }
.fa-am__panel{
  position:absolute; left:0; right:0; bottom:0; max-height:90vh; max-height:90dvh; overflow-y:auto; overscroll-behavior:contain;
  display:flex; flex-direction:column; gap:12px; padding:10px 16px calc(24px + env(safe-area-inset-bottom));
  background:#fff; border-radius:26px 26px 0 0; outline:0; transform:translateY(100%); transition:transform .22s ease-out;
}
.fa-am.is-open .fa-am__scrim{ opacity:1; }
.fa-am.is-open .fa-am__panel{ transform:none; }
.fa-am__grab{ align-self:center; width:40px; height:4px; border-radius:4px; background:var(--am-grab); }
/* header row */
.fa-am__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; }
.fa-am__title{ margin:0; padding:0; font:800 20px/1.2 Montserrat,sans-serif; letter-spacing:0; text-transform:none; color:var(--navy); }
.fa-am__esc{ display:none; font:600 12px/1 Inter,sans-serif; color:var(--am-hint); }
.fa-am__x{
  position:relative; flex:none; width:36px; height:36px; margin:0; padding:0; border:0; border-radius:50%;
  display:flex; align-items:center; justify-content:center; background:var(--soft); color:var(--navy); box-shadow:none; cursor:pointer;
}
.fa-am__x::after{ content:""; position:absolute; inset:-4px; } /* 44px tap area */
.fa-am__x:hover, .fa-am__x:focus{ background:var(--soft); color:var(--royal); }
/* 1. tiles */
.fa-am__tiles{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.fa-am__tile{
  display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-height:44px; padding:16px; border-radius:18px;
  background:var(--soft); color:var(--navy) !important; font:700 15px/1.2 Inter,sans-serif; transition:background-color .15s;
}
.fa-am__tile svg{ width:24px; height:24px; color:var(--royal); }
.fa-am__tile:hover, .fa-am__tile:focus-visible{ background:var(--soft-blue); }
/* 2. creator banner */
.fa-am__creator{
  position:relative; overflow:hidden; display:flex; align-items:center; gap:12px; min-height:44px; padding:16px; border-radius:18px;
  background:var(--navy); color:#fff !important;
}
.fa-am__creator::before{ content:""; position:absolute; top:-40px; right:-28px; width:120px; height:120px; border-radius:50%; background:var(--royal); opacity:.55; pointer-events:none; }
.fa-am__creator > *{ position:relative; }
.fa-am__star{ display:flex; color:#fff; }
.fa-am__ctext{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.fa-am__ct{ font:700 15px/1.25 Inter,sans-serif; color:#fff; }
.fa-am__cs{ font:400 13px/1.35 Inter,sans-serif; color:var(--am-sub); }
.fa-am__arrow{ display:flex; color:#fff; transition:color .15s; }
.fa-am__creator:hover .fa-am__arrow, .fa-am__creator:focus-visible .fa-am__arrow{ color:var(--sky); }
/* 3. log out */
.fa-am__out{
  display:flex; align-items:center; justify-content:center; gap:8px; height:52px; border:1px solid var(--line); border-radius:999px;
  background:#fff; color:var(--danger) !important; font:700 15px/1 Inter,sans-serif; transition:background-color .15s;
}
.fa-am__out:hover, .fa-am__out:focus-visible{ background:var(--danger-soft); }
/* 3b. Wishlist row · signed out only (Log in · Sign up take the tiles) */
.fa-am__row{
  display:flex; align-items:center; gap:12px; min-height:52px; padding:0 16px; border-radius:18px;
  background:var(--soft); color:var(--navy) !important; font:700 15px/1.2 Inter,sans-serif; transition:background-color .15s;
}
.fa-am__row svg{ width:22px; height:22px; color:var(--royal); }
.fa-am__row:hover, .fa-am__row:focus-visible{ background:var(--soft-blue); }
/* tablet 768–1199: centred 520px sheet */
@media (min-width:768px){
  .fa-am__panel{ left:50%; right:auto; width:520px; margin-left:-260px; padding:12px 24px calc(28px + env(safe-area-inset-bottom)); border-radius:28px 28px 0 0; }
}
/* desktop ≥ 1200: popover under the pill, right-aligned, no overlay */
@media (min-width:1200px){
  .fa-am{ pointer-events:none; }
  .fa-am__scrim, .fa-am__grab, .fa-am__x{ display:none; }
  .fa-am__panel{
    pointer-events:auto; top:var(--am-top, 90px); right:var(--am-right, 24px); bottom:auto; left:auto; width:360px; margin:0;
    max-height:calc(100vh - var(--am-top, 90px) - 16px); padding:16px; border:1px solid var(--am-edge); border-radius:24px;
    box-shadow:0 24px 60px rgba(2,2,62,.18); opacity:0; transform:translateY(-6px); transition:opacity .16s ease-out, transform .16s ease-out;
  }
  .fa-am.is-open .fa-am__panel{ opacity:1; transform:none; }
  .fa-am__head{ min-height:0; }
  .fa-am__title{ font-size:18px; }
  .fa-am__esc{ display:block; }
  .fa-am__out{ height:46px; border:0; }
}
@media (prefers-reduced-motion:reduce){ .fa-am__scrim, .fa-am__panel{ transition:none !important; } }

/* ==== I. ACCOUNT PAGE · "Your account" (/my-account/, page 58163 · Account Page 5)
   Hybrid: native Elementor layout + widgets (title, profile pill + card,
   settings card, Log out / Delete); live parts from snippet "FA · Account page"
   ([fa_account] board / settings fields / creator, toast, script).
   < 768 one column, 2-up board · 768–1199 one column, 4-up board ·
   ≥ 1200 main + 360px sticky sidebar (profile card replaces the pill) ==== */
.fa-acct{ --display:grid; display:grid !important; grid-template-columns:minmax(0,1fr); gap:32px; align-items:start; width:100%; max-width:1160px !important; margin:0 auto !important; padding:24px 16px 28px !important; font-family:Inter,sans-serif; color:var(--navy); }
.fa-acct *, .fa-acct *::before, .fa-acct *::after{ box-sizing:border-box; }
.fa-acct a{ text-decoration:none !important; }
.fa-acct a:focus-visible, .fa-acct button:focus-visible, .fa-acct input:focus-visible{ outline:2px solid var(--royal); outline-offset:2px; }
.fa-acct svg{ flex:none; }
.fa-acct__main, .fa-acct__side{ min-width:0; width:100%; gap:20px !important; }
/* the page's column containers stretch their children (Elementor centres them by default) */
.fa-acct__main, .fa-acct__side, .fa-acct__settings, .fa-acct__pill-txt, .fa-acct__profile-txt{ --align-items:stretch; align-items:stretch !important; }
.fa-acct .elementor-heading-title{ text-align:left; }
.fa-acct .fa-acct__av .elementor-heading-title{ text-align:center; }
.fa-acct__pill, .fa-acct__profile{ --flex-direction:row; flex-direction:row !important; flex-wrap:nowrap !important; } /* Elementor turns containers into columns on phones */
.fa-acct__side{ gap:16px !important; }
/* title */
.fa-acct__h1{ margin-bottom:-12px; } /* 8px to the sub-line inside the 20px column gap */
.fa-acct__h1 .elementor-heading-title{ margin:0; font:800 34px/1.05 Montserrat,sans-serif; letter-spacing:-.03em; color:var(--navy); }
.fa-acct__lead .elementor-heading-title{ margin:0; font:400 15px/1.5 Inter,sans-serif; color:var(--muted); text-wrap:pretty; }
/* profile pill (native container, mobile + tablet) */
.fa-acct__pill{ align-items:center; gap:12px !important; min-width:0; padding:12px 14px !important; border-radius:999px; background:var(--soft); }
.fa-acct__av{ flex:none; width:auto !important; }
.fa-acct__av .elementor-heading-title{ width:44px; height:44px; margin:0; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--royal); color:#fff; font:800 16px/1 Montserrat,sans-serif; }
.fa-acct__av--lg .elementor-heading-title{ width:60px; height:60px; font-size:20px; }
.fa-acct__pill-txt, .fa-acct__profile-txt{ flex:1 1 0; min-width:0; gap:0 !important; }
.fa-acct__pill-txt > .elementor-widget, .fa-acct__profile-txt > .elementor-widget{ width:100%; min-width:0; }
.fa-acct__pill-name .elementor-heading-title{ margin:0; font:700 15px/1.3 Inter,sans-serif; color:var(--navy); }
.fa-acct__pill-sub .elementor-heading-title{ margin:0; font:400 13px/1.35 Inter,sans-serif; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
/* board · chips */
.fa-acct__board{ display:flex; flex-direction:column; gap:20px; }
.fa-acct__bar{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.fa-acct__chips{ display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; }
.fa-acct__chips::-webkit-scrollbar{ display:none; }
.fa-acct .fa-acct__chip{
  flex:none; display:flex; align-items:center; gap:6px; height:44px; margin:0; padding:0 16px; border:1px solid var(--line); border-radius:999px;
  background:#fff; color:var(--navy); font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer;
  transition:background-color .15s, color .15s, border-color .15s;
}
.fa-acct .fa-acct__chip:hover, .fa-acct .fa-acct__chip:focus{ background:var(--soft-blue); color:var(--navy); border-color:var(--line); }
.fa-acct .fa-acct__chip[aria-pressed="true"]{ background:var(--navy); border-color:var(--navy); color:#fff; }
.fa-acct__chip-n{ font:600 12px/1 Inter,sans-serif; opacity:.75; }
.fa-acct__viewall{ display:flex; align-items:center; gap:6px; height:44px; font:700 14px/1 Inter,sans-serif; color:var(--royal) !important; transition:color .15s; }
.fa-acct__viewall:hover{ color:var(--navy) !important; }
/* board · cards (every photo 4:5 so each row lines up) */
.fa-acct__grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.fa-acct__card{ display:block; min-width:0; border-radius:20px; overflow:hidden; background:var(--soft); color:var(--navy) !important; transition:background-color .15s; }
.fa-acct__card[hidden]{ display:none; }
.fa-acct__card:hover{ background:var(--soft-blue); }
.fa-acct__media{ position:relative; display:block; aspect-ratio:4/5; background:var(--img); }
.fa-acct__media .fa-acct__img{ position:absolute; inset:0; display:block; width:100% !important; height:100% !important; max-width:none; object-fit:cover; border-radius:0; }
.fa-acct__kind{ position:absolute; top:8px; left:8px; height:26px; padding:0 10px; border-radius:999px; display:flex; align-items:center; background:#fff; font:700 11px/1 Inter,sans-serif; letter-spacing:.04em; pointer-events:none; }
.fa-acct__score{ position:absolute; right:8px; bottom:8px; height:30px; padding:0 3px 0 9px; border-radius:999px; display:flex; align-items:center; gap:6px; background:#fff; pointer-events:none; }
.fa-acct__score-k{ font:800 10px/1 Inter,sans-serif; }
.fa-acct__score-v{ height:24px; min-width:36px; padding:0 6px; border-radius:999px; display:flex; align-items:center; justify-content:center; background:var(--warn); color:#fff; font:800 13px/1 Montserrat,sans-serif; }
.fa-acct__score-v--hi{ background:var(--ok); }
.fa-acct__score-v--mid{ background:var(--royal); }
.fa-acct__text{ display:block; padding:10px 12px 12px; }
.fa-acct__t1{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font:700 14px/1.3 Inter,sans-serif; }
.fa-acct__t2{ display:block; margin-top:2px; font:400 13px/1.35 Inter,sans-serif; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fa-acct__more{ display:flex; align-items:center; justify-content:center; gap:8px; height:52px; border:1px solid var(--royal); border-radius:999px; font:700 15px/1 Inter,sans-serif; color:var(--royal) !important; transition:background-color .15s; }
.fa-acct__more:hover{ background:var(--soft-blue); }
/* board · empty state */
.fa-acct__empty{ display:flex; flex-direction:column; align-items:center; gap:12px; padding:40px 20px; border:1.5px dashed var(--am-grab); border-radius:24px; text-align:center; }
.fa-acct__empty-ic{ width:56px; height:56px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--soft-blue); color:var(--royal); }
.fa-acct__empty-t{ margin:0; font:800 20px/1.2 Montserrat,sans-serif; letter-spacing:0; text-transform:none; color:var(--navy); }
.fa-acct__empty-d{ display:block; margin:0; max-width:300px; font:400 14px/1.5 Inter,sans-serif; color:var(--muted); text-wrap:pretty; }
.fa-acct__empty-btns{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-top:4px; }
.fa-acct__btn{ display:flex; align-items:center; height:44px; padding:0 20px; border-radius:999px; font:700 14px/1 Inter,sans-serif; transition:background-color .15s; }
.fa-acct__btn--solid{ background:var(--royal); color:#fff !important; }
.fa-acct__btn--solid:hover{ background:var(--navy); }
.fa-acct__btn--line{ border:1px solid var(--line); color:var(--navy) !important; }
.fa-acct__btn--line:hover{ background:var(--soft-blue); }
/* sidebar · profile card (native container, desktop) */
.fa-acct__profile{ display:none !important; align-items:center; gap:14px !important; padding:22px !important; border-radius:24px; background:var(--soft); }
.fa-acct__profile-name .elementor-heading-title{ margin:0; font:800 19px/1.2 Montserrat,sans-serif; color:var(--navy); }
.fa-acct__profile-sub .elementor-heading-title{ margin:3px 0 0; font:500 13px/1.3 Inter,sans-serif; color:var(--muted); }
/* sidebar · account settings (native card + heading; fields from the snippet) */
.fa-acct__settings{ gap:14px !important; padding:20px !important; border:1px solid var(--line); border-radius:24px; }
.fa-acct__h2 .elementor-heading-title{ margin:0; font:800 18px/1.2 Montserrat,sans-serif; letter-spacing:0; text-transform:none; color:var(--navy); }
.fa-acct__form{ display:flex; flex-direction:column; gap:14px; margin:0; }
.fa-acct__field{ display:flex; flex-direction:column; gap:6px; }
.fa-acct__label{ margin:0; font:600 13px/1.2 Inter,sans-serif; color:var(--muted); }
.fa-acct__input{ display:flex; align-items:center; gap:10px; height:52px; padding:0 14px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.fa-acct__field.is-changed .fa-acct__input{ border:1.5px solid var(--royal); }
.fa-acct__field.is-error .fa-acct__input{ border:1.5px solid var(--danger); }
.fa-acct__input input{
  flex:1; min-width:0; width:100%; height:100% !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important;
  background:transparent !important; box-shadow:none !important; outline:0; font:500 15px/1 Inter,sans-serif; color:var(--navy); -webkit-appearance:none; appearance:none;
}
.fa-acct__input input::placeholder{ color:var(--muted); opacity:.7; }
.fa-acct__prefix{ padding-right:10px; border-right:1px solid var(--line); font:600 15px/1 Inter,sans-serif; color:var(--muted); }
.fa-acct__err-ic{ display:none; color:var(--danger); }
.fa-acct__field.is-error .fa-acct__err-ic{ display:flex; }
.fa-acct__err{ display:block; margin:0; font:500 13px/1.45 Inter,sans-serif; color:var(--danger); text-wrap:pretty; }
.fa-acct__err[hidden]{ display:none; }
.fa-acct__pw{ display:flex; align-items:center; gap:10px; min-height:52px; padding:0 14px; border-radius:14px; background:var(--soft); font:500 14px/1.3 Inter,sans-serif; }
.fa-acct__pw svg{ color:var(--royal); }
.fa-acct__pw span{ flex:1; }
.fa-acct__pw a{ display:flex; align-items:center; min-height:44px; font:700 13px/1 Inter,sans-serif; color:var(--royal) !important; transition:color .15s; }
.fa-acct__pw a:hover{ color:var(--navy) !important; }
.fa-acct .fa-acct__save{ height:52px; margin:0; padding:0 20px; border:0; border-radius:999px; background:var(--royal); color:#fff; font:700 15px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; transition:background-color .15s; }
.fa-acct .fa-acct__save:hover, .fa-acct .fa-acct__save:focus{ background:var(--navy); color:#fff; }
.fa-acct .fa-acct__save:disabled, .fa-acct .fa-acct__save:disabled:hover{ background:var(--soft); color:var(--muted); cursor:default; }
/* sidebar · creator card */
.fa-acct__creator{ position:relative; overflow:hidden; display:flex; flex-direction:column; gap:14px; padding:20px; border-radius:24px; background:var(--navy); color:#fff; }
.fa-acct__creator::before{ content:""; position:absolute; right:-50px; top:-70px; width:170px; height:170px; border-radius:50%; background:var(--royal); opacity:.55; pointer-events:none; }
.fa-acct__creator > *{ position:relative; }
.fa-acct__creator-row{ display:flex; align-items:center; gap:12px; }
.fa-acct__creator-ic{ flex:none; width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.1); }
.fa-acct__creator-t{ display:block; font:800 17px/1.25 Montserrat,sans-serif; }
.fa-acct__creator-s{ display:block; margin-top:2px; font:400 14px/1.4 Inter,sans-serif; color:var(--am-sub); }
.fa-acct__creator-cta{ align-self:flex-start; display:flex; align-items:center; gap:8px; height:44px; padding:0 18px; border:1px solid rgba(255,255,255,.35); border-radius:999px; font:700 14px/1 Inter,sans-serif; color:#fff !important; transition:background-color .15s; }
.fa-acct__creator-cta:hover{ background:rgba(255,255,255,.1); }
.fa-acct__tag{ align-self:flex-start; display:flex; align-items:center; gap:8px; height:32px; padding:0 12px; border-radius:999px; background:rgba(2,186,255,.16); color:var(--sky); font:700 12px/1 Inter,sans-serif; }
.fa-acct__tag-dot{ width:7px; height:7px; border-radius:50%; background:var(--sky); }
/* sidebar · log out (native buttons; icon is a CSS mask) */
.fa-acct__out{ align-items:center; gap:4px !important; }
.fa-acct__logout{ width:100% !important; }
.fa-acct__logout .elementor-button{
  display:flex; align-items:center; justify-content:center; gap:8px; width:100%; height:52px; padding:0 20px; border:1px solid var(--line); border-radius:999px;
  background:#fff; color:var(--danger); font:700 15px/1 Inter,sans-serif; box-shadow:none; transition:background-color .15s;
}
.fa-acct__logout .elementor-button:hover, .fa-acct__logout .elementor-button:focus{ background:var(--danger-soft); color:var(--danger); }
.fa-acct__logout .elementor-button-text{ display:flex; align-items:center; gap:8px; }
.fa-acct__logout .elementor-button-text::before{
  content:""; width:18px; height:18px; flex:none; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h4v16h-4M10 8l-4 4 4 4M6 12h10'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h4v16h-4M10 8l-4 4 4 4M6 12h10'/%3E%3C/svg%3E") center/contain no-repeat;
}
.fa-acct__delete{ width:auto !important; }
.fa-acct__delete .elementor-button{
  display:flex; align-items:center; min-height:44px; padding:0; border:0; background:none; box-shadow:none;
  font:500 13px/1 Inter,sans-serif; color:var(--muted); text-decoration:underline; text-underline-offset:3px; transition:color .15s;
}
.fa-acct__delete .elementor-button:hover, .fa-acct__delete .elementor-button:focus{ background:none; color:var(--danger); }
/* toast (printed outside the page wrapper) */
.fa-acct__toast{
  position:fixed; top:76px; left:50%; z-index:100040; display:flex; align-items:center; gap:10px; height:48px; padding:0 20px 0 8px; border-radius:999px;
  background:var(--navy); color:#fff; font:600 14px/1 Inter,sans-serif; white-space:nowrap; box-shadow:0 12px 32px rgba(2,2,62,.25);
  opacity:0; transform:translate(-50%,-8px); transition:opacity .2s ease-out, transform .2s ease-out;
}
.fa-acct__toast.is-on{ opacity:1; transform:translate(-50%,0); }
.fa-acct__toast[hidden]{ display:none; }
.fa-acct__toast-ic{ width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--royal); }
/* tablet 768–1199 */
@media (min-width:768px){
  .fa-acct{ gap:40px; padding:40px 32px 56px !important; }
  .fa-acct__h1 .elementor-heading-title{ font-size:40px; }
  .fa-acct__grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .fa-acct__toast{ top:84px; }
}
/* desktop ≥ 1200 */
@media (min-width:1200px){
  .fa-acct{ grid-template-columns:minmax(0,1fr) 360px; gap:48px; padding:48px 40px 72px !important; }
  .fa-acct__h1 .elementor-heading-title{ font-size:46px; }
  .fa-acct__side{ position:sticky; top:104px; } /* 24px below the 80px sticky header */
  .fa-acct__pill{ display:none !important; }
  .fa-acct__profile{ display:flex !important; }
  .fa-acct__toast{ top:96px; }
}
@media (prefers-reduced-motion:reduce){ .fa-acct__toast, .fa-acct__card, .fa-acct__chip{ transition:none; } }

/* ==== J. WISHLIST · /wishlist/ (draft page 58201 · Wishlist option 1a)
   Header: native widgets. Tabs, toolbar, items, bar + toast: snippet
   "FA · Wishlist page" ([fa_wishlist] parts + script). One item markup
   serves the grid card and the list row (.is-list on the panel).
   < 768 2-up, search on its own row · 768–1199 3-up · ≥ 1200 4-up ==== */
.fa-wl{ --display:flex; display:flex !important; flex-direction:column; --align-items:stretch; align-items:stretch !important; gap:16px !important; width:100%; max-width:1320px !important; margin:0 auto !important; padding:24px 16px 32px !important; font-family:Inter,sans-serif; color:var(--navy); }
.fa-wl *, .fa-wl *::before, .fa-wl *::after{ box-sizing:border-box; }
.fa-wl a{ text-decoration:none !important; }
.fa-wl a:focus-visible, .fa-wl button:focus-visible, .fa-wl input:focus-visible, .fa-wl select:focus-visible{ outline:2px solid var(--royal); outline-offset:2px; }
.fa-wl svg{ flex:none; }
.fa-wl > .elementor-element{ width:100%; }
/* header */
.fa-wl__head{ max-width:760px; gap:12px !important; --align-items:stretch; align-items:stretch !important; }
.fa-wl .elementor-heading-title{ text-align:left; }
.fa-wl__eyebrow .elementor-heading-title{ margin:0; font:700 12px/1.2 Inter,sans-serif; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.fa-wl__h1 .elementor-heading-title{ margin:0; font:800 34px/1.05 Montserrat,sans-serif; letter-spacing:-.03em; color:var(--navy); }
.fa-wl__accent{ color:var(--royal); }
.fa-wl__intro .elementor-heading-title{ margin:0; font:400 15px/1.55 Inter,sans-serif; color:var(--muted); text-wrap:pretty; }
/* tabs */
.fa-wl__w-tabs{ margin-top:8px; }
.fa-wl__tabs{ display:grid; grid-template-columns:1fr 1fr; height:52px; padding:4px; border-radius:999px; background:var(--soft); }
.fa-wl .fa-wl__tab{ display:flex; align-items:center; justify-content:center; gap:8px; height:44px; margin:0; padding:0 12px; border:0; border-radius:999px; background:transparent; box-shadow:none; color:var(--muted); font:700 15px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; cursor:pointer; transition:background-color .2s, box-shadow .2s, color .2s; }
.fa-wl .fa-wl__tab:hover, .fa-wl .fa-wl__tab:focus{ background:transparent; color:var(--navy); }
.fa-wl .fa-wl__tab[aria-selected="true"]{ background:#fff; color:var(--navy); box-shadow:0 1px 4px rgba(2,2,62,.14); }
.fa-wl__count{ min-width:24px; height:22px; padding:0 7px; border-radius:999px; display:flex; align-items:center; justify-content:center; background:var(--wl-off); color:var(--muted); font:700 12px/1 Inter,sans-serif; }
.fa-wl__tab[aria-selected="true"] .fa-wl__count{ background:var(--royal); color:#fff; }
/* toolbar */
.fa-wl__toolbar{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.fa-wl__search{ flex:1 1 100%; min-width:0; display:flex; align-items:center; gap:10px; height:48px; margin:0; padding:0 8px 0 14px; border-radius:999px; background:var(--soft); color:var(--muted); cursor:text; }
.fa-wl__search input{ flex:1; min-width:0; width:100%; height:100% !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; outline:0; font:500 15px/1 Inter,sans-serif; color:var(--navy); -webkit-appearance:none; appearance:none; }
.fa-wl__search input::placeholder{ color:var(--muted); opacity:1; }
.fa-wl__search input::-webkit-search-cancel-button{ -webkit-appearance:none; display:none; }
.fa-wl .fa-wl__clear{ position:relative; flex:none; width:32px; height:32px; margin:0; padding:0; border:0; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--line); color:var(--navy); box-shadow:none; cursor:pointer; }
.fa-wl .fa-wl__clear::after{ content:""; position:absolute; inset:-6px; } /* 44px tap area */
.fa-wl .fa-wl__clear[hidden]{ display:none; }
.fa-wl__sort{ position:relative; flex:1 1 0; min-width:0; display:block; }
.fa-wl__sort select{ display:block; width:100%; height:48px; margin:0; padding:0 38px 0 16px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); font:600 14px/1 Inter,sans-serif; box-shadow:none; -webkit-appearance:none; appearance:none; cursor:pointer; }
.fa-wl__sort svg{ position:absolute; right:16px; top:16px; color:var(--navy); pointer-events:none; }
.fa-wl__views{ display:flex; gap:2px; height:48px; padding:2px; border-radius:999px; background:var(--soft); }
.fa-wl .fa-wl__views button{ width:48px; height:44px; margin:0; padding:0; border:0; border-radius:999px; display:flex; align-items:center; justify-content:center; background:transparent; color:var(--muted); box-shadow:none; cursor:pointer; transition:background-color .15s, color .15s; }
.fa-wl .fa-wl__views button:hover, .fa-wl .fa-wl__views button:focus{ background:transparent; color:var(--navy); }
.fa-wl .fa-wl__views button[aria-pressed="true"]{ background:#fff; color:var(--navy); box-shadow:0 1px 3px rgba(2,2,62,.14); }
.fa-wl .fa-wl__select{ display:flex; align-items:center; justify-content:center; gap:8px; width:48px; height:48px; margin:0; padding:0; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; transition:background-color .15s; }
.fa-wl .fa-wl__select span{ display:none; }
.fa-wl .fa-wl__select:hover, .fa-wl .fa-wl__select:focus{ background:var(--soft-blue); color:var(--navy); }
.fa-wl .fa-wl__done{ height:48px; margin:0; padding:0 20px; border:0; border-radius:999px; background:var(--navy); color:#fff; font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; }
.fa-wl .fa-wl__done:hover, .fa-wl .fa-wl__done:focus{ background:var(--royal); color:#fff; }
.fa-wl .fa-wl__select[hidden], .fa-wl .fa-wl__done[hidden]{ display:none; }
/* items · grid card (photo 4:5 for every item so rows line up) */
.fa-wl__items{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.fa-wl__items[hidden], .fa-wl__item[hidden]{ display:none; }
.fa-wl__item{ position:relative; min-width:0; border-radius:20px; overflow:hidden; background:var(--soft); transition:box-shadow .15s; }
.fa-wl__link{ display:block; color:var(--navy) !important; }
.fa-wl__media{ position:relative; display:block; aspect-ratio:4/5; background:var(--img); }
.fa-wl__media .fa-wl__img{ position:absolute; inset:0; display:block; width:100% !important; height:100% !important; max-width:none; object-fit:cover; border-radius:0; }
.fa-wl__score{ position:absolute; left:8px; bottom:8px; height:30px; padding:0 3px 0 9px; border-radius:999px; display:flex; align-items:center; gap:6px; background:#fff; pointer-events:none; }
.fa-wl__score-k{ font:800 10px/1 Inter,sans-serif; }
.fa-wl__score-v{ height:24px; min-width:36px; padding:0 6px; border-radius:999px; display:flex; align-items:center; justify-content:center; color:#fff; font:800 13px/1 Montserrat,sans-serif; }
.fa-wl__tone--hi{ background:var(--ok); }
.fa-wl__tone--mid{ background:var(--royal); }
.fa-wl__tone--lo{ background:var(--warn); }
.fa-wl__dim{ position:absolute; inset:0; background:transparent; pointer-events:none; transition:background-color .15s; }
.fa-wl__text{ display:flex; flex-direction:column; gap:2px; padding:10px 12px 12px; min-width:0; }
.fa-wl__t1{ font:700 14px/1.3 Inter,sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fa-wl__t2{ font:400 13px/1.35 Inter,sans-serif; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fa-wl__meta{ display:flex; align-items:center; gap:8px; margin-top:4px; font:700 13px/1.3 Inter,sans-serif; color:var(--navy); }
.fa-wl__meta:empty{ display:none; }
.fa-wl__chip{ display:none; height:22px; padding:0 8px; border-radius:999px; align-items:center; color:#fff; font:800 12px/1 Montserrat,sans-serif; }
.fa-wl .fa-wl__heart{ position:absolute; top:8px; right:8px; z-index:2; width:44px; height:44px; margin:0; padding:0; border:0; border-radius:50%; display:flex; align-items:center; justify-content:center; background:#fff; color:var(--royal); box-shadow:0 2px 8px rgba(2,2,62,.12); cursor:pointer; transition:color .15s; }
.fa-wl .fa-wl__heart:hover, .fa-wl .fa-wl__heart:focus{ background:#fff; color:var(--navy); }
.fa-wl__heart svg path{ fill:currentColor; }
.fa-wl__check{ display:none; position:absolute; top:10px; right:10px; z-index:2; width:28px; height:28px; border:2px solid var(--am-grab); border-radius:50%; background:rgba(255,255,255,.9); color:#fff; align-items:center; justify-content:center; pointer-events:none; }
.fa-wl__check svg{ opacity:0; }
/* select mode */
.fa-wl__panel.is-select .fa-wl__heart{ display:none; }
.fa-wl__panel.is-select .fa-wl__check{ display:flex; }
.fa-wl__item.is-picked{ box-shadow:0 0 0 3px var(--royal); }
.fa-wl__item.is-picked .fa-wl__check{ border-color:var(--royal); background:var(--royal); }
.fa-wl__item.is-picked .fa-wl__check svg{ opacity:1; }
.fa-wl__item.is-picked .fa-wl__dim{ background:rgba(0,75,252,.14); }
/* items · list row */
.fa-wl__panel.is-list .fa-wl__items{ grid-template-columns:minmax(0,1fr); gap:8px; }
.fa-wl__panel.is-list .fa-wl__item{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:14px; padding:10px; border-radius:18px; }
.fa-wl__panel.is-list .fa-wl__link{ display:grid; grid-template-columns:72px minmax(0,1fr); align-items:center; gap:14px; min-width:0; }
.fa-wl__panel.is-list .fa-wl__media{ width:72px; border-radius:12px; overflow:hidden; }
.fa-wl__panel.is-list .fa-wl__score{ display:none; }
.fa-wl__panel.is-list .fa-wl__chip{ display:inline-flex; }
.fa-wl__panel.is-list .fa-wl__text{ padding:0; }
.fa-wl__panel.is-list .fa-wl__t1{ font-size:15px; }
.fa-wl__panel.is-list .fa-wl__meta{ margin-top:6px; }
.fa-wl__panel.is-list .fa-wl__heart{ position:static; box-shadow:none; }
.fa-wl__panel.is-list.is-select .fa-wl__item{ grid-template-columns:minmax(0,1fr); }
.fa-wl__panel.is-list.is-select .fa-wl__link{ grid-template-columns:32px 72px minmax(0,1fr); }
.fa-wl__panel.is-list .fa-wl__check{ position:static; margin-left:4px; }
/* empty + no results */
.fa-wl__empty, .fa-wl__nomatch{ display:flex; flex-direction:column; align-items:center; gap:12px; padding:48px 20px; border-radius:24px; text-align:center; }
.fa-wl__empty{ border:1.5px dashed var(--am-grab); }
.fa-wl__nomatch{ gap:10px; background:var(--soft); }
.fa-wl__empty[hidden], .fa-wl__nomatch[hidden]{ display:none; }
.fa-wl__empty-ic, .fa-wl__nomatch-ic{ width:56px; height:56px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--royal); }
.fa-wl__empty-ic{ background:var(--soft-blue); }
.fa-wl__nomatch-ic{ background:#fff; }
.fa-wl__empty-t{ display:block; font:800 20px/1.25 Montserrat,sans-serif; text-wrap:pretty; }
.fa-wl__empty-d{ display:block; max-width:300px; font:400 14px/1.5 Inter,sans-serif; color:var(--muted); text-wrap:pretty; }
.fa-wl .fa-wl__btn{ display:flex; align-items:center; height:48px; margin:4px 0 0; padding:0 22px; border-radius:999px; font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; transition:background-color .15s; }
.fa-wl .fa-wl__btn--solid{ border:0; background:var(--royal); color:#fff !important; }
.fa-wl .fa-wl__btn--solid:hover{ background:var(--navy); }
.fa-wl .fa-wl__btn--line{ border:1px solid var(--line); background:#fff; color:var(--navy); }
.fa-wl .fa-wl__btn--line:hover, .fa-wl .fa-wl__btn--line:focus{ background:var(--soft-blue); color:var(--navy); }
/* bulk bar + toast · fixed above the mobile bottom nav (--wl-dock is set by the script) */
.fa-wl__dock{ position:fixed; left:0; right:0; bottom:calc(var(--wl-dock, 0px) + 12px); z-index:99990; display:flex; flex-direction:column; align-items:center; gap:10px; pointer-events:none; }
.fa-wl__toast{ pointer-events:auto; display:flex; align-items:center; gap:14px; height:48px; padding:0 6px 0 18px; border-radius:999px; background:var(--navy); color:#fff; font:600 14px/1 Inter,sans-serif; white-space:nowrap; box-shadow:0 12px 32px rgba(2,2,62,.25); opacity:0; transform:translateY(8px); transition:opacity .2s ease-out, transform .2s ease-out; }
.fa-wl__toast.is-on{ opacity:1; transform:none; }
.fa-wl__toast[hidden], .fa-wl__bar[hidden]{ display:none; }
.fa-wl .fa-wl__undo{ position:relative; height:36px; margin:0; padding:0 14px; border:0; border-radius:999px; background:rgba(255,255,255,.14); color:#fff; font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; }
.fa-wl .fa-wl__undo::after{ content:""; position:absolute; inset:-4px; } /* 44px tap area */
.fa-wl .fa-wl__undo:hover, .fa-wl .fa-wl__undo:focus{ background:rgba(255,255,255,.14); color:var(--sky); }
.fa-wl__bar{ pointer-events:auto; display:flex; align-items:center; gap:4px; width:calc(100% - 24px); height:60px; padding:0 8px 0 18px; border-radius:999px; background:var(--navy); color:#fff; box-shadow:0 12px 32px rgba(2,2,62,.25); }
.fa-wl__picked{ flex:1; font:700 15px/1 Inter,sans-serif; white-space:nowrap; }
.fa-wl .fa-wl__all{ height:44px; margin:0; padding:0 12px; border:0; border-radius:999px; background:none; color:#fff; font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; white-space:nowrap; cursor:pointer; }
.fa-wl .fa-wl__all:hover, .fa-wl .fa-wl__all:focus{ background:none; color:var(--sky); }
.fa-wl .fa-wl__remove{ display:flex; align-items:center; gap:6px; height:44px; margin:0; padding:0 16px; border:0; border-radius:999px; background:var(--danger); color:#fff; font:700 14px/1 Inter,sans-serif; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; }
.fa-wl .fa-wl__remove:hover, .fa-wl .fa-wl__remove:focus{ background:var(--danger); color:#fff; }
.fa-wl .fa-wl__remove:disabled{ opacity:.45; cursor:default; }
/* tablet 768–1199 */
@media (min-width:768px){
  .fa-wl{ padding:40px 32px !important; }
  .fa-wl__h1 .elementor-heading-title{ font-size:44px; }
  .fa-wl__intro .elementor-heading-title{ font-size:16px; }
  .fa-wl__w-tabs{ margin-top:16px; }
  .fa-wl__tabs{ max-width:440px; }
  .fa-wl__search{ flex:1 1 260px; }
  .fa-wl__sort{ flex:0 0 220px; }
  .fa-wl .fa-wl__select{ width:auto; padding:0 18px; }
  .fa-wl .fa-wl__select span{ display:inline; }
  .fa-wl__items{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
  .fa-wl__bar{ width:560px; }
}
/* desktop ≥ 1200 */
@media (min-width:1200px){
  .fa-wl{ padding:48px !important; }
  .fa-wl__h1 .elementor-heading-title{ font-size:56px; }
  .fa-wl__intro .elementor-heading-title{ font-size:17px; }
  .fa-wl__w-tabs{ margin-top:20px; }
  .fa-wl__search{ flex:1 1 320px; }
  .fa-wl__sort{ flex:0 0 230px; }
  .fa-wl__items{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
  .fa-wl__bar{ width:600px; }
}
@media (prefers-reduced-motion:reduce){ .fa-wl .fa-wl__tab, .fa-wl__toast, .fa-wl__item, .fa-wl__dim{ transition:none; } }


/* ==== K. HEADER SEARCH · Search button + divider before the wishlist (Search Anywhere 2c, frames 1–3, 6, 7) ====
   Markup: widget 01a-3a, inside the right-group row 01a-3 with the actions (01a-3b) and the panel host (01a-3c).
   Desktop only (≥1025px). On the homepage the button keeps its space but stays hidden while the hero
   search bar is on screen; the script in 01a-3c adds .is-shown once it scrolls away. */
.fa-hdr .fa-hdr__act-row{justify-self:end;width:auto!important;max-width:none!important;flex-wrap:nowrap!important;gap:0!important;padding:0!important}
.fa-hdr .fa-hdr__act-row>.elementor-widget{width:auto!important;max-width:none!important;flex:none!important}
.fa-hdr .fa-hs-host{position:absolute!important;width:0!important;height:0!important;overflow:visible!important}
.fa-hdr .fa-hs-btnw{display:flex;align-items:center;transition:opacity .2s ease,transform .2s ease,visibility 0s linear 0s}
body.home .fa-hdr .fa-hs-btnw:not(.is-shown){visibility:hidden;opacity:0;transform:translateX(4px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
.fa-hdr .fa-hs-btn{
  display:inline-flex;align-items:center;gap:8px;height:44px;margin:0;padding:0 16px 0 12px;
  border:0;border-radius:999px;background:transparent;box-shadow:none;
  font:600 14px/1 Inter,sans-serif;letter-spacing:0;text-transform:none;color:var(--navy);
  cursor:pointer;transition:background-color .15s ease;
}
.fa-hdr .fa-hs-btn:hover,.fa-hdr .fa-hs-btn:focus{background:var(--hover-soft);color:var(--navy)}
.fa-hdr .fa-hs-btn:focus-visible{outline:2px solid var(--royal);outline-offset:2px}
.fa-hdr .fa-hs-btn svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.fa-hdr .fa-hs-btn.is-open{background:var(--lavender)}
.fa-hdr .fa-hs-btn.is-open svg{color:var(--royal)}
.fa-hdr .fa-hs-sep{width:1px;height:24px;margin:0 10px;background:var(--hs-line)}
@media (max-width:1024px){.fa-hdr .fa-hs-btnw{display:none}}

/* ==== L. SEARCH PANEL · opens below the header (frames 3, 7) ====
   Markup + JS: widget 01a-3c. The script moves .fa-hs to the end of <body> (above every sticky
   element) and sets html.fa-hs-open, which raises the header so the panel never covers it.
   The bar and its pop-ups are the homepage finder bar (fa_finder_bar, its own CSS). */
.fa-hs{position:fixed;inset:0;z-index:100001;visibility:hidden;pointer-events:none;transition:visibility 0s linear .22s;font-family:Inter,sans-serif;color:var(--navy)}
.fa-hs.is-open{visibility:visible;pointer-events:auto;transition:none}
.fa-hs svg{flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html.fa-hs-open .fa-hdr{z-index:100003!important}
@media (max-width:1024px){.fa-hs{display:none!important}}
/* overlay: from the header's bottom edge to the bottom of the screen */
.fa-hs .fa-hs-scrim{position:absolute;left:0;right:0;top:var(--hs-top,80px);bottom:0;background:var(--hs-scrim);opacity:0;transition:opacity .2s ease}
.fa-hs.is-open .fa-hs-scrim{opacity:1}
/* panel: slides down 12px and fades in */
.fa-hs .fa-hs-panel{
  position:absolute;left:0;right:0;top:var(--hs-top,80px);z-index:1;padding:18px 0 28px;
  background:var(--white);border-radius:0 0 28px 28px;box-shadow:var(--hs-shadow);
  opacity:0;transform:translateY(-12px);transition:opacity .22s ease-out,transform .22s ease-out;
}
.fa-hs.is-open .fa-hs-panel{opacity:1;transform:none}
.fa-hs .fa-hs-in{width:min(1200px,calc(100vw - 80px));margin:0 auto}
@media (max-width:1359px){.fa-hs .fa-hs-in{width:calc(100vw - 120px)}}
.fa-hs .fa-db{max-width:none; display:block}   /* shown before its script runs (lists may still be loading) */
.fa-hs .fa-db-panel--kw{display:none!important}   /* Shop for lives in row 3 here */
.fa-hs .fa-db-kw{caret-color:var(--royal)}
/* top row · caption + Esc to close */
.fa-hs .fa-hs-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.fa-hs .fa-hs-cap{font:700 11px/1.2 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--hs-muted)}
.fa-hs .fa-hs-esc{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0;padding:0 4px;border:0;background:none;box-shadow:none;font:500 12px/1 Inter,sans-serif;letter-spacing:0;text-transform:none;color:var(--hs-muted);cursor:pointer}
.fa-hs .fa-hs-esc:hover,.fa-hs .fa-hs-esc:focus{background:none;color:var(--navy)}
.fa-hs .fa-hs-esc:focus-visible{outline:2px solid var(--royal);outline-offset:2px;border-radius:8px}
.fa-hs .fa-hs-esc kbd{display:inline-flex;align-items:center;height:22px;padding:0 7px;border:1px solid var(--hs-line);border-radius:7px;background:var(--hs-key);box-shadow:none;font:600 11px/1 Inter,sans-serif;color:var(--navy)}
/* row 3 · SHOP FOR switch + POPULAR chips */
.fa-hs .fa-hs-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;margin-top:20px}
.fa-hs .fa-hs-shop{display:flex;align-items:center;gap:10px}
.fa-hs .fa-hs-shop .fa-hs-cap{letter-spacing:.12em}
.fa-hs .fa-hs-seg{display:flex;gap:4px;padding:2px;border-radius:12px;background:var(--tray)}
.fa-hs .fa-hs-seg button{
  height:40px;min-width:78px;margin:0;padding:0 14px;border:0;border-radius:10px;background:none;box-shadow:none;
  font:600 14px/1 Inter,sans-serif;letter-spacing:0;text-transform:none;color:var(--ink-2);cursor:pointer;
  transition:background-color .15s ease,color .15s ease;
}
.fa-hs .fa-hs-seg button:hover,.fa-hs .fa-hs-seg button:focus{background:none;color:var(--navy)}
.fa-hs .fa-hs-seg button:focus-visible{outline:2px solid var(--royal);outline-offset:1px}
.fa-hs .fa-hs-seg button[aria-pressed="true"]{background:var(--white);box-shadow:0 1px 3px rgba(2,2,62,.12);font-weight:700;color:var(--royal)}
.fa-hs .fa-hs-seg button[hidden]{display:none}
.fa-hs .fa-hs-rowdiv{width:1px;height:24px;background:var(--hs-line)}
/* POPULAR chips · same look as the homepage chips (38px, hit area 44px) */
.fa-hs .fa-hs-pop{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}
.fa-hs .fa-hs-pop .fa-hs-cap{margin-right:6px;letter-spacing:.12em}
.fa-hs .fa-hs-pop a{
  position:relative;display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 15px;
  border:1px solid var(--line);border-radius:999px;background:var(--white);
  font:600 14px/1 Inter,sans-serif;color:var(--navy)!important;text-decoration:none!important;white-space:nowrap;
  transition:border-color .15s ease,color .15s ease;
}
.fa-hs .fa-hs-pop a::after{content:"";position:absolute;left:0;right:0;top:-3px;bottom:-3px}
.fa-hs .fa-hs-pop a svg{width:16px;height:16px}
.fa-hs .fa-hs-pop a:hover,.fa-hs .fa-hs-pop a:focus-visible{border-color:var(--royal);color:var(--royal)!important;outline:0}
@media (prefers-reduced-motion:reduce){
  .fa-hs .fa-hs-panel,.fa-hs .fa-hs-scrim,.fa-hdr .fa-hs-btnw{transition:none!important}
  .fa-hs .fa-hs-panel{transform:none!important}
}/* End custom CSS */