/** ----------------------------------------------------------
 *
 * Contains the main layout of the page and the individual styles.
 * Acts as the main stylesheet for theme.
 *
 * @author Soul Digital <info@souldigital.com.au>
 *
 * ------------------------------------------------------- */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Basic Style Setup
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Import Burbon - A simple and lightweight mixin library for Sass.
 * (CodeKit automatically compiles all Bourbon mixins.) */
/* Set Box Sizing for everything, this makes width and height be absolute, and padding and borders are added inside the box, rather than contributing to a larger sized box than what's delcared.
   Also, set all elements to not use Wekbit font-smoothing so fonts aren't extra-bold. */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
}

/* Theme Colour Palette */
/* Theme Font Stacks */
/* Custom Fonts */
@font-face {
  font-family: 'Edmondsans';
  src: url("/themes/tac/fonts/edmondsans-regular-webfont.eot");
  src: url("/themes/tac/fonts/edmondsans-regular-webfont.eot?#iefix") format("embedded-opentype"), url("/themes/tac/fonts/edmondsans-regular-webfont.woff") format("woff"), url("/themes/tac/fonts/edmondsans-regular-webfont.ttf") format("truetype"), url("/themes/tac/fonts/edmondsans-regular-webfont.svg#edmondsansregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Edmondsans Bold';
  src: url("/themes/tac/fonts/edmondsans-bold-webfont.eot");
  src: url("/themes/tac/fonts/edmondsans-bold-webfont.eot?#iefix") format("embedded-opentype"), url("/themes/tac/fonts/edmondsans-bold-webfont.woff") format("woff"), url("/themes/tac/fonts/edmondsans-bold-webfont.ttf") format("truetype"), url("/themes/tac/fonts/edmondsans-bold-webfont.svg#edmondsansbold") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Lavanderia Sturdy';
  src: url("/themes/tac/fonts/lavanderia_sturdy-webfont.eot");
  src: url("/themes/tac/fonts/lavanderia_sturdy-webfont.eot?#iefix") format("embedded-opentype"), url("/themes/tac/fonts/lavanderia_sturdy-webfont.woff") format("woff"), url("/themes/tac/fonts/lavanderia_sturdy-webfont.ttf") format("truetype"), url("/themes/tac/fonts/lavanderia_sturdy-webfont.svg#lavanderia_sturdysturdy") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Common Styles
 * - - - - - - - - - - - - - - - - - - - - - - - - */
body {
  background: url("/themes/tac/images/pagebg-texture.jpg") repeat center top scroll #977D5D;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 18px;
  color: #FFF;
  text-shadow: -1px 1px 0 rgba(0, 0, 0, 0.5);
  -webkit-font-smoothing: antialiased;
}

.page {
  /*min-height: 930px; Height of BG image. */
  padding-top: 20px;
  padding-bottom: 3.8em;
  background: url("/themes/tac/images/pagebg-top.jpg") no-repeat center top scroll transparent;
  box-shadow: inset 0 20px 0 0 rgba(0, 0, 0, 0.6);
}

.maincontent {
  max-width: 960px;
  margin: 0 auto;
  padding: 30px 0 0;
  overflow: auto;
}

.contentregion {
  float: left;
  width: 660px;
  padding: 0 10px;
}
.contentregion h1:first-child,
.contentregion h2:first-child,
.contentregion h3:first-child,
.contentregion h4:first-child,
.contentregion h5:first-child,
.contentregion h6:first-child {
  margin-top: 0;
}
.contentregion ul {
  margin: 0 0 1em;
  list-style-type: disc;
}
.contentregion ul li {
  margin: 0 0 0.4em 2em;
  list-style-type: disc;
  list-style-position: outside;
}

/* Link Button */
.button,
.button:link,
.button:visited,
input.action {
  display: inline-block;
  padding: 10px 25px;
  color: #FFF;
  font-size: 1.05em;
  text-align: center;
  text-decoration: none;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  border: 1px solid #8E1736;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  background-color: #BB284F;
  background-color: #cb345c;
  background-image: -webkit-linear-gradient(#cb345c, #a91c41);
  background-image: linear-gradient(#cb345c, #a91c41);
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  transition: all 200ms linear;
  box-shadow: inset 3px -3px 5px 0 rgba(0, 0, 0, 0.1);
}

input.action {
  font-size: 18px;
  /* Because buttons don't inherit font sizing from body. */
}

.button:hover,
input.action:hover {
  background: #B83659;
  background-color: #C6637C;
  background-image: -webkit-linear-gradient(#C6637C, #a91c41);
  background-image: linear-gradient(#C6637C, #a91c41);
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  transition: all 200ms linear;
  box-shadow: inset 3px -3px 3px 0 rgba(0, 0, 0, 0.1);
}

.button:active,
input.action:active {
  background: #B83659;
  box-shadow: inset -3px 3px 8px 0 rgba(0, 0, 0, 0.3);
  background-color: #a91c41;
  background-image: -webkit-linear-gradient(#a91c41, #cb345c);
  background-image: linear-gradient(#a91c41, #cb345c);
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  transition: all 200ms linear;
}

/* Social Media Links */
.sm-links-list {
  height: 40px;
  line-height: 40px;
}
.sm-links-list .item a,
.sm-links-list .item a:link,
.sm-links-list .item a:visited {
  display: block;
  width: 50px;
  height: 40px;
  padding: 7px 12px;
  overflow: hidden;
  text-indent: -1000px;
  background-repeat: no-repeat;
  background-position: center center;
  background-attachment: scroll;
  background-color: transparent;
}
.sm-links-list .item a:hover,
.sm-links-list .item a:active {
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-transition: all 150ms linear;
  -moz-transition: all 150ms linear;
  transition: all 150ms linear;
}
.sm-links-list .facebook a {
  background-image: url(/themes/tac/images/sm-facebook-white.svg);
  background-size: 26px 26px;
}
.sm-links-list .twitter a {
  background-image: url(/themes/tac/images/sm-twitter-white.svg);
  background-size: 32px 32px;
}
.sm-links-list .instagram a {
  background-image: url(/themes/tac/images/sm-instagram-white.svg);
  background-size: 28px 28px;
}

/* Store Locator Widget */
.widget.store-locator {
  position: absolute;
  top: 170px;
  right: 0px;
  width: 280px;
  padding: 0;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  /* Buttons */
}
.widget.store-locator .widget-content {
  position: relative;
  overflow: auto;
  padding: 20px 15px 35px;
  border-radius: 5px;
}
.widget.store-locator .GeolocationLoader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding-top: 4em;
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 5px;
}
.widget.store-locator .widget-title {
  min-height: 70px;
  /* The height of the icon (background) image. */
  margin: 0 0 0.45em 0;
  padding-top: 10px;
  padding-left: 60px;
  background: url(/themes/tac/images/icon-drawing-map-pin.png) no-repeat left top scroll transparent;
  background: url(/themes/tac/images/icon-drawing-map-pin.svg) no-repeat left top scroll transparent;
  background-size: 47px 69px;
}
.widget.store-locator .widget-title span {
  display: block;
}
.widget.store-locator .widget-title .sub-1 {
  font-size: 0.75em;
}
.widget.store-locator .widget-title .sub-2 {
  font-size: 0.55em;
}
.widget.store-locator form {
  width: 220px;
  margin: 0 auto;
  overflow: auto;
}
.widget.store-locator form fieldset {
  float: left;
}
.widget.store-locator form fieldset label {
  display: none;
}
.widget.store-locator form fieldset .text {
  /*width: 160px;*/
  width: 154px;
  /* Firefox didn't like 160px. */
  font-size: 15px;
  border-radius: 5px 0 0 5px;
}
.widget.store-locator .Actions {
  text-align: center;
  font-size: 0;
  float: left;
}
.widget.store-locator input.action,
.widget.store-locator .Actions .button {
  float: none;
  padding: 8px 17px;
  border-color: #5A5A2B;
  font-size: 18px;
  vertical-align: top;
  border-radius: 0 5px 5px 0;
  background-color: #A3A359;
  background-image: -webkit-linear-gradient(#A3A359, #75753A);
  background-image: linear-gradient(#A3A359, #75753A);
}
.widget.store-locator input.action:hover,
.widget.store-locator .Actions .button:hover {
  background-color: #C9C97E;
  background-image: -webkit-linear-gradient(#C9C97E, #75753A);
  background-image: linear-gradient(#C9C97E, #75753A);
  box-shadow: inset 3px -3px 3px 0 rgba(0, 0, 0, 0.1);
}
.widget.store-locator input.action:active,
.widget.store-locator .Actions .button:active {
  background-color: #75753A;
  background-image: -webkit-linear-gradient(#75753A, #C9C97E);
  background-image: linear-gradient(#75753A, #C9C97E);
  box-shadow: inset -3px 3px 8px 0 rgba(0, 0, 0, 0.3);
}
.widget.store-locator .button.directions {
  border-radius: 5px 0 0 5px;
}

.pac-container {
  /* Remove the shadow on the drop-down suggestions from Google Maps. */
  text-shadow: none;
}

.GeolocationNotFound .widget.store-locator .location-found {
  display: none;
}

.GeolocationFound .widget.store-locator {
  top: 150px;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.GeolocationFound .widget.store-locator .widget-content {
  padding-bottom: 25px;
}
.GeolocationFound .widget.store-locator .widget-title {
  padding-top: 0;
  margin-bottom: 0;
}
.GeolocationFound .widget.store-locator .location-unknown,
.GeolocationFound .widget.store-locator form {
  display: none;
}
.GeolocationFound .widget.store-locator .location-found .button {
  max-width: 50%;
  min-height: 3.55em;
}
.GeolocationFound .widget.store-locator .location-found .button.directions {
  line-height: 2.5em;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Header
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Theme Colour Palette */
/* Theme Font Stacks */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Header
 * - - - - - - - - - - - - - - - - - - - - - - - - */
header {
  width: 100%;
  height: 300px;
  overflow: hidden;
  position: relative;
  background-repeat: no-repeat;
  background-position: center top;
  background-attachment: fixed;
  background-color: #0B0203;
  background-size: 100% auto;
}
header .header-container {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(/themes/tac/images/header-bg-shading.png) repeat-x center bottom scroll transparent;
}
header .header-content {
  position: relative;
  max-width: 960px;
  height: 100%;
  margin: 0 auto;
  /* Logo */
  /* Page Title */
}
header .header-content #logo {
  position: absolute;
  top: 20px;
  z-index: 5500;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
header .header-content #logo a {
  display: block;
  max-width: 100%;
  width: 265px;
  height: 90px;
  background: url(/themes/tac/images/logo.svg) no-repeat center center scroll #000;
  background-size: contain;
}
header .header-content #logo img {
  display: none;
}
header .header-content .page-title {
  position: absolute;
  bottom: 10px;
  margin: 0;
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 5em;
  color: #FFF;
  text-shadow: -1px 1px 0 rgba(0, 0, 0, 0.6);
}
header #mobile-menu {
  display: none;
  /* Hide the mobile nav links before they're re-built by javascript. */
}
header .mobile-menu-link {
  display: none;
  /* Hide mobile nav link by default. */
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Home Header
 * - - - - - - - - - - - - - - - - - - - - - - - - */
.home-header {
  height: 550px;
  background-size: 100% auto;
}
.home-header .header-container {
  background: url(/themes/tac/images/header-home-bg-shading.png) repeat-x center top scroll transparent;
}
.home-header .banner-content {
  position: absolute;
  top: 195px;
  left: 40px;
  text-align: center;
}
.home-header .banner-content .banner-title {
  margin: 0 0 0.7em;
  text-align: center;
}
.home-header .banner-content .banner-title span {
  display: block;
  line-height: 100%;
}
.home-header .banner-content .banner-title .sub-0 {
  padding-right: 4.5em;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 0.675em;
}
.home-header .banner-content .banner-title .sub-1 {
  margin: 0.25em 0 0;
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2.3em;
  text-shadow: -2px 2px 0 rgba(255, 255, 255, 0.4);
}
.home-header .banner-content .banner-title .sub-2 {
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 0.675em;
}
.home-header .banner-content .menu.button {
  margin-top: 10px;
  padding: 16px 28px;
  font-size: 1.2em;
  text-shadow: none;
}
.home-header .banner-content .menu.button img, .home-header .banner-content .menu.button p {
  display: inline-block;
  vertical-align: middle;
}
.home-header .banner-content .menu.button img {
  width: 100px;
}
.home-header .banner-content .menu.button p {
  margin-bottom: 0;
}

.newsletter-signup.homepage {
  background-color: #878746;
  border-top: 1px solid #4C4D25;
  border-bottom: 1px solid #4C4D25;
  position: relative;
  /* Position and Z-index are required for box-shadow to not be cut off by next div. */
  z-index: 200;
  box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.3);
}
.newsletter-signup.homepage h3 {
  margin: 0.725em 0;
  text-shadow: none;
  font-size: 1.65em;
}
.newsletter-signup.homepage form .Actions input.action {
  background-color: #cb345c;
  background-image: -webkit-linear-gradient(#cb345c, #a91c41);
  background-image: linear-gradient(#cb345c, #a91c41);
}
.newsletter-signup.homepage form .Actions input.action:hover,
.newsletter-signup.homepage form .Actions input.action:active {
  background-color: #e7567d;
  background-image: -webkit-linear-gradient(#e7567d, #8b1736);
  background-image: linear-gradient(#e7567d, #8b1736);
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Navigation
 * - - - - - - - - - - - - - - - - - - - - - - - - */
nav {
  position: absolute;
  top: 0;
  z-index: 5000;
  width: 100%;
  overflow: auto;
}
nav .nav-content {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 10px;
  overflow: auto;
  line-height: 50px;
  /* Social Media Links */
}
nav .nav-content .page-list {
  clear: both;
  float: right;
  /*width: 650px;*/
}
nav .nav-content .page-list .item {
  /*display: inline-block;
  vertical-align: top;*/
  display: block;
  float: left;
}
nav .nav-content .page-list .item a,
nav .nav-content .page-list .item a:link,
nav .nav-content .page-list .item a:visited {
  display: block;
  height: 50px;
  padding: 0 12px;
  font-size: 0.85em;
  line-height: 50px;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  color: #FFF;
  -webkit-transition: all 250ms linear;
  -moz-transition: all 250ms linear;
  transition: all 250ms linear;
}
nav .nav-content .page-list .item a:hover,
nav .nav-content .page-list .item a:active {
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-transition: all 150ms linear;
  -moz-transition: all 150ms linear;
  transition: all 150ms linear;
}
nav .nav-content .page-list .item#order-mate a {
  background-color: #a91c41;
}
nav .nav-content .page-list .item#order-mate a:hover, nav .nav-content .page-list .item#order-mate a:active {
  background-color: #cb345c;
}
nav .nav-content .sm-links-list {
  float: right;
}
nav .nav-content .sm-links-list .item {
  float: left;
}
nav .nav-content .sm-links-list .facebook a {
  background-image: url(/themes/tac/images/sm-facebook-white.svg);
  background-size: 22px 22px;
}
nav .nav-content .sm-links-list .twitter a {
  background-image: url(/themes/tac/images/sm-twitter-white.svg);
  background-size: 30px 30px;
}
nav .nav-content .sm-links-list .instagram a {
  background-image: url(/themes/tac/images/sm-instagram-white.svg);
  background-size: 24px 24px;
}

nav.primary {
  top: 40px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Sidebar
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Theme Font Stacks */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Sidebar
 * - - - - - - - - - - - - - - - - - - - - - - - - */
#sidebar {
  float: right;
  width: 300px;
  padding: 10px;
  /* Menu Widget */
  /* Franchisee Widget */
  /* Connect With Us Widget */
  /* Store Locator Widget */
  /* Most styles are declared in layout.scss as it's not always used in the sidebar, but this make sure it looks consistent if placed in the sidebar, too. */
}
#sidebar .widget {
  width: 100%;
  margin: 0;
  padding: 10px;
  overflow: hidden;
  text-align: center;
  background-position: center top;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-color: transparent;
}
#sidebar .widget-title {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 3.4em;
  color: #000;
  margin: 0;
  text-align: center;
  text-shadow: 1px -1px 0 rgba(255, 255, 255, 0.8);
}
#sidebar .widget-title span {
  display: block;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
}
#sidebar .widget.menu {
  min-height: 234px;
  padding-top: 0;
  background-image: url("/themes/tac/images/sidebar-widget-bg-pizza.png");
}
#sidebar .widget.menu .widget-title {
  padding-bottom: 50px;
  font-size: 3.95em;
}
#sidebar .widget.menu .button {
  margin-bottom: 10px;
}
#sidebar .widget.franchise {
  min-height: 241px;
  background-image: url("/themes/tac/images/sidebar-widget-bg-wine.png");
}
#sidebar .widget.franchise .widget-title .sub-1 {
  font-size: 0.4em;
}
#sidebar .widget.franchise .widget-title .sub-2 {
  font-size: 0.3em;
}
#sidebar .widget.franchise .widget-title .sub-3 {
  margin: -0.2em 0;
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
}
#sidebar .widget.franchise .button,
#sidebar .widget.franchise .button:visited {
  float: right;
  margin: 10px 10px 10px 0;
  padding: 7px 10px;
  font-size: 0.9em;
  border: none;
  background-color: #424242;
  background-image: -webkit-linear-gradient(#424242, #000);
  background-image: linear-gradient(#424242, #000);
}
#sidebar .widget.franchise .button:hover {
  background-color: #595959;
  background-image: -webkit-linear-gradient(#595959, #000);
  background-image: linear-gradient(#595959, #000);
}
#sidebar .widget.franchise .button:active {
  background-color: #000;
  background-image: -webkit-linear-gradient(#000, #333);
  background-image: linear-gradient(#000, #333);
}
#sidebar .widget.socialmedia {
  margin: 25px 0;
  padding: 15px 20px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.7);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  border-radius: 5px;
}
#sidebar .widget.socialmedia .widget-title {
  color: #FFF;
  font-size: 1em;
  line-height: 40px;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  text-align: center;
  text-shadow: none;
}
#sidebar .widget.socialmedia .sm-links-list {
  text-align: center;
}
#sidebar .widget.socialmedia .sm-links-list .item {
  display: inline-block;
}
#sidebar .widget.socialmedia .sm-links-list .item a {
  padding: 7px 10px;
}
#sidebar .widget.store-locator {
  padding: 0;
}
#sidebar .widget.store-locator .widget-content {
  padding: 20px 20px 15px 15px;
}
#sidebar .widget.store-locator .widget-title {
  font-size: 1.8em;
}
#sidebar .widget.store-locator .widget-title span {
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  color: #FFF;
  text-shadow: none;
}
#sidebar .widget.store-locator .widget-title .sub-1 {
  font-size: 0.75em;
}
#sidebar .widget.store-locator .widget-title .sub-2 {
  font-size: 0.55em;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Home Sidebar
 * - - - - - - - - - - - - - - - - - - - - - - - - */
