@charset "utf-8";

/* Browser reset to zero out margins, padding, and sizing */

* {
    box-sizing: border-box;
}

/*CSS Variables*/

:root {
    --primaryBrown: #362C18;
    --secondaryBlue: #02B5BA;
}


/*Keyframe animations*/

@keyframes bgmove {
    0% {background-position: 22% -50%;}
    100% {background-position: 22% 0%;}
}
/*

@keyframes reveal {
    0% {opacity: 0;}
    100% {opacity: 1;}
}
*/


@keyframes wow {
    0% {font-size: 20vw; opacity: 0;}
    60% {font-size: 20vw; opacity: 0;}
    64% {font-size: 11vw; opacity: 1;}
    66% {font-size: 12vw; opacity: 1;}
}

@keyframes h2anim {
    0% {opacity: 0;}
    80% {opacity: 0;}
    100% {opacity: 1;}
}




/*Site Specific Styles*/



/*
html {
    scroll-behavior: smooth;
    scroll-snap-type: y proximity;
}
*/

body {
	font-family: 'Playfair Display', serif;
    margin: 0;
    /* background-color: #02b5ba; */
    background-color: var(--bgColor);
    background-image: url(images/sea.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    animation: bgmove 1.75s ease-in-out;
}




/*
body {
    margin: 0;
    background-color: #02B5BA;
    background-image: url(images/stranded.jpg);
    background-size: 100%;
    background-repeat: no-repeat;
*/
/*    animation: bgmove 1.5s ease-in-out;*/
/*    animation: bgmove 1.5s ease-in-out alternate infinite;*/
/*    animation: bgmove 1.5s cubic-bezier(.88,.09,.97,.59)*/
/*
        CUSTOM TIMING FUNCTION
        instead of 'ease-in-out'
        https://cubic-bezier.com/#.17,.67,.83,.67
        
*/


header, section {
    min-height: 100vh;
    scroll-snap-align: start;
}

/*
nav {
    display: none;
}
*/

h1, h2, h3 {
    font-family: 'Playfair Display', serif;
    font-weight: normal;
}




header {
    padding-top: 15vh;
}

@keyframes h1Fade {  
    0% {opacity: 0; font-size: 20vw;}
    60% {opacity: 0; font-size: 20vw;}
    65% {opacity: 1; font-size: 11vw;}
    67% {opacity: 1; font-size: 12vw;}  
}

header h1 {
    opacity: 1;
    font-size: 8vw;
    line-height: 8vw;
    text-transform: uppercase;
/*    color: var(--primaryBrown);*/
	color: #F29F05;
    text-align: center;
    letter-spacing: .1em;
    margin: 0;
    text-shadow: 
        -2px -2px 0 #05AFF2, 
        -3px -3px 3px #0842c2;
    animation: h1Fade 2s ease;
    
/*    find colors from web inspector*/

}

@keyframes reveal {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

/*

@keyframes reveal {
    0%, 80% {opacity: 0;}
    100% {opacity: 1;}
}
*/


header h2 {
    text-align: center;
    font-size: 6vw;
    margin: 0;
	color: #F2E313;
	text-shadow: 
        -2px -2px 0 #05AFF2, 
        -3px -3px 3px #0842c2;
/*    animation: reveal 1s 2s both;*/
	animation: h1Fade 2s ease;
}

header p.cta {
    text-align: center;
    font-size: 36px;
    font-weight: bold;
    position: absolute;
    bottom: 50px;
    left: calc(50% - 30px);
    margin: 0;
    animation: reveal 1s 2.5s both;
}

.cta a {
    display: block;
    border: solid 2px #362C18;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    color: #362C18;
    border-radius: 30px;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.5);
    transition: transform 1s ease-in-out, color 250ms ease, background 500ms ease;
/*    transition: all 300ms ease-in-out;*/
}

.cta a:hover {
   border: solid 2px white; 
   color: white;
   background: #362C18;
    transform: scale(1.5);
}

section {
	width: 50%;
	margin: 0 auto;
	font-family: 'Raleway', system-ui, sans-serif;
	color: var(--primaryBrown);
	font-weight: 600;
	text-shadow: 0px 0px 10px white;
	font-size: 18px;
/*    scroll-snap-align: start;*/
    padding-top: 5vh;
}

section h3 {
    height: 100px;
    text-align: center;
    font-size: 5rem;
	color: #F29F05; 
    margin: 0;
    border-bottom: solid 5px #05AFF2;
    transition: all 1s ease;
}



section h3.in-view {
    font-size: 5rem;
}


@keyframes waveanim {
    0% {background-size: 100% 100%;}
    100% {background-size: 120% 120%;}
}


.wave {
    height: 50vh;
    background: url(images/town.jpg);
    background-size: 100% 100%;
/*    background-size: cover;*/
    background-attachment: fixed;
/*    box-shadow: 0px 0px 50px black;*/
    box-shadow: inset 0px 0px 50px black;
/*    animation: waveanim 5s ease;*/
/*    animation: waveanim auto ease;*/
    animation: waveanim 0.1s ease both;
/*    animation-timeline: scroll();*/
    animation-timeline: view();
    animation-range: 30% 70%;
}

.sea{
	background-image: url("images/sea2.jpg");
  background-size: cover; /* Cover the entire area of the section */
  background-position: center; /* Center the background image */
  background-repeat: no-repeat; 
	background-attachment: fixed; 
  height: 50vh;
  color: #F29F05;
	
}

.sea-image-container img {
  width: 500px;
  height: auto; 
}

.village{
	background-image: url("images/village2.jpg");
  background-size: cover; /* Cover the entire area of the section */
  background-position: center; /* Center the background image */
  background-repeat: no-repeat; 
	background-attachment: fixed; 
  height: 50vh;
  color: #F29F05;
	
}

.village-image-container img {
  width: 500px; 
  height: auto; 
}

.town{
	background-image: url(images/town.jpg);
  background-size: cover; /* Cover the entire area of the section */
  background-position: center; /* Center the background image */
  background-repeat: no-repeat; 
	background-attachment: fixed;
  height: 50vh;
  color: #F29F05;
	
}

.town-image-container img {
  width: 500px; 
  height: auto; /* Maintain aspect ratio */
}

.food{
	background-image: url(images/food.jpg);
  background-size: cover; /* Cover the entire area of the section */
  background-position: center; /* Center the background image */
  background-repeat: no-repeat; 
	background-attachment: fixed; 
  height: 50vh;
  color: #0842c2;
	
}

.food-image-container img {
  width: 500px; 
  height: auto; /* Maintain aspect ratio */
}


.historic {
	background-image: url(images/history.jpg);
  background-size: cover; /* Cover the entire area of the section */
  background-position: center; /* Center the background image */
  background-repeat: no-repeat; 
	background-attachment: fixed; 
  height: 50vh;
  color: #F29F05;
	
}

.historic-image-container img {
  width: 500px; 
  height: auto; /* Maintain aspect ratio */
}



nav {
    position: fixed;
    width: 100%;
    height: 10vh;
    top: 0px;
    right: 0px;
/*    padding: 10px 0;*/
    background: rgba(242, 225, 208, 0.9);
    z-index: 99;
    opacity: 0;
    transition: all 500ms ease-in-out;
    pointer-events: none;
}

nav.open {
    
    opacity: 1;
    pointer-events: auto;
}


nav ul {
    width: 75%;
    
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
}

nav ul li {
/*    display: inline;*/
    border-bottom: solid 2px #362C18;
}

.menu a {
    text-decoration: none;
    color: #F29F05;
	text-shadow: 
        -2px -2px 0 #05AFF2, 
        -3px -3px 3px #0842c2;
    font-family: 'Playfair Display', serif;
    font-size: 12vh;
    line-height: 15vh;
    padding: 0 20px;
}

.dim {
    opacity: 0.1; /* Adjust the opacity to make it "barely visible" */
}




.menu a:hover {
    color: #02B5BA;
    text-decoration: underline;
}

#hamburger {
    position: fixed;
	color: #F29F05;
    top: 20px;
    right: 20px;
    z-index: 100;
    background: url("images/hamburger.png");
    background-repeat: no-repeat;
    width:47px;
    height: 35px;
    border: solid 10px transparent;
    box-sizing: content-box;
    cursor: pointer;
    text-indent: -9999px;
}








































