/* ============================================================
   CAMS17 — Tema "Premium 25/26" (trasformazione radicale)
   Fedele al riferimento: verde bottiglia · oro · crema · serif alto
   Override del tema rafcart. Classi/ID reali del sito.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Jost:wght@300;400;500;600&display=swap');

:root{
  --green:#0f3d2e;
  --green-dark:#0a2a20;
  --green-line:#1d5240;
  --gold:#c9a961;
  --gold-soft:#d8c08a;
  --cream:#f5f3ef;
  --cream-2:#efece5;
  --card:#ffffff;
  --text:#20211f;
  --muted:#7c7c76;
  --border:#e6e2da;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'Jost','Nunito Sans',sans-serif;
}

/* ============================================================
   RIMAPPA IL ROSSO DEL TEMA (#fd3d57) -> VERDE
   rafcart usa #fd3d57 come colore brand in ~100 punti.
   Questi selettori lo neutralizzano ovunque in un colpo solo.
   ============================================================ */
/* bordi rossi (search, feature, input, ecc.) */
.search,.search_category,.single_feature,.subscribe_form input,
.default_btn,.list_product_btn,.prorder_btn a,.profile_hambarg,
.full_atc_btn button,.cart_sum_pros button,.cart_sum_coupon button,
.pbt_single_btn.active,.single_payment_method.active,.upload_img{
  border-color:var(--green)!important;
}
/* sfondi rossi -> verde */
.bg-color,.all_category,.header_icon a.icon_wrp .pops,.mobile_title,
.disc_tag,.disc_tag::after,.home-2,.home-3,.single_count,
.default_btn,.list_product_btn,.subscribe_form button,.cart_sum_pros button,
.view_filter .view_icon.active,.topr_img .tag,.single_billing_inp,
.main-category li .mega-menu .single-menu .title-link,
.price-range-slider .range-bar .ui-slider-range,.prodcut_hovcont a{
  background-color:var(--green)!important;background:var(--green)!important;
}
/* .single_billing_inp (checkout: First Name, Address, ecc.) ha sfondo verde pieno
   ma la sua <label> resta col colore testo scuro di default -> invisibile su verde */
