/* FPVdrones2 - Clean CSS v1.0 */
:root {
  --orange:#ff6a00; --orange-h:#e55a00;
  --navy:#1a2a6c; --navy-d:#0f1a4a;
  --paper:#f6f5f1; --paper-2:#ecebe5; --line:#ececea;
  --dark:#0a0a0b; --dark-2:#3a3a40; --mid:#7a7a82; --light:#cfcfd4;
  --white:#fff; --green:#16a34a; --red:#ef4444;
  --ff-body:'Inter',system-ui,sans-serif;
  --ff-display:'Space Grotesk',sans-serif;
  --ff-mono:'JetBrains Mono',monospace;
  --ff-logo:'Archivo','Arial Black',sans-serif;
  --r:8px; --r-lg:12px; --r-xl:14px; --r-pill:99px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--ff-body);font-size:14px;line-height:1.5;color:var(--dark);background:var(--paper)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit;border:none;outline:none;background:none}
ul,ol{list-style:none}

/* PAGE */
#fpv-page{display:flex;flex-direction:column;min-height:100vh}
.fpv-main{flex:1}
.fpv-container{max-width:1440px;width:100%;margin:0 auto;padding:0 28px}
.fpv-section{padding:48px 0}
.fpv-section-hd{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}
.fpv-section-title{font-family:var(--ff-display);font-size:24px;font-weight:600;letter-spacing:-.02em}
.fpv-link{font-size:13px;color:var(--orange);font-weight:500}
.fpv-link:hover{text-decoration:underline}

/* TOPBAR */
.fpv-topbar{background:var(--dark);color:var(--light);font-size:12px;height:32px;display:flex;align-items:center}
.fpv-topbar__inner{max-width:1440px;width:100%;margin:0 auto;padding:0 28px;display:flex;justify-content:space-between;align-items:center}
.fpv-topbar a{color:var(--light);margin-left:14px;transition:color .15s}
.fpv-topbar a:hover{color:#fff}
.fpv-topbar__right{display:flex}

/* HEADER */
.fpv-header{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}
.fpv-header__inner{max-width:1440px;width:100%;margin:0 auto;padding:0 28px;height:64px;display:flex;align-items:center;gap:20px}

/* LOGO */
.fpv-logo{display:inline-flex;flex-direction:column;flex-shrink:0;filter:drop-shadow(2px 2px 0 var(--navy-d));line-height:1;text-decoration:none}
.fpv-logo__fpv,.fpv-logo__drones{display:block;padding:2px 7px 3px;border:2px solid var(--navy-d);border-radius:2px;font-family:var(--ff-logo);font-weight:900;font-style:italic;font-size:20px;line-height:.82;letter-spacing:-.02em;color:#fff;-webkit-text-stroke:1px var(--navy-d);paint-order:stroke fill;transform:skewX(-8deg);transform-origin:left center}
.fpv-logo__fpv{background:var(--orange)}
.fpv-logo__drones{background:var(--navy);margin-top:-3px}
.fpv-logo__img{height:36px;width:auto}

/* SEARCH */
.fpv-search{flex:1;max-width:460px}
.fpv-search form{display:flex;align-items:center;gap:8px;padding:0 14px;height:38px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);transition:border-color .15s,box-shadow .15s}
.fpv-search form:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,106,0,.12)}
.fpv-search input{flex:1;font-size:13px;background:transparent;color:var(--dark)}
.fpv-search input::placeholder{color:var(--mid)}
.fpv-search svg{color:var(--mid);flex-shrink:0}

/* NAV */
.fpv-nav{display:flex;gap:2px}
.fpv-nav a{padding:6px 10px;font-size:13px;font-weight:500;color:var(--dark-2);border-radius:var(--r);transition:color .15s,background .15s}
.fpv-nav a:hover{color:var(--dark);background:var(--paper)}

