/* Five & Co. Phase 2J theme engine. Layout/navigation stay unchanged; only palette and seasonal hero art change. */
:root{--fc-primary:#b85f69;--fc-primary-dark:#9d4d57;--fc-soft:#f6e9e7;--fc-accent:#b98a55;--fc-page:#fffaf7;--fc-page2:#fbf4ef;--fc-line:#eadbd4;--fc-heading:#474241;--fc-muted:#7c7470;--fc-hero-image:none}
html[data-fiveco-theme="halloween"]{--fc-primary:#d66a18;--fc-primary-dark:#a8490b;--fc-soft:#fff0df;--fc-accent:#e49032;--fc-page:#fff8ef;--fc-page2:#f6eee5;--fc-line:#e6c6a8;--fc-heading:#3d3027;--fc-muted:#76675d;--fc-hero-image:url('../images/themes/halloween-hero.jpg')}
html[data-fiveco-theme="thanksgiving"]{--fc-primary:#a75b23;--fc-primary-dark:#7c3f17;--fc-soft:#f8eadc;--fc-accent:#c4873e;--fc-page:#fff9ef;--fc-page2:#f8eee2;--fc-line:#e5cbb2;--fc-heading:#49362a;--fc-muted:#75665c;--fc-hero-image:url('../images/themes/thanksgiving-hero.jpg')}
html[data-fiveco-theme="christmas"]{--fc-primary:#a51f32;--fc-primary-dark:#7d1423;--fc-soft:#f8e8e8;--fc-accent:#b9974d;--fc-page:#fffaf6;--fc-page2:#f7efea;--fc-line:#e6c9c9;--fc-heading:#442e2d;--fc-muted:#766765;--fc-hero-image:url('../images/themes/christmas-hero.jpg')}
html[data-fiveco-theme="valentines"]{--fc-primary:#cf5e79;--fc-primary-dark:#a7445c;--fc-soft:#fde9ef;--fc-accent:#c78b97;--fc-page:#fff8fa;--fc-page2:#fceff3;--fc-line:#efced8;--fc-heading:#4a343b;--fc-muted:#7b686e;--fc-hero-image:url('../images/themes/valentines-hero.jpg')}
html[data-fiveco-theme="july4"]{--fc-primary:#214f8d;--fc-primary-dark:#163864;--fc-soft:#eaf1fa;--fc-accent:#b4434a;--fc-page:#f8fbff;--fc-page2:#eef4fa;--fc-line:#cbd9e8;--fc-heading:#26384f;--fc-muted:#657184;--fc-hero-image:url('../images/themes/july4-hero.jpg')}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]){--rose:var(--fc-primary);--rose-dark:var(--fc-primary-dark);--rose-soft:var(--fc-soft);--gold:var(--fc-accent);--cream:var(--fc-page);--line:var(--fc-line);--ink:var(--fc-heading);--muted:var(--fc-muted)}
/* Public homepage */
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) body{background:linear-gradient(135deg,var(--fc-page) 0%,#fff 48%,var(--fc-page2) 100%)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .site-header{border-top-color:var(--fc-primary);border-bottom-color:var(--fc-line)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .main-nav a:hover,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .main-nav .active,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .member-link,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .eyebrow,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .ornament{color:var(--fc-primary);border-color:var(--fc-primary)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .hero{background:linear-gradient(90deg,var(--fc-page) 0%,#fff 47%,var(--fc-page2) 100%)}


html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .btn-primary{background:var(--fc-primary)!important;border-color:var(--fc-primary)!important;color:#fff!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .btn-primary:hover{background:var(--fc-primary-dark)!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .btn-outline{border-color:var(--fc-primary)!important;color:var(--fc-primary)!important;background:#fff!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .btn-outline:hover{background:var(--fc-soft)!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .benefits{background:var(--fc-page);border-color:var(--fc-line)}
/* Authenticated/member/admin surfaces: same structure, recolored accents. */
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-shell,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) body{--rose:var(--fc-primary);--rose-dark:var(--fc-primary-dark);--rose-soft:var(--fc-soft);--gold:var(--fc-accent);--line:var(--fc-line);--ink:var(--fc-heading);--muted:var(--fc-muted)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-header{border-bottom-color:var(--fc-line)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-links a.active,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-links a:hover,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .link-btn,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .page-kicker,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .stat strong{color:var(--fc-primary)!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .mini{border-color:var(--fc-primary);color:var(--fc-primary)}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .mini.primary{background:var(--fc-primary);color:#fff}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .field input:focus,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .field select:focus,html[data-fiveco-theme]:not([data-fiveco-theme="default"]) textarea:focus{border-color:var(--fc-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--fc-primary) 12%,transparent)!important}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .badge:not(.green):not(.gray){background:var(--fc-soft);color:var(--fc-primary-dark)}
/* Theme management */
.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.theme-choice{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px;text-align:left;cursor:pointer;transition:.15s}.theme-choice:hover{border-color:var(--rose);transform:translateY(-1px)}.theme-choice.active{border:2px solid var(--rose);background:var(--rose-soft)}.theme-choice strong{display:block;font:600 22px/1.1 "Cormorant Garamond",serif;margin-bottom:4px}.theme-choice span{font-size:11px;color:var(--muted)}.theme-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.theme-schedule{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.theme-preview-bar{height:9px;border-radius:99px;background:linear-gradient(90deg,var(--preview-primary),var(--preview-accent));margin:10px 0}
@media(max-width:800px){.theme-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.theme-grid,.theme-schedule{grid-template-columns:1fr}}


/* --------------------------------------------------------------------------
   Phase 2J correction: structural theme lock.
   Themes may recolor and change seasonal imagery, but they cannot re-layout
   the approved homepage.
   -------------------------------------------------------------------------- */
.hero-floral{display:none!important}
.hero-art{border-radius:0!important}

/* Holiday raster art is intentionally cropped to the clean right side of the
   image so embedded mockup copy/buttons never appear in the production hero. */
html[data-fiveco-theme="halloween"] .hero-art,
html[data-fiveco-theme="thanksgiving"] .hero-art,
html[data-fiveco-theme="christmas"] .hero-art,
html[data-fiveco-theme="valentines"] .hero-art,
html[data-fiveco-theme="july4"] .hero-art{background-image:url('../images/themes/july4-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}
html[data-fiveco-theme="halloween"] .hero-art{background-image:url('../images/themes/halloween-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}
html[data-fiveco-theme="thanksgiving"] .hero-art{background-image:url('../images/themes/thanksgiving-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}
html[data-fiveco-theme="christmas"] .hero-art{background-image:url('../images/themes/christmas-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}
html[data-fiveco-theme="valentines"] .hero-art{background-image:url('../images/themes/valentines-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}
html[data-fiveco-theme="july4"] .hero-art{background-image:url('../images/themes/july4-hero-approved.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important}

/* The default logo file is never replaced. Seasonal branding is created by a
   subtle theme frame/ornament so dimensions and navigation spacing remain fixed. */
.brand,.app-logo{position:relative;isolation:isolate}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .brand img,
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-logo img{
  border-radius:0!important;
  outline:1px solid color-mix(in srgb,var(--fc-primary) 45%,transparent);
  outline-offset:3px;
  filter:saturate(.93) contrast(1.02);
}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .brand::after,
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .app-logo::after{
  position:absolute;right:-9px;top:-10px;z-index:3;
  width:24px;height:24px;display:grid;place-items:center;
  border-radius:50%;background:#fff;color:var(--fc-primary);
  border:1px solid var(--fc-line);font-size:14px;line-height:1;
  box-shadow:0 3px 10px rgba(0,0,0,.09)
}
html[data-fiveco-theme="halloween"] .brand::after,html[data-fiveco-theme="halloween"] .app-logo::after{content:"◆";background:#221811;color:#f28a24}
html[data-fiveco-theme="thanksgiving"] .brand::after,html[data-fiveco-theme="thanksgiving"] .app-logo::after{content:"❧";color:#a75b23}
html[data-fiveco-theme="christmas"] .brand::after,html[data-fiveco-theme="christmas"] .app-logo::after{content:"❄";color:#a51f32}
html[data-fiveco-theme="valentines"] .brand::after,html[data-fiveco-theme="valentines"] .app-logo::after{content:"♥";color:#cf5e79}
html[data-fiveco-theme="july4"] .brand::after,html[data-fiveco-theme="july4"] .app-logo::after{content:"★";color:#214f8d}

/* Store category buttons inherit the active holiday palette. */
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter{
  border-color:var(--fc-primary)!important;color:var(--fc-primary-dark)!important;
  background:color-mix(in srgb,var(--fc-page) 88%,#fff)!important;
  box-shadow:0 3px 10px color-mix(in srgb,var(--fc-primary) 10%,transparent)
}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter:hover,
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter.active{
  background:var(--fc-primary)!important;color:#fff!important;border-color:var(--fc-primary)!important
}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter.clearance-filter{
  border-color:var(--fc-accent)!important;color:var(--fc-primary-dark)!important
}
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter.clearance-filter:hover,
html[data-fiveco-theme]:not([data-fiveco-theme="default"]) .category-filter.clearance-filter.active{
  background:var(--fc-accent)!important;color:#fff!important
}

/* Sitewide seasonal effects. Decorative layer never intercepts clicks. */
.seasonal-effects{position:fixed;inset:0;z-index:9990;overflow:hidden;pointer-events:none}
.seasonal-effects span{position:absolute;left:var(--x);top:-8vh;font-size:var(--size);opacity:.55;animation:fivecoFall var(--dur) linear var(--delay) infinite;will-change:transform}
.seasonal-effects.seasonal-subtle span{opacity:.28}
.seasonal-halloween span{animation-name:fivecoHalloween;filter:drop-shadow(0 2px 2px rgba(0,0,0,.15))}
.seasonal-july4 span{animation-name:fivecoFlag}
.seasonal-valentines span{opacity:.38}
@keyframes fivecoFall{0%{transform:translate3d(0,-8vh,0) rotate(0)}100%{transform:translate3d(28px,110vh,0) rotate(320deg)}}
@keyframes fivecoHalloween{0%{transform:translate3d(0,-10vh,0) rotate(-5deg)}45%{transform:translate3d(14px,48vh,0) rotate(8deg)}100%{transform:translate3d(-8px,110vh,0) rotate(-6deg)}}
@keyframes fivecoFlag{0%{transform:translate3d(0,-8vh,0) rotate(-4deg)}50%{transform:translate3d(18px,52vh,0) rotate(7deg)}100%{transform:translate3d(-6px,110vh,0) rotate(-4deg)}}
@media(prefers-reduced-motion:reduce){.seasonal-effects{display:none!important}}

/* Theme-aware homepage popup */
.popup-open{overflow:hidden}
.fiveco-home-popup{position:fixed;inset:0;z-index:12000;background:rgba(47,40,38,.5);display:flex;align-items:center;justify-content:center;padding:18px}
.fiveco-popup-card{position:relative;width:min(500px,100%);max-height:88vh;overflow:auto;text-align:center;background:var(--fc-page,#fffaf7);border:1px solid var(--fc-line,#eadbd4);border-radius:10px;padding:30px;box-shadow:0 24px 70px rgba(40,30,25,.26)}
.fiveco-popup-card::before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--fc-primary,#b85f69),var(--fc-accent,#b98a55))}
.fiveco-popup-close{position:absolute;right:12px;top:12px;border:0;background:transparent;color:var(--fc-heading,#474241);font-size:28px;cursor:pointer}
.fiveco-popup-image{display:block;width:100%;max-height:210px;object-fit:cover;border-radius:5px;margin:0 0 18px}
.fiveco-popup-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:600;color:var(--fc-primary,#b85f69);margin-bottom:8px}
.fiveco-popup-card h2{font:600 34px/1 "Cormorant Garamond",serif;margin:0 24px 13px;color:var(--fc-heading,#474241)}
.fiveco-popup-card p{line-height:1.65;color:var(--fc-muted,#7c7470)}
.fiveco-popup-code{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px auto;padding:11px 14px;border:1px dashed var(--fc-primary,#b85f69);background:#fff;border-radius:5px;width:max-content;max-width:100%}
.fiveco-popup-code span{font:700 15px/1.2 Montserrat,sans-serif;letter-spacing:.08em;color:var(--fc-primary-dark,#9d4d57)}
.fiveco-popup-code button{border:0;background:none;color:var(--fc-primary,#b85f69);font-size:11px;font-weight:600;cursor:pointer}
.fiveco-popup-action{margin-top:6px}

html[data-fiveco-theme="christmas"] .brand::after,
html[data-fiveco-theme="christmas"] .app-logo::after{display:none!important;content:none!important}
html[data-fiveco-theme="christmas"] .brand img,
html[data-fiveco-theme="christmas"] .app-logo img{
 content:url('../images/themes/christmas-logo.png')!important;
 width:auto!important;max-width:100%!important;object-fit:contain!important;
 border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
}

/* Halloween approved asset correction - cumulative with Christmas fix */
html[data-fiveco-theme="halloween"] .brand::after,
html[data-fiveco-theme="halloween"] .app-logo::after{display:none!important;content:none!important}
html[data-fiveco-theme="halloween"] .brand img,
html[data-fiveco-theme="halloween"] .app-logo img{
  content:url('../images/themes/halloween-logo.png')!important;
  width:auto!important;max-width:100%!important;object-fit:contain!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
}

/* Thanksgiving approved asset correction - cumulative */
html[data-fiveco-theme="thanksgiving"] .brand::after,
html[data-fiveco-theme="thanksgiving"] .app-logo::after{display:none!important;content:none!important}
html[data-fiveco-theme="thanksgiving"] .brand img,
html[data-fiveco-theme="thanksgiving"] .app-logo img{
  content:url('../images/themes/thanksgiving-logo.png')!important;
  width:auto!important;max-width:100%!important;object-fit:contain!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
}

/* Approved Valentine's Day and 4th of July logo replacements */
html[data-fiveco-theme="valentines"] .brand::after,
html[data-fiveco-theme="valentines"] .app-logo::after,
html[data-fiveco-theme="july4"] .brand::after,
html[data-fiveco-theme="july4"] .app-logo::after{display:none!important;content:none!important}
html[data-fiveco-theme="valentines"] .brand img,
html[data-fiveco-theme="valentines"] .app-logo img{
  content:url('../images/themes/valentines-logo.png')!important;
  width:auto!important;max-width:100%!important;object-fit:contain!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
}
html[data-fiveco-theme="july4"] .brand img,
html[data-fiveco-theme="july4"] .app-logo img{
  content:url('../images/themes/july4-logo.png')!important;
  width:auto!important;max-width:100%!important;object-fit:contain!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
}

/* ===== Phase 2J seasonal experience upgrade ===== */

/* Christmas vintage C7/C9-inspired edge lights */
.fiveco-xmas-lights{position:fixed;inset:0;z-index:9989;pointer-events:none}
.fiveco-xmas-light{position:absolute;width:8px;height:15px;border-radius:55% 55% 48% 48%;background:var(--bulb);
  box-shadow:0 0 4px var(--bulb),0 0 9px color-mix(in srgb,var(--bulb) 65%,transparent);opacity:.78}
.fiveco-xmas-light::before{content:"";position:absolute;left:2px;top:-5px;width:4px;height:6px;border-radius:2px;background:#384332}
.fiveco-xmas-light.top{top:4px;left:var(--pos);transform:rotate(180deg)}
.fiveco-xmas-light.bottom{bottom:4px;left:var(--pos)}
.fiveco-xmas-light.left{left:4px;top:var(--pos);transform:rotate(90deg)}
.fiveco-xmas-light.right{right:4px;top:var(--pos);transform:rotate(-90deg)}
.fiveco-xmas-lights.animated .fiveco-xmas-light{animation:fivecoBulbGlow 3.8s ease-in-out var(--glow-delay) infinite alternate}
@keyframes fivecoBulbGlow{0%,35%{opacity:.58;filter:saturate(.9)}100%{opacity:.95;filter:saturate(1.15);box-shadow:0 0 5px var(--bulb),0 0 13px var(--bulb)}}


/* Halloween ambience and larger boutique ghost surprise */
.fiveco-halloween-mist{position:fixed;left:0;right:0;bottom:-20px;height:100px;z-index:9988;pointer-events:none;
 background:radial-gradient(ellipse at 30% 100%,rgba(242,235,222,.23),transparent 55%),
 radial-gradient(ellipse at 72% 100%,rgba(242,235,222,.18),transparent 58%);filter:blur(6px)}
.fiveco-bat{position:fixed;z-index:9991;pointer-events:none;font-size:17px;opacity:.42;animation:fivecoBatFly var(--batdur) linear forwards}
@keyframes fivecoBatFly{from{transform:translate3d(-50px,var(--baty),0) rotate(-8deg)}50%{transform:translate3d(52vw,calc(var(--baty) - 25px),0) rotate(8deg)}to{transform:translate3d(calc(100vw + 80px),var(--baty),0) rotate(-5deg)}}
.fiveco-ghost-event{position:fixed;z-index:10020;pointer-events:none;width:min(330px,42vw);height:330px;display:grid;place-items:center}
.fiveco-ghost-event.from-left{left:-360px;bottom:8vh;animation:ghostLeft 7s ease-in-out forwards}
.fiveco-ghost-event.from-right{right:-360px;bottom:10vh;animation:ghostRight 7s ease-in-out forwards}
.fiveco-ghost-event.from-bottom{left:calc(50% - 165px);bottom:-360px;animation:ghostBottom 7s ease-in-out forwards}
@keyframes ghostLeft{0%,100%{transform:translateX(0)}22%,70%{transform:translateX(365px)}}
@keyframes ghostRight{0%,100%{transform:translateX(0)}22%,70%{transform:translateX(-365px)}}
@keyframes ghostBottom{0%,100%{transform:translateY(0)}22%,70%{transform:translateY(-365px)}}
.fiveco-ghost{position:relative;width:190px;height:225px;background:rgba(253,251,245,.96);border-radius:52% 52% 33% 33% / 48% 48% 18% 18%;
 filter:drop-shadow(0 14px 24px rgba(34,25,20,.22));animation:ghostFloat 1.8s ease-in-out infinite}
.fiveco-ghost::after{content:"";position:absolute;left:0;right:0;bottom:-18px;height:50px;background:rgba(253,251,245,.96);
 clip-path:polygon(0 0,14% 55%,28% 10%,42% 60%,57% 8%,72% 58%,87% 12%,100% 50%,100% 0)}
.fiveco-ghost-eye{position:absolute;top:72px;width:15px;height:23px;border-radius:50%;background:#29221f}
.fiveco-ghost-eye.one{left:58px}.fiveco-ghost-eye.two{right:58px}
.fiveco-ghost-mouth{position:absolute;left:86px;top:112px;width:20px;height:25px;background:#29221f;border-radius:50%}
@keyframes ghostFloat{50%{transform:translateY(-9px) rotate(1deg)}}
.fiveco-ghost-prop{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3}
.ghost-purse{width:74px;height:52px;border-radius:8px;background:#b96843;border:2px solid #d6a25c;box-shadow:inset 0 0 0 2px rgba(255,255,255,.2)}
.ghost-purse::before{content:"";position:absolute;width:42px;height:28px;border:4px solid #d6a25c;border-bottom:0;border-radius:24px 24px 0 0;left:14px;top:-23px}
.ghost-shopping{width:72px;height:66px;background:#1f1a18;border:2px solid #e18a2d;border-radius:3px}
.ghost-shopping::before{content:"";position:absolute;width:38px;height:20px;border:3px solid #e18a2d;border-bottom:0;border-radius:18px 18px 0 0;left:14px;top:-17px}
.ghost-perfume{width:48px;height:62px;border:2px solid #d3ad8c;border-radius:7px;background:linear-gradient(#fff8f4,#efc6b0);box-shadow:inset 0 0 12px rgba(255,255,255,.7)}
.ghost-perfume::before{content:"";position:absolute;width:22px;height:11px;background:#bda17e;left:11px;top:-11px;border-radius:3px 3px 0 0}
.fiveco-ghost-copy{position:absolute;left:170px;top:30px;min-width:145px;background:#fff;border:2px solid #ef8a2d;border-radius:22px;padding:10px 13px;color:#362a25;
 font:700 19px/1.05 "Cormorant Garamond",serif;text-align:center;opacity:0;transform:scale(.7);animation:ghostCopy 7s ease forwards}
.fiveco-ghost-copy::after{content:"";position:absolute;left:-13px;bottom:10px;border:8px solid transparent;border-right-color:#ef8a2d}
.fiveco-ghost-event.from-right .fiveco-ghost-copy{left:auto;right:170px}
.fiveco-ghost-event.from-right .fiveco-ghost-copy::after{left:auto;right:-13px;border-right-color:transparent;border-left-color:#ef8a2d}
@keyframes ghostCopy{0%,27%{opacity:0;transform:scale(.7)}34%,65%{opacity:1;transform:scale(1)}75%,100%{opacity:0;transform:scale(.85)}}
.fiveco-perfume-spray{position:absolute;left:145px;bottom:65px;width:135px;height:60px;opacity:0;color:#f0e2d7;
 font:700 34px/1 "Cormorant Garamond",serif;text-shadow:0 0 7px rgba(255,255,255,.9);letter-spacing:.1em;animation:perfumeBoo 7s ease forwards}
@keyframes perfumeBoo{0%,32%{opacity:0;transform:translateX(-15px) scale(.7);filter:blur(5px)}42%,60%{opacity:.92;transform:translateX(15px) scale(1);filter:blur(.5px)}72%,100%{opacity:0;transform:translateX(38px) scale(1.15);filter:blur(8px)}}

/* 4th of July */
.fiveco-july4-canvas{position:fixed;inset:0;z-index:9989;pointer-events:none}

@media(max-width:700px){
 .fiveco-xmas-light.left,.fiveco-xmas-light.right,.fiveco-xmas-light.bottom{display:none}
 .fiveco-ghost-event{width:250px;height:270px}.fiveco-ghost{width:145px;height:175px}
 .fiveco-ghost-eye{top:55px}.fiveco-ghost-eye.one{left:45px}.fiveco-ghost-eye.two{right:45px}.fiveco-ghost-mouth{left:65px;top:86px}
 .fiveco-ghost-copy{left:120px;top:24px;min-width:115px;font-size:15px}.fiveco-ghost-event.from-right .fiveco-ghost-copy{right:120px}
 .fiveco-ghost-event.from-bottom{left:calc(50% - 125px)}
}
@media(prefers-reduced-motion:reduce){
 .fiveco-xmas-lights.animated .fiveco-xmas-light{animation:none!important}
 .fiveco-july4-canvas,.fiveco-bat,.fiveco-ghost-event{display:none!important}
}

/* Halloween preview refinement: less cartoon-like ghost, retain falling bats/pumpkins */
.fiveco-ghost{background:transparent!important;border-radius:0!important;filter:drop-shadow(0 14px 24px rgba(10,8,7,.32))!important}
.fiveco-ghost::after{display:none!important}
.fiveco-ghost-sheet{
 position:absolute;inset:0 5px 5px;
 background:
   radial-gradient(ellipse at 50% 28%,rgba(255,255,250,.98) 0 31%,transparent 32%),
   radial-gradient(ellipse at 50% 50%,rgba(250,248,242,.94) 0 43%,rgba(238,235,229,.86) 58%,transparent 72%);
 border-radius:52% 52% 44% 44% / 45% 45% 58% 58%;
 opacity:.93;
 filter:drop-shadow(0 0 12px rgba(255,255,255,.18));
}
.fiveco-ghost-sheet::after{
 content:"";position:absolute;left:12%;right:12%;bottom:-14px;height:64px;
 background:linear-gradient(to bottom,rgba(246,244,238,.88),rgba(246,244,238,.18));
 clip-path:polygon(0 0,14% 48%,27% 10%,41% 58%,55% 8%,70% 54%,84% 12%,100% 47%,100% 0);
 filter:blur(.8px);
}
.fiveco-ghost-eye{z-index:2;background:#171515!important;box-shadow:0 0 8px rgba(0,0,0,.24)}
.fiveco-ghost-mouth{z-index:2;background:#171515!important;box-shadow:0 0 8px rgba(0,0,0,.2)}
.fiveco-ghost-prop{filter:drop-shadow(0 5px 7px rgba(0,0,0,.32))}

/* Halloween realistic skeleton surprise animation */
.fiveco-ghost-event{display:none!important}
.fiveco-skeleton-event{position:fixed;z-index:10020;pointer-events:none;width:min(390px,44vw);height:270px}
.fiveco-skeleton-photo{position:absolute;inset:0;overflow:hidden;border-radius:14px;filter:drop-shadow(0 16px 28px rgba(0,0,0,.42))}
.fiveco-skeleton-photo img{width:100%;height:100%;object-fit:cover;display:block;mix-blend-mode:screen;animation:fivecoSkeletonBreath 2.2s ease-in-out infinite}
.fiveco-skeleton-event.from-left{left:-430px;bottom:9vh;animation:fivecoSkeletonLeft 8s ease-in-out forwards}
.fiveco-skeleton-event.from-right{right:-430px;bottom:10vh;animation:fivecoSkeletonRight 8s ease-in-out forwards}
.fiveco-skeleton-event.from-bottom{left:calc(50% - 195px);bottom:-310px;animation:fivecoSkeletonBottom 8s ease-in-out forwards}
@keyframes fivecoSkeletonLeft{0%,100%{transform:translateX(0) rotate(-2deg)}22%,72%{transform:translateX(445px) rotate(1deg)}}
@keyframes fivecoSkeletonRight{0%,100%{transform:translateX(0) rotate(2deg)}22%,72%{transform:translateX(-445px) rotate(-1deg)}}
@keyframes fivecoSkeletonBottom{0%,100%{transform:translateY(0)}22%,72%{transform:translateY(-325px)}}
@keyframes fivecoSkeletonBreath{0%,100%{transform:scale(1) rotate(-.4deg)}50%{transform:scale(1.025) rotate(.6deg)}}
.fiveco-skeleton-copy{position:absolute;z-index:3;right:-15px;top:-8px;background:rgba(24,19,17,.94);color:#fff;border:1px solid #ef8a2d;border-radius:999px;padding:10px 14px;
 font:700 20px/1 "Cormorant Garamond",serif;box-shadow:0 9px 22px rgba(0,0,0,.28);opacity:0;animation:fivecoSkeletonCopy 8s ease forwards}
.fiveco-skeleton-event.from-right .fiveco-skeleton-copy{right:auto;left:-18px}
@keyframes fivecoSkeletonCopy{0%,29%{opacity:0;transform:scale(.75)}36%,66%{opacity:1;transform:scale(1)}76%,100%{opacity:0;transform:scale(.84)}}
.fiveco-skeleton-spray{position:absolute;right:-28px;top:76px;z-index:3;color:#eee7df;font:700 38px/1 "Cormorant Garamond",serif;letter-spacing:.08em;
 text-shadow:0 0 8px rgba(255,255,255,.9),0 0 18px rgba(214,191,179,.75);opacity:0;filter:blur(5px);animation:fivecoSkeletonSpray 8s ease forwards}
@keyframes fivecoSkeletonSpray{0%,34%{opacity:0;transform:translateX(-25px) scale(.7);filter:blur(7px)}43%,62%{opacity:.95;transform:translateX(12px) scale(1);filter:blur(.8px)}74%,100%{opacity:0;transform:translateX(45px) scale(1.18);filter:blur(9px)}}
@media(max-width:700px){
 .fiveco-skeleton-event{width:270px;height:190px}
 .fiveco-skeleton-event.from-bottom{left:calc(50% - 135px)}
 .fiveco-skeleton-copy{font-size:16px;padding:8px 11px}
 .fiveco-skeleton-spray{font-size:28px}
}
@media(prefers-reduced-motion:reduce){.fiveco-skeleton-event{display:none!important}}

/* Exact approved Halloween skeleton popup */
.fiveco-skeleton-event,
.fiveco-ghost-event{display:none!important}

.fiveco-approved-skeleton{
  position:fixed;
  z-index:10020;
  pointer-events:none;
  width:min(360px,32vw);
  height:min(560px,68vh);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.28));
}
.fiveco-approved-skeleton img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center bottom;
  background:transparent!important;
  animation:fivecoApprovedSkeletonSway 2.2s ease-in-out infinite;
  transform-origin:50% 90%;
}
.fiveco-approved-skeleton.from-left{
  left:-390px;
  bottom:3vh;
  animation:fivecoApprovedSkeletonLeft 8s cubic-bezier(.2,.7,.3,1) forwards;
}
.fiveco-approved-skeleton.from-right{
  right:-390px;
  bottom:3vh;
  animation:fivecoApprovedSkeletonRight 8s cubic-bezier(.2,.7,.3,1) forwards;
}
.fiveco-approved-skeleton.from-bottom{
  left:calc(50% - min(180px,16vw));
  bottom:-620px;
  animation:fivecoApprovedSkeletonBottom 8s cubic-bezier(.2,.7,.3,1) forwards;
}
@keyframes fivecoApprovedSkeletonLeft{
  0%,100%{transform:translateX(0) rotate(-2deg)}
  20%,72%{transform:translateX(405px) rotate(0)}
}
@keyframes fivecoApprovedSkeletonRight{
  0%,100%{transform:translateX(0) rotate(2deg)}
  20%,72%{transform:translateX(-405px) rotate(0)}
}
@keyframes fivecoApprovedSkeletonBottom{
  0%,100%{transform:translateY(0)}
  20%,72%{transform:translateY(-650px)}
}
@keyframes fivecoApprovedSkeletonSway{
  0%,100%{transform:rotate(-1.2deg) translateY(0)}
  50%{transform:rotate(1.2deg) translateY(-6px)}
}
@media(max-width:700px){
  .fiveco-approved-skeleton{
    width:min(250px,52vw);
    height:min(410px,60vh);
  }
  .fiveco-approved-skeleton.from-left{left:-275px}
  .fiveco-approved-skeleton.from-right{right:-275px}
  .fiveco-approved-skeleton.from-bottom{left:calc(50% - min(125px,26vw));bottom:-460px}
  @keyframes fivecoApprovedSkeletonLeft{
    0%,100%{transform:translateX(0) rotate(-2deg)}
    20%,72%{transform:translateX(285px) rotate(0)}
  }
  @keyframes fivecoApprovedSkeletonRight{
    0%,100%{transform:translateX(0) rotate(2deg)}
    20%,72%{transform:translateX(-285px) rotate(0)}
  }
  @keyframes fivecoApprovedSkeletonBottom{
    0%,100%{transform:translateY(0)}
    20%,72%{transform:translateY(-485px)}
  }
}
@media(prefers-reduced-motion:reduce){
  .fiveco-approved-skeleton{display:none!important}
}
