/*
Theme Name: 3GPP
Theme URI: https://3gpp.co.uk/
DESCRIPTION: 3GPP custom Wordpress theme
Version: 1.0
Author: Tonya Lawrence / alchemyuk.com
Author URI: https://www.alchemyuk.com/
Tags: 3GPP
*/

/** reset **/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,button{border:0;outline: none;font-size:100%;font:inherit;background: transparent; vertical-align:baseline;margin:0;padding:0}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
body{line-height:1; -webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:''; content:none;}
table{border-collapse:collapse;border-spacing:0}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-ExtraBoldItalic.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-ExtraBoldItalic.woff') format('woff');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-ExtraBold.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Bold.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-BoldItalic.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-SemiBold.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-SemiBoldItalic.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-MediumItalic.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Medium.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Italic.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Regular.woff2') format('woff2'),
        url('/wp-content/themes/etsi3gpp/fonts/Montserrat-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
    --montserrat: "Montserrat", sans-serif;
    /**
    --navy: #05254c;
    **/
    --black: #000;
    --blue: #06377a;
        --navy: #06377a;
    --blue-light: #0a64d4;
    --green: #75d91e;
    --white: #fff;
    /**
  --grey: #4D4D4D;
  --grey-bkg: #F5F5F4;
  --purple: #301D41;
  --cian: #45C2CC;
  --yellow: #FABD30;
  --montserrat:"stolzl", sans-serif;
  **/
}

/**
color:var(--yellow)
font-family:var(--alderwood)
background-color:var(--dark-greenop)
**/

/* general */

#overall-wrapper { overflow:hidden; }
#overall-wrapper.noscroll { /** height: 100vh; **/ overflow: hidden; }
html.noscroll, html.noscroll body { overflow: hidden; position: relative; /** height: 100%; **/ }

html,body { /** overflow-x: hidden; **/   -webkit-tap-highlight-color: rgba(0,0,0,0); }
html { /** overflow-y: scroll; **/  overflow-y: scroll; }

body::-webkit-scrollbar, body *::-webkit-scrollbar { width: 10px; }
body::-webkit-scrollbar-thumb, body *::-webkit-scrollbar-thumb { background-color: var(--blue); }
body::-webkit-scrollbar-track, body *::-webkit-scrollbar-track { background: var(--white); }
body *::-webkit-scrollbar { width: 7px; }

/** below copied to wp-admin.css - START **/

body { font: normal 1rem/170% var(--montserrat); background: var(--white); color: var(--black); }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
img, canvas, figure { max-width: 100%; height: auto; }

strong, b { font-weight: bold; }
em { font-style: italic; }

h1, h2, h3, h4, h5, h6, p { padding: 0 0 25px 0; }
h1, h2, h3, h4, h5, h6, .h1_styler, .h2_styler, .h3_styler { font-weight: bold; color: var(--navy); }
h1, .h1_styler { font-size: 3.6rem; line-height: 125%; font-weight: 600; } 
h2, .h2_styler { font-size: 1.9rem; line-height: 150%; font-weight: 600; } 
h3, .h3_styler { font-size: 1.5rem; line-height: 150%; font-weight: 600; } 
h4 {  }
h5 {  }
p {  }
a { color: var(--black); text-decoration: underline;  text-underline-offset: 2px; transition: all .3s ease; -o-transition: all .3s ease; -moz-transition: all .3s ease; -webkit-transition: all .3s ease;    -webkit-font-smoothing: antialiased; }
a:hover { text-decoration: none; }
	a[href^="tel:"] { text-decoration: none !important; cursor: default; }

ul, ol { margin: 0 0 0 14px; padding: 0 0 20px 0; }
ul { list-style: disc; margin: 0 0 0 20px; }
ol { list-style: decimal; margin: 0 0 0 18px; }
ul li, ol li { padding: 0 0 10px 0; margin: 0;  padding: 0 0 5px 0; }
ul ul { padding: 10px 0 0 0; }
ul ul li { padding: 0 0 10px 0; }

table { margin: 0 0 15px 0; }
table td, table th { padding: 10px 5px; }

hr {  }

