@import 'menu.css';
@import 'https://fonts.googleapis.com/css?family=Open+Sans|Bowlby+One+SC';


body {
	background-color: #fff;
	margin: 0;
	font-family: Open Sans, Arial, Helvetica, sans, sans serif;
	position: relative;
	overflow-x: hidden; 
}
a{
	text-decoration: none;
}
img {
	border: 0;
	max-width: 100%; 
	height: auto;
}
input, textarea, select {
	font-family: Open Sans, Arial, Helvetica, sans, sans serif;
	font-size: 15px;
	border-radius: 5px;
	padding: 7px;
	border: 2px solid #666;
	background-color: #fff;
	max-width: 80vw;
	color: #444;
} 
a[href^="mailto:"]
{
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
table{
	border-collapse: collapse;
	color: inherit;	
	width: 100%; 
}
td {
	vertical-align: top;
	border: 1px solid white; 
}
th {
	vertical-align: top;
	text-align: left;  
}

h1 {
	font-size: 36px; 
	font-weight:400; 
	line-height: 36px; 
}
h2 {
	font-size: 30px;
	font-weight: normal;

}
h3 {
	font-size: 24px;
	font-weight: normal;

}
h4 {
	font-size: 20px;
	font-weight: normal;

}
iframe{
	border: 0;
	margin: 0;
	padding: 0; 
}
p, h2,h3, h4, table {
	max-width: 800px;

}
h2,h3, h4{
	margin: 20px auto; 
}
p, table {
	margin: 10px auto; 
}












.page{
	background-position:center center;
	background-size: cover;
	background-attachment:fixed;
	background-repeat: no-repeat;
	box-shadow: 0 0 60px rgba(0, 0, 0, 0.6) inset;
	position:absolute;
	height: 100%;
	width: 100%;
	background-color: #333;
}
.page2{
	background-position:center center;
	background-size: cover;
	background-attachment:fixed;
	background-repeat: no-repeat;
	position:relative; 
	box-shadow: 0 0 60px rgba(0, 0, 0, 0.6) inset;
	height: calc( 80vh - 70px ); 
	background-color: #333;
}
.heading {
	background-color: #333; 
	padding: 10px 30px; 
	color: #fff;
	display: flex; 
	justify-content: center;
	flex-flow: row wrap; 
	align-items: center; 
}
.slider .heading, .page2 .heading {
	background-color: rgba(0, 0, 0, 0.5); 
	position: absolute;
	top: 0; 
	right: 0;
	left: 0; 
	z-index: 10;
}
.heading div{
	text-align:center;
	padding: 10px ; 
	flex: 1 1 auto;
}
.heading h1{
	font-weight: normal;
	font-size: 40px;  	
	line-height: 40px; 
	font-family:Bowlby One SC;
	letter-spacing:8px; 
}
.heading a{
	color: #fff;
	transition: 0.5s; 
}
.heading a:hover{
	color: #ccc;
}
.heading p{
	font-size: 24px;
}
.heading img{
	max-width: 300px; 
	max-height: 209px;
}
.links{
	line-height:70px;
	font-size: 16px; 	
	display:flex;
	justify-content: center;
	position:sticky; 
	top:  0; 
	z-index: 101; 
	text-transform: uppercase;
	flex-flow: row wrap; 
}
.links a{
	color: #fff; 
	display:inline-block;
	text-align:center;
	flex: 1 1 150px;
	transition: 0.5s; 
	background-color:#9e1006;

}
.links a:hover{
	background-color: #333;
}
.slider{
	height: calc( 90vh - 70px ) ;
	position: relative;
	background-color: #333; 
}
.progress {
	animation:progress 6s linear infinite;
	height: 20px;
	background-color: rgba(0,0,0,0.3);
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 100;
	animation-delay: -0.5s;
	border-radius: 0 20px 0 0;
}	
.maintext{
	max-width: 1200px; 
	margin: auto; 	
	line-height: 180%;
	color: #444;
	padding:  2vw; 
	background-color: #fff; 
}
.maintext a {
	color: #222;
}
.maintext p a, .maintext ol a, .maintext ul a{
	border-bottom: 1px dashed #444;
	transition: 0.5s; 
}
.maintext p a:hover{
	border-bottom: 1px solid #000;	
}
.maintext ol, .maintext ul{
	max-width: 700px; 
	margin: auto; 
}
.sponsors{
	text-align: center;
	flex-flow: row wrap; 
	display: flex;
	justify-content: center;
	align-items: center; 
	margin: 1.5vw auto; 
	max-width: 1200px ; 
	background-color: #fff; 
}
.sponsors img{
	height: auto; 
	max-width: 150px; 
	max-height: 150px;
	filter: grayscale(100%);
}
.sponsors > div{
	padding: 20px; 
	flex: 1 1 250px;
	text-align: center; 
}
.footer {
	background-color:#9e1006;
	flex-flow: row wrap; 
	display: flex;
	justify-content: center;
	color: #fff; 
	line-height: 180%; 
}
.footer > div {
	flex: 1 1 auto;
	padding: 50px;
	max-width: 400px; 
}
.footer a {
	color: #fff; 
}
.footer a:hover{
	color: #000; 
}
.footer img {
	width: 50px; 
	margin: 10px; 
}

.grey{
	background-color: #444; 
}
.grey a{
	color: #fff; 
	transition: 0.5s; 
	border-bottom: 1px solid #FFCC34; 
}
.grey a:hover{
	color: #ddd; 
	border-bottom: 1px solid #000; 
}
.grey > div{
	max-width: 1200px; 
	margin: auto; 	
	line-height: 180%;
	color: #fff;

}
.grey > div > div{
	padding: 0.5vw 2vw 0.5vw 2vw;
}
.grey > div > div:nth-child(odd){
    background-color: #333;
}
.grey > div > div:nth-child(even){
    background-color: #222;
}
.maintext ul, .grey ul {
	margin: 15px auto; 
	max-width: 750px;
}
.head2{
	background-color:#FFCC34 !important;
	color: #000; 
	padding: 10px !important; 
	margin: 0; 	
 }
.frt{
	position: sticky;
	top: 70px;
}
.head2 a{
	color: #000;
}
.head2 a:hover{
	color: #333;
}
.head2 h2, .head2 h3{
	font-weight: normal;
	font-size: 24px; 
	text-transform: uppercase;
	margin: 10px auto; 

}
.iw {
	font-size: 12px;
	padding: 15px 100px;
	text-align: right;
	margin:auto;
	background-color: #9e1006 ;

} 
.iw a{
	color: #fff;
	text-decoration: none;
}
.container{
	display: flex;
	justify-content: center;	
	flex-flow: row wrap; 
	position: relative; 
}
.container > div {
	flex: 1 1 auto;
}
.main{
	width:70%; 
	background-color: #444;
}
.sidebar{
	background-color: #ffcc34;
	color: #000;
	position: relative; 
	width: 150px;
	padding: 50px;  
}
.sidebar img{
	width: 200px; 
	margin: auto; 
}
.sidebar a{
	color: #000; 
	border-bottom: 1px solid transparent; 
	transition: 0.5s; 
}
.sidebar a:hover{
	color: #111; 
	border-bottom: 1px solid #000; 
}
.pictures{
	display: flex;
 	flex-flow: row wrap;
    justify-content: center;
	border	: 4px solid #333;
	background-color: #333; 
	max-width: 1192px; 
	margin: 0 auto 20px auto; 
}
.pictures > div {
	flex: 1 1 auto;
	width: 250px;
	height	: 250px;
	max-width: 500px;
	position: relative;
	margin	: 4px;
}
.gallery > div {
	width: 170px;
	height	: 170px;
	max-width: 190px;
}
.pictures > div.smallpic img{
	object-fit: none ;
    justify-content: center;
}
.pictures > div img{
	object-fit: cover ;
	width: 100%;
	height:  100%;

}
#map{
	height: 70vh;
	width: 100%; 
}
.box:nth-child(odd){
    background-color: #222 !important;
}
.box:nth-child(even) {
    background-color: #333 !important;
}
.box{
	padding: 5px 20px;
}





