html {scroll-behavior:smooth}
body {background:#F1EDE6; font-family:Rokkitt, serif; position:relative; font-size:100%}

html {
  -webkit-text-size-adjust: 100%; /* Prevent Android auto-scaling */
}


/* Easing */
header.wp-block-template-part,
.wp-block-button__link {transition:all 0.25s ease}






/* Cover Padding */   
.wp-block-cover,
.wp-block-cover.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow: visible;
  position: relative;
  padding-left: clamp(
    var(--wp--style--root--padding-left, 10px),
    max(calc((100vw - 1600px)/2), var(--wp--style--root--padding-left, 10px)),
    100vw
  );
  padding-right: clamp(
    var(--wp--style--root--padding-right, 10px),
    max(calc((100vw - 1600px)/2), var(--wp--style--root--padding-right, 10px)),
    100vw
  );
  box-sizing: border-box;
}






/* Animations */
.timeline h2,
.timeline h3,
.timeline h4,
.timeline p {
  opacity: 0;
  transform: translateY(20px);
}

.timeline h2.animate,
.timeline h3.animate,
.timeline h4.animate,
.timeline p.animate {
  animation: fadeUp 0.5s ease forwards;
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


.fade {
  opacity: 0;
  transform: translateY(25px);
}

.fade.animate {
  animation: fadeUp 0.7s ease forwards;
}







/* Fonts */
figcaption {font-size:15px; margin:1em 0 0 !important; line-height:125%;}
.swiper-slide figcaption {margin:0.5em 0 !important;}


	@media only screen and (min-width:781px) and (max-width:1300px) {		
		h1[style*="font-size:65px"] { font-size:5vw !important}
	}
	@media only screen and (max-width:1100px) {		
		h1[style*="font-size:90px"] {font-size:70px !important}
		p[style*="font-size:42px"] {font-size:35px !important}
	}		
	@media only screen and (max-width:780px) {
		h1 {font-size:40px !important}
		
		h2, h3, h4 {font-size:22px !important; line-height:1.3em !important}
		
		.home h1 {font-size:15vw !important}
		
		h1[style*="font-size:90px"] {font-size:50px !important}
		p[style*="font-size:42px"] {font-size:25px !important}
	}
	@media only screen and (max-width:500px) {

		.home h1 {font-size:15vw !important}	
		h1[style*="font-size:65px"] { font-size:8vw !important}	
		
		.home .wp-block-column[style*="flex-basis:430px"] {
    		margin:0 auto !important; max-width:320px !important;}
	}






/* Buttons & Links */
.wp-block-button.is-style-outline .wp-block-button__link:hover,
footer .wp-block-button__link.has-white-background-color:hover {background:#E4D9C7 !important; border-color:#E4D9C7 !important; color:inherit !important} 






/* Header Area */
body {padding-top:120px}
body.home,
.page-id-273 {padding-top:0px}

header.wp-block-template-part{position:fixed;top:0px;left:0px;z-index:1001;width:100%}

header.wp-block-template-part:before {content:""; transition:all 0.25s ease; width:100%; height:100%; position:absolute; z-index:1001; top:0px; left:0px; background-image:url('../img/header.jpg'); background-size:cover;background-position:center;background-repeat:no-repeat}

.home header.wp-block-template-part:before,
.page-id-273 header.wp-block-template-part:before {opacity:0}
.home header.wp-block-template-part.scrolled:before,
.page-id-273 header.wp-block-template-part.scrolled:before {opacity:1}

header.wp-block-template-part:before {content:""; width:100%; height:100%; position:absolute; z-index:1001; top:0px; left:0px; background-image:url('../img/header.jpg'); background-size:cover;background-position:center;background-repeat:no-repeat}
header.wp-block-template-part .wp-block-group {z-index:1002}

header.wp-block-template-part .wp-block-group {z-index:1002}

	/* Main Menu */
	@media only screen and (min-width:781px) {	
		
		.desktopMenu {text-align:right; height:120px}
		.desktopMenu ul {list-style-type:none;margin:0 auto;padding:0;  text-align:center; display:inline-block}
		.desktopMenu li {display:inline-block; margin:0 0.5vw;text-align:center; position:relative;}
		.desktopMenu li a {display:block; height:120px; line-height:120px; padding:0 0.5vw; text-decoration:none; color:#F1EDE6;  transition:all 0.25s ease}
		.desktopMenu .current_page_item a {font-weight:600}
		.desktopMenu li.menu-item-has-children > a:after  {content:"\2304"; display:inline-block; vertical-align:middle; color:#F1EDE6; line-height:100%; margin:-3px 0 0 5px; font-size:0.8em; transform:scaleY(0.8)}	
		.desktopMenu li:hover a,
		.desktopMenu li.menu-item-has-children:hover > a:after {color:#3784DE}
		
		/* 2nd Level */
		header.submenu-active {background:rgba(38,38,38,1)}		
		
		.desktopMenu li ul {padding:3vh 0.5vw; position:absolute; top:110px; left:0px; width:50vw !important; z-index:1010;background:#262626;opacity:0;visibility:hidden;transition:0.25s all;transition-timing-function:cubic-bezier(.4,0,.2,1);display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;align-content:flex-start;overflow:visible;flex-direction:row !important; gap:3vw;  box-shadow:0px 0px 50vh rgba(38,38,38,0.8)}
        .desktopMenu ul li.menu-item-has-children:hover>ul {top:120px; opacity:1; visibility:visible}
		
		.desktopMenu li ul:before {width:150vw; height:100%; background:#262626; position:absolute; top:0px; left:-30vw; z-index:1009; content:"";}
		
		.desktopMenu li ul li {width:calc(50% - 2vw); font-size:100%; text-align:left; position:relative; margin:0; z-index:1010}
		
		.desktopMenu li ul li a {color:white !important; width:auto; height:auto; padding:0; line-height:125%; font-weight:300;  border-bottom:1px solid white; opacity:0.5}	
		.desktopMenu li ul li a:hover {color:white !important;  opacity:1}
		
		.desktopMenu li ul li a span.menu-item-description {text-transform:none; font-size:12px; font-weight:400; line-height:17px; color:#4F4F4F; display:block; padding:5px 0}
		
		.desktopMenu .current_page_item ul li a {font-weight:normal !important}			
		.desktopMenu li li:after {display:none}	

		.menu-panel, .sidebar-toggle, .mobileNav {display:none}	
		
	}
	@media only screen and (min-width:781px) and (max-width:1650px) {
		.desktopMenu li ul {width:66vw !important;}
		.desktopMenu li ul:before {left:-40vw;}
	
	}
	@media only screen and (min-width:1780px) {	
		.desktopMenu {font-size:150% !important;}
	}
	@media only screen and (max-width:780px) {
		
		body {padding-top:85px}
		body.home {padding-top:0px}
		
		.desktopMenu {display:none}
		
		.custom-logo-link {padding:10px 0}
		.custom-logo-link img {width:120px !important; height:auto !important}
		
		/* Animated Burger Menu */ 
		.sidebar-toggle {position:fixed; z-index:1001; top:0px; right:0px; font-size:30px; width:85px; height:85px; background:transparent; color:#F1EDE6; cursor:pointer;padding:0; margin:0; border:none; outline:0}	
		.sidebar-toggle:hover {background:transparent}
			.sidebar-toggle span, .sidebar-toggle span:before, .sidebar-toggle span:after {cursor:pointer;border-radius:10px;height:3px;width:30px;left:25px;top:40px;background:#F1EDE6;position:absolute;display:block;content:''}
			.sidebar-toggle span:before {top:-8px; left:0px}
			.sidebar-toggle span:after {top:8px;  left:0px}
			.sidebar-toggle span, .sidebar-toggle span:before, .sidebar-toggle span:after {transition:all 20ms ease-in-out}
			.nav-active .sidebar-toggle {position:fixed}
			.nav-active .sidebar-toggle span {background-color:transparent}
			.nav-active .sidebar-toggle span:before, .sidebar-toggle.active span:after {top:0}
			.nav-active .sidebar-toggle span:before {transform:rotate(45deg); top:0px; left:0px}
			.nav-active .sidebar-toggle span:after {transform:rotate(-45deg); top:0px;  left:0px}		

		.menu-panel {background:rgba(38,38,38,1); position:fixed; z-index:1000;overflow-y:auto; top:85px; right:-100%; width:100%; height:calc(100% - 85px); box-sizing:border-box; left:auto; transition:right 0.25s ease-in-out}
		.menu-panel.open-menu {left:auto;right:0px}
		
		/* Menu System */
		#menu * {box-sizing:border-box}
		#menu {list-style:none;margin:0;padding:0; display:block;clear:both; border-bottom:1px solid #ffffff20}
		#menu li {border-top:1px solid #ffffff20; position:relative;overflow:hidden; transition:all .24s ease; font-size:110%}
		#menu li::after {content:"";display:block;clear:both}
		#menu li>a>svg {display:block;position:relative;width:20px;float:right;transition:all .3s ease}
		#menu li.open > a > svg {transform:rotate(45deg)}
		#menu a {padding:1.25em; font-weight:500; text-transform:uppercase; display:flex;flex-direction:row;justify-content:space-between;align-items:center;text-decoration:none; color:#F1EDE6}
		#menu li.open > ul {display:block}
		#menu li>ul {display:none; border-top:0;  height:0;margin:0; padding-bottom:1em; overflow:hidden;transition:height 350ms ease-in-out}
		#menu ul.is-visible {display:block}
		#menu ul li {border:0; font-size:90%}
	
		#menu ul a, #menu li.open ul a {padding:0.5em 0; display:block; text-transform:none; font-weight:400}
		#menu ul a .menu-item-description {display:none}
		#menu a:hover, #menu li.open a, #menu li.open ul a:hover {}
		
		.menu-panel .contact {padding:2.5em 1.25em}
	}






/* Hoem Page Wood Effect */
.home .wp-block-cover.wood img.wp-block-cover__image-background {height:68% !important; top:5vh;}
	
	@media only screen and (max-width:780px) {
		.home .wp-block-cover.wood img.wp-block-cover__image-background {height:35% !important;}
		
	}



/* Timeline */
.wp-block-columns.timeline {position:relative; z-index:1; }
.wp-block-columns.timeline:before {content:""; position:absolute; z-index:2; left:0px; top:-36px;width:100%;height:60px; background-image:url('../img/rings.png'); background-size:contain;background-position:top center;background-repeat:no-repeat}


.backtotop {position:fixed; bottom:1rem; right:1rem; z-index:10; opacity:0; transition:all 0.25s ease}
.backtotop.scrolled {opacity:1;}

	
.wp-block-columns {align-items:stretch}
.timeline-left {padding:0; display:flex;flex-direction:column}
.timeline-left ul.wp-block-list {position:sticky; top:50px; list-style:none; margin:0; padding:100px 0 50px 50%; text-align:left; font-size:24px}

.timeline-left {background-image:url('../img/timeline-bg.jpg'); background-size:100% auto;background-position:top left;background-repeat:repeat-y}

.timeline-left ul.wp-block-list li {border-bottom:1px solid #262626; padding:3px 0; cursor:pointer}
.timeline-left ul.wp-block-list li:last-of-type {border-bottom:0}
.timeline-year.active {color:white}

.timeline-content-item {margin:0 !important; text-align:left}
.timeline-content-item:not(.has-black-background-color),
.timeline-title {background-image:url('../img/paperbg.jpg');background-size:contain;background-position:top center;background-repeat:repeat}
.timeline-content-item .wp-block-columns {max-width:1320px !important; margin:0 !important}
.timeline-content-item h2 {font-size:16vw !important; line-height:0.9em !important; margin:0; padding:0; white-space: nowrap;}
.timeline-content-item h4 {font-size:24px}

	@media only screen and (min-width:1650px) {
		.timeline-content-item h2 {font-size:300px !important}
	}
	@media only screen and (max-width:1240px) {
		.timeline-content-item h2 {font-size:15vw !important}
	}
	@media only screen and (max-width:780px) {
		.wp-block-columns.timeline{display:grid !important;grid-template-columns:65px auto !important;grid-column-gap:0px;grid-row-gap:0px;}
		.timeline-left ul.wp-block-list {padding:65px 0 30px 10px; text-align:left; font-size:20px}
		.timeline-content-item {padding:1.5rem !important;}
		.wp-block-columns.timeline:before {top:-13px;width:90%; left:5%; height:40px;}
		.timeline-content-item h2 {font-size:25vw !important;}
		.timeline-title {padding-left:1.5rem !important; padding-right:1.5rem !important;}
	}
	@media only screen and (max-width:400px) {
		.timeline-content-item {padding:1rem !important;}
	}







/* Contact Page */
.left-marg {padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left)}

	@media only screen and (min-width:781px) and (max-width:1240px) {
		.page-id-111 h4 {font-size:24px !important;}
	}
	@media only screen and (min-width:1700px) {
		.left-marg {margin-left:calc(46vw - 780px);}
	}






/* Various Mobile  */
	
	figure.silhouette,
	figure.silhouette img {width:auto !important; height:auto !important; max-height:90vh !important;}

	@media only screen and (min-width:781px) {
		.col-stick {position: sticky;top: 150px;align-self: flex-start;}
		.mob-only {display:none !important}
	}
	
	@media only screen and (max-width:780px) {
		.wp-block-group-is-layout-grid {display:block !important}
		.dt-only {display:none !important}
		
		 .wp-block-columns.switch { flex-direction: column-reverse;}
		
		div[style*="padding-top:10vh"],
		div[style*="padding-top:15vh"] {
		    padding-top: 2rem !important
		}
		div[style*="padding-bottom:10vh"],
		div[style*="padding-bottom:15vh"] {
		    padding-bottom: 2rem !important
		}
		
		div[style*="padding-top:150px"] {padding-top:100px !important}		
		
		.timeline-content-item .wp-block-column .wp-block-image {margin:1rem 0 !important}		
		
		.wp-block-spacer[style*="height:10vh"] {height:2rem !important}
		
		.wp-block-cover[style*="min-height:50vh;"] {min-height:400px !important}
		
		figure.silhouette {margin: 0 !important;}
	}
	
	@media only screen and (min-width:1650px) {
		
		div[style*="padding-top:10vh"],
		div[style*="padding-top:15vh"] {
		    padding-top:100px !important
		}
		div[style*="padding-bottom:10vh"],
		div[style*="padding-bottom:15vh"] {
		    padding-bottom: 100px !important
		}
		
		div[style*="height:8vh"],
		div[style*="height:10vh"],
		div[style*="height:12vh"] {height:2rem !important}	
	}
	@media only screen and (min-width:2250px) {
		
		.home .wp-block-cover[style*="min-height:90vh;"] {min-height:70vh !important}
		
	}






/* Sliders */

.fse-swiper-container {position:relative; padding-bottom:50px !important}

.fse-swiper-container .wp-block-image {margin:0 !important;}

/* Swiper Navigation */
.swiper-container {max-width:100%; overflow:hidden !important}

.swiper-nav-container{position:absolute; bottom:0px !important; top:auto !important; height:40px !important; left:0px !important; right:0px !important}
.swiper-nav-container .swiper-button-prev{left:auto !important; right:50px !important}
.swiper-nav-container .swiper-button-next{left:auto !important; right:0px !important}
.swiper-button-next,.swiper-button-prev{top:0px;width:40px !important;height:40px !important;margin-top:0px;color:inherit !important;border:0 !important;border-radius:0 !important}
	.swiper-button-next:after,.swiper-button-prev:after{content:"" !important;}
.swiper-button-prev,
.swiper-button-next {
	background-size:100%;
	background-position:center center;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' fill='none' xmlns:v='https://vecta.io/nano'%3E%3Cg clip-path='url(%23B)'%3E%3Cmask id='A' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Cpath d='M40 0H0v40h40V0z' fill='%23fff'/%3E%3C/mask%3E%3Cg mask='url(%23A)'%3E%3Cpath d='M20 39c10.493 0 19-8.507 19-19S30.493 1 20 1 1 9.507 1 20s8.507 19 19 19z' stroke='%23262626' stroke-width='2'/%3E%3Cpath d='M31 20l-10-5.773v11.547L31 20zM8 20v1h14v-1-1H8v1z' fill='%23262626'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='B'%3E%3Cpath fill='%23fff' transform='matrix(0 -1 1 0 .000002 40)' d='M0 0h40v40H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}
.swiper-button-prev {transform:rotate(180deg);}


.wp-block-fseblocks-content-slide p {padding-right:120px; margin:0.5rem 0 0}







/* Footer */
footer {margin:0 !important}
footer nav {font-family:var(--wp--preset--font-family--jost) !important; max-width:1000px !important; margin:4vh auto 0 !important}
footer nav li a {padding:calc(0.667em + 2px) calc(1.333em + 2px) !important; background:white; color:#262626 !important; font-size:13px !important; letter-spacing:1px; transition:all 0.25s ease}
footer nav li a:hover {background:#E4D9C7}
footer nav li.current-menu-item a { background:#3784DE !important}

	@media only screen and (max-width:780px) {
		footer .wp-block-columns .wp-block-column .wp-block-image {text-align:center !important; float:none !important; margin:1rem auto !important}
		footer nav {margin:2vh auto 0 !important}
		footer .wp-block-navigation__container {display:block !important; }
		footer nav li {display:block !important; text-align:center; margin:10px 0}
	}








/* Title Area */
.title-area {margin-top:0 !important;}
.title-area,	
.title-area .wp-block-columns {position:relative}
.title-area:before {content:""; width:100%; height:90%; position:absolute; top:0px; left:0px; z-index:1; background-image:url('../img/title-bg.jpg'); background-size:cover; background-position:top center;background-repeat:no-repeat}
.title-area .has-x-large-font-size {font-family:Rokkitt, serif !important;}
.title-area .wp-block-columns {z-index:2;}

	@media only screen and (min-width:781px) {		
		.title-area .has-x-large-font-size {position:absolute;  z-index:1; left:0px; top:0px; font-size:32vw !important; margin:0 !important; line-height:0.9em !important}
		.title-area h1 {margin:21vw 0 0 !important; position:relative; z-index:2}
		.title-area.catalogue h1 {margin:0 !important}
	}
	@media only screen and (min-width:1650px) {
		.title-area h1 {margin:350px 0 0 !important; font-size:85px !important;}
		.title-area .has-x-large-font-size {font-size:525px !important;}
	}
	@media only screen and (max-width:780px) {		
		.title-area:before {height:100%}
		
		.title-area .has-x-large-font-size {font-size:40vw !important; margin:2rem 0 0 !important; line-height:0.9em !important}
		.title-area h1 {margin:-50px 0 0 !important; position:relative; z-index:2}
	}
	






/* Characters */
@media only screen and (max-width:780px) {
	.characters .wp-block-columns .wp-block-column {margin:0 0 1.5rem 0 !important;}
}






/* Catalogue Page */

	@media only screen and (min-width:781px) {
		.wp-block-column.folder {position:relative}
		.wp-block-column.folder figure {position:absolute; top:0px; left:5%; width:auto !important; z-index:3; margin-top:-40vh !important;}
		.wp-block-column.folder figure img {width:auto !important; height:auto !important; max-width:100% !important; max-height:550px !important;}		
	}
	@media only screen and (min-width:1650px) {
		.wp-block-column.folder figure img {max-height:600px !important;}	
	}
	@media only screen and (min-width:2000px) {
		.wp-block-column.folder figure img {max-height:650px !important;}	
	}
	@media only screen and (min-width:2250px) {
		.wp-block-column.folder figure img {max-height:700px !important;}	
	}
	@media only screen and (max-width:780px) {
		.wp-block-column.folder figure {width:100% !important; }
		.wp-block-column.folder figure img {width:85% !important; height:auto !important;  z-index:3; margin-top:-10vh !important;}	
	}
	@media only screen and (max-height:780px) {
		.wp-block-column.folder figure img {max-height:450px !important;}	
	}
	






/* SVG images */
.wp-block-button__link{position:relative;padding-right:2.2rem;/* space for icon */ font-size:14px !important; font-weight:500 !important}
.wp-block-button__link::after{content:"";position:absolute;right:0.75rem;top:50%;transform:translateY(-50%);width:14px;height:14px;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%23ffffff'%3E%3Cpath d='m321-80-71-71 329-329-329-329 71-71 400 400L321-80Z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;pointer-events:none}
.wp-block-button.is-style-outline .wp-block-button__link::after,
.wp-block-button__link:hover::after{filter:invert(1)}
.wp-block-button.is-style-outline .wp-block-button__link[style*="color:#f1ede6"]::after,
.wp-block-button.is-style-outline .wp-block-button__link.has-white-color::after {filter:invert(0)}

.wp-block-button.is-style-outline .wp-block-button__link[style*="color:#f1ede6"]:hover::after,
.wp-block-button.is-style-outline .wp-block-button__link.has-white-color:hover::after {filter:invert(1)}






/* Accordion Table */
.accordion table {table-layout: auto !important}
.accordion table tr td {padding:1rem 0; font-size:1.25rem;border-bottom:1px solid #262626 !important}
.accordion table tr td:last-of-type {text-align:right; min-width:100px}


	@media only screen and (max-width:780px) {
		.accordion table,
		.accordion table tbody,
		.accordion table tr,
		.accordion table tr td {display:block !important; border:0 !important; text-align:left !important; width:100% !important;}
		.accordion table tr {border-bottom:1px solid #262626 !important}
		.accordion table tr td {padding:0;}
		.accordion table tr {padding:10px 0;}
	}
	






#vids, .wp-block-video {position:relative; z-index:100;}
.wp-block-video {margin-bottom:-50px !important;}
.video-slider {position:relative; z-index:101;}

@media only screen and (max-width:780px) {	
	.wood {height:auto !important; min-height:auto !important}
	.wp-block-cover.wood {padding:0 !important; margin:0 -4vw !important; width:100vw !important;}
}
@media only screen and (min-width:1650px) {
	#vids {min-height:66vh !important;}
}
	
	
		