/* =========================================================
   ATHENA LANDING - THEMEABLE CSS
   Cambi SOLO i token in :root per provare altre combinazioni
   ========================================================= */

/* =========================
   1) TOKENS
   ========================= */

:root{
  /* Brand palette (fissi, se vuoi) */
  --brand-black:#0b0b0b;
  --brand-yellow:#ffe210;
  --brand-marigold:#a98300;
  --brand-teal:#157a7a;
  --brand-blue:#103a56;
  --brand-link:#3e60c1;

  /* Core text */
  --tc-bg:#ffffff;
  --tc-text:#0f2230;
  --tc-text-on-dark:#ffffff;
  --tc-muted:#566b78;

  /* Semantic colors */
  --tc-primary: var(--brand-blue);
  --tc-secondary: var(--brand-teal);
  --tc-accent: var(--brand-yellow);
  --tc-warm: var(--brand-marigold);
  --tc-link: var(--brand-link);

  /* Alias utili */
  --tc-yellow: var(--tc-accent);

  /* Borders + shadows */
  --tc-border-color: rgba(16,58,86,0.12);
  --tc-border-color-on-dark: rgba(255,255,255,0.16);

  --tc-shadow-card: 0 16px 40px rgba(16,58,86,0.08);
  --tc-shadow-card-soft: 0 10px 30px rgba(0,0,0,0.06);
  --tc-shadow-card-soft-2: 0 10px 28px rgba(0,0,0,0.06);
  --tc-shadow-cta: 0 10px 26px rgba(0,0,0,0.28);
  --tc-shadow-cta-hover: 0 16px 38px rgba(0,0,0,0.36);

  /* Radius */
  --tc-radius-sm: 12px;
  --tc-radius-md: 16px;
  --tc-radius-lg: 18px;
  --tc-radius-pill: 999px;

  /* Page paddings / anchors */
  --tc-page-bottom-pad: 160px;
  --tc-anchor-offset: 90px;

  /* Neutral backgrounds */
  --tc-bg-white: #ffffff;
  --tc-bg-light: #f6f7f8;
  --tc-bg-cool:  #f2f5f7;
  --tc-bg-warm:  #faf8f2;

  /* Section gradients (puliti) */
  --tc-section-bg-default: var(--tc-bg-white);
  --tc-section-bg-soft: linear-gradient(180deg, #ffffff 0%, #faf8f2 100%);
  --tc-section-bg-cool: linear-gradient(180deg, #f6f7f8 0%, #f2f5f7 100%);

  /* Body background (se vuoi proprio neutro, metti solo var(--tc-bg)) */
  --tc-body-bg:
    radial-gradient(circle at 10% 15%, rgba(21,122,122,0.04) 0%, rgba(21,122,122,0) 55%),
    radial-gradient(circle at 85% 10%, rgba(62,96,193,0.05) 0%, rgba(62,96,193,0) 60%),
    radial-gradient(circle at 50% 90%, rgba(255,226,16,0.06) 0%, rgba(255,226,16,0) 55%),
    var(--tc-bg);

  /* Topbar */
  --tc-topbar-bg: linear-gradient(90deg, rgba(16,58,86,0.98), rgba(21,122,122,0.98));
  --tc-topbar-border: 1px solid rgba(255,255,255,0.18);
  --tc-topbar-claim-color: rgba(255,255,255,0.90);

  /* Hero */
  --tc-hero-bg:
    radial-gradient(circle at 20% 20%, rgba(255,226,16,0.14) 0%, rgba(255,226,16,0) 55%),
    radial-gradient(circle at 85% 15%, rgba(21,122,122,0.12) 0%, rgba(21,122,122,0) 55%),
    radial-gradient(circle at 70% 85%, rgba(169,131,0,0.10) 0%, rgba(169,131,0,0) 55%),
    linear-gradient(180deg, rgba(16,58,86,0.96) 0%, rgba(11,11,11,0.88) 55%, rgba(11,11,11,0.86) 100%);

  --tc-hero-overlay-bg: radial-gradient(circle at 40% 40%, rgba(0,0,0,0.10), rgba(0,0,0,0.36));
  --tc-hero-muted: rgba(255,255,255,0.82);

  /* Badge */
  --tc-badge-bg: rgba(255,226,16,0.18);
  --tc-badge-border: rgba(255,226,16,0.45);
  --tc-badge-color: var(--tc-accent);
  --tc-badge-font-size: .9rem;

  /* Cards */
  --tc-card-bg: #ffffff;
  --tc-card-border: 1px solid var(--tc-border-color);
  --tc-card-radius: var(--tc-radius-md);

  --tc-card-dark-bg: linear-gradient(180deg, rgba(16,58,86,0.92), rgba(11,11,11,0.92));
  --tc-card-dark-border: 1px solid rgba(255,255,255,0.14);
  --tc-card-dark-radius: var(--tc-radius-lg);
  --tc-card-dark-shadow: 0 22px 54px rgba(0,0,0,0.22);

  /* Plan boxes */
  --tc-plan-bg: rgba(255,255,255,0.06);
  --tc-plan-border: 1px solid rgba(255,255,255,0.16);

  --tc-plan-rec-border: 2px solid rgba(255,226,16,0.70);
  --tc-plan-rec-bg: linear-gradient(180deg, rgba(255,226,16,0.10), rgba(21,122,122,0.06));

  /* Buttons common */
  --tc-btn-radius: var(--tc-radius-pill);
  --tc-btn-font-weight: 900;

  /* Yellow CTA */
  --tc-btn-yellow-bg: var(--tc-yellow);
  --tc-btn-yellow-border: var(--tc-yellow);
  --tc-btn-yellow-text: #000;
  --tc-btn-yellow-hover-bg: #ffd600;
  --tc-btn-yellow-hover-border: #ffd600;

  /* Secondary CTA (hero) */
  --tc-btn-secondary-bg: rgba(21,122,122,0.92);
  --tc-btn-secondary-border: rgba(255,255,255,0.18);
  --tc-btn-secondary-text: #fff;
  --tc-btn-secondary-hover-brightness: 1.08;

  /* Outline CTA (hero) */
  --tc-btn-outline-border: rgba(255,255,255,0.70);
  --tc-btn-outline-text: #fff;
  --tc-btn-outline-hover-border: var(--tc-accent);
  --tc-btn-outline-hover-text: var(--tc-accent);

  /* Focus ring */
  --tc-focus-ring: 0 0 0 4px rgba(255,226,16,0.35);
  --tc-focus-ring-plus: 0 0 0 4px rgba(255,226,16,0.35), var(--tc-shadow-cta-hover);

  /* Feature icon */
  --tc-icon-bg: linear-gradient(180deg, rgba(255,226,16,0.45), rgba(255,226,16,0.12));
  --tc-icon-border: 1px solid rgba(255,226,16,0.55);
  --tc-icon-color: #000;
  --tc-icon-size: 46px;
  --tc-icon-radius: 14px;

  /* Pills */
  --tc-pill-bg: #fff;
  --tc-pill-border: 1px solid rgba(16,58,86,0.14);
  --tc-pill-text: #111;
  --tc-pill-dot: var(--tc-secondary);
  --tc-pill-dot-ring: 0 0 0 4px rgba(21,122,122,0.18);
  --tc-pill-small: #566b78;
  --tc-pill-hover-shadow: 0 18px 30px rgba(16,58,86,0.12);

  /* Chips (hero) */
  --tc-chip-bg: rgba(255,226,16,0.14);
  --tc-chip-border: 1px solid rgba(255,226,16,0.55);
  --tc-chip-text: rgba(255,255,255,0.92);

  /* Cast sizing */
  --cast-min-height-desktop: 620px;
  --cast-min-height-desktop-lg: 720px;
  --cast-strip-min-height-mobile: 310px;

  /* Cast overlay strengths */
  --cast-overlay-left: 0.55;
  --cast-overlay-mid: 0.22;
  --cast-overlay-right: 0.35;
  --cast-overlay-top: 0.25;
  --cast-overlay-bottom: 0.35;

  --cast-tint-bg: linear-gradient(90deg, rgba(16,58,86,0.18), rgba(21,122,122,0.16), rgba(169,131,0,0.10));
  --cast-tint-opacity: 0.85;

  --cast-box-bg: rgba(8,10,12,0.48);
  --cast-box-border: 1px solid rgba(255,255,255,0.18);
  --cast-box-blur: 6px;

  /* Stickybar */
  --tc-sticky-bg: linear-gradient(90deg, rgba(16,58,86,0.96), rgba(21,122,122,0.96));
  --tc-sticky-border: 1px solid rgba(255,255,255,0.16);
  --tc-sticky-title: #fff;
  --tc-sticky-sub: rgba(255,255,255,0.84);

  /* Motion */
  --tc-trans-fast: .16s ease;
  --tc-trans-med: .18s ease;

  /* Typography tweaks */
  --tc-title-letter-spacing: -0.02em;
}

/* =========================
   2) OPTIONAL PRESETS
   Attiva commentando/scommentando (o carica un file preset dopo)
   ========================= */

/* Preset: Teal Focus */
/*
:root{
  --tc-primary: var(--brand-teal);
  --tc-secondary: var(--brand-blue);
  --tc-btn-secondary-bg: rgba(16,58,86,0.92);
  --tc-topbar-bg: linear-gradient(90deg, rgba(21,122,122,0.98), rgba(16,58,86,0.98));
  --tc-sticky-bg: linear-gradient(90deg, rgba(21,122,122,0.96), rgba(16,58,86,0.96));
}
*/

/* Preset: Warm / Marigold */
/*
:root{
  --tc-secondary: var(--brand-marigold);
  --tc-warm: var(--brand-marigold);
  --tc-section-bg-soft: linear-gradient(180deg, #ffffff 0%, #fbf6e8 100%);
  --tc-pill-dot: var(--brand-marigold);
  --tc-pill-dot-ring: 0 0 0 4px rgba(169,131,0,0.18);
}
*/

/* =========================
   3) STRUCTURE (usa solo token)
   ========================= */

body{
  background: var(--tc-body-bg);
  color: var(--tc-text);
}

.tc-page-pad-bottom {
  padding-bottom: calc(
    (var(--tc-page-bottom-pad) * 0.75) + env(safe-area-inset-bottom)
  );
}

.tc-anchor{
  scroll-margin-top: var(--tc-anchor-offset);
}

.tc-link{
  color: var(--tc-link);
  font-weight: 900;
}

/* Topbar */
.tc-topbar{
  background: var(--tc-topbar-bg);
  color: var(--tc-text-on-dark);
  border-bottom: var(--tc-topbar-border);
}
.tc-topbar a{
  color: var(--tc-accent);
  font-weight: 800;
  text-decoration: none !important;
}
.tc-topbar-claim{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 800;
  color: var(--tc-topbar-claim-color);
}

/* Hero */
.tc-hero{
  position: relative;
  color: var(--tc-text-on-dark);
  background: var(--tc-hero-bg);
  overflow: hidden;
}
.tc-hero:before{
	content:"";
  position:absolute;
  inset:0;
  background: var(--tc-hero-overlay-bg);
  pointer-events:none;
  z-index:0;
}
.tc-hero .container,
.tc-hero .row{
  position: relative;
  z-index: 1;
}
.tc-title{
  letter-spacing: var(--tc-title-letter-spacing);
}
.tc-muted{
  color: var(--tc-hero-muted);
}

/* CAST CTA behavior: identico all'hero (stesso contrasto e stessa resa) */
.tc-cast .tc-btn-yellow,
.tc-cast .tc-btn-secondary,
.tc-cast .tc-btn-outline,
.tc-cast .tc-btn-blue{
  box-shadow: var(--tc-shadow-cta);
  transition: transform var(--tc-trans-fast), box-shadow var(--tc-trans-fast), filter var(--tc-trans-fast);
}

/* Yellow in cast: forzato come in hero */
.tc-cast .tc-btn-yellow{
  background: var(--tc-btn-yellow-bg) !important;
  border-color: var(--tc-btn-yellow-border) !important;
  color: var(--tc-btn-yellow-text) !important;
  -webkit-text-fill-color: var(--tc-btn-yellow-text) !important;
}
.tc-cast .tc-btn-yellow:hover{
  transform: translateY(-2px);
  box-shadow: var(--tc-shadow-cta-hover);
  filter: brightness(1.03);
}

/* Secondary in cast: forzato come in hero */
.tc-cast .tc-btn-secondary{
  background: var(--tc-btn-secondary-bg) !important;
  border: 1px solid var(--tc-btn-secondary-border) !important;
  color: var(--tc-btn-secondary-text) !important;
  -webkit-text-fill-color: var(--tc-btn-secondary-text) !important;
}
.tc-cast .tc-btn-secondary:hover{
  transform: translateY(-2px);
  box-shadow: var(--tc-shadow-cta-hover);
  filter: brightness(var(--tc-btn-secondary-hover-brightness));
}

/* Focus */
.tc-cast .tc-btn-yellow:focus,
.tc-cast .tc-btn-secondary:focus,
.tc-cast .tc-btn-outline:focus,
.tc-cast .tc-btn-blue:focus{
  outline: none;
  box-shadow: var(--tc-focus-ring-plus);
}


/* Badge */
.tc-badge{
  display:inline-block;
  padding:.35rem .7rem;
  border-radius: var(--tc-radius-pill);
  font-weight:800;
  background: var(--tc-badge-bg);
  border: 1px solid var(--tc-badge-border);
  color: var(--tc-badge-color);
  font-size: var(--tc-badge-font-size);
}

/* Cards */
.tc-card{
  border: var(--tc-card-border);
  border-radius: var(--tc-card-radius);
  box-shadow: var(--tc-shadow-card);
  background: var(--tc-card-bg);
}

.tc-card-dark{
  background: var(--tc-card-dark-bg);
  border: var(--tc-card-dark-border);
  border-radius: var(--tc-card-dark-radius);
  box-shadow: var(--tc-card-dark-shadow);
}

/* Plans */
.tc-plan{
  border-radius: var(--tc-radius-lg);
  border: var(--tc-plan-border);
  background: var(--tc-plan-bg);
}
.tc-plan.recommended{
  border: var(--tc-plan-rec-border);
  background: var(--tc-plan-rec-bg);
}
.tc-plan .tc-price{
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.1;
}

/* Buttons (base) */
.tc-btn-yellow,
.tc-btn-blue,
.tc-btn-secondary,
.tc-btn-outline{
  border-radius: var(--tc-btn-radius);
  font-weight: var(--tc-btn-font-weight);
}

/* Yellow */
.tc-btn-yellow{
  background: var(--tc-btn-yellow-bg);
  border-color: var(--tc-btn-yellow-border);
  color: var(--tc-btn-yellow-text);
}
.tc-btn-yellow:hover{
  background: var(--tc-btn-yellow-hover-bg);
  border-color: var(--tc-btn-yellow-hover-border);
  color: var(--tc-btn-yellow-text);
}

/* Blue */
.tc-btn-blue{
  background: var(--tc-primary);
  border-color: var(--tc-primary);
  color: #fff;
}
.tc-btn-blue:hover{
  filter: brightness(1.08);
  color:#fff;
}

/* Hero CTA behavior (shadow + motion) */
.tc-hero .tc-btn-yellow,
.tc-hero .tc-btn-secondary,
.tc-hero .tc-btn-outline{
  box-shadow: var(--tc-shadow-cta);
  transition: transform var(--tc-trans-fast), box-shadow var(--tc-trans-fast), filter var(--tc-trans-fast);
}
.tc-hero .tc-btn-yellow{
  background: var(--tc-btn-yellow-bg) !important;
  border-color: var(--tc-btn-yellow-border) !important;
  color: var(--tc-btn-yellow-text) !important;
  -webkit-text-fill-color: var(--tc-btn-yellow-text) !important;
}
.tc-hero .tc-btn-yellow:hover{
  transform: translateY(-2px);
  box-shadow: var(--tc-shadow-cta-hover);
  filter: brightness(1.03);
}
.tc-hero .tc-btn-secondary{
  background: var(--tc-btn-secondary-bg) !important;
  border: 1px solid var(--tc-btn-secondary-border) !important;
  color: var(--tc-btn-secondary-text) !important;
  -webkit-text-fill-color: var(--tc-btn-secondary-text) !important;
}
.tc-hero .tc-btn-secondary:hover{
  transform: translateY(-2px);
  box-shadow: var(--tc-shadow-cta-hover);
  filter: brightness(var(--tc-btn-secondary-hover-brightness));
}
.tc-hero .tc-btn-outline{
  border: 2px solid var(--tc-btn-outline-border);
  color: var(--tc-btn-outline-text);
  background: transparent;
}
.tc-hero .tc-btn-outline:hover{
  border-color: var(--tc-btn-outline-hover-border);
  color: var(--tc-btn-outline-hover-text);
}

/* Focus */
.tc-hero .tc-btn-yellow:focus,
.tc-hero .tc-btn-secondary:focus,
.tc-hero .tc-btn-outline:focus{
  outline: none;
  box-shadow: var(--tc-focus-ring-plus);
}

/* Sections */
.tc-section{
  padding: 4rem 0;
  background: var(--tc-section-bg-default);
}
.tc-section.bg-soft{
  background: var(--tc-section-bg-soft);
}
.tc-section.bg-blue-soft{
  background: var(--tc-section-bg-cool);
}
.tc-section .tc-lead{
  font-size: 1.1rem;
  color: #163042;
}

/* Feature icon + cards */
.tc-icon{
  width: var(--tc-icon-size);
  height: var(--tc-icon-size);
  border-radius: var(--tc-icon-radius);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  background: var(--tc-icon-bg);
  border: var(--tc-icon-border);
  color: var(--tc-icon-color);
}
.tc-feature-card{
  border-radius: var(--tc-radius-md);
  border: 1px solid var(--tc-border-color);
  background: #ffffff;
  box-shadow: var(--tc-shadow-card-soft);
  padding: 1.25rem;
  height: 100%;
}
.tc-proof{
  background: #ffffff;
  box-shadow: var(--tc-shadow-card-soft-2);
  border: 1px solid var(--tc-border-color);
  border-radius: var(--tc-radius-md);
  padding: 1.25rem;
  height: 100%;
}

/* Pills */
.tc-pill-link{
  display:block;
  padding: .95rem 1rem .95rem 2.2rem;
  border-radius: var(--tc-radius-pill);
  border: var(--tc-pill-border);
  background: var(--tc-pill-bg);
  color: var(--tc-pill-text);
  font-weight: 900;
  text-decoration: none !important;
  transition: transform .12s ease, box-shadow .12s ease;
  position: relative;
}
.tc-pill-link:before{
  content:"";
  position:absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: var(--tc-radius-pill);
  background: var(--tc-pill-dot);
  box-shadow: var(--tc-pill-dot-ring);
}
.tc-pill-link:hover{
  transform: translateY(-1px);
  box-shadow: var(--tc-pill-hover-shadow);
}
.tc-pill-link small{
  display:block;
  font-weight: 700;
  color: var(--tc-pill-small);
}

/* Chips */
.tc-logo-chip{
  border: var(--tc-chip-border);
  background: var(--tc-chip-bg);
  color: var(--tc-chip-text);
  border-radius: var(--tc-radius-sm);
  padding: .5rem .75rem;
  font-weight: 900;
  font-size: .95rem;
  display:inline-block;
}

/* Cast */
.tc-cast{
  position: relative;
  color: var(--tc-text-on-dark);
  overflow: hidden;
  background-size: cover;
  background-position: center 30%;
  background-repeat: no-repeat;
  min-height: var(--cast-min-height-desktop);
  display: flex;
  align-items: center;
  padding: 4rem 0;
  background-color: var(--tc-primary);
}
@media (min-width: 1200px){
  .tc-cast{
    min-height: var(--cast-min-height-desktop-lg);
    background-position: center 25%;
  }
}
.tc-cast-overlay{
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,var(--cast-overlay-left)) 0%,
      rgba(0,0,0,var(--cast-overlay-mid)) 55%,
      rgba(0,0,0,var(--cast-overlay-right)) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,var(--cast-overlay-top)),
      rgba(0,0,0,var(--cast-overlay-bottom))
    );
}
.tc-cast-tint{
  position: absolute;
  inset: 0;
  background: var(--cast-tint-bg);
  mix-blend-mode: multiply;
  opacity: var(--cast-tint-opacity);
}
.tc-cast .container{
  position: relative;
  z-index: 2;
}
.tc-cast-box{
  border-radius: var(--tc-radius-lg);
  border: var(--cast-box-border);
  background: var(--cast-box-bg);
  backdrop-filter: blur(var(--cast-box-blur));
  padding: 1.8rem;
  max-width: 580px;
}

