/*
Theme Name: BestDiscount Child
Template: colormag
*/

/* ===============================
   CUSTOM HEADER STYLES
   =============================== */

/* Nascondi l'header del tema padre */
#cm-masthead,
.cm-header-builder{
  display:none !important;
}

/* Header custom */
.bd-header{
  background:#fff;
  border-bottom:1px solid #e5e7eb;
  position:sticky;
  top:0;
  z-index:1000;
}

.bd-header-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  height:100px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* Logo */
.bd-header-logo{
  flex-shrink:0;
}

.bd-header-logo a{
  display:flex;
  flex-direction:column;
  text-decoration:none;
  line-height:1.2;
}

.bd-header-logo img{
  max-height:80px;
  width:auto;
  height:auto;
}

.bd-site-title{
  font-size:24px;
  font-weight:700;
  color:#111;
}

.bd-site-description{
  font-size:12px;
  color:#e53935;
  font-style:italic;
}

/* Navigation */
.bd-header-nav{
  display:flex;
  align-items:center;
}

.bd-menu{
  display:flex;
  align-items:center;
  gap:28px;
  margin:0;
  padding:0;
  list-style:none;
}

.bd-menu li{
  margin:0;
}

.bd-menu a{
  display:inline-block;
  padding:8px 0;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#111;
  text-decoration:none;
  border-bottom:2px solid transparent;
  transition:border-color .2s ease;
}

.bd-menu a:hover{
  border-bottom-color:#f97316;
}

.bd-menu .current-menu-item > a,
.bd-menu .current_page_item > a{
  border-bottom-color:#f97316;
}

/* Menu toggle (nascosto su desktop) */
.bd-menu-toggle{
  display:none;
  flex-direction:column;
  justify-content:space-around;
  width:30px;
  height:24px;
  background:transparent;
  border:0;
  cursor:pointer;
  padding:0;
}

.bd-hamburger{
  width:100%;
  height:3px;
  background:#111;
  border-radius:2px;
  transition:all .3s ease;
}

/* ===============================
   MOBILE RESPONSIVE
   =============================== */

@media (max-width: 980px){

  .bd-header-container{
    height:70px;
  }

  .bd-header-logo img{
    max-height:50px;
  }

  /* Mostra hamburger */
  .bd-menu-toggle{
    display:flex;
    z-index:1001;
  }

  /* Menu mobile */
  .bd-header-nav{
    position:fixed;
    top:0;
    right:-100%;
    width:280px;
    height:100vh;
    background:#fff;
    box-shadow:-2px 0 10px rgba(0,0,0,.1);
    transition:right .3s ease;
    z-index:1000;
    padding:80px 20px 20px;
  }

  .bd-header-nav.active{
    right:0;
  }

  .bd-menu{
    flex-direction:column;
    align-items:flex-start;
    gap:0;
  }

  .bd-menu li{
    width:100%;
    border-bottom:1px solid #f1f1f1;
  }

  .bd-menu a{
    display:block;
    padding:16px 0;
    border-bottom:0 !important;
  }

  .bd-menu a:hover,
  .bd-menu .current-menu-item > a{
    color:#f97316;
  }

  /* Overlay quando menu aperto */
  body.menu-open::before{
    content:'';
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.5);
    z-index:999;
  }

  body.menu-open{
    overflow:hidden;
  }
}

/* ===============================
   BASE + BACKGROUND PAGINA
   =============================== */

html, body{
  background:#f2f2f2 !important;
}

/* ColorMag: rimuove il bianco full-width */
#cm-content.cm-content{
  background:transparent !important;
}

/* Wrapper di sicurezza */
#page,
.site,
#content,
#primary,
.content-area,
.main-content,
.tg-container,
.cm-container,
.cm-site{
  background:transparent !important;
}

/* ===============================
   CONTAINER CENTRALE
   =============================== */

.bd-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 15px;
}

.home .bd-container{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

/* ===============================
   TEMPLATE PAGINA PULITA
   =============================== */

/* Rimuovi padding e spazio per template pulito */
body.page-template-template-clean-page #cm-content.cm-content,
body.page-template-template-clean-page .cm-content .inner-wrap{
  padding-top:0 !important;
  margin-top:0 !important;
}

body.page-template-template-clean-page #primary{
  padding-top:0 !important;
  margin-top:0 !important;
}

.bd-clean-page{
  padding-top:0 !important;
  margin-top:0 !important;
}

.bd-clean-page .entry-content{
  padding-top:0 !important;
  margin-top:0 !important;
}

.bd-clean-page .entry-header{
  display:none !important;
}


/* ===============================
   HERO (1 bordo sul wrapper)
   =============================== */

.bd-hero-wrap{
  background:#fff;
  border:1px solid #dcdcdc;
  border-radius:6px;
  padding:10px;
  margin-bottom:16px;
  overflow:hidden;
}

