/* ===== FLIPSY BRAND STYLES ===== */
@import url('https://fonts.googleapis.com/css2?family=Bagel+Fat+One&family=Outfit:wght@400;500;600;700;800&display=swap');
body{background:#FFF8EC;color:#1E2A5A;font-family:'Outfit',sans-serif}
body a{color:#1E2A5A}
h1,h2,h3,.fl-h .elementor-heading-title{font-family:'Bagel Fat One',sans-serif!important;font-weight:400!important;color:#1E2A5A;line-height:1}
.fl-flip{display:inline-block;transform:rotate(180deg);color:#FF4F3F}

/* Hero */
.fl-wrap{padding:0 24px!important}
.fl-hero{border:3px solid #1E2A5A;border-radius:48px;min-height:640px;justify-content:flex-end!important;background-size:cover;background-position:center;overflow:hidden;max-width:1360px;margin:0 auto}
.fl-panel{background:#FFF8EC!important;border:3px solid #1E2A5A;border-radius:36px;box-shadow:10px 10px 0 #1E2A5A;margin:32px!important;max-width:640px;padding:34px 36px!important}
.fl-badge .elementor-heading-title{display:inline-block;background:#FF7AC6;border:2.5px solid #1E2A5A;border-radius:999px;padding:6px 14px;font-family:'Outfit',sans-serif!important;font-weight:800!important;font-size:14px!important;transform:rotate(-3deg);color:#1E2A5A}
.fl-lead,.fl-lead p{font-size:19px;line-height:1.5;font-weight:500;color:#1E2A5A;margin:0}

/* Buttons */
.fl-btn .elementor-button{border-radius:999px;border:3px solid #1E2A5A;font-family:'Outfit',sans-serif;font-weight:800;font-size:18px;padding:18px 28px;transition:transform .15s,box-shadow .15s}
.fl-btn .elementor-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 #1E2A5A}
.fl-btn-red .elementor-button{background:#FF4F3F;color:#FFF8EC;box-shadow:4px 4px 0 #1E2A5A}
.fl-btn-cream .elementor-button{background:#FFF8EC;color:#1E2A5A}
.fl-btn-yellow .elementor-button{background:#FFC928;color:#1E2A5A;border-color:#FFF8EC}

/* Marquee */
.fl-marquee-band{background:#FFC928;border-top:3px solid #1E2A5A;border-bottom:3px solid #1E2A5A;overflow:hidden;padding:14px 0;transform:rotate(-1.5deg);margin:56px -20px 0}
.fl-marquee{display:flex;gap:40px;width:max-content;font-family:'Bagel Fat One',sans-serif;font-size:28px;white-space:nowrap;animation:flmove 28s linear infinite;color:#1E2A5A}
@keyframes flmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Sections */
.fl-section{max-width:1360px;margin:0 auto!important;padding:88px 24px 32px!important}
.fl-sec-head{justify-content:space-between!important;align-items:flex-end!important;flex-wrap:wrap!important;margin-bottom:28px}
.fl-h2 .elementor-heading-title{font-size:clamp(38px,4.6vw,60px)!important}
.fl-link .elementor-heading-title,.fl-link a{font-family:'Outfit',sans-serif!important;font-weight:800!important;font-size:18px!important;color:#1E2A5A}

/* Products */
.woocommerce ul.products li.product a img{border:3px solid #1E2A5A;border-radius:32px;aspect-ratio:4/5;object-fit:cover;background:#FFC928;transition:transform .25s}
.woocommerce ul.products li.product:hover a img{transform:translateY(-6px) rotate(-1deg)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Bagel Fat One',sans-serif!important;font-weight:400;font-size:24px!important;color:#1E2A5A}
.woocommerce ul.products li.product .price{font-weight:800;font-size:20px!important;color:#1E2A5A!important}
.woocommerce a.button,.woocommerce button.button,.woocommerce ul.products li.product .button{border-radius:999px!important;background:#1E2A5A!important;color:#FFF8EC!important;font-weight:800!important;padding:12px 22px!important}
.woocommerce span.onsale{background:#FF4F3F;border:2.5px solid #1E2A5A;border-radius:999px}

/* Spot the flip */
.fl-flipsec{background:#3DCB6C;border-top:3px solid #1E2A5A;border-bottom:3px solid #1E2A5A;margin-top:72px}
.fl-ftitle{margin:0;font-family:'Bagel Fat One',sans-serif;font-weight:400;font-size:clamp(38px,5vw,66px);line-height:1;color:#1E2A5A}
.fl-fcard{border-radius:32px;border:3px solid #1E2A5A!important;background:#FFF8EC!important;box-shadow:8px 8px 0 #1E2A5A;padding:14px!important;cursor:pointer;display:flex;flex-direction:column;gap:14px;text-align:left;color:#1E2A5A!important;font-family:Outfit,sans-serif;transition:transform .25s;width:100%}
.fl-fcard:hover,.fl-fcard:focus{transform:translateY(-6px) rotate(-1deg)}
.fl-fimg{display:block;width:100%;aspect-ratio:1/1;border-radius:22px;border:2.5px solid #1E2A5A;background:#FFF8EC center/cover no-repeat;transition:background-color .2s}
.fl-ftxt{font-family:'Bagel Fat One',sans-serif;font-size:26px;line-height:1.05;padding:0 6px;white-space:normal}
.fl-ftag{align-self:flex-start;background:#1E2A5A;color:#FFF8EC;border-radius:999px;padding:6px 12px;font-weight:800;font-size:13px;margin:0 6px 6px}

/* Tiles and grids */
.fl-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}
.fl-tile{border:3px solid #1E2A5A;border-radius:32px;min-height:260px;padding:22px!important;justify-content:flex-end!important;background-size:cover;background-position:center;transition:transform .25s}
.fl-tile:hover{transform:translateY(-6px) rotate(-1deg)}
.fl-tile .elementor-heading-title{display:inline-block;background:#FFF8EC;border:2.5px solid #1E2A5A;border-radius:18px;padding:10px 16px;font-size:26px!important}

/* Workshop split */
.fl-split{border:3px solid #1E2A5A;border-radius:48px;overflow:hidden;background:#1E2A5A!important;flex-wrap:wrap!important}
.fl-split-img{flex:1 1 520px!important;min-height:520px;background-size:cover;background-position:center}
.fl-split-text{flex:1 1 420px!important;padding:clamp(32px,5vw,64px)!important;justify-content:center!important;gap:18px}
.fl-split-text .elementor-heading-title,.fl-split-text p{color:#FFF8EC!important}
.fl-kicker .elementor-heading-title{font-family:'Outfit',sans-serif!important;font-weight:800!important;font-size:14px!important;letter-spacing:.12em;text-transform:uppercase;color:#FFC928!important}

/* In the wild */
.fl-wild{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:16px}
.fl-wild>.e-con{aspect-ratio:1/1;border:3px solid #1E2A5A;border-radius:26px;background-size:cover;background-position:center}

/* Signup */
.fl-signup{background:#FF7AC6!important;border-top:3px solid #1E2A5A;border-bottom:3px solid #1E2A5A}
.fl-signup .elementor-field-group input{height:58px;border-radius:999px!important;border:3px solid #1E2A5A!important;padding:0 22px!important;background:#FFF8EC!important;font-size:17px}
.fl-signup .elementor-button{height:58px;border-radius:999px!important;background:#1E2A5A!important;color:#FFF8EC!important;font-weight:800!important;font-size:17px!important;border:3px solid #1E2A5A!important}

/* Header and footer */
.fl-header{max-width:1360px;margin:0 auto;padding:16px 24px!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important}
.fl-header .elementor-nav-menu a{font-family:'Outfit',sans-serif;font-weight:700;font-size:17px;color:#1E2A5A!important}
.fl-header .elementor-nav-menu a:hover{color:#FF4F3F!important}
.fl-topbar{background:#1E2A5A!important}
.fl-topbar p,.fl-topbar{color:#FFF8EC!important;font-weight:600;font-size:14px;text-align:center}
.fl-footer{max-width:1360px;margin:0 auto;padding:56px 24px 36px!important}

@media (prefers-reduced-motion:reduce){.fl-marquee{animation:none}.fl-tile:hover,.fl-fcard:hover{transform:none}}
@media (max-width:767px){.fl-hero{min-height:560px;border-radius:32px}.fl-panel{margin:16px!important;padding:24px!important}.fl-split-img{min-height:320px}}

/* Default text font */
.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-nav-menu,.elementor-button,.elementor-field,.woocommerce,.woocommerce p{font-family:'Outfit',sans-serif}
.elementor-widget-text-editor p{margin-bottom:.6em}

/* === Flipsy logo (matches prompt board) === */
.fl-logo a{color:transparent!important}
.fl-logo .elementor-heading-title,
.fl-logo .elementor-heading-title a{
  font-family:'Bagel Fat One','Arial Black',sans-serif!important;
  font-weight:400!important;font-size:46px!important;line-height:.9!important;letter-spacing:0!important;
  background:linear-gradient(90deg,#FF4F3F 0 20%,#FFC928 20% 40%,#3DCB6C 40% 60%,#2FA8FF 60% 80%,#FF7AC6 80%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:0!important;text-shadow:none!important;filter:none!important;
}
.fl-logo .elementor-heading-title{display:inline-block!important;transform:rotate(180deg)!important;white-space:nowrap!important}
.fl-logo .elementor-heading-title a{display:inline!important;transform:none!important}

/* === Flipsy product page === */
.flipsy-pdp-extras{font-size:14px;color:#1E2A5A}
.flipsy-pdp-extras p{margin:0 0 12px}
.flipsy-pdp-extras a{color:#1E2A5A}
.fpx-sizechart{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #1E2A5A;border-radius:999px;padding:5px 14px;font-weight:700;font-size:13px;text-decoration:none}
.fpx-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 16px}
.fpx-badge{border-radius:14px;padding:14px 10px;text-align:center;font-weight:700;font-size:13px}
.fpx-badge span{display:block;font-size:24px;margin-bottom:4px}
.fpx-b1{background:#FFF4CC}.fpx-b2{background:#E3F3FF}
.fpx-list{margin:0;padding-left:18px;line-height:1.9}
@media(min-width:768px){
  .flipsy-gallery .woocommerce-product-gallery{display:flex;flex-direction:row-reverse;gap:12px}
  .flipsy-gallery .woocommerce-product-gallery .flex-viewport{flex:1}
  .flipsy-gallery .woocommerce-product-gallery .flex-control-thumbs{display:flex;flex-direction:column;width:84px;margin:0!important}
  .flipsy-gallery .woocommerce-product-gallery .flex-control-thumbs li{width:100%!important;padding:0 0 10px!important}
}
.flipsy-gallery .flex-control-thumbs img{opacity:.6}
.flipsy-gallery .flex-control-thumbs img.flex-active,.flipsy-gallery .flex-control-thumbs img:hover{opacity:1}
.flipsy-atc table.variations th.label{color:#1E2A5A;font-weight:700}
.flipsy-atc table.variations td,.flipsy-atc table.variations th{display:block;padding:4px 0}
.flipsy-atc .variable-items-wrapper .variable-item.button-variable-item{min-width:56px;height:44px;border-radius:12px;box-shadow:0 0 0 1.5px #C9CDE0;font-weight:700;color:#1E2A5A}
.flipsy-atc .variable-items-wrapper .variable-item.button-variable-item.selected{box-shadow:0 0 0 2.5px #1E2A5A;background:#1E2A5A;color:#fff}
.flipsy-atc .variable-items-wrapper .variable-item.color-variable-item{width:38px;height:38px;border-radius:50%}
.flipsy-atc .variable-items-wrapper .variable-item.color-variable-item.selected{box-shadow:0 0 0 2.5px #1E2A5A}
.flipsy-atc .variable-item.disabled{opacity:.35}
.flipsy-atc .single_add_to_cart_button{width:100%;padding:16px!important;font-weight:800!important;font-size:16px!important}
.flipsy-atc .quantity{display:none!important}

/* === Mobile header: logo left, cart + menu right, one row === */
@media(max-width:767px){
  .elementor-location-header .e-con:has(> .e-con-inner > .fl-logo),
  .elementor-location-header .e-con:has(> .fl-logo){flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:12px!important}
  .elementor-location-header .fl-logo{flex:0 0 auto!important;width:auto!important;max-width:none!important;margin-right:auto!important}
  .elementor-location-header .fl-logo .elementor-heading-title{font-size:30px!important}
  .elementor-location-header .elementor-widget-woocommerce-menu-cart{flex:0 0 auto!important;width:auto!important;order:2;margin:0!important}
  .elementor-location-header .elementor-widget-nav-menu{flex:0 0 auto!important;width:auto!important;order:3;margin:0!important}
  .elementor-location-header .elementor-menu-cart__toggle_button{padding:8px 12px!important}
  .elementor-location-header .elementor-menu-cart__toggle .elementor-button-text{display:none!important}
}

/* === Mobile hero: keep the cream panel inside the blue hero === */
@media(max-width:767px){
  .fl-hero{padding:0!important;min-height:0!important}
  .fl-panel{margin:12px!important;width:auto!important;max-width:calc(100% - 24px)!important;box-shadow:6px 6px 0 #1E2A5A!important;padding:22px 20px!important;border-radius:28px!important}
  .fl-panel .elementor-heading-title{overflow-wrap:break-word}
  .fl-panel h1.elementor-heading-title,.fl-panel h2.elementor-heading-title{font-size:38px!important;line-height:1.02!important}
  .fl-panel .fl-badge .elementor-heading-title{font-size:13px!important}
  .fl-btn .elementor-button{font-size:16px;padding:15px 22px}
}
