:root{--blue:#2563EB;--blue-dark:#1E40AF;--sky:#38BDF8;--slate:#1E293B;--slate-light:#64748B;--gray-50:#F8FAFC;--gray-100:#F1F5F9;--white:#FFFFFF}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Sora',system-ui,sans-serif;color:var(--slate);background:var(--white)}
a{text-decoration:none;color:inherit}
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.5rem;box-shadow:0 1px 8px rgba(0,0,0,.06)}
.nav-logo{display:flex;align-items:center;gap:.5rem}
.nav-logo-text{font-family:'Sora',sans-serif;font-weight:700;font-size:1.6rem;color:var(--slate)}
.nav-logo-text .dot{font-family:'Caveat',cursive;color:var(--blue);font-weight:600;font-size:1.1em}
.nav-payoff{font-size:.72rem;color:var(--slate-light);border-left:2px solid var(--gray-100);padding-left:.8rem;margin-left:.4rem;line-height:1.3;white-space:nowrap}
.back-btn{color:var(--blue);font-weight:600;font-size:.9rem;display:flex;align-items:center}
.mobile-toggle{display:none;background:none;border:none;cursor:pointer;width:28px;height:20px;position:relative}
.mobile-toggle span{position:absolute;left:0;width:100%;height:2px;background:var(--slate);transition:all .3s}
.mobile-toggle span:nth-child(1){top:0}.mobile-toggle span:nth-child(2){top:9px}.mobile-toggle span:nth-child(3){top:18px}
.pg-hero{position:relative;height:50vh;min-height:380px;display:flex;align-items:flex-end;overflow:hidden}
.pg-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;animation:heroZoom 20s ease-out forwards}
@keyframes heroZoom{from{transform:scale(1.15)}to{transform:scale(1)}}
.pg-hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(30,41,59,.85) 0%,rgba(30,41,59,.3) 40%,rgba(30,41,59,.05) 70%)}
.pg-hero-inner{position:relative;z-index:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}
.pg-hero-inner h1{font-size:clamp(2rem,5vw,3.2rem);color:white;font-weight:800}
.section-title{font-family:'Sora',sans-serif;font-size:1.8rem;font-weight:700;color:var(--slate);margin-bottom:1.5rem}
.section-title .hand{font-family:'Caveat',cursive;color:var(--blue);font-size:1.45em}
.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.dest-card{position:relative;border-radius:8px 28px 8px 28px;overflow:hidden;cursor:pointer;aspect-ratio:2/1;box-shadow:0 10px 36px rgba(0,0,0,.2),0 3px 10px rgba(0,0,0,.1);transition:all .4s cubic-bezier(.22,1,.36,1)}
.dest-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.25)}
.dest-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
.dest-card.in-view img{transform:scale(1.06)}
.dest-card:hover img{transform:scale(1.12)}
.card-ov{position:absolute;bottom:0;left:0;right:0;padding:.8rem 1rem;background:linear-gradient(0deg,rgba(30,41,59,.7),transparent)}
.card-ov h4{color:white;font-size:.95rem;font-weight:700}
.poi-tag{position:absolute;top:.8rem;left:.8rem;background:rgba(255,255,255,.88);backdrop-filter:blur(4px);font-size:.55rem;font-weight:700;padding:.2rem .5rem;border-radius:20px;text-transform:lowercase}
.dest-card .poi-star{position:absolute;top:.8rem;right:.8rem;background:var(--blue);color:white;font-size:.58rem;font-weight:700;padding:.2rem .5rem;border-radius:20px}