/* ACTIONS */
.fpv-actions{display:flex;gap:4px;margin-left:auto}
.fpv-icon-btn{position:relative;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:var(--r);color:var(--dark);transition:color .15s,background .15s;cursor:pointer}
.fpv-icon-btn:hover{background:var(--paper);color:var(--orange)}
.fpv-badge{position:absolute;top:4px;right:4px;background:var(--orange);color:#fff;font-size:9px;font-weight:700;padding:2px 4px;border-radius:99px;min-width:16px;text-align:center}

/* MOBILE MENU BTN */
.fpv-menu-btn{display:none;width:36px;height:36px;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;flex-shrink:0}
.fpv-menu-btn span{display:block;height:2px;background:var(--dark);border-radius:2px}
.fpv-menu-btn span:nth-child(1),.fpv-menu-btn span:nth-child(2){width:18px}
.fpv-menu-btn span:nth-child(3){width:12px}

/* MOBILE SEARCH */
.fpv-mobile-search{display:none;padding:8px 14px 12px;background:var(--white);border-bottom:1px solid var(--line)}
.fpv-mobile-search form{display:flex;align-items:center;gap:8px;padding:0 12px;height:38px;background:#f3f2ee;border-radius:10px;color:var(--mid)}
.fpv-mobile-search input{flex:1;font-size:13px;background:transparent;color:var(--dark)}
.fpv-mobile-search input::placeholder{color:var(--mid)}

/* CATEGORY NAV */
.fpv-catnav{background:var(--white);border-bottom:1px solid var(--line)}
.fpv-catnav__inner{max-width:1440px;margin:0 auto;padding:0 28px;display:flex;overflow-x:auto;scrollbar-width:none}
.fpv-catnav__inner::-webkit-scrollbar{display:none}
.fpv-catnav__inner a{padding:10px 12px;font-size:13px;font-weight:600;color:var(--dark-2);white-space:nowrap;border-bottom:2px solid transparent;font-family:var(--ff-body);letter-spacing:0;text-transform:none;transition:color .15s,border-color .15s}
.fpv-catnav__inner a:hover{color:var(--dark);border-bottom-color:var(--orange)}
.fpv-catnav__inner a.current{color:var(--orange);border-bottom-color:var(--orange)}
.fpv-catnav__all{margin-left:auto;color:var(--orange)!important;font-weight:600!important}

/* DRAWER */
.fpv-overlay{display:none;position:fixed;inset:0;background:rgba(10,10,11,.45);z-index:200}
.fpv-overlay.open{display:block}
.fpv-drawer{position:fixed;top:0;left:0;bottom:0;width:300px;background:var(--white);z-index:201;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1)}
.fpv-drawer.open{transform:translateX(0)}
.fpv-drawer__head{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.fpv-drawer__head button{width:32px;height:32px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .15s}
.fpv-drawer__head button:hover{background:var(--paper)}
.fpv-drawer__body{flex:1;overflow-y:auto}
.fpv-drawer__item{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-size:15px;color:var(--dark);border-bottom:1px solid #f3f2ee;transition:background .15s}
.fpv-drawer__item:hover{background:var(--paper)}
.fpv-drawer__foot{border-top:1px solid var(--line);padding:14px 20px;display:flex;flex-direction:column;gap:10px;font-size:13px}
.fpv-drawer__foot a{color:var(--dark)}
.fpv-drawer__foot a:hover{color:var(--orange)}

/* TAG */
.fpv-tag{display:inline-block;font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:4px 8px;border-radius:4px;background:var(--white);color:var(--dark)}

/* BUTTONS */
.fpv-btn{display:inline-flex;align-items:center;gap:6px;padding:12px 22px;border-radius:var(--r-pill);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;border:none}
.fpv-btn--dark{background:var(--dark);color:#fff}
.fpv-btn--dark:hover{background:var(--dark-2)}
.fpv-btn--orange{background:var(--orange);color:#fff}
.fpv-btn--orange:hover{background:var(--orange-h)}
.fpv-btn--ghost{background:var(--white);color:var(--dark);border:1px solid var(--line)}
.fpv-btn--ghost:hover{background:var(--paper)}

/* HERO */
.fpv-hero{padding:20px 0 0}
.fpv-hero__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;height:480px}
.fpv-hero__main{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--paper)}
.fpv-hero__main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fpv-hero__overlay{position:absolute;inset:0;padding:36px;display:flex;flex-direction:column;justify-content:space-between}
.fpv-hero__title{font-family:var(--ff-display);font-size:clamp(42px,5vw,76px);font-weight:600;color:var(--dark);line-height:.95;letter-spacing:-.03em;margin-top:12px}
.fpv-hero__title span{color:var(--orange)}
.fpv-hero__btns{display:flex;gap:10px;flex-wrap:wrap}
.fpv-hero__side{display:flex;flex-direction:column;gap:14px}
.fpv-hero__banner{flex:1;border-radius:var(--r-xl);overflow:hidden;position:relative;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none}
.fpv-hero__banner--dark{background:var(--dark);color:#fff}
.fpv-hero__banner--orange{background:var(--orange);color:#fff}
.fpv-hero__banner-title{font-family:var(--ff-display);font-size:20px;font-weight:600;line-height:1.1;margin-top:6px}
.fpv-hero__banner-price{font-size:12px;margin-top:6px;opacity:.9}

/* CATS */
.fpv-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.fpv-cat{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:box-shadow .2s,transform .2s;text-decoration:none}
.fpv-cat:hover{box-shadow:0 4px 16px rgba(0,0,0,.1);transform:translateY(-2px)}
.fpv-cat__img{aspect-ratio:1.2/1;background:var(--paper);overflow:hidden}
.fpv-cat__img img{width:100%;height:100%;object-fit:cover}
.fpv-cat__placeholder{width:100%;height:100%;background:var(--paper-2)}
.fpv-cat__name{font-family:var(--ff-display);font-size:14px;font-weight:600;color:var(--dark);padding:10px 12px 2px}
.fpv-cat__count{font-family:var(--ff-mono);font-size:10px;color:var(--mid);padding:0 12px 12px}

/* TRUST */
.fpv-trust{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}
.fpv-trust__inner{display:flex;justify-content:space-around;align-items:center;gap:20px}
.fpv-trust__item{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500}
.fpv-trust__dot{width:8px;height:8px;border-radius:99px;background:var(--orange);flex-shrink:0}
.fpv-trust__sub{font-size:11px;color:var(--mid);font-weight:400}

/* PRODUCT GRID */
.fpv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

/* PRODUCT CARD */
.fpv-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s;text-decoration:none;color:var(--dark)}
.fpv-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-2px)}
.fpv-card__img{aspect-ratio:1/1;background:var(--paper);overflow:hidden;position:relative}
.fpv-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.fpv-card:hover .fpv-card__img img{transform:scale(1.04)}
.fpv-card__noimg{width:100%;height:100%;background:var(--paper-2)}
.fpv-card__body{padding:12px;display:flex;flex-direction:column;gap:4px;flex:1}
.fpv-card__brand{font-family:var(--ff-mono);font-size:10px;color:var(--mid);letter-spacing:.08em;text-transform:uppercase}
.fpv-card__name{font-size:13px;font-weight:500;line-height:1.35;color:var(--dark)}
.fpv-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px}
.fpv-card__price{font-family:var(--ff-display);font-size:17px;font-weight:600}
.fpv-card__price .woocommerce-Price-amount{font-family:var(--ff-display);font-size:17px;font-weight:600}
.fpv-card__price del{font-size:11px;color:var(--mid);font-weight:400;margin-right:4px}
.fpv-card__price ins{text-decoration:none;color:var(--orange)}
.fpv-card__stock{font-family:var(--ff-mono);font-size:10px;display:flex;align-items:center;gap:4px}
.fpv-card__stock::before{content:'';width:5px;height:5px;border-radius:99px;background:currentColor;display:inline-block}
.fpv-card__stock--in{color:var(--green)}
.fpv-card__stock--out{color:var(--red)}

/* BEGINNER SECTION */
.fpv-beginner{background:var(--paper);border-top:1px solid var(--line);padding:48px 0}
.fpv-beginner__title{font-family:var(--ff-display);font-size:clamp(26px,3vw,40px);font-weight:600;letter-spacing:-.02em;margin:8px 0 12px}
.fpv-beginner__desc{font-size:14px;color:var(--dark-2);line-height:1.65;margin-bottom:22px;max-width:480px}

/* SHOP LAYOUT */
.fpv-shop{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start;padding:24px 0 48px}
.fpv-sidebar{position:sticky;top:80px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px}
.fpv-shop__toolbar{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.fpv-shop__title{font-family:var(--ff-display);font-size:22px;font-weight:600;letter-spacing:-.02em}

/* BREADCRUMB */
.fpv-breadcrumb{font-family:var(--ff-body);font-size:13px;color:var(--dark-2);letter-spacing:0;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:0}
.fpv-breadcrumb a{color:var(--dark-2);text-decoration:none;transition:color .15s}
.fpv-breadcrumb a:hover{color:var(--orange)}

/* PRODUCT PAGE */
.fpv-product{display:grid;grid-template-columns:1fr 420px;border-bottom:1px solid var(--line);margin-bottom:40px}
.fpv-product__gallery{padding:28px;border-right:1px solid var(--line)}
.fpv-product__info{padding:36px 32px}
.fpv-product__tabs{padding:0 0 48px}

/* WC single product overrides */
.fpv-product__info .product_title{font-family:var(--ff-display);font-size:26px;font-weight:600;letter-spacing:-.02em;margin-bottom:12px}
.fpv-product__info .price{font-family:var(--ff-display);font-size:28px;font-weight:700;color:var(--dark);margin-bottom:20px}
.fpv-product__info .price del{font-size:16px;color:var(--mid)}
.fpv-product__info .price ins{text-decoration:none;color:var(--orange)}
.fpv-product__info .single_add_to_cart_button{background:var(--orange)!important;color:#fff!important;border-radius:var(--r-pill)!important;padding:14px 32px!important;font-size:15px!important;font-weight:600!important;border:none!important;cursor:pointer!important;transition:background .15s!important}
.fpv-product__info .single_add_to_cart_button:hover{background:var(--orange-h)!important}
.fpv-product__info .woocommerce-product-gallery{border-radius:var(--r-lg);overflow:hidden}

/* FOOTER */
.fpv-footer{background:var(--dark);color:var(--light);margin-top:auto}
.fpv-footer__inner{max-width:1440px;margin:0 auto;padding:48px 28px 40px;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:36px}
.fpv-footer__brand p{font-size:13px;color:rgba(207,207,212,.7);line-height:1.7;margin-top:14px;max-width:260px}
.fpv-footer__col h4{font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(207,207,212,.45);margin-bottom:14px}
.fpv-footer__col li{margin-bottom:8px}
.fpv-footer__col a{font-size:13px;color:rgba(207,207,212,.7);transition:color .15s}
.fpv-footer__col a:hover{color:#fff}
.fpv-footer__bottom{border-top:1px solid rgba(255,255,255,.08);max-width:1440px;margin:0 auto;padding:16px 28px;display:flex;justify-content:space-between;font-size:12px;color:rgba(207,207,212,.45)}
.fpv-footer__bottom a{color:rgba(207,207,212,.45);transition:color .15s}
.fpv-footer__bottom a:hover{color:#fff}

/* WC PAGINATION */
.woocommerce-pagination ul{display:flex;justify-content:center;gap:4px;padding:32px 0}
.woocommerce-pagination ul li{display:inline-flex}
.woocommerce-pagination ul li a,.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r);border:1px solid var(--line)!important;font-size:13px;color:var(--dark)!important;background:var(--white);transition:background .15s}
.woocommerce-pagination ul li a:hover{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important}
.woocommerce-pagination ul li span.current{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important}

/* NOTICES */
.woocommerce-message,.woocommerce-info{border-left:4px solid var(--orange)!important;background:var(--white)!important;padding:12px 16px!important;border-radius:var(--r)!important;margin-bottom:20px!important;color:var(--dark)!important}
.woocommerce-error{border-left:4px solid var(--red)!important;background:var(--white)!important;padding:12px 16px!important;border-radius:var(--r)!important;margin-bottom:20px!important}

/* RESPONSIVE */
@media(max-width:1024px){
  .fpv-cats{grid-template-columns:repeat(4,1fr)}
  .fpv-grid{grid-template-columns:repeat(3,1fr)}
  .fpv-footer__inner{grid-template-columns:1fr 1fr;gap:24px}
  .fpv-hero__grid{height:360px}
}
@media(max-width:768px){
  .fpv-container{padding:0 14px}
  .fpv-topbar__inner{justify-content:center;font-size:11px}
  .fpv-topbar__right{display:none}
  .fpv-header__inner{padding:0 14px;height:54px;gap:10px}
  .fpv-menu-btn{display:flex}
  .fpv-search,.fpv-nav{display:none}
  .fpv-mobile-search{display:block}
  .fpv-catnav__inner{padding:0 14px}
  .fpv-hero{padding:8px 0 0}
  .fpv-hero__grid{grid-template-columns:1fr;height:auto;gap:10px}
  .fpv-hero__main{height:360px}
  .fpv-hero__side{flex-direction:row;height:130px}
  .fpv-hero__overlay{padding:18px}
  .fpv-hero__title{font-size:40px}
  .fpv-cats{grid-template-columns:repeat(3,1fr);gap:8px}
  .fpv-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .fpv-trust__inner{flex-wrap:wrap;gap:12px;justify-content:flex-start}
  .fpv-shop{grid-template-columns:1fr}
  .fpv-sidebar{display:none}
  .fpv-product{grid-template-columns:1fr}
  .fpv-product__gallery{border-right:none;border-bottom:1px solid var(--line);padding:14px}
  .fpv-product__info{padding:18px 14px}
  .fpv-footer__inner{grid-template-columns:1fr 1fr;padding:28px 18px}
  .fpv-footer__brand{grid-column:1/-1}
  .fpv-footer__bottom{flex-direction:column;gap:8px;text-align:center;padding:14px 18px}
}
.fpv-card__badge{position:absolute;top:10px;left:10px;background:var(--orange);color:#fff;font-family:var(--ff-mono);font-size:10px;font-weight:600;padding:3px 7px;border-radius:4px;letter-spacing:.06em;z-index:1}
.fpv-cat__placeholder{width:100%;height:100%;background:var(--paper-2);display:flex;align-items:center;justify-content:center}
.fpv-hero__main{background:var(--paper);position:relative}

/* =====================================================
   SIDEBAR FILTERS
===================================================== */
.fpv-sidebar {
  position: sticky;
  top: 80px;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.fpv-filter-group {
  border-bottom: 1px solid var(--line);
  padding: 16px 0;
}
.fpv-filter-group:first-child { padding-top: 0; }
.fpv-filter-group:last-child { border-bottom: none; }
.fpv-filter-title {
  font-family: var(--ff-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--mid);
  margin-bottom: 10px;
}

/* Category list */
.fpv-filter-cats {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.fpv-filter-cat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 8px;
  font-size: 13px;
  color: var(--dark-2);
  border-radius: var(--r);
  transition: background .15s, color .15s;
  text-decoration: none;
}
.fpv-filter-cat:hover { background: var(--paper); color: var(--dark); }
.fpv-filter-cat.is-active {
  background: var(--paper);
  color: var(--orange);
  font-weight: 500;
}
.fpv-filter-cat--back {
  color: var(--mid);
  font-size: 12px;
  margin-bottom: 4px;
}
.fpv-filter-cat__count {
  font-family: var(--ff-mono);
  font-size: 10px;
  color: var(--light);
}

/* Ready to ship toggle */
.fpv-filter-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  font-size: 13px;
  color: var(--dark-2);
  cursor: pointer;
  text-decoration: none;
  transition: color .15s;
}
.fpv-filter-toggle:hover { color: var(--dark); }
.fpv-filter-toggle.is-active { color: var(--dark); font-weight: 500; }
.fpv-filter-toggle__box {
  width: 16px;
  height: 16px;
  border: 1.5px solid var(--line);
  border-radius: 4px;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background .15s, border-color .15s;
  color: #fff;
}
.fpv-filter-toggle.is-active .fpv-filter-toggle__box {
  background: var(--orange);
  border-color: var(--orange);
}

/* Price filter */
.fpv-price-form { display: flex; flex-direction: column; gap: 10px; }
.fpv-price-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.fpv-price-field label {
  display: block;
  font-family: var(--ff-mono);
  font-size: 10px;
  color: var(--mid);
  letter-spacing: .08em;
  margin-bottom: 4px;
}
.fpv-price-input {
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
  background: var(--white);
  transition: border-color .15s;
}
.fpv-price-input:focus-within { border-color: var(--orange); }
.fpv-price-input span {
  padding: 0 8px;
  font-size: 12px;
  color: var(--mid);
  border-right: 1px solid var(--line);
  height: 34px;
  display: flex;
  align-items: center;
}
.fpv-price-input input {
  flex: 1;
  padding: 0 8px;
  height: 34px;
  font-size: 13px;
  color: var(--dark);
  width: 0;
}
.fpv-price-input input::placeholder { color: var(--light); }
.fpv-price-apply {
  background: var(--dark);
  color: #fff;
  border: none;
  border-radius: var(--r);
  padding: 9px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s;
  width: 100%;
}
.fpv-price-apply:hover { background: var(--dark-2); }
.fpv-price-clear {
  text-align: center;
  font-size: 12px;
  color: var(--mid);
  text-decoration: underline;
  cursor: pointer;
}
.fpv-price-clear:hover { color: var(--dark); }

/* Active filters */
.fpv-active-filters { display: flex; flex-direction: column; gap: 6px; }
.fpv-active-filter {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-pill);
  font-size: 12px;
  color: var(--dark);
  cursor: pointer;
  text-decoration: none;
  transition: border-color .15s;
  width: fit-content;
}
.fpv-active-filter:hover { border-color: var(--red); color: var(--red); }

/* WC result count + ordering */
.woocommerce-result-count {
  font-family: var(--ff-mono);
  font-size: 11px;
  color: var(--mid);
  margin: 0 !important;
}
.woocommerce-ordering select {
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  padding: 7px 12px !important;
  font-size: 13px !important;
  color: var(--dark) !important;
  background: var(--white) !important;
  cursor: pointer !important;
  appearance: auto !important;
}.fpv-filter-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--mid);
  text-decoration: none;
  padding: 4px 0;
  transition: color .15s;
}
.fpv-filter-back:hover { color: var(--dark); }
.fpv-filter-empty {
  font-size: 13px;
  color: var(--mid);
  margin-top: 6px;
}
/* BRANDS */
.fpv-brands-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.fpv-brand-card{background:var(--white);padding:20px 22px;text-decoration:none;transition:background .15s}
.fpv-brand-card:hover{background:var(--paper)}
.fpv-brand-card__name{font-family:var(--ff-display);font-size:16px;font-weight:600;color:var(--dark);margin-bottom:3px}
.fpv-brand-card__desc{font-size:12px;color:var(--mid)}

/* REVIEWS */
.fpv-reviews{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:48px 0}
.fpv-reviews__hd{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}
.fpv-reviews__stars{display:flex;align-items:center;gap:3px;color:var(--orange);margin-top:8px}
.fpv-reviews__stars span{font-size:12px;color:var(--mid);margin-left:8px;font-family:var(--ff-mono)}
.fpv-reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fpv-review{background:var(--paper);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:10px}
.fpv-review__stars{display:flex;gap:2px;color:var(--orange)}
.fpv-review__title{font-size:14px;font-weight:600;color:var(--dark)}
.fpv-review__body{font-size:13px;color:var(--dark-2);line-height:1.6;flex:1}
.fpv-review__who{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dark);margin-top:4px}
.fpv-review__avatar{width:26px;height:26px;border-radius:99px;background:var(--orange);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fpv-review__loc{font-family:var(--ff-mono);font-size:10px;color:var(--mid);letter-spacing:.06em}

/* FINDER */
.fpv-finder{background:var(--dark);padding:48px 0}
.fpv-finder__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.fpv-finder__left{color:#fff}
.fpv-finder__title{font-family:var(--ff-display);font-size:clamp(28px,3vw,42px);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin:0 0 12px}
.fpv-finder__desc{font-size:14px;color:rgba(255,255,255,.7);line-height:1.65;max-width:400px}
.fpv-finder__right{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fpv-style-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-lg);padding:18px;text-decoration:none;transition:background .15s,border-color .15s}
.fpv-style-card:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}
.fpv-style-card__name{font-family:var(--ff-display);font-size:16px;font-weight:600;color:#fff;margin-bottom:4px}
.fpv-style-card__desc{font-size:12px;color:rgba(255,255,255,.55);margin-bottom:10px}
.fpv-style-card__price{font-family:var(--ff-mono);font-size:11px;color:var(--orange);letter-spacing:.04em}

/* POSTS */
.fpv-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fpv-post{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:var(--dark);transition:box-shadow .2s}
.fpv-post:hover{box-shadow:0 4px 16px rgba(0,0,0,.08)}
.fpv-post__img{aspect-ratio:16/9;background:var(--paper);overflow:hidden}
.fpv-post__img img{width:100%;height:100%;object-fit:cover}
.fpv-post__placeholder{width:100%;height:100%;background:var(--paper-2)}
.fpv-post__body{padding:16px}
.fpv-post__tag{font-size:10px;color:var(--orange);letter-spacing:.14em;margin-bottom:6px}
.fpv-post__title{font-size:14px;font-weight:600;line-height:1.4;color:var(--dark);margin-bottom:8px}
.fpv-post__meta{font-family:var(--ff-mono);font-size:11px;color:var(--mid)}

/* ABOUT */
.fpv-hp-about{padding:56px 0;background:var(--paper);border-top:1px solid var(--line)}
.fpv-hp-about__grid{display:grid;grid-template-columns:1fr 420px;gap:48px;align-items:start}
.fpv-hp-about__title{font-family:var(--ff-display);font-size:clamp(28px,3.5vw,44px);font-weight:600;letter-spacing:-.02em;line-height:1.05;margin:0 0 16px;color:var(--dark)}
.fpv-hp-about__text{font-size:14px;color:var(--dark-2);line-height:1.7;max-width:520px}
.fpv-about__text a{color:var(--dark);font-weight:500;text-decoration:underline;text-underline-offset:2px}
.fpv-about__text a:hover{color:var(--orange)}
.fpv-hp-about__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}
.fpv-hp-about__tag{font-size:12px;color:var(--dark-2);border:1px solid var(--line);padding:4px 10px;border-radius:var(--r-pill);background:var(--white);transition:border-color .15s,color .15s}
.fpv-about__tag:hover{border-color:var(--dark);color:var(--dark)}
.fpv-hp-about__right{background:var(--dark);border-radius:var(--r-xl);padding:28px;color:#fff}
.fpv-hp-about__headline{font-family:var(--ff-display);font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.01em;margin-bottom:20px}
.fpv-about__stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fpv-hp-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fpv-hp-stat{background:rgba(255,255,255,.06);border-radius:var(--r);padding:16px}
.fpv-hp-stat__num{font-family:var(--ff-display);font-size:28px;font-weight:700;color:#fff;letter-spacing:-.02em}
.fpv-hp-stat__label{font-size:11px;color:rgba(255,255,255,.5);margin-top:2px}
.fpv-about__stat-num{font-family:var(--ff-display);font-size:28px;font-weight:700;color:#fff;letter-spacing:-.02em}
.fpv-about__stat-label{font-size:11px;color:rgba(255,255,255,.5);margin-top:2px}

/* RESPONSIVE */
@media(max-width:1024px){
  .fpv-brands-grid{grid-template-columns:repeat(3,1fr)}
  .fpv-hp-about__grid{grid-template-columns:1fr}
  .fpv-finder__grid{gap:28px}
}
@media(max-width:768px){
  .fpv-brands-grid{grid-template-columns:repeat(2,1fr)}
  .fpv-reviews__grid{grid-template-columns:1fr}
  .fpv-finder__grid{grid-template-columns:1fr}
  .fpv-finder__right{grid-template-columns:1fr 1fr}
  .fpv-posts-grid{grid-template-columns:1fr}
  .fpv-about__stats{grid-template-columns:repeat(2,1fr)}
.fpv-hp-stats{grid-template-columns:repeat(2,1fr)}
}
/* Drawer navigation */
.fpv-drawer__level { flex: 1; }
.fpv-drawer__level--sub { display: flex; flex-direction: column; }
.fpv-drawer__back {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 500;
  color: var(--mid);
  background: none;
  border: none;
  border-bottom: 1px solid var(--line);
  cursor: pointer;
  width: 100%;
  text-align: left;
  transition: color .15s;
}
.fpv-drawer__back:hover { color: var(--dark); }
.fpv-drawer__item--view-all {
  display: block;
  padding: 12px 20px;
  font-size: 13px;
  font-weight: 600;
  color: var(--orange);
  border-bottom: 1px solid var(--line);
  transition: background .15s;
}
.fpv-drawer__item--view-all:hover { background: var(--paper); }
.fpv-drawer__item--parent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 14px 20px;
  font-size: 15px;
  color: var(--dark);
  background: none;
  border: none;
  border-bottom: 1px solid #f3f2ee;
  cursor: pointer;
  text-align: left;
  transition: background .15s;
}
.fpv-drawer__item--parent:hover { background: var(--paper); }
.fpv-drawer__count {
  font-family: var(--ff-mono);
  font-size: 11px;
  color: var(--light);
  margin-left: auto;
}

/* Sidebar peidetud mobiilis */
@media(max-width:768px) {
  .fpv-sidebar { display: none !important; }
  .fpv-shop { grid-template-columns: 1fr !important; }
}

/* Peida FiboSearch enda submit nupp - meil on oma SVG */
.dgwt-wcas-ico-magnifier-handler { display: none !important; }
/* =====================================================
   FIBOSEARCH - meie stiil
===================================================== */
.fpv-search {
  flex: 1;
  max-width: 460px;
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--r-pill);
  background: var(--paper);
  overflow: visible;
  transition: border-color .15s, box-shadow .15s;
  position: relative;
}
.fpv-search:focus-within {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(255,106,0,.12);
}
.fpv-search__icon {
  padding: 0 10px 0 14px;
  color: var(--mid);
  display: flex;
  align-items: center;
  flex-shrink: 0;
  pointer-events: none;
}
/* Input */
.fpv-search .dgwt-wcas-search-input,
.fpv-search input[type=search] {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-family: var(--ff-body) !important;
  color: var(--dark) !important;
  padding: 0 12px 0 0 !important;
  height: 36px !important;
  width: 100% !important;
  outline: none !important;
}
.fpv-search input[type=search]::placeholder { color: var(--mid) !important; }
/* Mobile search */
.fpv-mobile-search .dgwt-wcas-search-wrapp,
.fpv-mobile-search .dgwt-wcas-sf-wrapp { width: 100% !important; }
.fpv-mobile-search .dgwt-wcas-search-form {
  background: #f3f2ee !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  height: 38px !important;
  padding: 0 12px !important;
}
.fpv-mobile-search .dgwt-wcas-search-input,
.fpv-mobile-search input[type=search] {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  font-size: 13px !important;
  color: var(--dark) !important;
  height: 38px !important;
}
.fpv-mobile-search .dgwt-wcas-ico-magnifier-handler { display: none !important; }

/* Dropdown */
.dgwt-wcas-suggestions-wrapp {
  border: 1px solid var(--line) !important;
  border-radius: var(--r-lg) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.1) !important;
  background: var(--white) !important;
  margin-top: 6px !important;
  overflow: hidden !important;
  font-family: var(--ff-body) !important;
  z-index: 9999 !important;
}
.dgwt-wcas-suggestion {
  padding: 10px 14px !important;
  border-bottom: 1px solid var(--line) !important;
  transition: background .1s !important;
  cursor: pointer !important;
}
.dgwt-wcas-suggestion:hover,
.dgwt-wcas-suggestion.selected { background: var(--paper) !important; }
.dgwt-wcas-suggestion:last-child { border-bottom: none !important; }
.dgwt-wcas-suggestion-title {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--dark) !important;
}
.dgwt-wcas-suggestion-title mark {
  background: transparent !important;
  color: var(--orange) !important;
  font-weight: 700 !important;
}
.dgwt-wcas-suggestion-price {
  font-family: var(--ff-display) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
}
.dgwt-wcas-suggestion-price del { color: var(--mid) !important; }
.dgwt-wcas-suggestion-price ins { color: var(--orange) !important; text-decoration: none !important; }
.dgwt-wcas-details-title {
  font-family: var(--ff-mono) !important;
  font-size: 10px !important;
  letter-spacing: .1em !important;
  color: var(--mid) !important;
  padding: 8px 14px 4px !important;
  text-transform: uppercase !important;
}
.dgwt-wcas-suggestion img { border-radius: var(--r) !important; object-fit: cover !important; }
.dgwt-wcas-suggestion.dgwt-wcas-suggestion--more {
  text-align: center !important;
  color: var(--orange) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 12px !important;
  background: var(--paper) !important;
  border-bottom: none !important;
}
/* Fix: overflow visible et dropdown nähtav oleks aga border pill */
.fpv-search {
  overflow: visible !important;
  clip-path: none !important;
}
.fpv-search .dgwt-wcas-sf-wrapp {
  overflow: hidden !important;
  border-radius: var(--r-pill) !important;
}
/* Kui overlay on aktiivne - peida endiselt */
.dgwt-wcas-overlay-mobile-on .dgwt-wcas-om-bar { display: none !important; }
/* Veendu et meie search jääb nähtavaks */
.dgwt-wcas-overlay-mobile-on .fpv-search,
.dgwt-wcas-overlay-mobile-on .fpv-search .dgwt-wcas-search-wrapp {
  position: static !important;
  width: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  transform: none !important;
  z-index: auto !important;
}

