/* ============================================================
   BRIGITTE — foglio di stile per il campo "custom_css"
   Admin → Eventi → Brigitte → 1. Dati evento → Foglio di stile

   Viene incluso SOLO su questa pagina, dopo il CSS globale del
   sito. Per non rischiare di modificare l'aspetto di header,
   footer e barra sticky (che restano sulla stessa pagina ma non
   sono scritti qui), ogni regola è tenuta dentro lo scope
   ".br-canvas" — lo stesso wrapper che racchiude tutto il
   contenuto in custom_html.html. Non ci sono selettori "nudi"
   come body, *, h1, a, img: sono tutti preceduti da .br-canvas.

   NOTA TECNICA 1: tutte le dimensioni sono in px (non rem/em),
   immuni dalla dimensione base della pagina ospitante.

   NOTA TECNICA 2: i font-size (e la dimensione della locandina)
   hanno "!important". Se il tema di Thetips definisce le sue
   regole con una priorità più alta delle mie (stessa cosa non
   risolvibile scrivendo "dopo" nel foglio di stile), !important
   forza comunque il valore corretto. Se anche con !important il
   testo resta piccolo, il problema non è più il CSS: molto
   probabilmente il div ".br-canvas" che avvolge tutto il
   contenuto è stato tagliato/alterato in fase di incolla — in tal
   caso va controllato che custom_html.html inizi esattamente con
   <div class="br-canvas"> e finisca con il suo </div> di chiusura.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap');



.br-canvas{
  --bg:#EFEBE3;
  --bg-deep:#E3DDCB;
  --ink:#27434B;
  --ink-soft:rgba(39,67,75,.72);
  --line:rgba(39,67,75,.16);
  --line-on-dark:rgba(239,235,227,.2);
  --font:'Avant Garde Gothic','Montserrat',sans-serif;
  --wrap:1120px;
}

.br-canvas{background:var(--bg);color:var(--ink);font-family:var(--font);font-weight:400;font-size:17px!important;line-height:1.6;-webkit-font-smoothing:antialiased}
.br-canvas *{box-sizing:border-box}
.br-canvas img{display:block;max-width:100%}
.br-canvas a{color:inherit}
.br-canvas .wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}

.br-canvas h1,.br-canvas h2,.br-canvas h3{font-family:var(--font);font-weight:700;text-transform:uppercase;letter-spacing:.13em;line-height:1.25;margin:0 0 18px;color:var(--ink)}
.br-canvas h2{font-size:clamp(30px,4.4vw,44px)!important}
.br-canvas h3{font-size:18px!important}
.br-canvas .eyebrow{display:inline-block;font-size:15px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px}
.br-canvas p{max-width:60ch;color:var(--ink-soft);letter-spacing:normal;line-height:1.6;font-size:17px!important}
.br-canvas .lede{font-weight:400;font-size:clamp(26px,3.6vw,38px)!important;color:var(--ink);line-height:1.4;letter-spacing:normal;text-transform:none;max-width:38ch}

.br-canvas .hero-word{text-align:center;padding:56px 32px 6px}
.br-canvas .hero-word img{max-width:340px;width:100%;margin:0 auto;display:block;mix-blend-mode:multiply}

.br-canvas .hero-photo{position:relative;max-width:var(--wrap);width:calc(100% - 64px);margin:0 auto;aspect-ratio:16/9;overflow:hidden}
.br-canvas .hero-photo img{width:100%!important;height:100%!important;object-fit:cover;display:block;max-width:none!important}
.br-canvas .hero-photo-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;padding:44px 24px;background:linear-gradient(0deg,rgba(39,67,75,.78) 0%,rgba(39,67,75,.08) 60%,rgba(39,67,75,0) 100%)}
.br-canvas .hp-date{color:var(--bg);font-size:14px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.br-canvas .hp-title{color:var(--bg)!important;font-size:clamp(30px,6vw,42px)!important;margin-bottom:8px}
.br-canvas .hp-sub{color:rgba(239,235,227,.92)!important;font-size:15px!important;letter-spacing:.1em;text-transform:uppercase;margin:0;max-width:none}
.br-canvas .hero-cta{text-align:center;padding:34px 32px 6px}
.br-canvas .hero-cta p{margin:16px auto 0;font-size:18px!important;max-width:none;line-height:1.6}
.br-canvas .hero-cta p a{color:var(--ink);font-weight:700;text-decoration:underline}
.br-canvas .hero-cta p a:hover{text-decoration:none}

.br-canvas .btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font);font-size:16px!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;padding:20px 44px;cursor:pointer;border:1px solid var(--ink);border-radius:2px;background:transparent;color:var(--ink);transition:background .3s ease,color .3s ease}
.br-canvas .btn:hover{background:var(--ink);color:var(--bg)}
.br-canvas .btn-line{border-color:rgba(239,235,227,.7);color:#fff;background:transparent}
.br-canvas .btn-line:hover{background:#fff;color:var(--ink)}

.br-canvas section{padding:90px 0}
.br-canvas section.dark{background:var(--ink);color:var(--bg)}
.br-canvas section.dark p{color:rgba(239,235,227,.75)}
.br-canvas section.dark h2,.br-canvas section.dark h3{color:var(--bg)}
.br-canvas section.dark .eyebrow{color:rgba(239,235,227,.85)}
.br-canvas section.tint{background:var(--bg-deep)}
.br-canvas .head{max-width:640px;margin-bottom:50px}

.br-canvas .manifesto{text-align:center;padding:80px 0}
.br-canvas .manifesto .lede{margin:0 auto}

.br-canvas .split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.br-canvas .split img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
@media (max-width:860px){.br-canvas .split{grid-template-columns:1fr}.br-canvas .split img{aspect-ratio:16/10}}

.br-canvas .row-list{margin-top:6px}
.br-canvas .row-item{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:34px 0;border-top:1px solid var(--line);align-items:center}
.br-canvas .row-item:last-child{border-bottom:1px solid var(--line)}
.br-canvas section.dark .row-item{border-color:var(--line-on-dark)}
.br-canvas .row-item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.br-canvas .row-item h3{margin-bottom:10px;text-transform:none;letter-spacing:.01em;font-size:24px!important}
.br-canvas .row-item p{margin-bottom:0;font-size:18px!important}
.br-canvas .row-item .r-tag{display:block;font-size:14px!important;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--ink-soft);margin-bottom:10px}
@media (max-width:620px){.br-canvas .row-item{grid-template-columns:1fr}}

.br-canvas .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:44px;background:var(--line-on-dark)}
.br-canvas .step{background:var(--ink);padding:36px 34px}
.br-canvas .step .s-num{font-family:var(--font);font-weight:700;font-size:32px!important;color:rgba(239,235,227,.55);display:block;margin-bottom:16px}
.br-canvas .step h3{color:var(--bg);font-size:20px!important;margin-bottom:10px;text-transform:none;letter-spacing:.01em}
.br-canvas .step p{font-size:17px!important;margin-bottom:0}
@media (max-width:760px){.br-canvas .steps{grid-template-columns:1fr}}

.br-canvas .gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:40px}
.br-canvas .gallery-grid img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;transition:opacity .3s ease}
.br-canvas .gallery-grid img:hover{opacity:.85}
@media (max-width:760px){.br-canvas .gallery-grid{grid-template-columns:repeat(2,1fr)}}

.br-canvas .stat-strip{display:flex;flex-wrap:wrap;border-top:1px solid var(--line-on-dark);border-bottom:1px solid var(--line-on-dark);margin-top:44px}
.br-canvas .stat-item{flex:1;min-width:160px;text-align:center;padding:28px 20px;border-left:1px solid var(--line-on-dark)}
.br-canvas .stat-item:first-child{border-left:none}
.br-canvas .stat-item b{display:block;font-family:var(--font);font-weight:700;font-size:40px!important;color:var(--bg)}
.br-canvas .stat-item span{font-size:13px!important;letter-spacing:.08em;text-transform:uppercase;color:rgba(239,235,227,.7)}
@media (max-width:700px){.br-canvas .stat-item{min-width:50%;border-left:none;border-top:1px solid var(--line-on-dark)}}

.br-canvas .brand-section{background:var(--bg-deep)}
.br-canvas .brand-section .stat-strip{border-color:var(--line)}
.br-canvas .brand-section .stat-item{border-color:var(--line)}
.br-canvas .brand-section .stat-item b{color:var(--ink)}
.br-canvas .brand-section .stat-item span{color:var(--ink-soft)}

.br-canvas .sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:999;display:flex;gap:10px;background:var(--ink);padding:12px 16px;box-shadow:0 -8px 24px rgba(0,0,0,.22)}
.br-canvas .sticky-btn{flex:1;text-align:center;padding:15px 10px;border-radius:2px;font-family:var(--font);font-size:13px!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;line-height:1.2;transition:opacity .3s ease}
.br-canvas .sticky-btn-accredit{background:var(--bg);color:var(--ink)}
.br-canvas .sticky-btn-invite{background:transparent;color:var(--bg);border:1px solid var(--line-on-dark)}
.br-canvas .sticky-btn:hover{opacity:.85}

@media (max-width:600px){
  .br-canvas{font-size:18px!important}
  .br-canvas h2{font-size:clamp(30px,7vw,38px)!important}
  .br-canvas .lede{font-size:clamp(26px,7vw,32px)!important;max-width:none}
  .br-canvas .row-item h3{font-size:26px!important}
  .br-canvas .row-item p{font-size:19px!important}
  .br-canvas .step h3{font-size:21px!important}
  .br-canvas .step p{font-size:18px!important}
  .br-canvas .stat-item b{font-size:36px!important}
  .br-canvas .hero-word img{max-width:260px}
  .br-canvas .hero-photo{width:calc(100% - 32px);aspect-ratio:4/5}
  .br-canvas .hp-title{font-size:clamp(28px,9vw,36px)!important}
}

/* contatto sotto il pulsante (PR di fiducia / WhatsApp) */
.br-canvas .hero-cta .cta-contact{margin:18px auto 0;font-size:19px!important;line-height:1.55;color:var(--ink)}
.br-canvas .hero-cta .cta-contact a{font-size:24px;letter-spacing:.03em}

