/**
 * style-event-euro.css
 * CSS completo para páginas do evento CONFUT Euro (content-events-pattern.php).
 * Carregado quando $event_slug === 'euro'. Substitui style-event.css + confut-euro.css.
 */

/* ========== 1. Variáveis (scheme + tema) ========== */
* {
    --primary-color: #E27B0C;
    --primary-color-rgb: 233, 2, 30;
    /* Event theme skins (confut-*.css) sobrescrevem estes */
    --event-bg: #ffffff;
    --event-text: #222222;
    --event-border: #e0e0e0;
    --event-font: var(--body-font);
    --bg-dark-1: #121212;
    --bg-dark-2: #222222;
    --bg-dark-3: #333333;
    --bg-dark-1-rgb: 18, 18, 18;
    --body-font: "Manrope", Helvetica, Arial, sans-serif;
    --heading-font: "Oxanium", Helvetica, Arial, sans-serif;
    --body-font-color-dark: rgba(255, 255, 255, .65);
    --rounded-1: 10px;
    --btn-color: #ffffff;
    --btn-font-family: var(--body-font);
    --btn-font-size: 15px;
    --btn-font-weight: 600;
    --btn-padding: 6px 20px;
    --btn-rounded: 6px;
    --btn-text-decoration: none;
    --btn-text-transform: none;
  }

/* Optional: load Prometo from Adobe Fonts when you have a Typekit project ID
   <link rel="stylesheet" href="https://use.typekit.net/YOUR_KIT_ID.css"> */
