/* Bigliettilandia - site.css (auto-merged from templates) */

/* Source: acquapark.html */
:root{
      --bg:#ffffff;
      --surface:#ffffff;
      --ink:#0f172a;
      --muted:#475569;
      --soft:#94a3b8;
      --line:#e7edf5;
      --shadow: 0 12px 30px rgba(15, 23, 42, .08);
      --shadow2: 0 8px 18px rgba(15, 23, 42, .06);

      /* Brand */
      --orange:#ED8B0B; /* dal logo */
      --orange2:#F3A63A;
      --navy:#0B2A4A;

      --radius: 18px;
      --radius2: 14px;
      --wrap: 1120px;
      --focus: 0 0 0 3px rgba(237, 139, 11, .22);
    }

.arancione { 
	font-size:22px;
	color:#ed8b0b;
}

    *{box-sizing:border-box}
    body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; color:var(--ink); background:var(--bg)}
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}

    .wrap{max-width:var(--wrap); margin:0 auto; padding:0 18px}

    /* Header */
    .topbar{position:sticky; top:0; z-index:50; background:rgba(255,255,255,.92); backdrop-filter:saturate(120%) blur(10px); border-bottom:1px solid var(--line)}
    .topbarInner{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}

    .brand{display:flex; align-items:center; gap:12px; min-width: 180px}
    .brand img{width:44px; height:44px; border-radius:12px; border:1px solid var(--line); background:#fff}
    .brand .name{font-weight:800; letter-spacing:.2px}
    .brand .tag{display:block; font-size:12px; color:var(--muted); margin-top:2px}

    .nav{display:flex; gap:18px; align-items:center}
    .nav a{font-weight:650; font-size:14px; color:var(--muted); padding:10px 10px; border-radius:12px}
    .nav a:hover{background:#f6f8fc; color:var(--ink)}

    .burger{display:none; width:54px; height:54px; border-radius:16px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.08); cursor:pointer; font-size:22px; font-weight:900; color:#0f172a}
    .burger:focus{outline:none; box-shadow:var(--focus)}

    /* Mobile drawer */
    .overlay{position:fixed; inset:0; background:rgba(15,23,42,.28); opacity:0; pointer-events:none; transition:.2s; z-index:60}
    .drawer{position:fixed; top:0; right:0; width:min(360px, 92vw); height:100vh; background:#fff; border-left:1px solid var(--line); transform:translateX(102%); transition:.22s; z-index:70; box-shadow: -18px 0 36px rgba(15,23,42,.12)}
    .drawerHeader{display:flex; align-items:center; justify-content:space-between; padding:16px 16px; border-bottom:1px solid var(--line)}
    .drawerHeader strong{font-size:14px}
    .iconBtn{width:40px; height:40px; border-radius:12px; border:1px solid var(--line); background:#fff; cursor:pointer}
    .drawerNav{padding:10px 10px}
    .drawerNav a{display:flex; align-items:center; justify-content:space-between; padding:12px 12px; border-radius:12px; color:var(--ink); font-weight:650}
    .drawerNav a:hover{background:#f6f8fc}

    .open .overlay{opacity:1; pointer-events:auto}
    .open .drawer{transform:translateX(0)}

    /* Hero */
    .hero{padding:18px 0 6px}
    .heroBanner{border-radius:22px; border:1px solid var(--line); overflow:hidden; box-shadow:var(--shadow2); background:#f8fafc}
    .heroBanner img{width:100%; height:120px; object-fit:cover}

    /* Quick scroll buttons (between banner and search) */
    .quickNav{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}
    .quickBtn{display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:999px; background:var(--orange); color:#fff; font-weight:900; font-size:13px; border:2px solid rgba(255,255,255,.15); box-shadow:0 10px 22px rgba(237,139,11,.22)}
    .quickBtn:hover{filter:brightness(.98)}
    .quickBtn:focus{outline:none; box-shadow:var(--focus)}

    .heroIntro{margin-top:18px}
    h1{margin:0 0 8px; font-size:38px; line-height:1.12; letter-spacing:-.3px}
    .sub{margin:0; color:var(--muted); font-size:16px; line-height:1.6}

    /* Search */
    .searchWrap{margin-top:16px; padding:16px; border-radius:22px; border:2px solid rgba(237,139,11,.60); background:#fff; box-shadow: 0 26px 60px rgba(15,23,42,.10)}
    .search{display:grid; grid-template-columns: 1fr auto; gap:12px; align-items:end}

    .field label{display:block; font-size:12px; color:var(--muted); margin:0 0 6px}
    .field input{width:100%; padding:15px 14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-size:14px; outline:none}
    .field input:focus{box-shadow:var(--focus); border-color:rgba(237,139,11,.55)}

    .ctaBtn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 16px; border-radius:14px; border:0; background:linear-gradient(135deg, var(--orange), var(--orange2)); color:#111; font-weight:800; cursor:pointer; box-shadow: 0 10px 20px rgba(237,139,11,.22)}
    .ctaBtn:focus{outline:none; box-shadow:var(--focus)}

    /* Search CTA */
    .search .ctaBtn{background:var(--orange); color:#fff; font-weight:900; padding:18px 28px; border-radius:16px; text-transform:uppercase; letter-spacing:.10em; font-size:16px; min-width:190px}

    .trustRow{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
    .pill{display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:var(--muted); font-weight:650; box-shadow:0 1px 0 rgba(15,23,42,.03)}
    .dot{width:10px; height:10px; border-radius:99px; background:var(--orange)}

/* Bestseller horizontal scroll */
.hScroll{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 18px; scroll-snap-type:x mandatory}
.hScroll::-webkit-scrollbar{height:8px}
.hScroll::-webkit-scrollbar-thumb{background:rgba(15,23,42,.16); border-radius:999px}
.bCard{min-width:260px; max-width:260px; background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow2); scroll-snap-align:start}
.bCard img{width:100%; height:160px; object-fit:cover}
.bBody{padding:12px}
.bTitle{margin:0; font-weight:900; color:var(--text)}
.bMeta{margin:6px 0 10px; color:var(--muted); font-weight:650; font-size:13px}
.storeRow{margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow2)}
.storeCopy h3{margin:0; font-size:16px}
.storeCopy p{margin:6px 0 0; color:var(--muted)}
.storeBadges{display:flex; gap:10px; flex-wrap:wrap}
.storeBadges img{height:46px; width:auto}
@media (max-width: 720px){
  .storeRow{flex-direction:column; align-items:flex-start}
  .storeBadges img{height:44px}
}

/* Banner responsive */
@media (min-width: 900px){
  .heroBanner img{height:240px !important;}
}

/* Map */

.mapWrap{margin-top:14px; border:1px solid var(--line); border-radius:22px; overflow:hidden; box-shadow:var(--shadow2); background:#fff}
#map{height:420px; width:100%}
.mapLegend{display:flex; gap:14px; flex-wrap:wrap; padding:12px 14px; border-top:1px solid var(--line); background:#fff}
.legItem{display:inline-flex; align-items:center; gap:8px; color:var(--muted); font-weight:750; font-size:13px}
.legDot{width:10px; height:10px; border-radius:99px; display:inline-block}

    /* Italy regions map */
.italyMapWrap{margin-top:10px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:var(--shadow2)}
.italySvg{width:100%; max-width:520px; display:block; margin:0 auto}
.rLabel{font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; font-size:16px; font-weight:800; fill:#0f172a}
.rLink:hover circle{filter:brightness(.95)}
.italyHint{margin:10px 0 0; color:var(--muted); text-align:center; font-weight:650}


/* Sections */
    section{padding:26px 0}
    .secHead{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px}
    h2{margin:0; font-size:22px; letter-spacing:-.2px}
    .secHead p{margin:6px 0 0; color:var(--muted)}

    /* Categories */
    .grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .cat{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .catImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .catBody{padding:14px 14px 16px}
    .catTitle{font-weight:850; margin:0 0 6px}
    .catDesc{margin:0; color:var(--muted); line-height:1.55}

    /* Cards */
    .cards{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .card{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .cardImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .cardBody{padding:14px 14px 16px}
    .kicker{font-size:12px; color:var(--muted)}
    .card h3{margin:6px 0 8px; font-size:16px}
    .meta{display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-size:13px}
    .price{font-weight:900; color:var(--ink)}
    .card .row{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:12px}
    .btnGhost{padding:10px 12px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--ink); font-weight:750; cursor:pointer}
    .btnGhost:hover{background:#f6f8fc}

    /* Footer */
    footer{padding:28px 0 22px; border-top:1px solid var(--line); background:#fff}
    .footerGrid{display:grid; grid-template-columns: 2fr 1fr 1fr; gap:18px; padding:0 6px}
    .footerGrid h4{margin:0 0 10px; font-size:14px}
    .footerGrid a{display:block; padding:6px 0; color:var(--muted)}
    .footerGrid a:hover{color:var(--ink)}
    .fine{margin-top:16px; padding-top:14px; padding-left:6px; padding-right:6px; border-top:1px solid var(--line); color:var(--muted); font-size:12px}

    /* Responsive */
    @media (max-width: 980px){
      h1{font-size:32px}
      .cat{grid-column: span 6}
      .card{grid-column: span 6}
      .footerGrid{grid-template-columns: 1fr 1fr}
    }

    @media (max-width: 720px){
      .nav{display:none}
      .burger{display:inline-flex; align-items:center; justify-content:center}
      .heroBanner img{height:105px}
      #map{height:300px}
      .search{grid-template-columns: 1fr;}
      .ctaBtn{width:100%}
      .cat{grid-column: span 12}
      .card{grid-column: span 12}
      .footerGrid{grid-template-columns: 1fr}
    }
  
/* SEO content */
.seoBox{margin-top:14px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:16px; box-shadow:var(--shadow2)}
.seoProse{color:var(--muted); font-weight:650; line-height:1.65}
.seoProse p{margin:0 0 12px}
.regionGrid{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap}
.rChip{display:inline-flex; align-items:center; justify-content:center; padding:10px 12px; border-radius:999px; background:#fff; color:var(--text); font-weight:900; border:2px solid rgba(237,139,11,.55); text-decoration:none}
.rChip:hover{background:#fff7ed}
.guideGrid{margin-top:12px; display:grid; grid-template-columns:1fr; gap:10px}
@media (min-width: 900px){.guideGrid{grid-template-columns:repeat(3,1fr)}}
.gCard{background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px; box-shadow:var(--shadow2)}
.gCard a{color:var(--text); font-weight:950; text-decoration:none}
.gCard a:hover{text-decoration:underline}
.gCard p{margin:8px 0 0; color:var(--muted); font-weight:650}

/* Internal pages */
.breadcrumbs{display:flex; gap:8px; flex-wrap:wrap; align-items:center; color:var(--muted); font-weight:700; font-size:13px}
.breadcrumbs a{color:var(--muted); text-decoration:none}
.breadcrumbs a:hover{color:var(--text)}
.heroInternal{position:relative; border-radius:26px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow2)}
.heroInternal img{width:100%; height:340px; object-fit:cover}
@media (min-width: 900px){.heroInternal img{height:420px}}
.heroOverlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(2,6,23,.10) 0%, rgba(2,6,23,.55) 70%, rgba(2,6,23,.72) 100%)}
.heroContent{position:absolute; inset:auto 0 0 0; padding:18px}
@media (min-width: 900px){.heroContent{padding:28px}}
.heroTitle{margin:0; color:#fff; font-size:28px; font-weight:950; letter-spacing:-0.02em}
@media (min-width: 900px){.heroTitle{font-size:44px}}
.heroSub{margin:10px 0 0; color:rgba(255,255,255,.92); max-width:64ch; font-weight:650}
.heroChips{margin-top:14px; display:flex; gap:10px; flex-wrap:wrap}
.chip{display:inline-flex; gap:8px; align-items:center; padding:10px 12px; border-radius:999px; background:rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.22); font-weight:850; backdrop-filter: blur(6px)}
.filtersBar{margin-top:14px; padding:14px; border-radius:22px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow: 0 18px 46px rgba(15,23,42,.10)}
.filtersGrid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
@media (min-width: 900px){.filtersGrid{grid-template-columns: 1.2fr 1fr 1fr auto}}
.sel, .inp{width:100%; padding:14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-weight:700; color:var(--text); outline:none}
.sel:focus, .inp:focus{box-shadow:var(--focus); border-color: rgba(237,139,11,.55)}
.primaryBtn{display:inline-flex; align-items:center; justify-content:center; padding:16px 22px; border-radius:16px; border:none; background:var(--orange); color:#fff; font-weight:950; text-transform:uppercase; letter-spacing:.10em; cursor:pointer; min-width:180px}
.primaryBtn:hover{filter:brightness(.98)}
.gridCards{display:grid; grid-template-columns: 1fr; gap:14px}
@media (min-width: 900px){.gridCards{grid-template-columns: repeat(3, 1fr)}}
.pCard{background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:var(--shadow2); display:flex; flex-direction:column}
.pCard img{width:100%; height:170px; object-fit:cover}
@media (min-width: 900px){.pCard img{height:190px}}
.pBody{padding:14px}
.pName{margin:0; font-weight:950; color:var(--text)}
.pMeta{margin:8px 0 0; color:var(--muted); font-weight:700; font-size:13px}
.pActions{margin-top:12px; display:flex; gap:10px; align-items:center; justify-content:space-between}
.linkGhost{color:var(--text); font-weight:900; text-decoration:none}
.linkGhost:hover{text-decoration:underline}
.faq{border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; box-shadow:var(--shadow2)}
.faqItem{border-top:1px solid var(--line)}
.faqItem:first-child{border-top:none}
.faqQ{width:100%; text-align:left; padding:14px; background:#fff; border:none; font-weight:950; color:var(--text); cursor:pointer}
.faqA{padding:0 14px 14px; color:var(--muted); font-weight:650; display:none}
.faqItem.open .faqA{display:block}
.footerPad{padding-left:16px; padding-right:16px}

/* Source: index-desktop.html */
:root{
      --bg:#ffffff;
      --surface:#ffffff;
      --ink:#0f172a;
      --muted:#475569;
      --soft:#94a3b8;
      --line:#e7edf5;
      --shadow: 0 12px 30px rgba(15, 23, 42, .08);
      --shadow2: 0 8px 18px rgba(15, 23, 42, .06);

      /* Brand */
      --orange:#ED8B0B; /* dal logo */
      --orange2:#F3A63A;
      --navy:#0B2A4A;

      --radius: 18px;
      --radius2: 14px;
      --wrap: 1120px;
      --focus: 0 0 0 3px rgba(237, 139, 11, .22);
    }

    *{box-sizing:border-box}
    body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; color:var(--ink); background:var(--bg)}
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}

    .wrap{max-width:var(--wrap); margin:0 auto; padding:0 18px}

    /* Header */
    .topbar{position:sticky; top:0; z-index:50; background:rgba(255,255,255,.92); backdrop-filter:saturate(120%) blur(10px); border-bottom:1px solid var(--line)}
    .topbarInner{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}

    .brand{display:flex; align-items:center; gap:12px; min-width: 180px}
    .brand img{width:44px; height:44px; border-radius:12px; border:1px solid var(--line); background:#fff}
    .brand .name{font-weight:800; letter-spacing:.2px}
    .brand .tag{display:block; font-size:12px; color:var(--muted); margin-top:2px}

    .nav{display:flex; gap:18px; align-items:center}
    .nav a{font-weight:650; font-size:14px; color:var(--muted); padding:10px 10px; border-radius:12px}
    .nav a:hover{background:#f6f8fc; color:var(--ink)}

    .burger{display:none; width:54px; height:54px; border-radius:16px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.08); cursor:pointer; font-size:22px; font-weight:900; color:#0f172a}
    .burger:focus{outline:none; box-shadow:var(--focus)}

    /* Mobile drawer */
    .overlay{position:fixed; inset:0; background:rgba(15,23,42,.28); opacity:0; pointer-events:none; transition:.2s; z-index:60}
    .drawer{position:fixed; top:0; right:0; width:min(360px, 92vw); height:100vh; background:#fff; border-left:1px solid var(--line); transform:translateX(102%); transition:.22s; z-index:70; box-shadow: -18px 0 36px rgba(15,23,42,.12)}
    .drawerHeader{display:flex; align-items:center; justify-content:space-between; padding:16px 16px; border-bottom:1px solid var(--line)}
    .drawerHeader strong{font-size:14px}
    .iconBtn{width:40px; height:40px; border-radius:12px; border:1px solid var(--line); background:#fff; cursor:pointer}
    .drawerNav{padding:10px 10px}
    .drawerNav a{display:flex; align-items:center; justify-content:space-between; padding:12px 12px; border-radius:12px; color:var(--ink); font-weight:650}
    .drawerNav a:hover{background:#f6f8fc}

    .open .overlay{opacity:1; pointer-events:auto}
    .open .drawer{transform:translateX(0)}

    /* Hero */
    .hero{padding:18px 0 6px}
    .heroBanner{border-radius:22px; border:1px solid var(--line); overflow:hidden; box-shadow:var(--shadow2); background:#f8fafc}
    .heroBanner img{width:100%; height:120px; object-fit:cover}

    /* Quick scroll buttons (between banner and search) */
    .quickNav{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}
    .quickBtn{display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:999px; background:var(--orange); color:#fff; font-weight:900; font-size:13px; border:2px solid rgba(255,255,255,.15); box-shadow:0 10px 22px rgba(237,139,11,.22)}
    .quickBtn:hover{filter:brightness(.98)}
    .quickBtn:focus{outline:none; box-shadow:var(--focus)}

    .heroIntro{margin-top:18px}
    h1{margin:0 0 8px; font-size:38px; line-height:1.12; letter-spacing:-.3px}
    .sub{margin:0; color:var(--muted); font-size:16px; line-height:1.6}

    /* Search */
    .searchWrap{margin-top:16px; padding:16px; border-radius:22px; border:2px solid rgba(237,139,11,.60); background:#fff; box-shadow: 0 26px 60px rgba(15,23,42,.10)}
    .search{display:grid; grid-template-columns: 1fr auto; gap:12px; align-items:end}

    .field label{display:block; font-size:12px; color:var(--muted); margin:0 0 6px}
    .field input{width:100%; padding:15px 14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-size:14px; outline:none}
    .field input:focus{box-shadow:var(--focus); border-color:rgba(237,139,11,.55)}

    .ctaBtn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 16px; border-radius:14px; border:0; background:linear-gradient(135deg, var(--orange), var(--orange2)); color:#111; font-weight:800; cursor:pointer; box-shadow: 0 10px 20px rgba(237,139,11,.22)}
    .ctaBtn:focus{outline:none; box-shadow:var(--focus)}

    /* Search CTA */
    .search .ctaBtn{background:var(--orange); color:#fff; font-weight:900; padding:18px 28px; border-radius:16px; text-transform:uppercase; letter-spacing:.10em; font-size:16px; min-width:190px}

    .trustRow{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
    .pill{display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:var(--muted); font-weight:650; box-shadow:0 1px 0 rgba(15,23,42,.03)}
    .dot{width:10px; height:10px; border-radius:99px; background:var(--orange)}

/* Bestseller horizontal scroll */
.hScroll{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 18px; scroll-snap-type:x mandatory}
.hScroll::-webkit-scrollbar{height:8px}
.hScroll::-webkit-scrollbar-thumb{background:rgba(15,23,42,.16); border-radius:999px}
.bCard{min-width:260px; max-width:260px; background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow2); scroll-snap-align:start}
.bCard img{width:100%; height:160px; object-fit:cover}
.bBody{padding:12px}
.bTitle{margin:0; font-weight:900; color:var(--text)}
.bMeta{margin:6px 0 10px; color:var(--muted); font-weight:650; font-size:13px}
.storeRow{margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow2)}
.storeCopy h3{margin:0; font-size:16px}
.storeCopy p{margin:6px 0 0; color:var(--muted)}
.storeBadges{display:flex; gap:10px; flex-wrap:wrap}
.storeBadges img{height:46px; width:auto}
@media (max-width: 720px){
  .storeRow{flex-direction:column; align-items:flex-start}
  .storeBadges img{height:44px}
}

/* Banner responsive */
@media (min-width: 900px){
  .heroBanner img{height:240px !important;}
}

/* Map */

.mapWrap{margin-top:14px; border:1px solid var(--line); border-radius:22px; overflow:hidden; box-shadow:var(--shadow2); background:#fff}
#map{height:420px; width:100%}
.mapLegend{display:flex; gap:14px; flex-wrap:wrap; padding:12px 14px; border-top:1px solid var(--line); background:#fff}
.legItem{display:inline-flex; align-items:center; gap:8px; color:var(--muted); font-weight:750; font-size:13px}
.legDot{width:10px; height:10px; border-radius:99px; display:inline-block}

    /* Italy regions map */
.italyMapWrap{margin-top:10px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:var(--shadow2)}
.italySvg{width:100%; max-width:520px; display:block; margin:0 auto}
.rLabel{font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; font-size:16px; font-weight:800; fill:#0f172a}
.rLink:hover circle{filter:brightness(.95)}
.italyHint{margin:10px 0 0; color:var(--muted); text-align:center; font-weight:650}


/* Sections */
    section{padding:26px 0}
    .secHead{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px}
    h2{margin:0; font-size:22px; letter-spacing:-.2px}
    .secHead p{margin:6px 0 0; color:var(--muted)}

    /* Categories */
    .grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .cat{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .catImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .catBody{padding:14px 14px 16px}
    .catTitle{font-weight:850; margin:0 0 6px}
    .catDesc{margin:0; color:var(--muted); line-height:1.55}

    /* Cards */
    .cards{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .card{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .cardImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .cardBody{padding:14px 14px 16px}
    .kicker{font-size:12px; color:var(--muted)}
    .card h3{margin:6px 0 8px; font-size:16px}
    .meta{display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-size:13px}
    .price{font-weight:900; color:var(--ink)}
    .card .row{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:12px}
    .btnGhost{padding:10px 12px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--ink); font-weight:750; cursor:pointer}
    .btnGhost:hover{background:#f6f8fc}

    /* Footer */
    footer{padding:28px 0 22px; border-top:1px solid var(--line); background:#fff}
    .footerGrid{display:grid; grid-template-columns: 2fr 1fr 1fr; gap:18px; padding:0 6px}
    .footerGrid h4{margin:0 0 10px; font-size:14px}
    .footerGrid a{display:block; padding:6px 0; color:var(--muted)}
    .footerGrid a:hover{color:var(--ink)}
    .fine{margin-top:16px; padding-top:14px; padding-left:6px; padding-right:6px; border-top:1px solid var(--line); color:var(--muted); font-size:12px}

    /* Responsive */
    @media (max-width: 980px){
      h1{font-size:32px}
      .cat{grid-column: span 6}
      .card{grid-column: span 6}
      .footerGrid{grid-template-columns: 1fr 1fr}
    }

    @media (max-width: 720px){
      .nav{display:none}
      .burger{display:inline-flex; align-items:center; justify-content:center}
      .heroBanner img{height:105px}
      #map{height:300px}
      .search{grid-template-columns: 1fr;}
      .ctaBtn{width:100%}
      .cat{grid-column: span 12}
      .card{grid-column: span 12}
      .footerGrid{grid-template-columns: 1fr}
    }

/* Source: parchi-divertimento-sicilia-agrigento.html */
:root{
      --bg:#ffffff;
      --surface:#ffffff;
      --ink:#0f172a;
      --muted:#475569;
      --soft:#94a3b8;
      --line:#e7edf5;
      --shadow: 0 12px 30px rgba(15, 23, 42, .08);
      --shadow2: 0 8px 18px rgba(15, 23, 42, .06);

      /* Brand */
      --orange:#ED8B0B; /* dal logo */
      --orange2:#F3A63A;
      --navy:#0B2A4A;

      --radius: 18px;
      --radius2: 14px;
      --wrap: 1120px;
      --focus: 0 0 0 3px rgba(237, 139, 11, .22);
    }

    *{box-sizing:border-box}
    body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; color:var(--ink); background:var(--bg)}
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}

    .wrap{max-width:var(--wrap); margin:0 auto; padding:0 18px}

    /* Header */
    .topbar{position:sticky; top:0; z-index:50; background:rgba(255,255,255,.92); backdrop-filter:saturate(120%) blur(10px); border-bottom:1px solid var(--line)}
    .topbarInner{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}

    .brand{display:flex; align-items:center; gap:12px; min-width: 180px}
    .brand img{width:44px; height:44px; border-radius:12px; border:1px solid var(--line); background:#fff}
    .brand .name{font-weight:800; letter-spacing:.2px}
    .brand .tag{display:block; font-size:12px; color:var(--muted); margin-top:2px}

    .nav{display:flex; gap:18px; align-items:center}
    .nav a{font-weight:650; font-size:14px; color:var(--muted); padding:10px 10px; border-radius:12px}
    .nav a:hover{background:#f6f8fc; color:var(--ink)}

    .burger{display:none; width:54px; height:54px; border-radius:16px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.08); cursor:pointer; font-size:22px; font-weight:900; color:#0f172a}
    .burger:focus{outline:none; box-shadow:var(--focus)}

    /* Mobile drawer */
    .overlay{position:fixed; inset:0; background:rgba(15,23,42,.28); opacity:0; pointer-events:none; transition:.2s; z-index:60}
    .drawer{position:fixed; top:0; right:0; width:min(360px, 92vw); height:100vh; background:#fff; border-left:1px solid var(--line); transform:translateX(102%); transition:.22s; z-index:70; box-shadow: -18px 0 36px rgba(15,23,42,.12)}
    .drawerHeader{display:flex; align-items:center; justify-content:space-between; padding:16px 16px; border-bottom:1px solid var(--line)}
    .drawerHeader strong{font-size:14px}
    .iconBtn{width:40px; height:40px; border-radius:12px; border:1px solid var(--line); background:#fff; cursor:pointer}
    .drawerNav{padding:10px 10px}
    .drawerNav a{display:flex; align-items:center; justify-content:space-between; padding:12px 12px; border-radius:12px; color:var(--ink); font-weight:650}
    .drawerNav a:hover{background:#f6f8fc}

    .open .overlay{opacity:1; pointer-events:auto}
    .open .drawer{transform:translateX(0)}

    /* Hero */
    .hero{padding:18px 0 6px}
    .heroBanner{border-radius:22px; border:1px solid var(--line); overflow:hidden; box-shadow:var(--shadow2); background:#f8fafc}
    .heroBanner img{width:100%; height:120px; object-fit:cover}

    /* Quick scroll buttons (between banner and search) */
    .quickNav{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}
    .quickBtn{display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:999px; background:var(--orange); color:#fff; font-weight:900; font-size:13px; border:2px solid rgba(255,255,255,.15); box-shadow:0 10px 22px rgba(237,139,11,.22)}
    .quickBtn:hover{filter:brightness(.98)}
    .quickBtn:focus{outline:none; box-shadow:var(--focus)}

    .heroIntro{margin-top:18px}
    h1{margin:0 0 8px; font-size:38px; line-height:1.12; letter-spacing:-.3px}
    .sub{margin:0; color:var(--muted); font-size:16px; line-height:1.6}

    /* Search */
    .searchWrap{margin-top:16px; padding:16px; border-radius:22px; border:2px solid rgba(237,139,11,.60); background:#fff; box-shadow: 0 26px 60px rgba(15,23,42,.10)}
    .search{display:grid; grid-template-columns: 1fr auto; gap:12px; align-items:end}

    .field label{display:block; font-size:12px; color:var(--muted); margin:0 0 6px}
    .field input{width:100%; padding:15px 14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-size:14px; outline:none}
    .field input:focus{box-shadow:var(--focus); border-color:rgba(237,139,11,.55)}

    .ctaBtn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 16px; border-radius:14px; border:0; background:linear-gradient(135deg, var(--orange), var(--orange2)); color:#111; font-weight:800; cursor:pointer; box-shadow: 0 10px 20px rgba(237,139,11,.22)}
    .ctaBtn:focus{outline:none; box-shadow:var(--focus)}

    /* Search CTA */
    .search .ctaBtn{background:var(--orange); color:#fff; font-weight:900; padding:18px 28px; border-radius:16px; text-transform:uppercase; letter-spacing:.10em; font-size:16px; min-width:190px}

    .trustRow{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
    .pill{display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:var(--muted); font-weight:650; box-shadow:0 1px 0 rgba(15,23,42,.03)}
    .dot{width:10px; height:10px; border-radius:99px; background:var(--orange)}

/* Bestseller horizontal scroll */
.hScroll{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 18px; scroll-snap-type:x mandatory}
.hScroll::-webkit-scrollbar{height:8px}
.hScroll::-webkit-scrollbar-thumb{background:rgba(15,23,42,.16); border-radius:999px}
.bCard{min-width:260px; max-width:260px; background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow2); scroll-snap-align:start}
.bCard img{width:100%; height:160px; object-fit:cover}
.bBody{padding:12px}
.bTitle{margin:0; font-weight:900; color:var(--text)}
.bMeta{margin:6px 0 10px; color:var(--muted); font-weight:650; font-size:13px}
.storeRow{margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow2)}
.storeCopy h3{margin:0; font-size:16px}
.storeCopy p{margin:6px 0 0; color:var(--muted)}
.storeBadges{display:flex; gap:10px; flex-wrap:wrap}
.storeBadges img{height:46px; width:auto}
@media (max-width: 720px){
  .storeRow{flex-direction:column; align-items:flex-start}
  .storeBadges img{height:44px}
}

/* Banner responsive */
@media (min-width: 900px){
  .heroBanner img{height:240px !important;}
}

/* Map */

.mapWrap{margin-top:14px; border:1px solid var(--line); border-radius:22px; overflow:hidden; box-shadow:var(--shadow2); background:#fff}
#map{height:420px; width:100%}
.mapLegend{display:flex; gap:14px; flex-wrap:wrap; padding:12px 14px; border-top:1px solid var(--line); background:#fff}
.legItem{display:inline-flex; align-items:center; gap:8px; color:var(--muted); font-weight:750; font-size:13px}
.legDot{width:10px; height:10px; border-radius:99px; display:inline-block}

    /* Italy regions map */
.italyMapWrap{margin-top:10px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:var(--shadow2)}
.italySvg{width:100%; max-width:520px; display:block; margin:0 auto}
.rLabel{font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; font-size:16px; font-weight:800; fill:#0f172a}
.rLink:hover circle{filter:brightness(.95)}
.italyHint{margin:10px 0 0; color:var(--muted); text-align:center; font-weight:650}


/* Sections */
    section{padding:26px 0}
    .secHead{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px}
    h2{margin:0; font-size:22px; letter-spacing:-.2px}
    .secHead p{margin:6px 0 0; color:var(--muted)}

    /* Categories */
    .grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .cat{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .catImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .catBody{padding:14px 14px 16px}
    .catTitle{font-weight:850; margin:0 0 6px}
    .catDesc{margin:0; color:var(--muted); line-height:1.55}

    /* Cards */
    .cards{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .card{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .cardImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .cardBody{padding:14px 14px 16px}
    .kicker{font-size:12px; color:var(--muted)}
    .card h3{margin:6px 0 8px; font-size:16px}
    .meta{display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-size:13px}
    .price{font-weight:900; color:var(--ink)}
    .card .row{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:12px}
    .btnGhost{padding:10px 12px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--ink); font-weight:750; cursor:pointer}
    .btnGhost:hover{background:#f6f8fc}

    /* Footer */
    footer{padding:28px 0 22px; border-top:1px solid var(--line); background:#fff}
    .footerGrid{display:grid; grid-template-columns: 2fr 1fr 1fr; gap:18px; padding:0 6px}
    .footerGrid h4{margin:0 0 10px; font-size:14px}
    .footerGrid a{display:block; padding:6px 0; color:var(--muted)}
    .footerGrid a:hover{color:var(--ink)}
    .fine{margin-top:16px; padding-top:14px; padding-left:6px; padding-right:6px; border-top:1px solid var(--line); color:var(--muted); font-size:12px}

    /* Responsive */
    @media (max-width: 980px){
      h1{font-size:32px}
      .cat{grid-column: span 6}
      .card{grid-column: span 6}
      .footerGrid{grid-template-columns: 1fr 1fr}
    }

    @media (max-width: 720px){
      .nav{display:none}
      .burger{display:inline-flex; align-items:center; justify-content:center}
      .heroBanner img{height:105px}
      #map{height:300px}
      .search{grid-template-columns: 1fr;}
      .ctaBtn{width:100%}
      .cat{grid-column: span 12}
      .card{grid-column: span 12}
      .footerGrid{grid-template-columns: 1fr}
    }
  
/* SEO content */
.seoBox{margin-top:14px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:16px; box-shadow:var(--shadow2)}
.seoProse{color:var(--muted); font-weight:650; line-height:1.65}
.seoProse p{margin:0 0 12px}
.regionGrid{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap}
.rChip{display:inline-flex; align-items:center; justify-content:center; padding:10px 12px; border-radius:999px; background:#fff; color:var(--text); font-weight:900; border:2px solid rgba(237,139,11,.55); text-decoration:none}
.rChip:hover{background:#fff7ed}
.guideGrid{margin-top:12px; display:grid; grid-template-columns:1fr; gap:10px}
@media (min-width: 900px){.guideGrid{grid-template-columns:repeat(3,1fr)}}
.gCard{background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px; box-shadow:var(--shadow2)}
.gCard a{color:var(--text); font-weight:950; text-decoration:none}
.gCard a:hover{text-decoration:underline}
.gCard p{margin:8px 0 0; color:var(--muted); font-weight:650}

/* Regional map */
.mapBox{margin-top:14px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:var(--shadow2)}
#sicilyMap{height:420px; border-radius:18px; overflow:hidden; border:1px solid #d6dde8}
@media (max-width: 720px){#sicilyMap{height:340px}}
.mapLegend{margin-top:10px; display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-weight:750; font-size:13px}
.legendDot{width:12px; height:12px; border-radius:999px; display:inline-block; margin-right:8px}
.bannerRegional{margin-top:14px; border-radius:26px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow2)}
.bannerRegional img{width:100%; height:220px; object-fit:cover}
@media (min-width: 900px){.bannerRegional img{height:260px}}

/* Internal pages */
.breadcrumbs{display:flex; gap:8px; flex-wrap:wrap; align-items:center; color:var(--muted); font-weight:700; font-size:13px}
.breadcrumbs a{color:var(--muted); text-decoration:none}
.breadcrumbs a:hover{color:var(--text)}
.heroInternal{position:relative; border-radius:26px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow2)}
.heroInternal img{width:100%; height:340px; object-fit:cover}
@media (min-width: 900px){.heroInternal img{height:420px}}
.heroOverlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(2,6,23,.10) 0%, rgba(2,6,23,.55) 70%, rgba(2,6,23,.72) 100%)}
.heroContent{position:absolute; inset:auto 0 0 0; padding:18px}
@media (min-width: 900px){.heroContent{padding:28px}}
.heroTitle{margin:0; color:#fff; font-size:28px; font-weight:950; letter-spacing:-0.02em}
@media (min-width: 900px){.heroTitle{font-size:44px}}
.heroSub{margin:10px 0 0; color:rgba(255,255,255,.92); max-width:64ch; font-weight:650}
.heroChips{margin-top:14px; display:flex; gap:10px; flex-wrap:wrap}
.chip{display:inline-flex; gap:8px; align-items:center; padding:10px 12px; border-radius:999px; background:rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.22); font-weight:850; backdrop-filter: blur(6px)}
.filtersBar{margin-top:14px; padding:14px; border-radius:22px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow: 0 18px 46px rgba(15,23,42,.10)}
.filtersGrid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
@media (min-width: 900px){.filtersGrid{grid-template-columns: 1.2fr 1fr 1fr auto}}
.sel, .inp{width:100%; padding:14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-weight:700; color:var(--text); outline:none}
.sel:focus, .inp:focus{box-shadow:var(--focus); border-color: rgba(237,139,11,.55)}
.primaryBtn{display:inline-flex; align-items:center; justify-content:center; padding:16px 22px; border-radius:16px; border:none; background:var(--orange); color:#fff; font-weight:950; text-transform:uppercase; letter-spacing:.10em; cursor:pointer; min-width:180px}
.primaryBtn:hover{filter:brightness(.98)}
.gridCards{display:grid; grid-template-columns: 1fr; gap:14px}
@media (min-width: 900px){.gridCards{grid-template-columns: repeat(3, 1fr)}}
.pCard{background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:var(--shadow2); display:flex; flex-direction:column}
.pCard img{width:100%; height:170px; object-fit:cover}
@media (min-width: 900px){.pCard img{height:190px}}
.pBody{padding:14px}
.pName{margin:0; font-weight:950; color:var(--text)}
.pMeta{margin:8px 0 0; color:var(--muted); font-weight:700; font-size:13px}
.pActions{margin-top:12px; display:flex; gap:10px; align-items:center; justify-content:space-between}
.linkGhost{color:var(--text); font-weight:900; text-decoration:none}
.linkGhost:hover{text-decoration:underline}
.faq{border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; box-shadow:var(--shadow2)}
.faqItem{border-top:1px solid var(--line)}
.faqItem:first-child{border-top:none}
.faqQ{width:100%; text-align:left; padding:14px; background:#fff; border:none; font-weight:950; color:var(--text); cursor:pointer}
.faqA{padding:0 14px 14px; color:var(--muted); font-weight:650; display:none}
.faqItem.open .faqA{display:block}
.footerPad{padding-left:16px; padding-right:16px}

/* Source: index.html */
:root{
      --bg:#ffffff;
      --surface:#ffffff;
      --ink:#0f172a;
      --muted:#475569;
      --soft:#94a3b8;
      --line:#e7edf5;
      --shadow: 0 12px 30px rgba(15, 23, 42, .08);
      --shadow2: 0 8px 18px rgba(15, 23, 42, .06);

      /* Brand */
      --orange:#ED8B0B; /* dal logo */
      --orange2:#F3A63A;
      --navy:#0B2A4A;

      --radius: 18px;
      --radius2: 14px;
      --wrap: 1120px;
      --focus: 0 0 0 3px rgba(237, 139, 11, .22);
    }

    *{box-sizing:border-box}
    body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; color:var(--ink); background:var(--bg)}
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}

    .wrap{max-width:var(--wrap); margin:0 auto; padding:0 18px}

    /* Header */
    .topbar{position:sticky; top:0; z-index:50; background:rgba(255,255,255,.92); backdrop-filter:saturate(120%) blur(10px); border-bottom:1px solid var(--line)}
    .topbarInner{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}

    .brand{display:flex; align-items:center; gap:12px; min-width: 180px}
    .brand img{width:44px; height:44px; border-radius:12px; border:1px solid var(--line); background:#fff}
    .brand .name{font-weight:800; letter-spacing:.2px}
    .brand .tag{display:block; font-size:12px; color:var(--muted); margin-top:2px}

    .nav{display:flex; gap:18px; align-items:center}
    .nav a{font-weight:650; font-size:14px; color:var(--muted); padding:10px 10px; border-radius:12px}
    .nav a:hover{background:#f6f8fc; color:var(--ink)}

    .burger{display:none; width:54px; height:54px; border-radius:16px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.08); cursor:pointer; font-size:22px; font-weight:900; color:#0f172a}
    .burger:focus{outline:none; box-shadow:var(--focus)}

    /* Mobile drawer */
    .overlay{position:fixed; inset:0; background:rgba(15,23,42,.28); opacity:0; pointer-events:none; transition:.2s; z-index:60}
    .drawer{position:fixed; top:0; right:0; width:min(360px, 92vw); height:100vh; background:#fff; border-left:1px solid var(--line); transform:translateX(102%); transition:.22s; z-index:70; box-shadow: -18px 0 36px rgba(15,23,42,.12)}
    .drawerHeader{display:flex; align-items:center; justify-content:space-between; padding:16px 16px; border-bottom:1px solid var(--line)}
    .drawerHeader strong{font-size:14px}
    .iconBtn{width:40px; height:40px; border-radius:12px; border:1px solid var(--line); background:#fff; cursor:pointer}
    .drawerNav{padding:10px 10px}
    .drawerNav a{display:flex; align-items:center; justify-content:space-between; padding:12px 12px; border-radius:12px; color:var(--ink); font-weight:650}
    .drawerNav a:hover{background:#f6f8fc}

    .open .overlay{opacity:1; pointer-events:auto}
    .open .drawer{transform:translateX(0)}

    /* Hero */
    .hero{padding:18px 0 6px}
    .heroBanner{border-radius:22px; border:1px solid var(--line); overflow:hidden; box-shadow:var(--shadow2); background:#f8fafc}
    .heroBanner img{width:100%; height:120px; object-fit:cover}

    /* Quick scroll buttons (between banner and search) */
    .quickNav{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}
    .quickBtn{display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:999px; background:var(--orange); color:#fff; font-weight:900; font-size:13px; border:2px solid rgba(255,255,255,.15); box-shadow:0 10px 22px rgba(237,139,11,.22)}
    .quickBtn:hover{filter:brightness(.98)}
    .quickBtn:focus{outline:none; box-shadow:var(--focus)}

    .heroIntro{margin-top:18px}
    h1{margin:0 0 8px; font-size:38px; line-height:1.12; letter-spacing:-.3px}
    .sub{margin:0; color:var(--muted); font-size:16px; line-height:1.6}

    /* Search */
    .searchWrap{margin-top:16px; padding:16px; border-radius:22px; border:2px solid rgba(237,139,11,.60); background:#fff; box-shadow: 0 26px 60px rgba(15,23,42,.10)}
    .search{display:grid; grid-template-columns: 1fr auto; gap:12px; align-items:end}

    .field label{display:block; font-size:12px; color:var(--muted); margin:0 0 6px}
    .field input{width:100%; padding:15px 14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-size:14px; outline:none}
    .field input:focus{box-shadow:var(--focus); border-color:rgba(237,139,11,.55)}

    .ctaBtn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 16px; border-radius:14px; border:0; background:linear-gradient(135deg, var(--orange), var(--orange2)); color:#111; font-weight:800; cursor:pointer; box-shadow: 0 10px 20px rgba(237,139,11,.22)}
    .ctaBtn:focus{outline:none; box-shadow:var(--focus)}

    /* Search CTA */
    .search .ctaBtn{background:var(--orange); color:#fff; font-weight:900; padding:18px 28px; border-radius:16px; text-transform:uppercase; letter-spacing:.10em; font-size:16px; min-width:190px}

    .trustRow{display:flex; gap:10px; flex-wrap:wrap; margin-top:12px}
    .pill{display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:var(--muted); font-weight:650; box-shadow:0 1px 0 rgba(15,23,42,.03)}
    .dot{width:10px; height:10px; border-radius:99px; background:var(--orange)}

/* Bestseller horizontal scroll */
.hScroll{display:flex; gap:14px; overflow-x:auto; padding:6px 2px 18px; scroll-snap-type:x mandatory}
.hScroll::-webkit-scrollbar{height:8px}
.hScroll::-webkit-scrollbar-thumb{background:rgba(15,23,42,.16); border-radius:999px}
.bCard{min-width:260px; max-width:260px; background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow2); scroll-snap-align:start}
.bCard img{width:100%; height:160px; object-fit:cover}
.bBody{padding:12px}
.bTitle{margin:0; font-weight:900; color:var(--text)}
.bMeta{margin:6px 0 10px; color:var(--muted); font-weight:650; font-size:13px}
.storeRow{margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow2)}
.storeCopy h3{margin:0; font-size:16px}
.storeCopy p{margin:6px 0 0; color:var(--muted)}
.storeBadges{display:flex; gap:10px; flex-wrap:wrap}
.storeBadges img{height:46px; width:auto}
@media (max-width: 720px){
  .storeRow{flex-direction:column; align-items:flex-start}
  .storeBadges img{height:44px}
}

/* Banner responsive */
@media (min-width: 900px){
  .heroBanner img{height:240px !important;}
}

/* Map */

.mapWrap{margin-top:14px; border:1px solid var(--line); border-radius:22px; overflow:hidden; box-shadow:var(--shadow2); background:#fff}
#map{height:420px; width:100%}
.mapLegend{display:flex; gap:14px; flex-wrap:wrap; padding:12px 14px; border-top:1px solid var(--line); background:#fff}
.legItem{display:inline-flex; align-items:center; gap:8px; color:var(--muted); font-weight:750; font-size:13px}
.legDot{width:10px; height:10px; border-radius:99px; display:inline-block}

    /* Italy regions map */
.italyMapWrap{margin-top:10px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:var(--shadow2)}
.italySvg{width:100%; max-width:520px; display:block; margin:0 auto}
.rLabel{font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; font-size:16px; font-weight:800; fill:#0f172a}
.rLink:hover circle{filter:brightness(.95)}
.italyHint{margin:10px 0 0; color:var(--muted); text-align:center; font-weight:650}


/* Sections */
    section{padding:26px 0}
    .secHead{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px}
    h2{margin:0; font-size:22px; letter-spacing:-.2px}
    .secHead p{margin:6px 0 0; color:var(--muted)}

    /* Categories */
    .grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .cat{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .catImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .catBody{padding:14px 14px 16px}
    .catTitle{font-weight:850; margin:0 0 6px}
    .catDesc{margin:0; color:var(--muted); line-height:1.55}

    /* Cards */
    .cards{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .card{grid-column: span 4; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow2); overflow:hidden}
    .cardImg{width:100%; aspect-ratio: 16/10; object-fit:cover}
    .cardBody{padding:14px 14px 16px}
    .kicker{font-size:12px; color:var(--muted)}
    .card h3{margin:6px 0 8px; font-size:16px}
    .meta{display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-size:13px}
    .price{font-weight:900; color:var(--ink)}
    .card .row{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:12px}
    .btnGhost{padding:10px 12px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--ink); font-weight:750; cursor:pointer}
    .btnGhost:hover{background:#f6f8fc}

    /* Footer */
    footer{padding:28px 0 22px; border-top:1px solid var(--line); background:#fff}
    .footerGrid{display:grid; grid-template-columns: 2fr 1fr 1fr; gap:18px; padding:0 6px}
    .footerGrid h4{margin:0 0 10px; font-size:14px}
    .footerGrid a{display:block; padding:6px 0; color:var(--muted)}
    .footerGrid a:hover{color:var(--ink)}
    .fine{margin-top:16px; padding-top:14px; padding-left:6px; padding-right:6px; border-top:1px solid var(--line); color:var(--muted); font-size:12px}

    /* Responsive */
    @media (max-width: 980px){
      h1{font-size:32px}
      .cat{grid-column: span 6}
      .card{grid-column: span 6}
      .footerGrid{grid-template-columns: 1fr 1fr}
    }

    @media (max-width: 720px){
      .nav{display:none}
      .burger{display:inline-flex; align-items:center; justify-content:center}
      .heroBanner img{height:105px}
      #map{height:300px}
      .search{grid-template-columns: 1fr;}
      .ctaBtn{width:100%}
      .cat{grid-column: span 12}
      .card{grid-column: span 12}
      .footerGrid{grid-template-columns: 1fr}
    }
  
/* SEO content */
.seoBox{margin-top:14px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:16px; box-shadow:var(--shadow2)}
.seoProse{color:var(--muted); font-weight:650; line-height:1.65}
.seoProse p{margin:0 0 12px}
.regionGrid{margin-top:12px; display:flex; gap:10px; flex-wrap:wrap}
.rChip{display:inline-flex; align-items:center; justify-content:center; padding:10px 12px; border-radius:999px; background:#fff; color:var(--text); font-weight:900; border:2px solid rgba(237,139,11,.55); text-decoration:none}
.rChip:hover{background:#fff7ed}
.guideGrid{margin-top:12px; display:grid; grid-template-columns:1fr; gap:10px}
@media (min-width: 900px){.guideGrid{grid-template-columns:repeat(3,1fr)}}
.gCard{background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px; box-shadow:var(--shadow2)}
.gCard a{color:var(--text); font-weight:950; text-decoration:none}
.gCard a:hover{text-decoration:underline}
.gCard p{margin:8px 0 0; color:var(--muted); font-weight:650}

/* Internal pages */
.breadcrumbs{display:flex; gap:8px; flex-wrap:wrap; align-items:center; color:var(--muted); font-weight:700; font-size:13px}
.breadcrumbs a{color:var(--muted); text-decoration:none}
.breadcrumbs a:hover{color:var(--text)}
.heroInternal{position:relative; border-radius:26px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow2)}
.heroInternal img{width:100%; height:340px; object-fit:cover}
@media (min-width: 900px){.heroInternal img{height:420px}}
.heroOverlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(2,6,23,.10) 0%, rgba(2,6,23,.55) 70%, rgba(2,6,23,.72) 100%)}
.heroContent{position:absolute; inset:auto 0 0 0; padding:18px}
@media (min-width: 900px){.heroContent{padding:28px}}
.heroTitle{margin:0; color:#fff; font-size:28px; font-weight:950; letter-spacing:-0.02em}
@media (min-width: 900px){.heroTitle{font-size:44px}}
.heroSub{margin:10px 0 0; color:rgba(255,255,255,.92); max-width:64ch; font-weight:650}
.heroChips{margin-top:14px; display:flex; gap:10px; flex-wrap:wrap}
.chip{display:inline-flex; gap:8px; align-items:center; padding:10px 12px; border-radius:999px; background:rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.22); font-weight:850; backdrop-filter: blur(6px)}
.filtersBar{margin-top:14px; padding:14px; border-radius:22px; border:2px solid rgba(237,139,11,.55); background:#fff; box-shadow: 0 18px 46px rgba(15,23,42,.10)}
.filtersGrid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
@media (min-width: 900px){.filtersGrid{grid-template-columns: 1.2fr 1fr 1fr auto}}
.sel, .inp{width:100%; padding:14px; border-radius:14px; border:1px solid #d6dde8; background:#fff; font-weight:700; color:var(--text); outline:none}
.sel:focus, .inp:focus{box-shadow:var(--focus); border-color: rgba(237,139,11,.55)}
.primaryBtn{display:inline-flex; align-items:center; justify-content:center; padding:16px 22px; border-radius:16px; border:none; background:var(--orange); color:#fff; font-weight:950; text-transform:uppercase; letter-spacing:.10em; cursor:pointer; min-width:180px}
.primaryBtn:hover{filter:brightness(.98)}
.gridCards{display:grid; grid-template-columns: 1fr; gap:14px}
@media (min-width: 900px){.gridCards{grid-template-columns: repeat(3, 1fr)}}
.pCard{background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:var(--shadow2); display:flex; flex-direction:column}
.pCard img{width:100%; height:170px; object-fit:cover}
@media (min-width: 900px){.pCard img{height:190px}}
.pBody{padding:14px}
.pName{margin:0; font-weight:950; color:var(--text)}
.pMeta{margin:8px 0 0; color:var(--muted); font-weight:700; font-size:13px}
.pActions{margin-top:12px; display:flex; gap:10px; align-items:center; justify-content:space-between}
.linkGhost{color:var(--text); font-weight:900; text-decoration:none}
.linkGhost:hover{text-decoration:underline}
.faq{border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; box-shadow:var(--shadow2)}
.faqItem{border-top:1px solid var(--line)}
.faqItem:first-child{border-top:none}
.faqQ{width:100%; text-align:left; padding:14px; background:#fff; border:none; font-weight:950; color:var(--text); cursor:pointer}
.faqA{padding:0 14px 14px; color:var(--muted); font-weight:650; display:none}
.faqItem.open .faqA{display:block}
.footerPad{padding-left:16px; padding-right:16px}
  

/* Attraction page */
.atWrap{max-width:1180px;margin:0 auto;padding:0 18px}
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted);font-weight:750;font-size:13px;margin:14px 0 10px}
.breadcrumbs a{color:var(--muted);text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}
.heroAt{border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#fff;box-shadow:var(--shadow2)}
.heroAtGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:0}
@media (max-width: 980px){.heroAtGrid{grid-template-columns:1fr}}
.heroAtMedia{position:relative;min-height:320px}
.heroAtMedia img{width:100%;height:100%;object-fit:cover;display:block}
.heroAtOverlay{position:absolute;inset:0;background:linear-gradient(90deg, rgba(15,23,42,.82) 0%, rgba(15,23,42,.55) 36%, rgba(15,23,42,.10) 70%)}
.heroAtCopy{position:absolute;left:22px;right:22px;top:18px;bottom:18px;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;z-index:2}
.heroTitleAt{color:#fff;font-size:44px;line-height:1.05;margin:0;letter-spacing:-.02em}
.heroSubAt{color:rgba(255,255,255,.92);font-weight:800;margin:0;font-size:16px}
.ratingRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ratingBadge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.75);padding:10px 12px;border-radius:14px;color:#0f172a;font-weight:950}
.ratingStars{letter-spacing:.08em}
.priceBadge{display:inline-flex;align-items:baseline;gap:8px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.75);padding:12px 14px;border-radius:14px;color:#0f172a;font-weight:950;width:fit-content}
.priceBadge b{font-size:28px}
.heroMicro{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}
.heroPill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:10px 12px;border-radius:999px;color:#fff;font-weight:850}
.heroPill svg{opacity:.95}
.bookingBox{padding:18px}
.bookingCard{border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:var(--shadow2);background:#fff;position:sticky;top:14px}
@media (max-width: 980px){.bookingCard{position:relative;top:auto}}
.bookingCard h3{margin:0 0 10px;font-size:18px}
.formRow{display:flex;gap:10px}
.formRow select,.formRow input{flex:1;border:1px solid var(--line);border-radius:14px;padding:12px 12px;font-weight:800}
.dateGrid{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.dChip{border:1px solid var(--line);border-radius:12px;padding:10px 10px;font-weight:900;background:#fff;color:var(--text);min-width:42px;text-align:center}
.dChip.active{border-color:rgba(237,139,11,.65);background:rgba(237,139,11,.10)}
.ctaBook{margin-top:12px;display:block;width:100%;text-align:center;padding:14px 14px;border-radius:16px;background:var(--brand);color:#fff;font-weight:1000;letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
.ctaBook:hover{filter:brightness(.97)}
.sectionAt{padding:18px 0}
.sectionHeadAt{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sectionHeadAt h2{margin:0;font-size:22px}
.sectionHeadAt p{margin:0;color:var(--muted);font-weight:750}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width: 980px){.grid2{grid-template-columns:1fr}}
.grid3{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
@media (max-width: 980px){.grid3{grid-template-columns:1fr}}
.cardBox{background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:var(--shadow2)}
.iconRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.fIcon{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px 12px;font-weight:900;flex:1;min-width:240px}
@media (max-width: 720px){.fIcon{min-width:unset;flex:1}}
.fIcon svg{color:var(--brand)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
@media (max-width: 980px){.gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.gallery{grid-template-columns:1fr}}
.gItem{border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.gItem img{width:100%;height:170px;object-fit:cover;display:block}
.infoList{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.infoList li{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-weight:780}
.infoList b{color:var(--text)}
.tick{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(237,139,11,.15);border:1px solid rgba(237,139,11,.35);color:var(--brand);flex:0 0 auto;margin-top:2px}
.cross{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#ef4444;flex:0 0 auto;margin-top:2px}
.mapBoxAt{height:220px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.faqItem{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}
.faqQ{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px;font-weight:950;cursor:pointer}
.faqA{padding:0 14px 14px;color:var(--muted);font-weight:780;display:none;line-height:1.65}
.faqItem.open .faqA{display:block}
.trustStrip{margin:16px 0 0;background:#fff;border:1px solid var(--line);border-radius:22px;padding:14px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-weight:900;box-shadow:var(--shadow2)}
.trustStrip .star{color:var(--brand)}


/* --- PATCHES v16 --- */
.topbar .wrap{align-items:center;}
.topbar .right{display:flex; align-items:center; gap:10px; flex-wrap:nowrap;}
.topbar .storeBadges{display:flex; align-items:center; gap:10px; flex-wrap:nowrap;}
.topbar .storeBadges a{display:inline-flex; align-items:center; }
.topbar .storeBadges img{height:34px; width:auto; display:block;}
@media (max-width: 920px){
  .topbar .storeBadges img{height:32px;}
}


/* === Home tweaks (2026-01) === */

/* Bestseller: button style */
.buyBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 14px;
  border-radius:14px;
  background:var(--orange);
  color:#fff;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  border:0;
  box-shadow:0 10px 20px rgba(237,139,11,.18);
}
.buyBtn:hover{filter:brightness(.98)}
.buyBtn:focus{outline:none; box-shadow:var(--focus)}

/* Bestseller: on desktop show grid (no horizontal scroll) */
@media (min-width: 980px){
  #bestseller .hScroll{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:14px;
    overflow:visible;
    padding:0;
    scroll-snap-type:none;
  }
  #bestseller .bCard{
    min-width:0;
    max-width:none;
  }
}

/* Top attrazioni: primary CTA + details + price emphasis */
.card .ctaBtn{
  background:var(--orange);
  background-image:none;
  color:#fff;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  box-shadow:0 10px 20px rgba(237,139,11,.18);
}
.card .ctaBtn:hover{filter:brightness(.98)}

.card .btnGhost{
  border:2px solid rgba(237,139,11,.55);
  background:#fff;
  color:var(--ink);
  font-weight:900;
}
.card .btnGhost:hover{background:#fff7ed}

.card .price{
  color:var(--orange);
  font-weight:950;
  font-size:18px;
}

/* Regioni chips: fix border alpha + improve hover */
.rChip{
  border:2px solid rgba(237,139,11,.55);
}
.rChip:hover{
  background:#fff7ed;
}











.sectionHead{ margin-bottom:14px; }
.sectionTitle{ margin:0; }
.sectionSub{ margin:6px 0 0; opacity:.85; }

.cardsGrid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:14px;
}

@media (max-width: 1100px){
  .cardsGrid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .cardsGrid{ grid-template-columns: 1fr; }
}

.attrCard{
  border:1px solid rgba(15,23,42,.10);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  display:flex;
  flex-direction:column;
}

.attrMedia{ aspect-ratio: 16 / 10; background: rgba(15,23,42,.04); }
.attrMedia img{ width:100%; height:100%; object-fit:cover; display:block; }

.attrBody{ padding:12px; display:flex; flex-direction:column; gap:8px; }
.attrTitle{ margin:0; font-weight:900; }
.attrMeta{ font-size:14px; opacity:.8; }

.attrBottom{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.attrPrice{ font-size:14px; }
.attrPrice strong{ color: var(--orange); font-size:18px; }

