/*
Theme Name: Szív a Szívért Alapítvány
Theme URI: https://szivaszivert.hu
Description: A Szív a Szívért Alapítvány weboldalának alapértelmezett sablonja
Author: Digitalform
Author URI: https://digitalform.hu
Version: 1.0
*/

/* vietnamese */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 100;
  src: local('Barlow Semi Condensed Thin'), local('BarlowSemiCondensed-Thin'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG7qnIE4Ygg.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 100;
  src: local('Barlow Semi Condensed Thin'), local('BarlowSemiCondensed-Thin'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG7qmIE4Ygg.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 100;
  src: local('Barlow Semi Condensed Thin'), local('BarlowSemiCondensed-Thin'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG7qoIE4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  src: local('Barlow Semi Condensed Regular'), local('BarlowSemiCondensed-Regular'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXd4qqOEo.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  src: local('Barlow Semi Condensed Regular'), local('BarlowSemiCondensed-Regular'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXdoqqOEo.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  src: local('Barlow Semi Condensed Regular'), local('BarlowSemiCondensed-Regular'), url(https://fonts.gstatic.com/s/barlowsemicondensed/v4/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXeIqq.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(https://fonts.gstatic.com/s/ptsans/v10/jizaRExUiTo99u79D0-ExdGM.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(https://fonts.gstatic.com/s/ptsans/v10/jizaRExUiTo99u79D0aExdGM.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(https://fonts.gstatic.com/s/ptsans/v10/jizaRExUiTo99u79D0yExdGM.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: local('PT Sans'), local('PTSans-Regular'), url(https://fonts.gstatic.com/s/ptsans/v10/jizaRExUiTo99u79D0KExQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(https://fonts.gstatic.com/s/ptsans/v10/jizfRExUiTo99u79B_mh0OOtLQ0Z.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(https://fonts.gstatic.com/s/ptsans/v10/jizfRExUiTo99u79B_mh0OqtLQ0Z.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(https://fonts.gstatic.com/s/ptsans/v10/jizfRExUiTo99u79B_mh0OCtLQ0Z.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: local('PT Sans Bold'), local('PTSans-Bold'), url(https://fonts.gstatic.com/s/ptsans/v10/jizfRExUiTo99u79B_mh0O6tLQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


*{
margin: 0;
padding: 0;
border: 0;
text-decoration: none; 
}

*, *:after, *::before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { font-family: 'PT Sans', sans-serif; font-size: 18px; font-weight: 400; color: #535353; line-height: 1.6; overflow-x: hidden; }

textarea, input, select, button { font-family: 'PT Sans', sans-serif; font-size: 16px; outline: none; }

h1, h2, h3, h4 { font-weight: normal; line-height: 100%; }

hr { margin: 30px 0; border-top: 5px solid #ddd; }
hr.white { border-top-color: rgba(255,255,255,0.2); }

/* Classes */
.left { float: left; }
.right { float: right; }
.clear { clear: both; }
.inner { max-width: 1200px; margin-left: auto; margin-right: auto; position: relative; }
.inner_800 { max-width: 800px; }
.alignleft { margin: 0 20px 5px 0; float: left; }
.alignright { margin: 0 0 5px 20px; float: right; }
.aligncenter { margin: 0 auto 20px auto; display: block; }
.vertical_middle { top: 50%; position: relative; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.uppercase { text-transform: uppercase; }
.center { text-align: center; }
.hide { display: none !important; }
.red { color: #ff0000; }
.p_l_50 { padding-left: 50px; }
.b_r_50p { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
.sec_font { font-family: 'Barlow Semi Condensed', sans-serif; }

/* Cols */
.row { font-size: 0; }
.row .col { font-size: 18px; vertical-align: top; display: inline-block; }
.row .col_60 { width: 60%; }
.row .col_50 { width: 50%; }
.row .col_40 { width: 40%; }
.row .col_33 { width: 33.3333333333%; }

.row.row_table { width: 100%; display: table; table-layout: fixed; }
.row.row_table .col { display: table-cell; }

/* Animation */
.anim, ul.menu li a:after { -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.anim_cubic { -webkit-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); -moz-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); -o-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); }

/* Button */
.button { height: 50px; padding: 0 20px; font-size: 20px !important; font-weight: 700; text-decoration: none !important; text-align: center; color: white !important; line-height: 50px; background: #302d2b; display: inline-block; position: relative; cursor: pointer; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.button:hover { background: #a70e13; }
.button:disabled { color: white; background: #ccc; }

.button.button_red { background: #a70e13; }
.button.button_red:hover { background: #302d2b; }

/* Checkbox and radio */
input[type="checkbox"], 
input[type="radio"] { width: 24px; height: 24px; margin: -4px 4px 0 0 !important; padding: 0 !important; text-align: center !important; background-color: white; border: 1px solid #828282; clear: none; cursor: pointer; display: inline-block; line-height: 0; outline: 0; vertical-align: middle !important;  -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; }
input[type="radio"] { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }

input[type="radio"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: #377ef2; position: relative; border-radius: 8px; display: block; content: ''; }
input[type="checkbox"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: #377ef2; position: relative; display: block; content: ''; }


/*
-------------------
	NAVIGATION
-------------------
*/
#rwd_menu { width: 100%; left: 0; top: 80px; bottom: 0; font-size: 18px; color: white; position: fixed; z-index: 100; visibility: hidden; opacity: 0; overflow: hidden; }
#rwd_menu p { margin-bottom: 10px; }
#rwd_menu p:last-child { margin-bottom: 0; }
#rwd_menu hr { max-width: none; margin: 0 0 30px 0; background-position: left top; }

#rwd_menu .rwd_menu_overlay { width: 100%; height: 100%; left: 0; top: 0; background: #302d2b; position: absolute; }
#rwd_menu .rwd_menu_wrapper { max-height: 100%; margin-top: -30px; position: relative; overflow-y: auto; opacity: 0; }

/* Primary menu */
#rwd_menu .menu ul li { padding: 0 80px; }

#rwd_menu .menu.primary_menu { margin-bottom: 30px; }
#rwd_menu .menu.primary_menu ul li.menu-item-has-children.open { background: #f2f1f0; }
#rwd_menu .menu.primary_menu ul li a { padding: 10px 0; font-size: 28px; position: relative; }
#rwd_menu .menu.primary_menu ul li.menu-item-has-children.open a { color: #000; }
#rwd_menu .menu.primary_menu ul li.menu-item-has-children > a:after { width: 30px; height: 30px; right: 0; top: 10px; background: rgba(255,255,255,0.1) url(images/icon_arrow_down_open_white.svg) no-repeat right center; background-size: cover; position: absolute; content: ''; -webkit-transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
#rwd_menu .menu.primary_menu ul li.menu-item-has-children.open > a:after { background-color: #000; ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); transform: rotate(180deg); }
#rwd_menu .menu.primary_menu ul li ul { padding: 10px 0; font-size: 20px; color: #999; display: none; }
#rwd_menu .menu.primary_menu ul li ul li { padding: 0; }
#rwd_menu .menu.primary_menu ul li ul li a { padding: 2px 10px; font-size: 20px; color: white; }
#rwd_menu .menu.primary_menu ul li ul li > a:after { width: 20px !important; height: 20px !important; top: 5px !important; right: 5px !important; background-color: transparent !important; background-image: url(images/icon_arrow_down_open.svg) !important; }
#rwd_menu .menu.primary_menu ul li ul li ul li a { padding: 2px 20px; font-size: 18px; text-decoration: underline; color: #777 !important; }
#rwd_menu .menu.primary_menu ul li ul li ul li a:hover { color: #333 !important; }

/* Menu */
#rwd_menu .rwd_menu_wrapper ul { margin-bottom: 20px; position: relative; z-index: 1; } 
#rwd_menu .rwd_menu_wrapper ul li { list-style: none; } 
#rwd_menu .rwd_menu_wrapper ul li a { padding: 3px 0; font-size: 25px; color: white; display: block; position: relative; }

/* RWD nav opened */
body.rwd_menu__opened #rwd_menu .close_rwd_menu .burg { background: transparent; }
body.rwd_menu__opened #rwd_menu .close_rwd_menu .burg:before { top: 0; -webkit-transform: rotate(45deg); }
body.rwd_menu__opened #rwd_menu .close_rwd_menu .burg:after { top: 0; -webkit-transform: rotate(-45deg); }

body.rwd_menu__opened #rwd_menu { visibility: visible; opacity: 1; }
body.rwd_menu__opened #rwd_menu .rwd_menu_wrapper { margin-top: 0; opacity: 1; }


/*
---------------
	HEADER
---------------
*/
#header { height: 120px; }
#header .inner { height: 100%; }

/* Logo */
#header .logo { width: 290px; height: 60px; left: 0; background-image: url(images/logo_heart.png), url(images/logo_text.svg); background-repeat: no-repeat; background-position: left center, 90px center; background-size: auto, 190px auto; display: block; position: absolute; }

/* Menu */
#header ul.menu { height: 40px; font-size: 0; list-style: none; position: relative; z-index: 99; } 
#header ul.menu li { height: 100%; margin-right: 20px; vertical-align: top; display: inline-block; position: relative; } 
#header ul.menu li a { height: 100%; font-size: 20px; font-weight: 700; color: #302d2b; line-height: 40px; display: block; position: relative; } 
#header ul.menu li a:after { width: 0; height: 2px; left: 0; bottom: 0; background: #a70e13; position: absolute; content: ''; } 
#header ul.menu li a:hover:after { width: 100%; } 

#header ul.menu li.current-menu-item a, 
#header ul.menu li.current_page_item a, 
#header ul.menu li.current_page_parent a { color: #a70e13; } 
#header ul.menu li.current-menu-item a:after, 
#header ul.menu li.current_page_item a:after, 
#header ul.menu li.current_page_parent a:after { width: 100%; background: #a70e13; } 

#header ul.menu li.menu-item-has-children a { padding-right: 16px; background: url(images/icon_arrow_down.svg) no-repeat right center; background-size: 10px auto; } 
#header ul.menu li.menu-item-has-children:hover a:after { width: 100%; } 

#header ul.menu li ul { width: max-content; height: auto; left: 0; top: 100%; background: #302d2b; position: absolute; visibility: hidden; opacity: 0; } 
#header ul.menu li ul li { height: auto; margin-right: 0; border-bottom: 1px solid rgba(255,255,255,0.2); display: block; } 
#header ul.menu li ul li:last-child { border-bottom: none; } 
#header ul.menu li ul li a { height: auto; padding: 10px; font-size: 18px; font-weight: normal; color: white !important; line-height: 1; background-image: none !important; } 
#header ul.menu li ul li a:hover { background-color: #252423; } 
#header ul.menu li ul li a:after { display: none !important; } 
#header ul.menu li ul li.menu-item-has-children > a { background-image: url(images/icon_arrow_right_white.svg) !important; background-repeat: no-repeat; background-position: 95% center; background: auto 20px; } 

#header ul.menu li.menu-item-has-children:hover ul { visibility: visible; opacity: 1; }

#header ul.menu li ul li ul { left: 100%; top: 0; visibility: hidden !important; opacity: 0 !important; }
#header ul.menu li ul li:hover ul { visibility: visible !important; opacity: 1 !important; }
#header ul.menu li ul li ul li a { background-image: none !important; }

/* RWD button */
#header .rwd_button { height: 50px; right: 20px; padding: 0 60px 0 15px; font-weight: 700; color: white; background: #a70e13; position: absolute; cursor: pointer; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; }
#header .rwd_button .burg { width: 30px; height: 2px; right: 15px; top: 50%; background: white; display: block; position: absolute; -moz-transition: 0.2s; -o-transition: 0.2s; -webkit-transition: 0.2s; transition: 0.2s; }

#header .rwd_button .burg:before, 
#header .rwd_button .burg:after { width: 30px; height: 2px; background: white; position: absolute; content: ''; -moz-transition: 0.2s; -o-transition: 0.2s; -webkit-transition: 0.2s; transition: 0.2s; }

#header .rwd_button .burg:before { top: -8px; left: 0; }
#header .rwd_button .burg:after { top: 8px; right: 0; }

body.rwd_menu__opened #header .rwd_button .burg { background: transparent; }
body.rwd_menu__opened #header .rwd_button .burg:before { top: 0; -webkit-transform: rotate(45deg); }
body.rwd_menu__opened #header .rwd_button .burg:after { top: 0; -webkit-transform: rotate(-45deg); }


/*
--------------
	SLIDER
--------------
*/
#slider { max-height: 650px; position: relative; }
#slider:before { width: 100%; left: 0; top: 0; bottom: 40px; background: url(images/pattern_slider.png) repeat left top; position: absolute; content: ''; z-index: 1; }
#slider:after { padding-top: 40%; display: block; content: ''; }
#slider .text_col { width: 50%; height: 100%; left: 0; top: 0; padding-left: calc((100% - 1200px) /2); padding-bottom: 40px; position: absolute; z-index: 3; }
#slider .text_col .text { color: white; }
#slider .text_col .text .line { width: 30px; height: 40px; top: 30px; border-top: 1px solid #ec9c48; position: relative; opacity: 0; }
#slider .text_col .text .title { top: 30px; font-size: 90px; font-weight: 100; line-height: 1; position: relative; opacity: 0; }
#slider .text_col .text .text { top: 30px; margin-top: 40px; line-height: 1.4; position: relative; opacity: 0; }

#slider .image_col { width: calc(50% + 200px); height: 100%; right: 0; top: 0; position: absolute; z-index: 2; }
#slider .image_col .image { width: 100%; height: 100%; height: calc(100% - 40px); left: 0; top: 70px; background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; opacity: 0; }
#slider .image_col .image:before { width: 100%; height: 100%; left: 0; bottom: 0; background: url(images/color_overlay.png) no-repeat center bottom; background-size: contain; position: absolute; content: ''; }

/* Is loaded */
body.is-loaded #slider .text_col .text .line, 
body.is-loaded #slider .text_col .text .text, 
body.is-loaded #slider .text_col .text .title { top: 0; opacity: 1; }
body.is-loaded #slider .image_col .image { top: 40px; opacity: 1; }


/*
---------------
	WELCOME
---------------
*/
#welcome { padding: 70px 0; }
#welcome .col_text1 { padding-right: 10%; }
#welcome .col_text1 .welcome_title { font-size: 50px; color: #a70e13; line-height: 1; }
#welcome .col_text1 .line { width: 30px; height: 40px; border-bottom: 1px solid #ec9c48; }

#welcome .col_text2 { line-height: 1.6; }
#welcome .col_text2 p { margin-bottom: 20px; }
#welcome .col_text2 p:last-of-type { margin-bottom: 0; }


/*
------------
	NEWS
------------
*/
#news { padding: 70px 0; background: #f2f1f0; }
#news .title { margin-bottom: 30px; font-size: 60px; color: #302d2b; line-height: 1; }
.news_wrapper { margin-left: -35px; margin-right: -35px; margin-bottom: 40px; font-size: 0; }
.news_wrapper article { width: 33.3333333333%; margin-top: 30px; padding-left: 35px; padding-right: 35px; vertical-align: top; display: inline-block; }
.news_wrapper article a { text-decoration: none !important; border-top: 1px solid #dedbd8; display: block; }
.news_wrapper article a .entry { height: 110px; padding-top: 20px; }
.news_wrapper article a .entry .datetime { margin-bottom: 5px; font-size: 14px; font-weight: 700; color: #a70e13; line-height: 1; }
.news_wrapper article a .entry .news_title { font-size: 22px; color: #302d2b; line-height: 1; }
.news_wrapper article a .thumbnail { overflow: hidden; }
.news_wrapper article a .thumbnail img { width: 100%; height: auto; display: block; position: relative; z-index: 1; transform: scale(1) translateZ(0); transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); }
.news_wrapper article a:hover .thumbnail img { -ms-transform: scale(1.05) translateZ(0); -webkit-transform: scale(1.05) translateZ(0); transform: scale(1.05) translateZ(0); }


/*
----------------------
	BEFORE CONTENT
----------------------
*/
#before_content { padding: 10px 0; font-size: 15px; font-weight: 700; color: #302d2b; background: #f0f0f0; }
#before_content a { font-weight: normal; text-decoration: underline; color: #777; }
#before_content a:hover { color: #302d2b; }

#before_content .fb-like { right: 0; top: 0; position: absolute; }


/*
----------------
	CONTENT
----------------
*/
#container { position: relative; }
#container.has_sidebar .inner:after { width: 1px; height: 100%; right: 250px; top: 0; background: #ddd; position: absolute; content: ''; }
#container.has_sidebar #content { width: calc(100% - 250px); padding-right: 50px; float: left; }

#container a { text-decoration: underline; color: #a70e13; }
#container a:hover { color: #302d2b; }

#content { padding: 30px 0; text-align: justify; }

#content h1 { margin-bottom: 30px; font-size: 50px; color: #a70e13; line-height: 1; }
#content h3 { margin-bottom: 10px; font-size: 25px; font-weight: 700; color: #a70e13; line-height: 1; }

#content p { margin-bottom: 20px; }

#content ol { margin-bottom: 20px; margin-left: 20px; list-style: decimal; }

/* Iframe wrapper */
#content .iframe_wrapper { height: 0; margin-bottom: 30px; padding-bottom: 56.25%; padding-top: 25px; position: relative; }
#content .iframe_wrapper iframe { width: 100%; height: 100%; left: 0; top: 0; position: absolute; }

/* Gallery */
#content ul.gallery { max-width: none; margin-left: -10px !important; margin-right: -10px !important; font-size: 0; }
#content ul.gallery li { width: 25%; margin-bottom: 20px; padding-left: 10px; padding-right: 10px; vertical-align: top; display: inline-block; list-style: none; }
#content ul.gallery li .gallery_wrapper { background: white; position: relative; z-index: 2; -moz-box-shadow: 0 2px 4px rgba(0,0,0,0.2); -webkit-box-shadow: 0 2px 4px rgba(0,0,0,0.2); box-shadow: 0 2px 4px rgba(0,0,0,0.2); }

#content ul.gallery li .gallery_wrapper:before, 
#content ul.gallery li .gallery_wrapper:after { height: 0; left: 0; right: 0; top: 0; background: #ccc; position: absolute; content: ''; z-index: -1; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
#content ul.gallery li .gallery_wrapper:before { opacity: 0.4; }
#content ul.gallery li .gallery_wrapper:after { opacity: 0.3; }
#content ul.gallery li:hover .gallery_wrapper:before { height: 5px; left: 7px; right: 7px; top: -5px; }
#content ul.gallery li:hover .gallery_wrapper:after { height: 10px; left: 14px; right: 14px; top: -10px; }

#content ul.gallery li .gallery_content { height: 300px; position: relative; }
#content ul.gallery li .gallery_content .image_wrapper { left: 10px; top: 10px; right: 10px; bottom: 10px; position: absolute; background-repeat: no-repeat; background-position: center; background-size: cover; }
#content ul.gallery li .gallery_title { height: 70px; padding: 0 40px 0 15px; font-size: 16px; font-weight: bold; color: #111; line-height: 16px; background: #f0f0f0; position: relative; }
#content ul.gallery li .gallery_title .count { height: 20px; right: 15px; top: 25px; font-size: 16px; font-weight: normal; color: #a70e13; line-height: 20px; position: absolute; }

/* Single gallery */
#content ul.single_gallery { max-width: none; margin-left: -10px !important; margin-right: -10px !important; font-size: 0; }
#content ul.single_gallery li { width: 20%; margin-bottom: 20px; padding-left: 10px; padding-right: 10px; vertical-align: top; display: inline-block; }
#content ul.single_gallery li a { padding: 4px; border: 1px solid #f3ece4; display: block; }
#content ul.single_gallery li a:hover { border-color: #444; }
#content ul.single_gallery li a img { width: 100%; height: auto; margin: 0 !important; display: block; }

#content ul.single_gallery_running { max-width: 800px; margin: auto; }
#content ul.single_gallery_running li { margin-bottom: 30px; text-align: center; }
#content ul.single_gallery_running li img { display: inline-block; }
#content ul.single_gallery_running .caption { margin: 10px 30px 0 30px; padding: 10px 0 10px 10px; font-size: 16px; font-style: italic; text-align: left; color: #333; line-height: 18px; border-left: 3px solid #111; }
#content .gallery_desc { margin-bottom: 30px; font-style: italic; }

#content .gallery_part { margin-bottom: 30px; }

/* News */
#content .filter_by_year { height: 40px; right: 0; top: 35px; position: absolute; }
#content .filter_by_year label { font-size: 16px; font-weight: 700; }
#content .filter_by_year select { height: 40px; padding-left: 5px; background: #f0f0f0; border: 1px solid #ddd; }

/* Tags */
#content .post_tags { padding: 15px; background: #f0f0f0; border: 1px solid #ddd; }
#content .post_tags a { font-size: 15px; color: #333; line-height: 1; display: inline-block; }


/*
---------------
	SIDEBAR
---------------
*/
#sidebar { width: 250px; padding-top: 30px; float: right; }
#sidebar .widget { margin-bottom: 20px; padding-bottom: 20px; padding-left: 20px; font-size: 17px; border-bottom: 1px solid #ddd; }
#sidebar .widget .widget_title { margin-bottom: 10px; font-size: 25px; font-weight: 700; color: #a70e13; line-height: 1; }

#sidebar .widget ul { margin-left: 20px; }
#sidebar .widget ul li { line-height: 1; }
#sidebar .widget ul li a { line-height: 1.2; display: block; }
#sidebar .widget ul li .post-date { font-size: 14px; color: #777; line-height: 1; display: inline-block; }

#sidebar .widget.widget_recent_entries ul li { margin-bottom: 5px; }



/*
---------------
	FOOTER
---------------
*/
#footer { padding: 50px 0 90px; color: white; background: #a70e13 url(images/bgr_footer.png) repeat-x left bottom; }

/* Logo */
#footer .logo { width: 320px; height: 90px; margin-bottom: 30px; background-image: url(images/logo_heart_orange.png), url(images/logo_text_white.svg); background-repeat: no-repeat; background-position: center top, center bottom; background-size: auto, 100% auto; display: inline-block; }

/* Menu */
#footer ul.menu { margin-bottom: 30px; font-size: 0; position: relative; }
#footer ul.menu:before { width: 100%; height: 1px; left: 0; top: 50%; background: rgba(255,255,255,0.2); position: absolute; content: ''; z-index: 1; }
#footer ul.menu li { padding: 0 15px; vertical-align: top; background: #a70e13; display: inline-block; position: relative; z-index: 3; }
#footer ul.menu li a { height: 30px; font-size: 18px; font-weight: 700; color: #fbbabc; line-height: 30px; display: block; }
#footer ul.menu li a:hover { color: white; }
#footer ul.menu li.current-menu-item a { color: white; }

/* Copyright */
#footer .copyright { font-size: 15px; line-height: 1; }


/*
--------------
	FORM
--------------
*/
.form-row { margin-bottom: 10px !important; }
.form-row.form-row-first { width: calc(50% - 5px); float: left; }
.form-row.form-row-last { width: calc(50% - 5px); float: right; }
.form-row.form-row-wide { width: 100%; float: none; clear: both; }

.form-row a { text-decoration: underline; color: #333; }
.form-row a:hover { color: #000; }
.form-row br { display: none; }
.form-row label { font-size: 17px; font-weight: 700; text-align: left; color: #333; display: block; }
.form-row label.bold { margin-bottom: 20px; font-size: 18px; text-align: center; }

.form-row select,
.form-row textarea,
.form-row input[type=tel],
.form-row input[type=text],
.form-row input[type=email],
.form-row input[type=number],
.form-row input[type=password] { width: 100%; height: 50px; padding-left: 10px; font-size: 16px; background: #f6f6f6; border: 1px solid #ddd; }

.form-row select:focus,
.form-row textarea:focus,
.form-row input[type=tel]:focus,
.form-row input[type=text]:focus,
.form-row input[type=email]:focus,
.form-row input[type=number]:focus,
.form-row input[type=password]:focus { border-color: #a70e13; }

.form-row textarea { height: 150px; padding: 10px; resize: vertical; }


/*
-------------------
	RWD DESIGN
-------------------
*/
@media only screen and (max-width: 1600px) { 

	/* SLIDER */
	#slider .text_col .text .title { font-size: 65px; }
}

@media only screen and (max-width: 1440px) { 

	/* DEFAULT: Button */
	.button { font-size: 19px !important; }

	/* HEADER */
	#header { height: 100px; }
	
	/* HEADER: Menu */
	#header ul.menu li a { font-size: 19px; } 
}

@media only screen and (max-width: 1200px) { 
	
	/* DISPLAY: None */
	.hide_in_1200 { display: none !important; }
	
	/* DEFAULT */
	.p_l_30 { padding-left: 20px; }
	.p_r_30 { padding-right: 20px; }
	
	/* HEADER: Logo */
	#header .logo { width: 242px; height: 50px; left: 20px; background-position: left center, 70px center; background-size: auto 50px, 160px auto; }
	
	/* HEADER: Menu */
	#header ul.menu li a { font-size: 18px; } 
	
	/* SLIDER */
	#slider .text_col { padding-left: 20px; }
	#slider .text_col .text .line { height: 20px; }
	#slider .text_col .text .text { margin-top: 20px; }

	#slider .image_col { width: calc(50% + 100px); }
	
	/* NEWS */
	#news { padding: 50px 0; }
	#news .title { font-size: 50px; }
	.news_wrapper { margin-left: -20px; margin-right: -20px; }
	.news_wrapper article { padding-left: 20px; padding-right: 20px; }
	
	/* BEFORE CONTENT */
	#before_content .fb-like { right: 20px; }
}

@media only screen and (max-width: 960px) { 

	/* DISPLAY: None */
	.hide_in_960 { display: none !important; }
	
	/* DISPLAY: Block */
	.show_in_960 { display: block !important; }
	
	/* HEADER */
	#header { height: 80px; }
	#header .inner { padding-right: 150px; }
	
	/* SLIDER */
	#slider:after { display: none; }
	#slider .text_col { width: 100%; left: auto; top: auto; padding: 20px; position: relative; }
	#slider .text_col .text { top: auto; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

	#slider .image_col { width: 100%; height: auto; right: auto; top: auto; position: relative; }
	#slider .image_col .image { height: auto; left: auto; top: 30px; position: relative; }
	#slider .image_col .image:after { padding-top: 50%; display: block; content: ''; }

	body.is-loaded #slider .image_col .image { top: 0; opacity: 1; }
	
	/* WELCOME */
	#welcome { padding: 50px 0; }
	
	/* NEWS */
	#news { padding: 50px 0; }

	/* CONTENT */
	#container.has_sidebar .inner:after { display: none; }
	#container.has_sidebar #content { width: 100%; padding-right: 0; float: none; }

	/* CONTENT: Gallery */
	#content ul.gallery li { width: 33.3333333333%; }
}

@media only screen and (max-width: 768px) { 

	/* DISPLAY: None */
	.hide_in_768 { display: none !important; }

	/* NAVIGATION: Primary menu */
	#rwd_menu .menu ul li { padding: 0 50px; }
	
	/* SLIDER */
	#slider .text_col .text .title { font-size: 9vw; }
	
	/* WELCOME */
	#welcome { padding: 30px 0; }
	#welcome .col { width: 100%; display: block;	 }
	#welcome .col_text1 { margin-bottom: 30px; padding-right: 0; }
	#welcome .col_text1 .welcome_title { font-size: 6vw; }
	#welcome .col_text1 .line { height: 30px; }

	/* NEWS */
	#news { padding: 30px 0; }
	#news .title { font-size: 6vw; }
	.news_wrapper article { width: 50%; }
	.news_wrapper article:nth-child(3) { display: none; }

	/* CONTENT */
	#content h1 { font-size: 7vw; }
	
	/* CONTENT: Gallery */
	#content ul.gallery li { width: 50%; }
	
	/* CONTENT: Single gallery */
	#content ul.single_gallery li { width: 25%; }
}

@media only screen and (max-width: 640px) { 

	/* DISPLAY: None */
	.hide_in_640 { display: none !important; }

	/* NAVIGATION: Primary menu */
	#rwd_menu .menu ul li { padding: 0 30px; }
	#rwd_menu .menu.primary_menu ul li a { padding: 5px 0; }
	
	/* SLIDER */
	#slider .text_col .text .title { font-size: 10vw; }
	
	/* WELCOME */
	#welcome .col_text1 .welcome_title { font-size: 7vw; }
	
	/* NEWS */
	#news .title { font-size: 7vw; }
	
	/* CONTENT */
	#content h1 { font-size: 8vw; }

	/* CONTENT: Single gallery */
	#content ul.single_gallery li { width: 33.3333333333%; }
	
	/* FOOTER: Menu */
	#footer ul.menu:before { display: none; }
	#footer ul.menu li { padding: 10px 0; background: none; display: block; }
	#footer ul.menu li a { height: auto; font-size: 18px; line-height: 1; }
}

@media only screen and (max-width: 480px) { 

	/* NAVIGATION: Primary menu */
	#rwd_menu .menu ul li { padding: 0 20px; }
	
	/* HEADER: Logo */
	#header .logo { width: 195px; height: 40px; background-position: left center, 60px center; background-size: auto 40px, 120px auto; }
	
	/* SLIDER */
	#slider .text_col .text .title { font-size: 11vw; }
	
	/* WELCOME */
	#welcome .col_text1 .welcome_title { font-size: 8vw; }
	
	/* NEWS */
	#news .title { font-size: 8vw; }
	.news_wrapper { margin-left: 0; margin-right: 0; margin-bottom: 40px; font-size: 0; }
	.news_wrapper article { width: 100%; padding-left: 0; padding-right: 0; display: block; }
	.news_wrapper article:nth-child(3) { display: block; }
	.news_wrapper article a .entry { height: auto; padding-bottom: 20px; }
	
	/* CONTENT */
	#content h1 { font-size: 9vw; }
	
	/* CONTENT: Gallery */
	#content ul.gallery { margin-left: 0 !important; margin-right: 0 !important; }
	#content ul.gallery li { width: 100%; padding-left: 0; padding-right: 0; display: block; }
	
	/* CONTENT: Single gallery */
	#content ul.single_gallery li { width: 50%; }
}