#page-home.page #sidebar {
  clear: both;
  float: none;
  width: auto;
  overflow: auto;
  padding-top: 20px;
  background: url(/themes/tac/images/drawing-pastabowl-white.svg) no-repeat 25px top scroll transparent;
  background-size: 290px 170px;
  /* On the Home page, the Franchise widget is larger. */
}
#page-home.page #sidebar .widget {
  float: left;
}
#page-home.page #sidebar .widget.franchise {
  width: 340px;
  min-height: 273px;
  margin: 190px 10px 0 0;
  padding-left: 20px;
  padding-right: 30px;
  background-image: url(/themes/tac/images/sidebar-widget-bg-wine-large.png);
}
#page-home.page #sidebar .widget.franchise .widget-title {
  padding-top: 10px;
}
#page-home.page #sidebar .widget.franchise .widget-title .sub-3 {
  font-size: 1.15em;
}
#page-home.page #sidebar .widget.franchise .button {
  padding: 10px 21px;
  box-shadow: 1px -1px 0 0 rgba(255, 255, 255, 0.6);
}
#page-home.page #sidebar .widget.social {
  width: 280px;
  margin: 0 10px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
#page-home.page #sidebar .widget.social .widget-title {
  float: none;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 1.3em;
  text-align: left;
  text-shadow: none;
}
#page-home.page #sidebar .widget.social .external {
  height: 400px;
  overflow: hidden;
  background-color: #FFF;
  padding: 10px;
}
#page-home.page #sidebar .widget.facebook {
  margin-right: 0;
}
#page-home.page #sidebar .widget.socialmedia {
  display: none;
  /* This is just used for the mobile site. */
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Footer
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Theme Colour Palette */
/* Theme Font Stacks */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Footer
 * - - - - - - - - - - - - - - - - - - - - - - - - */
