/*
Theme Name: FalkirkFest
Author: unavoided
Author URI: https://unavoided.com
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 8.1
Version: 1.0
Text Domain: falkirkfest
*/
@font-face {
  font-family: "acumin-variable";
  font-display: swap; 
}
* {margin:0; padding:0; color: #fff ; 	font-family: acumin-variable, sans-serif; font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500; }
html {background:#cfa234; height:100%;  scroll-behavior: smooth; background:url('images/back.png'), #cfa234; background-size: cover;}
body {height:100%; }

h1 {font-family: veneer, sans-serif;	font-weight: 400;	font-style: italic; font-size: 90px;}
h2 {font-variation-settings: "slnt" 0, "wdth" 50, "wght" 900; font-size: 90px; color: #e11e51; text-shadow: 2px 2px 0 #fff; line-height: 55px;}
h3 {font-variation-settings: "slnt" 0, "wdth" 50, "wght" 900; font-size: 60px; color: #e11e51; text-shadow: 2px 2px 0 #fff; margin-bottom: 4%}

p  {margin-bottom:2%; font-size:1.2em; line-height:1.50em; font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500 !important;}
ul, ol {margin-bottom:3%; padding-left:30px; }
li {font-size:1.2em; line-height:1.50em; font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500 !important;}

a {text-decoration:none;}

.size-full {width: 90%; height: auto;}

header {height: 65px; z-index: 1499; position: absolute; width: 90%;  padding: 0 2%; border-radius: 25px; margin: 1% auto; left: 3%; right: 3%;}  
.titlelogo {margin-bottom: 4%}

.menu-btn { display: none;}
.main-menu {display:inline-block; vertical-align: top; text-align: right;}
.main-menu ul {list-style: none; margin-bottom: 0; padding-left: 0; text-align: right;}
.main-menu li {display: inline-block; vertical-align: top; text-align: center;}
.main-menu li a { line-height: 65px; font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 700; text-transform: uppercase; color: #000; font-size: 24px; padding: 10px; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; -ms-transition: all 0.5s ease;  transition: all 0.5s ease;}
.main-menu li a:hover {color: #fff;}

.ticketmenu {display: inline-flex;  align-items: center;  gap: 10px;  background: #e11e51;  color: #fff !important;  text-transform: uppercase;  font-size: 2rem;  padding: 0px 24px;  border-radius: 21px;  text-decoration: none;  transition: background 0.3s ease, transform 0.2s ease;  cursor: pointer; position: absolute; right: 5px; top: 5px;}
.ticketmenu a {color: #fff !important}
.ticket-icon {  width: 20px;  height: 20px;  display: inline-block; background-image:url('images/ticket.png'); background-size: contain;  }

.ticket-button {  display: inline-flex;  align-items: center;  gap: 10px;  background: #e11e51;  color: #fff !important;     text-transform: uppercase;  font-size: 2rem;  padding: 12px 24px;  border-radius: 8px;  text-decoration: none;  transition: background 0.3s ease, transform 0.2s ease; cursor: pointer;}
.ticket-button span {color: #fff !important; }
/*layout*/
.back {}
.pagewidth {max-width:1280px; margin:0 auto; overflow:auto; overflow-x: hidden; position: relative; }
.withpadding { padding:3% 6%;}
.somepadding {padding:2%;}
.nopadbum {padding-bottom: 0 !important;}
.marginbum {margin-bottom: 3%;}
.nomargin {margin-bottom: 0 !important;}
section {margin:0 ; padding:0 6%; overflow:auto; position: relative;}
.topdiv {padding-top: 100px;}

.centered {text-align: center;}

.mootard {background:#cfa234; border-radius: 25px}

.ripped {background:url('images/yellowpaper.png'); background-repeat: no-repeat; padding: 3% 0;
  background-position: center;
  background-size: 100% 100%;}
.flex-two {  display: flex;  gap: 2rem;  align-items: center; }
.flex-two .box {  flex: 1;   padding: 2rem 0;   min-width: 0;}

.map-box {  position: relative;  aspect-ratio: 16 / 9;  border-radius: 20px;  overflow: hidden;  min-height: 320px;}
.map-box iframe {  position: absolute;  inset: 0;  width: 100%;  height: 100%;  border: 0;}

/*faqs*/
.faqs {margin: 0 10%;}
.bookinfo {margin-bottom: 0.5%; padding: 2px 0; border: 2px solid rgba(0,0,0,0)}
.book_name {margin: 0px; padding:2%;  display:block; margin-bottom:0; border-radius: 0; cursor: pointer; background: #e11e51; color:#fff; border-radius: 15px; page-break-inside: avoid;   -webkit-column-break-inside: avoid;  break-inside: avoid;  }
.book_name:hover {color:  #fff; background: #c11f4e;}
.book_container {    height: 0px;    overflow: hidden;    padding: 0px; }
.book_info {padding:2%; background:#fff; display:block; border-bottom:8px solid rgba(0,0,0,0); border-radius: 0 0 15px 15px }
.book_info p {color:#000 !important;}
.book_info p:last-of-type {margin-bottom: 0}
.book_info a {color: #e5177b !important}
.open .book_name {border-radius: 15px 15px 0 0; margin-bottom: 2px;}
.open {border: 2px solid #fff;  border-radius: 18px;  padding: 2px;}

/*countdown*/
#clock {margin-bottom: 3%;}
.timebox {display: inline-block; background: #e11e51; border-radius: 10px; text-align: centered; margin: 0 1%;  font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500; width: 100px; height: 80px; padding-top: 10px; color: #fff !important;}
.timenumber {font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500; font-size: 30px; color: #fff;}

/* ===============================
   Gravity Forms – Orbital theme
   Tighten spacing properly
================================ */
.gform_required_legend {display: none;}
/* Reduce overall field spacing */
#gform_wrapper_1 {  --gf-form-gap-y: 12px;  --gf-form-gap-x: 16px;}
/* Force grid spacing override */
#gform_wrapper_1 .gform_fields {  row-gap: 12px !important;  column-gap: 16px !important;}
/* Kill extra padding Orbital adds */
#gform_wrapper_1 .gfield {  padding: 0 !important;  margin: 0 !important;}
/* Labels */
#gform_wrapper_1 .gfield_label {  margin-bottom: 4px !important;  font-size: 16px;  font-weight: 700; color: #fff;}
/* Description text under labels */
#gform_wrapper_1 .gfield_description {  margin-bottom: 6px !important;  font-size: 14px;  opacity: 0.8;}
/* Inputs */
#gform_wrapper_1 input[type="text"],
#gform_wrapper_1 input[type="email"],
#gform_wrapper_1 textarea {  padding: 10px 12px !important;  border-radius: 8px !important;}
/* Textarea height (this is the big win visually) */
#gform_wrapper_1 textarea {  min-height: 130px !important;  resize: vertical;}
/* Name field columns */
#gform_wrapper_1 .ginput_complex {  gap: 16px !important;}
/* Character counter */
#gform_wrapper_1 .charleft {  margin-top: 4px !important;  font-size: 13px;  opacity: 0.7;}
/* Required legend at top */
#gform_wrapper_1 .gform_required_legend {  margin-bottom: 10px !important;  font-size: 13px;}
/* Gravity Forms submit button */
#gform_wrapper_1 .gform_button,
#gform_wrapper_1 button[type="submit"],
#gform_wrapper_1 input[type="submit"] {  background: #e11e51 !important;  color: #fff !important;  border: none !important;  border-radius: 25px;  padding: 14px 36px;  font-size: 20px;  font-weight: 700;  text-transform: uppercase;  cursor: pointer;  transition: transform 0.2s ease, box-shadow 0.2s ease;}

/* Hover state */
#gform_wrapper_1 .gform_button:hover,
#gform_wrapper_1 input[type="submit"]:hover {  transform: translateY(-2px);  box-shadow: 0 6px 0 rgba(0,0,0,0.25);}

/* Focus / accessibility */
#gform_wrapper_1 .gform_button:focus {  outline: none;  box-shadow: 0 0 0 3px rgba(255,202,42,0.5);}

footer {background:url('images/footer.png'); background-repeat: no-repeat; padding:8% 0 2% 0;
	  background-position: center;
	  background-size: 100% 100%;}
footer p{font-size: 16px; color: #000;}
	  .flex-four {  display: flex;  gap: 2rem; }
	  .flex-four .box {  flex: 1;  padding: 2rem;}
	  .flex-four img {width: 80% !important; height: auto}
	  .footer-menu {}
	  .footer-menu li a, .footer-menu li {font-size: 16px; color: #000;}
	  
	  
@media (max-width: 768px) {	 
.titlelogo {margin-bottom: 4%; width: 85%; height: auto;} 
.flex-two, .gradient-row, .vvip, .flex-four  {  flex-direction: column;}
.topdiv {padding-top: 30px;}
.withpadding {
  padding: 6% 6%;
}

h2 {margin-bottom: 10px;}
h3 {line-height: 50px; margin-bottom: 12%}

.size-full {  width: 100%;  height: auto;}

.ripped {background-position: right center;	  background-size: cover;}
.flex-two .box {	width: 100%; padding: 3rem 0 0 0;  }
.flex-two .map-box, .flex-two .form-box {padding:  0 0 3rem 0; margin-bottom: 40px}
  .map-box,
  .map-box iframe {
	width: 100% !important;
  }

.main-menu { clear: both;  height:0; opacity: 0; transform: none; position: fixed !important; z-index: 10000; top:0px; left: 0; width: 100%; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -ms-transition: all 0.3s ease;  transition: all 0.3s ease; margin-left: 0;}
.main-menu ul {margin:0 auto !important; left:0; right: 0; padding:0; height: 0; display:block;  top: 0; width: 100%;  transform: none; position:absolute; max-width: 100%; text-align: center; border-top: none !important}
.main-menu li { padding:0 40px; text-align:left;  height:40px;  display: none;   -webkit-transition: background-position 0.5s;    -moz-transition: background-position 0.5s;    transition: background-position 0.5s;}
.main-menu li a {text-decoration:none; line-height:50px; color:#fff !important; padding: 0; font-size: 2em; font-weight: 200; display:none;  -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -ms-transition: all 0.3s ease;  transition: all 0.3s ease;}
.main-menu li a:hover, .main-menu li a:hover span {color: #00afda;}

.main-menu li a:active {color:#fad775 !important;}
.menu-item-443 {display: block;}

header .menu-icon {  cursor: pointer;  display: inline-block;  float: right;  padding:31px 0px 31px ;  position: fixed;  right: 21px;  z-index: 10010;  user-select: none; }
.menu-icon .navicon {  background:#e11e51; display: block;  height: 3px;  position: relative;  transition: background .2s ease-out;  width: 28px;}
.menu-icon .navicon:before,header .menu-icon .navicon:after {  background:#e11e51;  content: '';  display: block;  height: 100%;  position: absolute;  transition: all .2s ease-out;  width: 100%;}
.menu-icon .navicon:before {  top: 8px;}
.menu-icon .navicon:after {  top: -8px;}
.menu-btn:checked ~ .main-menu ul li.logomenu {display: none !important;}

.menu-btn:checked ~ .main-menu {  bottom: 0; height: 100vh !important; width: 100%; opacity: 1; background: #c11f4e;}
.menu-btn:checked ~ .main-menu ul {  position: absolute; height: auto; top: 160px !important; }
.menu-btn:checked ~ .main-menu ul li {  display:block !important; opacity: 1; width: 100%; text-align: center; padding: 0;}
.menu-btn:checked ~ .main-menu ul li.buytickets {display: none; visibility: hidden; z-index: -300;}
.menu-btn:checked ~ .main-menu ul li.paymonth {display: none; visibility: hidden; z-index: -300;}
.menu-btn:checked ~ .main-menu ul li a{  display:block !important; opacity: 1;}
.menu-btn:checked ~ .main-menu ul .menu-item-243 {display: none !important;  opacity: 1;}
.menu-btn:checked ~ .menu-icon .navicon {  background: transparent; }
.menu-btn:checked ~ .menu-icon .navicon:before {  transform: rotate(-45deg); background: #fff;}
.menu-btn:checked ~ .menu-icon .navicon:after {  transform: rotate(45deg); background: #fff;}
.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {  top: 0;}
.menu-btn:checked ~ .cart-menu {visibility: hidden;}

.ticketmenu {  position: relative;  right: auto;  top: auto;  margin: 1rem 10%;  display: flex;  justify-content: center;  font-size: 1.2rem;     padding: 10px 20px;  width: auto !important; }
.main-menu .ticketmenu a {  line-height: normal !important;  padding: 0 !important;  color:  #c11f4e !important;  font-size: 1.5em !important;
}

.timebox {width: 78px !important; height: 65px !important; padding-top: 5px !important; margin-bottom: 30px;}
.timenumber {font-variation-settings: "slnt" 0, "wdth" 67.5, "wght" 500; font-size: 24px; color:  #c11f4e;}	

footer {background:url('images/footer.png'); background-repeat: no-repeat; padding:50% 0 2% 0;
background-position: right center;	  background-size: cover; margin-top: -10%}  
.flex-four .box {  flex: 1;  padding: 1%;}
	} 