.confut-euro-theme {
  --confut-euro-primary: #E27B0C;
  --confut-euro-dark-blue: #13294B;
  --confut-euro-white: #FFFFFF;
  --confut-euro-gold: #D3A240;
  --confut-euro-dark-gold: #A6804F;
  --confut-euro-blue-accent: #095AAB;
  --confut-euro-gray: #919191;
  --confut-euro-light-gray: #E5E5E5;
  --primary-color: var(--confut-euro-primary);
  --primary-color-rgb: 226, 123, 12;
  --event-bg: var(--confut-euro-white);
  --event-text: var(--confut-euro-dark-blue);
  --event-border: var(--confut-euro-light-gray);
  --event-font: "Prometo", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-family: var(--event-font);
  color: var(--confut-euro-dark-blue);
  background-color: var(--confut-euro-white);
}

  /* ========== 2. Cores e fundos ========== */
  .bg-color { background: var(--primary-color) !important; }
  .bg-dark, .bg-dark-1 { background-color: var(--bg-dark-1) !important; }
  .bg-dark-2 { background-color: var(--bg-dark-2) !important; }
  .bg-dark-3 { background-color: var(--bg-dark-3) !important; }
  /* Bloco de conteúdo com fundo branco (a partir da seção Advanced Features em content-events-pattern) */
  #content .event-content-white { background-color: #ffffff !important; color: #35404e; }
  #content .event-content-white section:not(.bg-dark):not(.section-dark):not(.jarallax):not(.bg-color) { background-color: #ffffff !important; }
  #content .event-content-white h1, #content .event-content-white h2, #content .event-content-white h3, #content .event-content-white h4, #content .event-content-white h5, #content .event-content-white h6 { color: #222; }
  #content .event-content-white p, #content .event-content-white li { color: #35404e; }
  .id-color { color: var(--primary-color); }
  .rounded-1 {
    border-radius: var(--rounded-1) !important;
    -moz-border-radius: var(--rounded-1) !important;
    -webkit-border-radius: var(--rounded-1) !important;
  }
  
  /* ========== 3. Texto claro / tema escuro ========== */
  .text-light, .text-light p { color: var(--body-font-color-dark); }
  .text-light h1, .text-light h2, .text-light h3, .text-light h4, .text-light h5, .text-light h6 { color: #fff; }
  .text-white { color: #fff; }
  
  /* ========== 4. Botões ========== */
  a {
    text-decoration: none;
  }
  
  .de_light a {
    color: #888;
  }
  
  .de_light a:hover {
    color: #555;
  }
  
  a.btn-text {
    text-decoration: none;
    display: inline-block;
    color: #111;
    font-weight: 600;
    padding: 0;
  }
  
  a.btn-text:after {
    font-family: FontAwesome;
    content: "\f054";
    padding-left: 10px;
  }
  
  a.btn-text {
    color: #fff;
  }
  
  a.btn-big {
    font-size: 14px;
    color: #eceff3;
    letter-spacing: 1px;
    line-height: normal;
    font-weight: bold;
    text-transform: uppercase;
    border: solid 1px #fff;
    padding: 10px 30px 10px 30px;
  }
  
  a.btn-big:after {
    font-family: FontAwesome;
    content: "\f054";
    margin-left: 20px;
  }
  
  a.btn,
  .btn {
    position: relative;
    z-index: 1;
    overflow: hidden;
  }
  
  a.btn:before {
    content: "";
    background: rgba(0, 0, 0, 0);
    width: 0;
    height: 100%;
    position: absolute;
    z-index: -1;
  }
  
  a.btn-fx:after {
    font-family: FontAwesome;
    content: "\f178";
    margin-left: 15px;
    position: absolute;
    right: -20px;
    margin-top: 0px;
  }
  
  a.btn-fx {
    font-size: 14px;
    color: #eceff3;
    letter-spacing: 1px;
    line-height: normal;
    font-weight: bold;
    text-transform: uppercase;
    border: solid 1px #fff;
    padding: 10px 30px 10px 30px;
  }
  
  a.btn-fx:hover {
    padding-left: 20px;
    padding-right: 40px;
  }
  
  a.btn-fx:before {
    width: 0;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
  }
  
  a.btn-fx:hover:after {
    right: 15px;
  }
  
  a.btn-fx:hover:before {
    width: 100%;
    background: rgba(0, 0, 0, 1);
  }
  
  a.btn-fx.light:hover:before {
    width: 100%;
    background: rgba(255, 255, 255, 1);
  }
  
  .btn-fullwidth {
    display: block;
    width: 100%;
  }
  
  a.btn-slider {
    font-size: 14px;
    font-weight: bold;
    color: #fff;
    line-height: normal;
    text-decoration: none;
    text-transform: uppercase;
    border: solid 2px #fff;
    padding: 10px 30px 10px 30px;
    border-radius: 60px;
  }
  
  a.btn-slider:hover {
    color: #222;
    background: #fff;
    border-color: #000;
    border: solid 2px #fff;
  }
  
  a.btn-main:hover,
  .btn-main:hover {
    color: #fff;
    -webkit-box-shadow: 2px 2px 20px 0px rgba(var(--primary-color-rgb), 0.5);
    -moz-box-shadow: 2px 2px 20px 0px rgba(var(--primary-color-rgb), 0.5);
    box-shadow: 2px 2px 20px 0px rgba(var(--primary-color-rgb), 0.5);
  }
  
  a.btn-slider:hover:after {
    color: #222;
  }
  
  a.btn-id,
  a.btn-id:hover {
    border: none;
  }
  
  a.btn-light.btn-id {
    color: #222;
  }
  
  a.btn-dark.btn-id {
    color: #fff;
  }
  
  .btn-main.btn-small {
    padding: 5px 20px 5px 20px;
    font-weight: bold;
    text-transform: uppercase;
  }
  
  .btn-fx.btn-main {
    text-transform: normal;
  }
  
  a.btn-bg-dark {
    background: #222;
  }
  
  a.btn-text-light {
    color: #fff;
  }
  
  .btn-icon-left i {
    margin-right: 12px;
    color: #fff;
  }
  
  .btn-add_to_cart,
  a.btn-add_to_cart {
    border: solid 1px #bbb;
    font-size: 12px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    padding: 3px;
    padding-left: 40px;
    padding-right: 20px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    color: #555;
  }
  
  .btn-add_to_cart:before,
  a.btn-add_to_cart:before {
    font-family: "FontAwesome";
    content: "\f07a";
    position: absolute;
    left: 20px;
  }
  
  a.btn-main,
  a.btn-main:active,
  a.btn-main:focus,
  a.btn-main:visited,
  .btn-main,
  input[type=button].btn-main,
  a.btn-line,
  #mainmenu li ul.mega a.btn-main {
    display: inline-block;
    font-family: var(--title-font);
    text-align: center;
    color: #fff;
    outline: 0;
    font-weight: bold;
    text-decoration: none;
    padding: 2px 20px 2px 20px;
    font-size: 14px;
    border: none;
    text-transform: uppercase;
    border-radius:60px;
    -moz-border-radius:60px;
    -webkit-border-radius:60px;
  }
  
  a.btn-main img {
    width: 24px;
    margin-right: 10px;
    margin-top: -2px;
  }
  
  a.btn-main.big{
    font-size: 30px;
    padding: 20px 30px;
  }
  
  a.btn-sc {
    display: inline-block;
    font-family: var(--title-font);
    font-weight: bold;
    padding: 6px;
    font-size: 14px;
    color: #222;
    border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    background: #f2f2f2;
  }
  
  a.btn-sc img {
    width: 20px;
    margin-top: -4px;
    margin-right: 8px;
  }
  
  a.btn-line,
  a.btn-line:hover {
    background: none;
    color: #35404e;
    border: solid 2px var(--tertiary-color);
  }
  
  a.btn-line:hover {
    color: #ffffff;
  }
  
  header:not(.header-light) a.btn-line,
  .dark-scheme a.btn-line,
  .dark-schem a.btn-line:hover {
    color: #ffffff;
  }
  
  a.btn-main.btn-white {
    background: #ffffff;
  }
  
  header a.btn-main i {
    display: none;
  }
  
  .col-right a.btn-main {
    font-size: 14px;
    text-transform: none;
  }
  
  a.btn-border {
    border: solid 2px rgba(255, 255, 255, .3);
    border-radius: 0px;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    min-width: 120px;
    outline: 0;
    font-weight: bold;
    text-decoration: none;
    padding: 10px 30px;
    min-width: 120px;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 2px;
  }
  
  a.btn-border:hover {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0);
    margin-top: -2px;
    margin-bottom: 2px;
    box-sizing: border-box
  }
  
  a.btn-border.light {
    border: solid 1px #ffffff;
    color: #ffffff;
  }
  
  a.btn-border.light:hover {
    background: #ffffff;
  }
  
  a.btn-border:hover a {
    color: #ffffff !important;
  }
  
  .d-btn-close {
    color: #ffffff;
    cursor: poInter;
    text-align: center;
    display: block;
    text-align: center;
    width: 60px;
    height: 60px;
    background: #333;
    font-size: 32px;
    font-weight: bold;
    text-decoration: none;
    margin: 0 auto;
    padding-top: 12px;
    position: absolute;
    left: 0;
    right: 0;
  }
  
  a.btn-link {
    display: block;
    text-decoration: none;
    margin-top: 10px;
  }
  
  .cover a.btn-link:hover {
    color: #fff;
  }
  
  .play-button {
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    color: #fff;
    text-decoration: none;
    border: solid 5px rgba(255, 255, 255, .3);
    display: inline-block;
    text-align: center;
    width: 80px;
    height: 80px;
    padding-top: 22px;
    padding-left: 5px;
  }
  
  .play-button:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f04b";
    position: relative;
    color: #fff;
  }
  
  .play-button:hover {
    border: solid 5px rgba(255, 255, 255, 1);
  }
  
  .play-button.dark {
    color: #222;
    border: solid 5px rgba(0, 0, 0, .1);
  }
  
  .play-button.dark:before {
    color: #222;
  }
  
  .play-button.dark:hover {
    border: solid 5px rgba(0, 0, 0, .5);
  }
  
  .text-light .play-button {
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    color: #fff;
    text-decoration: none;
    border: solid 5px rgba(255, 255, 255, .3);
    display: inline-block;
    text-align: center;
    width: 80px;
    height: 80px;
    padding-top: 22px;
    padding-left: 5px;
  }
  
  .text-light .play-button:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f04b";
    position: relative;
    color: #fff;
  }
  
  .text-light .play-button.dark {
    color: #fff;
    border: solid 5px rgba(255, 255, 255, .3);
  }
  
  .text-light .play-button.dark:before {
    color: #fff;
  }
  
  .text-light .play-button.dark:hover {
    border: solid 5px rgba(255, 255, 255, 1);
  }
  
  /* ========== 5. Espaçadores ========== */
  .spacer-single { width: 100%; height: 30px; display: block; clear: both; }
  .spacer-double { width: 100%; height: 60px; display: block; clear: both; }
  
  /* ========== 6. Subtitle ========== */
  .subtitle {
    position: relative;
    display: inline-block;
    font-size: 12px;
    font-weight: 500;
    font-family: var(--heading-font);
    letter-spacing: 10px;
    text-transform: uppercase;
    line-height: 1.5em;
    margin-bottom: 20px;
    padding: 6px 0 3px 0;
    border-radius: 3px;
  }
  .subtitle:before, .subtitle:after {
    content: '';
    position: absolute;
    width: 50%; height: 2px;
    background: var(--primary-color);
    left: 0; bottom: 0;
  }
  .subtitle:after { bottom: auto; left: auto; top: 0; right: 0; }
  .dark-scheme .subtitle, .text-light .subtitle { color: #fff; }
  .text-light .subtitle { border-color: rgba(255, 255, 255, .5); }
  
  /* ========== 7. Hero Swiper (overrides do theme) ========== */
  .swiper { background: var(--bg-dark-1); }
  .swiper, .sw-overlay {
    position: absolute;
    width: 100%; height: 100%;
    left: 0; top: 0;
  }
  .swiper-slide { position: relative; background: var(--bg-dark-1); }
  .sw-overlay {
    background: linear-gradient(0deg, rgba(var(--bg-dark-1-rgb), .75) 0%, rgba(var(--bg-dark-1-rgb), .75) 50%);
  }
  .swiper-inner {
    display: block;
    position: absolute;
    top: 0; width: 100%; height: 100%;
  }
  .swiper-button-next, .swiper-button-prev { color: #fff; }
  .swiper-button-next:after, .swiper-button-prev:after { font-size: 24px; }
  .swiper-button-next { right: 20px; }
  .swiper-button-prev { left: 20px; }
  
  /* ========== 8. Bordas gradiente e overlay ========== */
  .gradient-edge-top {
    z-index: 1;
    position: absolute;
    top: 0; width: 100%;
    height: 30%;
    background: linear-gradient(180deg, rgba(var(--bg-dark-1-rgb), 1) 0%, rgba(var(--bg-dark-1-rgb), 0) 100%);
  }
  .gradient-edge-bottom {
    z-index: 1;
    position: absolute;
    bottom: 0; width: 100%;
    height: 30%;
    background: linear-gradient(0deg, rgba(var(--bg-dark-1-rgb), 1) 0%, rgba(var(--bg-dark-1-rgb), 0) 100%);
  }
  .gradient-edge-bottom.color {
    background: linear-gradient(0deg, rgba(var(--primary-color-rgb), 1) 0%, rgba(var(--primary-color-rgb), 0) 100%);
  }
  .bg-blur {
    background: rgba(0, 0, 0, .15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
  
  /* ========== 9. Contador (de_count) e rating ========== */
  .de_count { transition: all 0.3s ease; }
  .de-rating-ext { font-size: 14px; }
  .de-rating-ext i { color: #F2B827; }
  .de-rating-ext .d-val { color: #fff; margin-right: 10px; }
  
  /* ========== 10. Accordion FAQ (home-1 usa .accordion-section-*) ========== */
  .accordion-section-title,
  .faq-accordion-section-title {
    color: #35404e;
    width: 100%;
    padding: 15px 0;
    cursor: pointer;
    font-family: var(--body-font);
    background-color: #000;
    display: inline-block;
    font-size: 17px;
    transition: all linear 0.5s;
    text-decoration: none;
    font-weight: 600;
    border-bottom: solid 1px #ddd;
  }
  .dark-scheme .accordion-section-title,
  .dark-scheme .faq-accordion-section-title,
  .text-light .accordion-section-title,
  .text-light .faq-accordion-section-title {
    color: #fff;
    border-bottom: solid 1px rgba(255, 255, 255, .4) !important;
  }
  .accordion-section-title:before,
  .faq-accordion-section-title:before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f107";
    float: right;
    color: var(--bg-dark-1);
    padding: 0 8px;
    font-size: 15px;
    border-radius: 8px;
    width: 30px;
    text-align: center;
  }
  .dark-scheme .accordion-section-title:before,
  .dark-scheme .faq-accordion-section-title:before,
  .text-light .accordion-section-title:before,
  .text-light .faq-accordion-section-title:before { color: #fff; }
  .accordion-section-title.active:before,
  .faq-accordion-section-title.active:before { content: "\f106"; }
  .accordion-section-title.active,
  .faq-accordion-section-title.active { margin-bottom: 0; text-decoration: none; }
  .accordion-section-title:hover,
  .faq-accordion-section-title:hover { text-decoration: none; }
  .accordion-section-content,
  .faq-accordion-section-content {
    padding-top: 15px;
    padding-bottom: 5px;
    display: none;
    margin-bottom: 10px;
  }
  .accordion.s2 .accordion-section-title,
  .accordion.s2 .faq-accordion-section-title { border: none; border-bottom: solid 1px #ddd; }
  
  /* ========== 11. Hover effects ========== */
  .hover-op-0 { opacity: 1; }
  .hover:hover .hover-op-0 { opacity: 0; }
  .hover-op-1, .hover-op-05 { opacity: 0; }
  .hover:hover .hover-op-1 { opacity: 1; }
  .hover:hover .hover-op-05 { opacity: .5; }
  .hover:hover .hover-scale-1-1 { transform: scale(1.1); }
  .hover-mt-40 { margin-top: 40px; }
  .hover:hover .hover-mt-40 { margin-top: 0; }
  
  /* ========== 12. scaleIn (imagens) ========== */
  @-webkit-keyframes scaleIn {
    from { opacity: 0; -webkit-transform: scale3d(1.5, 1.5, 1.5); transform: scale3d(1.5, 1.5, 1.5); }
    100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  }
  @keyframes scaleIn {
    from { opacity: 0; -webkit-transform: scale3d(1.5, 1.5, 1.5); transform: scale3d(1.5, 1.5, 1.5); }
    100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  }
  .scaleIn { -webkit-animation-name: scaleIn; animation-name: scaleIn; }
  
  /* ========== 13. Utilidades (posição, z-index, tamanhos) ========== */
  .abs{ position:absolute; }

  /* border-radius */
  .rounded-5px{ border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px; }
  .rounded-10px{ border-radius:10px; -moz-border-radius:10px; -webkit-border-radius:10px; }
  .rounded-20px{ border-radius:20px; -moz-border-radius:20px; -webkit-border-radius:20px; }
  
  /* height */
  .h-10{height: 10%}
  .h-20{height: 20%}
  .h-30{height: 30%}
  .h-40{height: 40%}
  .h-50{height: 50%}
  .h-60{height: 60%}
  .h-70{height: 70%}
  .h-80{height: 80%}
  .h-90{height: 90%}
  .h-100{height: 100%}
  
  /* width */
  .w-10{width: 10%}
  .w-20{width: 20%}
  .w-30{width: 30%}
  .w-40{width: 40%}
  .w-50{width: 50%}
  .w-60{width: 60%}
  .w-70{width: 70%}
  .w-80{width: 80%}
  .w-90{width: 90%}
  .w-100{width: 100%}
  
  /* position top % */
  .top-10{top: 10%}
  .top-20{top: 20%}
  .top-30{top: 30%}
  .top-40{top: 40%}
  .top-50{top: 50%}
  .top-60{top: 60%}
  .top-70{top: 70%}
  .top-80{top: 80%}
  .top-90{top: 90%}
  .top-100{top: 100%}
  
  /* position top px */
  .top-10px{top: 10px}
  .top-20px{top: 20px}
  .top-30px{top: 30px}
  .top-40px{top: 40px}
  .top-50px{top: 50px}
  .top-60px{top: 60px}
  .top-70px{top: 70px}
  .top-80px{top: 80px}
  .top-90px{top: 90px}
  .top-100px{top: 100px}
  
  /* position top px */
  .bottom-10px{bottom: 10px}
  .bottom-20px{bottom: 20px}
  .bottom-30px{bottom: 30px}
  .bottom-40px{bottom: 40px}
  .bottom-50px{bottom: 50px}
  .bottom-60px{bottom: 60px}
  .bottom-70px{bottom: 70px}
  .bottom-80px{bottom: 80px}
  .bottom-90px{bottom: 90px}
  .bottom-100px{bottom: 100px}
  
  /* position bottom % */
  .bottom-10{bottom: 10%}
  .bottom-20{bottom: 20%}
  .bottom-30{bottom: 30%}
  .bottom-40{bottom: 40%}
  .bottom-50{bottom: 50%}
  .bottom-60{bottom: 60%}
  .bottom-70{bottom: 70%}
  .bottom-80{bottom: 80%}
  .bottom-90{bottom: 90%}
  .bottom-100{bottom: 100%}
  
  /* position left % */
  .start-10{left: 10%}
  .start-20{left: 20%}
  .start-30{left: 30%}
  .start-40{left: 40%}
  .start-50{left: 50%}
  .start-60{left: 60%}
  .start-70{left: 70%}
  .start-80{left: 80%}
  .start-90{left: 90%}
  .start-100{left: 100%}
  
  /* position left px */
  .start-10px{left: 10px}
  .start-20px{left: 20px}
  .start-30px{left: 30px}
  .start-40px{left: 40px}
  .start-50px{left: 50px}
  .start-60px{left: 60px}
  .start-70px{left: 70px}
  .start-80px{left: 80px}
  .start-90px{left: 90px}
  .start-100px{left: 100px}
  
  /* position right % */
  .end-10{right: 10%}
  .end-20{right: 20%}
  .end-30{right: 30%}
  .end-40{right: 40%}
  .end-50{right: 50%}
  .end-60{right: 60%}
  .end-70{right: 70%}
  .end-80{right: 80%}
  .end-90{right: 90%}
  .end-100{right: 100%}
  
  /* position right px */
  .end-10px{right: 10px}
  .end-20px{right: 20px}
  .end-30px{right: 30px}
  .end-40px{right: 40px}
  .end-50px{right: 50px}
  .end-60px{right: 60px}
  .end-70px{right: 70px}
  .end-80px{right: 80px}
  .end-90px{right: 90px}
  .end-100px{right: 100px}
  
  /* font-size px */
  .fs-12{font-size: 12px}
  .fs-14{font-size: 14px}
  .fs-15{font-size: 15px}
  .fs-16{font-size: 16px}
  .fs-18{font-size: 18px}
  .fs-20{font-size: 20px}
  .fs-24{font-size: 24px}
  .fs-28{font-size: 28px}
  .fs-30{font-size: 30px}
  .fs-32{font-size: 32px}
  .fs-36{font-size: 36px}
  .fs-40{font-size: 40px}
  .fs-42{font-size: 42px}
  .fs-48{font-size: 48px}
  .fs-56{font-size: 56px}
  .fs-60{font-size: 60px}
  .fs-64{font-size: 64px}
  .fs-72{font-size: 72px}
  .fs-84{font-size: 84px}
  .fs-96{font-size: 96px}
  .fs-120{font-size: 120px}
  .fs-150{font-size: 150px}
  .fs-200{font-size: 200px}
  .fs-250{font-size: 250px}
  .fs-300{font-size: 300px}
  .fs-350{font-size: 350px}
  .fs-400{font-size: 400px}
  .fs-450{font-size: 450px}
  .fs-500{font-size: 500px}
  
  /* font-weight */
  .fw-100{font-weight: 100;}
  .fw-200{font-weight: 200;}
  .fw-400{font-weight: 300;}
  .fw-400{font-weight: 400;}
  .fw-500{font-weight: 500;}
  .fw-600{font-weight: 600;}
  .fw-700{font-weight: 700;}
  .fw-800{font-weight: 800;}
  .fw-bold{font-weight: bold;}
  
  /* margin left px */
  .ml-10{margin-left: 10px}
  .ml-20{margin-left: 20px}
  .ml-30{margin-left: 30px}
  .ml-40{margin-left: 40px}
  .ml-50{margin-left: 50px}
  .ml-60{margin-left: 60px}
  .ml-70{margin-left: 70px}
  .ml-80{margin-left: 80px}
  .ml-90{margin-left: 90px}
  .ml-100{margin-left: 100px}
  
  /* padding left px */
  .pl-10{padding-left: 10px}
  .pl-20{padding-left: 20px}
  .pl-30{padding-left: 30px}
  .pl-40{padding-left: 40px}
  .pl-50{padding-left: 50px}
  .pl-60{padding-left: 60px}
  .pl-70{padding-left: 70px}
  .pl-80{padding-left: 80px}
  .pl-90{padding-left: 90px}
  .pl-100{padding-left: 100px}
  .pl-110{padding-left: 110px}
  .pl-120{padding-left: 120px}
  
  /* padding right px */
  .pr-10{padding-right: 10px}
  .pr-20{padding-right: 20px}
  .pr-30{padding-right: 30px}
  .pr-40{padding-right: 40px}
  .pr-50{padding-right: 50px}
  .pr-60{padding-right: 60px}
  .pr-70{padding-right: 70px}
  .pr-80{padding-right: 80px}
  .pr-90{padding-right: 90px}
  .pr-100{padding-right: 100px}
  
  /* opacity */
  .op-1{ opacity:.1; }
  .op-2{ opacity:.2; }
  .op-3{ opacity:.3; }
  .op-4{ opacity:.4; }
  .op-5{ opacity:.5; }
  .op-6{ opacity:.6; }
  .op-7{ opacity:.7; }
  .op-8{ opacity:.8; }
  .op-9{ opacity:.9; }
  
  /* line height em */
  .lh-1{line-height: 1em;}
  .lh-1-1{line-height: 1.1em;}
  .lh-1-2{line-height: 1.2em;}
  .lh-1-3{line-height: 1.3em;}
  .lh-1-4{line-height: 1.4em;}
  .lh-1-5{line-height: 1.5em;}
  
  .ls-005-em{ letter-spacing:-0.05em }
  
  .mw-100{min-width: 100px}
  .mw-200{min-width: 200px}
  
  .mh-300{min-height: 300px}
  .mh-400{min-height: 400px}
  .mh-500{min-height: 500px}
  
  /* margin right negative px */
  .mr-min-20{margin-right: -20px;}
  .mr-min-30{margin-right: -30px;}
  .mr-min-40{margin-right: -40px;}
  .mr-min-50{margin-right: -50px;}
  .mr-min-60{margin-right: -60px;}
  .mr-min-70{margin-right: -70px;}
  .mr-min-80{margin-right: -80px;}
  
  /* border white px */
  .border-white-1{border: solid 1px white;}
  .border-white-2{border: solid 2px white;}
  .border-white-3{border: solid 3px white;}
  .border-white-4{border: solid 4px white;}
  .border-white-5{border: solid 5px white;}
  .border-white-6{border: solid 6px white;}
  
  .w-20px{width: 20px}
  .w-24px{width: 24px}
  .w-30px{width: 30px}
  .w-180px{width: 180px}
  .w-100px{width: 100px}
  .w-200px{width: 200px}
  .w-300px{width: 300px}
  .w-400px{width: 400px}
  .w-2000px{width: 2000px}
  
  .text-gradient-up-down-1{
    background-image: -webkit-linear-gradient(0deg,rgba(255, 255, 255, 1.0) 0%, rgba(255, 255, 255, 0) 70%);
    background-image: -moz-linear-gradient(0deg,rgba(255, 255, 255, 1.0) 0%, rgba(255, 255, 255, 0) 70%);
    background-image: linear-gradient(0deg,rgba(255, 255, 255, 1.0) 0%, rgba(255, 255, 255, 0) 70%);
    background-clip: text;
    -webkit-background-clip: text;
    text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
  }
  
  
  .text-gradient-color-up-down-1{
    background-image: -webkit-linear-gradient(0deg,rgba(var(--primary-color-rgb), 1.0) 0%, rgba(var(--primary-color-rgb), 0) 60%);
    background-image: -moz-linear-gradient(0deg,rgba(var(--primary-color-rgb), 1.0) 0%, rgba(var(--primary-color-rgb), 0) 60%);
    background-image: linear-gradient(0deg,rgba(var(--primary-color-rgb), 1.0) 0%, rgba(var(--primary-color-rgb), 0) 60%);
    background-clip: text;
    -webkit-background-clip: text;
    text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
  }
  
  .text-gradient-up-down-2{
    background-image: -webkit-linear-gradient(0deg,rgba(0,0,0, 0) 0%, rgba(0,0,0, .1) 70%);
    background-image: -moz-linear-gradient(0deg,rgba(0,0,0, 0) 0%, rgba(0,0,0, .1) 70%);
    background-image: linear-gradient(0deg,rgba(0,0,0, 0) 0%, rgba(0,0,0, .1) 70%);
    background-clip: text;
    -webkit-background-clip: text;
    text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
  }
  
  .hover-op-0{ opacity:1 }
  .hover:hover .hover-op-0{ opacity:0 }
  .hover-op-1,.hover-op-05{ opacity:0 }
  .hover:hover .hover-op-1{ opacity:1 }
  .hover:hover .hover-op-05{ opacity:.5 }
  .hover:hover .hover-scale-1-1{transform: scale(1.1);}
  .hover:hover .hover-scale-1-2{transform: scale(1.2);}
  .hover-scale-in-3{transform: scale(3); opacity: 0}
  .hover:hover .hover-scale-in-3{transform: scale(1); opacity: 1}
  .hover:hover .hover-bg-color{background: var(--primary-color)}
  .hover:hover .hover-bg-dark{background: var(--title-font-color)}
  .hover-mh-100{max-height: 0px; overflow: hidden;}
  .hover:hover .hover-mh-100{max-height: 500px;}
  .hover:hover .hover-top-0{top:0;}
  .hover:hover .hover-pb-40{padding-bottom: 40px;}
  .hover-mt-40{margin-top: 40px;}
  .hover:hover .hover-mt-40{margin-top: 0px;}
  .hover:hover .hover-mt-0{margin-top: 0;}
  
  .inline-block{
      display: inline-block;
  }
  
  .gradient-trans-white-bottom{ background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%); }
  .gradient-trans-color-bottom{ background: linear-gradient(180deg, rgba(var(--primary-color-rgb),0) 0%, rgba(var(--primary-color-rgb),1) 100%); }
  
  /* z-index */
  .z-1{z-index: 1}
  .z-2{z-index: 2}
  .z-3{z-index: 3}
  .z-4{z-index: 4}
  .z-5{z-index: 5}
  .z-1000 { z-index: 1000; }
  
  .deco-text{ font-family: var(--deco-font) !important; }
  
  /* misc */
  
  /* swiperjs */
  
  .swiper,
  .sw-overlay{
      position: absolute;
      width: 100%;
      height: 100% !important;
  }
  
  .swiper-slide{
      position: relative;
  }
  
  .sw-caption{
      z-index: 1;
      position: absolute;
      width: 100%;
      top: 50%;
      transform: translateY(-50%);
      letter-spacing: -.5;
  }
  
  .sw-text-wrapper.border-left{
    border-left: solid 1px rgba(255, 255, 255, .75);
    padding-left: 40px;
  }
  
  .slider-title .underline{
    position: relative;
  }
  .slider-title .underline:before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: var(--primary-color);
  }
  h2.slider-title{
    font-size: 64px;
    letter-spacing: -3px;
  }
  h3.slider-teaser{
    font-size: 24px;
  }
  p.slider-teaser{
    font-size: 18px;
    line-height: 1.6em;
    font-weight: 400;
  }
  
  .sw-overlay{
    background: rgba(0, 0, 0, .35);
  }
  
  .swiper-scrollbar,
  .swiper-scrollbar-horizontal,
  .swiper-scrollbar-drag{
      display: none;
  }
  
  .swiper-inner{
    display: block;
    position: absolute;
    top:0;
    width: 100%;
    height: 100%;
    background: none;
  }
  
  .swiper-slide-active .subtitle {
    animation-delay: 0s;
    animation: fadeInRight 2s;
  }
  
  
  .swiper-slide-active .slider-title {
    animation-delay: 1s;
    animation: fadeInRight 2s;
  }
  
  
  .swiper-slide-active .slider-teaser,
  .swiper-slide-active .slider-text {
    animation-delay: 1.2s;
    animation: fadeInRight 2s;
  }
  
  .swiper-slide-active .slider-teaser {
    animation-delay: 1.4s;
    animation: fadeInRight 2s;
  }
  
  
  .swiper-slide-active .slider-extra {
    animation-delay: 1.4s;
    animation: fadeInRight 2s;
  }
  
  
  
  .swiper-slide-active .btn-main,.swiper-slide-active .btn-line {
    animation-delay: 1.4s;
    animation: fadeInRight 2s;
  }
  
  .swiper-pagination{
    width: 100px;
    font-size: 20px;
    text-align: right;
    position: absolute;
    left: auto;
    right: 40px;
    bottom: 40px;
    font-weight: 400;
  }
  
  .swiper-pagination-total{
    font-size:20px;
    opacity: .5;
  }
  
  .swiper-pagination-current{
    color:var(--priamry-color);
    font-size: 20px;
  }
  
  .swiper-button-next, .swiper-button-prev{
    color:#ffffff;
  }
  
  .swiper-button-next:after, .swiper-button-prev:after{
    font-size:24px;
  }
  
  .swiper-button-next{
    right: 20px;
  }
  
  .swiper-button-prev{
    left: 20px;
  }
  
  .sw-price{
    color:#ffffff;
  }
  .sw-price .d-starting{
    margin-bottom: 20px;
    color:rgba(255, 255, 255, .75);
  }
  .sw-price .d-price{
    font-size: 56px;
    font-family: var(--title-font);
    font-weight: bold;
    margin-bottom: 10px;
  }
  .sw-price .d-val{
    background: -webkit-linear-gradient(0deg,#888888 0%, #ffffff 75%);
    background: -moz-linear-gradient(0deg,#888888 0%, #ffffff 75%);
    background: linear-gradient(0deg,#888888 0%, #ffffff 75%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .sw-price .d-cur, .sw-price .d-period{
    font-size: 16px;
    font-family: var(--body-font);
    color:var(--primary-color);
  }
  .sw-price .d-cur{
    font-weight: bold;
  }
  
  
  /* swiper end */
  
  
  /* swiper #2 begin */
  
  .swiper-container {
    overflow: hidden;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  @media (min-width: 480px) {
    .swiper-container {
      min-height: 320px;
    }
  }
  .swiper-container-wrapper {
    display: flex;
    flex-flow: column nowrap;
    height: 100vh;
    width: 100vw;
  }
  @media (min-width: 480px) {
    .swiper-container-wrapper {
      flex-flow: row nowrap;
    }
  }
  
  #swiper-s2 .swiper-slide {
    text-align: center;
    background-size: cover;
    background-position: center;
    background-color: var(--bg-dark-1);
    /* Center slide text vertically */
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    /* Slide content */
  }
  .swiper-slide .description,
  .swiper-slide .title {
    display: block;
    opacity: 0;
    transition: 0.5s ease 0.5s;
  }
  .swiper-slide-active .description,
  .swiper-slide-active .title {
    opacity: 1;
  }
  .swiper-slide-active .title {
    margin-bottom: 0.5rem;
    font-size: 24px;
    color: #000;
    transition: opacity 0.5s ease 0.5s;
  }
  .swiper-slide-active .description {
    font-size: 16px;
    color: #777;
    transition: opacity 0.5s ease 0.75s;
  }
  
  .gallery-top {
    position: relative;
    width: 100%;
    height: 75vh;
  }
  @media (min-width: 480px) {
    .gallery-top {
      width: 80%;
      height: 100vh;
      margin-right: 10px;
    }
  }
  
  .gallery-thumbs {
    width: 100%;
    height: 25vh;
    padding-top: 10px;
  }
  @media (min-width: 480px) {
    .gallery-thumbs {
      width: 20%;
      height: 100vh;
      padding: 0;
    }
  }
  .gallery-thumbs .swiper-wrapper {
    flex-direction: row;
  }
  @media (min-width: 480px) {
    .gallery-thumbs .swiper-wrapper {
      flex-direction: column;
    }
  }
  .gallery-thumbs .swiper-slide {
    width: 25%;
    flex-flow: row nowrap;
    height: 100%;
    opacity: 0.75;
    cursor: pointer;
  }
  @media (min-width: 480px) {
    .gallery-thumbs .swiper-slide {
      flex-flow: column nowrap;
      width: 100%;
    }
  }
  .gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
  }
  
  .sw-caption-thumb h3{
    font-size: 22px
  }
  
  .sw-caption-thumb .d-tag{
    color:#ffffff;
    font-size: 12px;
    font-weight: bold;
    background: var(--primary-color);
    padding: 2px 10px;
    border-radius:30px;
    -moz-border-radius:30px;
    -webkit-border-radius:30px;
  }

  /* Event speakers carousel: see css/event-speakers-carousel.css */

/* ========== Event theme common (Euro) ========== */
.confut-euro-theme .btn-main,
.confut-euro-theme .btn-main.big,
.confut-euro-theme a.btn-main {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color);
  color: var(--event-bg) !important;
  font-family: var(--event-font);
  font-weight: 600;
  padding: 12px 32px;
  border-radius: 60px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 14px rgba(var(--primary-color-rgb), 0.25);
  cursor: pointer;
  display: inline-block;
}

.confut-euro-theme .btn-main.big,
.confut-euro-theme a.btn-main.big {
  font-size: 1.05rem;
  padding: 16px 40px;
  min-height: 50px;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}

.confut-euro-theme .btn-main:hover,
.confut-euro-theme .btn-main:focus,
.confut-euro-theme a.btn-main:hover {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color);
  color: var(--event-bg) !important;
  box-shadow: 2px 2px 20px 0 rgba(var(--primary-color-rgb), 0.5);
  transform: translateY(-2px);
}

.confut-euro-theme .id-color,
.confut-euro-theme .d-item-block.bg-color {
  background-color: var(--primary-color) !important;
  color: var(--event-bg) !important;
  border-radius: 8px;
}

.confut-euro-theme .id-color {
  padding: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Cards de ingresso */
.confut-euro-theme .de-pricing-s1 {
  border-radius: 12px;
  border: 1px solid var(--event-border);
  box-shadow: 0 8px 24px rgba(var(--primary-color-rgb), 0.08);
  overflow: hidden;
  background-color: var(--event-bg);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.confut-euro-theme .de-pricing-s1:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(var(--primary-color-rgb), 0.12);
  border-color: var(--primary-color);
}

.confut-euro-theme .de-pricing-s1 .d-content {
  padding: 48px 32px;
  background-color: var(--event-bg);
  position: relative;
  z-index: 5;
}

.confut-euro-theme .de-pricing-s1 .d-content h3 {
  color: var(--event-text);
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  font-family: var(--event-font);
}

.confut-euro-theme .de-pricing-s1 .d-content .d-price {
  color: var(--primary-color);
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  margin: 1.5rem 0;
  text-align: center;
  font-family: var(--event-font);
}

.confut-euro-theme .de-pricing-s1 .d-list {
  list-style: none;
  padding: 2rem 0 0 0;
  color: var(--event-text);
  border-top: 1px solid var(--event-border);
}

.confut-euro-theme .de-pricing-s1 .d-list li {
  border-bottom: 1px solid var(--event-border);
  padding: 1rem 0;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.5;
  font-family: var(--event-font);
}

.confut-euro-theme .de-pricing-s1 .d-list li:before {
  color: var(--primary-color);
  margin-right: 12px;
  font-weight: 700;
}

/* Formulários */
.confut-euro-theme .form-control {
  border: 1px solid var(--event-border);
  border-radius: 6px;
  padding: 12px 16px;
  font-size: 1rem;
  font-family: var(--event-font);
  transition: all 0.2s ease;
  background-color: var(--event-bg);
  color: var(--event-text);
}

.confut-euro-theme .form-control:focus {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(var(--primary-color-rgb), 0.12);
  outline: none;
}

/* Accordion ativo */
.confut-euro-theme .accordion-section-title {
  font-family: var(--event-font);
  color: var(--event-text);
  background-color: var(--event-bg);
  border: 1px solid var(--event-border);
  border-radius: 6px;
  padding: 1.2rem;
  margin-bottom: 0.8rem;
}

.confut-euro-theme .accordion-section-title.active {
  border-left: 4px solid var(--primary-color);
  border-left-color: var(--primary-color);
  color: var(--primary-color);
  background-color: rgba(var(--primary-color-rgb), 0.06);
}

/* Responsivo comum dos temas */
@media (max-width: 1199.98px) {
  .confut-euro-theme .de-pricing-s1 .d-content {
    padding: 40px 28px;
  }
  .confut-euro-theme .de-pricing-s1 .d-content .d-price {
    font-size: 2.8rem;
  }
}

@media (max-width: 991.98px) {
  .confut-euro-theme .de-pricing-s1 {
    margin-bottom: 2rem;
  }
  .confut-euro-theme .de-pricing-s1 .d-content {
    padding: 36px 24px;
  }
  .confut-euro-theme .de-pricing-s1 .d-content .d-price {
    font-size: 2.4rem;
  }
}

@media (max-width: 767.98px) {
  .confut-euro-theme .btn-main,
  .confut-euro-theme a.btn-main {
    padding: 12px 28px;
    font-size: 0.95rem;
    width: 100%;
    text-align: center;
  }
  .confut-euro-theme .btn-main.big,
  .confut-euro-theme a.btn-main.big {
    padding: 14px 28px;
    font-size: 1rem;
  }
}

@media (max-width: 575.98px) {
  .confut-euro-theme .de-pricing-s1 .d-content {
    padding: 28px 20px;
  }
  .confut-euro-theme .de-pricing-s1 .d-content h3 {
    font-size: 1.2rem;
  }
  .confut-euro-theme .de-pricing-s1 .d-content .d-price {
    font-size: 2rem;
    margin: 1rem 0;
  }
  .confut-euro-theme .accordion-section-title {
    padding: 1rem;
    font-size: 0.95rem;
  }
}

/* ---------- Page & body ---------- */
body.confut-euro-theme,
body.confut-euro-theme.dark-scheme {
  background-color: var(--confut-euro-white) !important;
  background: var(--confut-euro-white) !important;
  color: var(--confut-euro-dark-blue) !important;
  --bg-color-dark: var(--confut-euro-dark-blue) !important;
  --bg-color-even: var(--confut-euro-white) !important;
}

body.confut-euro-theme #wrapper,
body.confut-euro-theme #content {
  background-color: var(--confut-euro-white) !important;
  background: var(--confut-euro-white) !important;
}

.confut-euro-theme .event-content-white {
  background-color: var(--confut-euro-white) !important;
  color: var(--confut-euro-dark-blue);
}

.confut-euro-theme .event-content-white section:not(.bg-dark):not(.section-dark):not(.jarallax):not(.bg-color) {
  background-color: var(--confut-euro-white) !important;
}

/* Euro: títulos no bloco branco em hero são brancos (sobre imagem) */
.confut-euro-theme .event-content-white h1,
.confut-euro-theme .event-content-white h2,
.confut-euro-theme .event-content-white h3,
.confut-euro-theme .event-content-white h4,
.confut-euro-theme .event-content-white h5,
.confut-euro-theme .event-content-white h6 {
  color: var(--confut-euro-white);
  font-family: var(--event-font);
}

.confut-euro-theme .event-content-white p,
.confut-euro-theme .event-content-white li {
  color: #35404e;
}

h5.s2,
.box-highlight {
  background-color: var(--confut-euro-white);
}

h1.ultra-big span {
  padding-right: 5px;
  letter-spacing: -.025em;
  font-size: 110px;
  color: #ffffff;
  font-family: var(--event-font) !important;
}

/* ---------- Hero ---------- */
.confut-euro-theme #section-hero {
  position: relative;
}

.confut-euro-theme #section-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.88;
  z-index: 1;
  pointer-events: none;
}

.confut-euro-theme #section-hero .container,
.confut-euro-theme #section-hero .jarallax-img {
  position: relative;
  z-index: 2;
}

.confut-euro-theme #section-hero h1,
.confut-euro-theme #section-hero h1.text-uppercase,
.confut-euro-theme #section-hero h1 .text-gradient {
  font-family: var(--event-font);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.confut-euro-theme #section-hero .countdown-s2,
.confut-euro-theme #section-hero .countdown-s2 * {
  color: var(--confut-euro-white);
}

.confut-euro-theme .de-gradient-edge-bottom {
  background: linear-gradient(to bottom, rgba(19, 41, 75, 0.15), transparent) !important;
  height: 48px;
  position: relative;
  z-index: 2;
}

/* ---------- Typography ---------- */
.confut-euro-theme h1 {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: 1.2rem;
  color: var(--confut-euro-dark-blue);
  font-family: var(--event-font);
}

.confut-euro-theme h2 {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1rem;
  color: var(--confut-euro-dark-blue);
  font-family: var(--event-font);
}

.confut-euro-theme h3,
.confut-euro-theme h4 {
  font-family: var(--event-font);
  color: var(--confut-euro-dark-blue);
}

.confut-euro-theme h2.text-uppercase,
.confut-euro-theme h1.text-uppercase {
  color: var(--confut-euro-dark-blue);
  font-weight: 700;
  letter-spacing: 0.03em;
}

.confut-euro-theme .text-line {
  color: var(--confut-euro-primary);
  font-weight: 600;
}

.confut-euro-theme .text-gradient {
  color: var(--confut-euro-primary);
  background: none;
  font-weight: 700;
}

.confut-euro-theme .subtitle {
  color: var(--confut-euro-dark-blue);
  font-family: var(--event-font);
  font-weight: 600;
}

.confut-euro-theme .subtitle.bg-grey {
  background-color: var(--confut-euro-white) !important;
  color: var(--confut-euro-dark-blue);
}

.confut-euro-theme .subtitle.bg-white {
  background-color: var(--confut-euro-white) !important;
  color: var(--confut-euro-dark-blue);
}

.confut-euro-theme .subtitle.bg-color {
  background-color: var(--confut-euro-primary) !important;
  color: var(--confut-euro-white) !important;
}

.confut-euro-theme p,
.confut-euro-theme .lead {
  font-family: var(--event-font);
}

.confut-euro-theme .lead {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.6;
}

/* ---------- Buttons: borda 2px (opcional) ---------- */
.confut-euro-theme .btn-main,
.confut-euro-theme .btn-main.big,
.confut-euro-theme a.btn-main {
  border: 2px solid var(--confut-euro-primary);
  padding: 14px 36px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.confut-euro-theme .btn-main.big,
.confut-euro-theme a.btn-main.big {
  padding: 18px 44px;
  min-height: 54px;
}

.confut-euro-theme .btn-main:active {
  transform: translateY(0);
}

.confut-euro-theme input[type=submit].btn-main {
  width: auto;
  min-width: 200px;
}

/* ---------- Links ---------- */
.confut-euro-theme a {
  color: var(--confut-euro-primary);
  text-decoration: none;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.confut-euro-theme a:not(.btn-main):hover,
.confut-euro-theme a:not(.btn-main):focus {
  color: var(--confut-euro-blue-accent);
}

.confut-euro-theme .btn-text {
  color: var(--confut-euro-dark-blue);
  font-weight: 600;
  font-family: var(--event-font);
}

.confut-euro-theme .btn-text:hover {
  color: var(--confut-euro-primary);
}

/* ---------- Cards: detalhes Euro ---------- */
.confut-euro-theme .de-pricing-s1 {
  box-shadow: 0 8px 24px rgba(19, 41, 75, 0.08);
}

.confut-euro-theme .de-pricing-s1 .d-content h3 {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.confut-euro-theme .de-pricing-s1 .d-content h3 span {
  font-size: 0.9rem;
  color: var(--confut-euro-gray);
  font-weight: 600;
  display: block;
  text-transform: capitalize;
  margin-top: 0.5rem;
  letter-spacing: 0.02em;
}

.confut-euro-theme .de-pricing-s1 .d-list li.no {
  color: var(--confut-euro-gray);
  text-decoration: line-through;
}

.confut-euro-theme .de-pricing-s1 .d-list li.no:before {
  color: var(--confut-euro-light-gray);
}

.confut-euro-theme .de-pricing-s1 .d-deco-top {
  background: linear-gradient(135deg, var(--confut-euro-primary) 0%, rgba(226, 123, 12, 0) 50%);
  opacity: 0.08;
}

.confut-euro-theme .de-pricing-s1 .d-deco-bottom {
  background: linear-gradient(-45deg, var(--confut-euro-dark-blue) 0%, rgba(19, 41, 75, 0) 50%);
  opacity: 0.06;
}

.confut-euro-theme .de-pricing-s1 .d-image-deco {
  opacity: 0.12;
}

.confut-euro-theme .bg-white.p-2.pb-0.mb-4.rounded-10,
.confut-euro-theme .de_testi.s2 {
  background-color: var(--confut-euro-white) !important;
  border: 1px solid var(--confut-euro-light-gray);
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(19, 41, 75, 0.06);
}

.confut-euro-theme .de_testi.s2 blockquote {
  border-left: 4px solid var(--confut-euro-primary);
}

/* ---------- Sections ---------- */
.confut-euro-theme #section-content {
  padding: 80px 0;
  background-color: var(--confut-euro-white);
}

.confut-euro-theme .no-top {
  padding-top: 60px !important;
}

.confut-euro-theme section.bg-dark,
.confut-euro-theme section.section-dark {
  background-color: var(--confut-euro-dark-blue) !important;
  color: var(--confut-euro-white);
}

.confut-euro-theme section.bg-dark h2,
.confut-euro-theme section.bg-dark h3,
.confut-euro-theme section.bg-dark h4,
.confut-euro-theme section.section-dark h2,
.confut-euro-theme section.section-dark h3,
.confut-euro-theme section.section-dark h4 {
  color: var(--confut-euro-white);
}

.confut-euro-theme section.bg-dark .id-color,
.confut-euro-theme section.section-dark .id-color {
  color: var(--confut-euro-primary) !important;
}

.confut-euro-theme section.bg-color {
  background-color: var(--confut-euro-primary) !important;
  color: var(--confut-euro-white);
}

.confut-euro-theme .spacer-single,
.confut-euro-theme .spacer-double {
  flex-shrink: 0;
}

/* ---------- Euro: "Coming Soon" & credential cards ---------- */
.confut-euro-theme .event-coming-soon-block {
  background: rgba(19, 41, 75, 0.9);
  border-radius: 18px;
  padding: 32px 28px;
  text-align: center;
  border: 1px solid rgba(211, 162, 64, 0.45);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.45);
}

.confut-euro-theme .event-coming-soon-eyebrow {
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--confut-euro-gold);
  font-weight: 600;
}

.confut-euro-theme .event-coming-soon-title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #ffffff;
}

