/* REV04: componenti legati ai dati Joomla/JA ACM; nessun selettore globale. */
.bbr { --bbr-ink:#101010; --bbr-paper:#fff; box-sizing:border-box; color:var(--bbr-ink); background:var(--bbr-paper); font:400 1rem/1.5 Archivo,Arial,Helvetica,sans-serif; container-type:inline-size; padding:clamp(1.25rem,3vw,3rem); }
.bbr *, .bbr *::before, .bbr *::after { box-sizing:border-box; }
.bbr :where(h1,h2,h3,h4,p,figure,ul) { margin:0;padding:0;font-family:inherit;color:inherit; }
.bbr :where(h1,h2,h3,h4) { font-weight:800;line-height:1.15;letter-spacing:-.025em; }
.bbr h2 { font-size:clamp(1.75rem,3cqw,3rem);margin-bottom:1.5rem; }
.bbr h3 { font-size:1.25rem; }
.bbr h4 { font-size:1.1rem; }
.bbr img { display:block;max-width:100%;height:auto; }
.bbr a { color:inherit; }
.bbr a:focus-visible { outline:3px solid #075fc0;outline-offset:4px;box-shadow:0 0 0 7px #fff; }
.bbr .bbr-button { display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:.65rem 1.4rem;border-radius:2rem;background:#111;color:#fff;font:inherit;text-align:center;text-decoration:none;line-height:1.4; }
.bbr .bbr-button:hover { text-decoration:underline;text-underline-offset:.2em; }
.bbr .bbr-actions { display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem; }
.bbr-cards { background:#fff url('../images/mountains-bottom.webp') bottom center/100% auto no-repeat; }
.bbr .bbr-card-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(1rem,2cqw,2rem);align-items:stretch; }
.bbr .bbr-card { display:flex;min-width:0;flex-direction:column;gap:1rem;align-items:center; }
.bbr .bbr-card-body { flex:1;display:flex;flex-direction:column;gap:1.25rem;align-items:stretch;width:100%;padding:1.5rem 1rem;background:linear-gradient(#080808,#343434);color:white;border-radius:0 1rem 0 0; }
.bbr .bbr-card h3 { text-align:center;font-size:clamp(1rem,1.25cqw,1.4rem);overflow-wrap:anywhere; }
.bbr .bbr-card img { width:100%;aspect-ratio:1;object-fit:cover; }
.bbr .bbr-card p { line-height:1.5;overflow-wrap:anywhere; }
.bbr:is(.bbr-variant-3,.bbr-variant-4,.bbr-variant-5) .bbr-card-grid { grid-template-columns:1fr 1.6fr 1.2fr; }
.bbr:is(.bbr-variant-3,.bbr-variant-4,.bbr-variant-5) .bbr-card:first-child { grid-row:span 2; }
.bbr:is(.bbr-variant-3,.bbr-variant-4,.bbr-variant-5) .bbr-card-body { padding:2rem;min-height:200px; }
.bbr:is(.bbr-variant-4,.bbr-variant-5) .bbr-card:first-child img { flex:1;aspect-ratio:1/1.8; }
.bbr.bbr-variant-5 .bbr-card:not(:first-child) img { aspect-ratio:2.2; }
.bbr.bbr-variant-9 { background-image:url('../images/mountains-soft.webp'); }
.bbr.bbr-variant-9 .bbr-card-body { background:transparent;color:#111;padding:0; }
.bbr.bbr-variant-9 .bbr-card h3 { order:2; }
.bbr.bbr-variant-9 .bbr-card p { order:3; }
.bbr-hero { position:relative;min-height:clamp(28rem,70vh,55rem);display:flex;flex-direction:column;justify-content:space-between;padding:clamp(2rem,7vw,7rem);gap:4rem;background:#b9d4e2;isolation:isolate; }
.bbr-hero .bbr-hero-image { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1; }
.bbr-hero .bbr-hero-copy { max-width:52rem;padding:1.5rem;background:#ffffffef; }
.bbr-hero :where(h1,h2) { font-size:clamp(2rem,5cqw,4.5rem);margin:0 0 1rem; }
.bbr-hero p { font-size:1.15rem; }
.bbr-hero .bbr-hero-actions { display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem; }
.bbr .bbr-source-note { margin:.5rem 0 2rem;color:#454545;font-size:.95rem; }
.bbr .bbr-pistes-layout { display:flex;gap:2rem;align-items:flex-start; }
.bbr .bbr-pistes-photo { flex:0 1 28%; }
.bbr .bbr-pistes-photo img { width:100%;min-height:25rem;object-fit:cover; }
.bbr .bbr-status-groups { flex:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem; }
.bbr .bbr-status-groups>section:last-child { grid-column:1/-1; }
.bbr .bbr-status-groups ul { list-style:none;margin-top:1rem; }
.bbr .bbr-status-groups li { display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-top:1px solid #ccc; }
.bbr .bbr-status { display:inline-block;flex-shrink:0;font-size:.8rem;border:1px solid;padding:.2rem .5rem;border-radius:1rem; }
.bbr .bbr-status--open { color:#14532d;background:#edf8ef; }
.bbr .bbr-status--closed { color:#881b1b;background:#fff0f0; }
.bbr .bbr-status--unknown { color:#5c4100;background:#fff5db; }
.bbr .bbr-count { margin-top:.5rem; }
.bbr .bbr-gallery-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem; }
.bbr .bbr-gallery-grid img { width:100%;aspect-ratio:1.04;object-fit:cover; }
.bbr .bbr-gallery-grid :where(h3,h4) { margin-top:1rem;text-align:center; }
.bbr .bbr-gallery-grid p { margin-top:1rem; }
.bbr .bbr-text-link { display:inline-flex;min-height:44px;align-items:center;text-underline-offset:.2em; }
.bbr .bbr-group-title { margin:2rem 0 1rem; }
.bbw-native--newsletter.bbr-newsletter-only { padding:1rem; }
.bbr-newsletter-only .bobbio-newsletter-card-body { border-radius:0!important;background:transparent!important; }
.bbr-newsletter-only .form-control { border-radius:0;border:0;border-bottom:1px solid #444; }
.bbr-newsletter-only .bobbio-submit { border-radius:2rem; }
.bbr-newsletter-photo { display:block;width:100%;height:auto;max-height:50rem;object-fit:cover; }
@container(max-width:1100px) {
 .bbr .bbr-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .bbr .bbr-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .bbr .bbr-pistes-layout { display:block; }
 .bbr .bbr-pistes-photo img { height:20rem;min-height:0;margin-bottom:2rem; }
}
@container(max-width:650px) {
 .bbr .bbr-card-grid,.bbr:is(.bbr-variant-3,.bbr-variant-4,.bbr-variant-5) .bbr-card-grid,.bbr .bbr-status-groups,.bbr .bbr-gallery-grid { grid-template-columns:minmax(0,1fr); }
 .bbr .bbr-card:first-child { grid-row:auto; }
 .bbr .bbr-card-body { max-width:28rem; }
 .bbr .bbr-status-groups li { flex-wrap:wrap;gap:.4rem; }
}
@media(prefers-reduced-motion:reduce) { .bbr * { animation:none!important;transition:none!important;scroll-behavior:auto!important; } }
/* Campo riconoscibile anche quando il CSS nativo del modulo non è caricato. */
.bbw-native--newsletter .form-control { border-radius:0;border:0;border-bottom:1px solid #444;background:#fff;color:#111;box-shadow:none; }
.bbw-native--newsletter input[type="checkbox"] { border:1px solid #555;width:1.1rem;height:1.1rem;accent-color:#111; }