.bd-hero{
  height:420px;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  background-color:#fff;
  border:0 !important;
  border-radius:4px;
}

.bd-hero-overlay{
  background:rgba(0,0,0,.35);
  color:#fff;
  padding:24px;
  max-width:1200px;
  margin:0 auto;
}

/* ===============================
   FILTRI: LAYOUT DESKTOP
   =============================== */

.bd-filters-wrap{
  background:#fff !important;
  border:1px solid #e3e3e3 !important;
  border-radius:12px !important;
  padding:20px !important;
  margin-bottom:30px !important;
}

#bd-filter-form.bd-filters{
  display:grid !important;
  grid-template-columns: 1.4fr 1fr 1fr 160px !important;
  gap:20px !important;
  align-items:flex-end !important;
  margin:0 !important;
}

#bd-filter-form .bd-field{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
}

#bd-filter-form .bd-field label{
  display:block !important;
  font-size:13px !important;
  font-weight:700 !important;
  color:#333 !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  text-align:left !important;
  height:auto !important;
  min-height:0 !important;
}

#bd-filter-form .bd-search,
#bd-filter-form select{
  width:100% !important;
  height:40px !important;
  border:1px solid #d1d5db !important;
  border-radius:10px !important;
  padding:0 12px !important;
  font-size:14px !important;
  background:#fff !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* Azioni filtri: bottoni compatti, NON full-width, affiancati */
#bd-filter-form .bd-field:last-child{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  gap:10px !important;
}

#bd-filter-form button[type="submit"],
#bd-filter-form .bd-reset{
  appearance:none !important;
  -webkit-appearance:none !important;
  box-shadow:none !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:auto !important;
  min-width:50px !important;
  height:40px !important;
  padding:0 16px !important;
  margin:0 !important;

  font-family:inherit !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:0 !important;

  border-radius:8px !important;
  border:0 !important;
  text-decoration:none !important;
}

#bd-filter-form button[type="submit"]{
  background:#f59e0b !important;
  color:#fff !important;
  cursor:pointer !important;
}

#bd-filter-form .bd-reset{
  background:#f1f1f1 !important;
  color:#444 !important;
}

/* ===============================
   MOBILE: 1 COLONNA
   =============================== */
@media (max-width: 980px){
  #bd-filter-form.bd-filters{
    grid-template-columns:1fr !important;
    gap:15px !important;
  }

  #bd-filter-form .bd-field{
    width:100% !important;
  }

  #bd-filter-form .bd-field:last-child{
    flex-direction:row !important;
    justify-content:flex-start !important;
  }
}

/* ===============================
   GRIGLIA
   =============================== */

.home .bd-deals-grid{
  background:transparent !important;
  padding:0 !important;
}

.bd-deals-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:16px;
}

/* ===============================
   CARD (HOME MINIMAL + ALLINEAMENTO)
   =============================== */

.bd-deal-card{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:6px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
  transition:transform .15s ease, box-shadow .15s ease;
}

.bd-deal-card:hover{
  transform:translateY(-4px);
  box-shadow:0 6px 16px rgba(0,0,0,.08);
}

/* Area immagine uniforme + contain */
.bd-deal-image{
  display:block;
  height:220px !important;            /* altezza uniforme */
  padding:10px;
  background:#fff;
  overflow:hidden;
}

.bd-deal-image img{
  width:100% !important;
  height:100% !important;
  object-fit:contain;      /* niente crop */
  object-position:center !important;
  display:block;
  transform: scale(1.06);          /* <— aumenta leggermente la resa */
}

.bd-img-placeholder{
  width:100%;
  height:100%;
  background:#f1f1f1;
}

.bd-card-media{ position:relative; }

/* Badge sconto top-left */
.bd-discount-badge{
  position:absolute;
  top:10px;
  left:10px;
  padding:6px 10px;
  font-weight:800;
  font-size:14px;
  border-radius:8px;
  background:#e53935;
  color:#fff;
  z-index:2;
}

/* Corpo card */
.bd-deal-body{
  padding:12px;
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
}

/* Partner: slot fisso per allineare */
.bd-partner{
  font-size:13px;
  opacity:.75;
  margin-bottom:6px;
  min-height:18px;
}

/* Titolo: 2 righe max con ellipsis (slot fisso) */
.bd-deal-card .bd-deal-title{
  font-size:15px;
  line-height:1.4 !important;
  margin:0 0 12px !important;

  overflow:hidden !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  text-overflow:ellipsis !important;

  height:2.8em !important;     /* 2 righe “reali” */
  min-height:2.8em !important;
  max-height:2.8em !important;
}

.bd-deal-card .bd-deal-title a{
  color:#222;
  text-decoration:none;
  display:block !important;
  overflow:hidden !important;
}

