/*
Theme Name: Maui Music and Food Experience 
Text Domain: mmfe
Version: 1.1
Requires at least: 4.7
Requires PHP: 5.2.4
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks, accessibility-ready
Author: the WordPress team
Author URI: https://wordpress.org/
Theme URI: https://wordpress.org/themes/twentytwenty/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0-modified | 20110126
   License: none (public domain)
*/

/* ---------------------------------------------------
       CUSTOM PROPERTIES
--------------------------------------------------- */

:root {
  /* Colors */
  --mmfe-dark-blue: #002554;
  --mmfe-light-blue: #00a3e0;
  --mmfe-baby-blue: #479FDC;
  --mmfe-light-green: #8bc400;
  --mmfe-light-orange: #ffb81c;
  --mmfe-light-red: #ff5869;
  --mmfe-light-purple: #bb29bb;
  --mmfe-white: #fff;
  --mmfe-cream: #FCF9EA;
  

  /* Layout */
  --max-width: 1205px;
  --row-padding: 3rem 1.5rem;
  --col-gap: 2rem;


  /* Typography */
  --font-size-base: 1rem;
}




/* ---------------------------------------------------
       RESET
--------------------------------------------------- */

*,
*::before,
*::after {
  box-sizing: border-box; /* essential — border-box everywhere */
  margin: 0; /* kill default margins */
  padding: 0; /* kill default padding */
}

body {
  line-height: 1.5; /* better default than browser's ~1.2 */
  -webkit-font-smoothing: antialiased; /* smoother fonts on Mac/iOS */
}

img,
video,
picture,
svg {
  display: block; /* kills the mystery gap under inline images */
  max-width: 100%; /* responsive images by default */
}

input,
button,
textarea,
select {
  font: inherit; /* form elements don't inherit font by default — fix that */
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance; /* NEW — evens out heading line lengths beautifully */
}

p {
  text-wrap: pretty; /* NEW — avoids orphaned single words on last line */
}

#root,
#__next {
  isolation: isolate;
}

/* ---------------------------------------------------
       GLOBAL
--------------------------------------------------- */

body {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	font-family: "poppins", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.6rem;
}

.center-align {
	text-align: center;
}	

.respond-img {
  width: 100%;
  height: auto;
    display: block;
  
}

.rounded-img {
  border-radius: 8px;
}


h1,
.lineup-day h3 { 
	font-size:2.2rem; 
	text-transform: uppercase;
	line-height: 2.4rem;
	margin-bottom: 30px;
	background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
} 

h2 { 
	font-size:1.9rem; 
	text-transform: uppercase;
	line-height: 2.1rem;
	margin-bottom: 20px;
	background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
} 

h3 { 
	font-size:1.9rem; 
	line-height: 1.5rem;
	margin-bottom: 20px;
}


.bodycopy p,
.bodycopy  {
	font-family: "poppins", sans-serif;
	font-weight: 200;
	font-style: normal;
	line-height: 1.6rem;
}

body p {
	padding-bottom: 15px;
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       GLOBAL BUTTON SPECS
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */


a.mmfe-rise-button {
    display: inline-block;
    padding: 0.55rem 1.5rem 0.4rem 1.5rem;
    border-radius: 2rem;
    font-size: 0.85rem;
    line-height: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    margin-bottom: 0.75rem;
    margin-right: 0.25rem;
    margin-top: 10px;
    }


/* --- SOLID LIGHT BLUE - WHITE TEXT --- */

.lineup-cta-buttons .lineup-cta-link-button:first-child,
.rise-hompage-speakers-spotlight-button:first-child,
.light-blue-solid-button {
  	background-color: var(--mmfe-baby-blue);
	border: 2px solid var(--mmfe-baby-blue);
    color: #fff;
    }
    
.lineup-cta-buttons:hover .lineup-cta-link-button:first-child:hover,
.rise-hompage-speakers-spotlight-button:first-child:hover {
  	background-color: var(--mmfe-dark-blue);
	border: 2px solid var(--mmfe-dark-blue);

	}
    
/* --- SOLID RED - WHITE TEXT --- */


a.regeneration-topic{
	background-color: #EC656E;
	border: 2px solid #EC656E;
    color: #fff;
    }

/* --- DARK LIGHT OUTLINE - LIGHT BLUE TEXT --- */

.lineup-cta-buttons .lineup-cta-link-button:nth-child(2) {
	background-color: transparent;
	border: 2px solid #479FDC;
	color: #479FDC;
	}
	
.lineup-cta-buttons .lineup-cta-link-button:nth-child(2):hover {	
  	background-color: var(--mmfe-dark-blue);
	border: 2px solid var(--mmfe-dark-blue);
    color: #fff;
    }

/* --- SOLID PURPLE - WHITE TEXT --- */

a.innovation-topic,
a.mmfe-rise-article-cta  { 
	background-color: #AB37B4; 	
	border: 2px solid #AB37B4;	
	color: #fff; }


/* --- SOLID GREEN - WHITE TEXT --- */

a.sustainability-topic  { 
	background-color: #97C23C; 	
	border: 2px solid #97C23C;	
	color: #fff; 
	}


div a.mmfe-rise-topic-button {

}


a.regeneration-topic,
a.innovation-topic,
a.sustainability-topic {
	 padding: 0.35rem 1rem;
	} 


/* ---------------------------------------------------
       FW WRAPPER 
--------------------------------------------------- */

.full-width {
  width: 100%;
}

/* ---------------------------------------------------
       CONTENT FRAME 
--------------------------------------------------- */

.content-frame {
  width: 100%;
  max-width: 1205px;
  margin: 0 auto;
  padding: 2rem 2rem;
}




/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       		GLOBAL COLLECTIVE SWITCHER
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */   


#global-collective-switcher {
    background-color: #fff;
    width: 100%;
}

#global-collective-switcher-inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1.5rem;
    padding: 0.5rem 1.5rem;
}