/* FiboSearch */
.fpv-search {
  flex: 1;
  max-width: 460px;
}
.fpv-search .dgwt-wcas-search-wrapp,
.fpv-search .dgwt-wcas-sf-wrapp {
  width: 100% !important;
}
/* Mobile search */
.fpv-mobile-search .dgwt-wcas-search-wrapp,
.fpv-mobile-search .dgwt-wcas-sf-wrapp {
  width: 100% !important;
}
/* Meie värvid dropdownile */
.dgwt-wcas-st mark, .dgwt-wcas-st b {
  color: var(--orange) !important;
  background: transparent !important;
  font-weight: 700 !important;
}
.dgwt-wcas-suggestion-price ins {
  color: var(--orange) !important;
  text-decoration: none !important;
}
.dgwt-wcas-suggestions-wrapp {
  border-radius: var(--r-lg) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.1) !important;
  font-family: var(--ff-body) !important;
}
.dgwt-wcas-suggestion.selected,
.dgwt-wcas-suggestion:hover {
  background: var(--paper) !important;
}
/* FiboSearch mobile fixes */
@media(max-width:768px) {
  /* Peida desktop search headeris */
  .fpv-header .fpv-search { display: none; }
  /* Mobile search bar - FiboSearch täislaius */
  .fpv-mobile-search { display: block; padding: 8px 14px 10px; }
  .fpv-mobile-search .dgwt-wcas-search-wrapp { width: 100% !important; }
  /* Peida FiboSearch enda mobile overlay trigger */
  .dgwt-wcas-enable-mobile-form { display: none !important; }
  .dgwt-wcas-icon-handler { display: none !important; }
}

/* =====================================================
   PRODUCT DETAIL PAGE - 3 column layout
===================================================== */
.fpv-pdp {
  display: grid;
  grid-template-columns: 80px 1.1fr 1fr;
  gap: 16px 32px;
  padding: 28px 0 48px;
  align-items: start;
  max-width: 1200px;
}

/* Thumbs - left column */
.fpv-pdp__thumbs {
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: sticky;
  top: 80px;
}
.fpv-pdp__thumb {
  width: 68px; height: 68px;
  border: 2px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
  cursor: pointer;
  background: var(--white);
  padding: 0;
  flex-shrink: 0;
  transition: border-color .15s;
}
.fpv-pdp__thumb img { width: 100%; height: 100%; object-fit: cover; }
.fpv-pdp__thumb.is-active { border-color: var(--orange); }
.fpv-pdp__thumb:hover { border-color: var(--dark); }

