@charset "UTF-8";


*, *:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


/*******************************
CSS RESET
*******************************/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	font-family: "proxima-nova", sans-serif;
}
ol, ul {
	list-style: disc;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
    cursor:pointer !important;
}

a:hover {
	outline: none;
    cursor:pointer !important;
    -webkit-tap-highlight-color: transparent;
}




/******************************
COLOURS
******************************/

:root {
    --color-transparent: rgba(255, 255, 255, 0);
    
    --color-white: #FFF;
    --color-white-translucent: rgba(255, 255, 255, 0.8);
    
    --color-black: #000;
    
    --color-grey: #67737E;
    --color-light-grey: #D1D1D1;

    --color-blue: #005A96;
    
    --color-dark-blue: #00244E;
	--color-dark-blue-translucent: rgba(0, 36, 78, 0.9);
    
    --color-light-blue :#D6E7F2;

    --color-light-light-blue :#e9f1f6;
    
    --color-grey-blue: #517891;
    --color-grey-blue-translucent: rgba(81, 120, 145, 0.9);
    
    --color-green: #7BB03E;
    
    --color-orange:#FAA41A;

    --color-dark-orange:#F37021;
}


/******************************
CORE DIMENSIONS
******************************/

:root {
    --site-width:1640px;
}






/******************************
GENERAL
******************************/

html {
    scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6,
p, a,
ul li, ol li,
table th,
table tr,
table td {
    font-optical-sizing: auto;
}

sup {
    vertical-align: super;
    font-size: 60%;
    line-height: 1;
}

sub {
    vertical-align: sub;
    font-size: 60%;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}


body {
    background-color: var(--color-white);
}



/***************************
BILLY STUFF IN'S
***************************/


#myHero {
  animation: heroReveal 0.6s ease-out forwards;
}

@keyframes heroReveal {
  0% {
    opacity: 0;
    transform: scale(1.1);
    filter: blur(8px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}


.footer-text{
	color:#ffffff;
	font-size:17px;
	line-height:24px;
}

.footer-text a{
  color:#ffffff;
  text-decoration:underline!important;
}

.footer-text-follow-us p{
	color:#ffffff;
	font-size:32px;
	font-weight:bold;
	padding-bottom:10px;
}

.footer-text-follow-us svg{
	padding-right:10px;
}


.Sponsors-title h4 {
	font-size:75px;
	
	color:#000000;
	font-weight:500;
}

.aboutOCF h4 {
	font-size:75px;
	
	color:#000000;
	font-weight:600;
}



#register-now {
	
	background-color:#ffffff;
	font-size: 20px!important;
	font-weight:800!importand;
	color:#000000;
	padding:9px 12px;
	border-radius: 30px;
	outline: solid 2px #000000;
}

#register-now:hover, #card-button:hover, #intinerary-button:hover, #learn-more-button:hover {
	color:#ffffff;
	background-color:#B1181E;
	outline: none!important;
	
}



.hero-top-logos img{
	max-height:96px!important;
	width:auto!important;
}





/*pill shape yellow in banner*/

.pill-notice-container{
    padding-bottom:0px;
}

/* wrapper */
.pill-notice{
    overflow: visible;
}

/* heading element */
.pill-notice .elementor-heading-title{
    position: relative;
    display:inline-block;
    padding:14px 30px 14px 20px;

    font-weight:800!important;
    font-size:50px;
    letter-spacing:0.03em;
    color:#000 !important;

    /* KEY: fixes layering issues */
    isolation:isolate;
}

/* yellow pill background */
.pill-notice .elementor-heading-title::before{
    content:"";
    position:absolute;

    top:0;
    bottom:0;
    left:calc(50% - 50vw);
    right:0;

    background:#FBAE42;
    border-radius:999px;

    z-index:-1;
}

/* dotted border */
.pill-notice .elementor-heading-title::after{
    content:"";
    position:absolute;

    top:-15px;
    bottom:-15px;
    left:calc(50% - 50vw - 15px);
    right:-15px;

    border:3px dotted #ffffff;
    border-radius:999px;

    pointer-events:none;
}


/* end of pill shape */