/* --- Buttons --- */

.global-collective-switcher-button {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    text-decoration: none;
}

.global-collective-switcher-button img {
    display: block;
    height: 30px;
    width: auto;
    object-fit: contain;
    object-position: left center;
}

@media ( max-width: 800px ) {
    .global-collective-switcher-button img {
        object-position: center center;
    }
}

/* --- Current site — no pointer --- */

.global-collective-switcher-button.is-current-site {
    cursor: default;
}

/* --- 2 buttons — rein in the size a little --- */

.switcher-count-2 .global-collective-switcher-button img {
    height: 45px;
}

/* --- Mobile: < 800px — centered and fills width --- */

@media ( max-width: 800px ) {

    #global-collective-switcher-inner {
        justify-content: center;
        gap: 0;
        padding: 0.5rem 1rem;
    }

    .global-collective-switcher-button {
        flex: 1;
        justify-content: center;
    }

    /* 4 buttons — shrink to fit */
    .switcher-count-4 .global-collective-switcher-button img {
        height: auto;
        width: 100%;
        max-width: 100%;
    }

}


/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       					HEADER
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

header#header {
  background-color: var(--mmfe-light-purple);
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
  position: relative;
}

#header {
  transition: box-shadow 0.3s ease;
}

#header * {
  transition: all 0.3s ease;
}

#header.sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

header div.content-frame {
  display: grid;
  grid-template-columns: 200px 1fr 140px 180px;
  background-color: var(--mmfe-light-purple);
  color: var(--mmfe-white);
  align-items: center;
}

header#header #header-tab-bar {
  background-color: var(--mmfe-dark-blue);
}

#header-logo {
  padding: 20px;
}

#kgi-logo-header,
#header-logo {
  transition: all 0.35s ease;
}

#nav-row-content-frame {
  transition: padding 0.35s ease;
}

.sticky #nav-row-content-frame {
  padding-top: 0;
  padding-bottom: 0;
}

.sticky #header-logo {
  padding-top: 10px;
  padding-bottom: 10px;
}

.sticky #header-donate,
.sticky #header-tickets {
  font-size: 12px;
}

#kgi-logo-header {
  height: 65px;
}

.sticky #kgi-logo-header {
  height: 45px;
}

.desktop-header-ctas {
  display: flex;
}

.header-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 3rem;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-decoration: none;
  transition: opacity 0.2s ease;
  padding: .655rem 2rem 0.75rem;
  line-height: 1;
	font-family: "eurostile-extended", sans-serif;

}

.header-btn:hover {
  opacity: 0.85;
}

#header-donate {
  background: transparent;
  border: 2.5px solid var(--mmfe-white);
  color: var(--mmfe-white);
}

#header-tickets {
  background: var(--mmfe-white);
  border: 2.5px solid var(--mmfe-white);
  color: var(--mmfe-dark-blue);
  margin-left: 1rem;
  margin-right: 2rem;
}

.mobile-header-ctas {
  display: none;
}


.header-phone {
  color: rgb(251, 183, 30);
  font-weight: bold;
  text-align: center;
  font-family: "eurostile-extended", sans-serif;
  font-size: 24px;
  margin-bottom: 8px;
  margin-top: -12px;
}

.header-phone-mobile {
  display: none;

  color: rgb(251, 183, 30);
  font-weight: bold;
  text-align: center;
  font-family: "eurostile-extended", sans-serif;
  margin: -5px 0 20px;
  font-size: 18px;
  line-height: 1;
}

@media screen and (max-width: 600px) {
  .mobile-header-ctas {
    display: block;
    width: 100%;
    text-align: center;
    padding-bottom: 10px;
    justify-content: center;
  }
  .mobile-header-ctas .header-btn {
    margin: 0 10px !important;
  }
  #nav-row-content-frame {
    flex-wrap: wrap;
    height: auto !important;
  }
  .desktop-header-ctas {
    display: none;
  }
  .header-phone {
    display: none;
  }
  .header-phone-mobile {
    display: block;
  }
}

@media screen and (max-width: 1108px) {
  #kgi-logo-header,
  #mmfe-logo-header {
    height: 35px;
  }

  .header-phone {
    font-size: 24px;
    margin-bottom: 0;
    margin-top: 0;
  }
}

@media screen and (max-width: 950px) {
  .header-phone {
    font-size: 18px;
    line-height: 1;
  }
}

@media screen and (max-width: 790px) {
  .header-phone {
    font-size: 14px;
  }
}

