/* Winter REV04: integrazione ITB/T4. Tutte le regole sono circoscritte al pacchetto. */
.bb-app.bb-embedded { font-family:Archivo,Arial,Helvetica,sans-serif; width:100%; }
.bb-app.bb-embedded .bb-canvas { min-height:0; }
.bb-app.bb-embedded .bb-content { padding-top:2rem; padding-bottom:2rem; }
.bb-app.bb-embedded .bb-service h3 { font-size:max(1.25rem,1.9cqw); }
.bb-app.bb-embedded .bb-service-card h3 { font-size:max(.875rem,1.1cqw); margin:0 0 2cqw; letter-spacing:0; }
.bb-app.bb-embedded .bb-insurance h3 { font-size:max(1rem,1.2cqw); font-weight:400; line-height:1.3; letter-spacing:0; }
.bb-app.bb-embedded .bb-insurance .bbw-insurance-link { font-size:1rem; }
.bb-app.bb-embedded .bb-news-heading h2 { font-size:max(1.75rem,2cqw); }
.bb-app.bb-embedded .bb-social-heading h2 { font-size:1rem; font-weight:400; }
.bb-app.bb-embedded .bbw-text-link { text-decoration:underline; text-underline-offset:.2em; }
.bb-app.bb-embedded .bb-pill { min-height:44px; }
.bb-app.bb-embedded .bbw-source-card { padding:clamp(1.5rem,5cqw,5rem); background:#ffffffed; max-width:64rem; margin:auto; }
.bb-app.bb-embedded .bbw-source-card h2 { margin-bottom:1rem; }
.bb-app.bb-embedded .bbw-source-card p { font-size:1.1rem; line-height:1.6; }
.bb-app.bb-embedded .bbw-actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.5rem; }
.bb-app.bb-embedded.bb-p11 .bbw-source-card { padding:1rem; }
.bb-app.bb-embedded.bb-p11 .bb-content { min-height:39cqw; }
.bb-app.bb-embedded.bb-p11 .bb-newsletter { width:43%; margin-left:48%; }
.bb-app.bb-embedded.bb-p01 .bb-content,.bb-app.bb-embedded.bb-p02 .bb-content { min-height:40cqw; }
.bb-app.bb-embedded.bb-p07 .bb-content,.bb-app.bb-embedded.bb-p16 .bb-content { display:flex; align-items:center; }
.bb-app.bb-embedded .bb-insurance { margin-top:4cqw; margin-bottom:4cqw; }
/* REV04: geometria card definita in graphics.css. */
.bb-app.bb-embedded .bb-store { display:block; min-height:44px; }
.bb-app.bb-embedded .bb-activities .bbw-text-link { display:inline-flex; align-items:center; min-height:44px; }
.bbw-visually-hidden { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important; }
.bbw-preview-bar { display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;background:#f1f3f4;color:#111;font:14px/1.5 Arial,sans-serif; }
.bbw-preview-bar p { margin:0; }
.bbw-preview-bar a { color:#123e75;min-height:44px;display:inline-flex;align-items:center; }
.bbw-preview-bar a:focus-visible { outline:3px solid #075fc0;outline-offset:4px; }
/* Contenitori degli override: il markup dei moduli rimane fuori dai reset .bb-app. */
.bbw-native { font-family:Archivo,Arial,Helvetica,sans-serif; min-width:0; }
.bbw-native--lifts { background:#fff;color:#111;padding:clamp(1rem,3vw,3rem); }
.bbw-native--lifts .features-desc .list-item { display:flex;flex-wrap:wrap; }
.bbw-native--lifts .features-desc .list-item>.item { flex:1 1 16rem;min-width:0; }
.bbw-native--lifts .features-desc .list-item h3 { font-size:1.2rem;line-height:1.5; }
.bbw-native--weather { background:#162a35;color:#fff;padding:clamp(1rem,3vw,3rem);border-radius:1rem; }
.bbw-native--weather a { color:#fff; }
.bbw-native--weather :where(h2,h3,h4) { color:#fff; }
.bbw-native--weather a:focus-visible,.bbw-native--lifts a:focus-visible,.bbw-native--newsletter :where(a,button,input,select):focus-visible { outline:3px solid #075fc0;outline-offset:4px;box-shadow:0 0 0 7px #fff; }
.bbw-newsletter-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(1rem,5vw,5rem);align-items:center;background:#fff;color:#111; }
.bbw-newsletter-layout>.bbw-newsletter-photo { display:block;width:100%;height:100%;max-height:56rem;object-fit:cover; }
.bbw-native--newsletter { min-width:0;padding:clamp(1rem,3vw,3rem); }
.bbw-native--newsletter #bobbio-newsletter-root { max-width:100%;margin:0!important;padding:0; }
.bbw-native--newsletter .bobbio-newsletter-card-body { padding:0!important; }
.bbw-native--newsletter input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),.bbw-native--newsletter select { max-width:100%;min-height:44px; }
.bbw-native--newsletter button { min-height:44px; }
.bbw-native--newsletter label { color:#222; }
.bbw-native--newsletter .text-secondary { color:#4c4c4c!important; }
@container (max-width:1100px) {
 .bb-app.bb-embedded .bb-service-card h3 { font-size:1rem;margin-bottom:1rem; }
 .bb-app.bb-embedded .bb-service h3 { font-size:1.65rem; }
 .bb-app.bb-embedded.bb-p11 .bb-newsletter { width:100%;margin:0 auto; }
 .bb-app.bb-embedded.bb-p01 .bb-content,.bb-app.bb-embedded.bb-p02 .bb-content { min-height:65vh; }
 .bb-app.bb-embedded .bb-insurance { margin:0 auto; }
}
@media (max-width:767px) {
 .bbw-preview-bar { align-items:flex-start;flex-direction:column; }
 .bbw-newsletter-layout { grid-template-columns:minmax(0,1fr);gap:0; }
 .bbw-newsletter-layout>.bbw-newsletter-photo { height:60vw;max-height:28rem; }
 .bbw-native--newsletter { padding:1rem .5rem; }
}
@media (prefers-reduced-motion:reduce) {
 .bb-app.bb-embedded * { scroll-behavior:auto!important;animation:none!important;transition:none!important; }
}
