   /*
   
   Theme Name: Main Line Art Center 2021
   Text Domain: mlac2021
   Author: Zero Defect Design LLC
   Author URI: https://zerodefectdesign.com
      
   */
   
   /* fonts */
   
   @import url('https://fonts.googleapis.com/css2?family=Khand:wght@400;600&display=swap');
   @font-face { font-family: 'tga'; src: url('fonts/tga400.woff') format('woff'); font-weight: 400; font-style: normal; }
   @font-face { font-family: 'tga'; src: url('fonts/tga400i.woff') format('woff'); font-weight: 400; font-style: italic; }
   @font-face { font-family: 'tga'; src: url('fonts/tga600.woff') format('woff'); font-weight: 600; font-style: normal; }
   @font-face { font-family: 'tga'; src: url('fonts/tga600i.woff') format('woff'); font-weight: 600; font-style: italic; }
  
   /* resets */

   *, *::before, *::after { box-sizing: border-box; }
   html { height: 100%; -webkit-text-size-adjust: 100%; }
   body { margin: 0; padding: 0; min-height: 100vh; scroll-behavior: smooth; text-rendering: optimizeSpeed; text-align: center; }   
   table { border: 0; padding: 0; border-spacing: 0px; border-collapse: collapse; }
   sup, sub { vertical-align: baseline; position: relative; top: -0.4em; }
   sub { top: 0.4em; }
   img { vertical-align: bottom; max-width: 100%; height: auto; display: block; }
   input, button, textarea, select { font: inherit; }
   button, select, input[type=submit] { cursor: pointer; }
   
   form *:focus, input:focus { outline: none; }
   body.safari input { -webkit-appearance: none; border-radius: 0; -webkit-border-radius: 0px; }
   input[type="checkbox"] { -webkit-appearance: checkbox; }
   input[type="radio"] { -webkit-appearance: radio; }
   
   
   /* type */
   
   body { font: normal 400 18px/1.5 'tga', sans-serif; }
   h2, h2 select { font-size: 38px; font-weight: 400; margin: 0.8em 0 0.8em 0; line-height: 1.2; }
   body.category-teaching-artists.single h2 { margin-bottom: 0; }
   h2 select { margin: 0; }
   h3 { font-size: 32px; font-weight: 400; color: #aa3054; margin: 0 0 1em 0; line-height: 1.2; }
   h3.nocolor { color: #000000; }
   h4 { font-size: 24px; font-weight: 400; line-height: 1.2; }
   body.category-teaching-artists.single h4 { margin: 10px 0; }
   h5 { font-size: 18px; font-weight: 600; color: #AA3054; letter-spacing: 1px; text-transform: uppercase; padding-bottom: 3px; border-bottom: 2px dotted #AA3054; }
   .warm { color: #AED255; }
   .hot { color: #AA3054; }
	.cool { color: #1194BF; }
   .intro { font-size: 22px; }
   p { margin: 0; }
   .container p, .zone p { margin: 1em 0; }
   
   /* links and controls */
   
   a { color: #49ADAE;  }
   a:hover { color: #E27026; }
   .btn, .wp-block-button__link, a.wp-block-button__link
   { 
      color: #FFFFFF; background-color: #49adae; display: inline-block; padding: 6px 10px 8px 30px; 
      cursor: pointer; background-position: 8px center; background-repeat: no-repeat; background-size: auto 16px;
      font-size: 16px; line-height: 1.2; margin: 0 0 4px 0; text-decoration: none; border: 0px; font-weight: 400;
      border-radius: 0; border: 0;
   }
   .btn.adults { background-size: auto 18px; background-position: 10px center; }
   .btn.metals { background-size: auto 14px; }
   .btn.action, .wp-block-button__link, a.wp-block-button__link { background-image: url('images/icon-arrow-right.svg'); }
   .btn.list { background-image: url('images/icon-view-list.svg'); background-size: auto 14px; }
   .btn.grid { background-image: url('images/icon-view-grid.svg'); }
   .btn.primary { background-color: #4658A4; }
   .btn.secondary { padding-left: 10px; opacity: 0.6; }
   .btn:hover, .btn.secondary:hover, .wp-block-button__link:hover, a.wp-block-button__link:hover, .btn.primary:hover { color: #FFFFFF; background-color: #AA3054; opacity: 1; }
   .ghostbtn 
   { 
      display: inline-block; padding: 5px 10px 7px 10px; font-size: 16px; line-height: 1.2; color: #49adae; border: 1px solid #49adae; text-decoration: none; 
      cursor: pointer; font-weight: 400; position: relative; top: 1px;
   }
   .ghostbtn.active { color: #FFFFFF; background-color: #49adae; border: 1px solid #49adae; } 
   .ghostbtn:hover, .ghostbtn.active:hover { color: #FFFFFF; background-color: #aa3054; border-color: #aa3054; }
   .breadcrumb a { text-decoration: none; font-size: 20px; font-weight: 600; text-transform: uppercase; }
   .breadcrumb a::after { color: #000000; content: "\003e"; display: inline-block; font-weight: 400; margin-left: 0.3em; position: relative; top: -1px; }
   .controls { float: right; margin: 0 0 25px 35px; }
   input[type=button], input[type=submit] { cursor: pointer; }
   
   /* structure */
   
   body { background-color: #F7F7F7; padding-top: 112px; }
   .frame { margin: 0 auto; text-align: left; max-width: 1400px; padding: 0 50px; }
   .shade { background-color: #E9E9E8; } /* #DCDBD9; */
   .container { padding: 50px 0px; }
   .container.white { background-color: #FFFFFF; }
   .container.reversed, .container.reversed h3 { color: #FFFFFF; }
	.container.reversed h3.warm { color: #AED255; }
	.container.reversed h3.hot { color: #FFCC00; }
   body.archive.section-class.category-class .container.outer, body.archive.section-class.category-class .frame.outer { margin: 0; padding: 0; max-width: 100%; }
   .finder { background: #a7d3e5 url('images/bg-painting.jpg') center center no-repeat; background-size: cover; }
   .finder h3 { color: #FFFFFF; }
   a.announce, div.announce { display: block; padding: 15px 0px; background-color: #DC6829; color: #FFFFFF; font-size: 18px; letter-spacing: 0.02em; text-decoration: none;  }
	div.announce { background-color: #AA3054; }
   a.announce:hover { background-color: #aa3054; }
   a.announce .frame::after 
   { 
      content: " "; display: inline-block; padding-left: 20px; width: 1em; height: 1em; 
      background: transparent url('images/icon-arrow-right.svg') center center no-repeat; background-size: contain; 
      position: relative; top: 3px;
   }
   .cols { margin: 0px -25px -25px -25px; display: flex; width: calc(100% + 50px); align-items: center; }
   .cols .col { flex-basis: 50%; padding: 0px 25px 25px 25px; }
   .cols .col-primary { flex-basis: 66.667%; }
   .cols .col-secondary { flex-basis: 33.333%; }
   
   /* images */
   
   .alignright { float: right; margin: 0 0 50px 50px; width: 33.333%; }
   div.hero { width: 100%; margin: 0 0 25px 0; }
   div.alignright img, div.hero img { width: 100%; height: auto; }
   img.alignright { height: auto; }
   .alignright .caption, .hero .caption { display: block; color: #999999; margin: 5px 0 0 0; font-size: 90%; line-height: 1.2; }
   
   /* header */
   
   #hd 
   { 
      position: fixed; top: 0; left: 0; right: 0; z-index: 200; background-color: #FFFFFF; box-shadow: 0 0 15px rgba(0,0,0,0.2); 
      padding: 25px 0 12px 0;
   }
   #hd .frame { display: flex; align-items: flex-end; justify-content: space-between; }
   #hd a { text-decoration: none; }
   .mlac img { height: 75px; width: auto; }
   .nav { text-align: right; }
   
   /* main menu */

   #menu, #toolbar { list-style-type: none; margin: 0 0 6px 0; padding: 0; }
   #menu li, #toolbar li { display: inline-block; margin: 0 0 0 15px; padding: 0; text-transform: lowercase; }
   #menu li:first-child { margin-left: 0; }
   #menu li a, #toolbar li a { font-size: 17px; line-height: 18px; padding: 6px 0px; display: inline-block; color: #555555; }
   #menu li a:hover, #toolbar li a:hover { color: #E27026; }
   #menu li svg { height: 22px; width: auto; position: relative; top: 4px; }
   #menu li ul { display: none; position: absolute; z-index: 220; margin: 0px; padding: 0px; list-style-type: none; }
   #menu li:hover ul 
   { 
      display: block; text-align: left; background: transparent url('images/wedgeADADAD.svg') 10px top no-repeat; 
      background-size: 20px 10px; padding-top: 9px; 
   }
   #menu li ul li { margin: 0px; padding: 0px; list-style-type: none; text-transform: none; display: block; float: none; }
   #menu li ul li a 
   { 
      color: #FFFFFF; display: block; font-size: 17px; line-height: 1; padding: 7px 10px; 
      background-color: #ADADAD; background-image: none; text-transform: none; letter-spacing: 0; margin: -1px 0px; 
   }
   #menu li ul li:first-child { border-top: 6px solid #ADADAD; }
   #menu li ul li:last-child { border-bottom: 6px solid #ADADAD; }
   #menu li ul li a:hover { color: #FFFFFF; background-color: #E27026; }
   
   

   #toolbar { margin-bottom: 4px; text-align: right; }
   #toolbar li a { font-size: 15px; line-height: 15px; padding: 4px 0px; color: #98978e;  }
   #toolbar li a:hover { opacity: 1; }
   
   /*
   #menu li:hover ul { display: block; text-align: left; background: transparent url('images/wedge.svg') 10px 2px no-repeat; background-size: 20px 10px; padding-top: 10px; }
   #menu li ul li { margin: 0px; padding: 0px; list-style-type: none; text-transform: none; display: block; float: none; }
   #menu li ul li a { color: #FFFFFF; display: block; font-size: 16px; padding: 4px 9px; background-color: #263680; background-image: none; }
   #menu li ul li:first-child { border-top: 6px solid #263680; }
   #menu li ul li:last-child { border-bottom: 6px solid #263680; }
   #menu li ul li a:hover { color: #FFFFFF; background-color: #B80065; }
   */
   
   /* zones */
   
   .zone.suspended { background: #EADED6 url('images/bg-suspended.jpg') center center no-repeat; background-size: cover; }
   .zone.class-finder { padding-bottom: 10px; background: #FCF2DD url('images/bg-wheel.jpg') center center no-repeat; background-size: cover; }
   .zone.trees { background: #C3C766 url('images/bg-trees.jpg') center center no-repeat; background-size: cover; }
   .zone.painting { background: #A6D3E6 url('images/bg-painting.jpg') center center no-repeat; background-size: cover; }
   .zone.bee { background: #E9E855 url('images/bg-bee.jpg') center center no-repeat; background-size: cover; }
   .zone.brushes { background: #E27026 url('images/bg-brushes.jpg') center center no-repeat; background-size: cover; }
   .zone.clay { background: #AA3054 url('images/bg-clay.jpg') center center no-repeat; background-size: cover; }
   .zone.strokes { background: #579440 url('images/bg-strokes.jpg') center center no-repeat; background-size: cover; }
   .zone.patch { background: #579440 url('images/bg-patchwork.jpg') center center no-repeat; background-size: cover; }
   .zone.cluster { background: #c7e6b7 url('images/bg-cluster.jpg') center center no-repeat; background-size: cover; }
   .zone.outside { background: #aed255 url('images/bg-outside.jpg') center center no-repeat; background-size: cover; }
   .zone.ear { background: #52c3c4 url('images/bg-ear.jpg') center center no-repeat; background-size: cover; }
   .zone.circles { background: #e27026 url('images/bg-circles.jpg') center center no-repeat; background-size: cover; }
   .zone.swirl { background: #e27026 url('images/bg-swirl.jpg') center center no-repeat; background-size: cover; }
	.zone.leaves { background: #e27026 url('images/bg-leaves.jpg') center center no-repeat; background-size: cover; }
	.zone.smiley { background: #e27026 url('images/bg-smiley.jpg') center center no-repeat; background-size: cover; }
	.zone.paints { background: #e27026 url('images/bg-paints.jpg') center center no-repeat; background-size: cover; }
	.zone.pastel { background: #aed255 url('images/bg-pastels.jpg') center center no-repeat; background-size: cover; }
	.zone.summer-of-color 
	{ 
		padding-top: 100px; padding-bottom: 25px; background-color: #423989;
		background-image: linear-gradient(to bottom, rgba(66,57,137,0) 30%, rgba(66,57,137,1)), url('images/bg-summer-of-color.jpg');
		background-position: center center; background-repeat: no-repeat; background-size: cover;
	}
	.zone.summer-of-color h2 { margin: 0 0 10px 0; }
	.zone.summer-of-color h4 { margin: 0; color: #FFCC00; }
	
   /* footer */
   
   footer { color: rgba(255,255,255,0.75); background-color: #102542; font-size: 16px; clear: both; }
   footer .frame { display: flex; flex-wrap: wrap; }
   footer .col { flex-basis: 50%; padding: 0 100px 25px 0; }
   footer b { color: #FFFFFF; }
   footer a { color: #81a8cc; text-decoration: none; }
   footer a:hover { color: #e25423; }
   footer form { display: flex; width: 100%; margin-top: 5px; }
   footer input { border: 0; font-size: 16px; line-height: 1; }
   footer input.email { margin-right: 5px; padding:  4px 10px; flex-grow: 1; display: inline-block; }
   footer .btn { padding: 8px 10px; line-height: 1; padding:  8px 10px 10px 10px; border: 1px solid #FFFFFF; display: inline-block; position: relative; top: 2px; }
   
   /* icon system */
   
   .icon { background-position: center center; background-size: auto 60%; background-repeat: no-repeat; background-color: #577590;  }

   .adults { background-image: url('images/icon-a.svg'); background-color: #e27026; } 
      .btn.adults { background-size: auto 45%; }
   .youth { background-image: url('images/icon-y.svg'); background-color: #e27026; }
      .btn.youth { background-size: auto 45%; }
   .camp { background-image: url('images/icon-sun.svg'); background-color: #e27026; }
   
   .ceramics { background-image: url('images/icon-fire.svg'); background-color: #4658a4; }
   .fiber { background-image: url('images/icon-fiber.svg'); background-color: #4658a4; background-size: auto 62%; }
   .metals { background-image: url('images/icon-hammer.svg'); background-color: #4658a4; } 
   .mixed { background-image: url('images/icon-vortex.svg'); background-color: #4658a4; } 
   .painting { background-image: url('images/icon-palette.svg'); background-color: #4658a4; }
   .print { background-image: url('images/icon-book.svg'); background-color: #4658a4; }
   .photo { background-image: url('images/icon-camera.svg'); background-color: #4658a4; }
   
   .online { background-image: url('images/icon-online.svg'); background-color: #579440; }
   .onsite { background-image: url('images/icon-onsite.svg'); background-color: #579440; }
   .outdoor { background-image: url('images/icon-clouds.svg'); background-color: #579440; }
	
	.spring { background-image: url('images/icon-flower.svg'); background-color: #49adae; }
	.summer { background-image: url('images/icon-sun.svg'); background-color: #49adae; }
	.winter  { background-image: url('images/icon-snowflake.svg'); background-color: #49adae; }
	.fall  { background-image: url('images/icon-maple.svg'); background-color: #49adae; }
	
   .social .icon { width: 32px; height: 32px; display: inline-block; border-radius: 16px; margin-right: 5px; }
   .facebook { background-image: url('images/icon-facebook.svg'); background-color: #1877f2; }
   .instagram { background-image: url('images/icon-instagram.svg'); background-color: #cb22df; }
   .twitter { background-image: url('images/icon-twitter.svg'); background-color: #1da1f2; }
   .social .icon:hover { background-color: #DC6829; }
   
   .na { display: none; }
   

   
   /* tiles */
   
   .tiles { margin: -25px; padding-top: 25px; width: calc(100% + 50px); display: flex; align-items: flex-start; flex-wrap: wrap; }
   .tile { padding: 0 25px 25px 25px; width: 25%; }
   .img 
   { 
      width: 100%; height: 0; padding-top: 66.667%; position: relative; background-position: center center; background-repeat: no-repeat; background-size: cover;
   }
   .img .datebox { position: absolute; top: 0px; left: 15px; }
   .img .icons { position: absolute; bottom: 0; right: 0; text-align: right; line-height: 1px; padding-right: 0px; opacity: 1; transition: all 0.25s ease; }
   .img .icon { display: inline-block; width: 32px; height: 32px; margin: 0; float: left; }
   .img .more-info 
   { 
      position: absolute; top: 0; right: 0; left: 0; background-color: rgba(255,255,255,0.9); 
      padding: 0px 15px 0px 70px; height: 0; opacity: 0; overflow: hidden; 
      transition: all 0.25s ease; font: 400 14px/0.1 'tga', sans-serif; 
   }
   .tile:hover .img .more-info { height: 100%; opacity: 1; padding: 15px 15px 35px 70px; line-height: 1.1; }
	.tile:hover .icons { opacity: 0; }
   .img ul { list-style-type: none; margin: 0; padding: 0; }
   .img li { margin: 0 0 4px 0; padding: 0; }
   .ages, .age { color: #DC6829; font-weight: 600; }
   .media { color: #4658a4; font-weight: 600; }
   .location, .type { color: #579440; font-weight: 600; }
   
   .datebox { color: #FFFFFF; background-color: #000000; padding: 7px 5px 5px 5px; text-align: center; display: inline-block; }
   .datebox .num { font-size: 26px; line-height: 26px; width: 100%; margin: 0 0 5px 0; }
   .datebox .month, .datebox .day 
   { 
      font: normal 600 16px/1 'Khand', sans-serif; color: #aed255; text-align: center; letter-spacing: 1px;
      text-transform: uppercase; margin-left: 2px;
   }
   .tile .heading { font-size: 20px; font-weight: 600; line-height: 1.1; margin: 10px 0 0 0; }
   .tile .date { font-size: 16px; margin-top: 3px; }

   a.tile, .tile a { color: #000000; text-decoration: none; }
   a.tile:hover .heading, .tile a .heading:hover { color: #DC6829; }
   
   
   /* sliders */
   
   .lSSlideOuter { position: relative; }
   .slider { }
   .slider .slide 
   { 
      width: 100%; height: 50vw; background-position: center center; background-repeat: no-repeat; 
      background-size: cover; position: relative; display: block; max-height: 65vh; margin: 0 auto;
   }
   .slider .slide .frame { position: absolute; bottom: 50px; left: 0; right: 0; }
   .slider .slide .caption { color: #FFFFFF; max-width: 50%; display: inline-block; }
   .slide-container.sub-page .caption { background-color: rgba(0,0,0,0.5); padding: 5px 10px; position: absolute; bottom: 0; left: 0; font-size: 16px; }
   .slide-container.sub-page { margin-bottom: 30px; }
   body.home .slide .caption { margin-left: -25px; padding: 20px 25px; background-color: #102542; }
   .slider .slide .caption h3 { color: #FFFFFF; margin: 0; }
   .slider .slide .caption .date { color: #aed255; font: normal 600 20px/1.5 'Khand', sans-serif; margin: 10px 0 0 0; }
   
   /* striped table */
   
   table.striped tr { vertical-align: baseline; }
   table.striped th { background-color: #102542; color: #FFFFFF; font-weight: 400; }
   table.striped td, table.striped th { padding: 6px 24px 2px 6px; }
   table.striped th:last-child, table.striped td:last-child { padding-right: 4px; } 
   table.striped tr:nth-child(even) { background-color: #E9E9E8; } 
   
   /* calendar grid */
   
   table.calendar { width: calc(100% + 20px); border-spacing: 10px; border-collapse: separate; margin: 0px -10px; table-layout: fixed; }
   table.calendar tr { vertical-align: top; }
   table.calendar th, table.calendar td { width: 14.286%; }
   table.calendar th { font-size: 125%; text-align: left; border-bottom: 3px solid #000000; }
   table.calendar td { padding: 0; height: 6em; }
   table.calendar td.blank {  }
   table.calendar td h4 { margin: 0; padding-top: 10px; margin-bottom: 10px; border-top: 1px solid #000000; }
   table.calendar td.past h4, table.calendar td.empty h4 { border-color: #AAAAAA; }
   table.calendar td.past h4 { color: #AAAAAA; }
   table.calendar td.today h4 { color: #DC6829; border-top: 3px solid #DC6829; padding-top: 8px; font-weight: 600; }
   table.calendar tr:nth-child(1) td h4 { border-top: 0; padding-top: 0px; }
   table.calendar a { text-decoration: none; }
   table.calendar .item { position: relative; margin: 0 0 1.2em 0; font-size: 90%; font-weight: 600; line-height: 1.1; display: block; }
   table.calendar .item .img { width: 100%; height: 0; padding-top: 66%; margin-bottom: 0.5em; background-position: center center; background-repeat: no-repeat; background-size: cover; }
   table.calendar .item .info { font-size: 80%; color: #000000; text-transform: uppercase; margin-top: 0.4em; }
	table.calendar .item.compact .img { display: none; }
   table.calendar .img .icon { width: 24px; height: 24px; }
   
   table.calendar a.moar { opacity: 0.9; margin: 0 0 1em 0; font-size: 90%; line-height: 1.1; display: block; cursor: pointer; }
   table.calendar a.moar:hover { opacity: 1; }
   table.calendar a.moar .moar-content { display: none; }

   .prevnext { text-decoration: none; }

   /* calendar list view */
   
   table.event-list { width: 100%; }
   table.event-list td { padding: 3px 20px 3px 0px; }
   table.event-list td:last-child { width: 99%; padding-right: 0; }
   table.event-list td a { font-weight: 600; text-decoration: none; }
   table.event-list td .info { font-size: 16px; color: #666666; }
   table.event-list td .datebox { width: 42px; }
   
   /* class browser bar */
   
   #browsebar { position: sticky; top: 112px; z-index: 100; background-color: #FFFFFF; box-shadow: 0 5px 8px rgba(0,0,0,0.1); }
   #browsebar .frame { padding-top: 0; padding-bottom: 0; }
   #browsebar form { display: flex; flex-wrap: wrap; gap: 4px; padding: 10px 0; border-top: 1px solid #FFFFFF; border-bottom: 1px solid #FFFFFF; }
   #browsebar select, #browsebar input[type=button] { padding: 5px; flex-basis: 20%; flex-grow: 1; flex-shrink: 1; color: #FFFFFF; background-color: #102542; border: 0; }
   #browsebar select.tax-age { background-color: #E27026; }
   #browsebar select.tax-type { background-color: #579440; }
   #browsebar select.tax-media { background-color: #67A6C7; }
   #browsebar select.tax-level { background-color: #AED255; }
   #browsebar select.tax-instructor { background-color: #52C3C4; }
	#browsebar select.tax-days { background-color: #E0B300; }
   #browsebar input[type=button] { flex-basis: 100px; flex-shrink: 0; background-color: #aa3054; padding: 5px 20px; }
   #browsebar input[type=button]:hover { background-color: #f8961e; }
   #browsebar select.unused { opacity: 0.5; }
   #browsebar select.unused:hover { opacity: 1; }
   .msg { margin: 10px 0; display: none; }
      
   /* class detail tables */
   
   table.details td, table.details th { padding: 3px 20px 3px 0px; }
   table.details td:last-child { padding-right: 3px; }
   table.details a { text-decoration: none; font-weight: 600; border-bottom: 1px dotted #49adae; }
   table.details a:hover { border-bottom: 1px solid #e27026; }
   
   /* grouped class management */
   
   .class-unselected { display: none; }
   
   /* "moar" modal */
   
   #modal 
   { 
      position: fixed; top: 0; right: 0; left: 0; background-color: rgba(247,247,247,0.96); 
      height: 0; padding-top: 0; overflow: hidden; transition: all 0.25s ease; opacity: 0; z-index: 195; 
   }
   #modal.open { opacity: 1; height: 100vh; padding-top: 150px; overflow: auto; }
   body.modal-open { overflow: hidden; }
   #modal th { font-size: 90%; }
   #modal td, #modal th { padding: 6px 20px 6px 0px; }
   #modal .zoomed { width: 100%; height: 60vh; display: block; margin-top: 20px; background-position: left center; background-repeat: no-repeat; background-size: contain; }
   
   #modal .close 
   { 
      display: block; margin: 0 0 1em 0; height: 50px; 
      background: transparent url('images/icon-close.svg') right center no-repeat; 
      background-size: contain; cursor: pointer; opacity: 0.4;
   }
   #modal .close:hover { opacity: 1; }
   
   /* mobile navigation */
   
   #mobilemenu 
   { 
      position: fixed; top: 0; right: 0; left: 0; z-index: 99; overflow: scroll; height: 0px; opacity: 0; transition-duration: 0.3s;  
      background-color: #102542;
   }
   #mobilemenu.active { height: 100vh; opacity: 1; padding-top: 10px; }
   #mobilemenu a { color: #FFFFFF; display: block; font-size: 20px; line-height: 20px; padding: 10px 25px 10px 0; font-weight: 300; text-decoration: none; }
   #mobile-menu { list-style-type: none; margin: 0px; padding: 80px 0px 0px 0px; color: #FFFFFF; }
   #mobile-menu > li { border-bottom: 1px solid rgba(255,255,255,0.33); padding-right: 50px; }
   #mobile-menu > li.menu-item-has-children 
   { 
      background: transparent url('images/icon-down.svg') right 9px no-repeat; background-size: 13px auto; 
      cursor: pointer;
   }
   #mobile-menu > li.menu-item-has-children.expanded { background-image: url('images/icon-up.svg'); }
   #mobile-menu > li > ul { display: none; }   
   #mobile-menu > li.expanded > ul { display: block; list-style-type: disc; margin-bottom: 15px; }
   #mobile-menu > li > ul > li a { font-size: 16px; line-height: 1; padding: 7px 0px; }
   
   /* search modal */
   
   #searchmodal
   { 
      position: fixed; top: -90px; right: 0; left: 0; z-index: 500; overflow: hidden; height: 0px; opacity: 0; transition-duration: 0.3s;  
      background-color: rgba(255,255,255,0.97);
   }
   #searchmodal.active { top: 0; height: 100vh; opacity: 1; overflow: auto; }
   #searchmodal .content { padding: 35px; text-align: left; }
   #searchmodal .closebtn 
   { 
      width: 50px; height: 48px; background: transparent url('images/icon-close.svg') center center no-repeat; background-size: contain; cursor: pointer; 
      opacity: 0.5; position: fixed; right: 20px; top: -200px; transition-duration: 0.3s;  
   }
	#searchmodal.active .closebtn { top: 20px; }
   #searchmodal .closebtn:hover { opacity: 1; }
   #searchmodal form { white-space: nowrap; display: flex; align-items: flex-end; }
   #searchmodal input
   {
      font-size: 48px; line-height: 48px; background-color: transparent; border: none;
      -webkit-appearance: none; border-radius: 0; -webkit-border-radius: 0px;
   }
   #searchmodal input:focus { outline: none; }
   #searchmodal input#s { width: 100%; border-bottom: 1px solid #666666; color: #000000; margin-right: 45px; font-weight: 300; }
   #searchmodal.active::after 
   { 
      position: fixed; left: 0px; bottom: 0px; right: 0px; height: 100px; z-index: 501;
      content: " "; display: block; background: linear-gradient(to top, rgba(255,255,255,1), rgba(255,255,255,0));
   }

   #autoresults h3 { margin-bottom: 20px; }
   
   .searchresults { display: flex; align-items: flex-start; flex-wrap: wrap; }
   .searchresult { display: block; margin: 0 0 20px 0; }
   .searchresult a { text-decoration:  none; }
   .searchresult .img { display: block; margin-bottom: 10px; }
   .searchcol { flex-basis: 25%; flex-grow: 1; padding-right: 45px; max-width: 33.333%; }
   .searchresults .excerpt, .searchresults .date { display: block;color: #777777; font-size: 90%; line-height: 1.25; }

   /* embedded video player */
   
   .video-container { overflow: hidden; height: 0; padding-bottom: 56.25%; position: relative; margin-bottom: 30px; }
   .video-container iframe { position:absolute; left: 0; top: 0; height: 100%; width: 100%; }
   
   /* wp admin bar */
   
   body.admin-bar #hd { top: 32px; }
   @media screen and (max-width: 781px) { body.admin-bar #hd { top: 46px; } }

   /* wp blocks */

   .blocks-gallery-grid .blocks-gallery-image figure, .blocks-gallery-grid .blocks-gallery-item figure, .wp-block-gallery .blocks-gallery-image figure, 
      .wp-block-gallery .blocks-gallery-item figure { padding: 0px; }
      
   .wp-block-table table { border-top: 1px solid #000000; border-bottom: 1px solid #000000; margin: 15px 0; }
	.reversed .wp-block-table table { border-color: rgba(255,255,255,0.7); }
   .wp-block-table table.has-fixed-layout { width: auto !important; }
   .wp-block-table table td { padding: 3px 25px 3px 0px; vertical-align: top; }
   .wp-block-table table td:last-child { padding-right: 3px; }
   
   .wp-block-column h4 { margin-top: 0; }
   
   figure.wp-block-image.size-full { margin-bottom: 2em; }
   
   /* rl gallery */
   
   .rl-gallery-item-content .rl-gallery-caption .rl-gallery-item-caption { display: none; }
   
   /* wpforms, you suck */
   
   div.wpforms-container-full .wpforms-form input[type=submit], div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .wpforms-page-button
   { 
      color: #FFFFFF !important; display: inline-block; padding: 6px 10px 8px 30px !important; cursor: pointer; 
      background: #49adae url('images/icon-arrow-right.svg') 8px center no-repeat !important; background-size: auto 16px !important;
      font: normal 400 16px/1.2; margin: 0 0 4px 0; text-decoration: none; border: 0px !important; 
      border-radius: 0; border: 0; 
   }
   div.wpforms-container-full .wpforms-form input[type=submit]:hover, div.wpforms-container-full .wpforms-form button[type=submit]:hover, 
      div.wpforms-container-full .wpforms-form .wpforms-page-button:hover
   { color: #FFFFFF !important; background-color: #AA3054 !important; }
	
	/* constant contact signup form */

	.ctct-inline-form .ctct-form-embed.form_0 .ctct-form-defaults { background-color: transparent; border-radius: 0; padding: 10px 0 0 0; }
	.ctct-inline-form h2, .ctct-inline-form .ctct-form-text, #gdpr_text, .ctct-inline-form .ctct-form-footer,
		.ctct-inline-form .g-recaptcha { display: none; }
	.ctct-inline-form .ctct-form-embed.form_0 .ctct-form-custom .ctct-form-button
	{
		color: #FFFFFF; background-color: #49adae; display: inline-block; padding: 6px 12px 7px 12px; 
      cursor: pointer; font-size: 16px; line-height: 1.2; margin: 0; 
		border: 0px; font-weight: 400; border-radius: 0; border: 0; flex-grow: 0;
		width: auto !important; white-space: nowrap; text-transform: lowercase;
	}
	.ctct-form-embed.form_0 .ctct-form-custom .ctct-form-button:hover { border: 0 !important; background-color: #AA3054 !important; }
	#ctct_form_0 { align-items: flex-end; font-family: 'tga'; font-weight: 400; gap: 3px; }
	#email_address_label_0, #first_name_label_0, #last_name_label_0 
	{ 
		color: #FFFFFF; text-transform: lowercase; font-size: 90%; margin-bottom: 5px !important;
	}
	div.ctct-form-embed form.ctct-form-custom label.ctct-form-label { font-weight: 400 !important; }
	div.ctct-form-embed form.ctct-form-custom div.ctct-form-field { margin-bottom: 0 !important; }
	div.ctct-form-embed form.ctct-form-custom { min-height: 0px !important; }
	
	.ctct-inline-form .ctct-form-field { margin-bottom: 0 !important; }
	.ctct-inline-form div.ctct-form-embed form.ctct-form-custom input.ctct-form-element
	{ 
		height: 32px; border-radius: 0 !important; border: 0 !important; box-shadow: 0; padding: 10px 5px;
	}
	div.ctct-form-embed form.ctct-form-custom .ctct-form-required:before { position: relative !important; left: 0 !important; padding-right: 3px; }
      
   /* large desktop */
   
   @media screen and (min-width: 1800px)
   {
      body.home .slide { background-position: center top; }
      .searchcol { flex-basis: 20%; }
   }
   
   @media screen and (max-width: 1300px)
   {
      table.striped { clear: right; }
		#browsebar { top: 103px; }
      #browsebar select { font-size: 16px; padding-left: 3px; padding-right: 0px; }
      #browsebar button { font-size: 16px; padding-left: 6px; padding-right: 6px; }
   }

   /* standard desktop + tablet landscape */
   
   @media screen and (min-width: 1201px)
   {
      body.home .tile:nth-child(9) { display: none; }
   }
   @media screen and (max-width: 1200px)
   {
      .tile { width: 33.333%; }
      .slide .caption { max-width: 75%; }
      .searchcol { flex-basis: 25%; }

      table.calendar .img .icon { width: 22px; height: 22px; }
      

      .mlac img { height: 55px; }
      .mlac { padding-bottom: 4px; }
      body { padding-top: 108px; }
      
      h2, h2 select { font-size: 34px; }
      .controls { float: none; margin-left: 0; }
      table.calendar .item { font-size: 14px; }
   }
   @media screen and (min-width: 1051px)
   {
      .mobileonly { display: none !important; }
   }
   
   @media screen and (max-width: 1050px)
   {

      
      #menu li, #toolbar { display: none; }
      #menu li.menu-icon { display: inline-block; }

      body { padding-top: 68px; }
      #menu { margin-bottom: 0; }
      .mlac img { height: 45px; }
      .mlac { padding-bottom: 0px; }
      #hd { padding-top: 12px; }
      footer .col { flex-basis: 100%; padding: 0; }
      footer .col.social { padding-top: 25px; }

		.wp-block-table table td, .wp-block-table table th { font-size: 16px; padding-right: 6px; line-height: 1.3; }
		.wp-block-table table td:last-child, .wp-block-table table th:last-child { padding-right: 3px; }

   }
   
   @media screen and (max-width: 1000px)
   {
      table.calendar .img .icons { display: none; }
   }
   
   @media screen and (max-width: 900px)
   {
      h3 { font-size: 26px; }
      .searchcol { flex-basis: 50%; max-width: 50%; }

      .tile { width: 50%; }
      body.home .tile:nth-child(9) { display: none; }
		.slide .caption { max-width: 100%; }
      body.home .slider .slide .caption { max-width: 100%; background-color: rgba(16,37,66,0.666); }
      #browsebar { top: 81px; }
      
      img.alignright { margin: 0 0 25px 25px;  }
		
		.wp-block-table table td, .wp-block-table table th { padding-right: 3px; }
				
   }
   
   @media screen and (max-width: 700px)
   {
      .frame { padding-left: 25px; padding-right: 25px; }
      .tiles { margin: 0px -12px; width: calc(100% + 24px); padding-top: 12px; }
      .tile { padding: 0px 12px 25px 12px; }
      img.alignright { float: none; margin: 0 0 25px 0; width: 50%; height: auto; }
      .alignright-clear { display: none; }
      table.calendar a.item .name { display: none; }
      table.calendar a.moar { font-size: 18px; }
      table.calendar a.moar .ongoing-label { display: none; }
		
		body.home .slider .slide .frame { bottom: 0; }
		body.home .slider .slide .caption { padding-bottom: 40px; margin-right: -25px; width: calc(100% + 50px); max-width: calc(100% + 50px); }
		body.home .slider .slide .caption  h3 { font-size: 20px; }
		body.home .slider .slide .caption .description { display: none; }
		body.home .slider .slide .caption .date { font-size: 18px; margin-top: 5px; }
		
      #searchmodal input#s { font-size: 30px; line-height: 1; }
      .searchresult .name { line-height: 1.2; display: block; }
      .searchcol { padding-right: 20px; }
         
   }
   
   /* phone (avg 360) */
   
   @media screen and (max-width: 500px)
   {
      h2, h2 select { font-size: 30px; }
      h3 { font-size: 24px; }
		.wp-block-table table td, .wp-block-table table th { font-size: 13px; }
      img.alignright { width: 100%; }
      .tile { width: 100%; }
   }  
   
   /* print */

   @media print
   {

   }
   