/* Mobile strips */
.tc-cast-mobile{ display:none; }
.tc-cast-strip{
  border-radius: var(--tc-radius-md);
  overflow:hidden;
  border: 1px solid rgba(255,255,255,0.18);
  position: relative;
  min-height: var(--cast-strip-min-height-mobile);
}
.tc-cast-strip .tc-cast-strip-bg{
  position:absolute;
  inset:0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center 20%;
}
.tc-cast-strip.strip-1 .tc-cast-strip-bg{ background-position: center 18%; }
.tc-cast-strip.strip-2 .tc-cast-strip-bg{ background-position: center 22%; }
.tc-cast-strip.strip-3 .tc-cast-strip-bg{ background-position: center 20%; }
.tc-cast-strip .tc-cast-strip-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,0.62) 0%, rgba(0,0,0,0.22) 70%);
}
.tc-cast-strip .tc-cast-strip-content{
  position: relative;
  z-index: 2;
  color: #fff;
  padding: 1.2rem;
}
@media (max-width: 767.98px){
  .tc-cast{
    min-height: auto;
    padding: 2.25rem 0;
    display: block;
    background-position: center 18%;
  }
  .tc-cast-desktop{ display:none; }
  .tc-cast-mobile{ display:block; }
}

/* FAQ */
.card.tc-accordion{
  border-radius: 14px;
  border: 1px solid var(--tc-border-color);
}
.card.tc-accordion .card-header{
  background: linear-gradient(180deg, rgba(255,226,16,0.10), rgba(21,122,122,0.04));
  border-bottom: 1px solid var(--tc-border-color);
}
.tc-faq-btn{
  width: 100%;
  text-align: left;
  font-weight: 900;
  color: #0f2230;
  text-decoration: none !important;
}

