/*
Theme Name: Pescheria Theme
Author: Pescheria
Version: 1.0
Description: Tema custom Pescheria (Home + Toscana + Liguria + Carrello) vetro + Telegram order.
*/

/* =========================
   BASE (solo pagine tema)
   ========================= */
body.page-id-23,
body.page-id-25,
body.page-id-27,
body.page-id-29,
body.single-product{
  margin:0 !important;
  padding:0 !important;
  background:#000 !important;
  overflow-x:hidden !important;
}

body.page-id-23 .wp-site-header,
body.page-id-23 .wp-site-footer,
body.page-id-23 header,
body.page-id-23 footer,
body.page-id-23 .wp-block-template-part,
body.page-id-25 .wp-site-header,
body.page-id-25 .wp-site-footer,
body.page-id-25 header,
body.page-id-25 footer,
body.page-id-25 .wp-block-template-part,
body.page-id-27 .wp-site-header,
body.page-id-27 .wp-site-footer,
body.page-id-27 header,
body.page-id-27 footer,
body.page-id-27 .wp-block-template-part,
body.page-id-29 .wp-site-header,
body.page-id-29 .wp-site-footer,
body.page-id-29 header,
body.page-id-29 footer,
body.page-id-29 .wp-block-template-part,
body.single-product .wp-site-header,
body.single-product .wp-site-footer,
body.single-product header,
body.single-product footer,
body.single-product .wp-block-template-part{
  display:none !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

body.page-id-23 main,
body.page-id-25 main,
body.page-id-27 main,
body.page-id-29 main,
body.page-id-23 .entry-content,
body.page-id-25 .entry-content,
body.page-id-27 .entry-content,
body.page-id-29 .entry-content,
body.page-id-23 .wp-site-blocks,
body.page-id-25 .wp-site-blocks,
body.page-id-27 .wp-site-blocks,
body.page-id-29 .wp-site-blocks{
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
}

/* =========================
   UI: vetro + bottoni
   ========================= */
.p-wrap{
  width:min(1100px, 92vw);
  margin:0 auto;
}

.p-glass{
  border:2px solid rgba(255,255,255,.35);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.25));
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 20px 45px rgba(0,0,0,.55);
}

.p-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:rgba(0,0,0,.35);
  color:#fff;
  border:2px solid rgba(255,255,255,.30);
  border-radius:14px;
  padding:10px 14px;
  font-weight:800;
  text-decoration:none;
  line-height:1;
  box-shadow:none !important;
  outline:none !important;
  cursor:pointer;
  user-select:none;
}
.p-btn:hover{
  background:rgba(0,0,0,.55);
  border-color:rgba(255,255,255,.45);
  transform:translateY(-1px);
}
.p-btn:focus,
.p-btn:active{ outline:none !important; box-shadow:none !important; }

.p-ico{
  width:18px;
  height:18px;
  display:inline-block;
}

/* =========================
   HERO full (HOME)
   ========================= */
body.page-id-23{
  overflow:hidden !important;   /* NO SCROLL HOME */
}

.p-hero{
  position:fixed;
  inset:0;
  width:100%;
  height:100vh;
  overflow:hidden;
}
.p-hero__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.p-hero__overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.70);
}
.p-hero__content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}

.home-cols{
  display:flex;
  gap:20px;
  justify-content:center;
}
.home-card{
  flex:1;
  max-width:440px;
  padding:18px;
}
.home-logo{
  width:120px;
  height:auto;
  display:block;
  margin:0 auto 12px auto;
}
.home-title{ color:#fff; margin:0 0 10px 0; }
.home-text{ color:rgba(255,255,255,.92); line-height:1.35; margin:0 0 14px 0; }
.home-btncol{ display:flex; flex-direction:column; gap:10px; }
.home-rightcol{ display:flex; flex-direction:column; gap:10px; }
.home-powered{
  margin-top:12px;
  text-align:center;
  font-size:12px;
  opacity:.85;
}
.home-powered a{ color:rgba(255,255,255,.85); text-decoration:none; }
.home-powered a:hover{ text-decoration:underline; }

/* =========================
   SHOP PAGES (Toscana/Liguria)
   ========================= */
.p-shop-hero{
  min-height:100vh;
  width:100%;
  position:relative;
  overflow:hidden;
}
.p-shop-hero__bg{
  position:fixed;  /* sfondo fisso */
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.p-shop-hero__overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.70);
  z-index:1;
}
.p-shop-content{
  position:relative;
  z-index:2;
  padding:22px 0 30px 0;
}