/* Main image - middle column */
.fpv-pdp__main { position: sticky; top: 80px; }
.fpv-pdp__img-wrap {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  overflow: hidden;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fpv-pdp__photo { width: 100%; height: 100%; object-fit: contain; transition: opacity .2s; }
.fpv-pdp__no-img { width: 100%; height: 100%; background: var(--paper); }

/* Info - right column */
.fpv-pdp__info { display: flex; flex-direction: column; gap: 14px; }
.fpv-pdp__meta { display: flex; align-items: center; gap: 10px; }
.fpv-pdp__brand {
  font-family: var(--ff-mono);
  font-size: 11px;
  letter-spacing: .18em;
  color: var(--orange);
  text-transform: uppercase;
}
.fpv-pdp__sale-badge {
  font-family: var(--ff-mono);
  font-size: 10px;
  font-weight: 700;
  background: var(--orange);
  color: #fff;
  padding: 3px 7px;
  border-radius: 4px;
  letter-spacing: .06em;
}
.fpv-pdp__title {
  font-family: var(--ff-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -.02em;
  line-height: 1.2;
  color: var(--dark);
  margin: 0;
}

/* Rating */
.fpv-pdp__rating {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}
.fpv-pdp__stars { display: flex; gap: 1px; color: var(--orange); }
.fpv-pdp__rating-score { font-weight: 600; color: var(--dark); }
.fpv-pdp__rating-count { color: var(--mid); }
.fpv-pdp__rating-link { color: var(--orange); font-size: 12px; margin-left: auto; }

/* Short desc */
.fpv-pdp__short {
  font-size: 14px;
  color: var(--dark-2);
  line-height: 1.6;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}
.fpv-pdp__short p { margin: 0; }

/* Price */
.fpv-pdp__price-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.fpv-pdp__price-sale {
  font-family: var(--ff-display);
  font-size: 32px;
  font-weight: 700;
  color: var(--dark);
}
.fpv-pdp__price-sale .woocommerce-Price-amount {
  font-family: var(--ff-display);
  font-size: 32px;
  font-weight: 700;
}
.fpv-pdp__price-was {
  font-size: 18px;
  color: var(--mid);
  text-decoration: line-through;
  font-weight: 400;
}
.fpv-pdp__price-pct {
  font-family: var(--ff-mono);
  font-size: 12px;
  font-weight: 700;
  background: var(--orange);
  color: #fff;
  padding: 3px 8px;
  border-radius: 4px;
}
.fpv-pdp__vat { font-size: 12px; color: var(--mid); margin-top: -8px; }

/* Variations */
.fpv-pdp__variations { display: flex; flex-direction: column; gap: 14px; }
.fpv-pdp__attr-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: 8px;
}
.fpv-pdp__attr-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.fpv-pdp__pill {
  padding: 9px 16px;
  background: var(--white);
  border: 1.5px solid var(--line);
  border-radius: var(--r);
  font-size: 13px;
  font-weight: 400;
  color: var(--dark);
  cursor: pointer;
  transition: all .15s;
  font-family: var(--ff-body);
}
.fpv-pdp__pill:hover { border-color: var(--dark); }
.fpv-pdp__pill.is-active {
  background: var(--dark);
  border-color: var(--dark);
  color: #fff;
  font-weight: 600;
}

/* Stock */
.fpv-pdp__stock {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  padding: 10px 14px;
  border-radius: var(--r);
}
.fpv-pdp__stock--in { background: rgba(22,163,74,.08); border: 1px solid rgba(22,163,74,.2); color: var(--dark); }
.fpv-pdp__stock--out { background: rgba(239,68,68,.06); border: 1px solid rgba(239,68,68,.2); color: var(--dark); }
.fpv-pdp__stock-dot {
  width: 8px; height: 8px;
  border-radius: 99px;
  flex-shrink: 0;
}
.fpv-pdp__stock--in .fpv-pdp__stock-dot { background: var(--green); }
.fpv-pdp__stock--out .fpv-pdp__stock-dot { background: var(--red); }
.fpv-pdp__stock-note { color: var(--dark-2); font-size: 12px; }

/* ATC row */
.fpv-pdp__atc-row {
  display: flex;
  gap: 10px;
  align-items: center;
}
.fpv-pdp__qty {
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
  height: 48px;
  flex-shrink: 0;
}
.fpv-pdp__qty-btn {
  width: 42px; height: 48px;
  font-size: 18px;
  color: var(--mid);
  cursor: pointer;
  transition: color .15s, background .15s;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.fpv-pdp__qty-btn:hover { color: var(--dark); background: var(--paper); }
.fpv-pdp__qty-val {
  width: 42px;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  font-family: var(--ff-mono);
}
.fpv-pdp__add {
  flex: 1;
  height: 48px;
  background: var(--orange);
  color: #fff;
  border: none;
  border-radius: var(--r);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--ff-body);
}
.fpv-pdp__add:hover { background: var(--orange-h); }
.fpv-pdp__wish {
  width: 48px; height: 48px;
  border: 1px solid var(--line);
  border-radius: var(--r);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  color: var(--mid);
  transition: color .15s, border-color .15s;
  background: var(--white);
}
.fpv-pdp__wish:hover { color: var(--orange); border-color: var(--orange); }

/* Trust */
.fpv-pdp__trust {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.fpv-pdp__trust-item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 500;
  color: var(--dark-2);
}
.fpv-pdp__trust-item svg { color: var(--orange); flex-shrink: 0; }

/* Tabs */
.fpv-pdp__tabs {
  border-top: 1px solid var(--line);
  padding-bottom: 48px;
}
.fpv-pdp__tab-nav {
  display: flex;
  border-bottom: 1px solid var(--line);
  margin-bottom: 0;
}
.fpv-pdp__tab-btn {
  padding: 14px 22px;
  font-size: 14px;
  font-weight: 500;
  color: var(--mid);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color .15s, border-color .15s;
  font-family: var(--ff-body);
  margin-bottom: -1px;
}
.fpv-pdp__tab-btn:hover { color: var(--dark); }
.fpv-pdp__tab-btn.is-active { color: var(--dark); border-bottom-color: var(--orange); }
.fpv-pdp__tab-body { padding: 32px 0; }
.fpv-pdp__tab-pane { max-width: 860px; } /* piiratud laius! */

/* Description */
.fpv-pdp__desc { font-size: 14px; line-height: 1.75; color: var(--dark-2); }
.fpv-pdp__desc h1,.fpv-pdp__desc h2,.fpv-pdp__desc h3 { font-family: var(--ff-display); font-weight: 600; color: var(--dark); margin: 24px 0 10px; }
.fpv-pdp__desc h2 { font-size: 20px; }
.fpv-pdp__desc h3 { font-size: 17px; }
.fpv-pdp__desc p { margin-bottom: 14px; }
.fpv-pdp__desc img { max-width: 100%; border-radius: var(--r-lg); margin: 16px 0; }
.fpv-pdp__desc ul,.fpv-pdp__desc ol { padding-left: 20px; margin-bottom: 14px; }
.fpv-pdp__desc li { margin-bottom: 5px; }
.fpv-pdp__desc table { width: 100%; border-collapse: collapse; margin-bottom: 16px; }
.fpv-pdp__desc table td,.fpv-pdp__desc table th { padding: 10px 12px; border: 1px solid var(--line); font-size: 13px; }
.fpv-pdp__desc table th { background: var(--paper); font-weight: 600; }

/* Spec table */
.fpv-spec-table { width: 100%; border-collapse: collapse; }
.fpv-spec-table tr:nth-child(odd) td { background: var(--paper); }
.fpv-spec-table td { padding: 10px 14px; font-size: 13px; border-bottom: 1px solid var(--line); }
.fpv-spec-table td:first-child { color: var(--mid); font-family: var(--ff-mono); font-size: 11px; width: 35%; }

/* Related */
.fpv-pdp__related { border-top: 1px solid var(--line); padding: 40px 0 60px; }

/* Sticky mobile ATC */
.fpv-pdp__sticky {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: var(--white);
  border-top: 1px solid var(--line);
  padding: 10px 16px 22px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  z-index: 50;
  box-shadow: 0 -4px 16px rgba(0,0,0,.08);
}
.fpv-pdp__sticky-name { font-size: 13px; font-weight: 500; line-height: 1.3; }
.fpv-pdp__sticky-price { font-family: var(--ff-display); font-size: 16px; font-weight: 700; }

/* Mobile */
@media(max-width:900px) {
  .fpv-pdp { grid-template-columns: 72px 1fr; grid-template-rows: auto auto; }
  .fpv-pdp__info { grid-column: 1 / -1; }
}
@media(max-width:600px) {
  .fpv-pdp { grid-template-columns: 1fr; }
  .fpv-pdp__thumbs { flex-direction: row; overflow-x: auto; position: static; }
  .fpv-pdp__thumb { width: 64px; height: 64px; flex-shrink: 0; }
  .fpv-pdp__main { position: static; }
  .fpv-pdp__sticky { display: flex; }
  .fpv-pdp__title { font-size: 20px; }
}
/* Variatsioonide hind - show */
.fpv-pdp__wc-native .woocommerce-variation-price .price {
  display: block !important;
  font-family: var(--ff-display) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin-bottom: 8px !important;
}

/* Variations table */
.fpv-pdp__wc-native .variations {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 12px !important;
}
.fpv-pdp__wc-native .variations td { padding: 6px 0 !important; vertical-align: middle !important; border: none !important; }
.fpv-pdp__wc-native .variations label { font-size: 13px !important; font-weight: 600 !important; color: var(--dark) !important; margin-right: 8px !important; }
.fpv-pdp__wc-native .variations select {
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  padding: 9px 14px !important;
  font-size: 13px !important;
  color: var(--dark) !important;
  background: var(--white) !important;
  cursor: pointer !important;
  font-family: var(--ff-body) !important;
  min-width: 200px !important;
  appearance: auto !important;
}
.fpv-pdp__wc-native .reset_variations {
  font-size: 12px !important;
  color: var(--mid) !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

/* Stock */
.fpv-pdp__wc-native .stock {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 8px 12px !important;
  border-radius: var(--r) !important;
  margin-bottom: 12px !important;
}
.fpv-pdp__wc-native .in-stock { background: rgba(22,163,74,.08) !important; color: var(--green) !important; border: 1px solid rgba(22,163,74,.2) !important; }
.fpv-pdp__wc-native .out-of-stock { background: rgba(239,68,68,.06) !important; color: var(--red) !important; border: 1px solid rgba(239,68,68,.2) !important; }

/* Cart form - qty + ATC */
.fpv-pdp__wc-native .cart {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  margin-top: 8px !important;
}
.fpv-pdp__wc-native .qty {
  width: 68px !important;
  height: 48px !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  background: var(--white) !important;
  font-family: var(--ff-mono) !important;
}
.fpv-pdp__wc-native .single_add_to_cart_button {
  flex: 1 !important;
  height: 48px !important;
  background: var(--orange) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--r) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background .15s !important;
  font-family: var(--ff-body) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.fpv-pdp__wc-native .single_add_to_cart_button:hover { background: var(--orange-h) !important; }
.fpv-pdp__wc-native .single_add_to_cart_button.disabled { background: var(--light) !important; cursor: not-allowed !important; }

/* Variation description */
.fpv-pdp__wc-native .woocommerce-variation-description {
  font-size: 13px !important;
  color: var(--dark-2) !important;
  margin-bottom: 8px !important;
}


/* Peida SKU, categories, tags */
.fpv-pdp__wc-native .sku_wrapper,
.fpv-pdp__wc-native .posted_in,
.fpv-pdp__wc-native .tagged_as,
.fpv-pdp__wc-native .product_meta { display: none !important; }

/* Clear link */
.fpv-pdp__wc-native .reset_variations {
  font-size: 11px !important;
  color: var(--mid) !important;
  text-decoration: underline !important;
  display: inline-block !important;
  margin-top: 4px !important;
}

/* Pill-stiil swatch kaudu - WC swatches plugin kui on */
/* Muul juhul WC default variation pills (meie custom) */
.fpv-pdp__wc-native .fpv-pdp__attr-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.fpv-pdp__wc-native .fpv-pdp__pill {
  padding: 9px 16px;
  background: var(--white);
  border: 1.5px solid var(--line);
  border-radius: var(--r);
  font-size: 13px;
  cursor: pointer;
  font-family: var(--ff-body);
  transition: all .15s;
}
.fpv-pdp__wc-native .fpv-pdp__pill.is-active { background: var(--dark); border-color: var(--dark); color: #fff; font-weight: 600; }

/* Cart row - qty ja ATC samale reale info veerus */
.fpv-pdp__wc-native .cart {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  flex-wrap: nowrap !important;
}
.fpv-pdp__wc-native .quantity { flex-shrink: 0 !important; }
.fpv-pdp__wc-native .quantity .qty {
  width: 68px !important;
  height: 48px !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: var(--white) !important;
}

/* Veendu et wc-native jääb info veergu */
.fpv-pdp__wc-native {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
/* WC form inside fpv-pdp__form */
.fpv-pdp__form .product_title,
.fpv-pdp__form .woocommerce-product-rating,
.fpv-pdp__form .woocommerce-product-details__short-description,
.fpv-pdp__form .sku_wrapper,
.fpv-pdp__form .posted_in,
.fpv-pdp__form .tagged_as,
.fpv-pdp__form .product_meta { display: none !important; }

/* Variable price */
.fpv-pdp__form .woocommerce-variation-price .price {
  font-family: var(--ff-display) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.fpv-pdp__form .price { display: none !important; }
.fpv-pdp__form .woocommerce-variation-price { display: block !important; }

/* Variations table */
.fpv-pdp__form table.variations {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 14px !important;
}
.fpv-pdp__form table.variations td { padding: 4px 0 !important; border: none !important; vertical-align: middle !important; }
.fpv-pdp__form table.variations label {
  font-size: 13px !important; font-weight: 600 !important;
  color: var(--dark) !important; display: block !important; margin-bottom: 8px !important;
}
.fpv-pdp__form table.variations select {
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  padding: 9px 14px !important;
  font-size: 13px !important;
  color: var(--dark) !important;
  background: var(--white) !important;
  cursor: pointer !important;
  font-family: var(--ff-body) !important;
  min-width: 200px !important;
  appearance: auto !important;
}
.fpv-pdp__form .reset_variations {
  font-size: 11px !important; color: var(--mid) !important;
  text-decoration: underline !important; margin-top: 4px !important; display: inline-block !important;
}

/* Stock */
.fpv-pdp__form .stock {
  display: inline-flex !important; align-items: center !important; gap: 6px !important;
  font-size: 13px !important; font-weight: 600 !important;
  padding: 9px 14px !important; border-radius: var(--r) !important; margin-bottom: 12px !important;
}
.fpv-pdp__form .in-stock  { background: rgba(22,163,74,.08) !important; color: var(--green) !important; border: 1px solid rgba(22,163,74,.2) !important; }
.fpv-pdp__form .out-of-stock { background: rgba(239,68,68,.06) !important; color: var(--red) !important; border: 1px solid rgba(239,68,68,.2) !important; }

/* Cart row */
.fpv-pdp__form .cart {
  display: flex !important; gap: 10px !important;
  align-items: center !important; margin-top: 8px !important;
}
.fpv-pdp__form .quantity .qty {
  width: 68px !important; height: 48px !important;
  border: 1px solid var(--line) !important; border-radius: var(--r) !important;
  text-align: center !important; font-size: 15px !important; font-weight: 600 !important;
  background: var(--white) !important;
}
.fpv-pdp__form .single_add_to_cart_button {
  flex: 1 !important; height: 48px !important;
  background: var(--orange) !important; color: #fff !important;
  border: none !important; border-radius: var(--r) !important;
  font-size: 15px !important; font-weight: 700 !important;
  cursor: pointer !important; transition: background .15s !important;
  font-family: var(--ff-body) !important;
}
.fpv-pdp__form .single_add_to_cart_button:hover { background: var(--orange-h) !important; }
.fpv-pdp__form .single_add_to_cart_button.disabled,
.fpv-pdp__form .single_add_to_cart_button:disabled {
  background: var(--light) !important; cursor: not-allowed !important;
}
/* =====================================================
   PRODUCT CARD VARIANTS
===================================================== */
.fpv-card__variants {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 5px 0 2px;
}
.fpv-card__variant {
  font-family: var(--ff-mono);
  font-size: 10px;
  color: var(--dark);
  background: var(--white);
  border: 1px solid var(--line);
  padding: 4px 8px;
  border-radius: var(--r-pill);
  white-space: nowrap;
  cursor: pointer;
  transition: border-color .15s, background .15s, color .15s;
  line-height: 1.2;
}
.fpv-card__variant:hover {
  border-color: var(--dark);
}
.fpv-card__variant.is-active {
  background: var(--dark);
  color: #fff;
  border-color: var(--dark);
  font-weight: 600;
}
/* Card hover overlay */
.fpv-card__img { position: relative; aspect-ratio:1/1; background:var(--paper); overflow:hidden; }
.fpv-card__img img, .fpv-card__photo { width:100%; height:100%; object-fit:cover; transition:transform .4s, opacity .2s; }
.fpv-card:hover .fpv-card__photo { transform: scale(1.04); }
.fpv-card__noimg { width:100%; height:100%; background:var(--paper-2); }
.fpv-card__img-wrap { display:block; text-decoration:none; }

.fpv-card__hover {
  position: absolute;
  inset: 0;
  background: rgba(10,10,11,.32);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 14px;
  opacity: 0;
  transition: opacity .2s;
}
.fpv-card:hover .fpv-card__hover { opacity: 1; }
.fpv-card__atc {
  background: var(--white);
  color: var(--dark);
  font-size: 13px;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: var(--r-pill);
  white-space: nowrap;
}
.fpv-card__atc--oos {
  background: rgba(239,68,68,.12);
  color: var(--red);
  border: 1px solid rgba(239,68,68,.25);
}

/* OOS */
.fpv-card--oos { opacity: .82; }
.fpv-card--oos .fpv-card__photo { filter: grayscale(15%); }
.fpv-card__oos-badge {
  font-family: var(--ff-mono);
  font-size: 10px;
  font-weight: 600;
  color: var(--red);
  border: 1px solid rgba(239,68,68,.3);
  padding: 2px 7px;
  border-radius: var(--r-pill);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Badge (SALE) */
.fpv-card__badge {
  position: absolute;
  top: 10px; left: 10px;
  background: var(--orange);
  color: #fff;
  font-family: var(--ff-mono);
  font-size: 10px;
  font-weight: 600;
  padding: 3px 7px;
  border-radius: 4px;
  letter-spacing: .06em;
  z-index: 1;
}
/* PDP form - qty fix */
.fpv-pdp__form .quantity { flex-shrink: 0 !important; }
.fpv-pdp__form .quantity .qty,
.fpv-pdp__form input.qty {
  width: 64px !important;
  height: 48px !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r) !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: var(--white) !important;
  font-family: var(--ff-mono) !important;
  padding: 0 !important;
}
/* Peida WC default stock/meta */
.fpv-pdp__form .sku_wrapper,
.fpv-pdp__form .posted_in,
.fpv-pdp__form .tagged_as,
.fpv-pdp__form .product_meta { display: none !important; }
/* Hind variatsioonis */
.fpv-pdp__form .woocommerce-variation-price .price {
  font-family: var(--ff-display) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.fpv-pdp__form .price:not(.woocommerce-variation-price .price) { display: none !important; }
/* PDP pill variations */
.fpv-pdp__variations { display: flex; flex-direction: column; gap: 14px; }
.fpv-pdp__attr-label { font-size: 12px; font-weight: 600; color: var(--dark); margin-bottom: 8px; }
.fpv-pdp__attr-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.fpv-pdp__pill {
  padding: 9px 16px;
  background: var(--white);
  border: 1.5px solid var(--line);
  border-radius: var(--r);
  font-size: 13px;
  font-weight: 400;
  color: var(--dark);
  cursor: pointer;
  transition: all .15s;
  font-family: var(--ff-body);
}
.fpv-pdp__pill:hover { border-color: var(--dark); }
.fpv-pdp__pill.is-active { background: var(--dark); border-color: var(--dark); color: #fff; font-weight: 600; }

/* Stock */
.fpv-pdp__stock {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; padding: 10px 14px;
  border-radius: var(--r); margin: 8px 0;
}
.fpv-pdp__stock--in { background: rgba(22,163,74,.08); border: 1px solid rgba(22,163,74,.2); }
.fpv-pdp__stock--out { background: rgba(239,68,68,.06); border: 1px solid rgba(239,68,68,.2); color: var(--red); }
.fpv-pdp__stock-dot { width:8px;height:8px;border-radius:99px;flex-shrink:0; }
.fpv-pdp__stock--in .fpv-pdp__stock-dot { background:var(--green); }
.fpv-pdp__stock--out .fpv-pdp__stock-dot { background:var(--red); }
.fpv-pdp__stock-note { font-size:12px;color:var(--dark-2); }

/* Variation price */
.fpv-pdp__var-price { margin: 4px 0 8px; }
.fpv-pdp__var-price .fpv-pdp__price-sale { font-family:var(--ff-display);font-size:28px;font-weight:700;color:var(--dark); }

/* ATC row */
.fpv-pdp__atc-row { display:flex;gap:10px;align-items:center;margin-top:8px; }
.fpv-pdp__qty { display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;height:48px;flex-shrink:0; }
.fpv-pdp__qty-btn { width:42px;height:48px;font-size:18px;color:var(--mid);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s; }
.fpv-pdp__qty-btn:hover { color:var(--dark);background:var(--paper); }
.fpv-pdp__qty-val { width:42px;text-align:center;font-size:15px;font-weight:600;font-family:var(--ff-mono); }
.fpv-pdp__add { flex:1;height:48px;background:#16a34a;color:#fff;border:none;border-radius:var(--r);font-size:15px;font-weight:700;cursor:pointer;transition:background .15s;display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ff-body); }
.fpv-pdp__add:hover { background:#15803d; }
.fpv-pdp__wish { width:48px;height:48px;border:1px solid var(--line);border-radius:var(--r);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;color:var(--mid);background:var(--white);transition:color .15s,border-color .15s; }
.fpv-pdp__wish:hover { color:var(--orange);border-color:var(--orange); }
/* PDP info column essentials */
.fpv-pdp__info {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}
.fpv-pdp__title {
  font-family: var(--ff-display) !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  line-height: 1.25 !important;
  color: var(--dark) !important;
  margin: 0 !important;
}
.fpv-pdp__brand {
  font-family: var(--ff-mono);
  font-size: 11px;
  letter-spacing: .18em;
  color: var(--orange);
  text-transform: uppercase;
}
.fpv-pdp__price-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.fpv-pdp__price-sale {
  font-family: var(--ff-display);
  font-size: 30px;
  font-weight: 700;
  color: var(--dark);
}
.fpv-pdp__price-sale .woocommerce-Price-amount {
  font-family: var(--ff-display);
  font-size: 30px;
  font-weight: 700;
}
.fpv-pdp__price-was {
  font-size: 16px;
  color: var(--mid);
  text-decoration: line-through;
}
.fpv-pdp__price-pct {
  font-family: var(--ff-mono);
  font-size: 11px;
  font-weight: 700;
  background: var(--orange);
  color: #fff;
  padding: 3px 7px;
  border-radius: 4px;
}
.fpv-pdp__vat { font-size: 12px; color: var(--mid); margin-top: -8px; }
.fpv-pdp__short { font-size: 14px; color: var(--dark-2); line-height: 1.6; border-top: 1px solid var(--line); padding-top: 14px; }
.fpv-pdp__short p { margin: 0; }
.fpv-pdp__sale-badge {
  font-family: var(--ff-mono); font-size: 10px; font-weight: 700;
  background: var(--orange); color: #fff; padding: 3px 7px; border-radius: 4px;
}
.fpv-pdp__trust {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
  padding-top: 14px; border-top: 1px solid var(--line);
}
.fpv-pdp__trust-item {
  display: flex; align-items: center; gap: 7px;
  font-size: 12px; font-weight: 500; color: var(--dark-2);
}
.fpv-pdp__trust-item svg { color: var(--orange); flex-shrink: 0; }

/* Description truncate - fade + centered Read more */
.fpv-pdp__desc-wrap {
  position: relative;
}
.fpv-pdp__desc-wrap.is-truncated .fpv-pdp__desc {
  max-height: 360px;
  overflow: hidden;
}
.fpv-pdp__desc-wrap.is-truncated::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 48px;
  background: linear-gradient(to bottom, rgba(246,245,241,0), rgba(246,245,241,0.85));
  pointer-events: none;
}
.fpv-pdp__read-more {
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 0 4px;
  font-size: 13px;
  font-weight: 600;
  color: var(--dark);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--ff-body);
  position: relative;
  z-index: 1;
}
.fpv-pdp__read-more span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 20px;
  border: 1.5px solid var(--line);
  border-radius: var(--r-pill);
  background: var(--white);
  transition: border-color .15s, background .15s;
}
.fpv-pdp__read-more:hover span {
  border-color: var(--dark);
  background: var(--paper);
}

/* Description max-width */
.fpv-pdp__desc { max-width: 860px; }

/* Tabs content centered */
.fpv-pdp__tab-body { max-width: 860px; }
.fpv-pdp__read-more {
  position: relative;
  z-index: 2;
  margin-top: -40px;
}

/* ---- Toast notification ---- */
#fpv-toast {
  position: fixed;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%) translateY(20px);
  background: #1A1A1A;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 600;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  z-index: 99999;
  pointer-events: none;
  white-space: nowrap;
}
#fpv-toast svg {
  color: #4ade80;
  flex-shrink: 0;
}
#fpv-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.fpv-pdp__atc.is-loading {
  opacity: 0.7;
  pointer-events: none;
}


/* =====================================================
   Mini Cart Drawer
===================================================== */
#fpv-minicart-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  z-index: 9998;
}
#fpv-minicart-overlay.is-open { display: block; }

#fpv-minicart {
  position: fixed;
  top: 0; right: 0; bottom: 0;
  width: 400px;
  max-width: 100vw;
  background: #fff;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform .28s cubic-bezier(.4,0,.2,1);
  box-shadow: -8px 0 40px rgba(0,0,0,0.13);
}
#fpv-minicart.is-open { transform: translateX(0); }