/* Sticky bar */
.tc-stickybar{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: var(--tc-sticky-bg);
  backdrop-filter: blur(8px);
  border-top: var(--tc-sticky-border);
  transition: transform var(--tc-trans-med), opacity var(--tc-trans-med);
  will-change: transform, opacity;
}
.tc-stickybar.is-hidden{
  transform: translateY(120%);
  opacity: 0;
  pointer-events: none;
}
.tc-stickybar .container{
  padding-top: .75rem;
  padding-bottom: .75rem;
}
.tc-stickybar .tc-sticky-title{
  color: var(--tc-sticky-title);
  font-weight: 900;
  margin: 0;
  line-height: 1.15;
}
.tc-stickybar .tc-sticky-sub{
  color: var(--tc-sticky-sub);
  margin: 0;
  font-size: .95rem;
}

/* Sticky CTA button forced to yellow */
.tc-stickybar .tc-btn-yellow{
  background: var(--tc-btn-yellow-bg) !important;
  border-color: var(--tc-btn-yellow-border) !important;
  color: var(--tc-btn-yellow-text) !important;
  -webkit-text-fill-color: var(--tc-btn-yellow-text) !important;
  font-weight: var(--tc-btn-font-weight);
  box-shadow: var(--tc-shadow-cta);
  transition: transform var(--tc-trans-fast), box-shadow var(--tc-trans-fast), filter var(--tc-trans-fast);
}
.tc-stickybar .tc-btn-yellow:hover{
  transform: translateY(-2px);
  box-shadow: var(--tc-shadow-cta-hover);
  filter: brightness(1.03);
}
.tc-stickybar .tc-btn-yellow:focus{
  outline: none;
  box-shadow: var(--tc-focus-ring-plus);
}