.pg-hero-badge{display:inline-block;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:white;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .9rem;border-radius:50px;margin-bottom:.6rem}
.content{max-width:1200px;margin:0 auto;padding:4rem 2rem}
.guide-strip{position:fixed;top:56px;left:0;right:0;z-index:90;background:var(--blue-dark);color:white;display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.5rem;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transform:translateY(-100%);transition:transform .3s}
.guide-strip.visible{transform:translateY(0)}
.guide-strip .strip-text{font-size:.9rem;letter-spacing:.1em;white-space:normal;line-height:1.3;flex:1;min-width:0}
.guide-strip .wa-share{display:inline-flex;align-items:center;gap:.35rem;color:white;padding:.4rem .8rem;border-radius:6px;background:rgba(255,255,255,.1);line-height:1}
.guide-strip .wa-share svg{width:16px;height:16px;fill:#25D366}
.guide-strip .wa-label{font-size:.6rem;letter-spacing:.06em}
.map-section{width:100vw;position:relative;left:50%;margin-left:-50vw;margin-top:2rem;padding:0}
.map-wrap{height:450px;overflow:hidden}
.map-wrap iframe{width:100%;height:100%;border:none}
.booking-cta{margin:3rem auto;max-width:1200px;border-radius:8px 28px 8px 28px;overflow:hidden;display:flex;box-shadow:0 20px 50px rgba(0,0,0,.15)}
.booking-cta .cta-img{flex:0 0 40%;background-size:cover;background-position:center}
.booking-cta .cta-body{flex:1;padding:2.5rem;background:var(--blue-dark)}
.booking-cta .cta-body h3{color:white;font-size:1.5rem;margin-bottom:.5rem}
.booking-cta .cta-body p{color:rgba(255,255,255,.6);font-size:.9rem;margin-bottom:1.5rem}
.booking-cta .cta-btn{display:inline-block;padding:.7rem 2rem;background:white;color:var(--blue-dark);border-radius:8px;font-weight:700;font-size:.9rem;transition:all .3s}
.booking-cta .cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.2)}
.gyg-section{background:var(--gray-50)}
.gyg-inner{max-width:1200px;margin:0 auto;padding:3rem 2rem}
.scroll-top{position:fixed;bottom:24px;right:24px;width:40px;height:40px;border-radius:50%;background:var(--blue);color:white;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s;z-index:150;box-shadow:0 4px 12px rgba(37,99,235,.3)}
.scroll-top.visible{opacity:1;visibility:visible}
.mobile-sticky-footer{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--white);box-shadow:0 -4px 20px rgba(0,0,0,.12);padding:.55rem 1rem;gap:.6rem}
.mobile-sticky-footer a{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem;border-radius:10px;font-family:'Sora',sans-serif;font-weight:700;font-size:.88rem;transition:all .3s}
.mobile-sticky-footer .btn-hotel{background:var(--blue-dark);color:white}
.mobile-sticky-footer .btn-tour{background:var(--slate);color:white}
.island-badge{position:absolute;top:.8rem;left:.8rem;background:rgba(37,99,235,.85);backdrop-filter:blur(4px);color:white;font-size:.55rem;font-weight:700;padding:.2rem .5rem;border-radius:20px;letter-spacing:.05em}
.section-sub{color:var(--slate-light);font-size:.95rem;margin-top:-.8rem;margin-bottom:1.5rem}



/* FOOTER */
.footer{background:var(--slate);color:rgba(255,255,255,0.6);padding:4rem 2rem 2rem}
.footer-inner{max-width:1200px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-brand .nav-logo{margin-bottom:1rem}
.footer-brand .nav-logo-text{color:white}
.footer-brand p{font-size:.88rem;line-height:1.65;max-width:280px;color:rgba(255,255,255,0.4)}
.footer-col h5{font-family:'Sora',sans-serif;font-weight:600;font-size:.85rem;color:white;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.06em}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.footer-col ul li a{font-size:.88rem;color:rgba(255,255,255,0.45);transition:color .2s}
.footer-col ul li a:hover{color:var(--white)}
.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.08);flex-wrap:wrap;gap:1.5rem}
.footer-bottom-left p{font-size:.78rem;color:rgba(255,255,255,0.3);line-height:1.6}
.footer-company{margin-top:.3rem}
.footer-company a{color:rgba(255,255,255,0.5);transition:color .3s}
.footer-company a:hover{color:var(--white)}

