/* The header and the footer of the site pages: the same structure and texts
   as WordPress; Uncode's stylesheet is not copied, this is ours. */
body.sito { margin: 0; font-family: "REM", "Helvetica Neue", Arial, sans-serif; color: #0d1e34; background: #fff; }
/* the promise bar and the header as Uncode paints them on WordPress (9/11/2026, the eye comparison):
   the top menu is #141618 (style-color-wayh-bg) with a bold white line, the menu container #082444
   (style-color-933584-bg) with a white upper-case menu; the logo file is the same, navy and gold on dark */
.sito-topbar { background: #141618; color: #fff; text-align: center; padding: 9px 18px; font-size: 13px; line-height: 1.4; }
.sito-header { background: #082444; box-shadow: 0 4px 10px -10px rgba(0, 0, 0, .6); position: relative; z-index: 20; }
.sito-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 90px; }
.sito-logo { height: 60px; width: auto; display: block; }
.sito-menu ul { list-style: none; display: flex; align-items: center; gap: 28px; margin: 0; padding: 0; }
.sito-menu a { color: #fff; text-decoration: none; font-weight: 600; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.sito-menu a:hover { color: #e89820; }
.sito-menu-book { display: inline-block; background: #e89820; color: #0b1829; padding: 10px 26px; border-radius: 8px; font-weight: 800; font-size: 14px; letter-spacing: .4px; }
.wpml-ls-flag { display: inline-block; vertical-align: middle; }
/* on a phone the menu folds behind the three lines, as Uncode's mobile menu; no script: a checkbox */
.sito-menu-toggle { position: absolute; opacity: 0; pointer-events: none; }
.sito-menu-button { display: none; width: 44px; height: 44px; align-items: center; justify-content: center; cursor: pointer; }
.sito-menu-button span, .sito-menu-button span::before, .sito-menu-button span::after { display: block; width: 24px; height: 2px; background: #fff; content: ''; position: relative; }
.sito-menu-button span::before { position: absolute; top: -7px; }
.sito-menu-button span::after { position: absolute; top: 7px; }
.sito-menu-toggle:focus-visible + .sito-menu-button { outline: 2px solid #e89820; outline-offset: 2px; }
@media (min-width: 960px) { .sito-menu-toggle { display: none; } }
@media (max-width: 959px) {
  .sito-header-inner { flex-wrap: wrap; min-height: 72px; }
  .sito-logo { height: 44px; }
  .sito-menu-button { display: flex; }
  .sito-menu { display: none; width: 100%; padding: 6px 0 18px; }
  .sito-menu ul { flex-direction: column; align-items: flex-start; gap: 16px; }
  .sito-menu-toggle:checked ~ .sito-menu { display: block; }
}
.sito-footer { background: #0d1e34; color: #e8edf5; padding: 64px 0 40px; margin-top: 48px; font-size: 14px; }
.sito-footer a { color: #e8edf5; text-decoration: none; }
.sito-footer a:hover { color: #e89820; }
.sito-footer .h2 { font-size: 26px; line-height: 1.25; font-weight: 300; margin: 0 0 24px; }
.sito-footer .h2 span { display: block; }
.sito-footer .h6 { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 14px; color: #fff; }
.sito-footer-top, .sito-footer-bottom { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 32px; }
.sito-footer-bottom { margin-top: 48px; padding-top: 32px; border-top: 1px solid rgba(255, 255, 255, .12); }
.sito-footer .menu { list-style: none; margin: 0; padding: 0; }
.sito-footer .menu li { margin: 0 0 8px; }
.sito-footer p { margin: 0 0 10px; line-height: 1.5; }
.sito-footer .sito-footer-col p span { display: block; }
.sito-social a { display: inline-block; margin-right: 12px; font-size: 20px; }
.ibw-badges-intro { font-size: 14px; font-weight: 700; letter-spacing: .04em; color: #808080; margin: 2px 0 10px; }
.ibw-badges-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; justify-content: flex-end; }
.ibw-badge { display: inline-flex; align-items: center; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; box-shadow: 0 1px 2px rgba(0, 0, 0, .06); padding: 7px 11px; font-size: 12px; font-weight: 500; gap: 8px; color: #000; }

/* ── Tour page («Pagina Tour»): the rules template_test.php prints inline
   (video reviews, Trustpilot line, sticky booking bar, mobile CTA) and the
   two styles it writes as attributes (type pills, booking lead). ── */
.itl-tp .itl-tp-types{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}
.itl-tp .itl-tp-type{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#0B1829;background:rgba(232,152,32,1);border:1px solid rgba(232,152,32,0.35);padding:4px 12px;border-radius:20px}
.itl-tp .sidebar-booking-card--funnel{display:flex;flex-direction:column;gap:10px}
.itl-tp .sidebar-booking-card--funnel .btn-gold-lg{background:#E89820;border-color:#E89820;color:#fff;justify-content:center;text-align:center}
.itl-tp .sidebar-booking-card--funnel .btn-ghost-sm{text-align:center}
.itl-tp .sidebar-booking-lead{margin:0;font-size:.9rem}
.itl-tp .itl-video-reviews-sub{margin:0 0 14px;font-size:.9rem;color:#5a6b7f}
.itl-video-reviews{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}
.itl-vr{position:relative;border-radius:14px;overflow:hidden;cursor:pointer;aspect-ratio:16/9;background:#0d1e34}
.itl-vr img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.itl-vr:hover img{transform:scale(1.04)}
.itl-vr-play{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;background:rgba(13,30,52,.82) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M8 5v14l11-7z"/></svg>') center/26px no-repeat;box-shadow:0 4px 18px rgba(0,0,0,.35)}
.itl-vr:hover .itl-vr-play{background-color:#E89820}
.itl-vr-label{position:absolute;left:10px;bottom:10px;right:10px;color:#fff;font-size:.82rem;font-weight:600;text-shadow:0 1px 6px rgba(0,0,0,.8)}
.itl-vr iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.itl-vr-native video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0d1e34}
.itl-vr-native{cursor:default}
.itl-vr-native .itl-vr-label{pointer-events:none;bottom:52px}
.itl-trust-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f4f7fb;border-radius:12px;padding:14px 16px;font-size:.9rem;color:#33435a}
.itl-trust-line .itl-trust-star{color:#00b67a;font-size:1.25rem;line-height:1}
.itl-trust-line a{font-weight:700;white-space:nowrap}
@media (max-width: 900px){
  .itl-tp .cta-bar-btns{display:flex;flex-direction:column;align-items:stretch;gap:10px}
  .itl-tp .cta-bar-btns a{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;margin:0}
  .itl-tp .cta-bar-text{text-align:center}
  .itl-sticky-book{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:#0d1e34;padding:10px 14px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 18px rgba(13,30,52,.3)}
  .itl-sticky-book a{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#E89820;color:#fff;font-weight:700;border-radius:10px;padding:14px;text-decoration:none;font-size:16px}
  body.has-sticky-book{padding-bottom:78px}
  body.has-sticky-book .itl-tp-mobile-booking{display:none}
}
@media (min-width: 901px){ .itl-sticky-book{display:none} }

/* «Day Trips from Florence» (template-day-trips-hub.php keeps these rules inline) */
.itl-dt-hub{max-width:1200px;margin:0 auto;padding:48px 20px 80px}
.itl-dt-intro{max-width:820px;margin:34px auto 40px;text-align:center;color:#5a6b7f;line-height:1.6}
.itl-dt-intro b{color:#0d1e34}
.itl-dt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px;margin:0 0 60px}
.itl-dt-card{display:block;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 6px 24px rgba(13,30,52,.08);transition:transform .25s,box-shadow .25s;color:inherit;text-decoration:none}
.itl-dt-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(13,30,52,.14)}
.itl-dt-card figure{margin:0;aspect-ratio:16/10;overflow:hidden;background:#0d1e34}
.itl-dt-card img{width:100%;height:100%;object-fit:cover;display:block}
.itl-dt-card .itl-dt-body{padding:18px 20px 22px}
.itl-dt-card h3{margin:0 0 8px;font-size:1.25rem;color:#0d1e34}
.itl-dt-card p{margin:0 0 12px;font-size:.95rem;color:#5a6b7f;line-height:1.45}
.itl-dt-card .itl-dt-meta{font-weight:700;color:#0d1e34;font-size:.95rem}
.itl-dt-card .itl-dt-meta .fa-arrow-right{color:#E89820;margin-left:6px}
@media (max-width:640px){
  .itl-dt-grid{gap:18px;margin:0 0 40px}
  .itl-dt-card h3{font-size:1.15rem}
}
.itl-dt-sec{max-width:900px;margin:0 auto 54px}
.itl-dt-sec h2{font-size:1.8rem;color:#0d1e34;margin:0 0 18px}
.itl-dt-why{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.itl-dt-why article{background:#f4f7fb;border-radius:14px;padding:18px}
.itl-dt-why i{color:#E89820;font-size:1.3rem;margin-bottom:10px;display:block}
.itl-dt-why h3{margin:0 0 6px;font-size:1.02rem;color:#0d1e34}
.itl-dt-why p{margin:0;font-size:.9rem;color:#5a6b7f}
.itl-dt-steps{counter-reset:step;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.itl-dt-steps div{background:#fff;border:1px solid #e3eaf3;border-radius:14px;padding:18px}
.itl-dt-steps b{display:block;color:#0d1e34;margin-bottom:6px}
.itl-dt-steps p{margin:0;font-size:.9rem;color:#5a6b7f}
.itl-dt-faq details{border-bottom:1px solid #e3eaf3;padding:14px 0}
.itl-dt-faq summary{font-weight:700;color:#0d1e34;cursor:pointer}
.itl-dt-faq p{color:#5a6b7f;margin:10px 0 0}
.itl-dt-cta{background:#0d1e34;color:#fff;border-radius:18px;padding:34px;text-align:center}
.itl-dt-cta h2{color:#fff;margin:0 0 10px}
.itl-dt-cta p{color:#c7d3e2;margin:0 0 18px}
.itl-dt-cta a{display:inline-block;background:#E89820;color:#0d1e34;font-weight:800;padding:13px 28px;border-radius:10px;text-decoration:none}