.topbar{
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
.topbar-logo{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}
.topbar-logo img{
  width:150px;
  height:auto;
  display:block;
}
.topbar-right{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.shop-box{
  padding:18px;
}
.shop-h{
  color:#fff;
  margin:0 0 6px 0;
  text-align:center;
}
.shop-sub{
  color:rgba(255,255,255,.92);
  margin:0 0 14px 0;
  text-align:center;
}

/* Tag filters */
.p-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin:10px 0 18px 0;
}

/* Grid prodotti */
.p-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
  margin:0;
  padding:0;
}
.p-card{
  padding:14px;
  text-align:center;
}
.p-card__img{
  display:block;
  text-decoration:none;
}
.p-card__img img{
  width:100%;
  height:auto;
  border-radius:14px;
}
.p-card__name{
  color:#fff;
  font-weight:900;
  margin:12px 0 6px 0;
}
.p-card__price{
  color:rgba(255,255,255,.95);
  font-weight:900;
  margin:0 0 10px 0;
}
.p-card__actions{
  display:flex;
  justify-content:center;
}

/* Woo price html tags safe */
.p-card__price span,
.p-card__price bdi,
.p-card__price del,
.p-card__price ins{ color:rgba(255,255,255,.95) !important; }

/* Nascondi testi/elementi Woo che non vuoi */
body.page-id-25 .woocommerce-result-count,
body.page-id-27 .woocommerce-result-count,
body.page-id-25 .woocommerce-ordering,
body.page-id-27 .woocommerce-ordering{
  display:none !important;
}

/* =========================
   SINGLE PRODUCT (SOLO ciò che vuoi)
   ========================= */
.p-product-box{ padding:18px; }
.p-product-grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:18px;
  align-items:start;
}
.p-product-media{ padding:14px; }
.p-product-summary{ padding:16px; }

.p-product-title{
  margin:0 0 10px 0;
  color:#fff;
  font-weight:950;
  letter-spacing:.2px;
}
.p-product-price{
  margin:0 0 14px 0;
  color:rgba(255,255,255,.95);
  font-weight:950;
}
.p-product-price *{
  color:rgba(255,255,255,.95) !important;
}

.p-product-note{
  margin-top:12px;
  color:rgba(255,255,255,.88);
  font-size:13px;
  line-height:1.35;
}

/* Woo product gallery pulita */
body.single-product .woocommerce-product-gallery{ margin:0 !important; }
body.single-product .woocommerce-product-gallery__image img{
  border-radius:14px;
}
body.single-product .flex-control-thumbs img{
  border-radius:10px;
  opacity:.9;
}
body.single-product .flex-control-thumbs img:hover{
  opacity:1;
}

/* Form varianti + quantità */
body.single-product form.cart{
  margin:0 !important;
}
body.single-product .variations{
  width:100%;
  margin:0 0 10px 0 !important;
}
body.single-product .variations td,
body.single-product .variations th{
  padding:6px 0 !important;
  color:#fff !important;
}
body.single-product select,
body.single-product input.qty{
  width:100%;
  background:rgba(0,0,0,.35);
  color:#fff;
  border:2px solid rgba(255,255,255,.22);
  border-radius:12px;
  padding:10px 12px;
  outline:none;
}
body.single-product .quantity{
  margin:10px 0 12px 0 !important;
}