footer {
  background-color: #1F140C;
  color: #5F4F44;
  font-size: 0.85em;
  overflow: auto;
}
footer .footer-content {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 10px;
  overflow: auto;
}
footer .newsletter-signup {
  font-size: 1em;
}
footer nav {
  position: static;
  top: auto;
}
footer nav .nav-content {
  padding: 0;
}
footer nav .nav-content .page-list {
  float: left;
}
footer nav .nav-content .page-list .item a,
footer nav .nav-content .page-list .item a:link,
footer nav .nav-content .page-list .item a:visited {
  font-size: 1em;
  color: #8F7E72;
}
footer nav .nav-content .sm-links-list {
  float: left;
}
footer nav .nav-content .sm-links-list .item {
  float: left;
}
footer nav .nav-content .sm-links-list .item a {
  height: 50px;
}
footer nav .nav-content .sm-links-list .facebook a {
  background-image: url(/themes/tac/images/sm-facebook-medium-brown.png);
  background-image: url(/themes/tac/images/sm-facebook-brown.svg);
  background-size: 22px 22px;
}
footer nav .nav-content .sm-links-list .twitter a {
  background-image: url(/themes/tac/images/sm-twitter-medium-brown.png);
  background-image: url(/themes/tac/images/sm-twitter-brown.svg);
  background-size: 30px 30px;
}
footer nav .nav-content .sm-links-list .instagram a {
  background-image: url(/themes/tac/images/sm-instagram-medium-brown.png);
  background-image: url(/themes/tac/images/sm-instagram-brown.svg);
  background-size: 23px 23px;
}
footer .top-link {
  display: none;
  /* Hide 'Back to Top' link by default. */
}
footer .fine-print {
  border-top: 1px solid #2B2017;
  line-height: 50px;
}
footer .fine-print .disclaimer {
  float: left;
}
footer .fine-print .credit {
  float: right;
}
footer .fine-print .credit a,
footer .fine-print .credit a:link,
footer .fine-print .credit a:visited {
  color: #5F4F44;
  text-decoration: none;
}
footer .fine-print .credit a:hover,
footer .fine-print .credit a:active {
  text-decoration: underline;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Home Footer
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Hide the footer newsletter signup on the Home page */
.home-template footer .newsletter-signup {
  display: none;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Newsletter Signup
 * - - - - - - - - - - - - - - - - - - - - - - - - */
.newsletter-signup {
  background-color: #484815;
  border-top: 1px solid #2E2E0F;
  font-size: 0.85em;
}
.newsletter-signup .subscribe-content {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 10px;
  overflow: auto;
}
.newsletter-signup h3 {
  float: left;
  margin: 0.8em 0;
}
.newsletter-signup form {
  float: right;
  padding: 13px 0;
}
.newsletter-signup form fieldset {
  float: left;
}
.newsletter-signup form fieldset input[type="email"] {
  width: 260px;
  border-radius: 5px 0 0 5px;
}
.newsletter-signup form fieldset label {
  display: none;
}
.newsletter-signup form .Actions {
  float: left;
}
.newsletter-signup form .Actions input.action {
  padding: 8px 35px;
  border-color: #5A5A2B;
  border-radius: 0 5px 5px 0;
  background-color: #A3A359;
  background-image: -webkit-linear-gradient(#A3A359, #75753A);
  background-image: linear-gradient(#A3A359, #75753A);
}
.newsletter-signup form .Actions input.action:hover {
  background-color: #C9C97E;
  background-image: -webkit-linear-gradient(#C9C97E, #75753A);
  background-image: linear-gradient(#C9C97E, #75753A);
  box-shadow: inset 3px -3px 3px 0 rgba(0, 0, 0, 0.1);
}
.newsletter-signup form .Actions input.action:active {
  background-color: #75753A;
  background-image: -webkit-linear-gradient(#75753A, #C9C97E);
  background-image: linear-gradient(#75753A, #C9C97E);
  box-shadow: inset -3px 3px 8px 0 rgba(0, 0, 0, 0.3);
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Forms
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Theme Colour Palette */
/* Theme Font Stacks */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Forms
 * - - - - - - - - - - - - - - - - - - - - - - - - */
input.text,
textarea {
  display: inline-block;
  width: 18em;
  padding: 9px;
  background-color: #FFF;
  color: #888;
  font-family: "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 16px;
  border: 1px solid #FFF;
  border-radius: 5px;
  box-shadow: inset -2px 2px 5px 0 rgba(0, 0, 0, 0.25);
  -webkit-transition: all 250ms linear;
  -moz-transition: all 250ms linear;
  transition: all 250ms linear;
}
input.text:focus,
textarea:focus {
  color: #333;
  -webkit-transition: all 150ms linear;
  -moz-transition: all 150ms linear;
  transition: all 150ms linear;
}

/* In-Page Form (from the Form Builder in the CMS) */
.contentregion form {
  width: 70%;
  margin: 0 auto;
}
.contentregion form .field label.left {
  display: block;
  margin: 1em 0 0.5em;
}
.contentregion form .field input.text,
.contentregion form .field textarea {
  display: block;
  width: 100%;
}
.contentregion form .field input.text:active,
.contentregion form .field input.text:focus {
  outline: none;
}
.contentregion form .field input.text.required,
.contentregion form .field textarea.required {
  border: 3px solid #8E1736;
}
.contentregion form .field label.required {
  display: block;
  margin: 0.3em 0 0;
  color: #8E1736;
  font-size: 0.9em;
  text-shadow: -1px 1px 0 rgba(255, 255, 255, 0.3);
}
.contentregion form .Actions {
  margin: 1em 0 0;
  text-align: center;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Home Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
#page-home.page {
  padding-top: 0;
  padding-bottom: 2.8em;
  -webkit-box-shadow: none;
  box-shadow: none;
}
#page-home.page .heat-lines {
  /* Hide the heat lines by default, we manually enable them in the responsive stylesheet for desktops only. */
  display: none;
}
#page-home.page .maincontent {
  padding-top: 0;
}
#page-home.page .contentregion {
  float: none;
  width: auto;
}
#page-home.page .contentregion .blurb {
  font-size: 1.38em;
  padding-top: 2.6em;
  background: url(/themes/tac/images/drawing-pizza-white.svg) no-repeat right -230px scroll transparent;
  background-size: 397px 399px;
}
#page-home.page .contentregion .blurb p {
  padding-right: 250px;
}
#page-home.page .contentregion .blurb p:first-child:first-letter {
  float: left;
  padding: 4px 25px 0 3px;
  font-size: 75px;
  line-height: 60px;
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
}
#page-home.page .contentregion .blurb p:first-child {
  margin: 0;
  padding-right: 410px;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Locations Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Locations Map */
.locations-map {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.locations-map .map-content {
  border: 10px solid rgba(0, 0, 0, 0.5);
}
.locations-map .map-content div.googlemap {
  width: auto;
  height: 500px;
  text-shadow: none;
}

/* Re-arranging common elements for this page. */
#page-locations,
#page-locations-item {
  padding-bottom: 1em;
}
#page-locations .widget,
#page-locations #sidebar .widget,
#page-locations-item .widget,
#page-locations-item #sidebar .widget {
  width: auto;
  max-width: 580px;
  margin: 1.4em auto;
}
#page-locations .widget.store-locator,
#page-locations-item .widget.store-locator {
  position: static;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
#page-locations .widget.store-locator .widget-content,
#page-locations-item .widget.store-locator .widget-content {
  padding-right: 20px;
  padding-bottom: 15px;
  overflow: auto;
}
#page-locations .widget.store-locator .widget-title,
#page-locations-item .widget.store-locator .widget-title {
  float: left;
  width: 50%;
  margin-bottom: 0;
}
#page-locations .widget.store-locator form,
#page-locations-item .widget.store-locator form {
  float: right;
  width: 230px;
  padding: 10px 10px 10px 0;
}

