/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

a, a:visited, a:link, a:active { text-decoration: none; /*-webkit-transition: color 0.1s; -moz-transition: color 0.1s; -ms-transition: color 0.1s; -o-transition: color 0.1s; transition: color 0.1s;*/ }
a:hover { text-decoration: none; }
img, embed, object, video { max-width: 100%; }

/* layout */

body { background-color: #fff; /* bdc9e8 */ font: normal 100%/1.5 "skolar", Constantia, Lucida Bright, LucidaBright, Georgia, serif; font-weight: 400; text-rendering: optimizeLegibility; }
html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
.group:before, .group:after { content: ""; display: table; } 
.group:after { clear: both; }
.group { zoom: 1; /* For IE 6/7 (trigger hasLayout) */ }

/* page */

.page-wrap { width: 100%; margin: 0 auto; /* background: url('../img/fish-bg.png') no-repeat center bottom; */ }

/* mast */

.site-header { width: 100%; float: left; display: inline; margin: 0; padding: 0; /* background-color: #00c0ff; #0055a6 */ background: #002a53 url('../img/top-bg.jpg') repeat 0 0; }
.masthead { width: 90%; max-width: 1024px; margin: 0 auto; }
.logo { width: 25%; float: left; display: inline; margin: 0; }
.logo img { width: 90%; display: block; }
.logo p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; font-weight: 400; color: #999; margin: 0 0 0 10.5em; }
.phone { padding: 0; margin: 0 0 0.6875em 0; font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.5em; font-weight: 400; color: #80aad3; }
.phone strong { color: #fff; }

/* nav */

.nav { width: 75%; float: left; display: inline; text-align: right; margin: 1.125em 0 0 0; padding: 0; }
.nav ul { float: right; display: inline; padding: 0; margin: 0; }
.nav li { display: inline-block; padding: 0; margin: 0; list-style: none; }
.nav ul li a { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; line-height: 1.125em; font-weight: 400; color: #bfd4e9; padding: 0.3875em 0.6875em; display: block; text-decoration: none; margin: 0; white-space: nowrap; }
.nav ul li:last-child, .nav ul li.here:last-child { border: 0px; }
.nav ul li a:hover { color: #fff; text-decoration: none; }
.nav ul li a.hover:hover { background-color: #00152a; }
.nav ul li:hover a.hover { color: #fff; background-color: #00152a; }
.nav ul li.here a { font-weight: 700; color: #fff; text-decoration: none; }
.nav ul li.here a:hover { color: #fff; }
.nav ul li a.bookings { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; font-weight: 700; color: #fff; padding: 0.2875em 0.6875em 0.3875em 0.6875em; display: block; text-decoration: none; background-color: #f26522; margin: -0.0875em 0 0 0.6875em; border-top: 3px solid #f58c59; border-left: 3px solid #f58c59; border-right: 3px solid #793211; border-bottom: 3px solid #793211; }
.nav ul li a.bookings:hover { color: #fff; background-color: #b54c19; text-decoration: none; }

/* drop down */

.nav ul li ul { float: right; display: inline; margin: 0; padding: 0.6875em 0; background-color: #00152a; }
.nav ul li ul li { display: block; width: 13em; border-right: 0px; border-bottom: 2px solid #1f3144; padding: 0; margin: 0; text-align: left; }
.nav ul li ul li:last-child { padding: 0; }
.nav ul li ul li a, .nav ul li:hover ul li a { background-color: #00152a; color: #808a95; padding: 0.3875em 0.6875em; text-decoration: none; }
.nav ul li ul li a:hover, .nav ul li:hover ul li a:hover { color: #fff; background-color: #1f3144; text-decoration: none; }
.nav ul li:hover ul li a { text-decoration: none; background-color: #00152a; }
.nav ul li.here ul li { display: block; width: 13em; border-right: 0px; border-bottom: 2px solid #1f3144; }
.nav ul li.here:hover ul li a { font-weight: 400; }
.nav ul li.here ul li a { font-weight: 400; background-color: #00152a; color: #808a95; text-decoration: none; }
.nav ul li.here ul li a:hover { color: #fff; background-color: #1f3144; text-decoration: none; }

/* superfish */

.sf-menu, .sf-menu * { display: inline-block; margin: 0; padding: 0; list-style: none; z-index: 999; }
.sf-menu li { position: relative; }
.sf-menu ul { position: absolute; display: none; top: 100%; left: 0; z-index: 999; }
.sf-menu > li { float: left; }
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul { display: block; }
.sf-menu a { display: block; position: relative; }
.sf-menu ul ul { top: 0; left: 100%; }

/* feature */

.feature img { display: block; }
.feature_bg { width: 100%; float: left; display: inline; }
.feature-border { background-color: #fff; display: block; border: 0.3875em solid #fff; -moz-box-shadow: 0px 0px 5px #ccc; -webkit-box-shadow: 0px 0px 5px #ccc; box-shadow: 0px 0px 5px #ccc; margin: 0 0 1.375em 0; }

.main .figcaption h3 { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 400; color: #000; font-size: 1.5em; margin: 0; padding: 0; }
.main .figcaption p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; color: #666; margin: 0; padding: 0; font-size: 1em; }
.main .figcaption p a { color: #000; text-decoration: underline; }
.main .figcaption p a:hover { text-decoration: none; }
.main .figcaption { right: 0; bottom: 2.75em; position: absolute; z-index: 15; background-color: #fff; background: rgba(255, 255, 255, 0.75); padding: 0.6875em 1.375em 0.9875em 1.375em; }

/* copy */

.copy_bg { width: 100%; float: left; display: inline; margin: 0 0 1.375em 0; background: #fff url('../img/bg.jpg') repeat-x 0 0; padding: 0.6875em 0 0 0; }
.copy_bg_margin { margin: 0 0 2.75em 0; }
.copy { width: 90%; max-width: 1024px; margin: 0 auto; }

/* images */

.entry-figure { width: 45%; float: right; display: inline; margin: 1.375em 0 1.375em 1.375em;  }
.entry-figure img { width: 90%; display: block; border: 0.3875em solid #fff; -moz-box-shadow: 0px 0px 5px #a6b1cc; -webkit-box-shadow: 0px 0px 5px #a6b1cc; box-shadow: 0px 0px 5px #a6b1cc; }
.entry-figure-large { width: 100%; margin: 0 0 1.375em 0; }
.entry-figure-large img { width: 98%; display: block; border: 0.3875em solid #fff; -moz-box-shadow: 0px 0px 5px #a6b1cc; -webkit-box-shadow: 0px 0px 5px #a6b1cc; box-shadow: 0px 0px 5px #a6b1cc; }
.entry-figure-map { width: 100%; float: right; display: inline; margin: 0 0 1.375em 0; border: 0.3875em solid #fff; -moz-box-shadow: 0px 0px 5px #a6b1cc; -webkit-box-shadow: 0px 0px 5px #a6b1cc; box-shadow: 0px 0px 5px #a6b1cc; background-color: #a4bedc; }
.entry-figure-map img { display: block; }

/* main */

.main { width: 70%; float: left; display: inline; margin: 0; padding: 0; }
.main h1 { color: #0055a6; font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 2.5em; line-height: 1.25em; margin: 0 0 0.3875em 0; font-weight: 700; }
.main h2 { color: #000; font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.375em; line-height: 1.6em; margin: 0 0 0.3875em 0; font-weight: 700; }
.main h3, .main h4, .main h5, .main h6 { color: #000; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; line-height: 1.6em; margin: 0 0 0.3875em 0; font-weight: 800; }
.main p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; /* 18px / 16px */ line-height: 1.6em; margin: 0 0 0.6875em 0; /* 24px / 16px */ font-weight: 400; color: #666; padding: 0; }
.main p a { color: #e8860c; text-decoration: underline; }
.main p a:hover { color: #ae6409; text-decoration: underline; }
.main p strong { color: #000; font-weight: 700; }
.main ul { margin: 0 0 1.375em 0; }
.main li { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; /* 18px / 16px */ line-height: 1.6em; margin: 0 0 0.3875em 2.75em; /* 24px / 16px */ font-weight: 400; color: #5e6474; padding: 0; list-style: circle; }
.main-padding { width: 100%; float: left; display: inline; margin: 1.375em 0 0 0; }
.main-figure { width: 40%; float: right; display: inline; margin: 0.6875em 0 1.375em 1.375em; border: 0.3875em solid #fff; -moz-box-shadow: 0px 0px 5px #a6b1cc; -webkit-box-shadow: 0px 0px 5px #a6b1cc; box-shadow: 0px 0px 5px #a6b1cc; }
.main-figure img { width: 100%; display: block; }

/* sidebar */

.sidebar { width: 30%; float: left; display: inline; margin: 1.375em 0 0 0; }
.sidebar h3 { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.375em; /* 24px / 16px */ line-height: 1.125em; font-weight: 700; color: #000; margin: 0 0 0.3875em 0; }
.sidebar h4 { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; /* 24px / 16px */ line-height: 1.6em; font-weight: 700; color: #000; margin: 0.6875em 0 0 0; }
.sidebar p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; /* 18px / 16px */ line-height: 1.6em; margin: 0 0 0.6875em 0; /* 24px / 16px */ font-weight: 400; color: #fff; padding: 0; }
.sidebar p strong { font-weight: 400; color: #fff; }
.sidebar p a { color: #0055a6; text-decoration: underline; }
.sidebar p a:hover { color: #000; text-decoration: underline; }
.sidebar ul { margin: 0; padding: 0; }
.sidebar ul li { margin: 0; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; padding: 0.3875em 0 0.6875em 0; /* 24px / 16px */ font-weight: 400; color: #fff; list-style: none; border-bottom: 2px solid #bdc9e8; }
.sidebar ul li:last-child { border: 0px; }
.sidebar ul li a { color: #0055a6; text-decoration: underline; }
.sidebar ul li a:hover { color: #000; text-decoration: underline; }
.sidebar ul li strong { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 700; color: #000; list-style: none; }
.sidebar ul li strong a { color: #000; text-decoration: none; }
.sidebar-figure { width: 35%; float: right; display: inline; margin: 1.375em 0 1.375em 0.3875em; border: 5px solid #fff; -moz-box-shadow: 0px 0px 5px #a6b1cc; -webkit-box-shadow: 0px 0px 5px #a6b1cc; box-shadow: 0px 0px 5px #a6b1cc; }
.sidebar-figure img { width: 100%; display: block; }
.sidebar-padding { float: left; display: inline; margin: 0 0 1.375em 2.0625em; padding: 1.375em; background-color: #80aad3; /* 80aad3 border-left: 3px solid #ccc; */ }
.sidebar ul li.sidebar-phone { font-size: 1em; }

.sidebar .testimonials { float: left; display: inline; padding: 0.6875em 3.4375em 1.375em 3.4375em; /* background-color: #bfd4e9; /* border-bottom: 3px solid #a6c4e0; border-top: 3px solid #a6c4e0; */ }
.sidebar .testimonials p { font-size: 1em; color: #5f6a74; }
.sidebar .testimonials p.author { font-size: 1em; color: #0055a6; }
.sidebar .testimonials h3 { color: #000; }

/* btn */

a.btn { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; font-weight: 700; color: #f26522; padding: 0.3875em 0.6875em 0.2875em 0.6875em; display: inline-block; text-decoration: none; background-color: #fff; border: 3px solid #f26522; margin: 0.6875em 0 1.375em 0; /* text-transform: uppercase; letter-spacing: 1px; border-top: 3px solid #f58c59; border-left: 3px solid #f58c59; border-right: 3px solid #793211; border-bottom: 3px solid #793211; /* -o-border-radius: 6px; -ms-border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; */ }
a.btn:hover { background-color: #f26522; color: #fff; text-decoration: none; }

/* full-width */

.full-width { width: 100%; float: left; display: inline; margin: 0; }
.full-width h1 { color: #0055a6; font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 2em; line-height: 1.25em; margin: 0 0 0.3875em 0; font-weight: 700; }
.full-width p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; /* 18px / 16px */ line-height: 1.6em; margin: 0 0 0.6875em 0; /* 24px / 16px */ font-weight: 400; color: #5e6474; padding: 0; }
.full-width p a { color: #e8860c; text-decoration: underline; }
.full-width p a:hover { color: #ae6409; text-decoration: underline; }

/* slat */

.slat { float: left; display: inline; padding: 1.375em 0; border-top: 3px solid #bfd4e9; }
.slat p { padding: 0 1.375em; }
p.author { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; font-weight: 700; color: #000; margin: 0 0 0 1.375em; padding: 0; }

/* form */

.booking label { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.75em; font-weight: 700; color: #000; line-height: 1.125em; margin: 0 0 0.3875em 0; display: block; text-transform: uppercase; }
.booking label span { color: #e8860c; }
.text_field { width: 50%; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; font-weight: 400; color: #5e6474; padding: 0.3875em; margin: 0 0 0.6875em 0; border: 2px solid #bfd4e9; }
.email_field { width: 75%; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; font-weight: 400; color: #5e6474; padding: 0.3875em; margin: 0 0 0.6875em 0; border: 2px solid #bfd4e9; }
.textarea_field { width: 90%; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; font-weight: 400; color: #5e6474; padding: 0.3875em; margin: 0 0 0.6875em 0; height: 7em; border: 2px solid #bfd4e9; }
.number_field { width: 25%; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; font-weight: 400; color: #5e6474; padding: 0.3875em; margin: 0 0 0.6875em 0; border: 2px solid #bfd4e9; }
.btn_submit { -webkit-appearance: none; font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; font-weight: 700; color: #f26522; padding: 0.3875em 0.6875em 0.2875em 0.6875em; display: inline-block; text-decoration: none; background-color: #fff; border: 3px solid #f26522; margin: 0.6875em 0 1.375em 0; }
.btn_submit:hover { background-color: #f26522;  color: #fff; }
.error { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.75em; font-weight: 700; color: #e8860c; margin: 0 0 0.3875em 0; display: block; }

/* footer */

.footer_bg { width: 100%; float: left; display: inline; margin: 0; padding: 0; }
.footer { width: 90%; max-width: 1024px; margin: 0 auto; padding: 0; }
.footer p { font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 0.875em; line-height: 1.6em; font-weight: 400; color: #999; margin: 0 0 0.6875em 0; }
.footer p span { color: #999; }
.footer p strong { color: #333; font-weight: 400; }
.footer p a { color: #0055a6; text-decoration: underline; }
.footer p a:hover { color: #000; text-decoration: underline; }
.footer-nav { width: 100%; float: left; display: inline; padding: 0.6875em 0 0 0; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; margin: 0 0 1.375em 0; }

/* mobile */

.nav ul li.mobile-hide { display: none; }
.nav-hide { display: inline; }
.hide { display: none; }
.mobile_bg { width: 100%; margin: 0; background-color: #00152a; }
.mobile { width: 100%; max-width: 960px; margin: 0 auto; }
.mobile ul li { float: right; display: inline; background-color: #00152a; margin: 0; padding: 0; }
.mobile ul li a { display: block; padding: 0.6875em 0.6875em 0.4875em 0.6875em; margin: 0; }
#mobile_nav ul { margin: 0; padding: 0; }
#mobile_nav { float: right; display: inline; background-color: #00152a; }
#mobile_nav ul li { width: 100%; list-style: none; float: left; display: block; margin: 0; padding: 0; }
#mobile_nav ul li a { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1.125em; display: block; padding: 0.3875em 1.375em; text-decoration: none; color: #bfd4e9; border-bottom: 2px solid #1f3144; }
#mobile_nav ul li a:hover { color: #fff; }
#mobile_nav ul li:last-child a { border-bottom: 0px; }
#mobile_nav ul li ul { width: 100%; list-style: none; float: left; display: block; margin: 0; padding: 0; }
#mobile_nav ul li ul li a { font-family: "nimbus-sans-extended", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 1em; display: block; padding: 0.3875em 2.75em; text-decoration: none; color: #bfd4e9; border-bottom: 2px solid #1f3144; }

/* responsive */

@media only screen and (max-width: 1024px) {
    .nav ul li a { font-size: 0.875em; }
    .nav ul li ul li a, .nav ul li:hover ul li a { font-size: 0.875em; }
    .nav ul li a.bookings { font-size: 0.875em; }
    .phone { font-size: 1em; }
}
@media only screen and (max-width: 785px) { 
    .nav ul li.nav-hide { display: none; }
    .mobile_nav { display: inline; }
    .nav ul li.mobile-hide { display: inline; }
    .hide { display: inline; }
    .figcaption h2 { font-size: 1.375em; }

    .nav ul li a.bookings { font-size: 1em; }
    .logo { width: 35%; }
    .logo img { width: 100%; }
    .nav { width: 65%; padding: 0.3875em 0 0 0; }
    .nav ul li a { padding: 0 0.3875em; display: inline-block; }
}
@media only screen and (max-width: 768px) {
    .main { width: 100%; margin: 0 0 1.375em 0; }
    .main-padding { margin: 0; } 
    .sidebar { width: 100%; }
    .sidebar-padding { margin: 0; }
    .sidebar-figure { display: none; }
    .sidebar-figure img { display: none; }
    .sidebar ul li a { -webkit-appearance: none; }
    .phone { font-size: 1.5em; margin: 0; }
}
@media only screen and (max-width: 480px) {
    .logo { width: 45%; }
    .nav { width: 55%; }
    .figcaption { display: none; }
    .copy_bg_margin { margin: 1.375em 0; }
    .phone { font-size: 1em; margin: 0; }
    .sidebar { margin: 0 0 1.375em 0; }
    .sidebar .testimonials { padding: 1.75em 0 0 0; }
    .copy_bg { margin: 0; }
    a.btn { margin: 0.6875em 0 0.6875em 0; }
    .slat p { padding: 0; }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
