/*
Theme Name: C-UAS Strategy Forum
Author: Tenacity Works
Version: 1.0
*/


body {
  font-family: "Inter", sans-serif;
  color:#0F141A;
  font-size: 16px;
  font-weight: 400;
}

h1{
   color: #131D31;
    font-size: 40px;
  font-weight: 600;
  line-height: 56px; /* 140% */
  letter-spacing: -0.3px;
  margin-bottom:20px;
}

h2{
  color: #131D31;
    font-size: 40px;
  font-weight: 600;
  line-height: 56px; /* 140% */
  letter-spacing: -0.3px;
  margin-bottom:20px;
}
h3, #content .form-style .gform_confirmation_message_2 h3{
  color: #DB0B2D;
  font-size: 20px;
  font-weight: 700;
  line-height: 32px; /* 160% */
  letter-spacing: -0.3px;
}
 body .simpay-styled .simpay-form-title{display:none;}
h3.wp-block-heading{margin-bottom:25px;}
h4{
  color:  #0F141A;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px; /* 140% */
  letter-spacing: -0.3px;
  margin-bottom:10px;
}
h5{
  color:  #0F141A;
  font-size: 16px;
  font-weight: 700;
  line-height:  18px; /* 112.5% */
  letter-spacing: 1.6px;
  text-transform: uppercase;
}
p{
  line-height: 28px; /* 175% */
  letter-spacing: -0.3px;
}
/* Lists */
ul, ol {
  margin: 1rem 0 1rem 1.5rem;
  padding: 0;
  line-height: 1.6;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

ul ul,
ol ol,
ul ol,
ol ul {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

/* Bold Text */
strong {
  font-weight: 600;
}
.wp-block-separator{
  border-top: 1px solid #E9E9E9;
  padding-top: 50px;
  margin-top: 50px;
}
 .mobile-break{display:none;}
/* Blockquotes */
blockquote {
  margin: 1.5rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #ccc;
  background: #f9f9f9;
  color: #333;
  font-style: italic;
}

blockquote p {
  margin: 0;
}

/* Code (if needed) */
code {
  background: #f3f3f3;
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  font-family: monospace;
  font-size: 0.95rem;
}

/** nav **/
 #menuNav  ul{
  display:flex;
  align-items: center;
  list-style: none;
  margin:0;
}
 #menuNav ul li{
  font-size: 16px;
  font-weight: 400;
  line-height:24px;
  letter-spacing: -0.3px;
 }
 .event-name{
  color:  #161D26;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.3px; 
 }
 .event-name a{
  display:flex;
  align-items:center;
 }
  .event-name svg{margin-right:8px;}
#menuNav ul li a:hover {
  background: #F3F3F7;
  border-radius: 8px;
}
#menuNav ul li a {
  display: block;
  padding: 8px 16px;
  transition: color 0.2s;
  color:#161D26;
}
#menuNav ul li#menu-item-93{margin-left:16px;}
#menuNav ul li#menu-item-93 a {
  border-radius: 20px;
  background: #DB0B2D;
  color: #FFF;
  padding: 8px 24px 10px;
  position: relative;
  display: inline-block;
  text-decoration: none;
  z-index: 1;
  transition: box-shadow 220ms cubic-bezier(.2,.9,.2,1);
  white-space: nowrap;
  display: inline-block;
}
.logout-link,  .menu-item-logout{display:none;}
/* Bigger, subtler glow on hover */


/** banner **/

.event-info{
  color:  #0F141A;
  font-family: "Amazon Ember", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height:  18px; /* 112.5% */
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin-bottom:32px;
}
.banner-description p{
  color:  #FFFFFF;
  font-size: 22px;
  font-weight: 400;
  line-height: normal;
}

.button {
  position: relative;
  z-index: 1;
  background: #DB0B2D; /* button color */
  font-weight:500;
  color: white;
  padding: 8px 24px 10px;
  border-radius: 20px;
  position: relative;
  border: 0;
  cursor: pointer;
  display:inline-block;
  line-height:24px;
}
.glow-wrap {
  position: relative;
  display: inline-block;
}
.glow-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background: linear-gradient(90deg, #962EFF 0%, #5C7FFF 30%, #09F 50%, #B8E7FF 70%, #8575FF 100%);
  filter: blur(12px);
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
  z-index: 0;
  width:97%;
}