/* Prezzi: 1 riga orizzontale, no wrap */
.bd-deal-prices{
  margin-top:0;
  margin-bottom:14px;          /* base */
  display:flex;
  align-items:baseline;
  gap:8px;
  line-height:1;

  height:24px;
  min-height:24px;

  flex-wrap:nowrap;
  white-space:nowrap;
}

.bd-old-price{
  text-decoration:line-through;
  color:#999;
  font-size:14px;
  white-space:nowrap;
}

.bd-new-price{
  font-size:18px;
  font-weight:700;
  color:#e63946;
  white-space:nowrap;
}

/* Nota coupon/codice: slot fisso + PIÙ spazio dai prezzi */
.bd-deal-note{
  margin:10px 0 12px;      /* ↑ più spazio sopra (tra prezzi e nota) */
  display:block;
  min-height:22px;         /* slot fisso per allineamento */
}

/* Se lo slot è vuoto (lo gestiamo via PHP), non deve “pesare” visivamente */
.bd-deal-note.bd-deal-note--empty{
  visibility:hidden;       /* occupa spazio ma non si vede */
}

.bd-note-pill{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:6px;
  font-size:11px;
  font-weight:600;
  line-height:1.2;
  background:#f9fafb;
  border:1px dashed #e5e7eb;
  color:#6b7280;
}

/* Azioni: 2 bottoni affiancati sempre */
.bd-deal-actions{
  margin-top:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  align-items:stretch;
}

.bd-deal-card .bd-btn,
.bd-deal-card .bd-btn:link,
.bd-deal-card .bd-btn:visited,
.bd-deal-card .bd-btn:hover,
.bd-deal-card .bd-btn:active{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 10px;
  border-radius:12px;
  text-decoration:none;
  text-align:center;
  white-space:nowrap;

  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-style: normal !important;
  font-variant: normal !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-weight: 700 !important;
  font-size:13px;
  line-height:1;
}

.bd-btn-primary{
  background:#f59e0b;
  color:#000;
  border:1px solid #f59e0b;
}

.bd-btn-secondary{
  background:#fff;
  color:#000;
  border:1px solid #f59e0b;
}

.bd-btn-disabled{
  opacity:.5;
  pointer-events:none;
}

/* Mobile stretto: bottoni in colonna */
@media (max-width:520px){
  .bd-deal-actions{ grid-template-columns:1fr; }
}

/* ===============================
   PAGINAZIONE
   =============================== */

.bd-pagination{
  margin:18px 0 0;
  display:flex;
  justify-content:center;
  gap:6px;
}

.bd-pagination .page-numbers{
  background:#fff;
  border:1px solid #dcdcdc;
  border-radius:4px;
  padding:8px 12px;
  text-decoration:none;
  color:#111;
}

.bd-pagination .page-numbers.current{
  background:#f59e0b;
  border-color:#f59e0b;
  font-weight:700;
}

/* ===============================
   RESPONSIVE (cards)
   =============================== */

@media (max-width: 768px){
  .bd-hero{ height:260px; }

  .bd-deals-grid{
    grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));
    gap:12px;
  }

  .bd-deal-image{ height:180px; }
}

/* ===============================
   CUSTOM FOOTER STYLES
   =============================== */

/* Nascondi footer del tema padre */
#cm-footer,
.cm-footer{
  display:none !important;
}

/* Footer custom */
.bd-footer{
  background:#6c757d;
  color:#f8f9fa;
  padding:40px 0 20px;
  margin-top:60px;
}

.bd-footer-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}

/* Footer Top */
.bd-footer-top{
  display:grid;
  grid-template-columns:1fr 1.5fr;
  gap:40px;
  padding-bottom:30px;
  border-bottom:1px solid rgba(255,255,255,.1);
  margin-bottom:20px;
}

.bd-footer-brand strong{
  font-size:20px;
  color:#f59e0b;
  display:block;
  margin-bottom:8px;
}

.bd-footer-brand p{
  font-size:14px;
  color:#e9ecef;
  margin:0;
  line-height:1.5;
}

.bd-footer-disclaimer{
  display:flex;
  align-items:center;
}

.bd-footer-disclaimer p{
  font-size:13px;
  color:#adb5bd;
  margin:0;
  line-height:1.6;
  font-style:italic;
}

/* Footer Bottom */
.bd-footer-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
}

.bd-footer-copyright p{
  font-size:13px;
  color:#e9ecef;
  margin:0;
}

.bd-footer-links{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

.bd-footer-links a{
  font-size:13px;
  color:#e9ecef;
  text-decoration:none;
  transition:color .2s ease;
}

.bd-footer-links a:hover{
  color:#f59e0b;
}

/* Footer Mobile */
@media (max-width: 768px){
  .bd-footer{
    padding:30px 0 20px;
    margin-top:40px;
  }

  .bd-footer-top{
    grid-template-columns:1fr;
    gap:25px;
    padding-bottom:25px;
  }

  .bd-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
  }

  .bd-footer-links{
    flex-direction:column;
    gap:12px;
  }
}

