
/* === START GENERIC STYLES === */

/* Restricted declaration reset */

* { margin:0; padding:0; }
html, body { margin:0 !important; padding:0 !important; border:0 !important; outline:0 !important; }
sup { vertical-align: text-top; }
.text_navigationname_home { visibility: hidden; }
.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}


/* === END GENERIC STYLES === */


@font-face {     font-family: 'montserratblack';     src: url('/_css/fonts/montserrat-black-webfont.eot');     src: url('/_css/fonts/montserrat-black-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-black-webfont.woff2') format('woff2'),          url('/_css/fonts/montserrat-black-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-black-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-black-webfont.svg#montserratblack') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratbold';     src: url('/_css/fonts/montserrat-bold-webfont.eot');     src: url('/_css/fonts/montserrat-bold-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-bold-webfont.woff2') format('woff2'),          url('/_css/fonts/montserrat-bold-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-bold-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-bold-webfont.svg#montserratbold') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserrathairline';     src: url('/_css/fonts/montserrat-hairline-webfont.eot');     src: url('/_css/fonts/montserrat-hairline-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-hairline-webfont.woff2') format('woff2'),          url('/_css/fonts/montserrat-hairline-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-hairline-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-hairline-webfont.svg#montserrathairline') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratlight';     src: url('/_css/fonts/montserrat-light-webfont.eot');     src: url('/_css/fonts/montserrat-light-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-light-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-light-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-light-webfont.svg#montserratlight') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratregular';     src: url('/_css/fonts/montserrat-regular-webfont.eot');     src: url('/_css/fonts/montserrat-regular-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-regular-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-regular-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-regular-webfont.svg#montserratregular') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratultra_light';     src: url('/_css/fonts/montserrat-ultralight-webfont.eot');     src: url('/_css/fonts/montserrat-ultralight-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-ultralight-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-ultralight-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-ultralight-webfont.svg#montserratultra_light') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratextra_bold';     src: url('/_css/fonts/montserrat-extrabold-webfont.eot');     src: url('/_css/fonts/montserrat-extrabold-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-extrabold-webfont.woff2') format('woff2'),          url('/_css/fonts/montserrat-extrabold-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-extrabold-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-extrabold-webfont.svg#montserratextra_bold') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'montserratsemi_bold';     src: url('/_css/fonts/montserrat-semibold-webfont.eot');     src: url('/_css/fonts/montserrat-semibold-webfont.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/montserrat-semibold-webfont.woff2') format('woff2'),          url('/_css/fonts/montserrat-semibold-webfont.woff') format('woff'),          url('/_css/fonts/montserrat-semibold-webfont.ttf') format('truetype'),          url('/_css/fonts/montserrat-semibold-webfont.svg#montserratsemi_bold') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'Norwester-Regular';     src: url('/_css/fonts/Norwester-Regular.eot');     src: url('/_css/fonts/Norwester-Regular.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/Norwester-Regular.woff') format('woff'),          url('/_css/fonts/Norwester-Regular.ttf') format('truetype'),          url('/_css/fonts/Norwester-Regular.svg#norwesterregular') format('svg');     font-weight: normal;     font-style: normal; }
@font-face {     font-family: 'HaginCapsMedium';     src: url('/_css/fonts/HaginCapsMedium.eot');     src: url('/_css/fonts/HaginCapsMedium.eot?#iefix') format('embedded-opentype'),          url('/_css/fonts/HaginCapsMedium.woff2') format('woff2'),          url('/_css/fonts/HaginCapsMedium.woff') format('woff'),          url('/_css/fonts/HaginCapsMedium.ttf') format('truetype'),          url('/_css/fonts/HaginCapsMedium.svg#norwesterregular') format('svg');     font-weight: normal;     font-style: normal; }
body{ font-size: 16px; line-height: 1.5; color: #5c6467; font-family: montserratlight, sans-serif; background: #EEEEEE url(/_css/image/background_grey.jpg); }
#wrapper{ width: 960px; overflow: hidden; background: #FFFFFF; margin: 60px auto; padding: 0 30px 0 30px; border-radius: 10px; position: relative; z-index: 0; }
#wrapper a img{ border: none; }
#ribbon_top { font-family: montserratlight, sans-serif; font-size: 14px; color: #FFFFFF; text-align: center; text-transform: uppercase; background: #ec008c url(/_css/image/arrowleft_10.png) no-repeat left; text-decoration: none; padding: 10px 0px; width: 255px; position: absolute; top: 0; right: 0; line-height: 1; z-index: 7; }
#header{ padding: 30px 0 15px 0; position: relative; border-bottom: #666666 1px dotted; height: 148px; z-index: 6; }
#header #logo{ float: left; }
#header #logo a{ display: block; width: 238px; height: 148px; background: url(/_css/image/airyfairylogo.jpg) no-repeat; background-size: contain; }
#header #logo a span{ position: absolute; left: -99999px; }
#header .area_nav{ font-size: 14px; text-transform: uppercase; line-height: 1; list-style-type: none; position: absolute; bottom: 0; right: 0; z-index: 6; }
#header .area_nav .item_navitem{ float: left; margin-left: 15px; padding-bottom: 15px; min-width: 48px; }
#header .area_nav .first_nav_item{ margin-left: 0; display: none; }
#header .area_nav .item_navitem a{ display: block; text-decoration: none; color: #5c6467; padding-top: 52px; min-width: 90px; text-align: center; }
#header .area_nav .item_navitem a:hover{ color: #ed008c; }
#header .area_nav .item_navitem_number0 a{ background: url(/_css/image/envolope_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number0 a:hover{ background: url(/_css/image/envolope_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number1 a{ background: url(/_css/image/cupcake_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number1 a:hover{ background: url(/_css/image/cupcake_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number2 a{ background: url(/_css/image/wedding_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number2 a:hover{ background: url(/_css/image/wedding_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number3 a{ background: url(/_css/image/crown_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number3 a:hover{ background: url(/_css/image/crown_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number4 a{ background: url(/_css/image/heart_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number4 a:hover{ background: url(/_css/image/heart_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number5 a{ background: url(/_css/image/slice_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number5 a:hover{ background: url(/_css/image/slice_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem_number6 a{ background: url(/_css/image/gingerbread_42.png) top center no-repeat; }
#header .area_nav .item_navitem_number6 a:hover{ background: url(/_css/image/gingerbread_42.png) center -62px no-repeat; }
#header .area_nav .item_navitem a span{ display: block; background: #FFFFFF; }
#header .area_nav .item_navitem ul{ position: absolute; top: 81px; left: -99999px; background: #FFFFFF; z-index: 5; }
#header .area_nav .item_navitem:hover ul, #header .area_nav .item_navitem_jshover ul{ left: auto; }
#header .area_nav .item_navitem .item_navitem{ margin: 0; padding: 0; float: none; min-width: auto; border: 1px solid; border-width: 0px 1px 1px 1px; }
#header .area_nav .item_navitem .first_nav_item{ display: block; border-top: solid 1px; }
#header .area_nav .item_navitem .item_navitem a{ padding: 10px 15px; background: none; background: #FFFFFF; text-align: left; }
#header .area_nav .item_navitem .item_navitem a span{ padding: 0; background: none; }
#header .item_navitem:hover .item_navitem a{ border-bottom: none; }
#header .item_navitem.current:hover .item_navitem .first_navitem a{ border-top: 0; }
#header .area_nav .item_navitem ul ul{ position: static; top: auto; padding: 0; border: 0; }
#header .area_nav .item_navitem ul ul .item_navitem{ border: 0; }
#header .area_nav .item_navitem ul ul .first_nav_item{ border-top: solid 1px; }
#header .area_nav .item_navitem ul ul .item_navitem a{ padding-left: 30px; background: #FFFFFF url(/_css/image/small_arrow20.png) no-repeat 15px center; }
#middle{ padding-top: 15px; overflow: hidden; }
#main_column{ width: 630px; float: left; }
#photobanner{ padding-bottom: 15px; border-bottom: #666666 1px dotted; margin-bottom: 15px; position: relative; overflow: hidden; }
#photobanner .banner_item{ overflow: hidden; }
.item_photobanner2 img{ display: block; }
#photobanner .image{ float: left; }
.item_photobanner2 img, #photobanner .image{ z-index: 1; }
#photobanner .banner_item{ z-index: 2; }
#photobanner .item_photobanner2 .banner_item{ width: 100%; }
#photobanner .text{ position: relative; font-family: montserratlight, sans-serif; text-align: center; width: 222px; height: 348px; margin-left: 378px; padding: 15px; background: #FFD6EF; line-height: 1.8; }
#photobanner .text h2{ color: #5c6467; line-height: 1; font-family: montserratregular, sans-serif; font-weight: normal; text-transform: uppercase; margin-bottom: 15px; letter-spacing: 1px; font-size: 18px; }
#photobanner .text a{ color: #5c6467; text-decoration: none; }
#photobanner .body a{ font-family: montserratregular, sans-serif; font-size: 14px; text-transform: uppercase; text-align: center; line-height: 1.2; display: block; width: 96px; background: #FFADDE; padding: 10px; position: absolute; bottom: 15px; left: 72px; }
.item_photobanner2 .navigation_buttons li{ display: none; }
#photobanner .body a:hover{ background: #FF85CE; }
.item_paragraph a, .pagetitle a{ color: #5c6467; }
.item_paragraph a:hover, .pagetitle a:hover{ color: #ed008c; }
#side_column{ width: 300px; float: right; }
#side_column .item_photobanner2 { padding-top: 30px; }
#side_column .item_photobanner2 .banner_item{ padding-top: 30px; }
#side_column .item_photobanner2 .text{ width: 300px; position: absolute; top: 0; left: 0; }
#side_column h2{ font-family: montserratlight, sans-sefif; color: #FFFFFF; font-size: 14px; font-weight: normal; line-height: 1; padding: 8px 15px; background: #ec008c url(/_css/image/arrowright_10.png) no-repeat right; }
#side_column .grey{ background: #5d6468 url(/_css/image/arrowright_10.png) no-repeat right; }
#side_column h2 a{ color: #FFFFFF; text-decoration: none; }
.block{ overflow: hidden; margin-bottom: 15px; }
#social{ padding: 10px 0; list-style-type: none; overflow: hidden; }
#social li{ width: 50px; height: 50px; margin-right: 10px; float: left; }
#social a{ display: block; width: 50px; height: 50px; background: url(/_css/image/social_icons_v2.png) no-repeat; }
#social .twitter a{ background: url(/_css/image/social_icons_v2.png) -50px 0 no-repeat; }
#social .instagram a{ background: url(/_css/image/social_icons_v2.png) -100px 0 no-repeat; }
#social span{ position: absolute; left: -99999px; }
.item_heading h2, .text_navigationname{ font-family: Norwester-Regular; font-weight: normal; font-size: 24px; letter-spacing: 2px; }
.text_navigationname{ padding: 4px 0; margin-bottom: 16px; }
.item_subheading h3{ font-family: montserratregular, sans-serif; font-size: 18px; }
.home .text_navigationname{ position: absolute; left: -99999px; }
.item_gallery { padding: 0 67.2px; }
.item_gallery .item_photo{ margin: 7.5px; }
.item_gallery .item_photo a:hover .title{ background: #ec008e; color: #FFFFFF; }
.item_gallery img{ display: block; }
.item_list{ color: #EC008E; }
.item_list .item_listitem{ color: #5c6467; } 
.item_divider hr{ border-style: dotted; }
.item_contentlink, .item_file { height: 44px; padding-left: 52px; background: url(/_css/image/link_sprite.png) no-repeat; }
.item_file { background: url(/_css/image/file_sprite.png) no-repeat; }
.item_contentlink:hover, .item_file:hover{ background: url(/_css/image/link_sprite.png) 0 -52px no-repeat; }
.item_file:hover{ background: url(/_css/image/file_sprite.png) 0 -52px no-repeat; }
.item_contentlink a, .item_file a{ font-family: HaginCapsMedium, sans-serif; font-size: 18px; color: #5c6467; text-decoration: none; text-transform: uppercase; display: block; border: solid 2px #EC008E; border-width: 2px 0px; letter-spacing: 1px; background: none; padding: 10px 8px 6px 8px; }
.item_contentlink a:hover, .item_file a:hover{ color: #EC008E; }
.contact_form fieldset { width: 630px; border: none; overflow: hidden; }
.contact_form label { width: 180px; display: block; padding: 6px 0; float: left; clear: left; }
.contact_form input, .contact_form input[type="date"], .contact_form select, .contact_form textarea { box-sizing: border-box; color: #5c6467; font-size: 16px; font-family: montserratlight, sans-serif; font-weight: normal; line-height: 1.5; width: 450px; display: block; padding: 5px 15px; border: solid 2px #5c6467; border-radius: 5px; outline: none; margin-bottom: 16px; float: left; }
.contact_form input:focus, .contact_form select:focus, .contact_form textarea:focus { border: solid 2px #ec008c; }
.contact_form input[type="date"] { min-height: 38px; -webkit-appearance: none; }
.contact_form select { min-height: 38px; }
.contact_form .button { color: #FFFFFF; width: auto; border: none; background: #ec008c; -webkit-appearance: none; }
.contact_form .button:hover, .contact_form .button:focus { border: none; background: #5c6467; transition: background-color 0.3s ease; }
.contact_form .recaptcha, .contact_form .button { margin-left: 180px; }
.contact_form .button { margin-bottom: 32px; }
.form_errors { color: #ec1696; width: 598px; padding: 8px 15px; border: solid 1px #ec008c; border-radius: 5px; margin-bottom: 32px; background: #FEE8F5; }
.form_errors .item_subheading { margin-bottom: 0; }
#footer{ border-top: 1px #666666 dotted; padding: 15px 0 30px 0; overflow: hidden; }
#footer cite{ font-style: normal; }
#footer a{ color: #5c6467; text-decoration: none; }
#footer a:hover{ color: #ed008c; text-decoration: underline; }
.text_footer, .terms_and_privacy{ display: block; float: left; }
.terms_and_privacy{ margin-left: 10px; float: right; }
