@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro:200i,300,300i,400,400i,600,600i,700,700i&display=swap');

/*
	CSS Document for Twainstein
	Copyright 2019 Neuro-Designs. All rights reserved.
	www.neuro-designs.com

	v1.0 - Last updated 2019/12/24

	Colors:
	#ffc10e / rgba(255,193,14,1) - Twainstein Yellow
	#333333 / rgba(51,51,51,1) - Twainstein Grey
*/

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

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 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
  }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
  }

body { line-height: 1; }

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;
  }

/* -------------------------------------------------------------

  CSS Variables

------------------------------------------------------------- */

:root {
  --twainstein-yellow: #ffc10e;
  }

/* -------------------------------------------------------------

  General Settings

------------------------------------------------------------- */

.wow { visibility: hidden; }

.resize-animation-stopper * {
  animation: none !important;
  transition: none !important;
  }

*,
*:before,
*:after { /* Box Sizing Settings */
  box-sizing: border-box;
  }

::selection {
  background: #333;
  color: var(--twainstein-yellow);
  }

html,
body {
  height: 100%;
  font-size: 62.5%;
  }

body {
  margin: 2rem;
	padding-top: 0; /* Adjust with <header> height when necessary */
	/* padding-top: 40px; Remove when not using .notification-bar */
	background: #fff;
	font: 10px/20px 'Source Sans Pro', sans-serif;
	color: #333;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	}

a {
	color: #000;
	font-weight: 700;
	text-decoration: none;
	}

	a:hover { color: #999; }

	a { transition: all .2s ease-out; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 1.5em;
	color: #767676;
	font-weight: 300;
	}

	h1 {
  	margin: 0;
  	font-size: 4.7em;
  	line-height: 1em;
  	}

  	h1 a { font-weight: 300 !important; }

	h2 {
  	font-size: 2.9em;
  	line-height: 1em;
	  }

	h3 {
  	margin-bottom: .75em;
  	font-size: 3.2em;
  	line-height: 1.32em;
    }

  h4 {
    margin-bottom: 1.6em;
    color: #333;
    font-size: 1.8em;
    font-weight: 700;
    line-height: 1.61em;
    }

  h5,
  h6 {
    font-size: 2.4em;
    font-weight: 400 !important;
    line-height: 1.61em;
    }

p,
pre,
figure,
table,
ul,
ol {
	margin-bottom: 1.6em;
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1.61em;
	}

ul,
ol {
	padding-left: 2em;
	}

	ul li { list-style: square outside; }

	ol li { list-style: decimal outside; }

	ol.upper-alpha li { list-style: upper-alpha; }

	ul ul,
	ul ol,
	ol ul,
	ol ol {
		margin: 0;
		font-size: 1em;
		}

		ol ul li { list-style: square; }

img,
svg {
	max-width: 100%;
	vertical-align: middle;
	image-rendering: optimizeQuality;
	font-size: 1.8em;
	}

	a > svg { pointer-events: none; }

	figure img {
  	width: 100%; /* inherit <figure>'s width */
    }

	figcaption {
  	margin-top: .5em;
  	color: #999;
  	font-size: .8em;
  	font-style: italic;
  	text-align: center;
  	}

blockquote {
	font-size: 2em;
	font-weight: 200;
	line-height: 1.6em;
	hanging-punctuation: first;
	}

	blockquote .author {
  	margin: 1em 0 0 0;
  	color: var(--twainstein-yellow);
  	font-size: .9em;
  	font-weight: 400;
    }

strong { font-weight: 700; }

em,
cite {
	font-style: italic;
	}

small,
sup,
sub { font-size: 0.7em; }

sup {
	position: relative;
	top: -0.6em;
	}

sub {
	position: relative;
	bottom: -0.6em;
	}

hr {
	clear: both;
	width: 100%;
	height: 0;
	margin: 3em auto;
	margin-top: 1.5em;
	border: none;
	border-top: 3px solid var(--twainstein-yellow);
	font-size: 1.8em;
	line-height: 1.61em;
	}

	hr.short { width: 15%; }

table.default td {
  background: #eee;
  margin: 1px;
  padding: .5em 1em;
  border: 1px solid rgba(255,255,255,1);
  }

table.default thead td { background: #ccc; }

table.default tfoot td { background: #ccc; }

/* -------------------------------------------------------------

  Default Input Settings (encapsulate with <p> when possible)

------------------------------------------------------------- */

input,
textarea,
select {
	font-family: 'Source Sans Pro', sans-serif;
	}

	input.short { width: 30% !important; }

::placeholder { color: rgba(0,0,0,0.4); }

input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="file"],
textarea {
	background: #eaeaea;
	padding: 1rem;
	border: none;
	border-bottom: 1px solid #fff;
	color: #333;
	font-size: 1em;
	transition: all .2s ease-out;
	}

	input[type="file"] { font-size: .9em; }

	textarea {
		max-width: 100%;
		min-height: 10em;
		}

	input:focus,
	textarea:focus {
  	outline: none;
  	background: rgba(255,193,14,.1);
  	padding: 1rem;
  	border-bottom-color: #333;
    }

select { font-size: 1em; }

input[type="search"] { -webkit-appearance: none; }

input[type="submit"],
.button,
button {
	display: inline-block;
	background: var(--twainstein-yellow);
	margin-bottom: .2rem;
	padding: .5em 3em;
	border: none;
	border-radius: 4px;
	color: #333 !important;
	font-size: 1em;
	font-weight: 600 !important;
	text-align: center;
	cursor: pointer;
	transition: all .2s ease-out;
	-webkit-appearance: none;
	}

	input[type="submit"]:hover,
	.button:hover,
	button:hover {
		background: #333;
		box-shadow: 0 0 20px rgba(0,0,0,.25);
		color: #fff !important;
		}

.button.inverted,
button.inverted {
  background: #333;
  color: var(--twainstein-yellow) !important;
  }

  .button.inverted:hover,
  button.inverted:hover {
    background: #fff;
    color: #333 !important;
    }

  .button.lg,
  button.lg {
    font-size: 1.4em;
    }

  .button.sm,
  button.sm {
    padding: .25em 2em;
    }

/* -------------------------------------------------------------

  Additional Classes and Overrides

------------------------------------------------------------- */

/* -------------------------------------------------------------
  Font Stylings
------------------------------------------------------------- */

.text-normal { font-weight: normal; }

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

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

.text-underline { text-decoration: underline; }

.text-linethrough { text-decoration: line-through; }

.text-uppercase { text-transform: uppercase; }

.text-monospace { font-family: monospace; }

/* -------------------------------------------------------------
  Colors
------------------------------------------------------------- */

.color-yellow { color: var(--twainstein-yellow); }

.color-grey { color: #767676; }

.color-red { color: #f00; }

.shaded { background: #eee; }

.shaded-inverse {
  background: var(--twainstein-yellow);
  color: #fff;
  }

.shaded-yellow { background: var(--twainstein-yellow); }

  .shaded-yellow * { color: #333; }

.shaded-grey { background: #666; }

  .shaded-grey * { color: #fff; }

/* -------------------------------------------------------------
  Box Model
------------------------------------------------------------- */

.width-full { width: 100%; }

.hidden { display: none !important; }

.overflow-hidden { overflow: hidden; }

.overflow-auto { overflow: auto; }

.margin-none { margin: 0 !important; }

.margin { margin: 1em; }

.margin-top { margin-top: 1em; }

.margin-bottom { margin-bottom: 1em; }

.margin-double-bottom { margin-bottom: 2em; }

.margin-left { margin-left: 1em; }

.margin-right { margin-right: 1em; }

.margin-sides {
  margin-left: 1em;
  margin-right: 1em;
  }

.margin-top-bottom {
  margin-top: 1em;
  margin-bottom: 1em;
  }

/*
  Note: When considering responsive layouts that may adjust itself
  significantly and look undesireable when stacked, consider using
  individual/paired padding classes instead of .padding
*/

.padding { padding: 3rem; }

.padding-top { padding-top: 3rem; }

.padding-bottom { padding-bottom: 3rem; }

.padding-left { padding-left: 3rem; }

.padding-right { padding-right: 3rem; }

.padding-sides {
  padding-left: 3rem;
  padding-right: 3rem;
  }

.padding-top-bottom {
  padding-top: 3rem;
  padding-bottom: 3rem;
  }

.padding-double { padding: 6rem; }

.padding-double-top { padding-top: 6rem; }

.padding-double-bottom { padding-bottom: 6rem; }

.padding-double-left { padding-left: 6rem; }

.padding-double-right { padding-right: 6rem; }

.padding-double-sides {
  padding-left: 6rem;
  padding-right: 6rem;
  }

.padding-double-top-bottom {
  padding-top: 6rem;
  padding-bottom: 6rem;
  }

.padding-half { padding: 1.5rem; }

.padding-half-top { padding-top: 1.5rem; }

.padding-half-bottom { padding-bottom: 1.5rem; }

.padding-half-left { padding-left: 1.5rem; }

.padding-half-right { padding-right: 1.5rem; }

.padding-half-sides {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  }

.padding-half-top-bottom {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  }

.border { border: 1px solid #ccc; }

.border-top { border-top: 1px solid #ccc; }

.border-right { border-right: 1px solid #ccc; }

.border-bottom { border-bottom: 1px solid #ccc; }

.border-left { border-left: 1px solid #ccc; }

/* -------------------------------------------------------------
  Alignment & Positioning
------------------------------------------------------------- */

.image-align-left { /* For use with images in paragraphs */
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1em;
  }

.image-align-right { /* For use with images in paragraphs */
  float: right;
  margin-left: 1.5em;
  margin-bottom: 1em;
  }

.clear-both { clear: both !important; }

.clear-left { clear: left !important; }

.clear-right { clear: right !important; }

.float-left { float: left !important; }

.float-right { float: right !important; }

.float-center {
  clear: both;
  float: none !important;
  margin: 0 auto;
  }

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  }

  .embed-container iframe,
  .embed-container object,
  .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    }

/* -------------------------------------------------------------
  Lists
------------------------------------------------------------- */

ul.blank { padding: 0; }

	ul.blank li {
		padding: 0;
		list-style: none;
		position: relative;
		}

.column-count-2 { column-count: 2; }

.column-count-3 { column-count: 3; }

/* -------------------------------------------------------------
  Others
------------------------------------------------------------- */

.notification-bar {
  width: 100%;
  height: 40px;
  background: linear-gradient(to top, #ed1c24, #cd1300);
  padding: .5em 1em;
  border-bottom: 1px solid white;
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  text-align: center;
  z-index: 100 !important;
  }

  .notification-bar p { margin: 0; }

  .notification-bar a { color: #fff; }

    .notification-bar a:hover { opacity: .5; }

/* -------------------------------------------------------------

  Layout Settings - Default

------------------------------------------------------------- */

span.anchor {
	display: block;
	visibility: hidden;
	height: 90px;
	margin-top: -90px;
	}

.wrapper {
  padding: 0;
  overflow: auto;
  }

header {
	width: 100%;
  margin-top: 2rem;
  padding: 0 2rem;
  padding-top: 4rem; /* Remove when not using .notification-bar */
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	transition: all .2s ease-out;
	}

	header .plc {
  	background: var(--twainstein-yellow);
  	max-width: 1440px;
  	height: 100%;
  	margin: 0 auto;
  	border-top-left-radius: 4px;
  	border-top-right-radius: 4px;
    display: flex;
  	align-items: center;
  	justify-content: space-between;
  	position: relative;
  	}

  	.header-logo { max-width: 21rem; }

	header.scrolled { margin-top: 0; }

  	header.scrolled .plc {
    	border-top-left-radius: 0;
    	border-top-right-radius: 0;
    	box-shadow: 0 0 10px rgba(0,0,0,0.3);
    	}

  nav { position: relative; }

  nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    font-size: 1.8em;
    }

    nav ul ul { font-size: 1em; }

    nav li {
      list-style: none;
      margin-left: .5em;
      white-space: nowrap;
      }

    nav ul a {
      padding: .25em .5em;
      border-radius: 4px;
      color: #333;
      font-weight: 400;
      }

      nav ul li a.current {
        background: #333;
        color: #fff;
        }

      nav ul li a:hover,
      nav ul li:hover a,
      nav ul li a.current:hover,
      nav ul li:hover a.current {
        background: #333;
        color: #fff;
        }

        nav .current {
          font-weight: 700;
          }

          nav .highlight a.current {
            background: #fff !important;
            color: #333 !important;
            }

            nav .highlight a.current:hover {
              background: #666 !important;
              color: #fff !important;
              }

  .nav-up { top: -150px !important; }

  .nav-down { top: 0; }

/* Sub-Menus  */

nav ul ul {
  background: #333;
  width: auto;
	margin: 0;
	padding: 0;
	box-shadow: 0 8px 10px rgba(0,0,0,.2);
	list-style: none;
	position: absolute;
	z-index: 10;
	top: 31px; /* Positioning: Calculate with top level horizontal list height */
	overflow: auto;
	}

	nav ul ul ul {
		top: 0;
		left: 100%; /* Position the sub menus to right */
		}

		nav ul .align-right ul {
  		text-align: right;
  		right: 0; /* Position dropdown to be right-aligned */
  		}

		nav ul ul li {
  		height: auto;
  		display: block;
			float: none; /* Appear below the previous one. */
			margin: 0;
			padding: 0;
			font-size: 1em;
			}

			nav ul ul li a {
				display: block;
				float: none;
				margin: 0;
				padding: .5em 1em;
				color: #fff;
				}

			nav ul ul li a:hover {
				background: #fff !important;
				color: #333;
				}

/* Overrides for Highlighted item */

nav ul .highlight ul { background: rgba(100,176,186,1); }

  nav ul .highlight ul li a {
 	  background: rgba(100,176,186,1);
    }

    nav ul .highlight > a {
      background: #666;
      padding: .25em .5em;
      border-bottom: none;
      color: #fff;
      }

      nav ul .highlight > a:hover,
      nav ul .highlight:hover > a,
      nav ul .highlight > a.current {
        background: #fff;
        color: #333;
        }

/* Drop-Downs */

.dropdown > a {}

  .dropdown > a:hover,
  .dropdown:hover > a {
    border-bottom: 2px solid #333;
    }

  .dropdown:hover > a {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    }

  .dropdown i {
    margin-left: .5em;
    opacity: .5;
    }

    .dropdown:hover i {
      color: var(--twainstein-yellow);
      opacity: 1;
      }

nav ul ul,
nav ul li:hover ul ul,
nav ul ul li:hover ul ul { /* Hide all the dropdowns (submenus) */
  visibility: hidden;
	display: block;
	opacity: 0;
	transition: all .2s ease-out;
	}

nav ul li:hover ul,
nav ul ul li:hover ul ,
nav ul ul li ul li:hover ul { /* Display the submenus only when li are hovered */
  visibility: visible;
	display: block;
	opacity: 1;
	transition: all .2s ease-out;
	}

nav ul ul {
  border-top-right-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  }

nav ul ul a { border-radius: 0 !important; }

/* Hamburger Icon */

a.open {
  display: none;
  color: #333;
  font-size: 2.8em;
  position: relative;
  }

  a.open:hover { opacity: .5; }

  a.close { display: none; }

/* Grid/Columns */

.contents {
  width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 2rem 0 0;
	overflow: hidden;
	}

	.col-1,
	.col-2,
	.col-3,
	.col-4,
	.col-5,
	.col-6,
	.col-7,
	.col-8,
	.col-9,
	.col-10,
	.col-11,
	.col-12,
	.col-1-4,
	.col-1-3,
	.col-1-2,
	.col-2-3,
	.col-3-4,
	.col-full,
	.col-half {
  	float: left;
		}

  /* Note: When nested, all column widths are counted relative to parent element */

  .col-1 { width: 8.333333%; }

  .col-2 { width: 16.666667%; }

  .col-3,
  .col-1-4 {
    width: 25%;
    }

  .col-4,
  .col-1-3 {
    width: 33.333333%;
    }

  .col-5 { width: 41.666665%; }

  .col-6,
  .col-1-2,
  .col-half {
    width: 50%;
    }

  .col-7 { width: 58.333333%; }

  .col-8,
  .col-2-3 {
    width: 66.666667%;
    }

  .col-9,
  .col-3-4 {
    width: 75%;
    }

  .col-10 { width: 83.333333%; }

  .col-11 { width: 91.666667%; }

  .col-12,
  .col-full {
    width: 100%;
    }

footer {
	clear: both;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	}

	footer .plc {
  	max-width: 1440px;
  	margin: 0 auto;
  	padding-bottom: 100px;
		}

/* -------------------------------------------------------------

  Hero

------------------------------------------------------------- */

.cycle-slideshow {
  position: relative;
  z-index: 0;
  }

  .cycle-slideshow div { display: none; }

    .cycle-slideshow div:first-child { display: block !important; }

.hero { margin-top: 0; }

  .hero .plc {
    background: var(--twainstein-yellow);
    max-width: 1440px;
    margin: 0 auto;
    padding-top: 10rem;
    /*border-bottom: 1.5rem solid var(--twainstein-yellow);*/
    overflow: auto;
    display: flex;
    flex-wrap: wrap;
    }


    .hero-text h2 {
      margin-bottom: 0.25em;
      color: #333;
      font-size: 8.5em;
      letter-spacing: -0.03125em;
      }

    .hero-text h3 {
      color: #333;
      font-size: 2.8em;
      font-weight: 400;
      line-height: 1.5em;
      margin-bottom: 1em;
      }

      .hero-text h3 a { color: #333; }

        .hero-text h3 a:hover { opacity: .5; }


        .hero-video .embed-container { border: 1em solid rgba(255,255,255,.5); }

  .hero-services-cta {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    }

    .hero-services-cta article {
      width: 50%;
      min-height: 480px;
      margin-bottom: 1px;
      text-align: center;
      background-color: rgba(0,0,0,.5);
      background-blend-mode: multiply;
      display: flex;
      flex-direction: column;
      justify-content: center;
      transition: all .2s ease-out;
      }

      .hero-services-cta .blend { background-color: var(--twainstein-yellow); }

      .hero-services-cta article * {
        color: #fff;
        text-shadow: 0px 1px 2px rgba(0,0,0,.5);
        }

        .hero-services-cta article .button { text-shadow: none; }

      .hero-services-cta article h4 {
        color: var(--twainstein-yellow);
        font-size: 3.2em;
        font-weight: 200;
        line-height: 1.4em;
        margin-bottom: .75em;
        }

        .hero-services-cta .blend h4 { color: #fff !important; }

      .hero-services-cta article p { font-weight: 700; }

      .hero-services-cta article p:last-child { margin: 0; }

      .cta-gmat-gre {
        background-image: url("../images/hero-services-gmat-gre.jpg");
        background-position: center center;
        background-size: cover;
        }

      .cta-admissions {
        background-image: url("../images/hero-services-admissions.jpg");
        background-position: center center;
        background-size: cover;
        }

  /* Specifics for use outside homepage */

  .hero-services-cta.sub-page article { justify-content: flex-start; }

  .hero-services-cta.sub-page article p { font-weight: normal; }

/* -------------------------------------------------------------

  Lightbox
  - To be used with magnific-popup.css

------------------------------------------------------------- */

.lightbox-set {
  display: flex;
  flex-wrap: wrap;
  }

.ajax-popup {
	background: #fff;
	max-width: 800px;
	position: relative;
	overflow: hidden;
	margin: 4rem auto;
	padding: 4rem;
	text-align: left;
	box-shadow: 0 0 20px rgba(0,0,0,.5);
	}

	.ajax-popup.video {
  	background: #000;
  	max-width: 90%;
  	padding: 0;
	}

/* -------------------------------------------------------------

  Tabs

------------------------------------------------------------- */

.ui-tabs {
	position: relative;
	padding: 0;
	zoom: 1;
	}

.ui-tabs .ui-tabs-nav {
	margin: 0 1rem -1px;
	padding: 0;
	overflow: hidden;
	}

	.ui-tabs .ui-tabs-nav li {
		list-style: none;
		float: left;
		position: relative;
		padding: 0;
		margin-right: 1rem;
		white-space: nowrap;
		}

		.ui-tabs .ui-tabs-nav li a {
			float: left;
			background: #ccc;
			padding: 1rem 2rem;
			border: 1px solid #ccc;
			border-top-left-radius: 4px;
			border-top-right-radius: 4px;
			color: #666;
			font-size: 1.4em;
			font-weight: 200;
			outline: none;
			}

		.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
			margin-bottom: 0;
			padding-bottom: 1px;
			}

			.ui-tabs .ui-tabs-nav li.ui-state-active a {
				background: #fff !important;
				border-bottom: 1px solid #fff;
				color: #333;
				}

			.ui-tabs .ui-tabs-nav li a:hover {
				background: var(--twainstein-yellow) !important;
				border-color: var(--twainstein-yellow);
				color: #333;
				}

				.ui-tabs .ui-tabs-nav li.ui-state-active a:hover {
  				background: #fff !important;
  				cursor: default;
  				border: 1px solid #ccc;
  				border-bottom: 1px solid #fff;
				  }

			.ui-tabs .ui-tabs-nav li.ui-tabs-selected a,
			.ui-tabs .ui-tabs-nav li.ui-state-disabled a,
			.ui-tabs .ui-tabs-nav li.ui-state-processing a {
				cursor: text;
				}

			.ui-tabs .ui-tabs-nav li a,
			.ui-tabs.ui-tabs-collapsible
			.ui-tabs-nav li.ui-tabs-selected a {
				cursor: pointer;
				}

	.ui-tabs .ui-tabs-panel {
		clear: both;
		display: block;
		margin: 0;
		border-width: 0;
		border-top: 1px solid #ccc;
		}

	.ui-tabs .ui-tabs-hide { display: none !important; }

  .ui-tabs div { background: #fff; }

#tabs h3 { overflow: auto; }

#tabs h3 span {
  float: left;
  margin-right: .5em;
  }

#tabs h3 .button.sm {
  float: left;
  font-size: .55em;
  padding: 0 1em;
  }

/* -------------------------------------------------------------

  Accordion

------------------------------------------------------------- */

.accordion {
	margin-bottom: 20px;
	font-size: 1em;
	}

	.accordion * { outline: none; }

	.accordion h5 {
		background: url("/assets/images/bg-accordion-marker.svg") 0 .35em no-repeat;
		margin: 0;
		padding: 0 0 0 2.5rem;
		font-size: 1.8em;
		}

		.accordion .ui-accordion-header-active { background-image: url("/assets/images/bg-accordion-marker-active.svg"); }

		.accordion h5 a {
			display: inline-block;
			clear: both;
			}

			.accordion h5 a:hover { color: #ccc; }

			.accordion .ui-accordion-header-active a { color: #767676 !important; }

	.accordion article {
		overflow: hidden;
		clear: both;
		margin-top: 1.61em;
		padding-left: 2.5rem;
		}

/* -------------------------------------------------------------

  Layout Specifics - Global

------------------------------------------------------------- */

.title-wrapper {
  overflow: auto;
  background: var(--twainstein-yellow);
  padding-top: 14rem;
  padding-bottom: .5rem;
  }

  .title-wrapper * { color: #333; }

  .title-wrapper h2 {
    margin-bottom: 0;
    font-size: 4.8em;
    line-height: 1.2em;
    }

    .title-wrapper h2 i { color: rgba(0,0,0,.25); }

    .title-wrapper h2 a { font-weight: 200; }

      .title-wrapper h2 a.parent { opacity: .5; }

    .title-wrapper h2 span,
    .title-wrapper h2 span a {
      display: inline-block;
      font-weight: 300 !important;
      }

      .title-wrapper h2 a:hover { color: rgba(0,0,0,.3); }

.cta-bar {
  background: #222;
  background-size: cover;
  text-align: center;
  }

  .cta-bar h3 { color: #fff; }

.corporate-bar {
  background: #eee;
  overflow: auto;
  }

.latest-blog { background: #f2f2f2; }

  .latest-blog h4 {
    font-size: 2.4em;
    font-weight: 400;
    }

  .blog-post-block h5 {
    margin-bottom: .25em;
    font-size: 1.8em;
    font-weight: 700;
    }

    .blog-post-block h5 a { color: #000; }

      .blog-post-block h5 a:hover { color: #999; }

  .blog-post-block time {
    color: #666;
    font-size: 1.6em;
    }

    .blog-post-block time i {
      color: var(--twainstein-yellow);
      margin-right: .25em;
      }

.contact-bar { border-top: 3px solid #eee; }

  .contact-bar h4 {
    margin-bottom: 1em;
    color: var(--twainstein-yellow);
    font-size: 2.4em;
    font-weight: 400;
    }

  .contact-bar p { margin: 0; }

  .contact-info p,
  .social-media p {
    color: #000;
    font-size: 2.4em;
    font-weight: 200;
    }

    .contact-info a,
    .social-media a {
      color: #000;
      font-weight: 200;
      }

      .contact-info a:hover,
      .social-media a:hover {
        color: #999;
        }

  .social-media i { margin-right: .25em; }

.association {
  text-align: right;
  white-space: nowrap;
  }

.association img {
  max-width: 100%;
  margin: 3rem 2rem 3rem 0;
  }

  .association img:hover { opacity: .5; }

.copyright { border-top: 3px solid #eee; }

  .copyright p {
    color: #999;
    font-size: 1.4em;
    }

  .copyright p.links {
    text-align: right;
    }

    .copyright p.links a {
      display: inline-block;
      margin-right: 1em;
      }

    .copyright p.links a:last-child { margin-right: 0; }

/* -------------------------------------------------------------

  Layout Specifics - Home

------------------------------------------------------------- */

.home-why-twainstein {
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  }

  .home-why-twainstein > div > img {
    max-width: 50%;
    margin-bottom: 1.5em;
    }

.home-statistics {
  border-top: 3px solid var(--twainstein-yellow);
}

.home-case-testimonials {
  background: var(--twainstein-yellow);
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  }

  .home-case-testimonials h3 {
    color: #333;
    margin-bottom: .75em;
    }

.home-testimonials { background: #666; }

  .home-testimonials h3 {
    color: rgba(255,255,255,.8);
    text-rendering: optimizeLegibility;
    }

  .home-testimonials blockquote {
    margin-bottom: 1em;
    color: #fff;
    }

/* -------------------------------------------------------------

  Layout Specifics - About > Who We Are

------------------------------------------------------------- */

.twainstein-mission {
  float: none;
  margin: 5rem auto !important;
  margin-bottom: 2rem !important;
  text-align: center;
  }

  .twainstein-mission h3 {
    color: #666;
    font-size: 3.6em;
    font-weight: 200;
    line-height: 1.4em;
    }

    .twainstein-mission h3 span { font-weight: 400; }

  .twainstein-mission p { margin-bottom: 0; }

.our-name {
  display: flex;
  align-items: center;
  }

  .our-name-text p:last-child { margin: 0; }

.twainsteins-core-principles {
  background: var(--twainstein-yellow);
  text-align: center;
  }

  .twainsteins-core-principles h3 { color: #333; }

  .twainsteins-core-principles > div > img {
    max-width: 150px;
    max-height: auto;
    margin-bottom: 1.5em;
    }

.twainstein-team {}

.team-wrapper {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  }

  .team-wrapper a {
    width: 25%;
    display: inline-block;
    text-align: center;
    border-radius: 1rem;
    }

    .team-wrapper * {
      margin: 0;
      transition: all .2s ease-out;
      }

    .team-wrapper a img {
      margin-bottom: .8em;
      filter: grayscale(1);
      }

    .team-wrapper > a h4 { margin-bottom: 0; }

    .team-wrapper a:hover { background: var(--twainstein-yellow); }

      .team-wrapper a:hover * { color: #333; }

      .team-wrapper a:hover img { filter: none; }

.team-popup {
  width: 80%;
  max-width: 1024px;
  }

  .team-popup img {
    width: 100%;
    max-width: 400px;
    margin-bottom: 1.61em;
    }

  .team-popup h3 { margin-bottom: 0; }

  .team-popup p.title { font-weight: 600; }

  .team-popup p.title::after {
    content: '';
    display: block;
    width: 10%;
    height: 3px;
    background: var(--twainstein-yellow);
    margin-top: 1.61em;
    }

.founder { position: relative; }

.founder-bg {
  width: 100%;
  height: 100%;
  background: url("../images/bg-founder.jpg") right top no-repeat;
  background-size: cover;
  position: absolute;
  z-index: -100;
  }

/* -------------------------------------------------------------

  Layout Specifics - About > Our Method

------------------------------------------------------------- */

.our-method-graphics img { max-width: 300px; }

blockquote.pull-quote {
  color: #767676;
  font-size: 4.8em;
  letter-spacing: -0.015625em;
  line-height: 1.4em;
  font-style: italic;
  }

/* -------------------------------------------------------------

  Layout Specifics - About > Contact

------------------------------------------------------------- */

.contact-form .form-label { font-weight: 600; }

.contact-form input[type="text"],
.contact-form input[type="number"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form textarea {
  width: 80%;
  }

/* -------------------------------------------------------------

  Layout Specifics - About > Testimonials

------------------------------------------------------------- */

.testimonial-wrap {
  columns: 3;
  column-gap: 3rem;
  }

  .testimonial-wrap .testimonial-block {
    display: inline-block;
    width: 100%;
    background: #fafafa url("../images/icon-testimonial-alt.svg") no-repeat;
    background-size: 40px 40px;
    background-position: bottom 3rem right 3rem;
    margin: 0 0 3rem 0;
    padding-bottom: 5rem;
    border-top: .4rem solid #cacaca;
    color: #333;
    }

    .testimonial-wrap blockquote .author { color: #333; }

/* -------------------------------------------------------------

  Layout Specifics - About > Case Studies

------------------------------------------------------------- */

.case-studies-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 6rem;
  }

  .case-studies-block {
    width: 33.33%;
    text-align: center;
    border-radius: 1rem;
    }

    .case-studies-block svg {
      max-width: 75%;
      height: auto;
      margin-bottom: .5rem;
      }

    .case-studies-block h4 {
      margin: 0;
      color: #767676;
      font-size: 2.4em;
      font-weight: 400;
      }

    .case-studies-block:hover { background: var(--twainstein-yellow); }

      .case-studies-block:hover svg * { fill: #333; }

      .case-studies-block:hover h4 { color: #333; }

.case-study {}

  .case-study tr { border-bottom: 1px solid #999; }

    .case-study tr:first-child { border: none; }

  .case-study td {
    background: #666;
    padding: 1.5rem;
    color: #fff;
    }

  .case-study tr:nth-child(even) td {}

  .case-study tr td:first-child {
    font-weight: 600;
    white-space: nowrap;
    }

    .case-study td.name {
      background: #333;
      padding: 2rem 1.5rem;
      color: var(--twainstein-yellow);
      font-size: 1.8em;
      font-weight: 300 !important;
      line-height: 1em;
      }

    .case-study td.name svg {
      max-width: 48px;
      max-height: 48px;
      margin-right: .125em;
      }

    .case-study td.name svg * { fill: #fff; }

.final-score {
  background: #333;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
  }

  .final-score p { margin: 0; }

  .final-score h3 {
    margin: 0;
    color: var(--twainstein-yellow);
    font-size: 4.8em;
    line-height: 1em;
    }

.bottom-line {
  clear: both;
  display: flex;
  margin-bottom: 2.9em;
  }

  .bottom-line div {
    background: var(--twainstein-yellow);
    width: 33.33%;
    padding: 2rem;
    border: 1px solid #fff;
    text-align: center;
    }

  .bottom-line div p:first-child { font-weight: 700; }

  .bottom-line i { color: #fff; }

  .bottom-line div p:last-child { margin: 0; }

.before-after-blurb {
  float: none;
  margin: 0 auto;
  }

.before-after { margin-bottom: 4em; }

/* -------------------------------------------------------------

  Layout Specifics - Services

------------------------------------------------------------- */

.services-text {
  float: none;
  margin: 0 auto;
  text-align: center;
  }

.services-intro {
  background: #222 top center;
  background-size: cover;
  }

  .services-intro .wrapper {
      background-color: rgba(0,0,0,.65);
      background-blend-mode: multiply;
      display: flex;
      align-items: center;
      }

  .services-intro * { color: #fff; }

  .services-intro h3 { color: var(--twainstein-yellow); }

  .services-intro.gmat-gre { background-image: url("../images/hero-services-gmat-gre.jpg"); }

  .services-intro.application-consulting { background-image: url("../images/hero-services-admissions.jpg"); }

  .services-intro img { max-width: 75%; }

.package-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  }

  .package-wrapper.options-2 article { width: 50%; }

  .package-wrapper.options-3 article { width: 33.33%; }

  .package-wrapper.application-consulting article:first-child { width: 25%; }

  .package-wrapper.application-consulting article:nth-child(2) { width: 75%; }

.package-wrapper ul {
  margin: 0;
  padding: 0;
  }

  .package-wrapper ul li {
    list-style: none;
    padding: 1em 2em;
    border-bottom: 1px dotted #ccc;
    }

    .package-wrapper ul li:last-child { border: none; }

  .package-wrapper .package-title {
    background: var(--twainstein-yellow);
    margin-bottom: 0;
    padding: .5em 1em 0 1em;
    color: #333;
    font-size: 2.4em;
    font-weight: 700;
    }

    .package-wrapper .additional-schools .package-title { padding-bottom: .5em; }

  .package-wrapper .price {
    max-width: 100%;
    background: var(--twainstein-yellow);
    margin-bottom: 0;
    padding-bottom: .5em;
    color: #333;
    font-size: 5em;
    font-weight: 200 !important;
    letter-spacing: -0.03125em;
    line-height: 1em;
    }

    .package-wrapper .price.slash {
      color: rgba(0,0,0,.5);
      font-size: 2.8em;
      text-decoration: line-through;
      margin-top: -.5em;
      }

    .package-wrapper .price span {
      display: block;
      margin-bottom: -.5em;
      font-size: .4em;
      font-weight: 300;
      letter-spacing: normal;
      line-height: 1.5em;
      }

.package-wrapper .price-set {
  width: 100%;
  display: flex;
  justify-content: space-between;
  }

  .package-wrapper .price-set .price {
    width: 20%;
    }


table.schedule {
  width: 100%;
  margin: 0 0 3.2em 0;
  }

  table.schedule td{
    padding: .25em 1em;
    border-bottom: 1px dotted #ccc;
    }

    table.schedule td:last-child {
      text-align: center;
      white-space: nowrap;
      }

    table.schedule tr:first-child { font-weight: 600; }

      table.schedule tr:first-child td {
        background: #333;
        border-bottom: none;
        color: #fff;
        white-space: nowrap;
        }

table.schedule-alt {
  width: auto;
  margin: 0 0 1.6em 0;
  }

  table.schedule-alt td {
    background: #eee;
    padding: .25em 1em;
    border-bottom: 1px solid #fff !important;
    font-weight: normal;
    text-align: left;
    }

    table.schedule-alt tr:first-child td:last-child {
      background: #eee;
      border-bottom: 1px solid #fff;
      color: #333;
      }

    table.schedule-alt td:first-child {
      background: #333 !important;
      color: #fff !important;
      font-weight: 600;
      white-space: nowrap;
      }

  table.schedule i,
  table.schedule-alt i {
    margin-right: .25em;
    color: var(--twainstein-yellow);
    }

.question {
  background: #eee;
  border-left: 4px solid var(--twainstein-yellow);
  }

/* Specific for GMAT/GRE Prep page */

.twainstein-edge-icons {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-around;
  }

  .twainstein-edge-icons div {
    width: 33.33%;
    padding-bottom: 0;
    }

  .twainstein-edge-icons img { max-width: 75%; }

.safety-numbers { overflow: auto; }

.safety-numbers .percentage {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  }

  .safety-numbers .percentage > div { width: 33.33%; }

    .safety-numbers .percentage > div > img { margin-bottom: .5em; }

/* Specific for Application Consulting page */

.whats-in-a-name-list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  }

.whats-in-a-name-list > div { width: 33.33%; }

  .whats-in-a-name-list > div img {
    max-width: 30%;
    margin-bottom: 1em;
    }

.application-season-data {}

.application-season-data .statistics {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  }

.application-season-data .statistics > div { width: 25%; }

.application-season-data .statistics > div.wide { width: 33.33%; }

.application-season-data .statistics .number {
  display: block;
  margin-top: 0;
  color: var(--twainstein-yellow);
  font-size: 8em;
  font-weight: 200;
  line-height: 1.2em;
  }

.application-season-data .statistics .text {
  display: block;
  color: #666;
  font-weight: 700;
  }

.process-list {}

.process-list > div {
  background: url("../images/bg-process.svg") left bottom no-repeat;
  background-position: left 30px bottom 20px;
  display: flex;
  align-items: flex-start;
  }

.process-list > div:last-child { background: none; }

.process-list .step-number {
  width: 84px;
  height: 84px;
  display: inline-block;
  background: var(--twainstein-yellow);
  margin-right: 2rem;
  padding: .5em;
  border-radius: 50%;
  font-size: 4em;
  font-weight: 200;
  line-height: 1em;
  text-align: center;
  }

.process-list > div > div { width: calc(100% - 84px); }

.process-list .step-title {
  display: inline-block;
  margin-bottom: 1em;
  padding-top: 1em;
  font-size: 2.4em;
  font-weight: 700;
  line-height: 1.3em;
  }

/* -------------------------------------------------------------

  Layout Specifics - Free Consultation

------------------------------------------------------------- */

.free-consultation .form-label { font-weight: 600; }

.free-consultation input[type="text"],
.free-consultation input[type="number"],
.free-consultation input[type="tel"],
.free-consultation input[type="email"],
.free-consultation textarea {
  width: 80%;
  }

/* -------------------------------------------------------------

  Layout Specifics - Resources

------------------------------------------------------------- */

.resources-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 6rem;
  }

  .resource-block {
    width: 25%;
    text-align: center;
    border-radius: 1rem;
    }

    .resource-block svg {
      max-width: 75%;
      height: auto;
      margin-bottom: 3rem;
      }

    .resource-block h4 { margin: 0; }

    .resource-block:hover { background: rgba(255,193,14,1); }

      .resource-block:hover svg * { fill: #000; }

      .resource-block:hover h4 { color: #000; }

/* -------------------------------------------------------------

  Layout Specifics - Blog

------------------------------------------------------------- */

.blog-home-wrapper {
  display: flex;
  flex-wrap: wrap;
  }

  .blog-home-wrapper article { width: 33.33%; }

.blog-entry {}

    .blog-entry h3 a { font-weight: 600; }

.blog-entry .meta i {
  margin-right: .25em;
  color: var(--twainstein-yellow);
  }

.blog-entry time {
	display: inline-block;
	margin-right: 1em;
	color: #666;
	}

.blog-entry .read-more {
  display: inline-block;
  background: var(--twainstein-yellow);
  padding: 0 .5em;
  border-radius: 2px;
  font-weight: 600;
  white-space: nowrap;
  }

  .blog-entry .read-more:hover {
    background: #333;
    color: #fff;
    }

.blog-nav p { margin: 0; }

.blog-nav a {
	display: block;
	background: var(--twainstein-yellow);
	margin-bottom: .2rem;
	padding: .5em 1em;
	border-radius: 4px;
	color: #333;
  }

  .blog-nav .entry-next { text-align: right; }

  .blog-nav a:hover {
    background: #333;
    color: #fff;
    }

    .blog-nav a span {
      display: block;
      margin-top: .25em;
      padding-top: .5em;
      border-top: 1px dotted rgba(0,0,0,.2);
      font-weight: 400;
      }

      .blog-nav a:hover span { border-top-color: rgba(255,255,255,.2); }

/* -------------------------------------------------------------

  Layout Specifics - UC

------------------------------------------------------------- */

body.uc {
	background: var(--twainstein-yellow);
  height: 100vh;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
}

body.uc .plc {
  width: 90%;
  max-width: 800px;
  text-align: center;
  padding: 4em;
  }

body.uc .logo { margin-bottom: 4em; }

body.uc h3 { color: #444; }

/* -------------------------------------------------------------

  Media Queries

------------------------------------------------------------- */

/* -------------------------------------------------------------
  media-query-320-479
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 479px) {

.twainstein-edge-icons {
  flex-flow: column;
  align-items: center;
  justify-content: center;
  }

  .twainstein-edge-icons div { width: 100%; }

.case-studies-block { width: 100%; }

.safety-numbers-gre .percentage,
.safety-numbers-gmat .percentage {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  }

  .safety-numbers-gre .percentage div,
  .safety-numbers-gmat .percentage div {
    width: 65%;
    }

.application-season-data .statistics > div,
.application-season-data .statistics > div.wide { width: 100%; }

.process-list > div {
  background-position: left -9px bottom 20px;
  padding-left: 0;
  padding-right: 0;
  }

.process-list .step-number {
  width: 64px;
  height: 64px;
  font-size: 3.2em;
  }

.process-list .step-title { padding-top: .75em; }

  .team-wrapper a { width: 100%; }

.bottom-line { flex-direction: column; }

  .bottom-line div { width: 100%; }

.package-wrapper .price-set .price { width: 100% !important; }

} /* End of 320px-479px Media Query */

/* -------------------------------------------------------------
  media-query-320-639
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 639px) {

.button.lg,
button.lg {
  font-size: 1.2em;
  }

.title-wrapper h2 { font-size: 3.6em; }

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-1-4,
.col-1-3,
.col-1-2,
.col-2-3,
.col-3-4,
.col-full,
.col-half {
	width: 100%;
  }

.ui-tabs .ui-tabs-nav li {
  float: none;
  display: block;
  margin: 0;
  white-space: normal;
  }

.ui-tabs .ui-tabs-nav li a {
  width: 100% !important;
  float: none;
  display: block;
  margin-top: 1px;
  }

.image-align-left { /* For use with images in paragraphs */
  width: 100%;
  float: none;
  margin-right: 0;
  }

.image-align-right { /* For use with images in paragraphs */
  width: 100%;
  float: none;
  margin-left: 0;
  }

.latest-blog-title { padding-bottom: 0 !important; }

.contact-bar h4 { margin-bottom: 0; }

.association { text-align: left !important; }

  .association img { margin: 2rem 1.5rem 1rem 0; }

.contact-form input[type="text"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form textarea {
  width: 100%;
  }

.free-consultation input[type="text"],
.free-consultation input[type="tel"],
.free-consultation input[type="email"],
.free-consultation input[type="file"],
.free-consultation textarea {
  width: 100%;
  }

.package-wrapper ul li { padding: 1em; }

.package-wrapper { flex-flow: column; }

  .package-wrapper article {
    width: 100% !important;
    padding-left: 0;
    padding-right: 0;
    border-right: none;
    }

.whats-in-a-name { text-align: left; }

.whats-in-a-name-list > div { width: 100%; }

.whats-in-a-name-list > div img { max-width: 25%; }

table.schedule-alt tr {
  display: flex;
  flex-direction: column;
  }

} /* End of 320px-639px Media Query */

/* -------------------------------------------------------------
  media-query-320-767
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 767px) {

body { margin: 1rem; }

h1 { font-size: 3.6em; }

.padding { padding: 1.5rem; }

.padding-top { padding-top: 1.5rem; }

.padding-bottom { padding-bottom: 1.5rem; }

.padding-left { padding-left: 1.5rem; }

.padding-right { padding-right: 1.5rem; }

.padding-sides {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  }

.padding-top-bottom {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  }

.padding-double { padding: 1.5rem; }

.padding-double-top { padding-top: 1.5rem; }

.padding-double-bottom { padding-bottom: 1.5rem; }

.padding-double-left { padding-left: 1.5rem; }

.padding-double-right { padding-right: 1.5rem; }

.padding-double-sides {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  }

.padding-double-top-bottom {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  }

.padding-half { padding: 1.5rem; }

.padding-half-top { padding-top: 1.5rem; }

.padding-half-bottom { padding-bottom: 1.5rem; }

.padding-half-left { padding-left: 1.5rem; }

.padding-half-right { padding-right: 1.5rem; }

.padding-half-sides {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  }

.padding-half-top-bottom {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  }

.border-right { border-right: none; }

.border-left { border-left: none; }

header {
  margin-top: 1rem;
  padding: 0 1rem;
  padding-top: 4rem; /* Remove when not using .notification-bar */
  }

.header-logo { max-width: 15rem; }

.copyright p { text-align: left !important; }

.hero .plc { padding-top: 5rem; }

.hero-text h2 { font-size: 5.5em; }

.hero-text h3 { font-size: 2.2em; }

  .hero-services-cta article {
    width: 100%;
    height: auto !important;
    min-height: auto !important;
    padding-top: 3rem;
    }

    .hero-services-cta article br { display: none; }

  .home-case-testimonials > div > div {
    width: 100% !important;
    padding: 3rem 1.5rem 0;
    text-align: center;
    }

.testimonial-block {
  background-size: 48px 48px;
  background-position: 2rem 2rem;
  padding: 2rem;
  }

.title-wrapper { padding-top: 6rem; }

.testimonial-wrap { columns: 1; }

.testimonial-wrap .testimonial-block { margin-bottom: 1.5rem; }

.twainstein-method {
  padding-top: 3rem;
  text-align: center;
  }

.blog-home-wrapper article {
  width: 100%;
  border-bottom: 1px solid #ccc;
  }

  .blog-home-wrapper article:last-of-type { border: none; }

.blog-column { width: 100%; }

.blog-nav > div {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  }

} /* End of 320px-767px Media Query */

/* -------------------------------------------------------------
  media-query-320-960
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 959px) {

.our-name {
  flex-direction: column;
  align-items: flex-start;
  }

.our-name-text { width: 100%; }

.our-name-logo { display: none; }

.founder .founder-text {
  width: 100%;
  display: block;
  z-index: 0;
  }

.founder .founder-bg {
  width: 100%;
  padding-top: 56.25%;
  display: block;
  background-image: url("../images/bg-founder-block.jpg");
  position: static;
  z-index: 0;
  }

.our-method-graphics { width: 100%; }

.our-method-desc { width: 100%; }

.case-study-table { width: 100%; }

.case-study-info {
  width: 100%;
  padding-top: 1rem;
  }

.before-after-blurb { width: 100%; }

.package-wrapper.options-3 article {
  width: 100%;
  border-right: none;
  }

.process-list { width: 100%; }

table.schedule tr {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.6em;
  }

  table.schedule tr:first-child { display: none; }

  table.schedule td {
    padding-left: 0;
    padding-right: 0;
    text-align: left !important;
    }

    table.schedule td:nth-last-child(2) { border-bottom: none; }

    table.schedule td:last-child { border-bottom: none; }

.schedule-col {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  }

.price-set {
  background: var(--twainstein-yellow);
  flex-wrap: wrap;
  justify-content: center !important;
  }

} /* End of 320px-960px Media Query */

/* -------------------------------------------------------------
  media-query-320-1024
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 1023px) {

.services-intro .wrapper { flex-flow: column; }

  .services-intro .wrapper > div { width: 100%; }

  .services-intro .wrapper .service-icon { display: none; }

.twainstein-method { width: 100%; }

.safety-numbers-intro { width: 100%; }

.case-studies-intro { width: 100%; }

.case-studies-wrapper { width: 100%; }

} /* End of 320px-1024px Media Query */

/* -------------------------------------------------------------
  media-query-320-1200
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 1199px) {

a.open { display: block; }

a.close {
  display: block;
  padding: 0;
  color: #333;
  font-size: 72px;
  font-weight: 200;
  position: absolute;
  right: 2rem;
  top: 3rem !important;
  top: 7rem !important; /* Remove when not using .notification-bar */
  }

  a.close:hover { color: #999 !important; }

  header.scrolled a.close {
    top: 2rem !important;
    top: 6rem !important; /* Remove when not using .notification-bar */
    }

/* Responsive Menu Overlay */

.overlay {
  background-color: #eee;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border-bottom: 1rem solid var(--twainstein-yellow);
  position: fixed;
  top: -105%;
  right: 0;
  z-index: 1000000000 !important;
  overflow-x: hidden;
  transition: 0.2s;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  }

nav ul {
  width: 100%;
  margin-top: 5rem;
  margin-bottom: 3rem;
  padding: 0;
  font-size: 2.4em;
  flex-direction: column;
  justify-content: flex-start;
  }

  nav ul > li {
    height: auto;
    overflow: auto;
    margin: 0;
    padding: 1.5rem;
    border-bottom: 1px solid #ccc;
    }

    nav ul > li:last-of-type { border-bottom: none; }

    nav li a {
      display: inline-block;
      color: #000;
      }

      nav ul li a:hover {
        background: none !important;
        color: #999 !important;
        }

        nav ul li:hover a {
          background: none;
          color: #333;
          }

      nav li.dropdown a { border: none !important; }

        nav li.dropdown a i { color: #999; }

    nav ul ul { /* Override dropdowns on responsive menu */
      background: none;
      display: block;
      position: relative;
      top: 0;
      box-shadow: none;
      visibility: visible;
      opacity: 1;
      }

      nav ul ul li {
        margin: 0;
        padding: 0 .5em;
        border-bottom: none !important;
        font-size: 18px;
        line-height: 1.4em;
        text-align: left;
        white-space: normal;
        }

        nav ul ul li a {
          display: inline-block;
          color: #000;
	        }

			nav ul ul li a:hover { background: none !important; }

      nav ul li.dropdown:hover a { border: none; }

nav ul li.highlight {
  width: auto;
  clear: both;
  display: inline-block !important;
  }

  nav li.highlight a {
    background: #666;
    color: #fff !important;
    }

    nav li.highlight a:hover,
    nav li.highlight:hover a {
      background: var(--twainstein-yellow) !important;
      color: #333 !important;
      }

  .dropdown:hover > a {
    border-bottom-left-radius: 4px !important;
    border-bottom-right-radius: 4px !important;
    }

.hero-text {
  width: 100%;
  padding-bottom: 0;
  }

.hero-video { width: 100%; }

.package-wrapper.application-consulting article {
  width: 100% !important;
  border: none !important;
}

} /* End of 320px-1200px Media Query */

/* -------------------------------------------------------------
  media-query-480-640
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 639px) {

.contact-info { width: 50% !important; }

.social-media { width: 50% !important; }

.case-studies-block { width: 50%; }

} /* End of 480px-640px Media Query */

/* -------------------------------------------------------------
  media-query-480-768
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 767px) {

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-1-4,
.col-1-3,
.col-1-2,
.col-2-3,
.col-3-4,
.col-full,
.col-half {
	width: 100% !important;
  }

.lightbox-set { flex-direction: row; }

  .lightbox-set a { width: calc(50% - 1em); }

.application-season-data .statistics > div,
.application-season-data .statistics > div.wide {
  width: 50%;
  }

.process-list > div { background-position: left 15px bottom 20px; }

.team-wrapper { justify-content: flex-start; }

  .team-wrapper a { width: 50%; }

	} /* End of 480px-768px Media Query */

/* -------------------------------------------------------------
media-query-480-960
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 959px) {

.package-wrapper .price-set .price { width: 33.33% !important; }

}

/* -------------------------------------------------------------
  media-query-640-768
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 767px) {

.home-case-testimonials > div { width: 50% !important; }

.contact-bar h4 { margin-bottom: 0; }

.contact-info,
.social-media {
  width: 50% !important;
  }

.association { text-align: left !important; }

  .association img { margin: 1rem 1.5rem 1rem 0; }

.whats-in-a-name-list > div { width: 50%; }

}

/* -------------------------------------------------------------
  media-query-640-960
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 959px) {

a.close-btn { top: 5px; }

.overlay {
  width: 50%;
  background-color: rgba(255,255,255,1);
  border-left: 1rem solid var(--twainstein-yellow);
  border-bottom: none;
  box-shadow: -20px 0px 10px 0px rgba(0,0,0,.25);
  }

nav ul { margin-bottom: 0; }

  nav > ul { margin-bottom: 2em !important; }

  nav ul > li {
    padding-left: 2rem;
    padding-right: 2rem;
    }

li.highlight { margin-bottom: 4rem; }

.whats-in-a-name { width: 100%; }

  .whats-in-a-name-list > div { width: 50%; }

.application-season-data .statistics > div,
.application-season-data .statistics > div.wide {
  width: 50%;
  }

} /* End of 640-960 Media Query */


/* -------------------------------------------------------------
  media-query-640-1024
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 1023px) {

.hero-text { width: 100%; }

.home-why-twainstein-block { width: 50% !important; }

.home-statistics-block { width: 50% !important; }

.safety-numbers .percentage > div { width: 75%; }

} /* End of 640px-1024px Media Query */

/* -------------------------------------------------------------
  media-query-768-1024
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 1023px) {

.header-logo { max-width: 20rem; }

.hero-services-cta article {
  width: 100%;
  height: auto !important;
  min-height: auto !important;
  }

.home-case-testimonials > div > div {
  width: 100% !important;
  padding: 3rem;
  padding-bottom: 0;
  text-align: left;
  }

.latest-blog-title {
  width: 100% !important;
  padding-bottom: 0 !important;
  }

  .blog-post-block {
    width: 33.33% !important;
    padding-top: 0 !important;
    }

.contact-info { width: 50% !important; }

.social-media { width: 50% !important; }

.association {
  clear: both;
  width: 100% !important;
  text-align: left;
  }

.testimonial-wrap { columns: 2; }

.blog-home-wrapper article {
    width: 50%;
    }

	} /* End of 768px-1024px Media Query */

/* -------------------------------------------------------------
  media-query-768-1200
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 1200px) {

  .team-wrapper a { width: 33.33%; }

}

/* -------------------------------------------------------------
  media-query-960-1200
------------------------------------------------------------- */

@media only screen and (min-width: 960px) and (max-width: 1200px) {

table.schedule .button {
  padding-left: 1.5em;
  padding-right: 1.5em;
  }

} /* End of 960px-1200px Media Query */

/* -------------------------------------------------------------
  media-query-1024-1200
------------------------------------------------------------- */

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

.home-why-twainstein-block { width: 50% !important; }

.home-statistics-block { width: 50% !important; }

.latest-blog-title {
  width: 100% !important;
  padding-bottom: 0 !important;
  }

  .blog-post-block {
    width: 33.33% !important;
    padding-top: 0 !important;
    }

.case-studies-block { width: 50%; }

	} /* End of 1024px-1200px Media Query */

/* -------------------------------------------------------------
  media-query-1200-1439
------------------------------------------------------------- */

@media only screen and (min-width: 1200px) and (max-width: 1439px) {

  .hero-text h2 { font-size: 7em; }

	} /* End of 1200px-1439px Media Query */

/* -------------------------------------------------------------
  media-query-960-
------------------------------------------------------------- */

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

table.schedule tr:not(:first-child) td i { display: none; }

} /* End of 960px-1200px Media Query */