/* Head */
.fpv-minicart__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 24px;
  border-bottom: 1px solid var(--line);
  flex-shrink: 0;
}
.fpv-minicart__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
  letter-spacing: -.01em;
}
.fpv-minicart__close {
  background: none;
  border: none;
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px;
  cursor: pointer;
  color: var(--mid);
  transition: background .15s, color .15s;
  line-height: 1;
}
.fpv-minicart__close:hover { background: var(--paper); color: var(--ink); }

/* Body - scrollable item list */
.fpv-minicart__body {
  flex: 1;
  overflow-y: auto;
  padding: 8px 0;
}

/* WC cart list */
.fpv-minicart__body .woocommerce-mini-cart {
  list-style: none;
  margin: 0; padding: 0;
}
.fpv-minicart__body .woocommerce-mini-cart-item {
  display: grid;
  grid-template-columns: 72px 1fr auto;
  grid-template-rows: auto auto;
  gap: 0 12px;
  padding: 14px 24px;
  border-bottom: 1px solid var(--line);
  align-items: start;
  position: relative;
}
/* Remove button - top right */
.fpv-minicart__body .woocommerce-mini-cart-item .remove_from_cart_button {
  grid-column: 3;
  grid-row: 1;
  color: var(--mid);
  font-size: 16px;
  text-decoration: none;
  line-height: 1;
  padding: 2px 4px;
  border-radius: 4px;
  transition: color .15s, background .15s;
}
.fpv-minicart__body .woocommerce-mini-cart-item .remove_from_cart_button:hover {
  color: #c00;
  background: #fff0f0;
}
/* Product image */
.fpv-minicart__body .woocommerce-mini-cart-item img {
  grid-column: 1;
  grid-row: 1 / 3;
  width: 72px;
  height: 72px;
  object-fit: contain;
  border-radius: 6px;
  background: var(--paper);
  display: block;
}
/* Product link + name */
.fpv-minicart__body .woocommerce-mini-cart-item a:not(.remove_from_cart_button) {
  grid-column: 2;
  grid-row: 1;
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
  line-height: 1.35;
  display: block;
  margin-bottom: 4px;
}
.fpv-minicart__body .woocommerce-mini-cart-item a:not(.remove_from_cart_button):hover {
  color: var(--orange);
}
/* Quantity × price */
.fpv-minicart__body .woocommerce-mini-cart-item .quantity {
  grid-column: 2;
  grid-row: 2;
  font-size: 13px;
  color: var(--mid);
}
.fpv-minicart__body .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
  color: var(--orange);
  font-weight: 700;
}
/* Variation data */
.fpv-minicart__body .variation {
  font-size: 11px;
  color: var(--mid);
  margin: 2px 0 0;
}