html,body{overflow-x:hidden;max-width:100vw}
@media(max-width:900px){
  .dest-grid{grid-template-columns:1fr}.nav-payoff{display:none}
  .mobile-sticky-footer{display:flex}body{padding-bottom:64px}
  .scroll-top{bottom:80px !important}
  .booking-cta{margin:2rem 1rem;flex-direction:column}
  .booking-cta .cta-img{flex:0 0 auto;height:160px}
  .booking-cta .cta-body{padding:1.5rem}
  .content{padding:3rem 1rem}.section-title{font-size:1.5rem}
  .footer-grid{grid-template-columns:1fr 1fr !important}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .footer{padding:3rem 1.5rem 2rem}
  .mobile-toggle{display:block}
}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr !important}}

/* ═══ NAV LINKS (desktop menu) ═══ */
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{font-size:.95rem;font-weight:600;color:var(--slate);transition:color .3s;text-decoration:none}
.nav-links a:hover{color:var(--blue)}
.nav-links a.nav-active{padding:.45rem 1.1rem;background:var(--blue);color:white!important;border-radius:50px}
.nav-cta-btn{padding:.55rem 1.3rem;background:var(--blue);color:var(--white) !important;border-radius:50px;font-weight:600;font-size:.92rem;transition:all .3s}
.nav-cta-btn:hover{background:var(--blue-dark)}

/* ═══ PARALLAX SECTION ═══ */
.parallax-section{position:relative;height:260px;overflow:hidden}
.parallax-section .parallax-bg{position:absolute;inset:-20%;background-size:cover;background-position:center;background-attachment:fixed}
.parallax-section .parallax-overlay{position:absolute;inset:0;background:rgba(30,41,59,0.2)}
@supports(-webkit-touch-callout:none){.parallax-section .parallax-bg{background-attachment:scroll}}
.parallax-divider{position:relative;height:300px;overflow:hidden}
.parallax-divider-bg{position:absolute;inset:-20%;background-size:cover;background-position:center;background-attachment:fixed;filter:brightness(0.85)}
.parallax-divider-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem;z-index:1}
.parallax-divider-text h3{color:white;font-size:clamp(1.3rem,3vw,2rem);font-weight:700;background:rgba(30,41,59,0.2);backdrop-filter:blur(4px);padding:.9rem 2.2rem;border-radius:12px}
.parallax-divider-text h3 .hand{font-family:'Caveat',cursive;color:var(--sky);font-size:1.45em}

/* ═══ INTRO TEXT ═══ */
.intro-text{line-height:1.8;font-size:.95rem;margin-bottom:2rem;color:var(--slate-light)}
.intro-text p{margin-bottom:1rem}

/* ═══ POI DETAIL ═══ */
.poi-description{line-height:1.8;font-size:.95rem}
.poi-description p{margin-bottom:1rem}
.poi-details{border-top:1px solid var(--gray-100);padding-top:1.5rem}
.poi-meta{display:flex;flex-direction:column;gap:.8rem}
.poi-meta-item{display:flex;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--gray-100);font-size:.9rem}
.poi-meta-item strong{min-width:90px;flex-shrink:0}
.poi-meta-item span{color:var(--slate-light)}

/* ═══ FOOTER APP BADGES ═══ */
.footer-company{margin-top:.3rem}
.footer-company a{color:rgba(255,255,255,0.5);transition:color .3s}
.footer-company a:hover{color:var(--white)}
.footer-app-cta{text-align:right}
.footer-app-label{font-size:.8rem;font-weight:600;color:rgba(255,255,255,0.6);margin-bottom:.6rem}
.footer-app-buttons{display:flex;gap:.6rem}
.app-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:rgba(255,255,255,0.08);border-radius:8px;border:1px solid rgba(255,255,255,0.1);transition:all .3s;cursor:pointer}
.app-badge:hover{background:rgba(255,255,255,0.14)}
.app-badge svg{width:20px;height:20px;fill:white}
.app-badge-text{display:flex;flex-direction:column}
.app-badge-text small{font-size:.58rem;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:.04em}
.app-badge-text strong{font-size:.82rem;color:white;font-weight:600}

