@charset "UTF-8";
/* CSS Document */
/* #Basic Typography Styles
================================================== */
body {
  color: #000;
  -webkit-font-smoothing: antialiased;
  /* Fix for webkit rendering */
  -webkit-text-size-adjust: 100%;
  font-family: 'Montserrat', Helvetica, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.4rem; }

p {
  margin: 0 0 20px 0; }

p img {
  margin: 10px 0px; }

sup {
  vertical-align: top;
  position: relative;
  top: -0.3em;
  font-size: 0.8em; }

/* Main_text Styles
================================================== */
.main_text img {
  margin: 10px 0px; }

/* #Header Styles
================================================== */
h1 {
  color: #255495;
  font-weight: 700; }

h2,
h3,
h4,
h5,
h6 {
  color: #00326E;
  font-weight: 700; }

h4 strong {
  color: #00326E; }

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: inherit;
  -webkit-transition: 300ms linear 0s;
  -moz-transition: 300ms linear 0s;
  -o-transition: 300ms linear 0s;
  transition: 300ms linear 0s; }

h1 {
  font-size: 2.8em;
  line-height: 48px;
  margin-bottom: 25px; }

@media screen and (max-width: 480px) {
  h1 {
    font-size: 2.4em; } }
h2 {
  font-size: 35px;
  line-height: 40px;
  margin-bottom: 10px; }

h3 {
  font-size: 28px;
  line-height: 34px;
  margin-bottom: 8px; }

h4 {
  font-size: 20px;
  line-height: 23px;
  margin-bottom: 4px; }

h5 {
  font-size: 17px;
  line-height: 22px; }