/* Subtotal row */
.fpv-minicart__body .woocommerce-mini-cart__total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
  border-bottom: 1px solid var(--line);
}
.fpv-minicart__body .woocommerce-mini-cart__total .woocommerce-Price-amount {
  color: var(--orange);
  font-size: 17px;
}

/* Hide WC default buttons inside body - we use our own footer */
.fpv-minicart__body .woocommerce-mini-cart__buttons { display: none !important; }

/* Empty message */
.fpv-minicart__body .woocommerce-mini-cart__empty-message {
  text-align: center;
  color: var(--mid);
  font-size: 14px;
  padding: 48px 24px;
}

/* Footer buttons */
.fpv-minicart__foot {
  padding: 16px 24px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
  background: #fff;
}
.fpv-minicart__foot a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 13px 0;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.fpv-minicart__foot .fpv-btn--orange {
  background: var(--orange);
  color: #fff;
}
.fpv-minicart__foot .fpv-btn--orange:hover { background: var(--orange-h); }
.fpv-minicart__foot .fpv-btn--ghost {
  background: transparent;
  color: var(--ink);
  border: 1.5px solid var(--line);
}
.fpv-minicart__foot .fpv-btn--ghost:hover { background: var(--paper); }

/* =====================================================
   Mini Cart Drawer
===================================================== */
#fpv-minicart-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  z-index: 9998;
}
#fpv-minicart-overlay.is-open { display: block; }

#fpv-minicart {
  position: fixed;
  top: 0; right: 0; bottom: 0;
  width: 400px;
  max-width: 100vw;
  background: #fff;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform .28s cubic-bezier(.4,0,.2,1);
  box-shadow: -8px 0 40px rgba(0,0,0,0.12);
}
#fpv-minicart.is-open { transform: translateX(0); }

.fpv-minicart__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 24px;
  border-bottom: 1px solid var(--line);
  flex-shrink: 0;
}
.fpv-minicart__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
}
.fpv-minicart__close {
  background: none;
  border: none;
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  cursor: pointer;
  color: var(--mid);
  transition: background .15s, color .15s;
  line-height: 1;
}
.fpv-minicart__close:hover { background: var(--paper); color: var(--ink); }

.fpv-minicart__body {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
}

/* Inner wrapper from template */
.fpv-minicart-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Item list */
.fpv-mc-list {
  list-style: none;
  margin: 0; padding: 0;
  flex: 1;
}

.fpv-mc-item {
  display: grid;
  grid-template-columns: 72px 1fr 28px;
  gap: 12px;
  padding: 14px 24px;
  border-bottom: 1px solid var(--line);
  align-items: center;
}

.fpv-mc-item__img {
  width: 72px;
  height: 72px;
  flex-shrink: 0;
}
.fpv-mc-item__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 6px;
  background: var(--paper);
  display: block;
}
.fpv-mc-item__img a {
  display: block;
  height: 100%;
}

.fpv-mc-item__info {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.fpv-mc-item__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
  line-height: 1.35;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
a.fpv-mc-item__name:hover { color: var(--orange); }

.fpv-mc-item__meta {
  font-size: 11px;
  color: var(--mid);
  line-height: 1.4;
}
.fpv-mc-item__meta dl,
.fpv-mc-item__meta dt,
.fpv-mc-item__meta dd { display: inline; margin: 0; }
.fpv-mc-item__meta dt::after { content: ": "; }
.fpv-mc-item__meta dd::after { content: " "; }

.fpv-mc-item__qty {
  font-size: 13px;
  color: var(--mid);
}
.fpv-mc-item__price {
  color: var(--orange);
  font-weight: 700;
}

.fpv-mc-item__remove {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--mid);
  font-size: 18px;
  text-decoration: none;
  line-height: 1;
  transition: background .15s, color .15s;
  justify-self: center;
}
.fpv-mc-item__remove:hover { background: #fff0f0; color: #c00; }

/* Subtotal */
.fpv-mc-subtotal {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  border-top: 2px solid var(--line);
  margin-top: 4px;
}
.fpv-mc-subtotal__price {
  font-size: 18px;
  font-weight: 700;
  color: var(--orange);
}

/* Empty state */
.fpv-mc-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 60px 24px;
  color: var(--mid);
  font-size: 14px;
}

/* Footer buttons */
.fpv-minicart__foot {
  padding: 16px 24px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
  background: #fff;
}
.fpv-minicart__foot a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 13px 0;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.fpv-minicart__foot .fpv-btn--orange {
  background: var(--orange);
  color: #fff;
}
.fpv-minicart__foot .fpv-btn--orange:hover { background: var(--orange-h); }
.fpv-minicart__foot .fpv-btn--ghost {
  background: transparent;
  color: var(--ink);
  border: 1.5px solid var(--line);
}
.fpv-minicart__foot .fpv-btn--ghost:hover { background: var(--paper); }

/* =====================================================
   Static Pages (page.php)
===================================================== */
.fpv-page-wrap {
  max-width: 780px;
  padding-top: 0;
  padding-bottom: 64px;
}
.fpv-page__title {
  font-size: clamp(24px, 4vw, 36px);
  font-weight: 800;
  color: var(--ink);
  margin: 28px 0 24px;
  letter-spacing: -.02em;
  line-height: 1.15;
}

/* Prose typography for plain content pages */
.fpv-prose {
  font-size: 15px;
  line-height: 1.75;
  color: #3a3a3a;
}
.fpv-prose h2 {
  font-size: 20px;
  font-weight: 700;
  color: var(--ink);
  margin: 36px 0 12px;
  letter-spacing: -.01em;
}
.fpv-prose h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--ink);
  margin: 28px 0 8px;
}
.fpv-prose p {
  margin: 0 0 16px;
}
.fpv-prose ul, .fpv-prose ol {
  margin: 0 0 16px;
  padding-left: 24px;
}
.fpv-prose li {
  margin-bottom: 6px;
}
.fpv-prose a {
  color: var(--orange);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.fpv-prose a:hover {
  color: var(--orange-h);
}
.fpv-prose strong {
  font-weight: 700;
  color: var(--ink);
}
.fpv-prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  margin: 20px 0;
}
.fpv-prose th {
  background: var(--paper);
  font-weight: 600;
  text-align: left;
  padding: 10px 14px;
  border: 1px solid var(--line);
}
.fpv-prose td {
  padding: 10px 14px;
  border: 1px solid var(--line);
  vertical-align: top;
}
.fpv-prose blockquote {
  border-left: 3px solid var(--orange);
  margin: 20px 0;
  padding: 12px 20px;
  background: var(--paper);
  border-radius: 0 6px 6px 0;
  font-style: italic;
  color: #555;
}
.fpv-prose hr {
  border: none;
  border-top: 1px solid var(--line);
  margin: 32px 0;
}
.fpv-prose img {
  max-width: 100%;
  border-radius: 8px;
}

/* =====================================================
   Blog Grid + Cards
===================================================== */
.fpv-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 48px;
}
.fpv-blog-card {
  background: #fff;
  border-radius: 12px;
  border: 1px solid var(--line);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .2s, transform .2s;
}
.fpv-blog-card:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.09);
  transform: translateY(-2px);
}
.fpv-blog-card__img {
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: var(--paper);
}
.fpv-blog-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s;
}
.fpv-blog-card:hover .fpv-blog-card__img img {
  transform: scale(1.04);
}
.fpv-blog-card__body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 8px;
}
.fpv-blog-card__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--mid);
}
.fpv-blog-card__cat {
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  padding: 2px 8px;
  border-radius: 100px;
}
.fpv-blog-card__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin: 0;
}
.fpv-blog-card__title a {
  color: inherit;
  text-decoration: none;
}
.fpv-blog-card__title a:hover { color: var(--orange); }
.fpv-blog-card__excerpt {
  font-size: 13px;
  color: var(--mid);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.fpv-blog-card__link {
  font-size: 13px;
  font-weight: 600;
  color: var(--orange);
  text-decoration: none;
  margin-top: 4px;
}
.fpv-blog-card__link:hover { color: var(--orange-h); }

@media (max-width: 860px) {
  .fpv-blog-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 560px) {
  .fpv-blog-grid { grid-template-columns: 1fr; }
}



/* =====================================================
   About Us Page
===================================================== */
.fpv-about { background: var(--paper); }

/* Hero */
.fpv-about .fpv-about__hero {
  padding: 72px 0 64px;
  text-align: center;
  position: relative;
}
.fpv-about .fpv-about__hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(10,10,11,0.72) 0%, rgba(10,10,11,0.60) 100%);
  pointer-events: none;
}
.fpv-about .fpv-about__hero > .fpv-container {
  position: relative;
  z-index: 1;
}
.fpv-about .fpv-about__tag {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--orange);
  margin: 0 0 10px;
  display: block;
}
.fpv-about .fpv-about__title {
  font-size: clamp(32px, 5vw, 56px);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -.02em;
  margin: 0 0 16px;
  font-family: var(--ff-display);
}
.fpv-about .fpv-about__sub {
  font-size: 15px;
  color: rgba(255,255,255,.55);
  max-width: 480px;
  margin: 0 auto 28px;
  line-height: 1.65;
}
.fpv-about .fpv-about__cta {
  display: inline-block;
  padding: 12px 28px;
  border-radius: var(--r);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  background: var(--orange);
  color: #fff;
  transition: background .15s;
}
.fpv-about .fpv-about__cta:hover { background: var(--orange-h); }

/* Stats - centered numbers */
.fpv-about .fpv-about__stats {
  background: var(--white);
  border-bottom: 1px solid var(--line);
}
.fpv-about .fpv-about__stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 28px;
}
.fpv-about .fpv-about__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 32px 0;
  border-right: 1px solid var(--line);
  gap: 6px;
  width: 100%;
}
.fpv-about .fpv-about__stat:last-child { border-right: none; }
.fpv-about .fpv-about__stat-n {
  font-size: 32px;
  font-weight: 700;
  color: var(--orange);
  letter-spacing: -.02em;
  line-height: 1;
  font-family: var(--ff-display);
}
.fpv-about .fpv-about__stat-l {
  font-size: 12px;
  color: var(--mid);
  font-weight: 500;
  text-align: center;
}

/* Mission section */
.fpv-about .fpv-about__section {
  padding: 64px 0;
}
.fpv-about .fpv-about__two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}
.fpv-about .fpv-about__two-col--rev { direction: rtl; }
.fpv-about .fpv-about__two-col--rev > * { direction: ltr; }