/* FAQ sign: usa aria-expanded del button (Bootstrap lo aggiorna) */
#athenaFaqAccordion .tc-faq-sign{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 1.5rem;
  height: 1.5rem;
  font-weight: 900;
  font-size: 1.25rem;
  line-height: 1;
}

/* Default: + quando è chiuso */
#athenaFaqAccordion .btn[aria-expanded="false"] .tc-faq-sign::after{
  content: "+";
}

/* Aperto: − */
#athenaFaqAccordion .btn[aria-expanded="true"] .tc-faq-sign::after{
  content: "−";
}

#tc-scroll-top {
	position: fixed;
	right: 20px;
	bottom: 90px; /* sopra la sticky bar */
	z-index: 1050;

	width: 44px;
	height: 44px;
	border-radius: 50%;

	border: none;
	cursor: pointer;

	background: var(--tc-accent);
	color: #000;

	font-size: 1.4rem;
	font-weight: 900;
	line-height: 1;

	display: flex;
	align-items: center;
	justify-content: center;

	opacity: 0;
	pointer-events: none;
	transform: translateY(10px);
	transition: opacity .2s ease, transform .2s ease;
}

#tc-scroll-top.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

#tc-scroll-top:hover {
	filter: brightness(0.95);
}

.tc-alert-wrapper {
    margin: 0;
}

.tc-alert-wrapper .alert {
    margin: 0;
    border-radius: 0;
}



