body{
    font-family: verdana;
    font-weight: 400;
    background-color: #efefef;
    overflow-x: hidden;
}

.prod_desc{
    line-height: 1.2;
}
.bg-banana{
    background-image: url("banana.png");
    background-repeat: repeat;
}

.font-titolo{
    line-height: 1em;
    font-family: lavoir_small!important;
}

.font-descrizioni{
    line-height: 1em;
    font-size: 0.9em;
}


/* LOGO */
div#logo_mini{
    height:60px;
    width:82px;
    background: url('logo_mini3.png');
}
div#logo_bianco{
    width:443px;
    height:60px;
    background: url('logo_3.png');
}



.animated-icon1,
.animated-icon2,
.animated-icon3
 {
width: 30px!important;
height: 20px;
position: relative;
margin: 0px;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
-o-transition: .5s ease-in-out;
transition: .5s ease-in-out;
cursor: pointer;
}

.animated-icon1 span,
.animated-icon2 span,
.animated-icon3 span {
display: block;
position: absolute;
height: 3px;
width: 100%;
border-radius: 9px;
opacity: 1;
left: 0;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .25s ease-in-out;
-moz-transition: .25s ease-in-out;
-o-transition: .25s ease-in-out;
transition: .25s ease-in-out;
}

div.animated-icon2.bg_nero span{
    background:#212529!important;
    color:#212529!important;
}

.animated-icon1 span {
background: #2d7ef7;
}

.animated-icon2 span {
background: #e3f2fd;
}



.animated-icon2-mobile span {
    background: #69FF00;
}

.animated-icon3 span {
background: #f3e5f5;
}

.animated-icon1 span:nth-child(1) {
top: 0px;
}

.animated-icon1 span:nth-child(2) {
top: 10px;
}

.animated-icon1 span:nth-child(3) {
top: 20px;
}

.animated-icon1.open span:nth-child(1) {
top: 11px;
-webkit-transform: rotate(135deg);
-moz-transform: rotate(135deg);
-o-transform: rotate(135deg);
transform: rotate(135deg);
}

.animated-icon1.open span:nth-child(2) {
opacity: 0;
left: -60px;
}

.animated-icon1.open span:nth-child(3) {
top: 11px;
-webkit-transform: rotate(-135deg);
-moz-transform: rotate(-135deg);
-o-transform: rotate(-135deg);
transform: rotate(-135deg);
}

/* Icon 3*/

.animated-icon2 span:nth-child(1) {
top: 0px;
}

.animated-icon2 span:nth-child(2),
.animated-icon2 span:nth-child(3) {
top: 10px;
}

.animated-icon2 span:nth-child(4) {
top: 20px;
}

.animated-icon2.open span:nth-child(1) {
top: 11px;
width: 0%;
left: 50%;
}

.animated-icon2.open span:nth-child(2) {
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}

.animated-icon2.open span:nth-child(3) {
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.animated-icon2.open span:nth-child(4) {
top: 11px;
width: 0%;
left: 50%;
}


/* =========================================================
   FACELIFT GRAFICO FRONT-END
   (tutto qui, caricato per ultimo: sovrascrive senza toccare il markup)
   ========================================================= */

:root{
    --lcr-primary:#fb5b21;
    --lcr-primary-light:#ff8a3d;
    --lcr-teal:#00c9c3;
    --lcr-banana:#ffd919;
    --lcr-purple:#371339;
    --lcr-ink:#2b2333;
    --lcr-shadow:0 .5rem 1.25rem rgba(55,19,57,.12);
    --lcr-shadow-hover:0 1rem 2.25rem rgba(251,91,33,.28);
}

/* ---- Tipografia ---- */
body{
    font-family:'Rubik', Verdana, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    color:var(--lcr-ink);
    background-color:#f4f5f8;
}

h1, h2, h3, h4, h5,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6{
    font-family:'Oswald', sans-serif;
    letter-spacing:.01em;
}

/* Titoli di sezione: accento sotto il titolo */
.display-3.text-uppercase{
    position:relative;
    font-weight:700;
    padding-bottom:.5rem;
}
.display-3.text-uppercase::after{
    content:"";
    display:block;
    width:70px;
    height:5px;
    margin:.65rem auto 0;
    border-radius:5px;
    background:linear-gradient(90deg,var(--lcr-primary),var(--lcr-banana));
}

/* ---- Card prodotto: griglia "Tutte le offerte" ---- */
[id^="div_prod_"]{
    border:0 !important;
    border-radius:1rem !important;
    overflow:hidden;
    box-shadow:var(--lcr-shadow);
    transition:transform .25s ease, box-shadow .25s ease;
}
[id^="div_prod_"]:hover{
    transform:translateY(-6px);
    box-shadow:var(--lcr-shadow-hover);
}

/* ---- Card prodotto: carosello home + card generiche con bordo info ---- */
.owl-carousel .mx-2 > div,
.rounded.border.border-info{
    border:0 !important;
    border-radius:1rem !important;
    overflow:hidden;
    box-shadow:var(--lcr-shadow);
    transition:transform .25s ease, box-shadow .25s ease;
}
.owl-carousel .mx-2 > div:hover,
.rounded.border.border-info:hover{
    transform:translateY(-6px);
    box-shadow:var(--lcr-shadow-hover);
}

/* cornice immagine + zoom morbido all'hover della card */
.owl-carousel .mx-2 .bg-white{
    overflow:hidden;
    border-radius:.65rem;
}
.owl-carousel .mx-2 img.img-fluid{
    transition:transform .4s ease;
}
.owl-carousel .mx-2 > div:hover img.img-fluid{
    transform:scale(1.05);
}

/* ---- Badge sconto: da riquadro piatto a etichetta brand ---- */
.h2.bg-white.border.rounded.text-dark{
    background:linear-gradient(135deg,var(--lcr-primary),var(--lcr-primary-light)) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:.9rem !important;
    font-weight:800;
    line-height:1;
    align-self:flex-start;
    box-shadow:0 .35rem .75rem rgba(251,91,33,.35);
}

/* prezzo barrato piu' discreto */
del{ opacity:.65; }

/* ---- Bottoni ---- */
.btn{
    font-weight:600;
    letter-spacing:.02em;
    transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.btn:hover{ transform:translateY(-2px); }
.btn.rounded-pill{ padding-left:1.4rem; padding-right:1.4rem; }
.btn-primary{ box-shadow:0 .35rem .8rem rgba(251,91,33,.35); }
.btn-primary:hover{ filter:brightness(1.05); box-shadow:0 .5rem 1.1rem rgba(251,91,33,.45); }
.btn-warning{ box-shadow:0 .35rem .8rem rgba(255,193,7,.35); }

/* ---- Banda annunci in alto ---- */
#header-carousel .carousel-item > .d-flex{
    min-height:52px;
    padding:.55rem 0;
}
#header-carousel .h5{
    font-family:'Oswald', sans-serif;
    letter-spacing:.05em;
    font-weight:600;
    margin:0;
}
#header-carousel .carousel-item.bg-primary{
    background:linear-gradient(135deg,var(--lcr-primary),var(--lcr-primary-light)) !important;
}
#header-carousel .carousel-item.bg-secondary{
    background:linear-gradient(135deg,var(--lcr-banana),#ffc107) !important;
}
#header-carousel .carousel-item.bg-info{
    background:linear-gradient(135deg,var(--lcr-teal),#00a7a2) !important;
}