.confut-euro-theme .event-coming-soon-text {
  font-size: 0.98rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.8);
}

.confut-euro-theme .event-credential-card {
  background: #ffffff;
  border-radius: 20px;
  padding: 28px 26px;
  border: 1px solid var(--confut-euro-light-gray);
  box-shadow: 0 12px 32px rgba(19, 41, 75, 0.08);
}

.confut-euro-theme .event-credential-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--confut-euro-dark-blue);
}

.confut-euro-theme .event-credential-subtitle {
  font-size: 0.98rem;
  color: rgba(19, 41, 75, 0.8);
}

.confut-euro-theme .event-credential-eyebrow {
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--confut-euro-gold);
  font-weight: 600;
}

.confut-euro-theme .event-credential-date,
.confut-euro-theme .event-credential-location {
  font-size: 0.9rem;
  color: rgba(19, 41, 75, 0.85);
}

.confut-euro-theme .event-credential-chip {
  background: rgba(19, 41, 75, 0.035);
  border-radius: 12px;
  padding: 14px 14px 12px;
  border: 1px dashed rgba(19, 41, 75, 0.18);
  height: 100%;
}

.confut-euro-theme .event-credential-chip-label {
  display: inline-block;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--confut-euro-primary);
  font-weight: 600;
  margin-bottom: 4px;
}