#page-locations #sidebar .widget.franchise {
  display: block;
  height: auto;
  min-height: 0;
  max-width: 440px;
  margin: 0.6em auto 0;
  padding: 0 10px 0 52px;
  background: url(/themes/tac/images/drawing-wine-bottle-glass.svg) no-repeat left top scroll transparent;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
#page-locations #sidebar .widget.franchise .widget-title {
  float: left;
}
#page-locations #sidebar .widget.franchise .widget-title .sub-1,
#page-locations #sidebar .widget.franchise .widget-title .sub-2 {
  margin-left: 40px;
}
#page-locations #sidebar .widget.franchise .widget-title .sub-3 {
  margin-top: -0.3em;
}
#page-locations #sidebar .widget.franchise .button {
  margin-top: 65px;
  box-shadow: 1px -1px 0 0 rgba(255, 255, 255, 0.6);
}

/* Locations List */
.locations-list {
  text-align: center;
  text-shadow: none;
}
.locations-list .item {
  display: inline-block;
  vertical-align: top;
  width: 48%;
  /*height: 6.95em;*/
  height: 8.2em;
  overflow: auto;
  text-align: left;
  margin: 0 10px 20px;
  padding: 15px 25px 15px 75px;
  background: url(/themes/tac/images/icon-drawing-map-pin-blackdot.svg) no-repeat 20px 20px scroll rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.locations-list .item .name-address {
  float: left;
  /*max-width: 225px;*/
  max-width: 210px;
}
.locations-list .item .name-address .location-name {
  margin-bottom: 0.2em;
}
.locations-list .item .name-address .location-address {
  margin-bottom: 0;
  line-height: 1.5em;
}
.locations-list .item .actions {
  float: right;
  text-align: center;
}
.locations-list .item .actions .location-phone {
  margin-top: 0.6em;
}
.locations-list .item .actions .location-phone a {
  color: #FFF;
  text-decoration: none;
}
.locations-list .item .actions .button {
  float: none;
  padding: 8px 17px;
  border-color: #5A5A2B;
  font-size: 18px;
  background-color: #A3A359;
  background-image: -webkit-linear-gradient(#A3A359, #75753A);
  background-image: linear-gradient(#A3A359, #75753A);
}
.locations-list .item .actions .button:hover {
  background-color: #C9C97E;
  background-image: -webkit-linear-gradient(#C9C97E, #75753A);
  background-image: linear-gradient(#C9C97E, #75753A);
  box-shadow: inset 3px -3px 3px 0 rgba(0, 0, 0, 0.1);
}
.locations-list .item .actions .button:active {
  background-color: #75753A;
  background-image: -webkit-linear-gradient(#75753A, #C9C97E);
  background-image: linear-gradient(#75753A, #C9C97E);
  box-shadow: inset -3px 3px 8px 0 rgba(0, 0, 0, 0.3);
}
.locations-list .item:nth-child(2n+1) {
  margin-left: 0;
  margin-right: 20px;
}
.locations-list .item:nth-child(2n+0) {
  margin-left: 0;
  margin-right: 0;
}

/* Individual Store Location Details - Also used for details displayed on Home page widget. */
.location-details .location-name {
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 1em;
  margin-top: 0;
}
.location-details .location-name a:link,
.location-details .location-name a:visited,
.location-details .location-name a:hover,
.location-details .location-name a:active {
  color: #FFF;
  text-decoration: none;
}
.location-details .location-distance {
  display: block;
  font-size: 0.8em;
  color: #999;
}
.location-details .location-address {
  font-size: 0.83em;
  margin-bottom: 0.8em;
  padding-right: 1em;
}
.location-details .location-address .street-address-1,
.location-details .location-address .street-address-2 {
  display: block;
}
.location-details .location-phone {
  display: block;
  margin-bottom: 0.75em;
}
.location-details .location-phone a {
  color: #FFF;
  text-decoration: none;
}
.location-details .openhours-list {
  list-style-type: none;
}
.location-details .openhours-list li {
  margin: 0.2em 0;
  list-style-type: none;
}

/* Google Map Info Card (appears when you click on a pin) */
#page-locations .map-content .info-window.location-details,
#page-locations-item .map-content .info-window.location-details {
  float: none;
  width: auto;
  color: #333;
  padding-bottom: 1em;
}
#page-locations .map-content .info-window.location-details .name-address .location-name,
#page-locations-item .map-content .info-window.location-details .name-address .location-name {
  margin-bottom: 0.15em;
  font-size: 1.7em;
  color: #333;
}
#page-locations .map-content .gm-style-iw,
#page-locations-item .map-content .gm-style-iw {
  padding-bottom: 0.5em;
}
#page-locations .map-content .button,
#page-locations-item .map-content .button {
  padding: 5px 12px;
  font-size: 15px;
}

/* Location Search Results */
.search_results .locations-list .item {
  height: 9.8em;
}
.search_results .location-details .location-distance {
  display: block;
  padding: 0.2em 0.5em;
  margin: 0.2em 0.2em 0.4em 0;
  background: rgba(0, 0, 0, 0.2);
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
  color: #FFF;
}

#page-locations,
#page-locations-item {
  /* Basic Layout */
}
#page-locations .contentregion,
#page-locations .locationmap,
#page-locations .locationlist,
#page-locations #sidebar,
#page-locations-item .contentregion,
#page-locations-item .locationmap,
#page-locations-item .locationlist,
#page-locations-item #sidebar {
  width: auto;
  float: none;
}
#page-locations #sidebar,
#page-locations-item #sidebar {
  margin-top: 0;
}
#page-locations .contentregion,
#page-locations-item .contentregion {
  margin-bottom: 1.2em;
  font-size: 1.2em;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Location Details Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
