body {font-family:'Lora', Georgia, serif; font-size:15px; line-height:23px; color:#737373;}
ul{list-style:none;}
a {color:#2d2d2d; text-decoration:none;}
.page-width {width:960px; margin:0 auto;}
.container {margin:0 auto; padding-bottom:80px; overflow:hidden;}

/* Navigation */
.nav-bar {border-bottom:1px solid #ececec;}
.nav-inner {margin:0 auto -1px auto;}
.desktop-nav li {float:left; padding:0px 0px 0px 1px; background:url(/images/nav-divider.png) 0px 15px no-repeat; height:44px;}
.desktop-nav li:first-child {padding-left:0; background:none;}
.desktop-nav li a {font-style:italic; color:#808080; text-decoration:none; padding:10px 0px 13px 0px; display:block; height:44px; border-bottom:1px solid #ececec; margin:0px 20px 0px 20px;}
.desktop-nav li:first-child a {margin-left:0;}
.desktop-nav li a:hover {color:#2d2d2d;}
.desktop-nav li.current a, #nav li.currentparent a {color:#2d2d2d; border-bottom:1px solid #2e2e2e;}
.facebook {width:27px; height:27px; display:block; background-image:url(/images/facebook.png); float:right; margin-top:8px; opacity:0.75;}
.facebook:hover {background-position:bottom; opacity:1;}

/* Mobile menu */
.mobile-menu-wrap, .mobile-menu-trigger {display:none;}
.mobile-menu-trigger {float:right; cursor:pointer; overflow:auto;}
.trigger-text {font-family:'Montserrat', Arial, Helvetica, sans-serif; font-size:13px; line-height:16px; text-transform:uppercase; letter-spacing:4px; color:#747474; padding:11px 10px 0px 0px; float:right;}
.trigger-icon {float:right; border-left:1px solid #ececec; border-right:1px solid #ececec;}
.trigger-icon span {display:block; width:40px; height:40px; background:url(/images/mobile-menu-button.png) no-repeat center center; opacity:0.5;}
.mobile-menu-trigger:hover .trigger-icon span, .mobile-menu-trigger.open .trigger-icon span {opacity:0.8;}
.mobile-menu-wrap {clear:both; font-size:17px; font-style:italic;}
.mobile-menu-wrap ul {display:none; list-style-type:none;}
.mobile-menu-wrap li {position:relative;}
.mobile-menu-wrap li a {display:block; color:#fff; background:#585858; padding:8px 51px 9px 10px; border-top:1px solid #6c6c6c; text-decoration:none; text-shadow:1px 1px 0 rgba(0,0,0,0.15);}
.mobile-menu-wrap li a:hover, .mobile-menu-wrap li.current > a {background:#484848;}
.mobile-menu-wrap li li a {border-left:10px solid #6c6c6c;}
.mobile-menu-wrap li li li a {border-left:20px solid #6c6c6c;}
.mobile-menu-wrap li li li li a {border-left:30px solid #6c6c6c;}
.submenu-toggle {position:absolute; top:1px; right:0; display:block; border-left:1px solid #6c6c6c; height:100%; width:41px; box-sizing:border-box; -webkit-box-sizing:border-box; cursor:pointer;}
.submenu-toggle:hover {background-color:#484848;}
.mobile-menu-wrap > ul > li:first-child > .submenu-toggle {top:0;}
.submenu-toggle .arrow {display:block; height:40px; width:40px; background:url(/images/mobile-menu-toggle.png) no-repeat center center; -webkit-transition:0.5s; -moz-transition:0.5s; -o-transition:0.5s; transition:0.5s;}
.mobile-menu-wrap li.submenu-show > .submenu-toggle .arrow {-webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -ms-transform:rotate(180deg); -o-transform:rotate(180deg); transform:rotate(180deg);}

/* Header */
header {position:relative; border-bottom:1px solid #ececec;}
body.home header {border-bottom:none;}
.logo {display:block; margin:43px auto 43px auto; width:298px; max-width:100%;}
.logo img {width:100%;}

/* Inner shadow effect */
.shadow-image {position:relative;}
.shadow {width:100%; height:100%; position:absolute; z-index:10; -webkit-box-shadow:inset 0px 0px 7px 0px rgba(0, 0, 0, 0.15); box-shadow:inset 0px 0px 7px 0px rgba(0, 0, 0, 0.15);}
.shadow-image img {display:block;}

/* Text */
.text a {text-decoration:underline;}
.text h1, .text h2, .client-note h1, .client-note h2 {font-size:20px; line-height:26px; font-weight:normal; font-style:italic; color:#434343; padding:16px 0px 16px 0px;}
.text h3, .client-note h3 {font-size:14px; line-height:18px; color:#434343; text-transform:uppercase; letter-spacing:3px; padding:16px 0px 16px 0px;}
.text h4, .client-note h4 {color:#434343; padding:16px 0px 16px 0px;}
.text h1:first-child, .text h2:first-child, .text h3:first-child, .text h4:first-child, .client-note h1:first-child, .client-note h2:first-child, .client-note h3:first-child, .client-note h4:first-child {padding-top:0;}

/* Text page */
.main-col {width:680px; float:left; padding:27px 38px 0 0;}
.side-col {width:280px; float:right; padding-top:33px;}
body.text-page .text h1:first-child, .text h2:first-child {padding-top:0;}
body.text-page .text p, .client-note p {padding-bottom:16px;}
body.text-page .text p.caption, body.client-page .text p.caption {border-bottom:1px solid #ececec; padding:7px 0px; margin-bottom:6px; font-size:13px; line-height:19px; color:#4a4a4a;}
body.text-page .text img {display:block;}

/* Blog teasers */
.posts-box {padding:24px 24px 0 24px; border:1px solid #ececec; border-top:none; margin-top:-16px;}
.post-teaser {padding-bottom:28px;}
.post-teaser img {width:100%; padding:0 !important;}
.post-teaser .shadow-image {margin-bottom:15px;}
.post-teaser h4 {font-weight:normal; font-style:italic; font-size:14px; line-height:21px; text-align:center; padding:0px 0px 11px 0px; margin-top:-5px;}
.post-teaser h4 a {color:#6a6a6a; text-decoration:none; display:block;}
.post-teaser h4 a:hover {color:#2d2d2d;}
.lined-small {display:block; border-top:1px solid #ececec; text-align:center; font-weight:normal; font-family:'Montserrat', Arial, Helvetica, sans-serif; font-size:9px; line-height:11px; text-transform:uppercase; letter-spacing:4px; color:#9d9d9d;}
.lined-small:hover {color:#2d2d2d;}
.lined-small span {display:inline-block; padding:0 4px 0 8px; background-color:#fff; position:relative; top:-6px;}

/* Blog */
body.page-blog .main-col, body.page-blog-responsive .main-col {width:100%; padding-top:32px; padding-right:0;}
.blog-archive {margin-left:-30px; margin-right:-30px; padding:28px 0px 0px 0px; font-size:0px;}
.blog-archive .post-teaser {width:280px; display:inline-block; vertical-align:top; margin:0px 30px 24px 30px;}
.news-pagination {border-top:1px solid #ececec; font-size:11px; line-height:14px; text-transform:uppercase; letter-spacing:2px; color:#a9a9a9; margin-top:60px; padding-top:10px;}
.news-pagination a {text-decoration:none; color:#4a4a4a;}
.news-pagination a:hover {text-decoration:underline;}
.prev-btn {float:left;}
.next-btn {float:right;}
.page-text {width:200px; margin:0 auto; text-align:center;}

/* Blog detail */
body.page-blog-article .main-col, body.page-blog-article-responsive .main-col {padding-top:32px;}
.news-item {padding-top:60px;}
.news-item:first-child {padding-top:0;}
.text h2.news-head {border-bottom:1px solid #ececec; padding:0 0 8px 0; margin-bottom:11px;}
.text h2.news-head a {text-decoration:none;}
.text h2.news-head a:hover {text-decoration:underline;}
.blog-image {padding-bottom:22px;}
.blog-image img {max-width:100%;}
.news-postdate {font-size:11px; line-height:14px; text-transform:uppercase; letter-spacing:2px; color:#a9a9a9; padding-bottom:3px;}
.fb-comments {margin-top:30px;}
.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget span iframe[style] {min-width:100% !important; width:100% !important;}

/* Gallery */
.gallery-outer {padding-top:26px; margin-left:-6px; margin-right:-6px;}
.gallery-item {width:25%; border:6px solid #fff; background-color:#000; float:left;}
.gallery-item img {width:100%;}
.gallery-item:hover img {opacity:0.75;}
.pin-it-button {text-decoration:none !important;}

/* Client galleries */
body.client-page .main-col {width:533px; padding:0px 32px 0px 0px; margin:32px 0px 0px 0px; border-right:1px solid #ececec;}
body.client-page .main-col p {display:none;}
body.client-page .main-col p.caption {display:block;}
body.client-page .side-col {width:427px; padding:26px 0px 26px 32px;}
body.client-page .side-col h2 {font-size:20px; line-height:26px; font-weight:normal; font-style:italic; color:#434343; padding-bottom:4px; border-bottom:1px solid #ececec; margin-bottom:10px;}
body.client-page .text h2.news-head {margin-bottom:28px;}
.client-image {padding-bottom:22px; display:inline-block; max-width:100%;}
.client-image img {display:block; max-width:100%;}
.client-note {padding-bottom:16px;}
.required-note {float:right; margin-top:-37px; font-size:12px;}

/* Forms */
.formbuilderform > div {clear:left; display:block; padding-top:10px; width:100%; overflow:hidden;}
label {color:#4A4A4A; font-size:11px; line-height:13px; text-transform:uppercase; letter-spacing:1px; text-align:right; width:32%; display:block; float:left; padding:2px 5px 5px 0;}
input[type=text], input[type=email] {font-family:Arial, Helvetica, sans-serif; font-size:13px; line-height:20px; padding:3px; border:1px solid #ececec; width:68%; color:#333333; margin:0;}
textarea {font-family:Arial, Helvetica, sans-serif; font-size:13px; line-height:20px; padding:3px; border:1px solid #ececec; width:68%; height:78px; display:block; color:#393733; margin:0; resize:none;}
.error_message {padding:10px 0px 10px 0px;}
.error_message ul {padding:10px 16px 10px 16px; border:1px solid #c10000; background-color:#ffcccc; color:#333333;}
form div.fb_invalid > label {color:#c10000;}
form div.fb_invalid input, form div.fb_invalid textarea {border:1px solid #c10000;}
.order-received {color:#596100; font-size:14px; line-height:20px; text-transform:uppercase; letter-spacing:1px; padding:5px 10px 5px 10px; border:1px solid #b1bb41; background-color:#bec94a;}
.copyright-info, .portfolio-info, .photo-order-info {border-top:1px solid #ececec; margin:20px 0px 0px 0px; padding:20px 0px 0px 0px;}
.understand-copyright label {padding-top:4px;}
.photo-order-info {padding-bottom:10px;}
.portfolio-permission div {overflow:hidden; padding-bottom:5px;}
.formbuilderform .p-image, .formbuilderform .p-size, .formbuilderform .p-copies {display:inline-block; width:32%; padding-top:0;}
.p-image label, .p-size label, .p-copies label {font-size:11px; width:auto; text-align:left; float:none;}
.p-image input, .p-size input, .p-copies input {width:100%; box-sizing:border-box; height:26px;}
.formbuilderform .submit {padding:20px 0px 0px 0px; border-top:1px solid #ececec; margin-top:13px;}
input[type=submit] {background-color:#5d5d5d; border:1px solid #494949; padding:6px 10px 5px 10px; color:#fff; font-family:'Lora', Georgia, serif; font-size:12px; text-transform:uppercase; letter-spacing:1px; cursor:pointer;}
input[type=submit]:hover {background-color:#333333; border:1px solid #222222;}

/* Home slider */
.bx-wrapper {position:relative;}
.bx-wrapper img {display:block; width:100%;}
.bx-wrapper .bx-viewport {-webkit-transform:translatez(0); -moz-transform:translatez(0); -ms-transform:translatez(0); -o-transform:translatez(0); transform:translatez(0);}
.bx-wrapper .bx-loading {min-height:32px; background:url(/bxslider/loading.gif) center center no-repeat #fff; height:100%; width:100%; position:absolute; top:0; left:0; z-index:100;}
.bx-wrapper .bx-controls-direction {visibility:hidden;}
.bx-wrapper:hover .bx-controls-direction {visibility:visible;}
.bx-wrapper .bx-controls-direction a {position:absolute; top:0; height:100%; width:100px;}
.bx-wrapper .bx-controls-direction a.disabled {display:none;}
.bx-wrapper .bx-controls-direction a span {dispay:block; position:absolute; top:50%; margin-top:-50px; width:14px; height:99px; text-indent:-9999px; z-index:9999; background-color:#fff; background-repeat:no-repeat;}
.bx-wrapper .bx-prev {left:0;}
.bx-wrapper .bx-next {right:0;}
.bx-wrapper .bx-prev span {left:0; background-image:url(/images/arrow-left.png); background-position:left 50%;}
.bx-wrapper .bx-next span {right:0; background-image:url(/images/arrow-right.png); background-position:right 50%;}

/* Home page */
.featured-galleries {padding:21px 0px 20px 0px; border-bottom:1px solid #ececec; overflow:auto;}
.gallery-box {float:left; margin-left:21px; width:306px;}
.gallery-box:first-child {margin-left:0;}
.gallery-box img {width:100%;}
.gallery-box > a {display:block; padding-top:17px;}
h3.lined {border-top:1px solid #ececec; text-align:center; font-weight:normal; font-family:'Montserrat', Arial, Helvetica, sans-serif; font-size:13px; line-height:16px; text-transform:uppercase; letter-spacing:4px; color:#434343;}
h3.lined span {display:inline-block; padding:0 6px 0 10px; background-color:#fff; position:relative; top:-9px;}
.promo-video {margin-top:7px; padding-bottom:56%; position:relative;}
.promo-video iframe {position:absolute; width:100%; height:100%; top:0; left:0;}
body.home .main-col {width:654px; padding:25px 38px 25px 0px; font-size:17px; line-height:26px;}
body.home .text p {padding-bottom:18px;}
body.home .side-col {width:306px; padding-top:32px;}
body.home .posts-box .post-teaser {padding-bottom:22px;}
.awards-box {clear:both; border-top:1px solid #ececec; padding:24px 0 36px 0px;}
.awards {width:552px; float:left;}
.awards-logo {width:376px; float:right;}
body.home .awards h4 {padding-bottom:8px;}
body.home .awards p {padding-bottom:8px;}

/* Footer */
footer {width:100%; background-color:#f3f3f3; color:#b5b5b5; font-size:12px; line-height:18px; clear:both;}
.footer-inner {width:960px; margin:0 auto; padding:20px 0px 60px 0px; overflow:auto;}
.footer-inner p {float:left;}
.footer-inner a {text-decoration:none; color:#b5b5b5;}
.footer-inner a:hover {color:#2d2d2d; text-decoration:underline;}
.monogram {width:41px; height:26px; background:url(/images/monogram.png); float:right; margin-top:4px;}



/* Media Queries
================================================== */

/* Tablet Portrait */
@media only screen and (min-width:768px) and (max-width:979px) {
	.page-width {width:748px;}
	.desktop-nav li a {margin:0px 12px;}
	.main-col {width:530px;}
	.side-col {width:218px;}
	.gallery-box {margin-left:17px; width:238px;}
	.posts-box {padding-left:17px; padding-right:17px;}
	.blog-archive {margin-left:-22px; margin-right:-22px;}
	.blog-archive .post-teaser {width:220px; margin:0px 22px 14px 22px;}
	body.client-page .main-col {width:333px; padding:0px 20px 0px 0px;}
	body.client-page .side-col {width:415px; padding:26px 0px 26px 20px;}
	body.home .main-col {width:510px;}
	body.home .side-col {width:238px;}
	.awards {width:430px;}
	.awards-logo {width:286px;}
}

/* All Mobile */
@media only screen and (max-width:767px) {
	.mobile-menu-wrap, .mobile-menu-trigger {display:block;}
	.page-width {width:480px; max-width:100%; padding-left:10px; padding-right:10px;}
	.desktop-nav {display:none;}
	.mobile-menu-bar {display:block;}
	.main-col, body.home .main-col {width:100%; padding-right:0;}
	.side-col, body.home .side-col {width:100%;}
	.gallery-outer {margin-left:-5px; margin-right:-5px;}
	.gallery-box {margin-left:0; width:100%; margin-top:10px;}
	.gallery-item {width:50%; border:5px solid #fff;}
	.blog-archive {margin-left:-0; margin-right:0;}
	.blog-archive .post-teaser {width:100%; margin:0 0 24px 0;}
	body.page-blog-article-responsive .side-col {display:none;} 
	.page-text {display:none;}
	body.client-page .main-col {width:100%; padding-right:0; border:0;}
	body.client-page .side-col {width:100%; padding-left:0;}
	.footer-inner p {float:none; text-align:center;}
	.monogram {float:none; margin:20px auto 0 auto;}
	.awards {width:100%;}
	.awards-logo {width:376px; max-width:100%; margin-top:20px; float:none;}
}

/* Mobile Portrait */
@media only screen and (max-width:479px) {
	.page-width {width:100%; padding-left:10px; padding-right:10px;}
	.logo a {width:298px; height:75px; display:block; background:url(/images/mgp-logo.png); margin:43px auto 43px auto;}
}

/* Retina */
@media only screen and (-webkit-min-device-pixel-ratio:1.3),
only screen and (-o-min-device-pixel-ratio:13/10),
only screen and (min-resolution:120dpi) {
	.trigger-icon span {background-image:url(/images/mobile-menu-button@2x.png); background-size:20px 20px;}
	.submenu-toggle .arrow {background-image:url(/images/mobile-menu-toggle@2x.png); background-size:18px 12px;}
	.desktop-nav li {background-image:url(/images/nav-divider@2x.png); background-size:1px 13px;}
	.facebook {background-image:url(/images/facebook@2x.png); background-size:27px 27px;}
	.monogram {background-image:url(/images/monogram@2x.png); background-size:41px 26px;}
	.bx-wrapper .bx-prev span {background-image:url(/images/arrow-left@2x.png); background-size:7px 13px;}
	.bx-wrapper .bx-next span {background-image:url(/images/arrow-right@2x.png); background-size:7px 13px;}
}

/* Mozilla only */
@-moz-document url-prefix() {
	h3.lined span {top:-10px;}
	.lined-small span {top:-7px;}
}
/* Stylesheet: MGP Modified On 2017-06-21 14:05:33 */