@media screen and (max-width: 550px) {
  #kgi-logo-header,
  #mmfe-logo-header {
    height: 50px;
  }

  .sticky #kgi-logo-header,
  .sticky #mmfe-logo-header {
    height: 40px;
  }
}

@media screen and (max-width: 1285px) {
  header div.content-frame {
    grid-template-columns: 200px 1fr 140px 220px;
  }
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       		HERO IMAGE AREA
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

#hero-image-area div {
  padding: 0;
}

.slick-slider {
  z-index: 1;
}

.slick-arrow {
  display: none !important;
}

#hero-image-area {
  position: relative;
}

.slick-dots button {
  background: var(--mmfe-white);
  border-radius: 50%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: 0;
  width: 15px;
  height: 15px;
  border: 0;
  outline: 0;
  cursor: pointer;
}

.slick-dots {
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 5;
}

.slick-dots li {
  list-style: none;
  margin: 0;
  padding: 0.5rem;
}

.hero-image-overlay {
  position: absolute;
  bottom: -1px;
  z-index: 4;
  left: auto;
  right: auto;
  width: 100%;
  display: flex;
  justify-content: center;
}

.hero-image-overlay img {
  width: 100%;
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       		AREA BELOW SLIDE ON HOME PAGE 
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

#aloha-spirit-area {
  background-color: var(--mmfe-dark-blue);
}

@media (min-width: 800px) {
  #aloha-spirit-area .content-frame {
    display: flex;
    gap: 3rem;
  }

  #aloha-area-text,
  #aloha-area-video {
    flex: 1;
  }
}

#aloha-area-text h1 {
	background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

#aloha-area-text p {
  color: var(--mmfe-white);
  font-size: 1.3rem;
}


#aloha-area-video iframe {
  width: 100% !important;
  height: auto;
  aspect-ratio: 16 / 9;
  display: block;
  border-radius: 8px;
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       		PRIMARY DESKTOP NAV
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

nav > ul {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  height: 100%;
  align-content: center;
  justify-content: center;
  font-weight: 900;
  	font-family: "eurostile-extended", sans-serif;
}

nav#header-menu {
  justify-self: center;
  height: 100%;
}

nav#header-menu a {
  color: var(--mmfe-white);
  text-decoration: none;
  text-transform: uppercase;
}

#nav-row-content-frame {
  padding: 0.5rem 0;
}

nav#header-menu .sub-menu a {
  font-family: "Manrope", sans-serif;
  background-color: var(--mmfe-dark-blue);
  font-weight: bold;
  padding: 0.6rem 0.8rem;
  font-size: 0.9rem;
  display: block;
  min-width: 200px;
  text-transform: none;
  line-height: 1.2;
}

.sub-menu {
  border-radius: 10px;
  overflow: hidden;
  padding-top: 0;
}

nav#header-menu .menu-item-has-children > a:after {
  content: ".";
  display: block;
  content: "";
  position: absolute;
  right: -16px;
  top: 47%;
  transform: translateY(-50%);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid transparent;
  left: auto;
}

nav#header-menu .menu-item-has-children:hover > a:after {
  border-top-color: var(--mmfe-white);
}

nav#header-menu .menu-item-has-children > a {
  position: relative;
}

nav#header-menu .sub-menu a:hover {
  background-color: var(--mmfe-light-purple);
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       		HAM NAV
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

nav > ul > li,
nav > ul > li > a {
  height: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
}

.sub-menu {
  display: none;
  list-style: none;
  position: absolute;
  left: 0;
  top: 70px;
  text-transform: none;
}

.sticky .sub-menu {
  top: 57px;
}

.menu-item-has-children {
  position: relative;
}

.menu-item-has-children:hover > .sub-menu {
  display: block;
}

/* Hide hamburger on desktop */
.ham-btn {
  display: none;
}

@media (max-width: 1108px) {
  button:not(.toggle).ham-btn {
    background: none;
    appearance: none;
    -webki-appearance: none;
    -moz-appearance: none;
    outline: 0;
  }

  /* Topbar row */
  #nav-row-content-frame {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.5rem;
    height: 56px;
    grid-template-columns: unset;
  }

  #header-donate,
  #header-tickets {
    padding: 0.3rem 1rem 0.45rem;
    font-size: 0.9rem;
      font-weight: 900;
  }

  /* Show hamburger */
  .ham-btn {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 28px;
    height: 20px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 2px 0;
    flex-shrink: 0;
  }

  .ham-btn span {
    display: block;
    height: 4px;
    background: var(--mmfe-dark-blue);
    transition:
      transform 0.25s ease,
      opacity 0.25s ease;
  }

  .ham-btn.open span:nth-child(1) {
    transform: translateY(5px) rotate(45deg);
  }
  .ham-btn.open span:nth-child(2) {
    opacity: 0;
  }
  .ham-btn.open span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  /* Nav drawer */
  nav#header-menu {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--mmfe-light-purple);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
    z-index: 999;
    height: auto;
    width: 100%;
  }

  nav#header-menu.open {
    max-height: 600px;
    overflow-y: auto;
    border-bottom: 3px solid var(--mmfe-dark-blue);
  }

  /* Primary items */
  nav#header-menu > ul {
    display: block;
    height: auto;
  }

  nav#header-menu > ul > li {
    display: block;
    height: auto;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  }

  nav#header-menu > ul > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    font-size: 15px;
    height: auto;
    width: 100%;
  }

  nav#header-menu > ul > li > a:hover {
    background: var(--mmfe-dark-blue);
  }

  /* Arrow on parent items - override desktop pseudo-element */
  nav#header-menu .menu-item-has-children > a::after {
    content: "\25BC";
    font-size: 11px;
    color: #00a3e0;
    transition: transform 0.22s ease;
    position: static;
    transform: none;
    border: none;
  }

  nav#header-menu .menu-item-has-children.open > a::after {
    transform: rotate(180deg);
  }

  /* Sub-menu accordion */
  nav#header-menu .sub-menu {
    display: block;
    position: static;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.28s ease;
    background: var(--mmfe-white);
    border-radius: 0;
    top: auto;
    padding-top: 0;
  }

  nav#header-menu .sub-menu.open {
    max-height: 300px;
  }

  nav#header-menu .sub-menu li {
    display: block;
    height: auto;
  }

  nav#header-menu .sub-menu a {
    display: block;
    padding: 10px 20px 10px 40px;
    font-size: 14px;
    color: var(--mmfe-dark-blue);
    border-bottom: 2px solid var(--mmfe-light-purple);
    background: var(--mmfe-white);
    text-transform: none;
    min-width: unset;
    height: auto;
    font-family: "Manrope", sans-serif;
  }

  nav#header-menu .sub-menu li:last-child a {
    border-bottom: none;
  }

  nav#header-menu .sub-menu a:hover {
    background: var(--mmfe-dark-blue);
    color: var(--mmfe-white);
  }
}