::-moz-selection { background-color: var(--blue); color: #fff; }
::selection { background-color: var(--blue); color: #fff; }

.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }

.large_text {  }
.button_cta, #bbpress-forums .button, .bbp-form .button { display:inline-block; padding: 11px 20px; cursor: pointer; font-weight: bold; background: var(--blue); color: var(--white); text-align:center; text-decoration: none; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;   transition: all .3s ease; -o-transition: all .3s ease; -moz-transition: all .3s ease; -webkit-transition: all .3s ease; }
.button_cta:hover, #bbpress-forums .button:hover { background: var(--navy); background: var(--blue-light); }
.button_cta_list { display: flex; flex-wrap: wrap; gap: 10px 20px; padding: 5px 0 30px 0;}
.button_cta_arrow { display: flex; width: max-content; align-items: center; gap: 0 8px;}

/** below copied to wp-admin.css - END **/

/** general layout **/

.container, .tec-site-main { margin: 0 auto; width: 100%; padding: 0 40px; }
.container_capped, .tec-site-main { max-width:1280px; }
.container .container, .container .tec-site-main { padding-left: 0 !important; padding-right: 0 !important;}

input, textarea, #header_main, #header_main * { transition: all .3s ease; -o-transition: all .3s ease; -moz-transition: all .3s ease; -webkit-transition: all .3s ease; }

a.view-article { display: none; }

.clear { clear: both; }
.float_left, .alignleft { float: left; margin: 5px 35px 10px 0; }
.float_right, .alignright { float: right; margin: 5px 0 10px 35px; }
.no_padding { padding: 0; }

.embed-container { position: relative; height: 0; overflow: hidden; padding-bottom: 56.25%; /* 16x9 Aspect Ratio */  max-width: 100%; height: auto; }
.embed-container-4x3 { padding-bottom: 75%; /* 4x3 Aspect Ratio */ }
.embed-container-square { padding-bottom: 100%; }
.embed-container-mobile { padding-bottom: 132%; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top:0; left: 0; width: 100%; height: 100%; }
    .embed-container-wrapper { margin-top: 20px; margin-bottom: 40px; }

.disable_select { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none; }

.pag_nav { display: block; clear: both; text-align: center; }
.pag_nav a { text-decoration: none; }

.wp-block-image { padding: 0 0 25px 0; }

/** general form styles **/

form { margin: 0; }

input { outline: none !important; }
input, select, textarea { -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
input.text, select, textarea,  .sf-field-search input, input.ninja-forms-field,     fieldset.bbp-form input[type=text], fieldset.bbp-form select, fieldset.bbp-form input[type=tel], fieldset.bbp-form input[type=email], fieldset.bbp-form input[type=number], fieldset.bbp-form input[type=password] { padding: 10px 15px; margin: 0; border: 1px solid var(--blue); border-color: #ccc; outline: none; background-color: #fff; font: inherit;      height: auto;}
fieldset.bbp-form input[type=text], fieldset.bbp-form select, fieldset.bbp-form input[type=tel], fieldset.bbp-form input[type=email], fieldset.bbp-form input[type=number], fieldset.bbp-form input[type=password] { width: 100%;}
select { /** min-height: 43px; padding: 0 10px; **/ }
label {  }
input.text, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type='submit'] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="submit"].ninja-forms-field { background: var(--navy); border-color: var(--navy); color: var(--white); cursor: pointer;}
input[type="submit"].ninja-forms-field:hover { background: var(--blue-light); border-color: var(--blue-light);}

.bbp-login-form { max-width: 650px; margin: 0 auto;}

hr { border: none !important; background: var(--blue); height: 1px; margin-bottom: 30px;}

::-webkit-input-placeholder { color: #333F48 !important; }
:-moz-placeholder { /* Firefox 18- */ color: #333F48 !important; }
::-moz-placeholder {  /* Firefox 19+ */ color: #333F48 !important; }
:-ms-input-placeholder { color: #333F48 !important; }

/** contact form **/

.form_list { margin: 0 auto; padding: 0; list-style: none; list-style-image: none; /** max-width: 380px;  **/ }
.form_list li { margin: 0; padding: 0 0 19px 0; display: block; }
.form_list li label {  }
.form_list li .text, .form_list li textarea, .form_list li select { width: 100%; display: block; padding-top: 10px; padding-bottom: 10px; }
.form_list li .text.wpcf7-not-valid { border-color: #E30428 !important; }
.form_list li textarea { height: 120px; }
.form_list li.form_button { padding: 0; }
.form_list li.form_button input {  }

/** .form_list li select, .searchandfilter select, select.ninja-forms-field, **/ select { -webkit-appearance: none; -moz-appearance: none; appearance: none; display: block; width: 100%; background: url(/wp-content/themes/etsi3gpp/images/arrow-down.png) calc(100% - 15px) 50% no-repeat #fff; background-size: auto 9px; padding-right: 35px; }
/** .form_list li select::-ms-expand, .searchandfilter select::-ms-expand, .select.ninja-forms-field::-ms-expand **/ select::-ms-expand { display: none; }

.wpcf7-not-valid-tip { display: block; padding: 5px 0 0 0;  display: none !important; }
.wpcf7-not-valid-tip, .wpcf7-not-valid-tip * {  }
form.invalid .wpcf7-not-valid { /** background: #fbe122;  border: 1px solid #fbe122; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; **/ }

.wpcf7 form .wpcf7-response-output { clear: both; border: none; margin: 0; color: #269FC7; padding: 20px 0 0 0; text-align: left; font-weight: bold; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output { color: #E10600; font-weight: bold; }

.form-hidden-fields { display: none !important; }
.ajax-loader { display: none !important; }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none;
    -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent;  padding: 0; margin: 0; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px;  padding: 0; margin: 0; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }

/**
.slick-arrow { z-index: 10; z-index: 3; background: url(/wp-content/themes/etsi3gpp/images/scroller-left.svg) center no-repeat; background-size: 50px 50px; border: none; outline: none; text-indent: -9999px; width: 50px; height: 50px; cursor: pointer;  transition: all .3s ease; -o-transition: all .3s ease; -moz-transition: all .3s ease; -webkit-transition: all .3s ease; }
.slick-arrow:hover {  }
.slick-prev.slick-arrow {  }
.slick-next.slick-arrow { background-image: url(/wp-content/themes/etsi3gpp/images/scroller-right.svg); }
.slick-prev.slick-arrow.slick-disabled {  }
.slick-next.slick-arrow.slick-disabled {  }

**/

.slick-dots { margin: 0; padding: 50px 0 0 0; list-style: none; list-style-image: none; display:flex; align-items:center; justify-content:center; gap: 0 27px; }
.slick-dots li { margin: 0; padding: 0 !important; width: auto !important; float: none !important; line-height: 6px; }
.slick-dots li button { cursor: pointer; background: var(--blue-light); text-indent: -9999px; outline: none; border: none; padding: 0; width: 40px; width: 70px; height: 6px; line-height: 6px; transition: all .3s ease; -o-transition: all .3s ease; -moz-transition: all .3s ease; -webkit-transition: all .3s ease; }
.slick-dots li button:hover { background: var(--blue); }
.slick-dots li.slick-active button {  width: 80px; width: 70px; background: var(--blue); }


.wobble { -webkit-animation: wobble 2.5s ease-out; -webkit-animation-iteration-count: infinite; }
@-webkit-keyframes wobble {
    0% {-webkit-transform: translate3d(0, 0, 0); }
    50% {-webkit-transform: translate3d(0, -10px, 0); }
    100% {-webkit-transform: translate3d(0, 0, 0); }    
}

    .hamburger { padding: 0; display: flex; gap: 0 10px; align-items: center; cursor: pointer; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; }
    .hamburger:hover { /** opacity: 0.7; **/ }
    .hamburger.is-active {  }

    .hamburger-box { width: 26px; height: 11px; top: 1px; display: inline-block; position: relative; }

    .hamburger-inner { display: block; top: 50%; top: 0; }
    .hamburger-inner, .hamburger-inner::after { width: 26px; height: 2px; background-color: var(--navy); position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
    .hamburger-inner::after { content: ""; display: block; }
    .hamburger-inner::after { bottom: -8px; }

    .hamburger--spin .hamburger-inner { transition-duration: 0.22s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
    .hamburger--spin .hamburger-inner::after { transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

    .hamburger--spin.is-active .hamburger-inner { transform: rotate(225deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
    .hamburger--spin.is-active .hamburger-inner::after { bottom: 0 !important; transform: rotate(-90deg); transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

    .hamburger-label { color: #fff; font-size:17px; line-height: 17px; font-weight:400; font-weight:300; letter-spacing: -0.01em; }

/** header **/

#header_main { position: fixed; top:0; left: 0; right: 0; width: 100%; z-index: 999; background: var(--white);      -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.12); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.12); box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.12); }
#header_main_top { background: var(--navy); padding: 8px 0; }
#header_main_top * { color: var(--green); color: var(--white); }
#header_main_top .container { display: flex; justify-content: space-between; align-items: center; font-size: 0.9rem; font-weight: 500; }
#header_main_top p { padding: 0; display: flex; align-items: center; gap: 8px; }
#header_main_top p #logo_etsi { line-height: 7px; display: block;}
#header_main_top p #logo_etsi img { filter: brightness(0) invert(1); }
#header_main_top nav { display: flex; gap: 6px 38px; align-items: center; }
#header_main_top nav ul { margin: 0; padding: 0; list-style: none; list-style-image: none; display: flex; gap: 6px 26px; align-items: center; }
#header_main_top nav ul li { margin: 0; padding: 0; position: relative; }
#header_main_top nav ul li a { text-decoration: none;}
#header_main_top nav ul li a:hover { text-decoration: underline;}
#header_main_top nav ul:nth-of-type(1) li:not(:first-child)::after { content: ""; display: inline-block; border-left: 1px solid var(--green); border-color: var(--white); height: calc(100% - 8px); position: absolute; left: -13px; top: 4px; }
#header_main_top nav ul:nth-of-type(2) { gap: 6px 18px;}
#header_main_top nav ul:nth-of-type(2) li { line-height: 7px;}
#header_main_top nav ul:nth-of-type(2) li img { width: 16px; height: 16px;}
#header_main_base { display: flex; justify-content: space-between; align-items: center; gap: 20px 30px;}
#header_main_base #logo_3gpp { display: flex; align-items: center; gap: 0; line-height: 7px; margin-left: -20px; font-size: 1.4rem; font-weight: 800; text-decoration: none; color: var(--navy); }
#header_main_base #logo_3gpp img { height: 98px; width: auto;}
#header_main_base #logo_3gpp strong { line-height: 70%;}
#header_main_base #logo_3gpp strong span { display: block; font-size: 0.8rem; padding: 8px 0 0 0; text-transform: uppercase; font-weight: normal; }
#header_main_base nav { }
#header_main_base nav ul { margin: 0; padding: 0; list-style: none; list-style-image: none; display: flex; gap: 10px 41px; }
#header_main_base nav ul li { margin: 0; padding:0; font-weight: 600; font-size: 0.938rem; line-height: 130%; position: relative;}
#header_main_base nav ul li a { display: block; padding: 12px 0; text-decoration: none; color: var(--navy); position: relative;}
#header_main_base nav > ul > li.current-menu-item > a::after, .bbpress #header_main_base nav > ul > li.menu-item-object-forum > a::after { content: ""; display: inline-block; height: 3px; width: 24px; background: var(--blue-light); position: absolute; left: 50%; margin-left: -12px; top: 0; }
#header_main_base nav ul li a:hover { color: var(--blue-light);}
#header_main_base nav ul ul { position: absolute; background: #fff; padding: 0 20px 10px 20px; left: -20px; flex-direction: column; width: 180px; gap: 0; opacity: 0; z-index: -1; visibility: hidden; pointer-events: none; }
#header_main_base nav ul li:hover ul { z-index: 1; opacity: 1; visibility: visible; pointer-events: auto; }
#header_main_base nav ul ul li a { padding: 5px 0; }
#header_main_base .menu_toggle { display: none;}

.scrolling #header_main { background: rgba(255, 255, 255, 0.95); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.scrolling #header_main_top { padding: 5px 0; }
.scrolling #header_main_base #logo_3gpp img { height: 60px;}
.scrolling #header_main_base nav ul li ul { padding: 10px 20px;}

#section_main { padding: 141px 0 0 0;}

.page_banner { margin-bottom: 80px; padding: 40px 0; }
.page_banner * { color: var(--white);}
.page_banner .container { display: flex; align-items: center; }
#page_banner_basic { background-color: var(--blue); }
#page_banner { background-position: center; background-size: cover; background-color: var(--blue); position: relative;}
#page_banner::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(5, 37, 76, 0.6); pointer-events: none;          /* background-blend-mode: multiply;  background-color: rgba(5, 37, 76, 0.5); mix-blend-mode: multiply;  */ }
#page_banner .container { min-height: 260px; position: relative; z-index: 1; }
.home #page_banner .container { /** height: 660px; max-height: calc(60svh - 80px); **/ min-height: calc(60svh - 80px); }
/** .home #page_banner::after { display: none;} **/
.page_banner_info { max-width: 650px; max-width: 720px;}
.page_banner h1 { padding: 0;}
.page_banner .page_banner_info p { font-size: 1.125rem; font-weight: 500; padding: 35px 0 0 0; }
.page_banner_info .button_cta { font-weight: 600;}
.page_banner_info .button_cta:not(:hover) { background: var(--white); color: var(--navy);}

.page_banner_flex { display: flex; justify-content: space-between; align-items: center; width: 100%; gap: 25px 35px; flex-wrap: wrap;}

/** #page_banner_gap { display: block; height: 40px;} **/

.events_scroller { padding: 0 0 80px 0;}
.events_scroller > ul { margin: 0; padding: 0; list-style: none; list-style-image: none;}
.events_scroller > ul li { margin: 0; padding: 0;}
.events_panel { display: flex; justify-content: space-between;  flex-wrap: wrap;}
.events_panel_left { width: 46.6%;}
.events_panel_right { width: 46.6%;}
.events_panel_right img { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
.events_panel_left h2 a { text-decoration: none;}
.events_panel_left h2 a:hover { text-decoration: underline;}
.events_panel_left .button_cta { font-size: 1.125rem; font-weight: 500;}

.block_boxes_list { margin: 0 -3000px; padding: 80px 3000px; background: #f2f7fa; }
    :where(.editor-styles-wrapper) .block_boxes_list { margin: 0; padding-left: 0; padding-right: 0;}

.nf-form-content {margin-left: -10px; margin-right: -10px;}
.nf-multi-cell .nf-cell { padding: 0 10px !important; }

.page-id-37 .nf-form-content { margin-left: 0; margin-right: 0;}

#page_default { padding-bottom: 55px;}

#bbpress-forums { zoom: 1.2; }
#bbpress-forums li { padding: 0;}
fieldset.bbp-form label { padding: 0 0 8px 0;}
.bbp-remember-me label { width: auto; }
#bbpress-forums #favorite-toggle, #bbpress-forums #subscription-toggle { padding: 5px 0 20px 0;}

#site_footer { background: var(--navy); padding: 80px 0;}
#site_footer * { color: var(--white);}
#site_footer .container { display: flex; flex-direction: column; gap: 60px 0;}
#site_footer_flex { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 35px 45px; }
#site_footer_logo { width: 130px; display: flex; flex-direction: column; gap: 56px 0;}
#site_footer_logo p { padding: 0; font-weight: bold; font-size: 1.48rem;}
#site_footer_logo p a { text-decoration: none;}
#site_footer_logo p:last-of-type { font-size: 0.85rem; line-height: 120%; font-weight: 600; }
#site_footer_logo p:last-of-type img { filter: brightness(0) invert(1); margin: 6px 0 0 0; }
#site_footer_flex nav > ul, #site_footer_flex nav > ul ul { margin: 0; padding: 0 0 25px 0; list-style: none; list-style-image: none;}
#site_footer_flex nav > ul li, #site_footer_flex nav > ul ul li { margin: 0; padding: 0;}
#site_footer_flex nav > ul ul { padding: 0 0 0 20px;        padding: 0 0 0 10px; opacity: 0.7; }
#site_footer_flex nav > ul ul li { font-size: 0.9rem;}
#site_footer_flex .site_footer_last { display: flex; flex-direction: column; justify-content: space-between;}
#site_footer_flex .site_footer_last .menu, .page_banner_flex .menu { list-style: none; list-style-image: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 15px 20px;}
#site_footer_flex .site_footer_last .menu li, .page_banner_flex .menu li { margin: 0; padding: 0; font-size: 0.9rem; line-height: 130%; font-weight: 500; }
#site_footer_flex .site_footer_last .menu li:first-child, .page_banner_flex .menu li:first-child { display: none;}
#site_footer_flex .site_footer_last .menu li a, .page_banner_flex .menu li a { display: inline-block; padding: 5px 10px; background: rgba(255,255,255,0.75); text-decoration: none; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; color: var(--blue) !important;}
#site_footer_flex .site_footer_last .menu li a:hover, .page_banner_flex .menu li a:hover { background: #fff; }
#site_footer a { text-decoration: none;}
#site_footer a:hover { text-decoration: underline;}
#site_footer_base { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 35px; }
#site_footer_base small, #site_footer_base nav { font-size: 0.95rem;}
#site_footer_base nav ul { margin: 0; padding: 0; list-style: none; list-style-image: none; display: flex; gap: 5px 24px;}
#site_footer_base nav ul li { margin: 0; padding: 0;}
#site_footer_base nav ul li a { }

@media all and (min-width: 0px) and (max-width : 1800px) {



}

@media all and (min-width: 0px) and (max-width : 1600px) {

}

@media all and (min-width: 0px) and (max-width : 1530px) {

}

@media all and (min-width: 0px) and (max-width : 1500px) {

}

@media all and (min-width: 0px) and (max-width : 1420px) {

}

@media all and (min-width: 0px) and (max-width : 1400px) {


}

@media all and (min-width: 0px) and (max-width : 1380px) {


}

@media all and (min-width: 0px) and (max-width : 1320px) {


}

@media all and (min-width: 0px) and (max-width : 1200px) {

    #header_main_base .menu_toggle { display: flex;}
    #header_main_base nav { position: absolute; top: 100%; z-index: 99999999; background: #fff; right: 0; width: 275px; padding: 25px; padding: 0 40px 25px 40px; opacity: 0; visibility: hidden; pointer-events: none;}
    .open-menu #header_main_base nav { opacity: 1; visibility: visible; pointer-events: auto; }
    #header_main_base nav ul { flex-direction: column; /** text-align: right; **/ }
    #header_main_base nav ul li a { padding: 5px 0;}
    #header_main_base nav > ul > li.current-menu-item > a::after, .bbpress #header_main_base nav > ul > li.menu-item-object-forum > a::after { display: none;}
    #header_main_base nav ul li.current-menu-item a, .bbpress #header_main_base nav ul li.menu-item-object-forum a { text-decoration: underline; }

    #header_main_base nav ul ul { position: static; padding: 5px 0 0 20px !important; width: 100%; opacity: 1; z-index: 1; visibility: visible; pointer-events: auto; background: transparent; }
    #header_main_base nav ul ul li { font-size: 0.8rem;}

    .scrolling #header_main_base nav { background: rgba(255, 255, 255, 0.95); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);}
    

}

@media all and (min-width: 0px) and (max-width : 1180px) {




}

@media all and (min-width: 0px) and (max-width : 1080px) {




}

@media all and (min-width: 0px) and (max-width : 1024px) {

    .block_boxes_list ul li { width: 50%;}

}

@media all and (min-width: 0px) and (max-width : 980px) {



}

@media all and (min-width: 0px) and (max-width : 950px) {



}

@media all and (min-width: 0px) and (max-width : 900px) {


}

@media all and (min-width: 0px) and (max-width : 850px) {

    .events_panel { flex-direction: column-reverse; gap: 30px 0;}
    .events_panel_left, .events_panel_right { width: 100%;}

}

@media all and (min-width: 0px) and (max-width : 800px) {

    #site_footer_flex { gap: 30px;}
    #site_footer_flex > nav, #site_footer_flex > div:not(#site_footer_logo) { width: calc(50% - 15px); }

}

@media all and (min-width: 0px) and (max-width : 778px) {

    .tribe-events .tribe-events-l-container { padding-top: 0 !important;}

}

@media all and (min-width: 0px) and (max-width : 760px) {

    #header_main_top nav {gap: 6px 0;}

    #header_main_base nav ul li:nth-last-child(2) { border-top: 1px solid rgba(0,0,0,0.15); padding-top: 10px; }


}

@media all and (min-width: 0px) and (max-width : 750px) {



}

/** mobile **/

@media all and (min-width: 0px) and (max-width : 670px) {

    body {  }

    h1, .h1_styler { font-size: 2.5rem; }
    h2, .h2_styler { font-size: 1.5rem; }
    h3, .h3_styler {  }

    .container, .tec-site-main { padding: 0 25px; }

    #header_main_base nav { padding: 0 25px 25px 25px; }

    #section_main { padding: 103px 0 0 0;}

    #header_main_base #logo_3gpp img { height: 60px;}

    #page_banner .container { min-height: 200px;}

    .slick-dots { padding: 35px 0 0 0;}

    .page_banner { margin-bottom: 50px;}
    .events_scroller { padding: 0 0 50px 0;}
    .block_boxes_list { padding-top: 50px; padding-bottom: 50px;}
    .block_boxes_list h2 { padding: 0 0 35px 0;}
    .block_boxes_list ul { gap: 25px 0;}
    .block_boxes_list ul li { width: 100%;}

}

@media all and (min-width: 0px) and (max-width : 650px) {



}

@media all and (min-width: 0px) and (max-width : 620px) {



}

@media all and (min-width: 0px) and (max-width : 580px) {



}

@media all and (min-width: 0px) and (max-width : 540px) {

    #site_footer_logo { gap: 25px 0;}
    #site_footer_flex > nav, #site_footer_flex > div:not(#site_footer_logo) { width: 100%; }


}

@media all and (min-width: 0px) and (max-width : 500px) {



}

@media all and (min-width: 0px) and (max-width : 470px) {



}

@media all and (min-width: 0px) and (max-width : 450px) {



}

@media all and (min-width: 0px) and (max-width : 420px) {
    #header_main_top p { font-size: 0.75rem;}
    #header_main_base #logo_3gpp strong span { font-size: 0.7rem;}

}

@media all and (min-width: 0px) and (max-width : 370px) {


}

@media all and (min-width: 0px) and (max-width : 360px) {

}

.grecaptcha-badge { visibility: hidden; }

/** events **/

.tribe-theme-etsi3gpp *:not(.dashicons):not(.mce-ico) { font-family: var(--montserrat) !important;}

.tribe-events .tribe-common-c-btn, .tribe-events .datepicker .day.active {
    background-color: var(--blue) !important;
    border-color: var(--blue) !important;
    color: #fff !important;
}

.tribe-events .tribe-common-c-btn:hover {
    background-color: var(--navy) !important;
    border-color: var(--navy) !important;
}

#tec-main { padding-top: 40px !important; padding-bottom: 60px !important;}

.tribe-events .datepicker .day.active { }

.tribe-embed a, .tribe-events-event-meta a, .tribe-events-single a { color: var(--navy); text-decoration: underline;}
.tribe-embed a:hover, .tribe-events-event-meta a:hover, .tribe-events-single a:hover { text-decoration: none; }
.tribe-block__venue .tribe-block__venue__meta .tribe-block__venue__address a { color: var(--navy);}

.tribe-common a:not(.tribe-common-anchor--unstyle), .tribe-common a:not(.tribe-common-anchor--unstyle):active, .tribe-common a:not(.tribe-common-anchor--unstyle):focus, .tribe-common a:not(.tribe-common-anchor--unstyle):hover, .tribe-common a:not(.tribe-common-anchor--unstyle):visited { color: var(--navy);}

.tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text, .tribe-events .tribe-events-c-subscribe-dropdown button.tribe-events-c-subscribe-dropdown__button-text { color: var(--blue); border-color: var(--blue); }
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-icon, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-icon { color: var(--blue); stroke: var(--blue); }
.tribe-common .tribe-common-c-btn-border, .tribe-common a.tribe-common-c-btn-border { color: var(--blue); border-color: var(--blue); }
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover { background-color: var(--blue); color: var(--white);}
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active *, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus *, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within *, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover *, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active *, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus *, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within *, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover * { color: var(--white);}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container, #tribe-events-pg-template { padding-top: 0 !important;}

.tribe-events .tribe-events-calendar-list__event-featured-image { aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }
.tribe-common img { -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;}

.tec-site-main .tec-single-entry-content, .tec-site-main .tec-single-session-speakers { font: inherit !important; }

.tec-schedule-wrapper { padding-top: 20px;}
.tec-layout-table .tec-time { font-weight: bold;}
.tec-layout-table thead th { background: var(--blue); color: var(--white) !important; font-weight: bold !important;}
.tec-layout-table .tec-session-cell-content h3 { font-size: 1.2rem !important; margin: 0 !important; padding: 0 0 10px 0 !important; }
.tec-layout-table .tec-session-speakers:before { display: block;}

.tribe-block__event-website a { background: var(--blue);}

/** gutenberg **/

.wp-block-media-text>.wp-block-media-text__media { padding-bottom: 30px;}