@charset "iso-8859-1";
#content * { -webkit-animation: fadein 2s; -moz-animation: fadein 2s; -ms-animation: fadein 2s; -o-animation: fadein 2s; animation: fadein 2s; }
 @keyframes fadein { from {
opacity: .0;
}
to { opacity: 1; }
}
@-moz-keyframes fadein { from {
opacity: 0;
}
to { opacity: 1; }
}
@-webkit-keyframes fadein { from {
opacity: .0;
}
to { opacity: 1; }
}
@-ms-keyframes fadein { from {
opacity: 0;
}
to { opacity: 1; }
}
@-o-keyframes fadein { from {
opacity: 0;
}
to { opacity: 1; }
}
html, body { width: 100%; height: 100vh; min-height: 100vh; background: #fff; position: relative; border-top: #900 6px solid; }
body { margin: 0; padding: 0 0 0 0; font: normal 16px/140% 'Open Sans', arial, verdana, sans-serif; color: #4c5c69; text-shadow: 0px 0px 1px transparent; /* google font pixelation fix */ }
#progress-cont { height: 12px; position: fixed; width: 100%; top: 0px; left: 0px; z-index: 99999; background: #990000; }
#progress-bar { height: 100%; background-color: #000; }
header { background: #fff; position: relative; min-height: 80px; float: left; width: 100%; text-align: center; border-bottom: 1px solid #000; }
header *[class*="col_"] { margin-top: 0; margin-bottom: 0; }
footer { position: relative; clear: both; width: 100%; left: 0; bottom: 0; padding-top: 1.2em; min-height: 12em; background: #323C45; color: #999; border-top: #900 12px solid; }
#footerlogo { width: 160px; }
#footerBottom { background: #000; margin-top: 3em; padding: 1em; }
#logo { margin: 1em 2em; width: 200px; }

/*---------------------------------
	HEADINGS
-----------------------------------*/
h1, h2, h3, h4, h5, h6 { font-family: "Oswald", arial, verdana, sans-serif; font-weight: 300; line-height: 120%; }
h1 { font-size: 2.6em; margin: 30px 0 10px 0; font-weight: 700; text-transform: uppercase; }
h1.slogan { font-weight: 400; margin-top: 5em; }
h2 { font-size: 2.05em; margin: 20px 0 10px 0; font-weight: 300; }
h3 { font-size: 1.6em; margin: 20px 0 10px 0; }
h4 { font-size: 1.35em; margin: 10px 0 10px 0; font-weight: 700; }
h5 { font-size: 1.2em; margin: 10px 0 10px 0; font-weight: 700; }
h6 { font-size: 1.1em; margin: 10px 0 5px 0; font-weight: 700; }
/*---------------------------------
	HTML ELEMENTS
-----------------------------------*/
* { -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */ -moz-box-sizing: border-box;    /* Firefox, other Gecko */ box-sizing: border-box;         /* Opera/IE 8+ */ }
a { color: #658ce2; outline: 0; text-decoration: none; }
a:active { color: inherit; }
a:visited { }
a:hover { }
a img { border: 0; }
a [class^="icon-"] { color: inherit; text-decoration: none; }
strong, b { font-weight: bold; }
strike { }
em, i { }
.hide { display: none; }
.show { display: block; }
/*---------------------------------
	UTILITY
-----------------------------------*/
.center { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
/*---------------------------------
	HR
-----------------------------------*/
hr { clear: both; border-bottom: 0; border-top: 1px dotted #ccc; border-right: 0; border-left: 0; margin: 30px 0; min-height: 0; height: 1px; }
hr.alt1 { border-style: solid; }
hr.alt2 { border-style: dashed; }
/*---------------------------------
	HTML5 ELEMENTS (shim)
-----------------------------------*/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
/*---------------------------------
	PARAGRAPHS
-----------------------------------*/
p { margin: 10px 0; }
main p {margin: 10px 10vw; }
/*---------------------------------
	BLOCKQUOTES
-----------------------------------*/
blockquote { font-size: 1.2em; line-height: 1.3em; font-style: italic; margin: 30px 30px 30px 80px; padding: 0 0 0 20px; border-left: 1px solid #ccc; }
blockquote span { font-size: 0.7em; display: block; }
blockquote.small { font-size: 1.2em; }
.tab-content blockquote { font-size: 1.0em; line-height: 1.3em; font-style: normal; margin: 30px 30px 30px 80px; padding: 0 0 0 20px; border-left: 1px solid #ccc; }
/*---------------------------------
	Forms
-----------------------------------*/
input[type="text"],input[type="email"],input[type="tel"],input[type="number"], textarea, select   { border-radius:0; padding: 8px 10px; border: 1px #efefef solid; outline: none; margin: 0 0 12px!important; font-family:  'Open Sans', arial, verdana, sans-serif; font-size: 1em; }
input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,input[type="number"]:focus, textarea:focus, select:focus   { 
border: 1px rgb(88 112 228) solid;  box-shadow: 0 0 12px rgb(88 112 228); outline: none;
}
input[type="text"]:focus-visible,input[type="email"]:focus-visible,input[type="tel"]:focus-visible,input[type="number"]:focus-visible, textarea:focus-visible, select:focus-visible   { outline: none;
border: 1px rgb(88 112 228) solid;  box-shadow: 0 0 12px rgb(88 112 228); 
}
label { font-weight: bold; } 
/*---------------------------------
	LISTS
-----------------------------------*/
ul, ol { padding: 0; margin: 0 0 20px 55px; }
li { padding: 5px 0; margin: 0; }
ul.list-unstyled { padding: 0; margin: 0 0 20px 0; }
ul.list-unstyled li { padding: 5px 0; margin: 0; list-style-type: none; }
ul.alt { padding: 0; margin: 0 0 20px 0; }
ul.alt li { list-style-type: none; border-top: 1px dotted #ccc; border-bottom: 1px dotted #ccc; margin: 0 0 -1px 0; background: url(img/icon-arrow-right.png) no-repeat 5px 0.7em; padding-left: 20px; }
ul.icons { margin: 0 0 20px 0; padding: 0; }
ul.icons li { list-style-type: none; margin: 0; padding: 5px 0; }
/* ---------------------------------
HOME
---------------------------------*/
#intro { background: url(/assets/portfolio/large/Connor-324.jpg)  center center no-repeat; height: 90vh; max-height: 800px;  background-size: cover; }
body.Home .row{ display:flex; margin:0; }
.half-page {width: 50%;min-width: 50vw;max-width: 50vw; min-height: 400px;  margin:0;}

.half-page.text  {background: #4267b1; color: #fff; padding: 2em;}

.half-page.text.black  {background: #222;}
.half-page.text a.button { margin-right: 0em;    display: inline-block; }
.half-page.photo  {background: #000; color: #fff; padding: 0em; background-repeat:no-repeat; background-size:cover; background-position:center center; }


#homeRealEstate { background-image:url(/assets/portfolio/Lamprey_RE_Sandwich/LampreyRE-13Main-Sandwich-SWD_9366.jpg); }
#homeRestaurants { background-image:url(/assets/portfolio/Six_Burner/SixBurner00056.jpg); }
#homeBiz{background-image:url(/assets/portfolio/NEDUPE-000533.jpg);}



/* ---------------------------------
PORTFOLIO 
---------------------------------*/

#portfolioBlockHome { text-align: center; }
.portfolioBlockHome { padding: .5em; background: #fff; color: #333; width: 18%; margin: .5em; display: inline-block; vertical-align: top; position: relative; min-height: 310px; }
.title { background: #333; padding: 6px; margin: -8px calc(-8px) 2px; color: #fff; display: flex; height: 60px; justify-content: center; flex-direction: column; text-align: center; width: -moz-calc(100% + 16px); width: calc(100% + 16px); }
.desc { font-size: .8em; line-height: 110%; display: block; margin: .5em 0; }
.crop { height: 150px; width: 100%; overflow: hidden; }
.crop img { width: 100%; height: auto; position: relative; top: 50%; -webkit-transform: translateY(-50%); /* Ch <36, Saf 5.1+, iOS < 9.2, An =<4.4.4 */ -ms-transform: translateY(-50%); /* IE 9 */ transform: translateY(-50%); /* IE 10, Fx 16+, Op 12.1+ */ }
.link { display: block; position: absolute; bottom: 7px; width: 100%; }
.portgrid { position: relative; }
.grid-item { width: 31.666666666667%; margin: .5em; }
.grid-item--width2 { width: 400px; }
div.portfolio { background: #F0F0F0; border: 1px solid #ccc; padding: 10px; overflow: visible; }
.pImg { margin: 1em 0; }
.introBlurb { margin: 0 15% 2em; padding: 1em 2em; font-size: 1.2em; text-align: center; color: #999; border-left: dotted 1px #777; border-right: dotted 1px #777; }
/*--------
MISC
------------*/
a.actioncall { background: #900; display: inline-block; text-transform: uppercase; font-weight: bold; color: #fff; text-decoration: none; padding: .5em 2em; margin: 2em auto; font-size: 1.6em; max-width: 90%; box-shadow: 0 6px 12px rgba(0,0,0,.5); }

body.Home a.actioncall {width: 100%; max-width: 100vw; margin: 0;padding: 0.7em 2em .2em;}

body.Home .actionWrap{width: 100%; margin: 0;background: #900; }
fullWidth {width: 100%;} 

.breakout { margin: 2em calc(50% - 50vw); overflow: auto; }
.breakoutNoMarg { margin: 0em calc(50% - 50vw); overflow: auto; }
.breakoutNoMarg > .grid { padding: 0 1.5em }
.tight *[class*="col_"] { margin-left: 0.83333333333333%; margin-right: 0.83333333333333%; margin-top: 0.0em!important; margin-bottom: 0.0em!important; }
.bg1 { background: #fff; padding: 2em 0; border-top: 1px dotted #ccc; border-bottom: 1px dotted #ccc; }
.bg2 { background: #323C45; padding: 2em 0; color: #fff; }
.box { padding: 16px; border-radius: 12px; border: 4px solid #999; box-shadow: 0 0 8px #999; }
.halo { box-shadow: 0 0 8px rgba(0,0,0,.9) }
.padLeft{ padding-left: 1.5em;}
.scrollTo { cursor: pointer; opacity: .5; }
.scrollTo:hover { opacity: 1; }
.clickme { position: fixed; z-index: 20; bottom: 260px; right: 10px; display: none; opacity: .5; }
.clickme:hover { opacity: 1 }
#arrowup { width: 32px; background: #fff; border-radius: 0px;  }
.scrollTo, .clickme  { transition: all 0.5s ease; }

  input, select, textarea  { transition: all 0.75s ease; }

.question {font-weight: bold;}
.answer {margin-left: 1.5em; margin-bottom: 2em;}

.blackBar { padding: .5em; color: #fff; background: #323C45; }
.redBar { padding: .5em; color: #fff; background: #900; }
.redText { color: #900; }
.whiteText { color: #fff}
.bgRed { background: #900; color: #fff; }
.bgBlack { background: #000; color: #fff; }
.bgDkGrey { background: #323C45; color: #fff; }
.bgRed > .grid > h2, .bgBlack > .grid > h2, .bgRed > .grid > h3, .bgBlack > .grid > h3 { padding: 1em 0 }
.bigText { font-size: 1.5em; line-height: 130%; }
.bigBox { padding: 2em; }
.bigBoxGrey { padding: 2em; background: #777; color: #fff; }
.largeText { font-size: 2.2em; line-height: 130%; }
.lightText { font-weight: 300; font-family: "Open Sans", arial, verdana, sans-serif; }
.padH { padding: 0 5%; }
.padH > p, .padH > ul, .padH > ol { padding: 0 10%; }
ul ul { margin-bottom: 1em; }
.padV { padding: 1em 0 }
.padItem * { padding: .25em; }
.narrowPage { max-width: 800px!important; margin: 0 auto; }
/* other  */


.roundnum { float: left; display: inline-block; background: #15007f; color: #fff; -webkit-border-radius: 15px; border-radius: 15px; /*    font: 500 16px/16px 'Raleway';*/ width: 30px; height: 30px; text-align: center; margin-left: -38px; }

a.button, button, input[type=submit] { padding: 10px 25px;}

a.button.black, button.black, input[type=submit].black { color: #fff; text-decoration: none;  background: rgba(0,0,0,1); /* #191919 */  }
a.button.red, input[type=submit].red, a.button.red:hover, input[type=submit].red:hover { color: #fff; text-decoration: none;  background: #900; }
a.button.black:active, a.button.black:focus { box-shadow: 0 0 0 transparent inset; }
a.button.blue, button.blue, input[type=submit].blue { color: #fff; text-decoration: none;   background: #4267b1;   }


.button.large { font-size: 1.2em; padding: 16px 12px; }
label.error {color: #900; display:inline-block; padding-left: 6px; }
div.multiColumn { padding: 1em 0 0 0; -moz-column-count: 2; -moz-column-gap: 20px; -webkit-column-count: 2; -webkit-column-gap: 20px; column-count: 2; column-gap: 20px; -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }
div.multiColumn3 { padding: 1em 0 0 0; -moz-column-count: 3; -moz-column-gap: 20px; -webkit-column-count: 3; -webkit-column-gap: 20px; column-count: 3; column-gap: 20px; -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }
.multiColumn li, .multiColumn3 li { -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }
.multiColumn3 ul { }
.multiColumn3 a { text-decoration: none; color: #036; font-size: 1.2em; }
#socMedia * { vertical-align: middle; margin-right: 6px; }
.introText {text-align: center; font-size: 1.2em; padding: 1.5em; margin: 0 auto; max-width: 860px;  }
.bigText { font-size: 140%; line-height: 120%; }
.bigText2 { font-size: 200%; line-height: 120%; }
.redText { color: #900; }
.greenText { color: #063 }


/*--------
GRID
------------*/
.grid { max-width: 1280px; margin: 0 auto; padding: 0 0em; }
.grid.flex { width: 100%; max-width: 100%; padding: 0 2%; padding: 2em; }
.row { display: block; overflow: hidden; clear: both; margin-top: 2em; }
*[class*="col_"].alpha { margin-left: 0; }
*[class*="col_"].omega { margin-right: 0; }
.col_1 { width: 6.6666666666667%; }
.col_2 { width: 15%; }
.col_3 { width: 23.333333333333%; }
.col_4 { width: 31.666666666667%; }
.col_5 { width: 40%; }
.col_6 { width: 48.333333333333%; }
.col_7 { width: 56.666666666667%; }
.col_8 { width: 65%; }
.col_9 { width: 73.333333333333%; }
.col_10 { width: 81.666666666667%; }
.col_11 { width: 90%; }
.col_12 { width: 98.333333333333%; }
*[class*="col_"] { margin-left: 0.83333333333333%; margin-right: 0.83333333333333%; margin-top: 0.5em; margin-bottom: 0.5em; float: left; display: block; }
.grid img, img { max-width: 100%; height: auto; }
.clear { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0 }
.clearfix:after { clear: both; content: ' '; display: block; font-size: 0; line-height: 0; visibility: hidden; width: 0; height: 0 }
* html .clearfix, *:first-child+html .clearfix { zoom: 1 }

/*--------
MENU
------------*/
.menu { margin: 0; padding: 0; line-height: 100%; font-size: 0; /* Kill white space gap between LI elements */ position: relative; z-index: 1000; }
.menu:after { clear: both; content: ' '; display: block; font-size: 0; line-height: 0; visibility: hidden; width: 0; height: 0 }
.menu li { margin: 0; padding: 0; list-style-type: none; display: inline-block; *display:inline;
position: relative; zoom: 1; line-height: inherit; top: 0; left: 0; font-size: 16px; /* fixed font-size to replace font-size:0 in parent .menu 1em/16px default */ }



.menu li a { margin: 0; padding: 0; display: block; display: inline; display: inline-block; position: relative; zoom: 1; line-height: 100%; top: 0; left: 0; }
/*--------------Sub Menus-------------------*/
	/*.menu li:hover > ul{display:block;}*/
.menu ul { margin: 0; padding: 0; position: absolute; top: 100%; left: 0; display: none; min-width: 200px; max-width: 250%; *width:200px;
}
.menu ul li { display: block; width: 100%; }
.menu ul li a { display: block; }
.menu ul ul { top: 0; left: 100%; }
/*--------------Dividers-------------------*/
.menu ul li.divider { border-top: 1px solid #ccc; }
.menu ul li.divider a { border-top: 1px solid #fff; }
/*--------------Right---------------------*/
.menu li.right { float: right; }
/*--------------Arrows-------------------*/
.menu li.has-menu a { padding-right: 25px; }
.menu li.has-menu span.arrow { border-style: solid; border-width: 5px; display: block; position: absolute; top: 50%; right: 5px; font-size: 0; line-height: 0; height: 0; width: 0; }
.menu li li.has-menu span.arrow { margin-top: -4px; }
.menu { z-index: 600; }
.menu li { }
/*.menu li:not(:first-of-type):before*/
.menu li.dot:before { position: relative; width: 0.6em; text-align: center; content: '•'; vertical-align: middle; display: inline-block; font-size: 1.6em; top: -.3em; color: #999; }
.menu li a { padding: 15px 20px; text-decoration: none; font-size: 1em; color: #000; font-family: "Oswald"; font-size: 1.8em; color: #999; text-transform: uppercase; }
.menu li.current>a, .menu li.current>a:hover, .menu li.current.hover>a { background: rgb(122,188,255); cursor: default; }
.menu li a:hover, .menu li.hover>a { color: #000; }
/* sub menus */
.menu ul { background: rgba(0,0,0,.8); color: #fff; }
.menu ul li { }
.menu li ul li:before { content: ''; display: none; }
.menu ul li a { color: #fff; font-size: 1.1em; }
.menu ul li a:hover { background: #000; color: #fff; }
/* sub-sub menus */
.menu ul ul { }
.menu ul ul li { }
.menu ul ul li a { }
/* arrows */
	/* arrow down */  .menu li.has-menu span.arrow { border-color-top: #ccc; border-color: #ccc transparent transparent transparent; }
/* arrow left */  .menu li li.has-menu span.arrow, .menu.vertical li.has-menu span.arrow { border-color-left: #ccc; border-color: transparent transparent transparent #ccc; }
/* arrow right */ .menu.vertical.right li.has-menu span.arrow { border-color-right: #ccc; border-color: transparent #ccc transparent transparent; }
/* dividers */ 	  .menu ul li.divider { border-top: 1px solid #ccc; }
.menu ul li.divider a { border-top: 1px solid #fff; }


#footerNav .menu li { margin: 0; padding: 0; list-style-type: none; display: block; }
#footerNav .menu li a { padding: .25em 20px; text-decoration: none; font-size: 1.25em; font-family: "Oswald";   color: #999; text-transform: inherit; }
#footerNav .menu li a:hover {  color: #fff;}
/*---------------------------------
	RESPONSIVE MENU STYLES
	DO NOT EDIT unless you know what you are doing
-----------------------------------*/

.menu li.menu-toggle { display: none; }
 @media all and (max-width: 768px) {
.grid .menu li, .grid .menu.vertical li, .grid .menu.vertical.right li { display: block; display: none; }
.grid .menu li.menu-toggle, .grid .menu.vertical li.menu-toggle, .grid .menu.vertical.right li.menu-toggle { display: block; }
.grid .menu:hover li, .grid .menu.vertical:hover li, .grid .menu.vertical.right:hover li { display: block; }
/* arrows */
.grid .menu li.has-menu span.arrow, .grid .menu.vertical li.has-menu span.arrow, .grid .menu.vertical.right li.has-menu span.arrow, .grid .menu li li.has-menu span.arrow, .menu.vertical li.has-menu span.arrow { border-color-top: #ccc; border-color: #ccc transparent transparent transparent; }
.grid .menu.vertical.right li.has-menu span.arrow { right: 5px; left: auto; }
.grid .menu li a { display: block; }
.grid .menu ul, .grid .menu ul ul, .grid .menu.vertical ul, .grid .menu.vertical.right ul { position: relative; top: 0; left: 0; margin: 10px; }
}
/* Viewable Grids 
	To view your grids, add the class .visible to any grid container.
	This will add a background color so you can see the layout of your grids. 
*/
*[class*="col_"].visible { background: #eee; border: 1px dotted #ccc; }
/*---------------------------------
	Responsive Grid Media Queries - 1280, 1024, 768, 480
	1280-1024 	- desktop (default grid)
	1024-768 	- tablet landscape
	768-480 	- tablet 
	480-less 	- phone landscape & smaller
-----------------------------------*/
@media all and (min-width: 1024px) and (max-width: 1280px) {
.grid *[class*="col_"] { }
.grid { max-width: 90%; }
.show-desktop { display: block; }
.hide-desktop { display: none; }
.show-tablet { display: none; }
.hide-tablet { display: block; }
.show-phone { display: none; }
.hide-phone { display: block; }
}
 @media all and (min-width: 768px) and (max-width: 1024px) {
.grid *[class*="col_"] { }
.grid { max-width: 100%; }
.show-desktop { display: none; }
.hide-desktop { display: block; }
.show-tablet { display: block; }
.hide-tablet { display: none; }
.show-phone { display: none; }
.hide-phone { display: block; }
}
 @media all and (min-width: 480px) and (max-width: 768px) {
.grid *[class*="col_"] { float: none; width: auto; clear: both; display: block; }
/* columns inside of columns */
.grid *[class*="col_"] [class*="col_"] { margin-left: 0; margin-right: 0; width: 100%; }
.grid { max-width: 100%; }
.show-desktop { display: none; }
.hide-desktop { display: block; }
.show-tablet { display: block; }
.hide-tablet { display: none; }
.show-phone { display: none; }
.hide-phone { display: block; }
}
 @media all and (max-width: 480px) {
.grid *[class*="col_"] { float: none; width: auto; clear: both; display: block; }
/* columns inside of columns */
.grid *[class*="col_"] [class*="col_"] { margin-left: 0; margin-right: 0; width: 100%; }
.grid { max-width: 100%;/*320*/ }
.show-desktop { display: none; }
.hide-desktop { display: block; }
.show-tablet { display: none; }
.hide-tablet { display: block; }
.show-phone { display: block; }
.hide-phone { display: none; }
.grid-item { width:98%; margin: .2em ; }
.introBlurb { margin: 0 10% 2em; padding: 1em 2em; }
}



body.compensate-for-scrollbar { overflow: hidden; }



/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
.fancybox-thumbs { width: 110px; }
.fancybox-show-thumbs .fancybox-inner { right: 110px; }
.fancybox-thumbs__list a { max-width: calc(100% - 10px); }
}

@media all and (min-height:1000px) {
#intro { background: url(/assets/portfolio/large/Connor-324.jpg)   center center no-repeat; height: 90vh; max-height: 800px;  background-size: cover; }
}



.fancybox-active { height: auto; }
.fancybox-is-hidden { left: -9999px; margin: 0; position: absolute !important; top: -9999px; visibility: hidden; }
.fancybox-container { -webkit-backface-visibility: hidden; height: 100%; left: 0; outline: none; position: fixed; -webkit-tap-highlight-color: transparent; top: 0; -ms-touch-action: manipulation; touch-action: manipulation; transform: translateZ(0); width: 100%; z-index: 99992; }
.fancybox-container * { box-sizing: border-box; }
.fancybox-outer, .fancybox-inner, .fancybox-bg, .fancybox-stage { bottom: 0; left: 0; position: absolute; right: 0; top: 0; }
.fancybox-outer { -webkit-overflow-scrolling: touch; overflow-y: auto; }
.fancybox-bg { background: rgb(30, 30, 30); opacity: 0; transition-duration: inherit; transition-property: opacity; transition-timing-function: cubic-bezier(.47, 0, .74, .71); }
.fancybox-is-open .fancybox-bg { opacity: .9; transition-timing-function: cubic-bezier(.22, .61, .36, 1); }
.fancybox-infobar, .fancybox-toolbar, .fancybox-caption, .fancybox-navigation .fancybox-button { direction: ltr; opacity: 0; position: absolute; transition: opacity .25s ease, visibility 0s ease .25s; visibility: hidden; z-index: 99997; }
.fancybox-show-infobar .fancybox-infobar, .fancybox-show-toolbar .fancybox-toolbar, .fancybox-show-caption .fancybox-caption, .fancybox-show-nav .fancybox-navigation .fancybox-button { opacity: 1; transition: opacity .25s ease 0s, visibility 0s ease 0s; visibility: visible; }
.fancybox-infobar { color: #ccc; font-size: 13px; -webkit-font-smoothing: subpixel-antialiased; height: 44px; left: 0; line-height: 44px; min-width: 44px; mix-blend-mode: difference; padding: 0 10px; pointer-events: none; top: 0; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.fancybox-toolbar { right: 0; top: 0; }
.fancybox-stage { direction: ltr; overflow: visible; transform: translateZ(0); z-index: 99994; }
.fancybox-is-open .fancybox-stage { overflow: hidden; }
.fancybox-slide { -webkit-backface-visibility: hidden; /* Using without prefix would break IE11 */
display: none; height: 100%; left: 0; outline: none; overflow: auto; -webkit-overflow-scrolling: touch; padding: 44px; position: absolute; text-align: center; top: 0; transition-property: transform, opacity; white-space: normal; width: 100%; z-index: 99994; }
.fancybox-slide::before { content: ''; display: inline-block; font-size: 0; height: 100%; vertical-align: middle; width: 0; }
.fancybox-is-sliding .fancybox-slide, .fancybox-slide--previous, .fancybox-slide--current, .fancybox-slide--next { display: block; }
.fancybox-slide--image { overflow: hidden; padding: 44px 0; }
.fancybox-slide--image::before { display: none; }
.fancybox-slide--html { padding: 6px; }
.fancybox-content { background: #fff; display: inline-block; margin: 0; max-width: 100%; overflow: auto; -webkit-overflow-scrolling: touch; padding: 44px; position: relative; text-align: left; vertical-align: middle; }
.fancybox-slide--image .fancybox-content { animation-timing-function: cubic-bezier(.5, 0, .14, 1); -webkit-backface-visibility: hidden; background: transparent; background-repeat: no-repeat; background-size: 100% 100%; left: 0; max-width: none; overflow: visible; padding: 0; position: absolute; top: 0; -ms-transform-origin: top left; transform-origin: top left; transition-property: transform, opacity; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; z-index: 99995; }
.fancybox-can-zoomOut .fancybox-content { cursor: zoom-out; }
.fancybox-can-zoomIn .fancybox-content { cursor: zoom-in; }
.fancybox-can-swipe .fancybox-content, .fancybox-can-pan .fancybox-content { cursor: -webkit-grab; cursor: grab; }
.fancybox-is-grabbing .fancybox-content { cursor: -webkit-grabbing; cursor: grabbing; }
.fancybox-container [data-selectable='true'] { cursor: text; }
.fancybox-image, .fancybox-spaceball { background: transparent; border: 0; height: 100%; left: 0; margin: 0; max-height: none; max-width: none; padding: 0; position: absolute; top: 0; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; width: 100%; }
.fancybox-spaceball { z-index: 1; }
.fancybox-slide--video .fancybox-content, .fancybox-slide--map .fancybox-content, .fancybox-slide--pdf .fancybox-content, .fancybox-slide--iframe .fancybox-content { height: 100%; overflow: visible; padding: 0; width: 100%; }
.fancybox-slide--video .fancybox-content { background: #000; }
.fancybox-slide--map .fancybox-content { background: #e5e3df; }
.fancybox-slide--iframe .fancybox-content { background: #fff; }
.fancybox-video, .fancybox-iframe { background: transparent; border: 0; display: block; height: 100%; margin: 0; overflow: hidden; padding: 0; width: 100%; }
/* Fix iOS */
.fancybox-iframe { left: 0; position: absolute; top: 0; }
.fancybox-error { background: #fff; cursor: default; max-width: 400px; padding: 40px; width: 100%; }
.fancybox-error p { color: #444; font-size: 16px; line-height: 20px; margin: 0; padding: 0; }
/* Buttons */

.fancybox-button { background: rgba(30, 30, 30, .6); border: 0; border-radius: 0; box-shadow: none; cursor: pointer; display: inline-block; height: 44px; margin: 0; padding: 10px; position: relative; transition: color .2s; vertical-align: top; visibility: inherit; width: 44px; }
.fancybox-button, .fancybox-button:visited, .fancybox-button:link { color: #ccc; }
.fancybox-button:hover { color: #fff; }
.fancybox-button:focus { outline: none; }
.fancybox-button.fancybox-focus { outline: 1px dotted; }
.fancybox-button[disabled], .fancybox-button[disabled]:hover { color: #888; cursor: default; outline: none; }
/* Fix IE11 */
.fancybox-button div { height: 100%; }
.fancybox-button svg { display: block; height: 100%; overflow: visible; position: relative; width: 100%; }
.fancybox-button svg path { fill: currentColor; stroke-width: 0; }
.fancybox-button--play svg:nth-child(2), .fancybox-button--fsenter svg:nth-child(2) { display: none; }
.fancybox-button--pause svg:nth-child(1), .fancybox-button--fsexit svg:nth-child(1) { display: none; }
.fancybox-progress { background: #ff5268; height: 2px; left: 0; position: absolute; right: 0; top: 0; -ms-transform: scaleX(0); transform: scaleX(0); -ms-transform-origin: 0; transform-origin: 0; transition-property: transform; transition-timing-function: linear; z-index: 99998; }
/* Close button on the top right corner of html content */

.fancybox-close-small { background: transparent; border: 0; border-radius: 0; color: #ccc; cursor: pointer; opacity: .8; padding: 8px; position: absolute; right: -12px; top: -44px; z-index: 401; }
.fancybox-close-small:hover { color: #fff; opacity: 1; }
.fancybox-slide--html .fancybox-close-small { color: currentColor; padding: 10px; right: 0; top: 0; }
.fancybox-slide--image.fancybox-is-scaling .fancybox-content { overflow: hidden; }
.fancybox-is-scaling .fancybox-close-small, .fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small { display: none; }
/* Navigation arrows */

.fancybox-navigation .fancybox-button { background-clip: content-box; height: 100px; opacity: 0; position: absolute; top: calc(50% - 50px); width: 70px; }
.fancybox-navigation .fancybox-button div { padding: 7px; }
.fancybox-navigation .fancybox-button--arrow_left { left: 0; left: env(safe-area-inset-left); padding: 31px 26px 31px 6px; }
.fancybox-navigation .fancybox-button--arrow_right { padding: 31px 6px 31px 26px; right: 0; right: env(safe-area-inset-right); }
/* Caption */

.fancybox-caption { background: linear-gradient(to top,  rgba(0, 0, 0, .85) 0%,  rgba(0, 0, 0, .3) 50%,  rgba(0, 0, 0, .15) 65%,  rgba(0, 0, 0, .075) 75.5%,  rgba(0, 0, 0, .037) 82.85%,  rgba(0, 0, 0, .019) 88%,  rgba(0, 0, 0, 0) 100%); bottom: 0; color: #eee; font-size: 14px; font-weight: 400; left: 0; line-height: 1.5; padding: 75px 44px 25px 44px; pointer-events: none; right: 0; text-align: center; z-index: 99996; }
 @supports (padding: max(0px)) {
 .fancybox-caption {
 padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
}
}
.fancybox-caption--separate { margin-top: -50px; }
.fancybox-caption__body { max-height: 50vh; overflow: auto; pointer-events: all; }
.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited { color: #ccc; text-decoration: none; }
.fancybox-caption a:hover { color: #fff; text-decoration: underline; }
/* Loading indicator */

.fancybox-loading { animation: fancybox-rotate 1s linear infinite; background: transparent; border: 4px solid #888; border-bottom-color: #fff; border-radius: 50%; height: 50px; left: 50%; margin: -25px 0 0 -25px; opacity: .7; padding: 0; position: absolute; top: 50%; width: 50px; z-index: 99999; }
 @keyframes fancybox-rotate {  100% {
 transform: rotate(360deg);
}
}
/* Transition effects */

.fancybox-animated { transition-timing-function: cubic-bezier(0, 0, .25, 1); }
/* transitionEffect: slide */

.fancybox-fx-slide.fancybox-slide--previous { opacity: 0; transform: translate3d(-100%, 0, 0); }
.fancybox-fx-slide.fancybox-slide--next { opacity: 0; transform: translate3d(100%, 0, 0); }
.fancybox-fx-slide.fancybox-slide--current { opacity: 1; transform: translate3d(0, 0, 0); }
/* transitionEffect: fade */

.fancybox-fx-fade.fancybox-slide--previous, .fancybox-fx-fade.fancybox-slide--next { opacity: 0; transition-timing-function: cubic-bezier(.19, 1, .22, 1); }
.fancybox-fx-fade.fancybox-slide--current { opacity: 1; }
/* transitionEffect: zoom-in-out */

.fancybox-fx-zoom-in-out.fancybox-slide--previous { opacity: 0; transform: scale3d(1.5, 1.5, 1.5); }
.fancybox-fx-zoom-in-out.fancybox-slide--next { opacity: 0; transform: scale3d(.5, .5, .5); }
.fancybox-fx-zoom-in-out.fancybox-slide--current { opacity: 1; transform: scale3d(1, 1, 1); }
/* transitionEffect: rotate */

.fancybox-fx-rotate.fancybox-slide--previous { opacity: 0; -ms-transform: rotate(-360deg); transform: rotate(-360deg); }
.fancybox-fx-rotate.fancybox-slide--next { opacity: 0; -ms-transform: rotate(360deg); transform: rotate(360deg); }
.fancybox-fx-rotate.fancybox-slide--current { opacity: 1; -ms-transform: rotate(0deg); transform: rotate(0deg); }
/* transitionEffect: circular */

.fancybox-fx-circular.fancybox-slide--previous { opacity: 0; transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0); }
.fancybox-fx-circular.fancybox-slide--next { opacity: 0; transform: scale3d(0, 0, 0) translate3d(100%, 0, 0); }
.fancybox-fx-circular.fancybox-slide--current { opacity: 1; transform: scale3d(1, 1, 1) translate3d(0, 0, 0); }
/* transitionEffect: tube */

.fancybox-fx-tube.fancybox-slide--previous { transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg); }
.fancybox-fx-tube.fancybox-slide--next { transform: translate3d(100%, 0, 0) scale(.1) skew(10deg); }
.fancybox-fx-tube.fancybox-slide--current { transform: translate3d(0, 0, 0) scale(1); }

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
.fancybox-slide { padding-left: 6px; padding-right: 6px; }
.fancybox-slide--image { padding: 6px 0; }
.fancybox-close-small { right: -6px; }
.fancybox-slide--image .fancybox-close-small { background: #4e4e4e; color: #f2f4f6; height: 36px; opacity: 1; padding: 6px; right: 0; top: 0; width: 36px; }
.fancybox-caption { padding-left: 12px; padding-right: 12px; }
 @supports (padding: max(0px)) {
 .fancybox-caption {
 padding-left: max(12px, env(safe-area-inset-left));
 padding-right: max(12px, env(safe-area-inset-right));
}
}
}
/* Share */

.fancybox-share { background: #f4f4f4; border-radius: 3px; max-width: 90%; padding: 30px; text-align: center; }
.fancybox-share h1 { color: #222; font-size: 35px; font-weight: 700; margin: 0 0 20px 0; }
.fancybox-share p { margin: 0; padding: 0; }
.fancybox-share__button { border: 0; border-radius: 3px; display: inline-block; font-size: 14px; font-weight: 700; line-height: 40px; margin: 0 5px 10px 5px; min-width: 130px; padding: 0 15px; text-decoration: none; transition: all .2s; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; white-space: nowrap; }
.fancybox-share__button:visited, .fancybox-share__button:link { color: #fff; }
.fancybox-share__button:hover { text-decoration: none; }
.fancybox-share__button--fb { background: #3b5998; }
.fancybox-share__button--fb:hover { background: #344e86; }
.fancybox-share__button--pt { background: #bd081d; }
.fancybox-share__button--pt:hover { background: #aa0719; }
.fancybox-share__button--tw { background: #1da1f2; }
.fancybox-share__button--tw:hover { background: #0d95e8; }
.fancybox-share__button svg { height: 25px; margin-right: 7px; position: relative; top: -1px; vertical-align: middle; width: 25px; }
.fancybox-share__button svg path { fill: #fff; }
.fancybox-share__input { background: transparent; border: 0; border-bottom: 1px solid #d7d7d7; border-radius: 0; color: #5d5b5b; font-size: 14px; margin: 10px 0 0 0; outline: none; padding: 10px 15px; width: 100%; }
/* Thumbs */

.fancybox-thumbs { background: #ddd; bottom: 0; display: none; margin: 0; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; padding: 2px 2px 4px 2px; position: absolute; right: 0; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); top: 0; width: 212px; z-index: 99995; }
.fancybox-thumbs-x { overflow-x: auto; overflow-y: hidden; }
.fancybox-show-thumbs .fancybox-thumbs { display: block; }
.fancybox-show-thumbs .fancybox-inner { right: 212px; }
.fancybox-thumbs__list { font-size: 0; height: 100%; list-style: none; margin: 0; overflow-x: hidden; overflow-y: auto; padding: 0; position: absolute; position: relative; white-space: nowrap; width: 100%; }
.fancybox-thumbs-x .fancybox-thumbs__list { overflow: hidden; }
 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
 width: 7px;
}
 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
 background: #fff;
 border-radius: 10px;
 box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
}
 .fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
 background: #2a2a2a;
 border-radius: 10px;
}
.fancybox-thumbs__list a { -webkit-backface-visibility: hidden; backface-visibility: hidden; background-color: rgba(0, 0, 0, .1); background-position: center center; background-repeat: no-repeat; background-size: cover; cursor: pointer; float: left; height: 75px; margin: 2px; max-height: calc(100% - 8px); max-width: calc(50% - 4px); outline: none; overflow: hidden; padding: 0; position: relative; -webkit-tap-highlight-color: transparent; width: 100px; }
.fancybox-thumbs__list a::before { border: 6px solid #ff5268; bottom: 0; content: ''; left: 0; opacity: 0; position: absolute; right: 0; top: 0; transition: all .2s cubic-bezier(.25, .46, .45, .94); z-index: 99991; }
.fancybox-thumbs__list a:focus::before { opacity: .5; }
.fancybox-thumbs__list a.fancybox-thumbs-active::before { opacity: 1; }