/* ===============================
   TELEGRAM PAGE STYLES
   =============================== */

.bd-telegram-page{
  max-width:900px;
  margin:0 auto;
  padding:40px 20px;
}

/* Hero Section */
.bd-tg-hero{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:40px;
  text-align:center;
  margin-bottom:40px;
}

.bd-tg-hero h1{
  font-size:32px;
  font-weight:700;
  color:#111;
  margin:0 0 16px;
}

.bd-tg-hero > p{
  font-size:16px;
  color:#555;
  line-height:1.6;
  margin:0 0 28px;
  max-width:700px;
  margin-left:auto;
  margin-right:auto;
}

.bd-tg-buttons{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  margin-bottom:20px;
}

.bd-tg-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 28px;
  border-radius:10px;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  transition:all .2s ease;
  border:2px solid transparent;
}

.bd-tg-btn-primary{
  background:#f59e0b;
  color:#000;
  border-color:#f59e0b;
}

.bd-tg-btn-primary:hover{
  background:#d97706;
  border-color:#d97706;
}

.bd-tg-btn-secondary{
  background:#fff;
  color:#000;
  border-color:#f59e0b;
}

.bd-tg-btn-secondary:hover{
  background:#fff5e6;
}

.bd-tg-features{
  display:flex;
  gap:20px;
  justify-content:center;
  flex-wrap:wrap;
  font-size:13px;
  color:#666;
}

/* Why Section */
.bd-tg-why{
  margin-bottom:50px;
}

.bd-tg-why h2{
  font-size:28px;
  font-weight:700;
  color:#111;
  text-align:center;
  margin:0 0 32px;
}

.bd-tg-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:20px;
}

.bd-tg-card{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:10px;
  padding:24px;
  transition:transform .2s ease, box-shadow .2s ease;
}

.bd-tg-card:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

.bd-tg-icon{
  font-size:32px;
  margin-bottom:12px;
}

.bd-tg-card h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 8px;
}

.bd-tg-card p{
  font-size:14px;
  color:#666;
  line-height:1.5;
  margin:0;
}

/* Channels Section */
.bd-tg-channels{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
  gap:24px;
  margin-bottom:40px;
}

.bd-tg-channel-card{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:30px;
}

.bd-tg-channel-tag{
  display:inline-block;
  background:#fff5e6;
  color:#d97706;
  font-size:11px;
  font-weight:700;
  padding:6px 12px;
  border-radius:6px;
  margin-bottom:16px;
  text-transform:uppercase;
  letter-spacing:.5px;
}

.bd-tg-channel-card h3{
  font-size:20px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-tg-channel-card > p{
  font-size:14px;
  color:#666;
  line-height:1.6;
  margin:0 0 20px;
}

.bd-tg-btn-join{
  display:block;
  width:100%;
  margin-bottom:12px;
}

.bd-tg-channel-link{
  font-size:12px;
  color:#999;
  word-break:break-all;
}

.bd-tg-channel-link a{
  color:#f59e0b;
  text-decoration:none;
}

.bd-tg-channel-link a:hover{
  text-decoration:underline;
}

/* Tip Section */
.bd-tg-tip{
  background:#fff9e6;
  border:1px solid #f59e0b;
  border-radius:10px;
  padding:24px;
  margin-bottom:40px;
}

.bd-tg-tip h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 8px;
}

.bd-tg-tip p{
  font-size:14px;
  color:#666;
  line-height:1.6;
  margin:0;
}

/* FAQ Section */
.bd-tg-faq{
  margin-bottom:50px;
}

.bd-tg-faq h2{
  font-size:28px;
  font-weight:700;
  color:#111;
  text-align:center;
  margin:0 0 28px;
}

.bd-tg-faq-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
  gap:20px;
}

.bd-tg-faq-card{
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:8px;
  padding:20px;
}

.bd-tg-faq-card h4{
  font-size:16px;
  font-weight:700;
  color:#111;
  margin:0 0 8px;
}

.bd-tg-faq-card p{
  font-size:14px;
  color:#666;
  line-height:1.5;
  margin:0;
}

/* CTA Final */
.bd-tg-cta{
  background:#fff;
  border:2px solid #f59e0b;
  border-radius:12px;
  padding:40px;
  text-align:center;
}