@media screen and (max-width: 550px) {
    #header-donate,
    #header-tickets {
      font-size: 1.2rem;
    }

    #header-donate {
      margin-bottom: 10px !important;
    }
}

@media screen and (max-width: 500px) {
    #header-donate,
    #header-tickets {
      /* font-size: .75rem; */
      margin-left: 0 !important;
    }
    #nav-row-content-frame {
      padding: 0 1rem;
    }
    #kgi-logo-header, #header-logo {
      padding-left: 0;
    }
}

@media screen and (min-width: 951px) and (max-width: 1108px) {

}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       FLEXCON : TWO COLMUN IMAGE / TEXT 
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

div.image_left_text_right,
div.text_left_image_right {
  display: flex;
  gap: 3rem;
}

.row-two-col-image,
.row-two-col-text {
  flex: 1;
}

.row-two-col-text h2 {
  font-style: normal;
  text-transform: uppercase;
  font-weight: 900;
  background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.row-two-col-text p {
font-family: "poppins", sans-serif;
font-weight: 400;
font-style: normal;
}

div.text_left_image_right {
  flex-direction: row-reverse;
}

@media (max-width: 1108px) {
  div.image_left_text_right,
  div.text_left_image_right {
    flex-direction: column;
  }

  div.text_left_image_right {
    order: -1;
  }
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       HOME PAGE BESPOKE
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */



/* ============================================
   FOOD SLIDER
   ============================================ */

.home .full-width-slider-2 {
	background-color: #AC37B5;
}

.home .full-width-slider-2 .content-frame p,
.home .full-width-slider-2 .content-frame h2 {
	text-align: center;
	color: #fff;
}

/* ============================================
   RISE MAUI
   ============================================ */

.home #mmfe-flex-content-content-block-3 p {
	text-align: center;
}


/* ============================================
   MMFE RECAP
   ============================================ */


.home .full-width-slider-2 .content-frame h2 {
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #fff !important; /* your actual text color */
    color: #fff !important;
    }


.home .mmfe-flex-content-content-block-4 {
	background-color: #48A0DB;
}

.home .mmfe-flex-content-content-block-4 .image_left_text_right h2 {
	    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #000 !important; /* your actual text color */
    color: #000 !important;
	}


/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       FLEXCON : TWO COLMUN VIDEO / TEXT 
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */


@media (min-width: 800px) {
 	 .mmfe-flex-content-text-video .content-frame {
  		  display: flex;
  		  gap: 3rem;
 	 }
  }




.row-two-col-video {
    flex: 1;
  }


.row-two-col-video iframe {
	width: 100% !important;
	height: auto;
	aspect-ratio: 16 / 9;
	display: block;
	border-radius: 8px;
}






/* ============================================
   LINEUP SECTION
   ============================================ */

.mmfe-flex-content-lineup {
    padding: 3rem 0;
    text-align: center;
}

.mmfe-flex-content-lineup h2 {
    margin-bottom: 1rem;
}

/* --- Intro text block --- */

.lineup-intro {
    margin-bottom: 2rem;
    font-size: 1rem;
    line-height: 1.6;
}

.lineup-intro p:last-child {
	padding-bottom: 0;
}

/* --- CTA Buttons --- */

.lineup-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 2.5rem;
}

/* --- Hero image --- */

.lineup-hero {
    margin-bottom: 2.5rem;
}

.lineup-hero img {
    display: block;
    width: 100%;
    height: auto;
}

/* --- Day stack --- */