/* fixtures and scores */


#navadmin, .resultstableadm{
	width: 100%; 
	max-width: 100%; 
}
.resultstableadm td{
	padding: 10px 1px; 
}
.resultstableadm input {
	max-width: 200px; 
}
.resultstableadm tr:nth-child(odd) td {
    background-color: #fff !important;
}
.resultstableadm tr:nth-child(even) td {
    background-color: #f0f0f0 !important;
}
.resultstableadm input, .resultstableadm select {
	font-family: arial, verdana, ms sans serif;
	font-size: 9pt;
	font-weight: normal;
	padding: 1px;
	border: 1px solid #333;
	border-radius: 0;
}



.fixtures .dinghy , .fixtures .dinghy td{
	background-color: #4f5b5b;	
} 
 
.fixtures .cruiser, .fixtures .cruiser td{
	background-color: #51935d;	
} 
.fixtures .all, .fixtures .all td{
	background-color: #919351;	
} 

.fixtures #newday > td{
}

.fixtures th {
	padding: 15px 100px;
	font-size: 20px;
	background-color: #FFCC34;
	color: #000; 
	border: 1px solid white; 
}
.fixtures .gap td{
	height: 25px;
	border: 0
}
.fixtures .nogap td{
	height: 0;
	padding: 0 !important;
}
#small { 
	font-size: 13px; 
}

