HTML { overflow-y:scroll; }
BODY { padding:0; margin:0; font-family:'Montserrat', sans-serif; font-weight:400; font-size:14px; color:#70727b; }

.site-width { width:1280px; margin:0 auto; position:relative; height:100%; box-sizing:border-box; }
.hide-for-desktop { display:none !important; }
.text-center { text-align:center; }
.text-right { text-align:right; }
.clear { clear:both; }
.fa-vc { line-height:inherit !important; }
A.btn { color:rgba(1,1,101,1); background-color:rgba(120,190,33,1); text-transform:uppercase; padding:10px 20px; font-weight:bold; transition:all .5s; display:inline-block; }
A.btn:hover { text-decoration:none; background-color:rgba(1,1,101,1); color:#fff; }
A.btn I { color:#c2c2c2; font-size:36px; vertical-align:middle; margin-right:15px; }
A.btn:hover I { color:#fff; }
.t-table { display:table; width:100%; }
.t-row { display:table-row; }
.t-cell { display:table-cell; }
.t-cell.top { vertical-align:top; }
.form-group { margin-bottom:20px; }
.form-group.button-right { text-align:right; }
.form-group LABEL { display:block; padding:0 0 10px 0; font-size:14px; }
.form-group SPAN { font-size:14px; float:right; }

A { color:#006eab; text-decoration:none; }
A:hover { text-decoration:underline; }
H1, H2, H3, H4, H5, H6, P { padding:0 0 30px 0; margin:0; transition:all .5s; }
H1, H2, H3, H4, H5, H6 { color:#000066; }
H1 { font-size:42px; line-height:48px; }
H2 { font-size:32px; line-height:38px; }
H3 { font-size:26px; line-height:36px; }
H4 { font-size:24px; line-height:30px; }
H5 { font-size:18px; line-height:24px; }
H6 { font-size:16px; line-height:22px; }
P { line-height:32px; }
EM { font-style: italic; }
STRONG { font-weight:bold; }
HR { background:#e5e7e9; height:1px; border:0px; padding:0; margin:0 0 30px 0; }

INPUT[type=text], INPUT[type=email], TEXTAREA, BUTTON, SELECT { font-family:'Montserrat', sans-serif; font-size:14px; color:#111111; box-sizing:border-box; padding:15px 20px; width:100%; border:1px solid #a6afb8; background-color:#fff; }
INPUT.error, TEXTAREA.error { border-bottom:1px solid red; }
INPUT[type=submit] { color:rgba(255,255,255,1); background-color:rgba(120,190,33,1); text-transform:uppercase; padding:20px; transition:all .5s; border:none; font-size:16px; cursor:pointer; }

HEADER { position:fixed; top:0; width:100%; z-index:120; background-color:#fff; box-shadow:none; -moz-box-shadow:none; -webkit-box-shadow:none; -webkit-transition:all .2s ease-in-out; -moz-transition:all .2s ease-in-out; -o-transition:all .2s ease-in-out; transition:all .2s ease-in-out; }
HEADER .notification { background-color:#000066; padding:20px 0; color:#fff; font-size:14px; text-align:center; }

HEADER .notification .inner A { color:#69c71e; text-transform:uppercase; font-size:12px; font-weight:bold; padding:0 10px; }
HEADER .notification .inner P { line-height:normal; padding:0; }
HEADER .notification A.close { position:absolute; right:0; top:50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); color:#fff; font-size:24px; }
HEADER .notification A.close:hover { text-decoration:none; }
HEADER .menu-header { height:100px; }
HEADER A.logo { position:absolute; left:0; top:20px; }
HEADER A.logo IMG { height:60px; }
HEADER NAV.menu { font-size:0; text-align:center; padding-top:19px; font-weight:bold; }
HEADER NAV.menu LI { display:inline-block; font-size:14px; padding:0 20px; text-transform:uppercase; }
HEADER NAV.menu A { text-decoration:none; color:#000066; padding:0; line-height:80px; transition:all .5s; display:inline-block; border-bottom:1px solid rgba(0,0,102,0); }
HEADER NAV.menu A.active, HEADER NAV.menu LI:hover > A { border-bottom:1px solid rgba(0,0,102,1); text-decoration:none; }

HEADER NAV.menu DIV.megamenu { position:fixed; left:0; width:100%; font-weight:normal; text-align:left; box-shadow:inset 0 3px 3px -3px rgba(0,0,0,0.3), 0 3px 3px rgba(0, 0, 0, 0.3); box-sizing:border-box; padding:30px 0; background-color:#fff; visibility:hidden; transition:none; }
HEADER NAV.menu DIV.megamenu .megamenu-container { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; grid-column-gap:50px; }
HEADER NAV.menu DIV.megamenu .megamenu-container LI { display:block; text-transform:none; padding:0; }
HEADER NAV.menu DIV.megamenu .megamenu-container LI A { line-height:32px; border:none; transition:none; }
HEADER NAV.menu DIV.megamenu .megamenu-container LI:hover A { border:none; }
HEADER NAV.menu DIV.megamenu .megamenu-container LI:first-child { border-bottom:1px solid #78be21; margin-bottom:16px; font-weight:500; }
HEADER NAV.menu DIV.megamenu .megamenu-container LI:first-child A { color:#aaacad; }
HEADER NAV.menu LI:hover DIV.megamenu { visibility:visible; } 
HEADER NAV.topmenu { position:absolute; right:5px; top:15px; font-size:0; font-weight:bold; }
HEADER NAV.topmenu LI { font-size:10px; display:inline-block; padding:0 10px; text-transform:uppercase; }
HEADER NAV.topmenu A { color:#000066; }
HEADER A.top-button { font-size:14px; font-weight:bold; text-transform:uppercase; display:inline-block; background-color:rgba(120,190,33,1); color:rgba(0,0,102,1); padding:10px 15px; position:absolute; right:0; bottom:24px; }
HEADER A.top-button:hover { text-decoration:none; }
HEADER.fixed { box-shadow:0 3px 3px rgba(0, 0, 0, 0.3); -moz-box-shadow:0 3px 3px rgba(0, 0, 0, 0.3); -webkit-box-shadow:0 3px 3px rgba(0, 0, 0, 0.3); }
HEADER A.mobile-bars { display:none; }

#overlay-menu { background-color:rgba(0,0,0,1); width:0; min-width:0; min-height:100%; right:0; top:0; position:fixed; z-index:130; display:block; transition:all .5s; box-sizing:border-box; overflow:hidden; }
#overlay-menu A { color:#fff; }
#overlay-menu .inner-content { width:440px; padding:130px 30px 30px 30px; box-sizing:border-box; position: absolute; height:100%; overflow-y:auto; }
#overlay-menu .inner-content::-webkit-scrollbar {
    width: 0px;
    background: transparent; /* Chrome/Safari/Webkit */
}
#overlay-menu .inner-content {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none;  /* IE 10+ */
}
#overlay-menu .close-overlay-menu { position:absolute; right:30px; top:0; font-size:86px; }
#overlay-menu .close-overlay-menu:hover { text-decoration:none; }
#overlay-menu UL { clear:both; font-size:16px; margin-bottom:30px; }
#overlay-menu LI { position:relative; }
#overlay-menu LI:first-child A { border-top:1px solid rgba(255,255,255,0.25); }
#overlay-menu LI A { padding:15px 65px 15px 15px; border-bottom:1px solid rgba(255,255,255,0.25); min-height:50px; display:block; box-sizing:border-box; color:#fff; }
#overlay-menu LI A:hover { text-decoration:none; color:#afadad; }
#overlay-menu LI BUTTON { position:absolute; right:0; top:0; width:50px; height:50px; text-align:center; border:none; background-color:#dbdcdb; cursor:pointer; }
#overlay-menu UL UL { display:none; margin-bottom:0; font-size:16px }
#overlay-menu UL UL LI A { background-color:#dbdcdb; }
#overlay-menu UL UL LI A:hover { color:#445050; }
#overlay-menu .contact-info { position:absolute; bottom:100px; width:100%; display:block; margin-left:-20px; }
#overlay-menu .contact-info A { color:#afadad; }
#overlay-menu SPAN { display:block; line-height:24px; }
#overlay-menu.open { width:calc(50% - 200px); min-width:auto; }

#navigation .nav-container { display:grid; grid-template-columns:1fr 2fr; grid-column-gap:0; padding:25px 0; }
#navigation H2 { text-align:center; padding:0; text-transform:uppercase; color:#615a55; }

#banner { background-color:rgba(76,82,78,0.2); margin-top:100px; }
#banner.sub { height:300px; background-position:center bottom; background-size:cover; }
#banner.sub .site-width { align-items:center; align-self:center; display:grid; text-align:center; }
#banner.sub .site-width H1 { padding:0; color:#fff; text-transform:none; }
#banner DIV.banner-slider { height:600px; }
#banner DIV.banner-slider DIV { background-position:center bottom; background-size:cover; height:100%; }
#banner DIV.banner-slider DIV .site-width { display:grid; grid-template-columns:1fr; }
#banner DIV.banner-slider .slider-title { align-items:center; align-self:center; display:grid; text-align:center; }
#banner DIV.banner-slider .slick-dots { position:absolute; bottom:-40px; left:50%; -webkit-transform:translateX(-50%); transform:translateX(-50%); }
#banner DIV.banner-slider .slick-dots LI { display:inline-block; padding:0 2px; }
#banner DIV.banner-slider .slick-dots LI BUTTON { width:10px; height:10px; overflow:hidden; background-color:rgba(179,176,176,1); text-indent: 100%; border:none; padding:0; }
#banner DIV.banner-slider .slick-dots LI.slick-active BUTTON { background-color:rgba(74,185,139,1); }
#banner .banner-container A { color:rgba(255,255,255,0); display:flex; justify-content:right; align-items:center; transition:all .5s; text-transform:uppercase; font-size:36px; }
#banner .banner-container A.prev { justify-content:left; }
#banner .banner-container A:hover { color:rgba(255,255,255,1); text-decoration:none; }
#banner .banner-container A I { margin:0 20px; width:49px; transition:all .5s; height:165px; display:block; opacity:0.4; background-position:center; background-size:cover; background-image:url('../images/arrow-right.png'); }
#banner .banner-container A I.arrow-left { background-image:url('../images/arrow-left.png'); } 
#banner .banner-container.hidden-arrows A I { opacity:0; }
#banner .banner-container A:hover I { opacity:1; }

#solutions { text-align:center; position:relative; padding:100px 0; }
#solutions::before { content:''; background-image:url('../images/background-effect-left.png'); background-size:contain; background-repeat:no-repeat; background-position:left top; opacity:0.5; top:0; left:0; bottom:0; right:0; height:100%; width:100%; position:absolute; z-index:-1; }
#solutions::after { content:''; background-image:url('../images/background-effect-right.png'); background-size:contain; background-repeat:no-repeat; background-position:right top; opacity:0.5; top:0; left:0; bottom:0; right:0; height:100%; width:100%; position:absolute; z-index:-1; }
#solutions H2 { font-size:64px; font-weight:bold; line-height:64px; }
#solutions H2 STRONG { font-size:36px; display:block; }
#solutions H4 { font-weight:bold; font-size:18px; }
#solutions UL.solutions-list { font-size:0; padding:50px 0 0 0; }
#solutions UL.solutions-list LI { font-size:14px; display:inline-block; width:200px; }
#solutions UL.solutions-list A { color:#000066; }
#solutions UL.solutions-list A:hover { text-decoration:none; }
#solutions UL.solutions-list IMG { height:40px; }
#solutions UL.solutions-list SPAN { display:block; padding:30px 0 0 0; text-transform:uppercase; font-weight:bold; }

#domainsearch { padding:50px 0; background-color:#d3d3dc; text-align:center; } 
#domainsearch H4 { text-transform:none; }
#domainsearch .content { width:50%; margin:0 auto; }
#domainsearch .content INPUT[type=text], #newsletter .content INPUT[type=submit] { border:1px solid #ebebeb; background-color:#ebebeb; display:inline-block; padding:15px 20px; width:470px; }
#domainsearch .content INPUT[type=submit] { background-color:#4ab98b; border:1px solid #4ab98b; color:#fff; width:auto; padding:15px 40px; cursor:pointer; width:170px; }
#domainsearch .content INPUT[type=text].error { background-color:#ffc6c6; }

#products { background-image:url('../images/background-img-1.jpg'); background-position:center; background-size:cover; padding:50px 0; text-align:center; }
#products H2 { font-size:36px; color:#fff; line-height:64px; }
#products H2 STRONG { font-size:64px; display:block; }
#products H3 { font-size:36px; font-weight:bold; color:#fff; }
#products .products-container { padding:50px 0; display:grid; justify-content:center; grid-template-columns:270px 270px 270px; grid-column-gap:50px; }
#products .products-container .product-name { transition:all .5s; background-color:rgba(120,190,33,1); color:#fff; font-size:28px; font-weight:bold; text-transform:uppercase; color:#fff; padding:25px; line-height:32px; margin-bottom:30px; position:relative; }
#products .products-container .product-name .triangle { transition:all .5s; display:block; height:0px; width:0px; border:20px solid transparent; border-top-color:rgba(120,190,33,1); position:absolute; bottom:-36px; left:calc(50% - 20px); }
#products .products-container .product-info { background-color:rgba(255,255,255,1); position:relative; padding:15px; height:calc(100% - 174px); }
#products .products-container .product-info P { font-size:16px; }
#products .products-container .product-info UL { padding-bottom:10px; }
#products .products-container .product-info LI { padding-bottom:10px; line-height:24px; }
#products .products-container .product-info:before, #products .products-container .product-info:after { content:''; position:absolute; bottom:100%; width:50%; box-sizing:border-box; }
#products .products-container .product-info:before { right:50%; border-bottom:20px solid rgba(255,255,255,1); border-right:20px solid transparent; }
#products .products-container .product-info:after { left:50%; border-bottom:20px solid rgba(255,255,255,1); border-left:20px solid transparent; }
#products .products-container A:hover { text-decoration:none; }
#products .products-container A:hover .product-name { background-color:rgba(1,1,101,1); }
#products .products-container A:hover .product-name .triangle { border-top-color:rgba(1,1,101,1); }

#partners { padding:50px 0; }
#partners .partners-container { display:grid; grid-template-columns:60% 40%; grid-column-gap:20px; }
#partners .partners-container > DIV { align-self:center; justify-self:center; }
#partners .partners-container IMG { max-width:100%; }
#partners .partners-container H2 { font-weight:bold; font-size:52px; line-height:56px; }
#partners .partners-container UL { display:grid; justify-content:center; grid-template-columns:auto auto auto; grid-column-gap:50px; }
#partners .partners-container LI { align-self:center; justify-self:center; }

.home-content { padding:60px 0; text-align:center; font-size:18px; }
.home-content.bottom-border { border-bottom:1px solid #cfcdcc; }
.home-content.no-top-padding { padding-top:0; }
.home-content H2 { font-size:42px; line-height:48px; }
.home-content A.btn { margin-top:30px; }

.portfolio-container { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; grid-column-gap:20px; text-align:center; padding:30px 100px; }
.portfolio-container .portfolio-img { background-position:center; background-size:cover; height:320px; }
.portfolio-container SPAN { text-transform:uppercase; display:block; padding:20px 0; }

SECTION.content { padding:70px 0 40px 0; }
SECTION.content.bg-blue { background-color:#14709f; color:#fff; }
SECTION.content.bg-blue A { color:#fff; }
SECTION.content .content-container { display:grid; grid-template-columns:1fr 1fr; grid-column-gap:50px; padding:0 25px; }
SECTION.content .content-container.full-width { grid-template-columns:1fr; }
SECTION.content.bg-blue .content-container > DIV { align-self:center; box-sizing:border-box; }
SECTION.content.bg-blue H3 { text-transform:none; color:#fff; }
SECTION.content.bg-blue A.btn { text-transform:none; background-color:#000066; color:#fff; font-weight:normal; }
SECTION.content IMG { max-width:100%; padding:0 0 30px 0; }
SECTION.content UL { line-height:32px; list-style-type:disc; padding:0 20px 30px 20px; }
SECTION.content TABLE { width:100%; line-height:32px; font-size:14px; }
SECTION.content TH { font-weight:bold; text-align:left; }
SECTION.content TR TD { padding-right:10px; }
SECTION.content TR TD:last-child { padding-right:0; }

SECTION.content .content-container.contact-container { grid-template-columns:2fr 1fr; padding:0; }
SECTION.content .content-container.contact-container > DIV:nth-child(1) { padding-left:25px; }
SECTION.content .content-container.contact-container > DIV:nth-child(2) { padding:50px 50px 20px 50px; background-color:#000066; color:#fff; }
SECTION.content .content-container.contact-container > DIV:nth-child(2) H2 { color:#fff; text-transform:none; }

SECTION.content .blogs-container { padding:0 25px 30px 25px; }
SECTION.content .blog-item { transition:all .5s; display:grid; grid-column-gap:50px; grid-template-columns:1fr 2fr; border-bottom:1px solid #e6e3e3; padding-bottom:25px; margin-bottom:25px; }
SECTION.content .blog-item:last-child { border-bottom:none; padding-bottom:0; margin-bottom:0; }
SECTION.content .blog-item:hover { text-decoration:none; }
SECTION.content .blog-item .intro { padding:25px 0; }
SECTION.content .blog-item .intro H2 { font-weight:bold; }
SECTION.content .blog-item .intro A.btn { background-color:#027482; color:#fff; }
SECTION.content .blog-item .image { background-repeat:no-repeat; background-position:center; background-size:cover; }

.paginator {
    margin: 30px 0;
    padding: 0;
    text-align:center;
}
.paginator li {
    display:inline-block;
}
.paginator li a {
    background-color: #fff;
    border: 1px solid #027482;
    border-left:none;
    color: #027482;
    padding: 3px 12px;
    text-decoration: none;
}
.paginator li:first-child a {
    border-left:1px solid #83a7b1;
}
.paginator li a.prev, .paginator li a.next { padding:3px 12px; }
.paginator li a.active {
    background-color: #027482;
    color: #fff;
}

.form-container { display:grid; grid-template-columns:5fr 2fr; grid-column-gap:50px; }
.form-container > DIV:nth-child(2) .form-group { margin-bottom:10px; }

#content { text-align:center; margin-top:95px; padding:60px 0 100px 0; }
#content.no-bottom-padding { padding-bottom:0; }
#content H1 { padding:0 25px 20px 25px; margin-bottom:60px; display:inline-block; font-family:'Bebas Neue', cursive; border-bottom:1px solid #cfcdcc; color:#000; }
#content H5 { font-family:'onelove'; font-size:120px; padding:40px 0 80px 0; }
#content .editorial-container { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; grid-column-gap:20px; grid-row-gap:20px; align-items:start; justify-content:center; text-align:center; }
#content .editorial-container FIGURE { background-color:#f9f6f4; display:table; width:100%; }
#content .editorial-container FIGURE .inner { display:table-cell; height:280px; text-align:center; vertical-align:middle; width:100%; padding:20px; box-sizing:border-box; }
#content .editorial-container FIGURE IMG { max-width:100%; max-height:100%; }
#content .editorial-container SPAN { display:block; text-align:left; font-size:24px; padding:20px 0; line-height:32px; }

#content .editorial-detail-container { display:grid; grid-template-columns:2fr 1fr; grid-column-gap:50px; text-align:left; }
#content .editorial-detail-container H2 { color:#000; font-family:'Bebas Neue', cursive; }
#content .editorial-detail-container .t-table { color:#000; line-height:32px; }
#content .editorial-detail-container HR { margin:30px 0; border:0; border-top:1px solid #eaeaea; }
#content .editorial-detail-container H3 { font-size:24px; font-family:Butler1; color:#000; line-height:32px; }
#content .editorial-detail-container .editorial-photos { display:grid; grid-template-columns:175px 175px 175px; grid-column-gap:40px; grid-row-gap:40px; width:100%; justify-content:center; }
#content .editorial-detail-container .editorial-photos A { height:260px; background-position:center; background-size:cover; }

#content .text-container { text-align:left; }
#content .text-container P IMG[align=left] { margin:0 30px 30px 0; }

#content .brides-container { display:grid; grid-template-columns:1fr 1fr; grid-column-gap:50px; }
#content .brides-container .big-image FIGURE { background-color:#f9f6f4; display:table; width:100%; }
#content .brides-container .big-image FIGURE .inner { display:table-cell; height:575px; text-align:center; vertical-align:middle; width:100%; padding:20px; box-sizing:border-box; }
#content .brides-container .big-image FIGURE IMG { max-width:100%; max-height:100%; }

#prices { display:none; width:800px; text-align:center; }
#prices H2 { color:#000; font-family:'Bebas Neue', cursive; }
#prices UL { width:100%; box-sizing:border-box; padding:0 30px 30px 30px; list-style-type:disc; text-align:left; line-height:32px; }
#prices LI { padding-bottom:10px; }

#content .photos-container { display:grid; grid-template-columns:1fr 1fr 1fr; grid-column-gap:20px; grid-row-gap:20px; align-items:start; justify-content:center; text-align:center; }
#content .photos-container FIGURE { background-color:#f9f6f4; display:table; width:100%; }
#content .photos-container FIGURE .inner { display:table-cell; height:178px; text-align:center; vertical-align:middle; width:100%; padding:20px; box-sizing:border-box; }
#content .photos-container FIGURE IMG { max-width:100%; max-height:100%; }

#content .pagination { padding:50px 0 0 0; margin:0; font-size:14px; }
#content .pagination a { padding:10px; margin:4px; text-decoration:none; color:#646464; }
#content .pagination a:hover, #gallery .pagination a:active { color:#000; text-decoration:underline; }
#content .pagination span.current { padding:10px; margin:4px; font-weight:bold; background-color:rgba(0, 0, 0, 1); color:#FFF; }
#content .pagination span.disabled { padding:10px; margin:4px; border:1px solid #EEE; color:#DDD; }

FOOTER { padding:50px 0 25px 0; background-color:#d3d3dc; }
FOOTER H5, FOOTER H5 A { text-transform:none; padding:0 0 10px 0; color:#000; font-weight:500; }
FOOTER P { line-height:24px; }
FOOTER NAV UL { line-height:24px; font-size:12px; }
FOOTER NAV A { color:#000; }
FOOTER .footer-container { display:grid; grid-template-columns:15% 15% 15% 15% 15% 25%; padding-bottom:50px; }
FOOTER .footer-column.social { text-align:right; }
FOOTER UL.social { font-size:0; padding:5px 0 0 0; }
FOOTER UL.social LI { display:inline-block; padding:0 0 0 15px; }
FOOTER UL.social LI A { width:30px; height:30px; display:block; color:rgba(52,174,223,1); background-color:rgba(52,174,223,0); border:2px solid rgba(52,174,223,1); font-size:18px; text-align:center; line-height:30px; transition:all .5s; }
FOOTER UL.social LI A:hover { background-color:rgba(52,174,223,1); color:rgba(255,255,255,1); }

FOOTER .bottom-container { display:grid; grid-template-columns:calc(100% - 100px) 100px; grid-column-gap:0; font-size:12px; color:#000; padding:25px 0; border-top:1px solid #000; }
FOOTER .bottom-container DIV:first-child { text-align:center; }
FOOTER .bottom-container IMG { width:100px; }