.lineup-day-stack {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.lineup-day {
    flex: 1 1 0;
    min-width: 0;
    padding: 1rem;
}

.lineup-day h3 {
    font-size:1.7rem;
	line-height: 1.9rem;
    font-weight: 700;
}

/* --- Artist stack --- */

.lineup-artist-stack {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.lineup-artist {
	padding-bottom: 20px;
}

.lineup-artist {
    line-height: 1.3;
}

/* headliner — largest */
.lineup-artist-headliner .artist-primary-text {
    display: block;
    font-size: 3rem;
    line-height: 3.1rem;
    font-weight: 800;
	font-family: "eurostile-extended", sans-serif;
}

/* subliner — medium large */
.lineup-artist-subliner .artist-primary-text {
    display: block;
    font-size: 2.5rem;
    font-weight: 800;
	font-family: "eurostile-extended", sans-serif;
}

/* support — medium */
.lineup-artist-support .artist-primary-text {
    display: block;
    font-size: 2.2rem;
    font-weight: 800;
	font-family: "eurostile-extended", sans-serif;
}


.artist-supporting-text span.feature-impact {
	font-size: 2rem;
	font-weight: 800;
}

/* opener — smallest */
.lineup-artist-opener .artist-primary-text {
    display: block;
    font-size: 1.7rem;
    font-weight: 800;
	font-family: "eurostile-extended", sans-serif;

}

/* supporting text — sub line under any artist */
.artist-supporting-text {
    display: block;
    font-size: 1.1rem;
    font-weight: 400;
    font-style: italic;
    margin-top: 0;
}

/* ============================================
   RESPONSIVE — 1108px AND ABOVE
   ============================================ */

@media (min-width: 1108px) {

    .lineup-day-stack {
        flex-direction: row;
        gap: 0;
        align-items: flex-start;
    }

    /* vertical divider on left column only */
    .lineup-day:first-child {
        border-right: 1px solid #ddd;
    }
}




/* ============================================
   RISE HOME SPEAKERS
   ============================================ */

.rise-home-speakers-stack {
    padding: 3rem 0;
    text-align: center;
}

.rise-home-speakers-stack h1 {
    margin-bottom: 1rem;
}

/* --- Text block --- */

.rise-hompage-speakers-text-block {
    margin-bottom: 2rem;
}

/* --- Button stack --- */

.rise-hompage-speakers-spotlight-button-stack {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 2.5rem;
}


/* --- Spotlight row --- */

.rise-hompage-speakers-spotlight-row {
    display: flex;
    flex-direction: column;
    gap: 3rem;
    margin-bottom: 3rem;
    text-align: left;
}

/* mobile — single column stack */
.rise-hompage-speakers-spotlight-row-item {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.rise-hompage-speakers-spotlight-img-column {
    flex: 1 1 0;
    min-width: 0;
}

.rise-hompage-speakers-spotlight-img-column img {
    display: block;
    width: 100%;
    height: auto;
}

.rise-hompage-speakers-spotlight-text-column {
    flex: 1 1 0;
    min-width: 0;
}

.rise-hompage-speakers-spotlight-text-column h3 {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

.rise-hompage-speakers-spotlight-stack-bio {
    font-size: 0.9rem;
    line-height: 1.6;
    margin-top: 0.75rem;
}

/* --- Topic label links --- */



/* --- Sub header --- */

.rise-home-speakers-stack h4 {
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center;
}

/* --- Mention row --- */

.rise-hompage-speakers-mention-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}

.rise-hompage-speakers-mention-row-item {
    text-align: center;
}

.rise-hompage-speakers-mention-row-item h5 {
    margin: 0 0 0.25rem;
    font-size: 1.1rem;
}

.rise-hompage-speakers-mention-list-presentation-name {
    display: block;
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}

.rise-hompage-speakers-mention-list-presentation-tagline {
    display: block;
    font-size: 0.8rem;
    font-style: italic;
    margin-top: 0.25rem;
}

/* ============================================
   RESPONSIVE — 1108px AND ABOVE
   ============================================ */

@media (min-width: 1108px) {

    .rise-hompage-speakers-spotlight-row-item {
        flex-direction: row;
        gap: 3rem;
        align-items: flex-start;
    }

    /* even rows flip image right */
    .rise-hompage-speakers-spotlight-row-item:nth-child(even) {
        flex-direction: row-reverse;
    }
}

/* ============================================
   RESPONSIVE — 750px AND BELOW
   ============================================ */

@media (max-width: 750px) {

    .rise-hompage-speakers-mention-row-item {
        flex: 0 0 100%;
    }
}











/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       					FLEXIBLE CONTENT TWO COL TOWER
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */


/* ── Base row ── */
.mmfe-two-col-stack .split-row {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 5rem;
}
.split-col {
    flex: 1;
}
.split-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* ── Two-column layouts at 1108px+ ── */
@media (min-width: 1108px) {

    .mmfe-two-col-stack .split-row {
        flex-direction: row;
        align-items: flex-start;
        gap: 3rem;
    }

    /* ── two-col-image-left-alternate ──
       Row 1: image left  / Row 2: image right / repeat */
    .two-col-image-left-alternate .split-row:nth-child(odd)  { flex-direction: row; }
    .two-col-image-left-alternate .split-row:nth-child(even) { flex-direction: row-reverse; }

    /* ── two-col-image-right-alternate ──
       Row 1: image right / Row 2: image left / repeat */
    .two-col-image-right-alternate .split-row:nth-child(odd)  { flex-direction: row-reverse; }
    .two-col-image-right-alternate .split-row:nth-child(even) { flex-direction: row; }

    /* ── two-col-image-left-column ── image always left */
    .two-col-image-left-column .split-row { flex-direction: row; }

    /* ── two-col-image-right-column ── image always right */
    .two-col-image-right-column .split-row { flex-direction: row-reverse; }

}




/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       					FLEXIBLE CONTENT SECTION
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */


.slick-arrows .slick-arrow {
  display: block !important;
  border: 0;
  outline: 0;
  appearance: none;
  background-color: black;
  font-size: 0;
  color: var(--mmfe-white);
  cursor: pointer;
}

.slick-arrows .slick-arrow:after {
  font-size: 1.5rem;
  padding: 0 1rem;
}


.slick-arrows .slick-arrow.slick-prev::after {
  content: "<";
}

.slick-arrows .slick-arrow.slick-next::after {
  content: ">";
}


.slick-arrows {
  display: flex;
  padding: 2rem;
}

.slick-arrows .slick-prev {
  margin-right: auto;
}

img.full-width-image-above-text-logo {
	width: 125px;
	display: inline-block;

}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
   RISE SCHEDULE STACK
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */


.rise-schedule-stack {
    padding: 3rem 0;
}

.rise-schedule-stack-day-item {
    margin-bottom: 4rem;
}

/* --- Meta block --- */

.rise-schedule-stack-day-item-meta {
    margin-bottom: 2rem;
}

.rise-schedule-stack-date {
    display: block;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.5rem;
}

.rise-schedule-stack-location {
    display: block;
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.mmfe-flex-content-full-width-image {
    display: block;
    width: 100%;
    height: auto;
    margin: 1.5rem 0 0;
    text-align: center;
}

/* ============================================
   SEGMENT GRID — BASE
   ============================================ */

.rise-schedule-day-stack-day-segment-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    align-items: flex-start;
}

.rise-schedule-day-stack-day-segment-item {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

/* ============================================
   SEGMENT GRID — COLUMN COUNTS
   ============================================ */

/* 1 — full width */
.rise-schedule-day-stack-day-segment-stack-1 .rise-schedule-day-stack-day-segment-item {
    flex: 0 0 100%;
}

/* 2 — 2 col */
.rise-schedule-day-stack-day-segment-stack-2 .rise-schedule-day-stack-day-segment-item {
    flex: 0 0 calc(50% - 0.75rem);
}

/* 3, 4, 5, 6, 9 — 3 col */
.rise-schedule-day-stack-day-segment-stack-3 .rise-schedule-day-stack-day-segment-item,
.rise-schedule-day-stack-day-segment-stack-4 .rise-schedule-day-stack-day-segment-item,
.rise-schedule-day-stack-day-segment-stack-5 .rise-schedule-day-stack-day-segment-item,
.rise-schedule-day-stack-day-segment-stack-6 .rise-schedule-day-stack-day-segment-item,
.rise-schedule-day-stack-day-segment-stack-9 .rise-schedule-day-stack-day-segment-item {
    flex: 0 0 calc(33.333% - 1rem);
}

/* 7, 8 — 4 col */
.rise-schedule-day-stack-day-segment-stack-7 .rise-schedule-day-stack-day-segment-item,
.rise-schedule-day-stack-day-segment-stack-8 .rise-schedule-day-stack-day-segment-item {
    flex: 0 0 calc(25% - 1.125rem);
}

/* ============================================
   SEGMENT GRID — RESPONSIVE
   ============================================ */

@media (max-width: 950px) {

    .rise-schedule-day-stack-day-segment-stack-3 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-4 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-5 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-6 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-7 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-8 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-9 .rise-schedule-day-stack-day-segment-item {
        flex: 0 0 calc(50% - 0.75rem);
    }
}

@media (max-width: 750px) {

    .rise-schedule-day-stack-day-segment-stack-2 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-3 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-4 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-5 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-6 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-7 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-8 .rise-schedule-day-stack-day-segment-item,
    .rise-schedule-day-stack-day-segment-stack-9 .rise-schedule-day-stack-day-segment-item {
        flex: 0 0 100%;
    }
}

/* ============================================
   SEGMENT ITEM — CONTENT STYLES
   ============================================ */

.rise-schedule-day-stack-day-segment-item h3 {
    margin-top: 0;
    margin-bottom: 0.4rem;
}

.rise-stack-segment-time {
    display: block;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.75rem;
}

.rise-stack-segment-description {
    font-size: 0.95rem;
    line-height: 1.6;
}

.rise-stack-segment-description a {
    text-decoration: underline;
}


/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
   BLOG STACK
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */




/* --- Article stack container --- */
.news-article-stack {
	display: flex;
	flex-direction: column;
}

.news-article-wrapper:first-child {
	padding-top: 50px;
}


.news-article-wrapper:nth-child(even) {
	background-color: var(--mmfe-cream);
	padding: 60px 0;
	margin: 60px 0;
} 

.has-intro .news-article-wrapper:nth-child(odd) {
    background-color: var(--mmfe-cream);
    padding: 60px 0;
    margin: 60px 0;
}

.has-intro .news-article-wrapper:nth-child(even) {
    background-color: transparent;
    padding: 0;
    margin: 0;
}

.news-article-wrapper .content-frame {
	margin-top: 0;
	padding-top: 0;
}

/* --- Article base --- */
.mmfe-rise-article {
	display: flex;
	gap: 40px;
	align-items: flex-start;
	border-bottom: 1px solid var(--mmfe-border-color, #e0e0e0);
}

.mmfe-rise-article:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}


#tower-item-stack .mmfe-rise-article p:last-child {
	padding-bottom: 0;
}



/* --- Layout: Image Left / Text Right --- */
.mmfe-rise-article.blog-post-layout-left {
	flex-direction: row;
}

/* --- Layout: Image Right / Text Left --- */
.mmfe-rise-article.blog-post-layout-right {
	flex-direction: row-reverse;
}

/* --- Layout: Full Width stacked --- */
.mmfe-rise-article.blog-post-layout-full-width {
	flex-direction: column;
	align-items: stretch;
}

.mmfe-rise-article.blog-post-layout-full-width .mmfe-rise-article-media,
.mmfe-rise-article.blog-post-layout-full-width .mmfe-rise-article-text {
	flex: unset;
	width: 100%;
}

/* --- Media box --- */
.mmfe-rise-article-media {
	flex: 1;
}

.mmfe-rise-article-media img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* --- Text box --- */
.mmfe-rise-article-text {
	flex: 1;
}

/* --- Headings & date --- */
.mmfe-rise-article-text h2 {
	font-size: 1.8rem; 
	text-transform: uppercase;
	line-height: 1.9rem;
	margin-bottom: 20px;
	background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
}

.mmfe-rise-article-text h3 {
	margin-top: 0;
	margin-bottom: 15px;
    text-align: left;
	font-family: "poppins", sans-serif;
	font-size: 1.3rem;
	line-height: 1.5rem;
	font-weight: 700;
}

.mmfe-rise-article-text h4 {
	margin-top: 0;
	margin-bottom: 15px;
    text-align: left;
	font-family: "poppins", sans-serif;
	font-size: .9rem;
	line-height: 1.1rem;
	font-weight: 700;
}



.mmfe-rise-article-date {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 1.3rem;
	color: #333;
}

.full-width-video-video {
    width: 100%;
    display: block;
}

.full-width-video-video iframe {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 8px;
    min-height: 0;
}

.mmfe-rise-article-media {
	flex: 1;
	min-width: 0;
}

.mmfe-rise-article-wysiwyg {
	padding-bottom: 0px;
}

.mmfe-secondary-page-header-textblock,
.mmfe-rise-article-text {
	font-family: "poppins", sans-serif;

}

.mmfe-secondary-page-header-textblock {
	text-align: center;

}

.content-frame.mmfe-secondary-page-header-text {
  padding-bottom: 0 !important;
}

.news-article-wrapper:last-child {
  margin-bottom: 40px;
}


#mmfe-load-more {
  border-radius: 3rem;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-decoration: none;
  padding: .655rem 2rem 0.75rem;
  line-height: 1;
  font-family: "eurostile-extended", sans-serif;
  appearance: none;
  outline: 0;
  border: 0;
  background-color: #bb29bb;
  color: white;
  display: block;
  margin: 0 auto;
  cursor: pointer;
}

/* 
@media ( min-width: 1000px ) {

	.blog-post-layout-full-width .mmfe-rise-article-wysiwyg,
	.mmfe-secondary-page-header-textblock {
		column-count: 2;
		column-gap: 40px;
	}

}

--- Full width: 2-col WYSIWYG text --- */

/* --- Mobile --- */
@media ( max-width: 768px ) {

	.mmfe-rise-article,
	.mmfe-rise-article.blog-post-layout-left,
	.mmfe-rise-article.blog-post-layout-right {
		flex-direction: column;
	}

	.mmfe-rise-article-media,
	.mmfe-rise-article-text {
		flex: 0 0 100%;
	}

}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       					SECONDARY PAGE
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */



.mmfe-secondary-page h1,
.page-template-page-tower h1 {
    background: var(--mmfe-dark-blue) !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #fff !important;
    color: #fff !important;
    text-align: center;
    padding: 30px 0;
}


.mmfe-secondary-page-header-text h2 {
	width: 100%;
	display: block;
}

.mmfe-secondary-page-header-text {
	width: 100%;
}


@media ( min-width: 900px ) {
	.mmfe-secondary-page-header-text {
		width: 70%;
		}
}


#tower-item-stack .news-article-wrapper:last-child:not(:nth-child(even)) {
    padding-bottom: 60px;
}

/* ---------------------------------------------------
------------------------------------------------------
------------------------------------------------------
       					FOOTER
------------------------------------------------------
------------------------------------------------------
--------------------------------------------------- */

footer#footer {
  flex: 1;
  display: flex;
  flex-direction: column;
}