/* le formule */
.br-canvas .offer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.br-canvas .offer-card{background:var(--bg);border:1px solid var(--line);padding:34px 28px;text-align:center}
.br-canvas .offer-card-hl{background:var(--ink);border-color:var(--ink)}
.br-canvas .offer-card .o-tag{display:block;font-size:14px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px}
.br-canvas .offer-card .o-price{display:block;font-family:var(--font);font-weight:700;font-size:56px!important;line-height:1;color:var(--ink);margin-bottom:14px}
.br-canvas .offer-card .o-line{font-size:18px!important;margin:0 auto;max-width:26ch}
.br-canvas .offer-card-hl .o-tag{color:rgba(239,235,227,.8)}
.br-canvas .offer-card-hl .o-price{color:var(--bg)}
.br-canvas .offer-card-hl .o-line{color:rgba(239,235,227,.88)}
.br-canvas .offer-note{text-align:center;margin:30px auto 0;max-width:54ch;font-size:18px!important}
.br-canvas .offer-card .o-price-text{font-size:36px!important;line-height:1.1;padding:10px 0 12px}
@media (max-width:1000px){.br-canvas .offer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.br-canvas .offer-grid{grid-template-columns:1fr}}

/* il menu (immagini ufficiali, due cornici identiche) */
.br-canvas .menu-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:940px;margin:0 auto}
.br-canvas .menu-img{display:block;text-decoration:none;color:var(--ink)}
.br-canvas .menu-frame{aspect-ratio:5/7;overflow:hidden;background:#FBF8F0;border:1px solid var(--line);box-shadow:0 18px 40px rgba(39,67,75,.12);transition:transform .35s ease,box-shadow .35s ease}
.br-canvas .menu-frame img{width:100%;height:100%;object-fit:cover;object-position:center}
.br-canvas .menu-img:hover .menu-frame{transform:translateY(-4px);box-shadow:0 26px 50px rgba(39,67,75,.18)}
.br-canvas .menu-cap{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-top:18px;font-size:16px!important;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.br-canvas .menu-cap b{font-size:30px!important;letter-spacing:.02em;color:#8C2230}
.br-canvas .menu-hint{text-align:center;margin:26px auto 0;font-size:17px!important;font-style:italic;max-width:none}
@media (max-width:760px){.br-canvas .menu-pair{grid-template-columns:1fr;max-width:460px}}
@media (max-width:600px){
  .br-canvas .hero-cta .cta-contact{font-size:20px!important}
  .br-canvas .hero-cta .cta-contact a{font-size:26px}
  .br-canvas .offer-card .o-line{font-size:19px!important}
  .br-canvas .offer-note{font-size:19px!important}
  .br-canvas .menu-cap{font-size:17px!important}
  .br-canvas .menu-hint{font-size:18px!important}
}