.single_billing_inp label{color:#fff!important;}
.single_billing_inp label span{color:var(--gold-soft)!important;}
/* radio/checkbox custom (shipping options, payment method): il pallino/spunta interno resta rosso */
.custom_check .check_inp:checked+label::before,.custom_check .check_inp:checked+label::after,
.custom_check label::before{border-color:var(--green)!important;}
.custom_check .check_inp:checked+label::after{background:var(--green)!important;}
/* spunta ✓ del metodo di pagamento selezionato (PayPal ecc.) */
.single_payment_method.active::before,.single_payment_method.active::after{background:var(--green)!important;color:#fff!important;}
/* selettore taglia (pagina prodotto E quick view) e opzione "customized":
   rafcart colora la label associata all'input radio:checked in rosso, non intercettato dai selettori sopra */
.size_inp:checked+label,input[name="size"]:checked+label,
.single_size_opt input:checked+label,
input[name="customized"]:checked+label,.customize_opt input:checked+label{
  background-color:var(--green)!important;background:var(--green)!important;border-color:var(--green)!important;
}
/* pulsante chiudi del quick view: rosso di default */
.close_quickview{background:var(--green)!important;}
.close_quickview:hover{background:var(--green-dark)!important;}
/* variante "second" del default_btn (es. CHECKOUT nel mini-cart): sfondo già verde ma testo resta rosso */
.default_btn.second{color:#fff!important;}
/* testo rosso -> verde */
.text-color,.default_link:hover,.offertext .offer_pers,.topariv_cont a:hover,
.price span.org_price,.footer_menu a:hover,.tophead_items a:hover,
.header_icon a.icon_wrp:hover,.breadcrumbs a,.seemore_2 a,.time_sep,
.nav_bar .subnav li:hover a,.ac_links a:hover,.mega_categories a:hover,
.cart_cont p.price,.cart_price p,.sresult_content a:hover,.topr_content a:hover,
.acprof_links a.active,.acprof_links a:hover,.prof_info_title a,
.accordion-button:not(.collapsed),.main-category li a:hover{
  color:var(--green)!important;
}
/* dots slider */
.banner_slider ul.slick-dots li,.home_2_hero ul.slick-dots li{border-color:var(--gold)!important;}
.banner_slider ul.slick-dots li.slick-active,.home_2_hero ul.slick-dots li.slick-active{background:var(--gold)!important;}
/* section_title underline rosso */
.section_title::after{background:var(--gold)!important;}

/* ---------- BASE ---------- */
html,body{background:var(--cream)!important;}
body{color:var(--text)!important;font-family:var(--sans)!important;font-size:15px;}
.container{max-width:1240px!important;}
a{transition:color .2s ease;text-decoration:none;}
img{max-width:100%;}
section,.section_padding_b{background:transparent!important;}

/* ============================================================
   1. TOP BAR — verde scura, sottile
   ============================================================ */
.top_heaeder{
  background:var(--green)!important;color:#e9e7e0!important;
  font-family:var(--sans)!important;font-size:12.5px!important;
  padding:9px 0!important;border:none!important;letter-spacing:.3px;
}
.top_heaeder a{color:#e9e7e0!important;font-size:12.5px!important;}
.top_heaeder a:hover{color:var(--gold)!important;}
.top_heaeder .nice_select,.top_heaeder select{
  background:transparent!important;border:none!important;color:#fff!important;
}

/* ============================================================
   2. HEADER — crema, logo, search elegante centrale
   ============================================================ */
header,.main_header{
  background:var(--cream)!important;padding:18px 0!important;
  border-bottom:1px solid var(--border)!important;
}
.logo img{height:72px!important;width:auto!important;border-radius:0!important;}

.search .search_input input{
  background:#fff!important;height:52px!important;
  font-family:var(--sans)!important;font-size:14px!important;
  padding-left:20px!important;color:var(--text)!important;
}
.search .search_input input::placeholder{color:#a8a8a2!important;}
.search .search_input input,.search input,#show_suggest{
  box-shadow:none!important;outline:none!important;
}
.search .search_input input:invalid,.search input:invalid,#show_suggest:invalid{
  box-shadow:none!important;outline:none!important;border-color:#ddd8ce!important;
}
.search .search_input input:focus,#show_suggest:focus{outline:none!important;border-color:var(--green)!important;}
/* SEARCH: un solo bordo sul contenitore esterno, nulla all'interno (niente doppi bordi) */
.search,.search.d-flex{
  border:1px solid #ddd8ce!important;border-radius:10px!important;
  box-shadow:none!important;overflow:hidden;background:#fff!important;
}
.search *,.search .search_category,.search .search_input,
.search .search_input input,.search .search_category .nice_select,
.search .search_category select,.search .search_subimt{
  border:none!important;box-shadow:none!important;border-radius:0!important;
}
/* divisore leggero tra tendina categoria e campo testo */
.search .search_category{border-right:1px solid #ece8e0!important;}
.search .search_subimt button{border-radius:0!important;}
.search_category .nice_select{
  background:#fff!important;height:52px!important;line-height:52px!important;
}
.search_subimt button{
  background:var(--green)!important;color:#fff!important;border:none!important;
  border-radius:0 10px 10px 0!important;height:52px!important;padding:0 30px!important;
  font-family:var(--sans)!important;font-weight:500!important;letter-spacing:.4px;
}
.search_subimt button:hover{background:var(--green-dark)!important;}

.header_icon .icon_wrp .icon,.header_icon .icon_wrp i{color:var(--green)!important;font-size:22px!important;}
/* alcuni font-icon (icon-cart) a volte non caricano -> il contenitore <a> collassa a 0x0 e diventa
   non cliccabile. Forziamo un box minimo così l'icona resta sempre apribile anche a icona invisibile. */
.header_icon .icon_wrp{min-width:24px!important;min-height:24px!important;display:inline-flex!important;flex-direction:column;align-items:center;justify-content:center;}
.header_icon .icon_wrp .icon{display:inline-block!important;min-width:22px;min-height:22px;}
.header_icon .icon_text{color:var(--text)!important;font-size:11.5px!important;font-family:var(--sans)!important;font-weight:400!important;}
.shopcart .pops{background:var(--gold)!important;color:var(--green-dark)!important;font-weight:600!important;}
.color-red .icon,.color-red.icon_text,.wishlist .icon{color:var(--gold)!important;}

/* ============================================================
   3. NAV BAR — categorie, pulita
   ============================================================ */
nav{background:var(--cream)!important;border-bottom:1px solid var(--border)!important;}
.nav_bar{gap:2px;align-items:center;}
.nav_bar>li>a{
  color:var(--text)!important;font-family:var(--sans)!important;font-weight:500!important;
  font-size:15px!important;letter-spacing:.2px;text-transform:none!important;padding:18px 16px!important;
}
.nav_bar>li>a:hover{color:var(--gold)!important;}
.nav_bar>li>a[href*="outlet"],.nav_bar>li>a[href*="Outlet"],.nav_bar>li.is-outlet>a{color:var(--gold)!important;}
/* bottone "Tutte le categorie" */
[class*="all_cat"],.all_category_btn,.allcat{
  background:transparent!important;color:var(--text)!important;font-weight:500!important;
}

/* ============================================================
   4. HERO — grande, testo serif enorme, overlay, CTA verde
   ============================================================ */
.banner_slider,.banner_slider .slick-list{border-radius:0!important;}
.banner_slider img,.slick-slide img{border-radius:0!important;}
/* pannello testo iniettato via JS sopra l'hero (vedi theme.js) */
.cams-hero-overlay{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;
  padding:0 clamp(24px,6vw,90px);z-index:5;pointer-events:none;
  background:linear-gradient(90deg,rgba(6,20,15,.72) 0%,rgba(6,20,15,.35) 45%,rgba(6,20,15,0) 75%);
}
.cams-hero-overlay h1{
  font-family:var(--serif)!important;color:#fff;font-weight:600;
  font-size:clamp(38px,5.4vw,74px);line-height:.98;margin:0 0 14px;letter-spacing:.5px;
}
.cams-hero-overlay h1 .yr{color:var(--gold);font-style:italic;font-weight:600;text-shadow:0 2px 12px rgba(0,0,0,.5);}
.cams-hero-overlay h1{text-shadow:0 2px 20px rgba(0,0,0,.45);}
.cams-hero-overlay p{color:#e7e5df;font-size:clamp(15px,1.4vw,19px);margin:0 0 26px;max-width:440px;}
.cams-hero-overlay .cams-cta{
  pointer-events:auto;display:inline-block;background:var(--green);color:#fff;
  font-family:var(--sans);font-weight:500;letter-spacing:1px;text-transform:uppercase;font-size:13px;
  padding:16px 34px;border-radius:8px;width:max-content;border:1px solid var(--green-line);transition:.2s;
}
.cams-hero-overlay .cams-cta:hover{background:var(--gold);color:var(--green-dark);border-color:var(--gold);}
.cams-hero-trust{
  display:flex;gap:30px;margin-top:30px;pointer-events:auto;flex-wrap:wrap;
}
.cams-hero-trust span{color:#dcdad3;font-size:13px;display:flex;align-items:center;gap:8px;}
.cams-hero-trust span::before{content:"";width:16px;height:16px;border:1.5px solid var(--gold);border-radius:50%;display:inline-block;flex:none;}
.cams-hero-wrap{position:relative;overflow:hidden;border-radius:0;}
/* hero autonomo (senza banner backoffice): immagine di sfondo dal tema */
.cams-hero-standalone{
  background-size:cover;background-position:center;background-repeat:no-repeat;
  border-radius:14px;margin-top:8px;
}
/* formato panoramico come il riferimento: il banner riempie un'area larga e bassa */
.cams-hero-wrap .banner_slider,.cams-hero-wrap .slick-list,.cams-hero-wrap .slick-track,
.cams-hero-wrap .slick-slide,.cams-hero-wrap .slick-slide>div{height:100%!important;}
.cams-hero-wrap{height:clamp(360px,42vw,540px);}
.cams-hero-wrap .banner_slider img,.cams-hero-wrap .slick-slide img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center;
}

/* ============================================================
   5. TESSERE CATEGORIA (iniettate via JS)
   ============================================================ */
.cams-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:46px 0;}
.cams-cat{
  position:relative;aspect-ratio:1/1.12;border-radius:14px;overflow:hidden;
  background:#1a1a18 center/cover no-repeat;display:flex;align-items:flex-end;
  box-shadow:0 8px 26px rgba(15,61,46,.10);
}
.cams-cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(6,20,15,.82) 100%);}
.cams-cat-body{position:relative;z-index:2;padding:26px 24px;color:#fff;}
.cams-cat-body h3{font-family:var(--serif)!important;font-weight:600;font-size:23px;line-height:1.1;margin:0 0 10px;}
.cams-cat-body a{color:#fff;font-size:13px;letter-spacing:.5px;display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);}
.cams-cat-body a:hover{color:var(--gold);}
.cams-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.cams-cat:hover img{transform:scale(1.06);}

/* ============================================================
   6. TITOLI DI SEZIONE — serif alto, allineato a sinistra
   ============================================================ */
.recfor_you .container>.tc,.container.tc,.sec_head{text-align:left!important;}
.recfor_you .title,.container.tc h2,.container.tc h3,.container.tc .title,
h2.title,.section_title,.section_title_3{
  font-family:var(--serif)!important;color:var(--green)!important;font-weight:600!important;
  font-size:34px!important;text-transform:none!important;letter-spacing:.3px;margin-bottom:4px!important;
}
.cams-sec-sub{color:var(--muted);font-size:14px;font-family:var(--sans);margin:-2px 0 26px;}

/* ============================================================
   7. CARD PRODOTTO — cuore del restyling
   ============================================================ */
.single_toparrival{
  background:var(--card)!important;border:1px solid #eeebe4!important;border-radius:16px!important;
  overflow:hidden;padding:0!important;
  transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease;
}
.single_toparrival:hover{box-shadow:0 16px 38px rgba(15,61,46,.13)!important;transform:translateY(-5px);border-color:var(--gold-soft)!important;}
.topariv_img{background:#f0ede7!important;border-radius:0!important;padding:16px!important;position:relative;text-align:center;}
.topariv_img img{border-radius:8px!important;transition:transform .45s ease;}
.single_toparrival:hover .topariv_img img{transform:scale(1.05);}

.persof{
  background:var(--green)!important;color:#fff!important;border-radius:6px!important;
  font-family:var(--sans)!important;font-weight:600!important;font-size:10.5px!important;
  letter-spacing:.6px;padding:5px 11px!important;top:16px!important;left:16px!important;text-transform:uppercase;
}
.persof.bg-warning{background:var(--gold)!important;color:var(--green-dark)!important;}
.persof.bg-danger{background:#a23b2d!important;}

.adto_wish{
  background:#fff!important;border-radius:50%!important;width:38px!important;height:38px!important;
  display:flex!important;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.09)!important;
  top:16px!important;right:16px!important;left:auto!important;color:var(--muted)!important;
}
.adto_wish i{font-size:16px;}
.adto_wish:hover{color:#c0392b!important;}
.prod_soh_new{top:16px!important;right:16px!important;left:auto!important;}

.topariv_cont{padding:18px 20px 6px!important;text-align:left!important;}
.topariv_cont .title a{
  font-family:var(--sans)!important;color:var(--text)!important;font-weight:500!important;
  font-size:14px!important;line-height:1.45;text-transform:none!important;
}
.topariv_cont .title a:hover{color:var(--green)!important;}
.price{text-align:left!important;}
.price .org_price{color:var(--green)!important;font-weight:600!important;font-size:19px!important;font-family:var(--sans)!important;}
.price .prev_price{color:#b3b3ab!important;text-decoration:line-through!important;font-size:13px!important;margin-left:6px;}

.full_atc_btn{padding:2px 20px 20px!important;}
.full_atc_btn button{
  background:transparent!important;color:var(--green)!important;border:1.5px solid #cfcabf!important;
  border-radius:10px!important;width:100%!important;height:48px!important;
  font-family:var(--sans)!important;font-weight:500!important;letter-spacing:.4px;text-transform:none!important;
  transition:all .2s ease;
}
.full_atc_btn button:hover{background:var(--green)!important;color:#fff!important;border-color:var(--green)!important;}
.full_atc_btn button i{display:none;}   /* via l'icona carrello, come nel riferimento */

/* ============================================================
   8. TRUST STRIP finale (iniettato via JS)
   ============================================================ */
.cams-trust{
  display:grid;grid-template-columns:repeat(3,1fr);gap:30px;background:var(--cream-2);
  border-radius:16px;padding:38px 44px;margin:46px 0;
}
.cams-trust .it{display:flex;gap:16px;align-items:flex-start;}
.cams-trust .it .ic{width:44px;height:44px;border:1.5px solid var(--gold);border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:20px;}
.cams-trust .it h4{font-family:var(--sans);font-weight:600;font-size:15px;margin:0 0 4px;color:var(--text);}
.cams-trust .it p{font-size:13px;color:var(--muted);margin:0;line-height:1.4;}

/* ============================================================
   9. FOOTER
   ============================================================ */
.copyright_wrap,footer{background:var(--green)!important;color:#cfccC4!important;}
footer a{color:#cfccc4!important;}
footer a:hover{color:var(--gold)!important;}
footer .footer_title,footer h4,footer h5{font-family:var(--serif)!important;color:#fff!important;}
.footer_logo img{filter:brightness(0) invert(1);opacity:.9;height:60px!important;}
/* rafcart mette testo (descrizione negozio, indirizzo, telefono) in <p>/<div> col suo colore scuro di default:
   footer{color} non lo eredita se il tag ha una classe propria (es. .footet_text) -> forziamo qui */
footer p,footer span,footer li,footer .footet_text,footer address{color:#cfccc4!important;}

/* ============================================================
   10. RESPONSIVE
   ============================================================ */
@media(max-width:991px){
  .cams-cats{grid-template-columns:repeat(2,1fr);}
  .cams-trust{grid-template-columns:1fr;gap:20px;padding:28px;}
  .cams-hero-overlay{background:linear-gradient(180deg,rgba(6,20,15,.35),rgba(6,20,15,.75));}
}
@media(max-width:575px){
  .cams-cats{grid-template-columns:1fr;}
  .logo img{height:56px!important;}
}
/* .mobile_bottombar è fixed, alta ~65px, e si sovrappone a contenuti reali
   (bottoni taglia/ADD TO CART) invece di stare sopra spazio vuoto */
@media(max-width:991px){
  body{padding-bottom:65px!important;}
}

/* ---- OVERRIDE del vecchio custom code (blu residuo) ---- */
:root{--blue:var(--green)!important;}
.search_subimt button,.search button,button[type="submit"]{background:var(--green)!important;color:#fff!important;}
/* "All categories" toggle (btn blu tondeggiante a sinistra del menu) */
.all_category,.all_category.all-category{background:var(--green)!important;color:#fff!important;border-radius:10px!important;}
.all_category .icon_text,.all_category i{color:#fff!important;}
a[href*="instagram"],a[href*="Instagram"]{color:var(--green)!important;}
a[href*="instagram"]:hover{color:var(--gold)!important;}

/* misc */
.btn,button.btn-primary,.submit_btn{background:var(--green)!important;border-color:var(--green)!important;border-radius:10px!important;}
.btn:hover{background:var(--green-dark)!important;}
::selection{background:var(--gold);color:var(--green-dark);}