.bd-tg-cta h2{
  font-size:28px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-tg-cta > p{
  font-size:16px;
  color:#666;
  line-height:1.6;
  margin:0 0 24px;
}

/* Mobile Responsive */
@media (max-width: 768px){
  .bd-telegram-page{
    padding:20px 15px;
  }

  .bd-tg-hero{
    padding:30px 20px;
  }

  .bd-tg-hero h1{
    font-size:24px;
  }

  .bd-tg-hero > p{
    font-size:15px;
  }

  .bd-tg-buttons{
    flex-direction:column;
  }

  .bd-tg-btn{
    width:100%;
  }

  .bd-tg-features{
    flex-direction:column;
    gap:8px;
  }

  .bd-tg-grid{
    grid-template-columns:1fr;
  }

  .bd-tg-channels{
    grid-template-columns:1fr;
  }

  .bd-tg-faq-grid{
    grid-template-columns:1fr;
  }

  .bd-tg-why h2,
  .bd-tg-faq h2,
  .bd-tg-cta h2{
    font-size:22px;
  }

  .bd-tg-cta{
    padding:30px 20px;
  }
}

/* ===============================
   CHI SIAMO PAGE STYLES
   =============================== */

.bd-chisiamo-page{
  max-width:900px;
  margin:0 auto;
  padding:40px 20px;
}

/* Hero */
.bd-cs-hero{
  text-align:center;
  margin-bottom:50px;
}

.bd-cs-hero h1{
  font-size:36px;
  font-weight:700;
  color:#111;
  margin:0 0 20px;
}

.bd-cs-lead{
  font-size:18px;
  color:#555;
  line-height:1.7;
  max-width:800px;
  margin:0 auto;
}

/* Mission */
.bd-cs-mission{
  background:linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  border-radius:12px;
  padding:40px;
  margin-bottom:50px;
  color:#fff;
}

.bd-cs-mission h2{
  font-size:28px;
  font-weight:700;
  color:#fff;
  margin:0 0 16px;
}

.bd-cs-mission p{
  font-size:16px;
  line-height:1.7;
  margin:0;
}

.bd-cs-mission strong{
  color:#fff;
  font-weight:700;
}

/* Sections */
.bd-cs-section{
  margin-bottom:60px;
}

.bd-cs-section h2{
  font-size:28px;
  font-weight:700;
  color:#111;
  margin:0 0 16px;
}

.bd-cs-intro{
  font-size:16px;
  color:#666;
  line-height:1.7;
  margin:0 0 32px;
}

/* Cards Grid */
.bd-cs-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:20px;
  margin-bottom:30px;
}

.bd-cs-card{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:10px;
  padding:24px;
  transition:transform .2s ease, box-shadow .2s ease;
}

.bd-cs-card:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

.bd-cs-icon{
  font-size:36px;
  margin-bottom:12px;
}

.bd-cs-card h3{
  font-size:17px;
  font-weight:700;
  color:#111;
  margin:0 0 8px;
}

.bd-cs-card p{
  font-size:14px;
  color:#666;
  line-height:1.6;
  margin:0;
}

/* Highlight Box */
.bd-cs-highlight{
  background:#fff5e6;
  border:1px solid #f59e0b;
  border-radius:8px;
  padding:16px 20px;
  font-size:15px;
  color:#333;
  text-align:center;
}

.bd-cs-highlight strong{
  color:#d97706;
}

/* How it works */
.bd-cs-how{
  background:#f8f9fa;
  border-radius:12px;
  padding:40px;
}

.bd-cs-columns{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
  gap:30px;
  margin:24px 0;
}

.bd-cs-col h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-cs-col ul{
  list-style:none;
  padding:0;
  margin:0;
}

.bd-cs-col li{
  font-size:14px;
  color:#555;
  line-height:1.7;
  padding:8px 0 8px 24px;
  position:relative;
}

.bd-cs-col li:before{
  content:'✓';
  position:absolute;
  left:0;
  color:#f59e0b;
  font-weight:700;
}

.bd-cs-note{
  font-size:15px;
  color:#666;
  font-style:italic;
  text-align:center;
  margin:24px 0 0;
}

/* Amazon Section */
.bd-cs-amazon{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:32px;
  margin-bottom:50px;
}