.confut-euro-theme .event-credential-chip p {
  font-size: 0.9rem;
  color: rgba(19, 41, 75, 0.85);
}

.confut-euro-theme .event-credential-note {
  font-size: 0.85rem;
  color: rgba(19, 41, 75, 0.8);
}

.confut-euro-theme .event-credential-sidecard {
  background: linear-gradient(145deg, #13294b, #091320);
  border-radius: 18px;
  padding: 22px 20px;
  color: #ffffff;
  border: 1px solid rgba(211, 162, 64, 0.4);
}

.confut-euro-theme .event-credential-sidecard-title {
  font-size: 1rem;
  font-weight: 600;
}

.confut-euro-theme .event-credential-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

.confut-euro-theme .event-credential-list li {
  font-size: 0.9rem;
  margin-bottom: 6px;
  position: relative;
  padding-left: 18px;
}

.confut-euro-theme .event-credential-list li:before {
  content: "•";
  position: absolute;
  left: 2px;
  top: 0;
  color: var(--confut-euro-gold);
}

.confut-euro-theme .event-credential-sidecard-footnote {
  font-size: 0.8rem;
  opacity: 0.85;
}

.confut-euro-theme .event-media-grid-main-inner {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
}

.confut-euro-theme .event-media-grid-main-inner img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.confut-euro-theme .event-media-grid-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.78));
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 24px 22px;
}

