/* 
Theme Name: LaBa - a Hello (Elementor) Child Theme
Theme URI: https://github.com/elementor/hello-theme/
Description: A child theme of Hello Elementor, created for the LaBaleine Cafe, based on the 2014 static HTML one-page site
Author: Elementor Team (Hello parent theme) & Mike Hondel (LaBa child theme)
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */



/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html, button, input, select, textarea { color: #2b4042; }
body { font-size: 1em; line-height: 1.4; }

a:focus { outline: none; }

/* Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design. */
::-moz-selection { background: #FFF; text-shadow: none; }
::selection { background: #FFF; text-shadow: none; }

/* A better looking default horizontal rule */
hr { display: block; height: 1px; margin: 1em 0; padding: 0;border: 0; border-top: 1px solid #EEE;  }

/* Remove the gap between images and the bottom of their containers: h5bp.com/i/440 */
img { vertical-align: middle; }

/* COLORS
red:		bf2e1a	191,46,26
blue:		37939b
green:	b4cd95
gray:		95a1aa
dk gray:	535a5f
*/



/* ==========================================================================
   TYPOGRAPHY
   ========================================================================== 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 800; 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 700; 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 500; 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 400; 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 400; font-style: italic; 
font-family: 'Gotham SSm A', 'Gotham SSm B'; font-style: normal; font-weight: 300; 
*/

body { font-family: 'Gotham SSm A', 'Gotham SSm B', Arial, Helvetica, sans-serif; font-weight:400; }

.slide h1,
.slide h2 { font-weight: 300; }

.slide h2 em,
.slide p,
.slide p em,
#slide-1 .spotlight p,
.item.hdr h3 { font-weight: 400; }

.XX { font-weight: 500; }

.slide h3,
.slide h5,
.slide h6,
#slide-1 p { font-weight: 700; }



/* ==========================================================================
   RESET
   ========================================================================== */

/* .page-header,  */ 
p.site-description { display:none; }

.elementor-widget-container { height:auto; }



/* ==========================================================================
   MENU
   ========================================================================== */

#site-header { 
	z-index:1000; 
	position:fixed; top:0; left:0; width:100%; height:59px; 
	padding-block-start: 0;
	text-align:center; 
	background:#F7FAFB; border-bottom:1px solid #cad0d4;
}
body.logged-in #site-header { top:32px; }
#site-header .header-inner { justify-content: space-between; }
/* #masthead .inner { max-width:960px; position:relative; margin:0 auto; text-align:left; } */

#site-header .site-branding { display:inline-block; padding:0 24px; }
#site-header .site-branding a { opacity:1; 
	-webkit-transition: opacity 250ms ease-out;
	-moz-transition: opacity 250ms ease-out;
	transition: opacity 250ms ease-out;
}
#site-header .site-branding a:hover { opacity:.75; } 

/* Desktop Menu */
.site-navigation { display:none; }
.site-navigation ul { margin:0; padding:12px 0; font-size:0; background:#FFF; }
.site-navigation li { display:block; padding:0px 24px; }
.site-navigation li a { 
	display:block; padding:12px;
	font-size:18px; line-height:18px; text-decoration:none; color:#76964e; 
	-webkit-transition: color 300ms ease-out, background 300ms ease-out;
	-moz-transition: color 300ms ease-out, background 300ms ease-out;
	transition: color 300ms ease-out, background 300ms ease-out;
}
.site-navigation li a:hover { text-decoration:none; color:#FFF; background:#bf2e1a; }

/* Mobile Menu */
#site-header .site-navigation-toggle-holder { float:right; display:block; padding:0; }
#site-header .site-navigation-toggle-holder button { 
	display:block; width:42px; height:42px; margin:9px 12px 0 0; padding:0;
	color:#FFF; background:#76964e; border-radius:4px; 
}
#site-header .site-navigation-toggle-holder .site-navigation-toggle-icon { width: 24px; margin-left: 9px; }

#site-header .site-navigation-toggle-holder button:hover { cursor:pointer; }
#site-header .site-navigation-toggle-holder button.on { background:#37939b; }
/* .site-navigation-toggle-holder a img { margin:9px; } */
	
#site-header .site-navigation-dropdown ul { padding:0; }
#site-header .site-navigation-dropdown li { padding:0; }
#site-header .site-navigation-dropdown li a { 
	padding:12px 24px; 
	font-size:20px; line-height:20px; text-align:right;
	color:#FFF; background:#37939b; border-bottom:1px solid #FFF; 
}

@media only screen and (min-width: 600px) {
	#site-header .site-navigation-dropdown li a { text-align:center; }
}
@media only screen and (min-width: 992px) {
	#site-header .site-branding { padding:0 12px 0 0; }
	#site-header .header-inner { justify-content: left; }
	/* #mobile_menu { display:none; } */
	#site-header .site-navigation { display:inline-block; padding-top: 9px; }
	#site-header .site-navigation ul { padding:0 0 0 12px; background:none; border-left:2px dotted #b4cd95; }
	#site-header .site-navigation li { display: inline-block; padding:0 3px; }
	#site-header .site-navigation li a {  display:inline-block; padding:12px; }
}



/* ==========================================================================
   Parallax Scroll & Sections
   ========================================================================== */
 
/*
CONVERSION FROM PREV SITE
section #slide-1 / .slide .skrollable 	--->  #slide-1 / .slide .skrollable .elementor-element .e-grid .e-con .e-parent 
.bcg  --->  .e-con-inner
.hsContainer  --->  (none)
.hsContent  --->  .elementor-element .e-grid .e-con-full .e-con .e-child
.home
*/

html { height: 100%; min-height: 100%; }
body { height: calc(100% - 46px); min-height: calc(100% - 46px); background-color: #D7E9EB; }
.no-js { padding-top: 60px; }

.loading { background: #BEDCDE url('images/ico_loading.gif') no-repeat center center; }
.loading #bg_back,
.loading #bg_front_1,
.loading #bg_front_2,
.loading #bg_mid_1,
.loading #bg_mid_2,
.loading #bg_mid_3 { opacity:.01; }

.skrollable { position: fixed; z-index: 100; }

#bg_color, 
#bg_back,
#bg_front_1,
#bg_front_2,
#bg_mid_1,
#bg_mid_2,
#bg_mid_3 {
    top: 0; left: 0; z-index: 2;
    width: 100%; height: 100%; }
#bg_color { z-index:1; }
#bg_back { background: url("images/bubbles_back.png") no-repeat scroll 0 0; background-size:300% auto; }
#bg_front_1 { z-index:5; background: url("images/bubble_front_1pr.png") no-repeat scroll 0 0; background-size:100px auto; } /* 315x300*/
#bg_front_2 { z-index:5; background: url("images/bubble_front_2pr.png") no-repeat scroll 0 0; background-size:80px auto; } /* 257x275 */
#bg_mid_1 { background: url("images/bubble_mid_3.png") no-repeat scroll 0 0; background-size:70px auto; } /* 146x133 */
#bg_mid_2 { background: url("images/bubble_mid_5.png") no-repeat scroll 0 0; background-size:56px auto; } /* 117x113 */
#bg_mid_3 { background: url("images/bubble_mid_1pr.png") no-repeat scroll 0 0; background-size:75px auto; } /* 151x139 */

.slide { position:relative; min-width: 320px; min-height:auto; opacity: 0; }
.loaded .slide,
.no-js .slide {
	opacity: 1;
	-webkit-transition: opacity 300ms ease-out;
	-moz-transition: opacity 300ms ease-out;
	transition: opacity 300ms ease-out;
}

.e-con-inner { position: relative; width: 100%; height:auto;  }
.e-child { /* max-width: 960px; */ position:relative; margin:0 auto; padding:72px 12px 24px 12px; /* font-size:0; */ }
.e-child .e-child { padding:0; }
.e-child .e-child .e-child.left { width: 90%; /* padding-right: 10%; */ }
.e-child .e-child .e-child.right { width: 90%; /* padding-left: 10%; */ }
.e-child .e-child .e-child .indent { margin-bottom:6px; padding-left:30px; padding-bottom:24px; border-bottom:3px dotted #FFF; }

/* Slide 1 */
#slide-1 .e-con-inner { height: 100%; }
#slide-1 .e-child { position:relative; padding-top:60px; }

/* Slide Map */
#slide-map .e-con-inner  { 
	min-height:660px; overflow:hidden; 
	background-image:url('../img/wood.jpg'); 
	background-position: center center;
	background-repeat: no-repeat;
	border-top:3px solid #95a1aa;
}
#slide-map .e-child  { max-width:none; padding:72px 24px 36px 24px; }

/* Slide About */
#slide-last .e-con-inner  { background:#95a1aa; }
#slide-last .e-child  { padding:12px 24px; }
#slide-last .e-child  a { color:#535A5F; }

@media only screen and (min-width: 768px) {
	body { height: 100%; min-height: 100%; background-color: #D7E9EB; }
	#bg_back { background-size:200% auto; }
	#bg_front_1 {background-size:auto auto; }
	#bg_front_2 { background-size:auto auto; }
	#bg_mid_1 { background-size:auto auto; }
	#bg_mid_2 { background-size:auto auto; }
	#bg_mid_3 { background-size:auto auto; }
	.e-child { padding:72px 24px 24px 24px; }
	#slide-map .e-child { padding:84px 84px 24px 84px; }
}
@media only screen and (min-width: 1024px) {
	#bg_back { background-size:100% auto; }
	.e-child { padding:72px 0 24px 0; }
	#slide-1 .e-child { padding-top:72px; text-align:left; }
	#slide-map .e-con-inner { height:100%;	}
}



/* ==========================================================================
   MAIN
   ========================================================================== */

.slide h1,
.slide h2 {
	padding: 15px 30px; margin: 0 0 18px 0;
	font-size: 30px; line-height: 33px;
	color:#bf2e1a; background-color: rgba(255,255,255,0.9);
}
.slide h2 em { 
	display: inline-block; 
	font-size: 14px; line-height: 14px; text-transform: uppercase; font-style: normal;
    color: #95a1aa; 
}
.slide h3 { font-size:18px; text-transform:uppercase; color:#000; }
#slide-map h3 { text-transform:lowercase; }
.slide h4 { font-size:15px; color:#000; }
.slide h5 {
    margin: 0; padding: 24px 0 6px 0;
	font-size: 18px; text-transform: uppercase;
    color: #000; background: none;
}
.slide h5:first-of-type { padding-top:0; }

.slide h6 { margin:0 0 24px 0; font-size:15px; text-transform:uppercase; color:#000; }
.slide a { color:#bf2e1a; }
.slide a.elementor-button { color:#FFF; background: #76964e; }
.slide a.elementor-button:hover { opacity:0.65; color:#FFF; background: #76964e; }
.slide p em { color: #60686f; }

.e-child p { margin:0; padding:0 0 6px 0; font-size:15px; color: #2b4042; }
.e-child a { text-decoration: underline; }
.e-child a.btn {
	display:inline-block; padding:12px;
	text-decoration:none;
	color:#FFF; background:#bf2e1a; 
	-webkit-transition: color 300ms ease-out, background 300ms ease-out;
	-moz-transition: color 300ms ease-out, background 300ms ease-out;
	transition: color 300ms ease-out, background 300ms ease-out;
}
.e-child a.to_top.btn { background:#76964e; }
.e-child a.btn:hover,
.e-child a.to_top.btn:hover { cursor:pointer; background:#535a5f; }

@media only screen and (min-width: 1024px) {
}



/* ==========================================================================
   Section-Specific
   ========================================================================== */

#slide-1 h4 { margin:0; font-size: 24px; line-height: 27px; color:#37939b; }
#slide-1 p { margin:0; padding:0; font-size:16px; color:#85919a; }

#slide-1 .spotlight { padding:10px 30px 30px 30px; border:1px #FFF solid; }
#slide-1 .spotlight h6 { margin:0; padding:20px 0 3px 0; }
#slide-1 .spotlight p { font-size:15px; color:#75818a; }
#slide-1 .spotlight p:last-of-type { margin-bottom:0; }

#slide-1 #CDSRATINGWIDGET186 { margin:24px auto 0; }

#slide-1 .whale.e-child { padding:12px 0 0 0; text-align:center; }
#slide-1 .whale img { width:80%; height:auto; margin:0 auto 12px; }

#slide-about p { padding:0 0 24px 0; }
#slide-about a:hover { color:#FFF; }

#slide-map { padding:36px; }     
#slide-map iframe { border: 3px solid #95a1aa; } 
#slide-map .to_top { padding-top: 24px; }

@media only screen and (min-width: 768px) {
	#slide-map { padding:72px; }     
}
@media only screen and (min-width: 1024px) {
	#slide-1 .info { margin:24px 0 0 0; }
	#slide-1 .whale.e-child { width:500px; padding-top:60px; }
	#slide-1 .whale img { width:auto; height:auto; margin:0; }

	#slide-1 #TA { text-align:left; }
	#slide-1 #CDSRATINGWIDGET186 { margin:0; }
	#slide-1 #TA_cdsratingsonlynarrow186 { margin:24px 0 0 0; }

	#slide-map .e-con-inner { height:100%; }
	#slide-map iframe { min-height:480px; } 
}
@media only screen and (min-width: 1025px) {
	#slide-map .e-con-inner { height: 728px;  background-attachment: fixed; background-size: cover; }
}



/* ==========================================================================
   Footer
   ========================================================================== */

#site-footer { font-size: 12px; color: #535a5f; background:#95a1aa; }



/* ==========================================================================
   Helper classes
   ========================================================================== */

/* Image replacement */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
}
.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { clip: rect(0 0 0 0); position: absolute; width: 1px; height: 1px;  overflow: hidden; margin: -1px; padding: 0; border: 0; }

/* Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { clip: auto; position: static; width: auto; height: auto; overflow: visible; margin: 0; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements. */
.clearfix:before,
.clearfix:after { content: " "; /* 1 */ display: table; /* 2 */ }
.clearfix:after { clear: both; }



/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; 
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