/* Tag is always left-aligned inside its column */
.fpv-about__text .fpv-about .fpv-about__tag {
  text-align: left;
  margin-bottom: 6px;
}
.fpv-about .fpv-about__h2 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--dark);
  letter-spacing: -.015em;
  line-height: 1.2;
  margin: 0 0 14px;
  font-family: var(--ff-display);
}
.fpv-about .fpv-about__text p {
  font-size: 14px;
  line-height: 1.75;
  color: var(--dark-2);
  margin-bottom: 14px;
}
.fpv-about .fpv-about__list {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.fpv-about .fpv-about__list li {
  padding: 11px 14px;
  background: var(--white);
  border-radius: var(--r);
  border: 1px solid var(--line);
  font-size: 13px;
  line-height: 1.5;
  color: var(--dark-2);
}
.fpv-about .fpv-about__list li strong { color: var(--dark); }

/* Value cards */
.fpv-about .fpv-about__values {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fpv-about .fpv-about__value-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 16px 20px;
  display: flex;
  gap: 14px;
  align-items: center;
  transition: box-shadow .2s;
}
.fpv-about .fpv-about__value-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.07); }
.fpv-about .fpv-about__value-icon { font-size: 20px; flex-shrink: 0; }
.fpv-about .fpv-about__value-card h3 {
  font-size: 14px;
  font-weight: 600;
  color: var(--dark);
  margin: 0 0 2px;
}
.fpv-about .fpv-about__value-card p {
  font-size: 13px;
  color: var(--mid);
  margin: 0;
  line-height: 1.5;
}

/* Founder */
.fpv-about .fpv-about__founder {
  background: var(--white);
  padding: 64px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.fpv-about__founder .fpv-about .fpv-about__two-col {
  align-items: center;
}
.fpv-about .fpv-about__founder-img {
  display: flex;
  align-items: center;
  justify-content: center;
}
.fpv-about .fpv-about__founder-img img {
  width: 240px;
  height: 240px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--orange);
  box-shadow: 0 8px 24px rgba(0,0,0,.1);
}
.fpv-about .fpv-about__quote {
  border-left: 3px solid var(--orange);
  padding: 12px 18px;
  background: var(--paper);
  border-radius: 0 var(--r) var(--r) 0;
  font-style: italic;
  font-size: 14px;
  color: var(--dark-2);
  line-height: 1.7;
  margin: 16px 0 20px;
}

/* Contact */
.fpv-about .fpv-about__contact {
  padding: 64px 0;
  background: var(--paper);
}
.fpv-about .fpv-about__contact-box {
  background: var(--dark);
  border-radius: var(--r-xl);
  padding: 48px;
  text-align: center;
}
.fpv-about__contact-box .fpv-about .fpv-about__h2 {
  color: #fff;
  margin-bottom: 10px;
}
.fpv-about .fpv-about__contact-box > p {
  color: rgba(255,255,255,.55);
  font-size: 14px;
  margin-bottom: 28px;
}
.fpv-about .fpv-about__contact-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.fpv-about .fpv-about__contact-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--r-lg);
  padding: 20px 18px;
  display: flex;
  gap: 12px;
  align-items: center;
  text-decoration: none;
  transition: background .15s, border-color .15s;
  text-align: left;
}
.fpv-about .fpv-about__contact-card:hover {
  background: rgba(255,255,255,.1);
  border-color: var(--orange);
}
.fpv-about .fpv-about__contact-icon { font-size: 22px; flex-shrink: 0; }
.fpv-about .fpv-about__contact-card strong {
  display: block;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 2px;
}
.fpv-about .fpv-about__contact-card span {
  display: block;
  color: rgba(255,255,255,.45);
  font-size: 12px;
}

/* Responsive */
@media (max-width: 860px) {
  .fpv-about .fpv-about__stats-grid { grid-template-columns: repeat(2,1fr); }
  .fpv-about .fpv-about__stat:nth-child(2) { border-right: none; }
  .fpv-about .fpv-about__stat { border-bottom: 1px solid var(--line); }
  .fpv-about .fpv-about__two-col { grid-template-columns: 1fr; gap: 28px; }
  .fpv-about .fpv-about__two-col--rev { direction: ltr; }
  .fpv-about .fpv-about__contact-grid { grid-template-columns: 1fr; }
  .fpv-about .fpv-about__contact-box { padding: 28px 20px; }
  .fpv-about .fpv-about__founder-img img { width: 160px; height: 160px; }
}

/* =====================================================
   HP Category Grid (fpv-hp-cats)
===================================================== */
.fpv-hp-cats {
  padding: 12px 0 0;
  background: transparent;
}
.fpv-hp-cats__inner {
  background: var(--orange);
  border-radius: var(--r-xl);
  padding: 32px 28px 40px;
}
.fpv-hp-cats .fpv-section-hd { margin-bottom: 20px; }
.fpv-hp-cats .fpv-section-title { color: #fff; }
.fpv-hp-cats .fpv-link { color: rgba(255,255,255,.7); }
.fpv-hp-cats .fpv-link:hover { color: var(--orange); }

.fpv-hp-cats__grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}

.fpv-hp-cat {
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--r-lg);
  padding: 20px 16px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: background .15s, border-color .15s, transform .15s;
}
.fpv-hp-cat:hover {
  background: rgba(255,255,255,.25);
  border-color: rgba(255,255,255,.5);
  transform: translateY(-2px);
}
.fpv-hp-cat__icon {
  width: 48px;
  height: 48px;
  background: rgba(255,255,255,.2);
  border-radius: var(--r);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
}
.fpv-hp-cat:hover .fpv-hp-cat__icon {
  background: rgba(255,255,255,.35);
}
.fpv-hp-cat__name {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  font-family: var(--ff-display);
  line-height: 1.2;
}
.fpv-hp-cat__count {
  font-size: 11px;
  color: rgba(255,255,255,.4);
  text-transform: uppercase;
  letter-spacing: .06em;
}

@media (max-width: 860px) {
  .fpv-hp-cats__grid { grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 500px) {
  .fpv-hp-cats__grid { grid-template-columns: repeat(2,1fr); }
}

/* =====================================================
   HP Hero Banner
===================================================== */
.fpv-hp-banner {
  padding: 20px 0 0;
}
.fpv-hp-banner__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-radius: var(--r-xl);
  overflow: hidden;
  min-height: 240px;
  margin: 0;
}

/* Left dark side */
.fpv-hp-banner__left {
  background: var(--dark);
  padding: 32px 44px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
}
.fpv-hp-banner__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
}
.fpv-hp-banner__pill {
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  padding: 3px 10px;
  border-radius: var(--r-pill);
}
.fpv-hp-banner__flag {
  font-size: 18px;
  line-height: 1;
}
.fpv-hp-banner__flag-label {
  font-size: 11px;
  font-weight: 600;
  color: rgba(255,255,255,.5);
  letter-spacing: .1em;
}
.fpv-hp-banner__title {
  font-family: var(--ff-display);
  font-size: clamp(22px, 2.8vw, 34px);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -.02em;
  margin: 0;
}
.fpv-hp-banner__title span {
  color: var(--orange);
}
.fpv-hp-banner__sub {
  font-size: 14px;
  color: rgba(255,255,255,.55);
  line-height: 1.5;
  margin: 0;
}
.fpv-hp-banner__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--orange);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 9px 18px;
  border-radius: var(--r-pill);
  text-decoration: none;
  width: fit-content;
  transition: background .15s;
}
.fpv-hp-banner__cta:hover { background: var(--orange-h); }

/* Right orange side */
.fpv-hp-banner__right {
  background: var(--orange);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 24px;
}
.fpv-hp-banner__map {
  width: 70%;
  height: 100%;
  max-height: 220px;
  object-fit: contain;
  display: block;
  filter: brightness(0) invert(1);
  opacity: .95;
}
.fpv-hp-banner__badge {
  position: absolute;
  bottom: 20px;
  right: 20px;
  background: #fff;
  border-radius: var(--r);
  padding: 10px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 4px 16px rgba(0,0,0,.12);
}
.fpv-hp-banner__badge-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--mid);
  text-transform: uppercase;
}
.fpv-hp-banner__badge-val {
  font-size: 13px;
  font-weight: 700;
  color: var(--dark);
}

@media (max-width: 768px) {
  .fpv-hp-banner__grid { grid-template-columns: 1fr; }
  .fpv-hp-banner__right { min-height: 200px; }
  .fpv-hp-banner__left { padding: 24px 20px; }
}


/* =====================================================
   Track Order - ParcelPanel overrides
===================================================== */
.fpv-page-wrap .woocommerce.pp-tracking-section {
  font-family: var(--ff-body);
}

/* Main container */
.pp-test-box {
  background: var(--white) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-xl) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.06) !important;
  padding: 40px !important;
}

/* Input fields */
.pp-tracking-section input[type="text"],
.pp-tracking-section input[type="email"] {
  border: 1.5px solid var(--line) !important;
  border-radius: var(--r) !important;
  font-family: var(--ff-body) !important;
  font-size: 14px !important;
  padding: 11px 14px !important;
  background: var(--paper) !important;
  color: var(--dark) !important;
  transition: border-color .15s !important;
  width: 100% !important;
}
.pp-tracking-section input[type="text"]:focus,
.pp-tracking-section input[type="email"]:focus {
  border-color: var(--orange) !important;
  outline: none !important;
  background: #fff !important;
}

/* Labels */
.pp-tracking-section label,
.pp-tracking-section .pp-form__label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--mid) !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* Track buttons */
.pp-tracking-section button,
.pp-tracking-section .pp-btn,
.pp-tracking-section input[type="submit"] {
  background: var(--orange) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--r) !important;
  font-family: var(--ff-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 24px !important;
  cursor: pointer !important;
  transition: background .15s !important;
  width: 100% !important;
}
.pp-tracking-section button:hover,
.pp-tracking-section .pp-btn:hover {
  background: var(--orange-h) !important;
}

/* OR divider */
.pp-tracking-form__container__or {
  color: var(--mid) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Divider line */
.pp-tracking-section .pp-tracking-form__container__or::before,
.pp-tracking-section .pp-tracking-form__container__or::after {
  border-color: var(--line) !important;
}

/* Powered by - hide or style */
.pp-tracking-section [class*="powered"],
.pp-tracking-section [class*="branding"] {
  color: var(--light) !important;
  font-size: 11px !important;
}

/* Track Order intro */
.fpv-track-intro {
  max-width: 780px;
  margin: 0 auto 32px;
  padding: 32px 0 0;
  text-align: center;
}
.fpv-track-intro__tag {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--orange);
  margin: 0 0 10px;
}
.fpv-track-intro__title {
  font-size: clamp(24px, 3.5vw, 36px);
  font-weight: 700;
  color: var(--dark);
  font-family: var(--ff-display);
  letter-spacing: -.02em;
  margin: 0 0 12px;
}
.fpv-track-intro__sub {
  font-size: 15px;
  color: var(--mid);
  line-height: 1.65;
  max-width: 520px;
  margin: 0 auto 20px;
}
.fpv-track-intro__badges {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.fpv-track-intro__badges span {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-pill);
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
  color: var(--dark-2);
}

/* =====================================================
   Checkout - minimal safe CSS
===================================================== */
.woocommerce-checkout .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 28px 64px;
}

/* 2-col layout */
.woocommerce-checkout form.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: 1fr 420px !important;
  gap: 28px !important;
  align-items: start !important;
}
#customer_details { grid-column: 1; grid-row: 1; }
.woocommerce-additional-fields { grid-column: 1; grid-row: 2; }
#order_review_heading { display: none !important; }
#order_review { grid-column: 2; grid-row: 1 / 3; }

/* Boxes */
#customer_details,
.woocommerce-additional-fields {
  background: #fff;
  border: 1px solid #ececea;
  border-radius: 14px;
  padding: 28px;
}
#customer_details h3,
.woocommerce-additional-fields h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  margin: 0 0 20px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #ececea !important;
}

/* Order table */
.woocommerce-checkout-review-order-table {
  width: 100%;
  background: #fff;
  border: 1px solid #ececea;
  border-radius: 14px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  margin-bottom: 16px;
}
.woocommerce-checkout-review-order-table thead th {
  background: #f6f5f1;
  padding: 11px 18px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #7a7a82;
  border-bottom: 1px solid #ececea;
}
.woocommerce-checkout-review-order-table tbody td {
  padding: 12px 18px;
  font-size: 13px;
  border-bottom: 1px solid #ececea;
  vertical-align: middle;
}
.woocommerce-checkout-review-order-table .product-name { font-weight: 600; }
.woocommerce-checkout-review-order-table .product-total { text-align: right; font-weight: 700; }
.woocommerce-checkout-review-order-table tfoot td,
.woocommerce-checkout-review-order-table tfoot th {
  padding: 11px 18px;
  border-top: 1px solid #ececea;
  font-size: 13px;
}
.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce-checkout-review-order-table tfoot .order-total td {
  font-size: 17px;
  font-weight: 800;
  color: #ff6a00;
  background: #f6f5f1;
}