.confut-euro-theme .event-media-grid-tag {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: rgba(255, 255, 255, 0.8);
}

.confut-euro-theme .event-media-grid-title {
  font-size: 1.4rem;
  font-weight: 600;
  color: #ffffff;
}

.confut-euro-theme .event-media-card {
  height: 100%;
}

.confut-euro-theme .event-media-thumb {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  background: #000;
}

.confut-euro-theme .event-media-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.confut-euro-theme .event-media-play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, 0.8);
  background: rgba(0, 0, 0, 0.45);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  cursor: pointer;
}

.confut-euro-theme .event-media-caption {
  margin-top: 10px;
  font-size: 0.9rem;
  color: rgba(19, 41, 75, 0.9);
  font-weight: 500;
}

.confut-euro-theme .event-stats-grid .event-stat-card {
  background: rgba(19, 41, 75, 0.9);
  border-radius: 18px;
  padding: 20px 16px 18px;
  border: 1px solid rgba(211, 162, 64, 0.32);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.4);
}

.confut-euro-theme .event-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  margin: 0 auto 10px;
  background: rgba(211, 162, 64, 0.14);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--confut-euro-gold);
  font-size: 1.2rem;
}

.confut-euro-theme .event-stat-value {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 2px;
  color: #ffffff;
}