#page-locations-item {
  /* Page Layout */
  /* Location Details */
  /* Location Image Gallery */
  /* Tweaks for sidebar widgets. */
}
#page-locations-item .contentregion {
  overflow: auto;
  padding: 0;
  font-size: 1em;
}
#page-locations-item .map-directions {
  float: left;
  width: 590px;
}
#page-locations-item .map-directions .actions {
  text-align: center;
  padding: 1em 0;
}
#page-locations-item .map-directions .actions .button,
#page-locations-item .map-directions .actions .button:visited {
  display: inline-block;
  padding: 10px 21px;
  border: none;
  box-shadow: 1px -1px 0 0 rgba(255, 255, 255, 0.6);
  background-color: #424242;
  background-image: -webkit-linear-gradient(#424242, #000);
  background-image: linear-gradient(#424242, #000);
}
#page-locations-item .map-directions .actions .button:hover {
  background-color: #595959;
  background-image: -webkit-linear-gradient(#595959, #000);
  background-image: linear-gradient(#595959, #000);
}
#page-locations-item .map-directions .actions .button:active {
  background-color: #000;
  background-image: -webkit-linear-gradient(#000, #333);
  background-image: linear-gradient(#000, #333);
}
#page-locations-item .location-details {
  float: right;
  width: 370px;
  padding: 0 10px 0 20px;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
#page-locations-item .location-details dl {
  text-shadow: none;
}
#page-locations-item .location-details .location-name {
  font-size: 1.95em;
  margin-bottom: 0.5em;
}
#page-locations-item .location-details .label {
  margin-top: 0.6em;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 1em;
}
#page-locations-item .location-details .value {
  font-size: 0.85em;
  line-height: 1.5em;
}
#page-locations-item .location-details .value .location-address {
  font-size: 1em;
}
#page-locations-item .location-details .value a:link,
#page-locations-item .location-details .value a:visited,
#page-locations-item .location-details .value a:hover,
#page-locations-item .location-details .value a:active {
  color: #FFF;
  text-decoration: none;
}
#page-locations-item .location-details .value.phone {
  font-size: 1.65em;
}
#page-locations-item .location-details .value.phone a {
  color: #FFF;
  text-decoration: none;
}
#page-locations-item .location-details .value.hours span.day {
  display: inline-block;
  width: 7.35em;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
}
#page-locations-item .gallery {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
#page-locations-item .gallery .image-list {
  overflow: auto;
  padding: 9px;
  background-color: rgba(0, 0, 0, 0.5);
  text-align: center;
  font-size: 0;
}
#page-locations-item .gallery .image-list .item {
  /*float: left;*/
  float: none;
  display: inline-block;
  width: 180px;
  height: 180px;
  margin-right: 10px;
}
#page-locations-item .gallery .image-list .item img {
  width: 100%;
  height: auto;
  min-width: 180px;
  min-height: 180px;
}
#page-locations-item .gallery .image-list .item.last {
  margin-right: 0;
}
#page-locations-item #sidebar {
  overflow: auto;
}
#page-locations-item #sidebar .widget.franchise {
  float: left;
  width: 280px;
  margin-right: 1em;
}
#page-locations-item #sidebar .widget.store-locator {
  /* BG colour is wiped by another style. */
  float: none;
  width: auto;
  margin-top: 4.5em;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background-color: rgba(0, 0, 0, 0.8);
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Menu Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
#page-menu {
  /* Menu Tabs */
  /* Menu switches from tabs to an accordion on smaller screens. */
  /* Menu Table (of Items) */
  /* Pasta List */
  /* Menu PDF Download */
  /* Menu Section Notice */
}
#page-menu .contentregion {
  width: 100%;
  margin-bottom: 0.4em;
  font-size: 1.2em;
}
#page-menu .tabs {
  width: 100%;
  padding-bottom: 2em;
  text-shadow: none;
}
#page-menu .tabs > ul {
  display: block;
  width: auto;
  margin: 1px 1px 0 1px;
  background-color: rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
}
#page-menu .tabs > ul > li {
  padding: 10px 22px;
  color: #FFF;
  font-size: 1.1em;
  border: none;
  border-radius: 0;
}
#page-menu .tabs > section {
  border: none;
}
#page-menu .tabs section {
  padding: 0;
}
#page-menu .tabs section[aria-expanded="true"] {
  z-index: 8000;
}
#page-menu .tabs h4 {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2.5em;
  margin: 0.25em 0 0;
}
#page-menu .tabs.menu-type > ul[role="tablist"] {
  width: 687px;
  margin: 1px auto 1.65em;
}
#page-menu .tabs.menu-type ul li {
  position: relative;
  height: 128px;
  margin: 0;
  padding: 0;
  text-align: center;
  background-repeat: no-repeat;
  background-position: right 10px bottom 10px;
  background-attachment: scroll;
  background-color: rgba(0, 0, 0, 0.3);
  border-right: 1px solid rgba(255, 255, 255, 0.4);
}
#page-menu .tabs.menu-type ul li span {
  display: block;
  width: 228px;
}
#page-menu .tabs.menu-type ul li .sub-1 {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2em;
  padding-top: 22px;
}
#page-menu .tabs.menu-type ul li .sub-2 {
  margin-top: -1em;
}
#page-menu .tabs.menu-type ul li .sub-3 {
  font-size: 0.65em;
}
#page-menu .tabs.menu-type ul li .sub-2.download-menu {
  padding-left: 1em;
  margin-top: -1.3em;
}
#page-menu .tabs.menu-type ul li:last-child {
  background-color: transparent;
  border-right: none;
}
#page-menu .tabs.menu-type ul li.current {
  background-color: #000;
}
#page-menu .tabs.menu-type ul li.current:after {
  position: absolute;
  left: 50%;
  bottom: -11px;
  display: block;
  width: 23px;
  height: 11px;
  margin: 0 auto 0 -11px;
  background: url(/themes/tac/images/menu-current-arrow.png) no-repeat center center scroll transparent;
  content: "";
}
#page-menu .tabs.menu-type ul #tabsaccordion-0-tab-0 {
  background-image: url(/themes/tac/images/drawing-cutlery-transparent.svg);
}
#page-menu .tabs.menu-type ul #tabsaccordion-0-tab-1 {
  background-image: url(/themes/tac/images/drawing-bread-basket-transparent.svg);
}
#page-menu .tabs.menu-type ul #tabsaccordion-0-tab-2 {
  background-image: url(/themes/tac/images/shape-down-arrow.svg);
  background-position: left 20px bottom 25px;
}
#page-menu .tabs.menu-category ul {
  background-color: rgba(0, 0, 0, 0.5);
}
#page-menu .tabs.menu-category ul li {
  width: auto;
  height: auto;
  padding: 10px 22px;
  border-right: none;
  background-color: transparent;
}
#page-menu .accordion > section {
  border: none;
  border-radius: 0;
}
#page-menu .accordion > section h3 {
  color: #FFF;
  margin: 0 1px;
  background: url(/themes/tac/images/icon-expand-down.svg) no-repeat right 20px center scroll rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  -webkit-transition: all 400ms linear;
  -moz-transition: all 400ms linear;
  transition: all 400ms linear;
}
#page-menu .accordion > section h3:hover {
  background-color: rgba(0, 0, 0, 0.7);
}
#page-menu .accordion > section > :first-child + * > * {
  /* This gross selector is thanks to the existing styling used with the plugin theme. */
  padding: 0 0 20px;
}
#page-menu .accordion.menu-type > section {
  margin-top: 0;
  background-color: rgba(255, 255, 255, 0.1);
  /*&>:first-child+*>* {
  	padding: 0 0 20px;
  }*/
}
#page-menu .accordion.menu-type > section h2 {
  height: 128px;
  color: #FFF;
  margin: 0 1px;
  background: url(/themes/tac/images/icon-expand-down.svg) no-repeat right 20px center scroll rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  -webkit-transition: all 400ms linear;
  -moz-transition: all 400ms linear;
  transition: all 400ms linear;
}
#page-menu .accordion.menu-type > section h2 span {
  display: block;
  width: 100%;
  text-align: center;
}
#page-menu .accordion.menu-type > section h2 .sub-1 {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2em;
  padding-top: 0.5em;
}
#page-menu .accordion.menu-type > section h2 .sub-2 {
  margin-top: -1em;
}
#page-menu .accordion.menu-type > section h2 .sub-3 {
  font-size: 0.65em;
}
#page-menu .accordion.menu-type > section h2 .sub-2.download-menu {
  padding-left: 1em;
  margin-top: -1.3em;
}
#page-menu .accordion.menu-type > section h3:hover,
#page-menu .accordion.menu-type > section h2:hover {
  background-color: rgba(0, 0, 0, 0.7);
}
#page-menu .accordion.menu-type > section h4 {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2.5em;
  margin: 0.25em 0 0;
}
#page-menu .accordion.menu-type > section section > div > div {
  padding-top: 0;
}
#page-menu table {
  width: 100%;
  margin-top: -5em;
  margin-bottom: 5em;
  border-spacing: 0;
  border-collapse: collapse;
  /* Header Row (Small, Medium Large Headings) */
  /* Various Cell Styles */
}
#page-menu table td,
#page-menu table th {
  height: 4.4em;
  padding: 18px 11px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