.bd-cs-amazon h2{
  font-size:24px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-cs-amazon > p{
  font-size:15px;
  color:#666;
  line-height:1.7;
  margin:0 0 24px;
}

.bd-cs-grid-small{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:12px;
}

.bd-cs-mini-card{
  display:flex;
  align-items:center;
  gap:10px;
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:8px;
  padding:12px 16px;
  font-size:14px;
  color:#555;
}

.bd-cs-mini-card strong{
  font-size:20px;
}

/* Free Section */
.bd-cs-free{
  background:#fff;
  border:2px solid #f59e0b;
  border-radius:12px;
  padding:40px;
  text-align:center;
  margin-bottom:50px;
}

.bd-cs-free-icon{
  font-size:48px;
  margin-bottom:16px;
}

.bd-cs-free h2{
  font-size:26px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-cs-free > p{
  font-size:16px;
  color:#666;
  margin:0 0 20px;
}

.bd-cs-free-points{
  display:flex;
  flex-direction:column;
  gap:8px;
  max-width:400px;
  margin:0 auto 20px;
}

.bd-cs-check{
  font-size:15px;
  color:#111;
  font-weight:600;
}

.bd-cs-free-footer{
  font-size:15px;
  color:#666;
  font-style:italic;
  margin:0;
}

/* Telegram Section */
.bd-cs-telegram{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:32px;
  margin-bottom:50px;
}

.bd-cs-telegram h2{
  font-size:24px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-cs-telegram > p{
  font-size:15px;
  color:#666;
  line-height:1.7;
  margin:0 0 20px;
}

.bd-cs-tg-features{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:20px 0;
  padding:20px;
  background:#f8f9fa;
  border-radius:8px;
}

.bd-cs-tg-item{
  font-size:14px;
  color:#555;
  font-weight:500;
}

.bd-cs-cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 28px;
  background:#f59e0b;
  color:#000;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  border-radius:10px;
  margin-top:16px;
  transition:background .2s ease;
}

.bd-cs-cta-btn:hover{
  background:#d97706;
}

/* Values Section */
.bd-cs-values{
  margin-bottom:50px;
}

.bd-cs-values h2{
  font-size:28px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
  text-align:center;
}

.bd-cs-values > p{
  font-size:16px;
  color:#666;
  line-height:1.7;
  text-align:center;
  margin:0 0 32px;
  max-width:700px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:32px;
}

.bd-cs-values-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:24px;
}

.bd-cs-value{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:10px;
  padding:28px;
  text-align:center;
}

.bd-cs-value-icon{
  font-size:40px;
  margin-bottom:12px;
}

.bd-cs-value h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 10px;
}

.bd-cs-value p{
  font-size:14px;
  color:#666;
  line-height:1.6;
  margin:0;
}

/* Legal Section */
.bd-cs-legal{
  margin-bottom:40px;
}

.bd-cs-legal h2{
  font-size:26px;
  font-weight:700;
  color:#111;
  margin:0 0 24px;
  text-align:center;
}

.bd-cs-legal-box{
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:10px;
  padding:24px;
  margin-bottom:20px;
}

.bd-cs-legal-box h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 10px;
}

.bd-cs-legal-box p{
  font-size:14px;
  color:#666;
  line-height:1.7;
  margin:0;
}

.bd-cs-legal-footer{
  font-size:14px;
  color:#666;
  text-align:center;
  margin:20px 0 0;
}

.bd-cs-legal-footer a{
  color:#f59e0b;
  text-decoration:none;
}

.bd-cs-legal-footer a:hover{
  text-decoration:underline;
}

/* Mobile Responsive */
@media (max-width: 768px){
  .bd-chisiamo-page{
    padding:20px 15px;
  }

  .bd-cs-hero h1{
    font-size:28px;
  }

  .bd-cs-lead{
    font-size:16px;
  }

  .bd-cs-mission{
    padding:30px 20px;
  }

  .bd-cs-mission h2{
    font-size:22px;
  }

  .bd-cs-section h2,
  .bd-cs-values h2,
  .bd-cs-legal h2{
    font-size:22px;
  }

  .bd-cs-grid{
    grid-template-columns:1fr;
  }

  .bd-cs-columns{
    grid-template-columns:1fr;
  }

  .bd-cs-how{
    padding:24px 20px;
  }

  .bd-cs-amazon{
    padding:24px 20px;
  }

  .bd-cs-grid-small{
    grid-template-columns:1fr;
  }

  .bd-cs-free{
    padding:30px 20px;
  }

  .bd-cs-telegram{
    padding:24px 20px;
  }

  .bd-cs-values-grid{
    grid-template-columns:1fr;
  }
}

/* ===============================
   SINGLE DEAL PAGE STYLES
   =============================== */

.bd-single-deal{
  max-width:1200px;
  margin:0 auto;
  padding:20px 15px 40px;
}

/* Breadcrumb */
.bd-breadcrumb{
  font-size:14px;
  color:#666;
  margin-bottom:20px;
}

.bd-breadcrumb a{
  color:#f59e0b;
  text-decoration:none;
}

.bd-breadcrumb a:hover{
  text-decoration:underline;
}

.bd-breadcrumb span{
  margin:0 8px;
  color:#999;
}

/* Layout principale 2 colonne */
.bd-deal-layout{
  display:grid;
  grid-template-columns:400px 1fr;
  gap:40px;
  margin-bottom:40px;
}

/* Colonna Immagine */
.bd-deal-image-col{
  position:relative;
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:400px;
}

.bd-deal-badge{
  position:absolute;
  top:15px;
  left:15px;
  background:#e53935;
  color:#fff;
  font-size:16px;
  font-weight:700;
  padding:8px 14px;
  border-radius:8px;
  z-index:10;
}

.bd-deal-image{
  max-width:100%;
  height:auto;
  max-height:400px;
  object-fit:contain;
}

.bd-deal-image-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f5f5f5;
  color:#999;
  font-size:14px;
}