.hero-notice h2 {
  color:#fbae42	;
  font-weight: 800;
  font-size: 32px;
  line-height:32px;
  padding-bottom:20px;
  
  text-transform: uppercase;
}

.hero-notice p {
  color:#ffffff	;
  font-weight: 400;
  font-size: 30px;
	
  line-height:32px;
}

.hero-title h1 {
	font-size:110px;
	color:#ffffff;
	letter-spacing:-20;
	line-height:100px;
	font-weight:400;
	max-width:530px;
	padding-bottom:90px;
	font-family: "proxima-nova", sans-serif !important;
}

#three-card-section{
	z-index:9!important;
}

#bg-background-video{
	z-index:999999!important;
}

#three-card-section{
	overflow:hidden!important;
}


/* Force background video container to pin correctly */
.elementor-background-video-container {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 100% !important;
  width: 100% !important;
  transform: none !important;
}


.card-title h2{
	font-size:50px;
	font-weight:800;
	line-height:45px;
	color:#000000!important;
	padding-top:25px!important;
	padding-bottom:30px!important;	
	padding-top:25px;
}

.card-text p {
	font-size:30px;
	font-weight:400;
	line-height:32px;
	color:#000000!important;
	padding-bottom:30px!important;
	padding-right:50px;
	
}


#card-button {
	background-color:#ffffff;
	font-size: 22px;
	font-weight:800;
	color:#000000;
	padding:9px 12px;
	border-radius: 30px;
	outline: solid 2px #000000;
}


#intinerary-button {
	background-color:#ffffff;
	font-size: 22px;
	font-weight:800;
	color:#000000;
	padding:9px 12px;
	border-radius: 30px;
	outline: solid 2px #000000;	
	margin-left:50px;
	margin-bottom:125px;
}





.about-container h2{
	font-size: 75px;
	font-weight:400!important;
	color:#000000!important;
	line-height: 70px;
	padding-bottom:60px;
	padding-left:50px!important;
}

.about-leftside-content {
	font-size: 22px!important;
	font-weight:400!important;
	color:#272727!important;
	line-height: 28px!important;
	padding-bottom:10px;
	padding-left:50px!important;
}

.about-grid {
	font-size: 22px!important;
	font-weight:400!important;
	color:#272727;
	line-height: 28px!important;
	padding-left:50px!important;
}

.about-sub-title h3{
	font-size: 50px!important;
	font-weight:700!important;
	color:#272727;
	line-height: 45px!important;
	padding-left:50px!important;
	padding-top:30px;
	padding-bottom:30px;
}

.itinerary-sub-title p {
	font-size: 50px!important;
	font-weight:600!important;
	color:#000000!important;
	line-height: 45px!important;
	padding-left:50px!important;
	padding-top:25px;
	padding-bottom:13px;
}

.itinerary-subtext {
	font-size: 30px!important;
	font-weight:400!important;
	color:#000000!important;
	line-height: 52px!important;
	padding-left:50px!important;
}

.itinerary-subtext a {
	text-decoration:none;
	color:#000000;
}

.itinery-date {
    background-color:#FBAE42;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;

    display: inline-block;
    width: fit-content;          /* stronger than auto */
    align-self: flex-start;      /* 👈 prevents flex stretch */
    
    padding: 11px 20px 14px 50px;
}

.itinery-date p{
    font-size: 35px!important;
    font-weight:700!important;
    color:#000000;
    margin: 0;              /* remove default paragraph spacing */
	font-family: "proxima-nova", sans-serif;
}


.aboutOCF-title {
	font-size: 75px;
	font-weight:400!important;
	color:#000000!important;
	line-height: 70px;
}



.aboutOCF-text {
	font-size: 22px!important;
	font-weight:400!important;
	color:#000000;
	line-height: 28px!important;
	padding-top:80px!important;
	padding-bottom:25px!important;
}

#learn-more-button {
	background-color:#ffffff;
	font-size: 22px;
	font-weight:800;
	color:#000000;
	padding:9px 12px;
	border-radius: 30px;
	outline: solid 2px #000000;	
	margin-bottom:70px;
}

.OCF-logo {
	width:508px!important;
}

#myHero .elementor-shape-fill {
    fill: #ffffff;
}