.small { 
	font-size: 10px; 
}
.winner { 
	font-weight: bold; 
	color: #79d4ea !important;
} 
.helmtable {
	width: 100%; 
} 
.helmtable td {
	padding: 3px 20px; 
}
#seriesstable td {
	padding: 5px ; 
}
 s span {
  color: #999;

  }
sup {
	font-size: 8px;
} 
#disc,  #disc s span,  #disc span s{ 
	color: #888 !important; 
}
.resultone, .summary_data {
	background: #222;
	color: #333;
}
.resulttwo {
	background: #333;
	color: #333;
}
.resultstable, .resultstable td, .resultstable th, .helmtable, .helmtable td, .helmtable th{
	border: 0; 
	color: #fff;
	max-width: 100%;
}
#resultdarker, .summary_header_label, .summary_header, .darker , #resultdarkerhelm{
	background: #FFCC34; 
	color: #000; 
	border: 0 
}

#resultdarker a   { 
	color: #000; 
	border: 0; 
} 

.resultstableadm .resultone a,.resultstableadm .resulttwo a  { 
	color: #333; 
	border: 0; 
} 
.resultone a, .resulttwo a  { 
	color: #ffffff; 
	border: 0; 
} 
#resultdarker a:hover  { 
	color: #000; 
} 
.graphs{
	text-align: center; 
}	
.creamone {
background: #fff;
border: 0;
	color: #333;
}
.creamtwo {
background: #f0f0f0;
border: 0;
	color: #333; 
}
.highlight {
background: #bc4d61;
border: 0;
}
#seriesstable td:nth-child(1) {  
 	flex-basis: 100%; 
	font-weight: bold;
}
.fixturesfront td{
	border: 0; 
}
.fixturesfront tr:nth-child(odd) td{
    background-color: #333;
}
.fixturesfront tr:nth-child(even) td{
    background-color: #222;
}
.oops {
	font-size: 250px;
	float: right;
	line-hight: 300px;
	color:#fff;
	margin: 20px;
}



/* ANIMATIONS */


@keyframes cycle {
	0%  {  }
	4%  {  } 
	21% {  opacity:1; z-index:0; } 
	25% { opacity:0; z-index:0; } 
	26% {  opacity:0; z-index:-1; }
	92% {  opacity:0; z-index:0; }
	96% {  opacity:0; }
	100%{  opacity:1; }
	
}
@keyframes cycletwo {
	0%  {  opacity:0; }
	21% {  opacity:0; }
	25% {  opacity:1; }
	26% {  opacity:1; } 
	46% {  opacity:1; z-index:0; } 
	50% {  opacity:0; z-index:0; }
	51% {  opacity:0; z-index:-1; } 
	100%{  opacity:0; z-index:-1; }
}
@keyframes cyclethree {
	0%  {  opacity:0; }
	46% {  opacity:0; }
	50% {  opacity:1; }
	51% {  opacity:1; } 
	72% {  opacity:1; z-index:0; } 
	75% {  opacity:0; z-index:0; }
	96% {  opacity:0; z-index:-1; } 
	100%{  opacity:0; z-index:-1; }
}

@keyframes cyclefour {
	0%  {  opacity:0; }
	71% {  opacity:0; }
	75% {  opacity:1; }
	79% {  opacity:1; }
	96% {  opacity:1; z-index:0; }
	100%{  opacity:0; z-index:0; }
}

.firstanimation {
	animation:cycle 24s linear infinite;	
	
}
.secondanimation {
	animation:cycletwo 24s linear infinite;

}
.thirdanimation {
	animation:cyclethree 24s linear infinite;
	
}
.fourthanimation {
	animation:cyclefour 24s linear infinite;
	
}
@keyframes progress {
	0%  {  width:0; }
	100%{  width:100%; }
}