/* Bottone add to cart -> look p-btn */
body.single-product button.single_add_to_cart_button,
body.single-product .single_add_to_cart_button{
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:rgba(0,0,0,.35) !important;
  color:#fff !important;
  border:2px solid rgba(255,255,255,.30) !important;
  border-radius:14px !important;
  padding:12px 14px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  line-height:1 !important;
  box-shadow:none !important;
}
body.single-product button.single_add_to_cart_button:hover{
  background:rgba(0,0,0,.55) !important;
  border-color:rgba(255,255,255,.45) !important;
  transform:translateY(-1px);
}

/* Nascondi qualsiasi blocco Woo extra se compare */
body.single-product .woocommerce-tabs,
body.single-product .product_meta,
body.single-product .related,
body.single-product .upsells,
body.single-product .woocommerce-breadcrumb{
  display:none !important;
}

/* =========================
   CART PAGE
   ========================= */
.cart-box{ padding:18px; }
.cart-h{ color:#fff; margin:0 0 12px 0; text-align:center; }
.cart-actions{
  display:flex;
  justify-content:center;
  margin-top:14px;
}
.cart-note{
  color:rgba(255,255,255,.88);
  font-size:13px;
  text-align:center;
  margin-top:10px;
}

/* Nascondi checkout/coupon Woo ovunque nel carrello */
body.page-id-29 .wc-proceed-to-checkout,
body.page-id-29 a.checkout-button,
body.page-id-29 button.checkout-button,
body.page-id-29 a.button.checkout,
body.page-id-29 .checkout-button,
body.page-id-29 .coupon,
body.page-id-29 .woocommerce-form-coupon-toggle,
body.page-id-29 .woocommerce-form-coupon{
  display:none !important;
}

/* migliora tabella carrello */
body.page-id-29 table.shop_table{
  background:transparent !important;
  color:#fff !important;
}
body.page-id-29 table.shop_table a{ color:#fff !important; }
body.page-id-29 .woocommerce-cart-form__contents td,
body.page-id-29 .woocommerce-cart-form__contents th{
  border-color:rgba(255,255,255,.12) !important;
}

/* =========================
   Responsive
   ========================= */
@media (max-width: 980px){
  .p-product-grid{ grid-template-columns:1fr; }
}
@media (max-width: 900px){
  .p-grid{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width: 768px){
  .home-cols{ flex-direction:column; }
  .p-grid{ grid-template-columns:1fr; }
  .topbar-logo img{ width:130px; }
}

/* ===== PRODUCT FIXES ===== */

/* Nascondi il link "Svuota / Clear" delle varianti */
body.single-product a.reset_variations{
  display:none !important;
}

/* Prezzo in alto sempre leggibile */
body.single-product #p-product-price,
body.single-product #p-product-price *{
  color:rgba(255,255,255,.95) !important;
  font-weight:950;
}

/* Galleria Woo: thumbnails visibili */
body.single-product .woocommerce-product-gallery{ margin:0 !important; }
body.single-product .woocommerce-product-gallery__image img{ border-radius:14px; }
body.single-product .flex-control-thumbs{ margin-top:10px !important; }
body.single-product .flex-control-thumbs li{ margin:0 8px 8px 0 !important; }
body.single-product .flex-control-thumbs img{
  border-radius:10px;
  opacity:.9;
}
body.single-product .flex-control-thumbs img:hover{ opacity:1; }

/* Quantità: non full width, sempre visibile */
body.single-product .quantity{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin:10px 0 12px 0 !important;
}
body.single-product input.qty{
  width:110px !important;
  max-width:110px !important;
  background:rgba(0,0,0,.35);
  color:#fff;
  border:2px solid rgba(255,255,255,.22);
  border-radius:12px;
  padding:10px 12px;
  outline:none;
}

/* ===== CART FIXES ===== */

/* Togli colonna quantità e input quantità nel carrello */
body.page-id-29 th.product-quantity,
body.page-id-29 td.product-quantity,
body.page-id-29 .quantity,
body.page-id-29 input.qty{
  display:none !important;
}

/* Togli "Aggiorna carrello" */
body.page-id-29 button[name="update_cart"],
body.page-id-29 input[name="update_cart"]{
  display:none !important;
}

/* Telegram button */
.p-btn-telegram{
  width:100%;
  max-width:420px;
  background:#2AABEE !important;
  border-color:#2AABEE !important;
  color:#fff !important;
  font-weight:950;
}
.p-btn-telegram:hover{
  filter:brightness(.95);
  transform:translateY(-1px);
}
.tg-ico{
  width:18px;
  height:18px;
  fill:#fff;
}

/* ====== PRODUCT GALLERY (foto+video) ====== */
body.single-product a.reset_variations{ display:none !important; }

.p-gallery{ position:relative; }
.p-gstage{ position:relative; overflow:hidden; border-radius:14px; }
.p-gslide{ display:none; }
.p-gslide.is-active{ display:block; }

.p-gimg{ width:100%; height:auto; border-radius:14px; display:block; }
.p-gvid{ width:100%; max-height:70vh; border-radius:14px; display:block; background:#000; }

.p-gbtn{
  position:absolute; top:50%; transform:translateY(-50%);
  width:44px; height:44px;
  border-radius:12px;
  border:2px solid rgba(255,255,255,.30);
  background:rgba(0,0,0,.45);
  color:#fff;
  font-size:26px;
  font-weight:900;
  z-index:5;
  cursor:pointer;
}
.p-gbtn:hover{ background:rgba(0,0,0,.65); border-color:rgba(255,255,255,.45); }
.p-gprev{ left:10px; }
.p-gnext{ right:10px; }

.p-gthumbs{
  margin-top:10px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.p-gthumb{
  width:72px; height:72px;
  padding:0;
  border-radius:12px;
  border:2px solid rgba(255,255,255,.22);
  background:rgba(0,0,0,.25);
  overflow:hidden;
  cursor:pointer;
  opacity:.85;
}
.p-gthumb:hover{ opacity:1; border-color:rgba(255,255,255,.40); }
.p-gthumb.is-active{ opacity:1; border-color:rgba(255,255,255,.55); }
.p-gthumb img{ width:100%; height:100%; object-fit:cover; display:block; }

.p-gthumbvid{
  width:100%; height:100%;
  display:flex; align-items:center; justify-content:center;
  font-weight:950; color:#fff;
  letter-spacing:.5px;
  font-size:12px;
}

/* prezzo leggibile */
body.single-product #p-product-price, 
body.single-product #p-product-price *{ color:rgba(255,255,255,.95) !important; font-weight:950; }
/* =========================
   NASCONDI NOTICE WOOCOMMERCE
   ========================= */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  display:none !important;
}
/* HOME iPhone: zero scroll + safe-area + solo card principale */
@media (max-width: 768px){
  body.page-id-23{
    height:100dvh !important;
    overflow:hidden !important;
  }

  body.page-id-23 .p-hero{
    position:fixed !important;
    inset:0 !important;
    height:100dvh !important;
    overflow:hidden !important;
    padding: max(12px, env(safe-area-inset-top)) 0 max(12px, env(safe-area-inset-bottom)) 0 !important;
  }

  body.page-id-23 .p-wrap{
    width:92vw !important;
  }

  body.page-id-23 .home-cols{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
  }

  /* card 1 più compatta */
  body.page-id-23 .home-card{
    padding:14px !important;
  }
  body.page-id-23 .home-logo{ width:82px !important; margin:0 auto 8px auto !important; }
  body.page-id-23 .home-text{ font-size:14px !important; line-height:1.25 !important; margin:0 0 10px 0 !important; }

  /* bottoni più bassi */
  body.page-id-23 .p-btn{ padding:10px 12px !important; font-size:14px !important; border-radius:14px !important; }

  /* NASCONDI la seconda card su mobile (quella con "Come ordinare/Contatti") */
  body.page-id-23 .home-cols .home-card:nth-child(2){
    display:none !important;
  }

  /* powered by off su mobile */
  body.page-id-23 .home-powered{ display:none !important; }
}
CSS