.glow-wrap:hover::before {
  opacity: 0.75;
}
.learn-more{
  text-shadow: rgba(0, 7, 22, 0.12);
  font-size: 16px;
  font-weight: 400;
  line-height: 32px; /* 175% */
}
/** form **/
.form-style_wrapper{
    border: 1px solid #919191;
    padding: 20px 20px 20px 20px;
    border-radius: 16px;
    margin-bottom:20px;
    max-width:600px;
    position:relative;
}
.form-style_wrapper .gform_heading{margin-bottom:20px;}
#content .form-holder p{margin-bottom:0;}
.register h3{
  max-width:600px;
  margin-bottom:20px;
}
#content .form-style h3{
  color:  #0F141A;
  font-family: "Open Sans", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height:24px;
  letter-spacing: -0.3px;
  margin-bottom: 24px;
}
#content .form-style label{
  color: #0F141A;
  font-family: "Open Sans", sans-serif;
  font-size:  14px;
  font-weight: 700;
  line-height: 20px; /* 142.857% */
  margin: 0 0 10px 0;
}
#content .form-style_wrapper .gform_heading p{
  margin:0 0 0;
  font-size: 14px;
font-weight: 400;
line-height: 100%;
letter-spacing: -0.3px;
}
#content .form-style .gfield_checkbox label{font-weight:400;}
#content .form-style input{
  margin-bottom:20px;
  border-radius:8px;
  border: 2px solid #919191;
  background: #FFF;
  padding:4px 12px;
  color:#0F141A;
  max-width:379px;
  min-width:353px;
  border-radius:8px;
}
#content .form-style textarea{
  margin-bottom:20px;
  max-width:379px;
  height:122px;
  border-radius:8px;
  min-block-size: unset;
}
.gfield_consent_label .gform-field-label__text{
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: -0.3px;
  position: relative;
  top: -3px;
  left: 5px;
}
.gform_confirmation_message_2 h1{
  color:  #131D31;
  font-size: 40px;
  font-weight: 600;
  line-height: 56px; /* 140% */
letter-spacing: -0.3px;
max-width:600px;
margin-bottom:20px;
}
#gform_2_validation_container ol {
  padding: 0;
}
#gform_2_validation_container ol li {
  list-style: none;
}
#gform_2_validation_container ol li a{
  color:#0F141A;
font-size: 14px;
font-weight: 400;
line-height: 20px;
letter-spacing: -0.3px;
text-decoration:none;
}
#content .gform-theme--foundation .form-style .chosen-container{
   max-width:379px;
  margin-bottom:20px;
}
#content .gform-theme--foundation .form-style .chosen-search-input{
  margin-bottom: 0;
  line-height: 0;
  background-position: 5px 7px;
  background-repeat: no-repeat;
}
#content .gform-theme--foundation .form-style .chosen-single{text-decoration: none; color: unset;border-radius:8px; border:2px solid #919191}
#content .gform-theme--foundation .form-style .chosen-single:after{content:none;}
#content .gform-theme--foundation .form-style .chosen-single span{font-style: italic;line-height:250%}
#content .gform-theme--foundation .form-style .chosen-search-input{padding-left:25px;}
input::placeholder, textarea::placeholder{
  color: #919191;
  font-size: 14px;
  font-style: italic !important;
font-weight: 400;
  line-height: 20px; /* 142.857% */
}
.form-style  .gform-footer.gform_footer.top_label{position:absolute;right:0;margin-top:40px;}
#content .gform-theme--foundation .form-style  .gform_fields{
  grid-row-gap: 0;
  row-gap: 0;
}
#content .gform-theme--framework .form-style .gfield--type-choice .gfield_checkbox{
  gap: 20px; 
}
#content .form-style .gfield-choice-input{min-width:unset !important; border-radius:0; padding:0;}
#content .form-style #user_pass{margin-bottom:0;}
.gform-footer.gform_footer.top_label {
  display: flex;
  flex-direction: row-reverse;
}
/* Hide the native Gravity Forms checkbox */
#content .form-style #input_2_12_1, #content .form-style #choice_2_20_1 {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
}

/* Custom checkbox */
#content .form-style #input_2_12_1 + label{
    position: relative;
    padding-left: 26px;
    cursor: pointer;
    display: inline-block;
}

#content .form-style #choice_2_20_1 + label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: inline-block;
    line-height: 0;
}

/* Red checkbox */
#content .form-style #input_2_12_1 + label::before, #content .form-style #choice_2_20_1 + label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 40%;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    background: #DB0B2D;
    border: 1px solid #DB0B2D;
    border-radius: 2px;
    box-sizing: border-box;
}