.confut-euro-theme .event-stat-label {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 767.98px) {
  .confut-euro-theme .event-coming-soon-block,
  .confut-euro-theme .event-credential-card {
    padding: 22px 18px;
  }
}

.confut-euro-theme hr,
.confut-euro-theme .de-gradient-edge-top {
  border-color: var(--confut-euro-light-gray);
  background: linear-gradient(to right, transparent, var(--confut-euro-light-gray), transparent);
  height: 1px;
  opacity: 0.8;
}

/* ---------- Scroll progress ---------- */
.confut-euro-theme .scrollbar {
  background: linear-gradient(to right, var(--confut-euro-dark-blue), var(--confut-euro-primary)) !important;
  height: 4px;
}

/* ---------- Form placeholder ---------- */
.confut-euro-theme .form-control::placeholder {
  color: var(--confut-euro-gray);
}

.confut-euro-theme .form-control:focus {
  box-shadow: 0 0 0 3px rgba(226, 123, 12, 0.12);
}

/* ---------- Accordion hover ---------- */
.confut-euro-theme .accordion-section-title:hover {
  background-color: rgba(0, 0, 0, 0.5);
  border-color: var(--confut-euro-gray);
}

.confut-euro-theme .accordion-section-title.active {
  background-color: rgba(226, 123, 12, 0.06);
}

