﻿body {font-size:80%}
h1 { font-size: 2.75rem;}
 .field_type_Image, .field_type_GenericHtml { margin: 10px 0 10px 0;}
.swMain ul.anchor li a.selected:hover, .swMain .buttonNext:hover {background-color:#007095;}
.check-radio-select .columns{padding-left:0px !important;}

.swMain .stepContainer { float: none;}

.swMain ul.anchor li a, .swMain .actionBar a { -moz-border-radius: none; -webkit-border-radius: none; border-radius: 0; border: 0;}
.swMain .buttonNext, .swMain .buttonPrevious, .swMain .buttonFinish { margin: 10px 3px 0 3px;padding: 3px;border: 0;}
.swMain .buttonDisabled { border: 0 !important;}

.sub-item { float: left; width: 100%;}

label {font-size:inherit;}
div.check-radio-select {margin-bottom:0.5rem;}
div.check-radio-select input[type="radio"] { float: left;margin-right: 5px;}
.first-dd-item {background-color:#fff; color:#ddd;}
.swMain ul.anchor li a .stepDesc { width: 100%;}

.swMain .buttonNext, .swMain .buttonPrevious, .swMain .buttonFinish { margin: 10px 3px 0 3px;padding: 5px;border: 0;}
.swMain .buttonDisabled { border: 0;}
.multi-postcode-section { background-color: #fff;}
.multi-postcode-section legend { background-color: initial; }
label.error, .panel label.error {
    display: none;
    color: #ffffff;
}
div[servercontroltype="Facebook"], div[servercontroltype="LinkedIn"], div[servercontroltype="Twitter"]
{
	display: inline;
}
#honey_pot_c
{
	display: none !important;
}

select, input[type="text"], input[type="checkbox"], input[type="password"], textarea {
	margin-bottom:0px;
}
#billingDetailsPnl select{
	width: 93%;
}

input[type="radio"] {margin-bottom:5px;}

input[type="checkbox"] {float:left; margin-right:3px;}

label.error {
    padding: 0.375rem 0.5625rem 0.5625rem;
    margin-top: -1px;
    margin-bottom: 1rem;
    font-size: 0.75rem;
    font-weight: normal;
    font-style: italic;
    background: #f04124;
    color: white;
}

label.success {
    padding: 0.375rem 0.5625rem 0.5625rem;
    margin-top: -1px;
    margin-bottom: 1rem;
    font-size: 0.75rem;
    font-weight: normal;
    font-style: italic;
    background: #548b54;
    color: white;
}

label.checked {
    display:none !important;
}
div.group>label.answer_label::before { content: "+ ";}

div.sub_answers {margin-left:10px;}


.remove_colleague {
    cursor:pointer;
    line-height: 20px;
    margin: 0 0 1rem 0.3rem;
}

.remove_colleague img {
    float:left;
    padding-right:0.3rem;
}
/* checkout page styles*/
.payment-title-box { padding: 0px 10px 10px 10px;}
form .row div.m-credit-card-payment div.panel { background-color: #fff; padding: 1rem;}
.m-credit-card-payment .panel>div { margin-bottom: 10px;}

.invoiceme { width: 100%;}

.total-price-container>div>div {
	padding: 5px !important;
	border: 1px dashed #ddd;
	background-color: #f9f9f9;
}


/* Product styles */
label[for='discount_selector_text_field'].success { background-color: #548b54;}
label[for='discount_selector_text_field'].alert { background-color: #f04124;}
#discount_selector_text_field.success { border: 1px solid #548b54;}
#discount_selector_text_field.alert { border: 1px solid #f04124;}

input.productQuantity { margin-bottom: 0;}
div.field_type_SpecificProductSelector { margin-bottom: 15px;}
input[type=checkbox].inputProductSelector { margin-top: 2px;}
.summary-container>div.columns { margin-bottom: 10px;}
div.summary-value div[class*="sum-"] {border-top: 1px dashed #999;padding: 10px 0px 10px 0px !important;}
.summary-main-container { display: none;}
.product-item-quantity { margin-bottom: 10px;}
.productQuantity { margin-bottom: 0;}
input[type="checkbox"] + label, input[type="radio"] + label  {display:inline;margin-left: 0;}

div.reset-question-margin label {margin-bottom:0px;}

/* Colleague Style Section*/
.colleague_subform { background-color: #ffffff;} 

/* Small screens */
@media only screen { } /* Define mobile styles */

@media only screen and (max-width: 40em) {

.swMain .stepContainer div.content {width:100%;}
/*Postcode loockup fix for small screed*/
div#MB_window { width: 100% !important; left: 0 !important;}

/*input type checkbox for small devices*/

input[type="checkbox"] {
	display: none;
}

	input[type=checkbox] ~ span, input[type=checkbox] + label, .inputProductSelector ~ label {
		display: block;
 
		width: 80%;
		padding: 2px 5px;    
		cursor: pointer;
	
		padding-left: 25px;
		background-image:url('../../../images/checkbox_unchecked.png');
		background-size: 20px;
		background-repeat: no-repeat;
		background-position: left center;
		min-height: 20px;
	}

	input[type=checkbox]:checked ~ span, input[type=checkbox]:checked + label, .inputProductSelector:checked ~ label{
     
		background-image:url('../../../images/check_green.png');
	}
	
/*input type radio for small devices*/

	input[type=radio] { display: none;}

	input#tac_cb { display:block; }

	input[type=radio] + label.answer_label, input[type=radio] + label.indented, input[type=radio] + span {
	display: block;
	background: #eee;
	border: 1px solid gray;
	    width: 100%;
	padding: 6px 0px 6px 5px;
	border-radius: 5px;
	cursor: pointer;
	    margin: 5px 0 0 0;
}

	input[type=radio]:checked + label.answer_label, input[type=radio]:checked + label.indented,  input[type=radio]:checked + span {
    color: #fff;
    font-weight: bold;
   background-size: 20px;
    border: 2px solid #548B54;
	
	background: url('../../../images/checked.png') right 5px center no-repeat,  -webkit-gradient(
	linear,
	left top,
	left bottom,
	color-stop(0, #7CCD7C),
	color-stop(1, #6FB76F)
);

background: url('../../../images/checked.png') right 5px center no-repeat, -o-linear-gradient(bottom, #7CCD7C 0%, #6FB76F 100%);
 background: url('../../../images/checked.png') right 5px center no-repeat, -moz-linear-gradient(bottom, #7CCD7C 0%, #6FB76F 100%);
 background: url('../../../images/checked.png') right 5px center no-repeat, -webkit-linear-gradient(bottom, #7CCD7C 0%, #6FB76F 100%);
 background: url('../../../images/checked.png') right 5px center no-repeat, -ms-linear-gradient(bottom, #7CCD7C 0%, #6FB76F 100%);
 background: url('../../../images/checked.png') right 5px center no-repeat, linear-gradient(to bottom, #7CCD7C 0%, #6FB76F 100%);
}

    div.swMain {padding-top:0px}
	label.contact_label, label.question_label { padding-bottom: 0.350rem; font-weight:bold;}
	.columns {padding-left:1px; padding-right:1px;}
	label.stepNumber {margin-bottom:0px;}
	div.swMain ul.anchor { width:auto; float: none;}

	div.swMain ul.anchor li {clear:none;}

	div.swMain ul.anchor li a {width:100%; height:auto;}
	div.swMain ul.anchor li a .stepNumber {width:auto; font-size:1rem; }
	label.inline {margin-bottom:0;}
	input[type="button"] {margin-top:0.3rem;}
	div.actionBar a.button { width: 101px;}

 } /* max-width 640px, mobile-only styles, use when QAing mobile issues */


   /*Seminar Planner desktop styles*/

.seminarTracks {
	font-weight: bold;
}




/* Medium screens */
@media only screen and (min-width: 40.063em) { 
	ul.medium-block-grid-1 {
		float:none;
	}
	.swMain ul.anchor { margin: 5px 0 0 0;}
	
} /* min-width 641px, medium screens */

@media only screen and (min-width: 40.063em) and (max-width: 64em) {

.swMain .stepContainer div.content {width:100%;}
    label.contact_label, label.question_label { font-weight:bold;}
	div.swMain ul.anchor { width: 100%;}

    .swMain ul.anchor li { clear: none;}
    .swMain ul.anchor li a {width: 100%; font-size: 0.5rem;}
	.swMain ul.anchor li a .stepDesc { font-size: 12px;}
    form .content>.row { margin: 0 0.5rem; }
 } /* min-width 641px and max-width 1024px, use when QAing tablet-only issues */

/* Large screens */
@media only screen and (min-width: 64.063em) { 
.swMain .stepContainer .StepTitle {margin-bottom:10px;}
.swMain ul.anchor, .swMain ul.anchor li {width:200px;}
.swMain .stepContainer { float: left; margin-left:15px; }
	.swMain .stepContainer div.content {max-width:710px; min-width: 710px;}
    .swMain ul.anchor li a { width: 200px; height: auto; min-height: 70px;}

     form .content>.row { margin: 0 0.5rem; }
} /* min-width 1025px, large screens */

@media only screen and (min-width: 64.063em) and (max-width: 90em) {
	
 } /* min-width 1025px and max-width 1440px, use when QAing large screen-only issues */

 #billingDetailsPnl input[type='text'].invalid {
    border-color: red;
    box-shadow: 0 0 5px red;
}
      body {
        font:normal 14px Arial, sans-serif;
        background-color: #ffffff;
        color: black;
      }
      .swMain .stepContainer div.content, .panel p, label, .panel label {
        font:normal 14px Arial, sans-serif;
      }
      
      .button, .swMain .buttonNext, .swMain .buttonPrevious, .swMain .buttonFinish, .swMain ul.anchor li a.selected, a.resetButton {
      background-color:#008cba;
      }
      
      .main-fg-color-1 {
        background-color: #4d4d4d;
      }

      .main-fg-color-1-hover:hover {
        background-color: #4d4d4d;
        opacity: 0.8;
      }

      .main-fg-color-2 {
        background-color: #008cba;
      }
      
      .button:hover, .md-button:hover, .button.selected {
        background-color: #4d4d4d;
      }

      .button, .md-button {
        background-color: #008cba;
      }

      .main-fg-color-2-hover:hover {
      background-color: #008cba;
        opacity: 0.8;
      }

      .main-bg-color {
        background-color: #ffffff;
      }

      .main-bg-color-hover:hover {
        background-color: #ffffff;
      opacity: 0.8;
      }

      .main-text-color-1 {
        color: #4d4d4d;
      }

      .main-text-color-2 {
        color: #008cba;
      }

      .main-color-stroke-1 {
        stroke: #4d4d4d;
      }

      .main-color-stroke-2 {
        stroke: #008cba;
      }

      .registrant-count::before {
        background-color: #008cba;
      }

      .main-color-fill-1 {
      fill: #4d4d4d;
      }

      .main-color-fill-2 {
        fill: #008cba;
      }

      @media only screen and (max-width: 40em) {
      label.contact_label, label.question_label {
      padding-bottom: 0.350rem;
      font-weight:bold;
      }
      }

      @media only screen and (min-width: 40.063em) and (max-width: 64em) {
      div.panel label.contact_label, div.panel label.question_label { font-weight:bold;}
      }

      .hideIt {
      visibility: hidden;
      pointer-events: none;
      }

      label[class*="subLabel"] {
      font-size: 89.5%;
      font-style: oblique;
      margin-top: 3px;
      margin-left: 1px;
      line-height: 1.30;
      text-align: justify;
      opacity:0.9;
      }
      .check-radio-select.Radio {
      padding: 10px 0 10px 10px;
      }
      .check-radio-select.Radio .demo_question_radio .radio_answer {
      top: 10px;
      z-index: 1;
      }
      .check-radio-select.Radio .demo_question_radio .radio_answer + label.subLabel_ {
      top: 7px;
      }
      .check-radio-select.Radio .demo_question_radio .answer_label.group label.answer_label {
      top: 9px;
      position: relative;
      }
      .check-radio-select.Radio .demo_question_radio .answer_label.group + label.subLabel_  {
      top: 2px;
      }
      .check-radio-select.Radio.MultiBox span label.subLabel_, .check-radio-select.CheckboxList span label.subLabel_  {
      top: -7px;
      }
      .check-radio-select Radio .demo_question_radio .answer_label .group label.subLabel_ {
      top: 3px;
      }
      .check-radio-select.Autocomplete label.subLabel_ {
      top: -5px;
      }
      .check-radio-select label[class*="subLabel"] {
      position: relative;
      }
      .check-radio-select.Textbox div.file {
      position: relative;
      top: 10px;
      }
      .check-radio-select.Textbox div.file + label.subLabel_ {
      top: -6px;
      }
      .multiline {
      margin-bottom: 10px;
      }

    .login-fontcolor {
      color: #008cba;
    }

    .login-button:focus {
    background-color: #4d4d4d;
    }

    .login-hrefcolor {
    color: #008cba;
    }

    a.login-hrefcolor:link {
    color: #008cba;
    }

    a.login-hrefcolor:visited {
    color: #008cba;
    }

    a.login-hrefcolor:hover {
    color: #008cba;
    }

    a.login-hrefcolor:active {
    color: #008cba;
    }

    .login-fontcolor {
    color: #008cba;
    }

    .login-v-word {
    padding-top: 5px;
    padding-bottom: 8px;
    background: #ffffff;
    }

    .login-h-line::before,
    .login-h-line::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #008cba;
    }

    .login-v-wrapper {
    position: relative;
    margin: 0 0 2rem 50%;
    height: 19rem;
    border-left: 1px solid #008cba;
    }



    :root {
  --main-color: #61116a;
  --hover-color: #50005a;
  --anchor-done-color: #50005a;
  --anchor-done-color-hover: #50005a;
  --text-color: #000000;
  --headline-color: #592669;
  --body-color: #efefef;
  --muted-color: #5b5b5b;
  --bg-selected-color: #f3eef7;
}

/* PRODUCT STYLING
-------------------------------- */
.dg-premium:nth-child(1) {
  margin-bottom: 5px !important;
  padding: auto 30px !important;
}
.btn_more_info1,
.btn_more_info {
  margin-left: 10px !important;
}

.btn_more_info1,
.btn_more_info {
  display: inline-block;
  width: 95%;
  margin-left: 25px !important;
}
.btn_more_info1 p,
.btn_more_info p {
  display: inline-block;
}

.more-info-btn1,
.more-info-btn {
  float: right !important;
}

/* MAIN
-------------------------------- */
.logo_section {
  margin: 0 auto !important;
}

.form_field_124 {
  text-align: center;
}
.summary-value-template {
  display: none !important;
}

.message_box {
  width: 50% !important;
  height: fit-content !important;
}
.message_box h3 {
  text-align: center;
}

.form_field_157 {
  margin-bottom: 20px;
}
.form_field_157 .radio_answer {
  padding-bottom: 10px !important;
}

.productQuantity {
  display: none !important;
}

.generated_form {
  border: none !important;
  background: rgba(255, 255, 255, 0) !important;
}

.mandatory {
  color: red !important;
}

.stepContainer {
  width: 100%;
  margin-left: 0 !important;
  box-shadow: -7px 3px 18px 0px rgba(66, 68, 90, 0.14);
}

.content {
  min-width: 100% !important;
  /*border: solid 1px var(--main-color) !important;*/
  border-radius: 0 !important;
  padding: 1rem !important;
  background: rgba(255, 255, 255, 0.85) !important;
}

/*Invitation on thank you page*/
.form_field_121 {
  text-align: center;
}

.form_field_121 button {
  background: var(--main-color) !important;
}

.form_field_121 button .ng-scope {
  color: white !important;
}
.form_field_61 table {
  width: 700px;
}

.showMoreBtn {
  background-color: #f8f9fa;
  border: 1px solid #f8f9fa;
  border-radius: 4px;
  color: #3c4043;
  cursor: pointer;
  font-family: arial, sans-serif;
  font-size: 14px;
  height: 36px;
  line-height: 27px;
  min-width: 54px;
  padding: 0 16px;
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  white-space: pre;
}

.showMoreBtn:hover {
  border-color: #dadce0;
  box-shadow: rgba(0, 0, 0, 0.1) 0 1px 1px;
  color: #202124;
  background-color: #f5f5f5;
}

.showMoreBtn:focus {
  border-color: #f8f9fa;
  outline: none;
  background-color: #f5f5f5 !important;
  color: black !important;
}

#marketing,
#thirdParties {
  display: none;
}

/*.StepTitle {
    border-radius: 0 !important;
    background: none !important;
    margin: 1rem !important;
    padding: 10px !important;
    border: none !important;
    border-bottom: solid 1px var(--main-color) !important;
    display: flex !important;
    justify-content: center !important;
    font-family: Arial, sans-serif !important;
    font-size: 24px !important;
}*/
.StepTitle {
  display: none !important;
  font-family: Arial, sans-serif !important;
  font-size: 18px !important;
}

.contact_label,
.question_label {
  font-weight: bold !important;
}

h4,
label,
span,
p {
  color: var(--text-color) !important;
}

label.error {
  color: white !important;
}

.field_type_SubTitle h2 {
  border-left: 4px solid var(--main-color) !important;
  padding-left: 10px;
  font-size: 19px;
  font-weight: bold !important;
  font-family: Arial, sans-serif !important;
  margin: 25px 0;
  color: var(--headline-color) !important;
}

.dg-transparent {
  border: none !important;
  /*box-shadow: #b088b4 0px 0px 30px 10px;*/
  background: rgba(255, 255, 255, 0) !important;
}

.dg-logo {
  padding-top: 1rem !important;
}

/* Quantity
-------------------------------- */
.form_field_108 {
  text-align: center;
}

.form_field_108 .row {
  width: 230px;
  display: inline-block;
}

.form_field_108 p {
  font-size: 18px;
  font-weight: bold;
  margin: 0.5rem;
}

/* ThankYou
-------------------------------- */

.conf_page p {
  margin-bottom: 0;
}

.conf_page,
.checkout {
  background-color: white !important;
  margin-top: 10px !important;
  /*border: solid 1px var(--main-color) !important;*/
  box-shadow: -7px 3px 18px 0px rgba(66, 68, 90, 0.14);
}

/* Simplereg
-------------------------------- */
.simplereg_page {
  background: white !important;
  border: solid 1px var(--main-color) !important;
  margin-top: 30px;
  padding: 80px 20px !important;
  border-radius: 15px !important;
  display: none;
  box-shadow: none !important;
}

.simplereg_page h3,
.simplereg_page p {
  text-align: center;
  font-family: Arial, sans-serif !important;
  font-weight: bold !important;
}

.simplereg_page .logo_section {
  margin-top: 1.25rem !important;
}

.dg-flags {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.dg-flags > div {
  margin: 10px;
  padding: 15px 45px !important;
  text-align: center !important;
}

.dg-flags a {
  font-size: 1.2rem;
  color: white !important;
  letter-spacing: 3px;
}

.dg-simplereg-gb {
  background: #61116a;
  transition: background 0.2s ease;
}

.dg-simplereg-gb:hover {
  background: #72227b;
}

.dg-simplereg-fr {
  background: #118ca0;
  transition: background 0.2s ease;
}

.dg-simplereg-fr:hover {
  background: #22adb1;
}

.dg-simplereg-de {
  background: #000;
  transition: background 0.2s ease;
}

.dg-simplereg-de:hover {
  background: #333;
}

.form_field_52 a {
  margin: 10px auto !important;
}

.form_field_52 span {
  color: white !important;
}

.dialog-content {
  padding: 40px 30px !important;
}

/* ANCHOR
-------------------------------- */
ul.anchor {
  width: 100% !important;
  border: 0px;
  display: flex !important;
  justify-content: center !important;
  margin-bottom: 5px !important;
}

ul.anchor li {
  width: 100% !important;
  margin: 0 5px !important;
}

ul.anchor li:first-child {
  width: 100% !important;
  margin-left: 0 !important;
}

ul.anchor li:last-child {
  width: 100% !important;
  margin-right: 0 !important;
}

ul.anchor li a {
  width: 100% !important;
  min-height: auto !important;
  display: grid !important;
  justify-content: center !important;
}

ul.anchor li a > * {
  color: white !important;
  align-items: center;
}

ul.anchor li a > *:hover {
  color: white !important;
}

ul.anchor li a.selected {
  background: var(--main-color) !important;
  border: solid 1px var(--main-color) !important;
  box-shadow: none !important;
}

ul.anchor li a.selected:hover {
  background: var(--hover-color) !important;
  box-shadow: none !important;
  border: solid 1px var(--hover-color) !important;
}

ul.anchor li a.selected:hover > * {
  color: white !important;
}

ul.anchor li a.done {
  background: var(--anchor-done-color) !important;
  border: solid 1px var(--anchor-done-color) !important;
}

ul.anchor li a.done:hover {
  background: var(--anchor-done-color-hover) !important;
  border: solid 1px var(--anchor-done-color-hover) !important;
}

ul.anchor li a.done > * {
  color: white !important;
}

ul.anchor li a.disabled > * {
  color: var(--main-color) !important;
}

ul.anchor li a .stepNumber {
  font-size: 0.8rem !important;
  padding: 5px !important;
}

ul.anchor li a .stepNumber,
ul.anchor li a .stepDesc {
  font-family: Arial, sans-serif !important;
  font-size: 24px !important;
}

/* BTN
-------------------------------- */
.actionBar .button {
  font-family: Arial, sans-serif !important;
  font-size: 16px !important;
  border-radius: 0 !important;
}

.actionBar {
  height: auto !important;
  border-radius: 0 !important;
}

.actionBar .button,
#popupidconfirm input,
.form_field_20 button,
.address-lookup-dialog button,
#btnCheckout,
#check_discount {
  background: var(--main-color) !important;
  color: white !important;
  border: solid 1px var(--main-color) !important;
  font-weight: bold !important;
  margin-right: 0 !important;
  opacity: 1 !important;
}

.actionBar .button:hover,
#popupidconfirm input:hover,
.form_field_20 button:hover,
.address-lookup-dialog button:hover,
#btnCheckout:hover,
#check_discount:hover {
  background: var(--hover-color) !important;
  color: white !important;
  opacity: 1 !important;
}

#check_discount {
  padding: 10px 30px !important;
  margin-top: 0 !important;
}

.buttonDisabled {
  display: none !important;
}

.form_field_20 button {
  float: right !important;
  margin-bottom: 1rem !important;
  opacity: 1 !important;
  padding: 0.2rem 0.8rem;
}

.form_field_20 button span {
  color: white !important;
}

/* Content
-------------------------------- */
ul {
  font-size: inherit;
}

.colleague_subform {
  border: solid 1px var(--main-color) !important;
}

.half {
  z-index: 1;
}

.form_field_55 .reset-question-margin,
.form_field_73 .reset-question-margin,
.form_field_56 .reset-question-margin {
  display: none;
}

.form_field_53 .question_label {
  padding-bottom: 0;
}

.form_field_55 {
  margin-top: 20px;
}

/* Product
-------------------------------- */
.product-item-name {
  font-size: 18px !important;
  font-weight: bold !important;
}

.form_field_79 > div > .row {
  margin-top: 30px !important;
}

.summary-container,
.total-price {
  border: solid 1px var(--main-color) !important;
}

.total-price {
  padding: 5px !important;
}

.dg-premium {
  border: 1px solid var(--main-color) !important;
  padding-top: 0.6rem;
}

.PREMIUM_PASS,
.FREE_PASS {
  padding-left: 30px !important;
}

/*Colleague pop-up*/
.form_field_85 button {
  background: var(--main-color) !important;
  border: solid 1px var(--main-color) !important;
}

.form_field_85 button span {
  color: white !important;
}

.recipient-dialog button {
  background: var(--main-color) !important;
  border: solid 1px var(--main-color) !important;
}
table tr th {
  width: 300px;
}

.recipient-dialog button span {
  color: white !important;
}

/* Responsive
-------------------------------- */
@media only screen and (max-width: 40em) {
  input[type="checkbox"]:checked ~ span {
    padding-left: 25px;
  }

  input[type="radio"] {
    display: inline-block !important;
  }

  ul {
    margin-left: 1.5rem;
  }

  .form_field_53 input {
    display: none !important;
  }

  .summary-container {
    font-size: 12px !important;
    text-align: center;
  }
}

@media only screen and (min-width: 40.01em) {
  .product-item-name {
    margin: 10px 0 !important;
  }

  .inputProductSelector {
    margin: 10px 0 !important;
  }
}
h1,
h2,
h3,
h4,
h5 {
  font-family: Arial, sans-serif !important;
}

.recalculate-button-container {
  display: none !important;
}

.form_field_193 {
  display: none !important;
}

.form_field_146 .row {
  border: 2px solid #61116a !important;
  border-radius: 4px !important;
  padding: 12px !important;
  margin-bottom: 12px !important;
}

.form_field_146 .inputProductSelector:checked + label {
  color: #61116a !important;
}

.product-item-name {
  font-size: 18px !important;
  font-weight: bold !important;
}

.more-info-prem,
.more-info-stand {
  font-size: 14px !important;
  color: #000 !important;
  cursor: pointer !important;
}

/* product selector */
.conference-pass-selector {
  max-width: 980px;
  margin: 0 auto;
  font-family: Arial, sans-serif;
  color: var(--text-color);
}

.pass-heading {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 700;
  color: var(--main-color);
}

/* KARTA */
.pass-card {
  position: relative;
  display: block;
  margin: 14px 0;
  cursor: pointer;
}

.pass-card,
.pass-card * {
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
}

.pass-inner {
  position: relative;
  border: 2px solid var(--main-color);
  border-radius: 6px;
  padding: 18px 18px 18px 52px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  background: #fff;
}

.pass-card > input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.pass-card {
  position: relative;
}

.pass-card::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 24px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid #8c8c8c;
  background: #fff;
  box-sizing: border-box;
}

.pass-card::after {
  content: "";
  position: absolute;
  left: 22px;
  top: 28px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--main-color);
  transform: scale(0);
  transition: transform 0.15s ease;
}

/* ZAZNACZONE */
.pass-card:has(input:checked) .pass-inner {
  background: var(--bg-selected-color);
}

.pass-card:has(input:checked)::before {
  border-color: var(--main-color);
}

.pass-card:has(input:checked)::after {
  transform: scale(1);
}

.pass-left {
  flex: 1 1 auto;
  min-width: 0;
}

.pass-right {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
}

.pass-title {
  font-size: 20px;
  font-weight: 800;
  color: var(--main-color);
}

.pass-desc {
  margin-top: 6px;
  font-size: 14px;
  color: var(--muted-color);
  line-height: 1.35;
}

.pass-price {
  margin-top: 14px;
  line-height: 1.35;
}

.pass-eb {
  font-size: 22px;
  font-weight: 800;
  color: var(--text-color);
}

.pass-eb-note {
  font-size: 14px;
  font-weight: 600;
  color: #2f6f3e;
  margin-left: 8px;
}

.pass-std {
  margin-top: 6px;
  font-size: 14px;
  color: #7a7a7a;
}

.pass-save {
  margin-top: 6px;
  font-size: 14px;
  color: #7a7a7a;
}

.pass-link {
  font-size: 14px;
  font-weight: 700;
  color: var(--main-color);
  text-decoration: underline;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.pass-link:hover {
  color: var(--hover-color);
}

/* ikonka info */
.info-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #b9b9b9;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 800;
  color: #fefefe !important;
  background: #000000;
}

/* BADGE "Most popular" */
.pass-badge {
  position: absolute;
  right: 14px;
  top: 12px;
  background: #f3d9a8;
  color: #3b2b00;
  font-weight: 800;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 6px;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.08);
}

.pass-card:not(.is-premium) .pass-badge {
  display: none;
}

/* RESPONSIVE */
@media (max-width: 720px) {
  .pass-inner {
    flex-direction: column;
    padding-right: 18px;
    position: relative;
  }
  .pass-badge {
    top: -15px;
  }

  .pass-right {
    margin-left: 0;
    padding-top: 0;
    position: absolute;
    right: 14px;
    bottom: -11px;
    top: auto;
    left: auto;
    transform: none;
    z-index: 6;
    background: #fff;
    border-radius: 6px;
    padding: 4px 10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  }

  .pass-right::before {
    content: "What’s included";
    display: inline-flex;
    align-items: center;
    gap: 6px;

    font-weight: 700;
    color: var(--main-color);
    white-space: nowrap;
  }

  .pass-right .pass-link {
    position: absolute;
    inset: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
  }
}

/* ===== MODALS (Foundation Reveal) ===== */

.reveal-modal-bg,
.reveal-modal-bg.fade {
  background: rgba(0, 0, 0, 0.55) !important;
}

.reveal-modal {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;

  margin: 0 !important;
  margin-left: 0 !important;
  margin-top: 0 !important;

  transform: translate(-50%, -50%) !important;

  width: min(760px, calc(100vw - 32px)) !important;
  max-height: 85vh !important;
  overflow: auto !important;

  z-index: 9999 !important;
  font-family: "Montserrat", Arial, Helvetica, sans-serif !important;
  background: #fff !important;
  border: 2px solid var(--main-color) !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22) !important;
  padding: 0 !important;

  right: auto !important;
  bottom: auto !important;
}

.reveal-modal.open,
.reveal-modal[aria-hidden="false"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.reveal-modal .container {
  padding: 22px 22px 18px !important;
}

.reveal-modal h3 {
  margin: 0 36px 14px 0 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--headline-color) !important;
  letter-spacing: 0.2px;
}

.popup-info-container {
  background: var(--bg-selected-color);
  border: 1px solid rgba(97, 17, 106, 0.18);
  border-radius: 10px;
  padding: 14px 14px 10px;
}

.popup-info {
  color: var(--text-color) !important;
  font-size: 15px;
  line-height: 1.55;
}

.popup-info ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

.popup-info li {
  margin: 8px 0 !important;
  color: var(--text-color) !important;
}

#info1 .popup-info-container {
  background: #fff7ea;
  border-color: rgba(97, 17, 106, 0.18);
}

.reveal-modal .close-reveal-modal {
  position: absolute !important;
  top: 10px !important;
  right: 12px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  color: var(--main-color) !important;
  font-size: 22px !important;
  line-height: 32px !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: transform 0.12s ease, background 0.12s ease;
}

.reveal-modal .close-reveal-modal:hover {
  transform: scale(1.05);
  background: var(--bg-selected-color) !important;
}

.reveal-modal a {
  color: var(--main-color) !important;
  font-weight: 700;
}

.reveal-modal a:hover {
  color: var(--hover-color) !important;
}

@media (max-width: 520px) {
  .reveal-modal h3 {
    font-size: 18px !important;
  }
  .popup-info {
    font-size: 14px;
  }
  .reveal-modal .container {
    padding: 18px 16px 14px !important;
  }
}

/* ===== MODAL HEADER STRIPE (pseudo-element) ===== */

#info.reveal-modal,
#info1.reveal-modal {
  overflow: hidden;
}

#info.reveal-modal::before,
#info1.reveal-modal::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 6px;
}

#info.reveal-modal::before {
  background: linear-gradient(90deg, var(--main-color), #7a3b8c);
}

#info1.reveal-modal::before {
  background: linear-gradient(90deg, #f3d9a8, #e2b45f);
}

#info.reveal-modal .container,
#info1.reveal-modal .container {
  padding-top: 18px !important;
}