h6 {
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 4px;
  color: #C00; }

strong {
  font-weight: bold; }

/* #Header Class Styles
================================================== */
.block_header {
  display: block;
  margin: 0px 0px 10px 0px;
  background: #255495;
  color: #FFF;
  padding: 7px 10px 10px 10px; }

.block_header a {
  display: block;
  color: #FFF;
  text-decoration: none; }

.block_header a:hover {
  color: #D3D3D3; }

.grey_block_header {
  display: block;
  padding: 5px 10px;
  color: #00326E;
  font-weight: normal;
  margin: 0px 0px 10px 0px;
  background: #D7D7D7; }

.red_block_header {
  display: block;
  padding: 8px 7px 10px;
  color: #FFF;
  font-weight: normal;
  margin: 0px 0px 10px 0px;
  background: #DA4035; }

.red_block_header a:hover {
  text-decoration: none;
  background-color: #FF5A33; }

.grey_block_head a,
.red_block_header a {
  text-decoration: none;
  color: #FFF; }

p.large_red_bullet {
  font-size: 4rem;
  margin: -25px 0 5px 0;
  color: #c40000; }

p.large_red_quote_mark {
  font-size: 4rem;
  color: #c40000;
  font-weight: bold;
  text-align: center;
  margin-bottom: 0; }

/* Bullet Lists ================================================== */
li ul,
li ol {
  margin: 0; }

.blue_bullet {
  list-style-type: square;
  margin-bottom: 10px;
  font-weight: bold;
  color: #255495;
  margin: 0 1.5em 1.5em 1.5em; }

.blue_bullet ul {
  color: #255495; }

.blue_bullet li {
  margin-bottom: 10px;
  margin-left: -5px; }

.black_bullet {
  list-style-type: square;
  margin-bottom: 10px;
  font-weight: normal;
  margin: 0 1.5em 1.5em 1.5em; }

.black_bullet ul {
  color: #000000; }

.black_bullet li {
  margin-bottom: 10px;
  margin-left: -5px; }

/* #Miscellaneous
================================================== */
.available {
  font-weight: bold;
  color: #FF5E05; }

/* #Buttons
================================================== */
/* RED
================================================== */
.button_red {
  color: #FFF; }

.button_red a {
  text-decoration: none;
  text-align: center;
  width: 90%;
  padding: 10px;
  color: #FFF;
  background: #DA4035;
  font-weight: normal;
  display: inline-block;
  margin: 0px 0px 20px 0px;
  border-radius: 7px;
  box-shadow: 6px 6px 10px #CCC; }

.button_red a:hover {
  background-color: #BF2A21; }

/* BLUE
================================================== */
.button_blue {
  color: #FFF;
  text-align: center; }

.button_blue a {
  text-decoration: none;
  padding: 14px;
  color: #FFF;
  font-weight: normal;
  display: inline-block;
  margin: 0px 0px 20px 0px;
  border-radius: 7px;
  box-shadow: 6px 6px 10px #CCC;
  background-color: #255495; }

.button_blue a:hover {
  background-color: #0A2E5C; }

/* Large Red Button */
.large_red_button {
  color: #FFF;
  font-size: 28px;
  line-height: 27px;
  background: #DA4035;
  text-align: center;
  padding: 10px;
  margin-top: 10px;
  border-radius: 15px;
  text-decoration: none; }

.large_red_button:hover {
  background: #c44036; }

.large_red_button a {
  text-decoration: none;
  color: #FFF; }

/* Medium Red Button */
.medium_red_button {
  color: #FFF;
  font-size: 16px;
  line-height: 27px;
  background: #DA4035;
  display: inline-block;
  text-align: center;
  padding: 6px 10px;
  margin-top: 10px;
  border-radius: 12px;
  text-decoration: none; }

.medium_red_button:hover {
  background: #c44036;
  color: #FFF; }

.medium_red_button a {
  text-decoration: none;
  color: #FFF; }

/* SOCIAL
================================================== */
.button_social {
  color: #255495;
  text-align: left; }

.button_social a {
  text-decoration: none;
  padding: 0px;
  color: #255495;
  font-weight: normal;
  display: inline-block;
  margin: 8px 0px; }

.button_social a:hover {
  color: #DA4035; }

.button_social [data-icon]:before,
.button_social [class^="icon-"]:before,
.button_social [class*=" icon-"]:before {
  font-size: 36px;
  display: inline-block;
  margin-top: -8px;
  padding: 0px 5px 0px 0px; }

.button_social {
  text-align: center; }

.button_social a {
  display: inline-block;
  width: 50px;
  height: 50px;
  margin: 0 10px 10px;
  background-color: #5474b5;
  color: white;
  border-radius: 50%;
  text-decoration: none;
  line-height: 50px;
  font-size: 24px;
  transition: background-color 0.3s ease; }

.button_social a:hover {
  background-color: #8396bf; }

.button_social a.instagram {
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }

.button_social a.instagram:hover {
  opacity: 0.8; }

/* Price List Tables 2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.table2 {
  width: 100%;
  border-collapse: collapse;
  /* Zebra striping */ }
  .table2 tr:nth-of-type(odd) {
    background: #eee; }
  .table2 th {
    background: #585858;
    color: white;
    font-weight: bold; }
  .table2 td, .table2 th {
    padding: 6px;
    border: 1px solid #ccc;
    text-align: center; }
  .table2 tr td:first-child {
    font-weight: bold; }

/* 
	Max width before this PARTICULAR table gets nasty
	This query will take effect for any screen smaller than 760px
	and also iPads specifically.
	*/
@media only screen and (max-width: 1119px), (min-device-width: 768px) and (max-device-width: 1024px) {
  .table2 {
    /* Force table to not be like tables anymore */
    /* Hide table headers (but not display: none;, for accessibility) */
    /*
    Label the data
    */ }
    .table2 table, .table2 thead, .table2 tbody, .table2 th, .table2 td, .table2 tr {
      display: block; }
    .table2 thead tr {
      position: absolute;
      top: -9999px;
      left: -9999px; }
    .table2 tr {
      border: 1px solid #ccc;
      margin-bottom: 1rem; }
    .table2 tr:nth-of-type(odd) td {
      border-bottom: 2px solid #FFF; }
    .table2 td {
      /* Behave  like a "row" */
      border: none;
      border-bottom: 1px solid #eee;
      position: relative;
      padding-left: 70%; }
    .table2 td:before {
      /* Now like a table header */
      position: absolute;
      /* Top/left values mimic padding */
      top: 6px;
      left: 6px;
      width: 45%;
      padding-right: 10px;
      white-space: nowrap;
      font-weight: bold; }
    .table2 td:nth-of-type(1):before {
      content: "Term"; }
    .table2 td:nth-of-type(2):before {
      content: "Mid Week 4 Nights*"; }
    .table2 td:nth-of-type(3):before {
      content: "2 Nights M-W or W-F"; }
    .table2 td:nth-of-type(4):before {
      content: "Weekend inc Activities"; }
    .table2 td:nth-of-type(5):before {
      content: "Weekend 3 nights*"; } }
/* Smartphones (portrait and landscape) ----------- */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  .table2 body {
    padding: 0;
    margin: 0;
    width: 320px; } }
/* iPads (portrait and landscape) ----------- */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .table2 body {
    width: 495px; } }
/* EVENTS LISTING
================================================== */
.activities p {
  border-bottom: 1px #CCC solid;
  padding: 5px 0px;
  margin: 0px; }
.activities span.price {
  float: right; }

/* EVENTS LISTING
================================================== */
.event_listing p img {
  display: inline-block;
  margin: 0;
  padding: 5px 0px 10px 20px; }

/* HOME PAGE 
================================================== */
.home_heading_block h1 {
  text-align: center;
  color: #fff; }

.col-content {
  margin-bottom: 30px;
  -webkit-transition: .4s ease-in-out opacity;
  -moz-transition: .4s ease-in-out opacity;
  -o-transition: .4s ease-in-out opacity;
  transition: .4s ease-in-out opacity; }
  .col-content a {
    text-decoration: none; }
  @media only screen and (max-width: 949px), (min-device-width: 768px) and (max-device-width: 949px) {
    .col-content {
      max-width: 450px; } }
  .col-content:hover {
    opacity: 0.7;
    filter: alpha(opacity=0.7); }
  .col-content h2 {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center; }
  @media only screen and (max-width: 1119px), (min-device-width: 768px) and (max-device-width: 1024px) {
    .col-content h2 {
      font-size: 1.3rem; } }
  .col-content p, .col-content p a {
    display: block;
    padding: 10px 10px 20px 10px;
    font-size: 20px;
    color: #fff;
    margin: 0px; }
  .col-content img {
    display: block;
    margin: 0;
    padding: 0; }

.home_history h2 {
  padding: 13px 9px;
  color: #FFF;
  line-height: 28px;
  margin: 0px;
  background: #DD4040; }

.home_programmes h2 {
  min-height: 54px;
  padding: 13px 9px;
  color: #FFF;
  line-height: 28px;
  margin: 0px;
  background: #039AD1; }

.home_day_visits h2 {
  padding: 13px 9px;
  color: #FFF;
  line-height: 28px;
  margin: 0px;
  min-height: 54px;
  background: #EB7600; }

.link_block p a {
  font-size: 1.2rem;
  line-height: 15px;
  display: block;
  padding: 10px 16px 13px;
  background: #D13D33;
  color: #FFF;
  margin: 0px;
  text-decoration: none; }

.link_block p a:hover {
  background: #CC0000; }

.quote_source {
  font-size: 15px;
  line-height: 15px;
  display: block;
  padding: 9px 15px 20px;
  background: #D13D33;
  color: #FFF;
  margin: 0px; }

/* HOME PAGE MALAWI
================================================== */
.malawi_home h3 {
  display: block;
  background: #e27000;
  padding: 10px 9px;
  color: #FFF;
  font-size: 21px;
  line-height: 22px;
  border-radius: 15px 15px 0px 0px;
  margin: 0px; }

.malawi_home p {
  display: block;
  font-size: 20px;
  color: #003366;
  background: #efcb69;
  line-height: 22px;
  margin: 0px;
  padding: 9px; }

.malawi_home_btn a {
  text-decoration: none;
  color: #fff;
  font-size: 22px;
  display: block;
  background: #e27000;
  padding: 10px 0px; }

.malawi_home_btn a:hover {
  background: #cb6c10; }

.malawi_home img {
  display: block; }

/* HOME PAGE EVENTS
================================================== */
#events {
  background-color: #9DC349;
  padding: 8px; }

.events h2 {
  font-size: 15px;
  line-height: 18px;
  margin: 0px;
  color: #FFF;
  padding: 0 0 2px 0; }

.events h3 a {
  display: block;
  color: #003366;
  font-size: 18px;
  line-height: 20px;
  margin: 0px; }

.events p {
  margin: 0px; }

/* #Icon Fonts
================================================== */
@font-face {
  font-family: "icons";
  src: url("fonts/icons.eot");
  src: url("fonts/icons.eot?#iefix") format("embedded-opentype"), url("fonts/icons.ttf") format("truetype"), url("fonts/icons.svg#icons") format("svg"), url("fonts/icons.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
[data-icon]:before {
  font-family: "icons";
  content: attr(data-icon);
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none !important;
  display: inline-block;
  text-decoration: none;
  width: 1em;
  line-height: 1em;
  -webkit-font-smoothing: antialiased;
  padding: 0px 5px 0px 0px; }

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none !important;
  display: inline-block;
  text-decoration: none;
  width: 1em;
  line-height: 1em;
  -webkit-font-smoothing: antialiased; }

.icon-download:before {
  content: "a"; }

.icon-facebook-circle:before {
  content: "b"; }

.icon-mail:before {
  content: "c"; }

.icon-twitter:before {
  content: "d"; }

.icon-twitter-circle:before {
  content: "e"; }

.icon-map:before {
  content: "f"; }

.icon-book-alt2:before {
  content: "g"; }

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