/* White tick */
#content .form-style #input_2_12_1:checked + label::after, #content .form-style #choice_2_20_1:checked + label::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 40%;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translateY(-65%) rotate(45deg);
}
#content .form-style .submit-butt, #content .form-style #gform_submit_button_2, body .simpay-styled .simpay-form-control .simpay-btn.simpay-checkout-btn:not(.stripe-button-el){
  border-radius:20px;
  border:1px solid #DB0B2D;
  background:#DB0B2D;
  color: var(--text-button-primary-default, #FFF);
  font-family: "Open Sans", sans-serif;
  font-size:14px;
  font-weight: 700;
  line-height: 20px; /* 142.857% */
  padding:4px 20px 5px;
  min-width:unset;
}
#simpay-block-payment-form-310, #simpay-block-payment-form-487 {
  border: 1px solid #919191;
  padding: 20px 20px 8px 20px;
  border-radius: 16px;
  margin-bottom: 20px;
  max-width: 600px;
  position: relative;
}
#content:has(.gform_confirmation_wrapper) .headings,
#content:has(.gform_confirmation_message) .headings {
    display: none !important;
}
body .simpay-checkout-form--embedded.simpay-styled {
  max-width: 379px;
}
.space-payment{margin-bottom:1px;}

/* 1) Hide native checkbox but keep it accessible */
.gform_wrapper .gfield_checkbox input[type="checkbox"]{
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* 2) Space for the custom box */
.gform_wrapper .gfield_checkbox label{
  position: relative;
  padding-left: 24px;   /* room for the 16px box */
  line-height: 16px;
  cursor: pointer;
}

/* 3) Unchecked state: 16x16 box */
.gform_wrapper .gfield_checkbox label::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  border-radius: 4px;          /* rounded corners */
  background: #fff;            /* empty box */
  border: 1px solid #c7cbd1;   /* subtle border */
  box-sizing: border-box;
}

/* 4) Checked state: blue box */
.gform_wrapper .gfield_checkbox input[type="checkbox"]:checked + label::before{
  background: #1a73e8;    /* blue fill */
  border-color: #1a73e8;
}

/* 5) White tick */
.gform_wrapper .gfield_checkbox input[type="checkbox"]:checked + label::after{
  content: "";
  position: absolute;
  left: 5px;
  top: 50%;
  width: 5px;
  height: 9px;
  transform: translateY(-65%) rotate(45deg);
  border-right: 2px solid #fff; /* white tick */
  border-bottom: 2px solid #fff;
}

/* 6) Keyboard focus (optional but recommended) */
.gform_wrapper .gfield_checkbox input[type="checkbox"]:focus + label::before{
  outline: 2px solid #1a73e8;
  outline-offset: 2px;
}

#field_2_19 {
  font-size: 14px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: -0.3px;
  margin-bottom:13px;
}

/** content **/
#content p{margin-bottom:20px;}
#content li{line-height:28px;}
#content a{
  position: relative;
  display: inline-block;
  text-decoration: underline;
  text-decoration-color: #DB0B2D;
  text-underline-offset: 4px;
  color: #DB0B2D;
}
.speakers-wrapper .flex:last-child {
  border: none;
}
.speaker-block p{padding-left:12px;}
.speaker-name{
  color:#131D31;
  font-size: 28px;
  font-weight: 600;
  line-height: 44px; /* 157.143% */
  margin-bottom: 6px;
}
.speaker-meta{
  color:#919191;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px; /* 140% */
  letter-spacing: -0.3px;
  margin-bottom:15px;
}
.speaker-image img {
  border-radius: 20px;
}
.speaker-description p:last-child{margin:0 !important;}
.producer-name, .sponsor-name{
  color: #131D31;
  font-size: 28px;
  font-weight: 600;
  line-height: 44px; /* 157.143% */
  margin-bottom:10px;
}
.sponsors-wrapper{
  border-bottom: 1px solid #E9E9E9;
  padding-bottom: 40px;
  margin-bottom: 30px;
}
#content .sponsor-image a:after{content:none;}
.faqs h2{
  font-size: 28px;
  font-weight: 600;
  line-height: 44px; /* 157.143% */
  margin-bottom:10px;
}
.faq{
  border-bottom:1px solid #E9E9E9;
  margin-bottom:30px;
  padding-bottom:10px;
}
.faq:last-child{
  border:none;
}
.faq:nth-last-child(2){
    border-bottom:1px solid #919191;
}
.home-desc p{
  font-size: 20px;
  font-weight: 400;
  line-height: 32px; /* 160% */
  letter-spacing: -0.3px;
}
/* Hover line growing over underline */
#content a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 4px;
  height: 1px; /* Adjust thickness */
  width: 0;
  background-color: #DB0B2D; /* Hover line color */
  transition: width 0.3s ease;
}