#page-menu table .header-row th {
  font-weight: normal;
  height: 3.8em;
}
#page-menu table .header-row .price {
  text-align: center;
}
#page-menu table .placeholder {
  width: 40px;
  border-bottom-width: 0;
}
#page-menu table .item-details {
  text-align: left;
}
#page-menu table .item-details .item-name {
  margin: 0;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
  font-size: 1em;
}
#page-menu table .item-details .item-description {
  font-size: 0.85em;
}
#page-menu table .price {
  text-align: center;
  width: 6.1em;
}
#page-menu table .price.small,
#page-menu table .price.large {
  background-color: rgba(255, 255, 255, 0.15);
}
#page-menu table .price.not-applicable {
  background-color: transparent;
}
#page-menu ul.menu-definition {
  overflow: auto;
  margin: 0.6em 0 0;
  font-size: 0.85em;
  background-color: transparent !important;
}
#page-menu ul.menu-definition li.item {
  float: left;
  width: 33%;
  padding: 0;
  text-align: left;
}
#page-menu ul.menu-definition li.item span {
  display: inline-block;
  vertical-align: top;
}
#page-menu ul.menu-definition li.item .label.pasta {
  width: 4.65em;
  font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
}
#page-menu ul.menu-definition li.item value.pasta {
  width: auto;
  padding-right: 10px;
}
#page-menu .tabs.menu-type ul.menu-definition li {
  /* Fixes display issues with the accordion view. */
  position: static;
  height: auto;
  background: transparent;
  border: none;
}
#page-menu .menu-download {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 0 0 220px;
  background: url(/themes/tac/images/menu-screenshot.jpg) no-repeat left center scroll transparent;
}
#page-menu .menu-notice {
  max-width: 700px;
  margin: 0 auto;
  text-align: center;
}
#page-menu .menu-notice h5 .sub-1,
#page-menu .menu-notice h5 .sub-2 {
  display: block;
}
#page-menu .menu-notice h5 .sub-2 {
  font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  font-size: 2.5em;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Responsive Tweaks
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Responsive Tweaks
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Theme Colour Palette */
/* Theme Font Stacks */
/* Common Break Points */
/* Big Screens to Normal Screens */
/* Normal Screens to Narrow Screens */
/* Narrow Screens to Tablets */
/* Tablets to Mobile */
/* Tablets to Mobile */
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  General Tweaks
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Make sure page BG image stretches for big screens */
@media screen and (min-width: 1400px) {
  .page {
    background-size: 100%;
  }
}
/* For all smaller screens, up to 'narrow' size. */
@media screen and (max-width: 1024px) {
  /* Make page title a little smaller and padded from the edges. */
  header #logo {
    left: 20px;
  }
  header .header-content .page-title {
    padding: 0 30px;
    font-size: 4em;
  }

  /* Adjust layout of newsletter signup form */
  .newsletter-signup h3 {
    float: none;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
  }
  .newsletter-signup form {
    float: none;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0.8em;
    overflow: auto;
    text-align: center;
  }
  .newsletter-signup form .Actions {
    float: none;
    display: inline-block;
    vertical-align: top;
  }
  .newsletter-signup form fieldset {
    float: none;
    display: inline-block;
    margin-right: -4px;
    /* Remove white space between the field and the button. */
  }
}
/* Reduce the space between the bottom of the sidebar and the footer. */
@media screen and (max-width: 450px) {
  .page {
    padding-bottom: 1em;
  }
  .page .maincontent {
    padding-bottom: 0;
  }
}
/* Shrink the header-page separator a little on smaller screens. */
@media screen and (max-width: 768px) {
  .page {
    box-shadow: inset 0 15px 0 0 rgba(0, 0, 0, 0.6);
  }
}
/* Pad out content from very edge of screen on screens larger than mobiles. */
@media screen and (min-width: 450px) and (max-width: 1024px) {
  .contentregion {
    float: none;
    width: auto;
    padding: 0 30px;
  }
}
@media screen and (max-width: 450px) {
  .contentregion {
    float: none;
    width: auto;
    padding: 0;
  }
}
/* Add a bit of space on the left & right of the screen for scrolling past map, etc. */
@media screen and (max-width: 1024px) {
  .maincontent {
    padding: 10px 10px 20px;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Header
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Adjust display of header BG image to fit the screen. */
@media screen and (min-width: 768px) and (max-width: 1200px) {
  header {
    background-image: url(/themes/tac/images/banner/carbonara-in-bowl-1200.jpg) !important;
    background-size: 1200px 404px;
  }
}
@media screen and (max-width: 768px) {
  header {
    background-image: url(/themes/tac/images/banner/carbonara-in-bowl-mobile.jpg) !important;
    background-size: auto;
  }
}
/* Tweak the page titles and header size on mobiles. */
@media screen and (max-width: 450px) {
  header {
    height: 225px;
  }
  header .header-content .page-title {
    font-size: 2.5em;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Sidebar
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Put Sidebar underneath main content for any narrow screens */
@media screen and (max-width: 1024px) {
  #sidebar {
    float: none;
    width: auto;
    margin-top: 3.8em;
    text-align: center;
  }
  #sidebar .widget {
    display: inline-block;
    vertical-align: top;
    width: 300px;
    margin: 0 1em 1em;
  }
  #sidebar .widget:last-child {
    margin-bottom: 0;
  }
  #sidebar .widget.menu .widget-content {
    padding-bottom: 10px;
    background: url("/themes/tac/images/sidebar-widget-separator-line.png") no-repeat center bottom scroll transparent;
  }
  #sidebar .widget.socialmedia {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 450px) {
  #sidebar {
    margin: 2em 0 0;
    padding: 0;
  }
  #sidebar .widget {
    margin: 0;
  }
  #sidebar .widget.menu .widget-content {
    padding-bottom: 0;
    background: none;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Mobile & Tablet Menu
 * - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 768px) {
  header {
    height: 250px;
  }
  header nav.primary,
  header nav.socialmedia {
    display: none;
    /* Hide normal menus. */
  }
  header .mobile-menu-link {
    position: absolute;
    /* Display link for mobile navigation panel. */
    top: 20px;
    right: 20px;
    z-index: 5000;
    display: block;
    text-decoration: none;
  }
  header .mobile-menu-link span {
    display: block;
  }
  header .mobile-menu-link .icon {
    width: 40px;
    height: 40px;
    margin: 0 auto 0.5em;
    background: url("/themes/tac/images/menu-icon.svg") no-repeat center center scroll #000;
    background-size: 25px;
    /*border: 1px solid rgba(255,255,255,0.2);*/
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
    border-radius: 5px;
  }
  header .mobile-menu-link .icon-label {
    color: #FFF;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Edmondsans Bold", "Edmondsans", Helvetica, Arial, sans-serif;
    font-size: 0.7em;
  }
  header .header-content .page-title {
    font-size: 3.5em;
  }

  header .header-content #logo {
    max-width: 55%;
  }
  header .header-content #logo a {
    width: 228px;
    height: 77px;
  }
  header .header-content #logo img {
    width: 100%;
    height: auto;
  }

  #mobile-menu ul.mm-list.mm-panel {
    background: url(/themes/tac/images/drawing-pizza-white-transparent.png) no-repeat left -120px bottom -150px scroll transparent;
  }
  #mobile-menu ul.mm-list.mm-panel .item.link a {
    padding: 15px 15px 15px 20px;
    color: #FFF;
    font-family: "Edmondsans", Helvetica, Arial, sans-serif;
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    transition: all 200ms linear;
  }
  #mobile-menu ul.mm-list.mm-panel .item.link a:hover {
    background-color: rgba(0, 0, 0, 0.2);
  }

  nav.mm-ismenu {
    /* Menu BG */
    background-color: #333;
    background-image: -webkit-linear-gradient(left, #3C3C3C 0%, #494949 15%, #333 100%);
    background-image: linear-gradient(to right,#3C3C3C 0%, #494949 15%, #333 100%);
  }

  .mm-list > li:not(.mm-subtitle):not(.mm-label):not(.mm-noresults):after {
    /* Separator between each link. */
    margin-left: 0 !important;
  }

  .mm-list > li > a {
    /* Menu Text Links */
    font-size: 1.3em;
    font-family: 'Edmondsans Bold', Helvetica, Arial, sans-serif;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Mobile & Tablet Footer
 * - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 768px) {
  footer {
    padding-bottom: 0.5em;
  }
  footer .newsletter-signup h3 {
    font-size: 1.3em;
  }
  footer nav {
    display: none;
    /* Hide all the nagivation links in the footer. */
  }
  footer .top-link {
    display: block;
    margin: 0.9em 0 0.4em;
    text-align: center;
    text-decoration: none;
    color: #A99586;
  }
  footer .top-link span {
    display: inline-block;
  }
  footer .top-link .top-label {
    line-height: 1.8em;
    padding: 0 1em;
  }
  footer .top-link .before,
  footer .top-link .after {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 9px solid #A89487;
  }
  footer .fine-print {
    text-align: center;
    font-size: 0.8em;
    line-height: 1.8em;
    border-top: none;
  }
  footer .fine-print .disclaimer,
  footer .fine-print .credit {
    float: none;
  }
}
@media screen and (max-width: 450px) {
  footer {
    margin-top: 2em;
  }
  footer .newsletter-signup h3 {
    font-size: 1.1em;
  }
  footer .newsletter-signup form {
    display: block;
  }
  footer .newsletter-signup form fieldset {
    display: block;
    text-align: center;
    margin-right: 0;
  }
  footer .newsletter-signup form fieldset input[type="email"] {
    display: inline-block;
    text-align: center;
    margin-bottom: 0.5em;
    border-radius: 5px;
  }
  footer .newsletter-signup form .Actions input.action {
    display: block;
    border-radius: 5px;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Home Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Adjust display of header BG image to fit the screen. */
@media screen and (min-width: 450px) and (max-width: 1200px) {
  .home-header {
    background-image: url(/themes/tac/images/banner/pizzas-in-oven-1200.jpg) !important;
    background-size: 1200px 610px;
  }
}
/* Home page tweaks for smaller screens. */
@media screen and (min-width: 450px) and (max-width: 1024px) {
  .home-header .banner-content {
    top: 195px;
  }

  /* Newsletter Signup Form */
  .newsletter-signup.homepage h3 {
    margin-bottom: 0;
  }

  /* Store Locator widget */
  .widget.store-locator {
    top: 170px;
    right: 20px;
  }

  #page-home.page {
    /* Home Page Blurb */
    /* Home Page Sidebar */
  }
  #page-home.page .contentregion {
    max-width: 750px;
    margin: 0 auto;
    font-size: 0.9em;
  }
  #page-home.page .contentregion .blurb {
    padding-right: 0;
    background-image: none;
  }
  #page-home.page .contentregion .blurb p,
  #page-home.page .contentregion .blurb p:first-child {
    padding-right: 0;
    margin-bottom: 0.7em;
  }
  #page-home.page #sidebar {
    max-width: 610px;
    margin: 1em auto 0;
    background-position: 0 50px;
    text-align: center;
    /* Franchisee Widget */
  }
  #page-home.page #sidebar .widget {
    float: none;
    display: inline-block;
    text-align: left;
  }
  #page-home.page #sidebar .widget.franchise {
    width: 300px;
    min-height: 241px;
    float: right;
    margin: 0 0 20px 320px;
    padding-right: 20px;
    text-align: center;
    background-image: url("/themes/tac/images/sidebar-widget-bg-wine.png");
  }
  #page-home.page #sidebar .widget.franchise .widget-title {
    font-size: 3em;
  }
  #page-home.page #sidebar .widget.franchise .widget-title .sub-1 {
    font-size: 0.4em;
  }
  #page-home.page #sidebar .widget.franchise .widget-title .sub-2 {
    font-size: 0.3em;
  }
  #page-home.page #sidebar .widget.franchise .widget-title .sub-3 {
    margin: -0.2em 0;
  }
  #page-home.page #sidebar .widget.franchise .button,
  #page-home.page #sidebar .widget.franchise .button:visited {
    float: right;
    margin: 10px 10px 10px 0;
    padding: 7px 10px;
    font-size: 1.05em;
  }
  #page-home.page #sidebar .widget.twitter {
    margin-left: 0;
  }
}
/* Hide Social Media feeds on screens that can't fit them side-by-side. */
@media screen and (max-width: 609px) {
  #page-home.page #sidebar {
    background-image: none;
  }
  #page-home.page #sidebar .widget.franchise {
    float: none;
    margin: 0 auto;
  }
  #page-home.page #sidebar .widget.social {
    display: none;
  }
  #page-home.page #sidebar .widget.socialmedia {
    display: block;
    float: none;
    margin: 25px auto;
  }
}
/* Home page changes to mobile & tablet screens. */
@media screen and (max-width: 768px) {
  header .header-content #logo a {
    width: 218px;
    height: 74px;
  }

  .home-header {
    background-image: url(/themes/tac/images/banner/pizzas-in-oven-mobile.jpg) !important;
    background-size: 900px 700px;
    /* Put Home page banner & store locator above/below rather than beside each other. */
  }
  .home-header .banner-content {
    position: static;
    padding-top: 120px;
  }
  .home-header .banner-content .banner-title .sub-1 {
    font-size: 1.7em;
  }
  .home-header .banner-content .banner-title .sub-2 {
    font-size: 0.6em;
  }
  .home-header .banner-content .menu.button {
    padding: 6px 28px;
  }
  .home-header .widget.store-locator {
    position: static;
    margin: 2em auto;
  }

  /* Make the header taller on mobile if the geolocation works. */
  .GeolocationFound .home-header {
    height: 700px;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
  }
}
/* Home page for mobile screens. */
@media screen and (max-width: 450px) {
  #logo {
    max-width: 200px;
  }

  .home-header .banner-content .banner-title .sub-1 {
    font-size: 1.45em;
  }
  .home-header .banner-content .banner-title .sub-2 {
    font-size: 0.5em;
  }

  #page-home.page {
    padding-bottom: 1em;
    box-shadow: inset 0 15px 0 0 rgba(0, 0, 0, 0.6);
    /* Home Page Blurb */
  }
  #page-home.page .contentregion .blurb {
    padding-right: 0;
    background-image: none;
    font-size: 0.95em;
    line-height: 1.4em;
  }
  #page-home.page .contentregion .blurb p:first-child:first-letter {
    padding: 0 0.5em 0 0;
    font-size: 2em;
    line-height: 1.5em;
    font-family: "Lavanderia Sturdy", "Edmondsans Bold", sans-serif;
  }
  #page-home.page .contentregion .blurb p,
  #page-home.page .contentregion .blurb p:first-child {
    padding-right: 0;
    margin-bottom: 0.7em;
  }
  #page-home.page #sidebar {
    margin-top: 1em;
    padding-left: 0;
    padding-right: 0;
  }
  #page-home.page #sidebar .widget.franchise {
    width: 320px;
    max-width: 100%;
  }
  #page-home.page #sidebar .widget.franchise .sub-3 {
    font-size: 0.95em;
  }

  .newsletter-signup.homepage {
    display: none;
  }

  .home-template footer {
    margin-top: 0;
  }
}
/* Heat line illustrations on the Home page header, for decoration. */
@media screen and (min-width: 1024px) {
  .home-template .heat-lines {
    position: absolute;
    z-index: 5;
    width: 188px;
    height: 316px;
    top: 120px;
    left: 50%;
    margin: 0 0 0 -34px;
    background: url(/themes/tac/images/drawing-heat-lines.png) no-repeat center center scroll transparent;
    /* Fancy Animation */
    -webkit-animation-name: heatlinesin;
    -moz-animation-name: heatlinesin;
    animation-name: heatlinesin;
    -webkit-animation-duration: 4.5s;
    -moz-animation-duration: 4.5s;
    animation-duration: 4.5s;
    -webkit-animation-timing-function: ease-out;
    -moz-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-animation-iteration-count: once;
    -moz-animation-iteration-count: once;
    animation-iteration-count: once;
  }
}
@-webkit-keyframes heatlinesin {
  0% {
    opacity: 0;
    top: 180px;
  }
  50% {
    opacity: 0;
    top: 180px;
  }
  100% {
    opacity: 1;
    top: 120px;
  }
}
@-moz-keyframes heatlinesin {
  0% {
    opacity: 0;
    top: 180px;
  }
  50% {
    opacity: 0;
    top: 180px;
  }
  100% {
    opacity: 1;
    top: 120px;
  }
}
@keyframes heatlinesin {
  0% {
    opacity: 0;
    top: 180px;
  }
  50% {
    opacity: 0;
    top: 180px;
  }
  100% {
    opacity: 1;
    top: 120px;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Locations Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
/* Adjust the width of locaiton address details. */
@media screen and (max-width: 1024px) {
  .locations-list .item {
    padding: 15px 25px 15px 65px;
    background-position: 15px 20px;
  }
  .locations-list .item .name-address {
    max-width: 190px;
  }
}
/* When we can't fit 2 locations next to each other, switch to single-column view. */
@media screen and (max-width: 879px) {
  .locations-list .item {
    display: block;
    width: 100%;
    max-width: 500px;
    margin: 0 auto 20px !important;
  }
}
/* Hide map on smaller-screened tablets and below. */
@media screen and (max-width: 650px) {
  #page-locations .locations-map {
    display: none;
  }
}
/* Adjust search widget so it's not so wide. */
@media screen and (max-width: 575px) {
  #page-locations .widget.store-locator,
  #page-locations-item #sidebar .widget.store-locator {
    width: 280px;
    padding: 20px 15px 20px;
  }
  #page-locations .widget.store-locator .widget-title,
  #page-locations-item #sidebar .widget.store-locator .widget-title {
    width: auto;
    float: none;
  }
  #page-locations .widget.store-locator form,
  #page-locations-item #sidebar .widget.store-locator form {
    float: none;
  }
}
/* Change layout of info for each location. */
@media screen and (max-width: 450px) {
  .locations-list {
    padding-bottom: 1em;
  }
  .locations-list .item {
    height: auto;
  }
  .locations-list .item .name-address {
    float: none;
  }
  .locations-list .item .actions {
    float: none;
    text-align: left;
  }
}
/* Switch the Franchisee widget back to it more compact self. */
@media screen and (max-width: 499px) {
  #page-locations #sidebar .widget.franchise {
    width: 300px;
    min-height: 241px;
    padding: 10px;
    background-image: url("/themes/tac/images/sidebar-widget-bg-wine.png");
    background-position: center top;
  }
  #page-locations #sidebar .widget.franchise .widget-title {
    float: none;
  }
  #page-locations #sidebar .widget.franchise .widget-title .sub-1,
  #page-locations #sidebar .widget.franchise .widget-title .sub-2 {
    margin-left: 0;
  }
  #page-locations #sidebar .widget.franchise .widget-title .sub-3 {
    margin: -0.2em 0;
  }
  #page-locations #sidebar .widget.franchise .button,
  #page-locations #sidebar .widget.franchise .button:visited {
    margin: 10px 10px 10px 0;
    box-shadow: none;
  }
}
/* Location Search Results */
@media screen and (max-width: 450px) {
  .search_results .locations-list .item {
    height: 12.4em;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Location Details Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 1024px) {
  #page-locations-item {
    /* Google Maps */
    /* Location Details */
    /* Location Image Gallery */
  }
  #page-locations-item .map-directions {
    float: none;
    width: auto;
  }
  #page-locations-item .location-details {
    float: none;
    width: auto;
    max-width: 600px;
    margin: 0 auto 1.5em;
    padding: 10px 20px 15px 80px;
    background: url(/themes/tac/images/icon-drawing-map-pin-blackdot.svg) no-repeat 20px 20px scroll rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.2);
  }
  #page-locations-item .gallery .image-list {
    text-align: center;
    padding-bottom: 0;
    font-size: 0;
  }
  #page-locations-item .gallery .image-list .item {
    float: none;
    display: inline-block;
    vertical-align: top;
    width: 160px;
    height: 160px;
    margin-bottom: 10px;
    font-size: 18px;
  }
  #page-locations-item .gallery .image-list .item img {
    min-width: 160px;
    min-height: 160px;
  }
}
/* Adjust sidebar widgets when screen can't fit them side-by-side. */
@media screen and (max-width: 950px) {
  #page-locations-item #sidebar .widget.franchise,
  #page-locations-item #sidebar .widget.store-locator {
    display: block;
    float: none;
    margin: 1.4em auto;
  }
}
@media screen and (max-width: 450px) {
  #page-locations-item {
    /* Google Maps */
    /* Location Image Gallery */
  }
  #page-locations-item .map-directions div.googlemap {
    height: 300px;
  }
  #page-locations-item .gallery .image-list .item {
    width: 140px;
    height: 140px;
  }
  #page-locations-item .gallery .image-list .item img {
    min-width: 140px;
    min-height: 140px;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Menu Page
 * - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 1024px) {
  /* Pasta List */
  #page-menu ul.menu-definition li.item {
    width: 50%;
  }
  #page-menu ul.menu-definition li.item .value.pasta {
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  /* Menu Type Tabs (Dine-In, Take-Away, Download) */
  #page-menu {
    /* Pasta List */
    /* Menu Table */
  }
  #page-menu .tabs.menu-type {
    padding-bottom: 32px;
    /* Prevents bottom accordion heading from getting cut off at the bottom. */
  }
  #page-menu .tabs.menu-type ul[role="tablist"] {
    width: 99%;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] li {
    width: 33%;
    min-width: 170px;
    background-size: 80%;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] li span {
    width: 100%;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] li .sub-1 {
    font-size: 1.5em;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] li .sub-2 {
    font-size: 0.9em;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] li .sub-2.download-menu {
    margin-top: -0.8em;
  }
  #page-menu .tabs.menu-type ul[role="tablist"] #tabsaccordion-0-tab-2 {
    /* Download Menu Tab */
    background-position: left 12px bottom 35px;
    background-size: 25px;
  }
  #page-menu .accordion .accordion {
    padding-top: 20px;
  }
  #page-menu .accordion > section > :first-child + * > * {
    padding: 20px;
  }
  #page-menu .accordion > section > div > div {
    padding-top: 0 !important;
  }
  #page-menu .accordion.menu-type > section h4,
  #page-menu .tabs.menu-type > section h4 {
    display: none;
  }
  #page-menu ul.menu-definition li.item {
    width: 100%;
  }
  #page-menu table {
    margin-top: 0;
    margin-bottom: 0;
  }
  #page-menu table .placeholder {
    border-bottom-width: 1px;
  }
  #page-menu table .price {
    width: 5.5em;
    padding: 18px 6px;
  }
}
@media screen and (max-width: 450px) {
  #page-menu {
    /* Menu Table */
    /* Hide the secondary menus in the table header row, there's not enough room for them. */
    /* 'Download Our Menu' section. */
  }
  #page-menu .accordion.menu-type > section h4 {
    font-size: 1.9em;
    margin-top: 0.5em;
  }
  #page-menu .accordion.menu-category {
    font-size: 0.9em;
  }
  #page-menu .accordion.menu-category > section > div > div {
    padding: 0 0 20px 0;
  }
  #page-menu .accordion > section > :first-child + * > * {
    padding: 10px;
  }
  #page-menu table {
    margin-top: 0;
  }
  #page-menu table .placeholder {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
  #page-menu table .price {
    width: 4.4em;
    padding: 18px 6px;
    font-size: 0.9em;
  }
  #page-menu .accordion.menu-type > section h4 {
    display: none;
  }
  #page-menu .menu-download {
    padding-left: 0;
    padding-bottom: 1em;
    background: transparent;
    text-align: center;
  }
}
/* - - - - - - - - - - - - - - - - - - - - - - - - -
 *  Form Styles
 * - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (max-width: 700px) {
  /* In-Page Form (from the Form Builder in the CMS) */
  .contentregion form {
    width: 100%;
  }
}

/*# sourceMappingURL=layout.css.map */