/* Payment box */
#payment {
  background: #fff;
  border: 1px solid #ececea;
  border-radius: 14px;
  overflow: hidden;
}
#payment .wc_payment_methods {
  list-style: none;
  padding: 16px 20px;
  margin: 0;
  border-bottom: 1px solid #ececea;
}
#payment .wc_payment_method { margin-bottom: 8px; }
#payment .wc_payment_method > label {
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer;
}
#payment input[type=radio] { accent-color: #ff6a00; }
#payment .payment_box {
  background: #f6f5f1;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 12px;
  color: #7a7a82;
  margin: 8px 0 0 22px;
}
#payment .place-order {
  padding: 20px;
  border-top: 1px solid #ececea;
}
#payment #place_order {
  width: 100% !important;
  background: #ff6a00 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 15px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background .15s !important;
}
#payment #place_order:hover { background: #e55a00 !important; }
#payment .woocommerce-privacy-policy-text {
  font-size: 11px;
  color: #7a7a82;
  margin-bottom: 10px;
  padding: 0 20px;
}
#payment .woocommerce-privacy-policy-text a { color: #ff6a00; }

/* Inputs */
.woocommerce-checkout .form-row input[type=text],
.woocommerce-checkout .form-row input[type=email],
.woocommerce-checkout .form-row input[type=tel],
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  border: 1.5px solid #ececea !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  background: #f6f5f1 !important;
  color: #0a0a0b !important;
  width: 100% !important;
  box-shadow: none !important;
}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus {
  border-color: #ff6a00 !important;
  outline: none !important;
  background: #fff !important;
}
.woocommerce-checkout .form-row label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #7a7a82 !important;
  margin-bottom: 5px !important;
  display: block !important;
}

/* Coupon */
.woocommerce-form-coupon-toggle {
  background: #fff;
  border: 1px solid #ececea;
  border-left: 3px solid #ff6a00;
  border-radius: 8px;
  padding: 12px 20px;
  margin-bottom: 20px;
  font-size: 13px;
}
.woocommerce-form-coupon-toggle a { color: #ff6a00 !important; font-weight: 600; }

/* Mobile */
@media (max-width: 860px) {
  .woocommerce-checkout form.woocommerce-checkout {
    grid-template-columns: 1fr !important;
  }
  #order_review { grid-column: 1; grid-row: auto; }
  .woocommerce-checkout .woocommerce { padding: 20px 16px 48px; }
}

/* Hide search on checkout & cart */
.woocommerce-checkout .fpv-search,
.woocommerce-cart .fpv-search { display: none !important; }

/* =====================================================
   Cart - WooCommerce Blocks
===================================================== */
/* Fix large product images */
.wc-block-cart-item__image,
.wc-block-cart-item__image a {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}
.wc-block-cart-item__image img {
  width: 72px !important;
  height: 72px !important;
  max-width: 72px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  background: #f6f5f1 !important;
  display: block !important;
}
/* Cart layout */
.wc-block-cart {
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 28px 64px;
}
/* Items */
.wc-block-cart-items {
  background: #fff;
  border: 1px solid #ececea;
  border-radius: 14px;
  overflow: hidden;
}
.wc-block-cart-item__wrap {
  padding: 16px 20px !important;
  border-bottom: 1px solid #ececea !important;
}
.wc-block-cart-item__wrap:last-child { border-bottom: none !important; }
.wc-block-components-product-name {
  font-size: 14px !important;
  font-weight: 600 !important;
}
/* Quantity */
.wc-block-components-quantity-selector {
  border: 1.5px solid #ececea !important;
  border-radius: 8px !important;
  overflow: hidden;
}
.wc-block-components-quantity-selector__button {
  background: none !important;
  border: none !important;
  padding: 6px 12px !important;
  cursor: pointer;
}
.wc-block-components-quantity-selector__input {
  border: none !important;
  border-left: 1.5px solid #ececea !important;
  border-right: 1.5px solid #ececea !important;
  width: 44px !important;
  text-align: center !important;
  font-weight: 600 !important;
}
/* Remove */
.wc-block-cart-item__remove-link { color: #7a7a82 !important; }
.wc-block-cart-item__remove-link:hover { color: #ef4444 !important; }
/* Totals sidebar */
.wc-block-cart__sidebar .wc-block-components-totals-wrapper {
  background: #fff !important;
  border: 1px solid #ececea !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  padding: 0 !important;
}
.wc-block-components-totals-item {
  padding: 13px 20px !important;
  border-bottom: 1px solid #ececea !important;
  font-size: 14px !important;
}
.wc-block-components-totals-footer-item {
  padding: 16px 20px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  background: #f6f5f1 !important;
  border-bottom: none !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #ff6a00 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
}
/* Proceed to checkout */
.wc-block-cart__submit-button {
  width: 100% !important;
  background: #ff6a00 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 14px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  margin-top: 12px !important;
}
.wc-block-cart__submit-button:hover { background: #e55a00 !important; }
@media (max-width: 860px) {
  .wc-block-cart { padding: 20px 16px 48px; }
}

/* Hide product description images in cart */
.wc-block-cart-item__description img,
.wc-block-cart-item__product .wc-block-components-product-details img,
.wc-block-cart-items img:not(.wc-block-cart-item__image img) {
  display: none !important;
}

/* =====================================================
   Thank You Page
===================================================== */
.fpv-ty {
  max-width: 860px;
  margin: 0 auto;
  padding: 48px 28px 80px;
}
.fpv-ty__hero {
  text-align: center;
  margin-bottom: 36px;
}
.fpv-ty__check {
  width: 64px;
  height: 64px;
  background: #16a34a;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin: 0 auto 20px;
}
.fpv-ty__title {
  font-size: clamp(24px, 3.5vw, 36px);
  font-weight: 700;
  color: var(--dark);
  font-family: var(--ff-display);
  margin: 0 0 10px;
}
.fpv-ty__sub {
  font-size: 15px;
  color: var(--mid);
  line-height: 1.6;
  display: block;
  margin-bottom: 24px;
}
.fpv-ty__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
}
.fpv-ty__box {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  padding: 24px;
}
.fpv-ty__box h3 {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--mid);
  margin: 0 0 16px;
}
.fpv-ty__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid var(--line);
  font-size: 14px;
}
.fpv-ty__row:last-child { border-bottom: none; }
.fpv-ty__row span { color: var(--mid); }
.fpv-ty__row strong { color: var(--dark); }
.fpv-ty__items {
  margin-bottom: 16px;
}
.fpv-ty__item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}
.fpv-ty__item:last-child { border-bottom: none; }
.fpv-ty__item-img {
  width: 56px;
  height: 56px;
  object-fit: contain;
  border-radius: var(--r);
  background: var(--paper);
  flex-shrink: 0;
}
.fpv-ty__item-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.fpv-ty__item-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--dark);
}
.fpv-ty__item-qty {
  font-size: 12px;
  color: var(--mid);
}
.fpv-ty__item-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--dark);
  white-space: nowrap;
}
.fpv-ty__actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  margin-top: 24px;
}
.fpv-ty__btn {
  padding: 13px 28px;
  border-radius: var(--r);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s;
}
.fpv-ty__btn--orange { background: var(--orange); color: #fff; }
.fpv-ty__btn--orange:hover { background: var(--orange-h); }
.fpv-ty__btn--ghost { background: var(--white); color: var(--dark); border: 1.5px solid var(--line); }
.fpv-ty__btn--ghost:hover { background: var(--paper); }

@media (max-width: 640px) {
  .fpv-ty__grid { grid-template-columns: 1fr; }
  .fpv-ty__actions { flex-direction: column; }
}

.fpv-footer__contact { margin-top: 24px; }
.fpv-footer__contact h4 {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  color: rgba(207,207,212,.5);
  margin: 0 0 10px;
}
.fpv-footer__contact ul { list-style: none; padding: 0; margin: 0; }
.fpv-footer__contact li {
  font-size: 13px;
  color: rgba(207,207,212,.7);
  margin-bottom: 6px;
  line-height: 1.4;
}
.fpv-footer__contact a {
  color: rgba(207,207,212,.7);
  text-decoration: none;
}
.fpv-footer__contact a:hover { color: var(--orange); }

/* =====================================================
   B2B Page (fpv-b2b__)
===================================================== */
.fpv-b2b { background: var(--paper); }

/* Hero */
.fpv-b2b__hero {
  background: var(--dark);
  padding: 80px 0 72px;
  text-align: center;
}
.fpv-b2b__tag {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--orange);
  margin: 0 0 12px;
  display: block;
}
.fpv-b2b__title {
  font-size: clamp(32px, 5vw, 56px);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  letter-spacing: -.02em;
  margin: 0 0 16px;
  font-family: var(--ff-display);
}
.fpv-b2b__title span { color: var(--orange); }
.fpv-b2b__sub {
  font-size: 15px;
  color: rgba(255,255,255,.55);
  max-width: 520px;
  margin: 0 auto 28px;
  line-height: 1.65;
}
.fpv-b2b__cta {
  display: inline-block;
  padding: 13px 28px;
  background: var(--orange);
  color: #fff;
  border-radius: var(--r);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s;
}
.fpv-b2b__cta:hover { background: var(--orange-h); }

/* What we offer */
.fpv-b2b__section { padding: 64px 0; }
.fpv-b2b__h2 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: var(--dark);
  font-family: var(--ff-display);
  letter-spacing: -.015em;
  margin: 0 0 32px;
}
.fpv-b2b__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.fpv-b2b__card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 24px;
  transition: box-shadow .2s, transform .2s;
}
.fpv-b2b__card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  transform: translateY(-2px);
}
.fpv-b2b__card-icon { font-size: 28px; margin-bottom: 12px; }
.fpv-b2b__card h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--dark);
  margin: 0 0 8px;
}
.fpv-b2b__card p {
  font-size: 13px;
  color: var(--mid);
  line-height: 1.6;
  margin: 0;
}

/* Why choose us */
.fpv-b2b__why {
  background: var(--white);
  padding: 64px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.fpv-b2b__why-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}
.fpv-b2b__why-text p {
  font-size: 14px;
  color: var(--dark-2);
  line-height: 1.75;
  margin-bottom: 20px;
}
.fpv-b2b__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fpv-b2b__list li {
  padding: 10px 14px;
  background: var(--paper);
  border-radius: var(--r);
  border: 1px solid var(--line);
  font-size: 13px;
  color: var(--dark-2);
}
.fpv-b2b__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.fpv-b2b__stat {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.fpv-b2b__stat-n {
  font-size: 28px;
  font-weight: 700;
  color: var(--orange);
  font-family: var(--ff-display);
  letter-spacing: -.02em;
  line-height: 1;
}
.fpv-b2b__stat span:last-child {
  font-size: 12px;
  color: var(--mid);
}

/* Contact */
.fpv-b2b__contact { padding: 64px 0; }
.fpv-b2b__contact-box {
  background: var(--dark);
  border-radius: var(--r-xl);
  padding: 56px;
  text-align: center;
}
.fpv-b2b__contact-box h2 {
  font-size: clamp(22px, 3vw, 32px);
  font-weight: 700;
  color: #fff;
  font-family: var(--ff-display);
  margin: 0 0 12px;
}
.fpv-b2b__contact-box > p {
  font-size: 14px;
  color: rgba(255,255,255,.55);
  max-width: 480px;
  margin: 0 auto 28px;
  line-height: 1.65;
}
.fpv-b2b__contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  max-width: 560px;
  margin: 0 auto 20px;
}
.fpv-b2b__contact-card {
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--r-lg);
  padding: 20px;
  display: flex;
  gap: 14px;
  align-items: center;
  text-decoration: none;
  transition: background .15s, border-color .15s;
  text-align: left;
}
.fpv-b2b__contact-card:hover {
  background: rgba(255,255,255,.12);
  border-color: var(--orange);
}
.fpv-b2b__contact-icon { font-size: 22px; flex-shrink: 0; }
.fpv-b2b__contact-card strong {
  display: block;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 2px;
}
.fpv-b2b__contact-card span {
  display: block;
  color: rgba(255,255,255,.45);
  font-size: 12px;
}
.fpv-b2b__tagline {
  color: rgba(255,255,255,.35) !important;
  font-size: 13px !important;
  margin: 0 !important;
}

@media (max-width: 860px) {
  .fpv-b2b__grid { grid-template-columns: 1fr 1fr; }
  .fpv-b2b__why-grid { grid-template-columns: 1fr; gap: 32px; }
  .fpv-b2b__contact-grid { grid-template-columns: 1fr; }
  .fpv-b2b__contact-box { padding: 32px 20px; }
}
@media (max-width: 560px) {
  .fpv-b2b__grid { grid-template-columns: 1fr; }
}