/* Grow the hover line on hover */
#content  a:hover::after {
  width: 100%;
}
#content  a:hover{text-decoration:none;}
h3.agenda-date{
  font-size: 28px;
  font-weight: 600;
  line-height: 44px; /* 157.143% */
  margin-bottom:25px;
  color: #131D31;
}

/** overview **/
.link-item .link-text{
  color: #FFF;
  text-shadow: rgba(0, 7, 22, 0.12);
  font-size: 28px;
  font-weight: 500;
  line-height: 36px; /* 128.571% */
  bottom: 20px;
  left: 40px;
}


/* Table container */
.wp-block-group.table-container {
  display: flex;
  flex-direction: column;
  gap: 10px; /* space between rows */
}
.wp-block-group.table-container p{
  margin-bottom: 10px !important;
  font-size: 16px;
line-height: 1.3;
letter-spacing: -0.3px;

}
.wp-block-group.table-container p:last-child {
    margin-bottom: 0 !important;
}
/* Header row */
.wp-block-group.header-row {
  display: flex;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px; /* 140% */
  letter-spacing: -0.3px;
  margin-bottom:10px;
}
.wp-block-group.header-row .wp-block-column{
  border-left:1px solid #E9E9E9;
  padding:0 12px;
}
.time-block{max-width:180px;}
/* Body rows */
.wp-block-group.table-row {
  display: flex;
  padding: 8px 12px;
  border-radius: 8px;
  transition: transform 0.2s;
}

/* Alternating row gradient */
.wp-block-group.table-row.odd {
  background:#DB0B2D;
}

.wp-block-group.table-row.even {
  background: none; /* transparent / white row */
}

/* Full row gradient (Break, Lunch, etc.) */
.wp-block-group.table-row.full-row {
  border-radius: 8px;
  background:#DB0B2D;
}
.wp-block-group.table-row.full-row p, .wp-block-group.table-row.odd p, .wp-block-group.table-row.full-row p strong, .wp-block-group.table-row.odd p strong{
  color:#FFFFFF;
}
/* Columns */
.wp-block-group.table-row > .wp-block-column,
.wp-block-group.header-row > .wp-block-column {
  flex: 1;
  /* padding: 0 12px; */
}

/* Optional hover */

.cky-btn.cky-btn-reject, .cky-btn.cky-btn-accept {
  background: #DB0B2D !important;
  border-color: #DB0B2D !important;
}
.cky-btn.cky-btn-customize, .cky-btn.cky-btn-preferences {
  border-color: #DB0B2D !important;
  color: #DB0B2D !important;
  background:transparent !important;
}
/* --------------------------------
   Sponsors
-------------------------------- */

.sponsors-track {
    scrollbar-width: none;
}

.sponsors-track::-webkit-scrollbar {
    display: none;
}


/* Carousel mode */

.sponsors-track.is-carousel {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
}

.sponsors-track.is-carousel .sponsor-item {
    scroll-snap-align: start;
}


/* Prevent logo cropping */

.sponsors-track img {
    object-fit: contain;
    max-width: 100%;
    height: auto;
}

.sponsors-prev svg, .sponsors-next svg{
  padding:6px;
  fill:white;

}
/* Mobile */

@media (max-width: 767px) {

    .sponsors-track {
        gap: 0;
    }

    .sponsor-item {
        flex-shrink: 0;
    }

    .sponsors-track.is-carousel {
        gap: 20px;
        overflow-x: auto;
        overflow-y: hidden;

        scrollbar-width: none;
        -ms-overflow-style: none;

        scroll-behavior: smooth;
    }

    .sponsors-track.is-carousel::-webkit-scrollbar {
        display: none;
    }

    .sponsors-track.is-carousel .sponsor-item {
        flex: 0 0 calc(100% - 20px) !important;
        width: calc(100% - 20px) !important;
        min-width: 0;
    }

    .sponsors-track.is-carousel .sponsor-item > a,
    .sponsors-track.is-carousel .sponsor-item > div {
        width: 100% !important;
        max-width: 100%;
        box-sizing: border-box;
    }

    .sponsors-track.is-carousel .sponsor-item img {
        display: block;
        width: auto;
        max-width: 173px;
        height: auto;
        max-height: 100px;
        object-fit: contain;
    }

}