/* Colonna Info */
.bd-deal-info-col{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.bd-deal-title{
  font-size:28px;
  font-weight:700;
  color:#111;
  line-height:1.3;
  margin:0;
}

/* Meta info */
.bd-deal-meta{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  font-size:14px;
  color:#666;
  padding-bottom:16px;
  border-bottom:1px solid #e9ecef;
}

.bd-meta-item strong{
  color:#111;
}

.bd-rating .bd-stars{
  margin:0 4px;
}

/* Prezzi */
.bd-deal-prices{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.bd-price-old{
  display:flex;
  align-items:baseline;
  gap:8px;
}

.bd-price-old .bd-price-label{
  font-size:13px;
  color:#666;
}

.bd-price-old .bd-price-value{
  font-size:18px;
  color:#999;
  text-decoration:line-through;
}

.bd-price-new .bd-price-value{
  font-size:36px;
  font-weight:700;
  color:#e63946;
}

/* Box Codice Sconto */
.bd-code-box{
  background:#fff9e6;
  border:2px solid #f59e0b;
  border-radius:10px;
  overflow:hidden;
}

.bd-code-header{
  background:#f59e0b;
  color:#000;
  padding:12px 16px;
  font-size:15px;
}

.bd-code-body{
  padding:16px;
}

.bd-code-value{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.bd-code-value code{
  flex:1;
  background:#fff;
  border:1px dashed #f59e0b;
  padding:10px 14px;
  font-size:18px;
  font-weight:700;
  border-radius:6px;
  letter-spacing:1px;
  color:#111;
}

.bd-copy-code{
  background:#f59e0b;
  color:#000;
  border:0;
  padding:10px 20px;
  border-radius:6px;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:background .2s;
  white-space:nowrap;
}

.bd-copy-code:hover{
  background:#d97706;
}

.bd-coupon-info{
  font-size:14px;
  color:#666;
  margin-bottom:8px;
}

.bd-coupon-info p{
  margin:0;
}

.bd-code-expiry{
  font-size:12px;
  color:#d97706;
}

/* Box Come ottenere */
.bd-howto-box{
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:10px;
  padding:20px;
}

.bd-howto-box h3{
  font-size:16px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-howto-box ol{
  margin:0;
  padding-left:20px;
  font-size:14px;
  color:#555;
  line-height:1.8;
}

.bd-howto-box li{
  margin-bottom:8px;
}

.bd-howto-box strong{
  color:#111;
}

/* CTA Button */
.bd-cta-button{
  display:block;
  background:#f59e0b;
  color:#000;
  text-align:center;
  padding:16px 32px;
  font-size:18px;
  font-weight:700;
  text-decoration:none;
  border-radius:10px;
  transition:background .2s;
}

.bd-cta-button:hover{
  background:#d97706;
}

/* Disponibilità */
.bd-availability{
  font-size:14px;
  color:#666;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.bd-availability strong{
  color:#111;
}

.bd-asin-badge,
.bd-rating-badge{
  background:#e9ecef;
  padding:4px 10px;
  border-radius:6px;
  font-size:13px;
  color:#555;
}

/* Descrizione prodotto */
.bd-deal-description{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  padding:32px;
  margin-bottom:40px;
}

.bd-deal-description h2{
  font-size:24px;
  font-weight:700;
  color:#111;
  margin:0 0 20px;
}

.bd-content{
  font-size:15px;
  color:#555;
  line-height:1.7;
  margin-bottom:20px;
}

.bd-features ul{
  list-style:none;
  padding:0;
  margin:0;
}

.bd-features li{
  font-size:14px;
  color:#555;
  line-height:1.7;
  padding:10px 0 10px 28px;
  position:relative;
  border-bottom:1px solid #f1f1f1;
}

.bd-features li:last-child{
  border-bottom:0;
}

.bd-features li:before{
  content:'✓';
  position:absolute;
  left:0;
  color:#f59e0b;
  font-weight:700;
}

/* Offerte correlate */
.bd-related-deals{
  margin-bottom:40px;
}

.bd-related-deals h2{
  font-size:24px;
  font-weight:700;
  color:#111;
  margin:0 0 20px;
}

.bd-related-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(180px, 1fr));
  gap:16px;
}

.bd-related-card{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:8px;
  overflow:hidden;
  transition:transform .2s, box-shadow .2s;
}

.bd-related-card:hover{
  transform:translateY(-3px);
  box-shadow:0 4px 12px rgba(0,0,0,.1);
}

.bd-related-link{
  display:block;
  text-decoration:none;
  color:inherit;
  position:relative;
}

.bd-related-link img{
  width:100%;
  height:180px;
  object-fit:contain;
  padding:10px;
  background:#fff;
}

.bd-related-link h3{
  font-size:14px;
  font-weight:600;
  color:#111;
  margin:0;
  padding:12px;
  line-height:1.4;
  height:3.6em;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.bd-related-price{
  font-size:16px;
  font-weight:700;
  color:#e63946;
  margin:0;
  padding:0 12px 12px;
}

.bd-related-discount{
  position:absolute;
  top:10px;
  left:10px;
  background:#e53935;
  color:#fff;
  font-size:12px;
  font-weight:700;
  padding:4px 8px;
  border-radius:6px;
}

/* Disclaimer */
.bd-disclaimer{
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:10px;
  padding:24px;
  margin-bottom:30px;
}

.bd-disclaimer h3{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
}

.bd-disclaimer p{
  font-size:13px;
  color:#666;
  line-height:1.7;
  margin:0 0 12px;
}

.bd-disclaimer p:last-child{
  margin:0;
}

/* Back link */
.bd-back-link{
  text-align:center;
  padding:20px 0;
}

.bd-back-link a{
  color:#f59e0b;
  text-decoration:none;
  font-size:15px;
  font-weight:600;
}

.bd-back-link a:hover{
  text-decoration:underline;
}

/* Mobile Responsive */
@media (max-width: 980px){
  .bd-deal-layout{
    grid-template-columns:1fr;
    gap:20px;
  }

  .bd-deal-image-col{
    min-height:300px;
  }

  .bd-deal-title{
    font-size:22px;
  }

  .bd-price-new .bd-price-value{
    font-size:28px;
  }

  .bd-deal-description{
    padding:20px;
  }

  .bd-related-grid{
    grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));
  }

  .bd-disclaimer{
    padding:20px;
  }
}

/* Se manca l'old price, evita che il nuovo salga "troppo" (opzionale) */
.bd-deal-prices .bd-old-price:empty{ display:none !important; }

/* FIX: prezzi SEMPRE su una riga (override finale) */
.bd-deal-card .bd-deal-prices{
  display:flex !important;
  flex-direction:row !important;     /* <-- chiave: annulla eventuale column */
  flex-wrap:nowrap !important;
  align-items:baseline !important;
  gap:8px !important;
  white-space:nowrap !important;
}

.bd-deal-card .bd-deal-prices .bd-old-price,
.bd-deal-card .bd-deal-prices .bd-new-price{
  display:inline !important;
  flex:0 0 auto !important;          /* evita che “forzino” a capo */
  white-space:nowrap !important;
}

/* ===============================
   FAQ PAGE STYLES
   =============================== */

.bd-faq-page{
  max-width:900px;
  margin:0 auto;
  padding:40px 20px;
}

/* Hero FAQ */
.bd-faq-hero{
  text-align:center;
  margin-bottom:50px;
}

.bd-faq-hero h1{
  font-size:36px;
  font-weight:700;
  color:#111;
  margin:0 0 16px;
}

.bd-faq-hero p{
  font-size:18px;
  color:#666;
  line-height:1.6;
  margin:0;
}

/* FAQ Grid */
.bd-faq-grid{
  display:flex;
  flex-direction:column;
  gap:20px;
  margin-bottom:50px;
}

.bd-faq-item{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:10px;
  padding:24px;
  transition:box-shadow .2s ease;
}

.bd-faq-item:hover{
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

.bd-faq-question{
  font-size:18px;
  font-weight:700;
  color:#111;
  margin:0 0 12px;
  display:flex;
  align-items:flex-start;
}

.bd-faq-question:before{
  content:'Q:';
  color:#f59e0b;
  font-weight:700;
  margin-right:10px;
  flex-shrink:0;
}

.bd-faq-answer{
  font-size:15px;
  color:#555;
  line-height:1.7;
  padding-left:30px;
}

.bd-faq-answer p{
  margin:0 0 12px;
}

.bd-faq-answer p:last-child{
  margin:0;
}

.bd-faq-answer a{
  color:#f59e0b;
  text-decoration:none;
}

.bd-faq-answer a:hover{
  text-decoration:underline;
}

/* Disclaimer FAQ */
.bd-faq-disclaimer{
  background:#f8f9fa;
  border:1px solid #e9ecef;
  border-radius:10px;
  padding:32px;
}

.bd-faq-disclaimer h2{
  font-size:24px;
  font-weight:700;
  color:#111;
  margin:0 0 20px;
}

.bd-faq-disclaimer p{
  font-size:14px;
  color:#666;
  line-height:1.7;
  margin:0 0 16px;
}

.bd-faq-disclaimer p:last-child{
  margin:0;
}

.bd-faq-disclaimer strong{
  color:#111;
}

/* Mobile Responsive */
@media (max-width: 768px){
  .bd-faq-page{
    padding:20px 15px;
  }

  .bd-faq-hero h1{
    font-size:28px;
  }

  .bd-faq-hero p{
    font-size:16px;
  }

  .bd-faq-item{
    padding:20px;
  }

  .bd-faq-question{
    font-size:16px;
  }

  .bd-faq-answer{
    font-size:14px;
    padding-left:25px;
  }

  .bd-faq-disclaimer{
    padding:24px 20px;
  }

  .bd-faq-disclaimer h2{
    font-size:20px;
  }
}