/* =========================================================
   HERO HOME + BARRA SCONTI + NAVBAR + SEZIONI
   ========================================================= */

html{ scroll-behavior:smooth; }

/* ---- Navbar sticky con ombra ---- */
.navbar.bg-dark{
    position:sticky;
    top:0;
    z-index:1030;
    box-shadow:0 .35rem 1rem rgba(0,0,0,.18);
}

/* ---- Barra filtro sconti ---- */
.scontobar{
    background:#2a0f2c;
    border-top:2px solid #7a286b;
    border-bottom:2px solid #7a286b;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.65rem;
    flex-wrap:wrap;
}
.scontobar-label{
    color:#e9d7ea;
    font-size:.9rem;
    font-weight:600;
    letter-spacing:.02em;
}
.scontobar-btns{
    display:inline-flex;
    gap:.4rem;
    flex-wrap:wrap;
}
.scontobar .btn{
    color:#fff;
    background:transparent;
    border:1px solid rgba(255,255,255,.45);
    border-radius:999px;
    padding:.12rem .85rem;
    font-weight:600;
}
.scontobar .btn:hover{
    background:var(--lcr-primary);
    border-color:var(--lcr-primary);
    color:#fff;
    transform:translateY(-1px);
}

/* ---- Hero della home ---- */
.lcr-hero{
    position:relative;
    overflow:hidden;
    text-align:center;
    color:#fff;
    padding:4.25rem 1.5rem;
    background:
        radial-gradient(circle at 18% 20%, rgba(255,217,25,.16), transparent 52%),
        linear-gradient(120deg, #00b3ad 0%, #6a2c78 100%);
}
.lcr-hero-inner{
    position:relative;
    z-index:1;
    max-width:820px;
    margin:0 auto;
}
.lcr-hero-logo{
    width:96px;
    height:96px;
    object-fit:contain;
    margin-bottom:1rem;
    filter:drop-shadow(0 6px 12px rgba(0,0,0,.35));
}
.lcr-hero-title{
    font-family:'Oswald', sans-serif;
    font-weight:700;
    text-transform:uppercase;
    font-size:clamp(1.8rem, 4.5vw, 3.1rem);
    line-height:1.06;
    margin-bottom:1rem;
    text-shadow:0 2px 10px rgba(0,0,0,.30);
}
.lcr-hero-title span{ color:var(--lcr-banana); }
.lcr-hero-sub{
    font-size:clamp(1rem, 2vw, 1.2rem);
    opacity:.96;
    margin-bottom:1.75rem;
    text-shadow:0 1px 8px rgba(0,0,0,.28);
}
.lcr-hero-cta{
    font-weight:700;
    padding:.8rem 2.2rem;
}

/* ---- Bande sezione a tutta larghezza: sfumatura morbida ---- */
.container-fluid.bg-info,
.container-fluid.bg-warning{
    background-image:linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.035));
}