@media (max-width: 768px) {
	#myHero .elementor-shape-fill {
      fill: #004F6B;
	}
	
	.hero-title h1 {
		font-size:60px;
		padding-left:30px;
		letter-spacing: -0.025em;
		line-height:58px;
		padding-bottom:20px;
	}
	.pill-notice-container{
	  padding-bottom:50px!important;
	}

	
	.about-leftside-content {
	  font-size: 20px!important;
	  font-weight:400!important;
	  color:#272727!important;
	  line-height: 26px!important;
	  padding-bottom:10px;
	  padding-left:25px!important;
	  padding-right:30px!important;
	}
	
	.about-container h2{
	  font-size: 55px!important;
	  font-weight:400!important;
	  color:#000000!important;
	  line-height: 40px;
	  letter-spacing:-25;
	  padding-bottom:40px;
	  padding-left:25px!important;
		padding-top:30px;
	}
	.about-sub-title h3{
  	  font-size: 50px!important;  
	  font-weight:700!important;
	  color:#272727;
	  line-height: 45px!important;
	  padding-left:25px!important;
	  padding-top:30px;
	  padding-bottom:30px;
		padding-right:25px!important;
		padding-top:30px
    }
	
	.aboutOCF-title {
	  font-size: 55px;
	  font-weight:400!important;
	  color:#000000!important;
	  line-height: 40px;
	  letter-spacing:-25;
	  padding-top:45px!important;
	}
	.OCF-logo{
		padding-bottom:85px!important;
	}
	
	.about-grid {
	  font-size: 22px!important;
	  font-weight:400!important;
	  color:#272727;
	  line-height: 28px!important;
	  padding-left:25px!important;
	}
	
	#intinerary-button {
	  margin-bottom:65px;
	}
	
	.itinerary-sub-title p {
	  font-size: 45px!important;
	  font-weight:700!important;
	  line-height: 40px!important;
    }
	
	.itinery-date p{
      font-size: 25px!important;
      font-weight:700!important;
      margin: 0;             
	}
	.itinery-date {
		padding-left:25px!important;
	}
	.itinerary-sub-title p {
		padding-left:25px!important;
	}
	#intinerary-button {
		margin-left:25px!important;
	}

	
	.card-title h2 { 
	  padding-left:25px;
	  padding-right:25px;
		font-size:45px;
		font-weight:700;
	}
	
	.card-text p { 
	  padding-left:25px;
	  padding-right:25px;
		font-size:28px;
		line-height:30px;
	}

	#card-button {
		position:relative;
		left:25px;
		
	}
	
	.sponsor-logo{
		
	}
	.Sponsors-title h4{
		font-weight:400!important;
		padding-left:25px;
	}
	.sponsor-grid{
		padding-bottom:0px!important;
	}
	.itinerary-subtext {
	  padding-left:25px!important;
	}
		
	.itinerary-subtext-mobile {
		line-height:30px!important;
		font-size:28px;
		padding-bottom:50px;
		padding-right:20px;
	}
	.itinerary-subtext-mobile strong {
		font-weight:800!important;
	}
	
	.aboutOCF-text {
	  padding-top:40px!important;align-content
	}

	
	.OCF-logo {
	  width:284px!important;
	}
	
	.pill-notice p {
	  color:#000000!important;
	  font-weight:900!important;
	  letter-spacing:0.1em!important;
	  font-size:20px!important;
		padding-left:15px!important;
	}

	
	.hero-top-logos img{
		max-height:75px;
		width:auto;
		padding-left:40px;
	}
	
	.footer-container-master{
		padding-left:20px;
		padding-right:20px;
	}
	.footer-text p {
		font-size: 17px;
	}
	
	.footer-text-follow-us:first-child {
		padding-top:50px!important;
	}
	footer-text-follow-us:last-child {
		padding-bottom:15px!important;
	}
	
	.footer-text-mobile p {
		font-size:14px!important;
	}
	
	.footer-text-follow-us svg{
	  padding-right:10px;
		width:50PX;
		height:50px;
	}
	
	.footer-text-mobile a {
		text-decoration:underline;
		color:#ffffff;
	}
	
	.footer-text-mobile {
		font-family: "proxima-nova", sans-serif;
	}
	

	
}