#footer-kitchen-sink {
  background-color: var(--mmfe-light-blue);
  flex: 1;
  font-size: 1rem;
  font-weight: 900;
}

.site-footer {
  display: grid;
  grid-template-columns: 3fr 1fr 4fr;
  grid-template-rows: auto auto;
  grid-template-areas:
    "brand  sitemap  newsletter";
	column-gap: 3rem;
  align-items: start;
 row-gap: 1rem; 
}

.footer-brand {
  grid-area: brand;
}
.footer-sitemap {
  grid-area: sitemap;
}
.footer-newsletter {
  grid-area: newsletter;
}


.footer-brand,
.footer-sitemap,
.footer-newsletter {
}


/* Under 600px — 1 column */
@media (max-width: 1000px) {
  .site-footer {
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "newsletter"
      "sitemap";
  }
}


/* ---------------------------------------------------
       					BRAND
--------------------------------------------------- */

@media (max-width: 1100px) {

.footer-brand img {
	margin: 0 auto;

}

}


.footer-brand h3 {
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
	font-style: normal;
	margin-top: 25px;
	font-size: 1.4rem;
	line-height: 1.45rem;
	color: var(--mmfe-dark-blue);
}



/* ---------------------------------------------------
       					SITEMAP
--------------------------------------------------- */