@media(max-width:900px){
  .nav-links{display:none;position:fixed;top:56px;left:0;right:0;bottom:0;flex-direction:column;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);padding:1.5rem 2rem;z-index:9999}
  .nav-links.show{display:flex}
  .nav-links a{display:block;padding:1.1rem 0;font-size:1.2rem;font-weight:700;border-bottom:1px solid var(--gray-100)}
  .nav-links .nav-cta-btn{display:inline-block;margin-top:.5rem;text-align:center;color:var(--white) !important}
  .parallax-section{height:200px}
  .parallax-divider{height:200px}
  .footer-app-cta{text-align:left}
}

.parallax-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem;z-index:1}
.parallax-text h3{font-family:'Sora',sans-serif;font-size:clamp(1.3rem,3vw,2rem);font-weight:700;color:white;background:rgba(30,41,59,0.25);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:.9rem 2.2rem;border-radius:12px}
.parallax-text h3 .hand{font-family:'Caveat',cursive;color:var(--sky);font-size:1.45em}





/* Destination description */
.dest-description{font-size:1.05rem;color:var(--slate-light);line-height:1.7;margin-bottom:1.5rem;max-width:780px}

/* ═══ BLOG ═══ */

/* Blog hero with carousel */
.blog-hero-carousel{position:relative;height:320px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.bhc-bg{position:absolute;inset:0}
.blog-hero-carousel .carousel-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s}
.blog-hero-carousel .carousel-slide.active{opacity:1}
.bhc-overlay{position:absolute;inset:0;background:rgba(15,23,42,.6)}
.bhc-text{position:relative;z-index:1;text-align:center;padding:0 2rem}
.bhc-text h1{margin:0}
.bhc-hand{font-family:'Caveat',cursive;font-size:5rem;font-weight:600;color:white;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.bhc-text p{font-family:'Sora',sans-serif;font-size:1rem;color:rgba(255,255,255,.7);margin-top:.3rem}
@media(max-width:600px){.bhc-hand{font-size:3.2rem}.blog-hero-carousel{height:240px}}

/* Blog hero blue (kept for blog detail fallback) */
.blog-hero-blue{background:var(--blue,#2563eb);padding:3rem 2rem;display:flex;align-items:center;justify-content:center;min-height:120px}
.blog-hero-blue h1{font-family:'Sora',sans-serif;font-size:2.2rem;font-weight:800;color:white;margin:0;text-align:center}

/* Blog detail cover — full viewport width, no gaps */
.blog-cover-full{position:relative;width:100%;height:320px;overflow:hidden}
.blog-cover-full img{width:100%;height:100%;object-fit:cover;display:block}
.blog-cover-gradient{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,42,.85) 0%,rgba(15,23,42,.4) 40%,rgba(15,23,42,0) 70%);pointer-events:none}
.blog-cover-caption{position:absolute;bottom:0;left:0;right:0;padding:2.5rem;z-index:1;text-align:left;max-width:1200px;margin:0 auto}
.blog-cover-caption h1{font-family:'Sora',sans-serif;font-size:2.4rem;font-weight:800;color:white;line-height:1.25;text-shadow:0 2px 24px rgba(0,0,0,.6);margin:0;text-transform:uppercase;letter-spacing:.03em}
.blog-cover-tags{display:flex;gap:.4rem;margin-bottom:.6rem}
.bct-pill{text-transform:capitalize;font-size:.65rem;font-weight:600;background:rgba(255,255,255,.18);color:white;padding:.2rem .6rem;border-radius:50px;backdrop-filter:blur(4px)}
@media(max-width:600px){.blog-cover-caption h1{font-size:1.3rem}.blog-cover-caption{padding:1.5rem}}

/* Blog detail layout */
.blog-detail-wrap{max-width:1200px;margin:0 auto;padding:2rem 2rem 3rem}
.blog-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:2.5rem}
.blog-detail-main{min-width:0}
.blog-detail-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:80px;align-self:start}
@media(max-width:960px){
  .blog-detail-layout{grid-template-columns:1fr}
  .blog-detail-sidebar{position:static!important}
  .blog-detail-sidebar .sidebar-box:not(.sb-correlati):not(.sb-ultimi):not(.sidebar-booking-img){display:none}
}