/* ---------- Marquee ---------- */
.confut-euro-theme .de-marquee-list .d-item-txt {
  color: var(--confut-euro-white);
  font-family: var(--event-font);
}

.confut-euro-theme .de-marquee-list .d-item-block {
  background-color: var(--confut-euro-primary) !important;
}

.confut-euro-theme section.bg-color .d-item-block.bg-white {
  background-color: var(--confut-euro-white) !important;
}

/* ---------- Responsive Euro ---------- */
@media (max-width: 1199.98px) {
  .confut-euro-theme h1 { font-size: 2.4rem; }
  .confut-euro-theme h2 { font-size: 1.9rem; }
}

@media (max-width: 991.98px) {
  .confut-euro-theme #section-hero h1.ultra-big { font-size: 2.4rem; }
  .confut-euro-theme h1 { font-size: 2.2rem; }
  .confut-euro-theme h2 { font-size: 1.7rem; }
  .confut-euro-theme #section-content { padding: 60px 0; }
}

@media (max-width: 767.98px) {
  .confut-euro-theme #section-hero h1.ultra-big { font-size: 2rem; }
  .confut-euro-theme h1 { font-size: 1.8rem; margin-bottom: 1rem; }
  .confut-euro-theme h2 { font-size: 1.4rem; margin-bottom: 0.8rem; }
  .confut-euro-theme h3 { font-size: 1.2rem; }
  .confut-euro-theme input[type=submit].btn-main { width: 100%; }
  .confut-euro-theme #section-hero .d-flex.flex-wrap.gap-3 { flex-direction: column; }
  .confut-euro-theme #section-hero .d-flex.flex-wrap.gap-3 .btn-main { width: 100%; }
}

@media (max-width: 575.98px) {
  .confut-euro-theme #section-hero h1.ultra-big { font-size: 1.6rem; }
  .confut-euro-theme h1 { font-size: 1.5rem; }
  .confut-euro-theme h2 { font-size: 1.2rem; }
  .confut-euro-theme h3 { font-size: 1rem; }
  .confut-euro-theme #section-content { padding: 40px 0; }
  .confut-euro-theme .de-pricing-s1 .d-list li { padding: 0.8rem 0; font-size: 0.9rem; }
}

/* Event tickets: same markup as Buy Tickets (white section) */
/* Ticket cards: css/event-tickets-section.css */