/** footer **/
footer p{
  color:#FFF;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px; /* 142.857% */
}

footer a{
  color:#B4B4BB;
  text-decoration: none;
  position: relative;
}

footer a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 0;
  background-color: #B4B4BB;
  transition: width 0.3s ease;
}

footer a:hover::after {
  width: 100%;
}
.foot-meta a{
  height: 23px;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.socials a::after{
  content:none;
}
.back-top{
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px; /* 142.857% */
  color:#FFF;
}
.back-top:hover {
  color: #B4B4BB;
}
.back-top:hover > svg path{
  fill:#B4B4BB;
}
.sponsor-item span{
  font-size: 16px;
  font-weight: 400;
  line-height: 100%; /* 16px */
  letter-spacing: -0.3px;
}
@media (max-width: 1260px) {
  .container {
  padding: 0 20px;
}
.link-item img {
  object-fit: unset;
}
}
@media (max-width: 767px) {
  .banner{
    background-position:35% !important;
  }
  .mobile-break{display:block;margin-bottom:20px;}
  .event-name{line-height:16px;}
  .logo{margin:0 auto;}
  header .location{display:none;}
  h1{
  font-size: 28px;
  line-height: 36px; /* 128.571% */
  letter-spacing: -0.48px;
  margin-bottom:13px;
  }
  h2{
    font-size: 28px;
  line-height: 36px; /* 128.571% */
  letter-spacing: -0.48px;
  margin-bottom:13px;
  }
  h3{
 font-size: 16px;
line-height: 28px; /* 175% */
letter-spacing: -0.3px;
  margin-bottom:10px;
  }
  h4{
    font-size: 18px;
font-weight: 600;
line-height: 28px; /* 155.556% */
letter-spacing: -0.3px;
  }
  h3.agenda-date{
   font-size: 20px;
  font-weight: 600;
  line-height: 28px; /* 140% */
  letter-spacing: -0.3px;
  }
  .banner-description p{
    font-size: 18px;
    line-height: 28px; /* 155.556% */
    letter-spacing: -0.3px;
    max-width:247px;
  }
.home-desc p{
  font-size: 16px;
line-height: 28px; /* 175% */
letter-spacing: -0.3px;
}
.home-desc h3{
  margin-bottom:0 !important;
}
.order-2{
  order:2;
}
.wp-block-group.table-row{padding-bottom:3px;}
.wp-block-group.table-container p{
  font-size:14px;
  font-weight: 400;
line-height: 20px; /* 142.857% */
}
hr{display:none;}
body .is-layout-flex{margin-bottom:0;}
  #menuNav ul{
  border-top:1px solid #E9E9E9;
  display:block;
  margin-top:14px;
  padding-top:14px;
}
#menuNav ul li a{
  margin-bottom: 6px;
}
#menuNav ul li#menu-item-93{margin-left:0;}
#menuNav ul li a:focus{background:#1B232D; color:#FFF;}
#menuNav ul li#menu-item-93 a {
  border-radius: 0;
  background: none;
  color: #161D26;
  padding: 8px 16px;
}
#menuNav ul li#menu-item-93 a:hover{box-shadow:none;}
.speaker-block p{padding-left:0;}
.speakers-wrapper{margin-top:25px;}
.speaker-image-holder{width:100%; height:auto;}

.speaker-name{
  font-size: 20px;
font-weight: 600;
line-height: 28px; /* 140% */
letter-spacing: -0.3px;
}
.speaker-meta{
  font-size: 18px;
font-style: normal;
font-weight: 600;
line-height: 28px; /* 155.556% */
letter-spacing: -0.3px;
}
#content .form-style #input_2_12_1 + label::before, #content .form-style #choice_2_20_1 + label::before {top:10px}
.wp-block-group.header-row{display:none;}
.wp-block-column {
  margin-bottom: 12px;
}
.wp-block-group.table-row{display:block;}
body .form-style input{min-width:auto;width:100%;}
#content .form-style input{
  min-width:unset;
}
.faqs h2, .producer-name, .sponsor-name{
  font-size: 20px;
font-weight: 600;
line-height: 28px; /* 140% */
letter-spacing: -0.3px;
}
.sponsors-wrapper{
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#content .form-style #choice_2_20_1 + label{line-height:120%;}
.link-item img {
  object-fit: cover !important;
    height: 250px !important;
    border-radius: 20px;
}
.link-item .link-text{
  left: 20px;
}
footer a{margin-right:10px;}
.foot-meta svg{margin:10px auto 20px;}
}