@media only screen and ( min-width: 1400px ) {
.grey{
	background-color: #444; 
	padding: 1vw 0;
}
.mainbody{
	max-width: 1200px;
	width: 76%;
	margin: 50px auto;
	background-color: rgba(255,255,255,0.6);  
	border-radius: 20px; 
	box-shadow: 3px 1px 12px rgba(0,0,0,0.5);	
}
body{
	background-color: #ccc;
	background-position:center center;
	background-size: cover;
	background-attachment:fixed;
	background-repeat: no-repeat;
}
html.bg1 body{
	background-image:url('/images/spinnakers.jpg'); 
}
html.bg2 body{
	background-image:url('/images/yachts.jpg'); 
}
html.bg3 body{
	background-image:url('/images/a-NYC-46-1.jpg'); 
}
html.bg4 body{
	background-image:url('/images/bw-dinghies.jpg'); 
}
.iw{
	border-radius: 0 0 20px 20px; 
}
.slider, .heading, .page, .page2{
	border-radius: 20px 20px 0 0; 
	background-attachment: scroll; 
} 
.maintext + .grey,
.maintext .main{
	background-color: rgba(51, 51, 51,0.6);
	border-radius: 0 0 20px 20px;
}


.grey, .main, .mainbody{
	corner-shape: squircle;
} 
.maintext{
	background-color: rgba(255,255,255,0.6);  
}
.grey > div > div:nth-child(2n) {
	background-color: rgba(51, 51, 51,0.6);
}
.grey > div > div:nth-child(2n+1) {
	background-color: rgba(30,30,30,0.6);
}
.footer,.iw {
	background-color: rgba(155, 7, 0,0.85);
}
 .navigation {
	background-color: rgba(155, 7, 0,0.9);
}
.nav{
	background-color: transparent;	
}
.sidebar{
	background-color: rgba(239, 177, 7,0.85);
}
}



@media only screen and ( min-height: 800px ) {
.sidebar > div {
	position: sticky;
	top: 90px; 
}

}

@media only screen and ( max-width: 1400px ) {
.heading p{
	font-size: 20px;
}
.grey > div{
	width: 100%; 
	max-width: none; 
}

}




@media only screen and ( max-width: 990px ) {
.heading div{
	padding: 0px ; 
}
.heading p{
	display: none; 
}
.slider .heading, .page2 .heading  {
	background-color: rgba(0, 0, 0, 0.1); 
}
.links, .head2 {
	position: relative; 
	top: 0; 
}
.page, .page2{
	background-attachment:scroll;
}
td, th {
	padding: 3px; 
	font-size: 12px;
	line-height: auto; 
}
}







@media only screen and ( max-width: 640px ) {
.container {
  flex-flow: row wrap; 
}
.main{
	width: 100%; 
	border-right: 0;
	border-left: 0;
}

.pictures > div{
	max-width: 100%; 
	border-right: 0;
	border-left: 0; 
}
.pictures {
	border: 0; 
}
.page2{
	background-image: none !important;
	height: auto; 
}
.page2 .heading{
	position: relative; 
	background-color: #333; 
}
table {
	max-width: 90%;

}
.pictures > div, .pictures > div img {
	width: 100%;
	height: auto;
	max-width: 100%;  
}

sup{
	display: none; 
}
}





@media only screen and ( max-width: 400px ) {
tr{
	display: flex; 
	flex-flow: row wrap;
}
td, th {
	display: inline-block;
	flex: 1 1 auto;
	padding: 3px; 
}
td:nth-child(2), td:nth-child(3) {  
 	flex-basis: 45%; 
}
.fixtures #newday > td{
	border-top: 1px solid #000;
}
#seriesstable td:nth-child(2), #seriesstable td:nth-child(3) {  
 	flex-basis: auto; 
}
#seriesstable td:nth-child(1) {  
 	flex-basis: 100%; 
}

.averages td,.averages th{
 	flex-basis: auto; 
}
.heading img {
    max-width: 100%;
}
.heading h1 {
    font-size: 30px;
    line-height: 30px;
    letter-spacing: 5px;
}
}




@media only screen and (orientation: landscape) and (min-width: 600px){
.portrait {
	display: none; 
}
}

@media only screen and (max-height: 653px) {

.page .heading, .page2 .heading{
	position: relative; 
	background-color: #333; 
}
.slider{
	height: auto; 
	min-height: 650px; 
}
.page2{
	height: auto; 
	min-height: 325px; 
}
.heading p{
	display: none; 
}

}




@media only screen and (orientation: landscape) and (max-height: 653px){
.slider .heading, .page2 .heading  {
	background-color: rgba(0, 0, 0, 0.1); 
}

}