
:root{--navy:#071a3d;--red:#d7192a;--gold:#c99736;--cream:#ffffff;--ink:#101828;--muted:#667085;--white:#fff;--shadow:0 18px 45px rgba(7,26,61,.14);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#ffffff;line-height:1.65}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);line-height:1.08}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(7,26,61,.08)}.nav{max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:12px 20px}.logo img{height:58px;width:auto}.links{display:flex;gap:18px;align-items:center;font-weight:800;color:var(--navy);font-size:15px}.links a:hover{color:var(--red)}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;background:var(--red);color:#fff!important;font-weight:900;box-shadow:0 10px 24px rgba(215,25,42,.22);border:0;cursor:pointer;text-align:center}.btn.alt{background:var(--navy)}.btn.gold{background:var(--gold);color:var(--navy)!important}.hero{max-width:1180px;margin:auto;padding:68px 20px 44px;display:grid;grid-template-columns:1.12fr .88fr;gap:38px;align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;background:#fff;border:1px solid rgba(7,26,61,.12);border-radius:999px;padding:9px 14px;font-weight:900;color:var(--red);box-shadow:0 6px 18px rgba(7,26,61,.08)}h1{font-size:clamp(42px,6vw,74px);margin:18px 0}.lead{font-size:clamp(18px,2vw,23px);color:#344054;max-width:780px}.red{color:var(--red)}.gold{color:var(--gold)}.hero-card,.card,.form-card,.article-card{background:#fff;border:1px solid rgba(7,26,61,.09);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px}.hero-card{text-align:center;position:relative;overflow:hidden}.hero-card:before{content:'🇬🇧';position:absolute;font-size:150px;opacity:.06;right:-20px;top:-30px}.hero-card img{width:100%;max-width:430px}.badges{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.badge{background:var(--cream);border-radius:16px;padding:14px;font-weight:900;color:var(--navy)}section{max-width:1180px;margin:auto;padding:50px 20px}.section-title{font-size:clamp(34px,4vw,54px);margin:0 0 12px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card h3,.article-card h3{font-size:27px;margin:0 0 10px}.icon{font-size:42px}.dark{background:linear-gradient(135deg,#071a3d,#102b63);color:white}.dark h1,.dark h2,.dark h3{color:white}.dark p,.dark li{color:#eef2ff}.list{padding-left:20px}.list li{margin:10px 0}.step{position:relative;padding-left:68px}.step:before{content:attr(data-step);position:absolute;left:22px;top:26px;background:var(--red);color:white;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:900}.uk-strip{background:linear-gradient(90deg,var(--navy),var(--red),var(--navy));color:#fff;text-align:center;padding:16px;font-weight:900;letter-spacing:.02em}.form-wrap{background:var(--cream);border-top:1px solid rgba(7,26,61,.08);border-bottom:1px solid rgba(7,26,61,.08)}form{display:grid;gap:13px}input,select,textarea{width:100%;border:1px solid rgba(7,26,61,.18);border-radius:14px;padding:15px 16px;font-size:16px;background:#fff}textarea{min-height:110px}.mini{font-size:13px;color:var(--muted)}.footer{background:var(--navy);color:#fff;margin-top:40px}.footer-inner{max-width:1180px;margin:auto;padding:34px 20px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px}.footer a{color:#fff;text-decoration:underline}.pill{display:inline-flex;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(7,26,61,.12);font-weight:800;color:var(--navy);margin:5px 5px 5px 0}.video{aspect-ratio:16/9;background:#0b1d42;border-radius:18px;display:grid;place-items:center;color:#fff;font-weight:900;overflow:hidden}.video video,.video iframe{width:100%;height:100%;border:0}.breadcrumbs{max-width:1180px;margin:24px auto 0;padding:0 20px;color:var(--muted);font-size:14px}.breadcrumbs a{text-decoration:underline}.article{max-width:900px}.article p,.article li{font-size:18px}.article h2{font-size:38px;margin-top:34px}.toc{background:#fff;border:1px solid rgba(7,26,61,.12);border-radius:18px;padding:18px}.tip-meta{color:var(--red);font-weight:900}.category{display:inline-block;background:var(--cream);border:1px solid rgba(7,26,61,.08);border-radius:999px;padding:6px 10px;color:var(--navy);font-weight:900;font-size:13px;margin-bottom:12px}.faq details{background:#fff;border:1px solid rgba(7,26,61,.10);border-radius:16px;margin:12px 0;padding:16px}.faq summary{font-weight:900;color:var(--navy);cursor:pointer}.socials{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:960px){.links{display:none}.hero,.grid-2,.grid-3,.grid-4,.footer-inner{grid-template-columns:1fr}.hero{padding-top:34px}.badges{grid-template-columns:1fr}.logo img{height:48px}section{padding:34px 18px}.hero-card{padding:18px}h1{font-size:42px}.nav{padding:10px 16px}.step{padding-left:26px}.step:before{position:static;margin-bottom:12px}.article h2{font-size:32px}}

/* Imágenes SEO y carrusel Londres */
.hero-visual{padding:0;overflow:hidden;background:#fff}
.hero-visual img,.section-image img,.tip-image img{width:100%;height:auto;display:block;border-radius:var(--radius)}
.section-image,.tip-image{background:#fff;border:1px solid rgba(7,26,61,.09);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;overflow:hidden}
.london-carousel{max-width:1180px;margin:0 auto;padding:24px 20px 56px;overflow:hidden}
.carousel-track{display:flex;gap:20px;animation:londonSlide 22s linear infinite;width:max-content}
.carousel-track:hover{animation-play-state:paused}.carousel-card{min-width:360px;max-width:420px;background:#fff;border:1px solid rgba(7,26,61,.09);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.carousel-card img{width:100%;display:block}.carousel-card div{padding:18px}.carousel-card h3{font-size:24px;margin:0 0 6px}.carousel-card p{margin:0;color:var(--muted);font-weight:700}@keyframes londonSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.image-caption{font-size:14px;color:var(--muted);font-weight:800;text-align:center;margin-top:10px}
@media(max-width:960px){.carousel-card{min-width:78vw}.london-carousel{padding-bottom:34px}.hero-visual{order:-1}}
.article-card .card-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;margin-bottom:16px;background:var(--cream)}

/* Immagini reali ottimizzate */
.hero-visual img, .carousel-card img, .section-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-visual img {
  min-height: 280px;
  border-radius: 22px;
}
.carousel-card img {
  height: 240px;
  border-radius: 20px 20px 0 0;
}
.section-image img {
  max-height: 420px;
  border-radius: 24px;
}


/* Aggiornamento: icone al posto delle fasce/foto decorative */
.icon-section{padding-top:28px}.icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}.icon-card{background:#fff;border:1px solid rgba(7,26,61,.09);border-radius:22px;box-shadow:var(--shadow);padding:24px;text-align:center}.big-icon{font-size:48px;line-height:1;margin-bottom:12px}.icon-card h3{font-size:25px;margin:0 0 8px}.icon-card p{margin:0;color:var(--muted);font-weight:700}.icon-badge{display:flex;align-items:center;justify-content:center;gap:7px}.icon-badge span{font-size:24px}.article-icon{font-size:42px;margin-bottom:10px}.article-card{transition:transform .2s ease, box-shadow .2s ease}.article-card:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(7,26,61,.18)}
@media(max-width:960px){.icon-grid{grid-template-columns:1fr 1fr}.icon-card{padding:18px}.big-icon{font-size:40px}}
@media(max-width:560px){.icon-grid{grid-template-columns:1fr}}


/* CTA verde fiducia - applicato a tutti i pulsanti */
:root{--trust-green:#186568;--trust-green-dark:#145457;}
.btn, .btn.alt, .btn.gold, button.btn, input[type="submit"], .cta-button{
  background:var(--trust-green)!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(24,101,104,.25)!important;
}
.btn:hover, .btn.alt:hover, .btn.gold:hover, button.btn:hover, input[type="submit"]:hover, .cta-button:hover{
  background:var(--trust-green-dark)!important;
  transform:translateY(-2px);
}

/* Card con immagini reali nella Home */
.real-feature-card{
  background:#fff;
  border:1px solid rgba(7,26,61,.09);
  border-radius:22px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.real-feature-card img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
}
.real-feature-card .real-feature-body{
  padding:22px;
  text-align:left;
}
.real-feature-card h3{font-size:25px;margin:0 0 8px;}
.real-feature-card p{margin:0;color:var(--muted);font-weight:700;}
@media(max-width:960px){.real-feature-card img{height:220px}}


/* Aggiornamento richiesto: background bianco puro su tutto il sito */
html, body{background:#ffffff!important;}
section, main, .hero, .form-wrap, .uk-strip, .dark{background:#ffffff!important;}
.form-wrap{border-top:1px solid rgba(7,26,61,.08);border-bottom:1px solid rgba(7,26,61,.08);}
.dark, .dark h1, .dark h2, .dark h3{color:var(--navy)!important;}
.dark p, .dark li{color:#344054!important;}
.badge,.category{background:#ffffff!important;}
.london-page-photo{max-width:1180px;margin:0 auto;padding:34px 20px;}
.london-page-photo .section-image{padding:0;}
.london-page-photo img{width:100%;height:380px;object-fit:cover;border-radius:22px;display:block;}
@media(max-width:960px){.london-page-photo img{height:250px;}}


/* Impaginazione premium immagini reali - aggiornamento */
.hero-visual{border-radius:28px;box-shadow:0 22px 55px rgba(7,26,61,.16);}
.hero-visual img{width:100%;height:430px;max-width:none;min-height:0;object-fit:cover;border-radius:28px;}
.section-image{padding:0!important;border-radius:28px!important;overflow:hidden!important;box-shadow:0 20px 50px rgba(7,26,61,.13)!important;}
.section-image img{width:100%!important;height:390px!important;max-height:none!important;object-fit:cover!important;border-radius:0!important;}
.image-caption{margin:0!important;padding:14px 18px;background:#fff;color:#344054;font-size:15px;font-weight:800;text-align:center;border-top:1px solid rgba(7,26,61,.08);}
.london-page-photo{padding:38px 20px!important;}
.london-page-photo .section-image{position:relative;}
.london-page-photo .image-caption{position:absolute;left:18px;right:18px;bottom:18px;border:0;border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(7,26,61,.12);}
.real-feature-card{border-radius:26px;transition:transform .2s ease, box-shadow .2s ease;}
.real-feature-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(7,26,61,.18);}
.real-feature-card img{height:230px!important;object-fit:cover;}
.article-card .card-img{height:210px;object-fit:cover;border-radius:18px;}
@media(max-width:960px){.hero-visual img{height:300px}.section-image img,.london-page-photo img{height:260px!important}.london-page-photo .image-caption{position:static;border-radius:0;box-shadow:none}.real-feature-card img{height:220px!important}.article-card .card-img{height:190px}}

/* =========================================================
   Mobile-first usability overhaul - v3
   - testo prima, immagini sotto la headline
   - immagini ridimensionate e non duplicate fuori scala
   - pulsanti touch friendly
   - griglie convertite in card singole
   ========================================================= */
@media (max-width: 760px){
  html, body{overflow-x:hidden; width:100%; background:#fff!important;}
  body{font-size:16px; line-height:1.58;}

  .topbar{position:sticky; top:0; background:#fff!important;}
  .nav{padding:10px 14px; align-items:center;}
  .logo img{height:44px; max-width:150px; object-fit:contain;}
  .links{display:none!important;}

  .hero{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
    padding:24px 16px 28px!important;
    text-align:left!important;
  }
  .hero > div:first-child{order:1!important; width:100%;}
  .hero .hero-card,
  .hero .hero-visual{order:2!important; width:100%; margin-top:2px;}
  .hero-card:before{display:none!important;}
  h1{font-size:34px!important; line-height:1.07!important; margin:14px 0 12px!important; letter-spacing:-.02em;}
  .lead{font-size:18px!important; line-height:1.55!important; max-width:100%;}
  .eyebrow{font-size:13px!important; line-height:1.25; padding:8px 11px; max-width:100%; flex-wrap:wrap;}

  .btn, .btn.alt, .btn.gold, .cta-button, button.btn, input[type="submit"]{
    width:100%!important;
    max-width:100%!important;
    min-height:54px!important;
    padding:15px 18px!important;
    border-radius:15px!important;
    font-size:16px!important;
    line-height:1.18!important;
    text-align:center!important;
    white-space:normal!important;
  }
  p .btn{margin-top:6px;}

  .hero-visual{box-shadow:0 14px 30px rgba(7,26,61,.12)!important; border-radius:20px!important; overflow:hidden;}
  .hero-visual img{height:220px!important; min-height:0!important; border-radius:20px!important; object-fit:cover!important;}
  .badges{grid-template-columns:1fr!important; gap:9px!important; margin-top:12px!important;}
  .badge{padding:11px 12px!important; border-radius:13px!important; font-size:14px!important;}

  section{padding:30px 16px!important; max-width:100%!important;}
  .section-title{font-size:29px!important; line-height:1.11!important; margin-bottom:10px!important; letter-spacing:-.01em;}
  .grid-2, .grid-3, .grid-4, .icon-grid{display:grid!important; grid-template-columns:1fr!important; gap:16px!important;}
  .card, .form-card, .article-card, .icon-card, .real-feature-card{
    border-radius:18px!important;
    padding:18px!important;
    box-shadow:0 12px 28px rgba(7,26,61,.10)!important;
  }
  .real-feature-card{padding:0!important; overflow:hidden;}
  .real-feature-card img{height:190px!important; width:100%!important; object-fit:cover!important;}
  .real-feature-card .real-feature-body{padding:16px!important;}
  .card h3, .article-card h3, .icon-card h3, .real-feature-card h3{font-size:22px!important; line-height:1.16!important;}

  .section-image, .tip-image{border-radius:20px!important; padding:0!important; margin:0!important;}
  .section-image img, .tip-image img, .london-page-photo img{
    height:210px!important;
    max-height:210px!important;
    width:100%!important;
    object-fit:cover!important;
    border-radius:0!important;
  }
  .london-page-photo{padding:18px 16px 28px!important;}
  .london-page-photo .image-caption, .image-caption{
    position:static!important;
    padding:12px 14px!important;
    font-size:13px!important;
    line-height:1.35!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .article{max-width:100%!important; padding-left:16px!important; padding-right:16px!important;}
  .article p, .article li{font-size:16.5px!important; line-height:1.6!important;}
  .article h2{font-size:27px!important; line-height:1.15!important; margin-top:26px!important;}
  .article-card .card-img{height:170px!important; width:100%!important; object-fit:cover!important;}
  .toc{padding:15px!important; border-radius:16px!important;}

  .london-carousel{padding:10px 16px 30px!important; overflow:hidden!important;}
  .carousel-track{gap:14px!important; animation:none!important; width:100%!important; display:grid!important; grid-template-columns:1fr!important;}
  .carousel-card{min-width:0!important; max-width:100%!important; width:100%!important; border-radius:18px!important;}
  .carousel-card img{height:185px!important; object-fit:cover!important;}
  .carousel-card div{padding:15px!important;}

  form{gap:11px!important;}
  input, select, textarea{font-size:16px!important; padding:14px 15px!important; border-radius:13px!important;}
  .footer-inner{grid-template-columns:1fr!important; padding:28px 16px!important; gap:16px!important;}
}

@media (min-width: 761px) and (max-width: 960px){
  .hero{display:grid!important; grid-template-columns:1fr!important; gap:24px!important; padding:40px 22px!important;}
  .hero > div:first-child{order:1!important;}
  .hero .hero-card,.hero .hero-visual{order:2!important;}
  .hero-visual img{height:330px!important;}
  .grid-3,.grid-4,.icon-grid{grid-template-columns:1fr 1fr!important;}
  .grid-2{grid-template-columns:1fr!important;}
}


/* Aggiornamento mobile menu + rimozione foto panoramica Londra */
.mobile-menu-toggle{display:none;background:#fff;border:1px solid rgba(7,26,61,.14);border-radius:12px;width:46px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:5px;box-shadow:0 8px 18px rgba(7,26,61,.08);cursor:pointer;margin-left:auto;padding:0;}
.mobile-menu-toggle span{display:block;width:22px;height:3px;border-radius:99px;background:var(--navy);transition:transform .2s ease, opacity .2s ease;}
body.mobile-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg);}
body.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0;}
body.mobile-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
@media(max-width:760px){
  .mobile-menu-toggle{display:flex!important;}
  .nav{position:relative;}
  .links{display:none!important;position:absolute;left:14px;right:14px;top:calc(100% + 10px);background:#fff;border:1px solid rgba(7,26,61,.10);border-radius:18px;box-shadow:0 22px 50px rgba(7,26,61,.16);padding:14px;z-index:999;}
  body.mobile-menu-open .links{display:flex!important;flex-direction:column!important;gap:8px!important;align-items:stretch!important;}
  body.mobile-menu-open .links a{display:block!important;padding:13px 14px!important;border-radius:12px!important;text-align:left!important;font-size:16px!important;text-decoration:none!important;}
  body.mobile-menu-open .links a:not(.btn){background:#fff;color:var(--navy)!important;font-weight:800;}
  body.mobile-menu-open .links .btn{width:100%!important;text-align:center!important;margin-top:6px!important;}
}