.footer-sitemap {
	font-family: "poppins", sans-serif;
	font-weight: 200;
	font-style: normal;
	line-height: 1.8rem;

}

.footer-sitemap .sub-menu {
	display: none;
}


.footer-sitemap a {
	color: #000;
	text-decoration: none;
}


.footer-sitemap h3 {
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
	font-style: normal;
	margin-top: 0;
	font-size: 1.1rem;
	line-height: 1.5rem;
}


/* ---------------------------------------------------
       					SPONSORSHIP
--------------------------------------------------- */


#footer-sponsorship {
  background-color: var(--mmfe-dark-blue);
}


#footer-sponsorship h2 {
  background: linear-gradient(90deg, #667eea 0%, #764ba2 20%, #f093fb 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#footer-sponsorship h3 {
	color: var(--mmfe-white); 
	font-size: 1.5rem;  
	font-weight: 500;
}


.footer-sponsor-stack {
	text-align: center;
}

.footer-sponsor-stack span {
	width: 75%;
	display: inline-block;
	margin: 0 auto;
	text-align: center;
}


/* ---------------------------------------------------
       					PARTNER LOGOS
--------------------------------------------------- */

.footer-partners {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.footer-logo-stack {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 40px;
    margin-left: auto;
    margin-top: 40px;
}

.footer-logo-stack img {
    width: 80px;
    height: auto;
    display: block;
}


.footer-logo-stack a.respond-img {
  width: auto;
}


/* Under 600px — 1 column */
@media (max-width: 1000px) {
 
.footer-partners {
    justify-content: center;
  }
  .footer-logo-stack {
    width: 100%;
    margin-left: 0;
    justify-content: center;
  }
 
}

/* ---------------------------------------------------
       					SOCIAL
--------------------------------------------------- */

.footer-social-stack {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 20px;
    margin-left: auto;
    margin-top: 40px;
    /* border: 1px solid red; */
}

.footer-social-stack img {
	height: 40px;
	width: 40px;
}

  .signup-wrap {
    margin-top: 40px;
  }

@media screen and (max-width:1000px) {
  .footer-social-stack {
    justify-content: center;
  }

}

@media screen and (max-width:1000px) and (min-width: 581px) {
  #signup_email {
    width: auto;
    max-width: 100% !important;
    flex: 0 1 100%;
  }

  .signup-form {
    display: flex;
  }
}