/* Blog body text */
.blog-body{font-family:'Lexend','Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.85;font-size:1.1rem;color:var(--slate)}
.blog-body p{margin-bottom:1.3rem}
.blog-body h2,.blog-body h3{font-family:'Sora',sans-serif;margin:2.5rem 0 .8rem;font-weight:700}
.blog-body h2{font-size:1.5rem}
.blog-body h3{font-size:1.2rem}
.blog-body img{max-width:100%;height:auto;border-radius:14px;margin:2rem 0;box-shadow:0 8px 30px rgba(0,0,0,.1)}
.blog-body iframe{width:100%;aspect-ratio:16/9;border:none;border-radius:14px;margin:2rem 0}
.blog-body blockquote{border-left:3px solid var(--blue);padding:1.2rem 1.5rem;margin:2rem 0;background:rgba(37,99,235,.04);border-radius:0 12px 12px 0;font-style:italic}
.blog-body ul,.blog-body ol{margin:1rem 0 1.5rem 1.5rem}
.blog-body li{margin-bottom:.5rem}
.blog-body-title{font-family:'Sora',sans-serif;font-size:2.2rem;font-weight:800;color:var(--slate);line-height:1.3;margin-bottom:1.5rem}

/* Affiliate banners (used in blog detail) */
.aff-banner{display:flex;border-radius:16px;overflow:hidden;text-decoration:none;color:white;margin:1.5rem 0;box-shadow:0 10px 40px rgba(0,0,0,.16);transition:all .3s}
.aff-banner:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(0,0,0,.18)}
.aff-banner-photo{flex:1;min-height:160px;background-size:cover;background-position:center}
.aff-banner-body{flex:1;display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#0f172a;color:white}
.aff-banner-body strong{font-size:1.05rem;display:block;margin-bottom:.3rem}
.aff-banner-body span{font-size:.85rem;opacity:.75;display:block}
.aff-banner-go{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:auto}
.aff-banner-go svg{width:22px;height:22px}
.aff-bg-booking{background:linear-gradient(135deg,#003580,#0057b8)}
.aff-bg-tours{background:linear-gradient(135deg,#1e40af,#3b82f6)}
@media(max-width:600px){.aff-banner{flex-direction:column}.aff-banner-photo{min-height:160px}}

/* Featured (blog list page) */
.blog-feat-label{font-family:'Sora',sans-serif;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--blue);margin-bottom:.8rem}
.blog-featured-row{display:grid;gap:1rem;margin-bottom:2.5rem}
.blog-featured-row.three-col{grid-template-columns:repeat(3,1fr)}
.blog-feat-card{border-radius:16px;overflow:hidden}
.blog-feat-img{display:block;position:relative;height:280px;overflow:hidden}
.blog-feat-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.blog-feat-card:hover .blog-feat-img img{transform:scale(1.06)}
.blog-feat-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,42,.8) 0%,rgba(15,23,42,.1) 60%)}
.blog-feat-text{position:absolute;bottom:0;left:0;right:0;padding:1.2rem;z-index:1}
.blog-feat-tag{display:inline-block;background:var(--blue);color:white;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .6rem;border-radius:50px;margin-bottom:.4rem}
.blog-feat-text h3{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:white;line-height:1.3}
@media(max-width:960px){.blog-featured-row.three-col{grid-template-columns:1fr}}

/* Blog list layout */
.blog-layout{display:grid;grid-template-columns:1fr 320px;gap:2.5rem;margin-top:1rem}
.blog-main{min-width:0}
.blog-sidebar{display:flex;flex-direction:column;gap:1.5rem}
.blog-sidebar-sticky{position:sticky;top:80px;align-self:start}
@media(max-width:960px){.blog-layout{grid-template-columns:1fr}.blog-sidebar{display:none}}

/* List cards */
.blog-list-card{display:grid;grid-template-columns:240px 1fr;gap:1.3rem;padding:1.2rem 0;border-bottom:1px solid var(--gray-100,#f1f5f9)}
.blog-list-card:last-child{border-bottom:none}
.blog-list-img{display:block;border-radius:12px;overflow:hidden;height:160px}
.blog-list-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.blog-list-card:hover .blog-list-img img{transform:scale(1.04)}
.blog-list-body{display:flex;flex-direction:column;justify-content:center}
.blog-list-body h2{font-family:'Sora',sans-serif;font-size:1.15rem;font-weight:700;color:var(--slate);line-height:1.35;margin-bottom:.3rem}
.blog-list-body h2 a{color:inherit;text-decoration:none;transition:color .2s}
.blog-list-body h2 a:hover{color:var(--blue)}
.blog-list-body p{font-size:.9rem;color:var(--slate-light);line-height:1.6}
.blog-list-tags{display:flex;gap:.4rem;margin-bottom:.4rem;flex-wrap:wrap}
.blog-mini-tag{font-size:.65rem;font-weight:600;color:var(--blue);background:rgba(37,99,235,.08);padding:.15rem .5rem;border-radius:50px;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:600px){.blog-list-card{grid-template-columns:1fr}.blog-list-img{height:200px}}

/* Inline widgets */
.blog-inline-widget{padding:1.5rem 0;border-bottom:1px solid var(--gray-100,#f1f5f9)}

/* Tag pills */
.tag-cloud{display:flex;flex-wrap:wrap;gap:.4rem}
.tag-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:500;color:var(--slate);background:var(--gray-50,#f8fafc);border:1px solid var(--gray-100,#f1f5f9);padding:.35rem .75rem;border-radius:50px;cursor:pointer;transition:all .2s;user-select:none}
.tag-pill:hover,.tag-pill.tag-active{background:var(--blue);color:white;border-color:var(--blue)}
.tag-pill small{font-size:.65rem;opacity:.6}

/* Sidebar shared */
.sidebar-box{background:white;border:1px solid var(--gray-100,#f1f5f9);border-radius:14px;padding:1.2rem;box-shadow:0 4px 24px rgba(0,0,0,.07)}
.sidebar-box h4{font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;color:var(--slate);margin-bottom:.8rem}
.sidebar-box .sb-label{display:inline-block;background:var(--blue);color:white;font-family:'Sora',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.45rem 1.2rem .45rem 1.4rem;margin:-1.2rem 0 .8rem -1.8rem;border-radius:0 6px 6px 0;box-shadow:0 4px 18px rgba(37,99,235,.3);position:relative}
.sidebar-box .sb-label::before{content:'';position:absolute;left:0;bottom:-6px;border-style:solid;border-width:6px 0 0 8px;border-color:var(--blue-dark,#1d4ed8) transparent transparent transparent}
.sidebar-booking{background:linear-gradient(135deg,#003580,#0057b8);border:none;color:white}
.sidebar-booking h4{color:white}
.sidebar-booking p{font-size:.82rem;opacity:.7;margin-bottom:.8rem}
.sidebar-booking-btn{display:inline-block;padding:.6rem 1.2rem;background:white;color:#003580;border-radius:50px;font-size:.82rem;font-weight:700;transition:all .3s;text-decoration:none}
.sidebar-booking-btn:hover{background:rgba(255,255,255,.9);transform:translateY(-2px)}
.sidebar-post{display:flex;gap:.7rem;padding:.6rem 0;border-bottom:1px solid var(--gray-100,#f1f5f9);text-decoration:none;transition:opacity .2s}
.sidebar-post:hover{opacity:.8}
.sidebar-post:last-child{border-bottom:none}
.sidebar-post img{width:56px;height:56px;border-radius:8px;object-fit:cover;flex-shrink:0}
.sidebar-post-title{display:block;font-size:.95rem;font-weight:600;color:var(--slate);line-height:1.35}

/* Blog grid (related) */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}
.blog-card{border-radius:14px;overflow:hidden;background:white;box-shadow:0 4px 20px rgba(0,0,0,.06);transition:all .4s cubic-bezier(.22,1,.36,1)}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.12)}
.blog-card-img{display:block;height:190px;overflow:hidden;position:relative}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.blog-card:hover .blog-card-img img{transform:scale(1.05)}
.blog-card-overlay{position:absolute;inset:0;background:rgba(30,41,59,.35);opacity:0;transition:opacity .3s;display:flex;align-items:center;justify-content:center}
.blog-card-overlay span{color:white;font-weight:700;font-size:.85rem;padding:.4rem 1rem;border:2px solid white;border-radius:50px}
.blog-card:hover .blog-card-overlay{opacity:1}
.blog-card-body{padding:1.2rem}
.blog-card-body h2{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--slate);line-height:1.3}
.blog-card-body h2 a{color:inherit;text-decoration:none;transition:color .2s}
.blog-card-body h2 a:hover{color:var(--blue)}

/* ═══ DESTINATION EXPLORE ═══ */
.explore-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem}
.explore-articles{display:flex;flex-direction:column;gap:.8rem}
.explore-card{background:white;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.04)}
.exc-preview{display:flex;gap:1.2rem}
.exc-img{width:160px;min-height:110px;background-size:cover;background-position:center;flex-shrink:0;border-radius:14px 0 0 14px}
.exc-body{padding:1rem 1.2rem;flex:1;display:flex;flex-direction:column;justify-content:center}
.exc-body h4{font-family:'Sora',sans-serif;font-size:.92rem;font-weight:700;color:var(--slate);margin-bottom:.3rem;line-height:1.3}
.exc-body p{font-size:.82rem;color:var(--slate-light);line-height:1.45;margin:0 0 .4rem}
.exc-toggle{background:none;border:none;color:var(--blue);font-size:.78rem;font-weight:600;cursor:pointer;padding:0;text-align:left}
.exc-toggle:hover{color:var(--blue-dark,#1e40af)}
.exc-full{display:none;padding:0 1.5rem 1.2rem}
.exc-full .intro-text{font-size:.9rem}
.explore-card.open .exc-full{display:block}
.explore-card.open .exc-toggle{display:none}
.explore-sidebar{display:flex;flex-direction:column;gap:1.2rem}
.explore-sb-card{display:block;border-radius:14px;overflow:hidden;text-decoration:none;color:white;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:all .3s}
.explore-sb-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.esbc-img{height:120px;background-size:cover;background-position:center}
.esbc-body{padding:1rem;background:linear-gradient(135deg,#003580,#0057b8)}
.esbc-body strong{font-size:.9rem;display:block;margin-bottom:.15rem}
.esbc-body span{font-size:.78rem;opacity:.7}
@media(max-width:960px){.explore-layout{grid-template-columns:1fr}.explore-sidebar{flex-direction:row;overflow-x:auto;gap:1rem}.explore-sb-card{min-width:260px}}

/* Region GYG section */
.region-gyg-section{background:var(--gray-50,#f8fafc);padding:3rem 0;margin:2rem 0}

/* Destination description */
.dest-description{font-size:1.05rem;color:var(--slate-light);line-height:1.7;margin-bottom:1.5rem;max-width:780px}

/* Sidebar booking with image */
.sidebar-booking-img{overflow:hidden;padding:0!important;border:none!important}
.sbi-cover{height:120px;background-size:cover;background-position:center}
.sbi-body{padding:1.2rem;background:linear-gradient(135deg,#003580,#0057b8);color:white}
.sbi-body h4{font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;color:white;margin-bottom:.3rem}
.sbi-body p{font-size:.82rem;opacity:.7;margin-bottom:.8rem}

/* Region map */
.region-map-section{margin:2rem 0}
.region-map{width:100%;height:420px;border-top:1px solid var(--gray-100,#f1f5f9);border-bottom:1px solid var(--gray-100,#f1f5f9)}
.map-pin{background:transparent!important;border:none!important}

/* Blog bottom CTA banner */
.blog-bottom-cta{background:var(--gray-50,#f8fafc);padding:3rem 0}
.blog-bottom-cta-inner{max-width:900px;margin:0 auto;display:flex;border-radius:18px;overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.1)}
.bbc-img{width:320px;min-height:200px;background-size:cover;background-position:center;flex-shrink:0}
.bbc-body{flex:1;padding:2.5rem;background:linear-gradient(135deg,#003580,#0057b8);color:white;display:flex;flex-direction:column;justify-content:center}
.bbc-body h3{font-family:'Sora',sans-serif;font-size:1.4rem;font-weight:700;margin-bottom:.4rem}
.bbc-body p{font-size:.95rem;opacity:.8;margin-bottom:1.2rem}
.bbc-btn{display:inline-block;padding:.7rem 2rem;background:white;color:#003580;border-radius:50px;font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;letter-spacing:.08em;text-decoration:none;transition:all .3s;align-self:flex-start}
.bbc-btn:hover{background:rgba(255,255,255,.9);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.15)}
@media(max-width:700px){.blog-bottom-cta-inner{flex-direction:column}.bbc-img{width:100%;height:180px}.bbc-body{padding:1.5rem}}

/* Destination app banner */
.dest-app-banner{display:flex;align-items:center;gap:1.2rem;padding:1.2rem 1.5rem;background:linear-gradient(135deg,#1e293b,#334155);border-radius:16px;color:white;box-shadow:0 8px 32px rgba(0,0,0,.15)}
.dab-icon{width:56px;height:56px;border-radius:14px;object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.2);flex-shrink:0}
.dab-body{flex:1}
.dab-body strong{font-family:'Sora',sans-serif;font-size:.95rem;display:block;margin-bottom:.15rem}
.dab-body span{font-size:.8rem;opacity:.65}
.dab-buttons{display:flex;gap:.5rem;flex-shrink:0}
.dab-btn{padding:.45rem 1rem;background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.3);color:white;border-radius:8px;font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:all .2s}
.dab-btn:hover{background:rgba(255,255,255,.25)}
@media(max-width:600px){.dest-app-banner{flex-wrap:wrap}.dab-buttons{width:100%;justify-content:center}}

.aff-banner-reverse{flex-direction:row-reverse}
.aff-banner-reverse .aff-banner-body{flex-direction:row-reverse}

/* eSIM banner */
.aff-bg-esim{background:linear-gradient(135deg,#c8094e,#a00740)}

/* Search icon + modal */
.nav-search-btn{width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;background:#475569;margin-right:.3rem;margin-left:auto}
.nav-search-btn svg{width:17px;height:17px;stroke:white;stroke-width:2;fill:none}
.nav-search-btn:hover{background:#334155}
@media(min-width:701px){.nav-search-btn{margin-left:1rem;margin-right:0}}
.search-modal{display:none;position:fixed;inset:0;z-index:200;background:rgba(15,23,42,.6);backdrop-filter:blur(6px);align-items:flex-start;justify-content:center;padding-top:12vh}
.search-modal.open{display:flex}
.search-modal-box{background:white;border-radius:16px;width:90%;max-width:560px;padding:1.5rem;box-shadow:0 24px 60px rgba(0,0,0,.2)}
.search-modal-box h3{font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:700;margin-bottom:1rem;color:var(--slate)}
.search-modal-input{display:flex;gap:.5rem}
.search-modal-input input{flex:1;padding:.7rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;outline:none;transition:border .2s}
.search-modal-input input:focus{border-color:var(--blue)}
.search-modal-input button{padding:.7rem 1.2rem;background:var(--blue);color:white;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:background .2s}
.search-modal-input button:hover{background:var(--blue-dark)}
.search-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;padding:.5rem}
.search-modal-close svg{width:24px;height:24px;stroke:#64748b;stroke-width:2}

/* Nav right group: search + burger aligned */
.nav-right-group{display:flex;align-items:center;gap:.3rem}