@media screen and (min-width: 1001px) {
  .footer-social-stack {
    margin-top: 0;
    margin-bottom: 20px;
    justify-content: flex-end;
  }
}



/* ---------------------------------------------------
       					FOOTER LINK 
--------------------------------------------------- */


.footer-sitemap ul li {
	list-style-type: none;
}


/* ---------------------------------------------------
       					SIGN UP 
--------------------------------------------------- */


.signup-wrap h3 {
	font-family: "eurostile-extended", sans-serif;
	font-weight: 900;
	font-style: normal;
	margin-top: 0;
	font-size: 1.1rem;
	line-height: 1.5rem;
	margin: 0;
	padding: 0 0 10px 0;
}

.signup-wrap {
  padding: 0;
  border-radius: 0.5rem;
}

.signup-form {
  align-items: center;
  gap: 0.75rem;
}

.signup-form input[type="email"] {
  flex: 1;
  padding: .5rem .75rem;
  border: none;
  border-radius: 0.5rem;
  font-size: 1rem;
  color: #333;
  background: #fff;
  outline: none;
  box-shadow: none;
  appearance: none;
}

.signup-form input[type="email"]::placeholder {
  color: #b0b8c1;
  font-weight: 400;
}

.signup-form button[type="submit"] {
  flex-shrink: 0;
  padding: .5rem .75rem;
  background-color: #f5f0e0; 
  color: #0d1f40;            
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border: none;
  border-radius: 3rem;       /* pill shape */
  cursor: pointer;
  transition: background-color 0.2s ease;
  white-space: nowrap;
}

.signup-form button[type="submit"]:hover {
  background-color: #ece7d5;
}

#signup_email {
  max-width: 60%;
}

@media screen and (min-width: 1200px) {
  #signup_email {
    max-width: 68%;
  }
}

@media screen and (max-width: 500px) {
    #signup_email {
      max-width: 100%;
      width: 100%;
    }
    .signup-form button[type="submit"] {
      width: 100%;
      margin-top: 20px;
    }
}