html, body, div, span,
h1, h2, h3, h4, h5, h6, p, blockquote,
a, abbr, acronym, address, img,
small, strong,
dl, dt, dd, ol, ul, li, menu,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; }
table { border-collapse: collapse; table-layout: fixed; border-spacing: 0; width: 100%; }
table td { vertical-align: top; }

div.clear { clear: both; }
.alignCenter { text-align: center; }
.floatRight { float: right; }

html { overflow-y: scroll; }
body { font-family: 'Patrick Hand', cursive; letter-spacing: 1px; font-size: 16px; color: #000000; text-align: center; background: #d8fafb url('./../image/background-body.jpg') center top repeat-x; }

#container { width: 992px; margin: 0px auto; padding: 0px 10px; text-align: left; }

#header { width: 100%; height: 302px; background: transparent url('./../image/background-header.jpg') center center no-repeat; position: relative; }

h1 { display: block; width: 130px; height: 135px; background: url('./../image/logo.png') center center no-repeat; position: absolute; top: 45px; left: 424px; overflow:hidden; font-size: 12px; }
h1 a { display: block; width: 130px; height: 135px; line-height: 135px; cursor: hand; color: #ffffff; }
h1 span { display:block; position: absolute; left: 0; top: 0; z-index: 1; width: 130px; height: 135px; background: transparent url('./../image/logo.png') center center no-repeat; }
#phone { width: 230px; position: absolute; left: 720px; top: 5px; color: #ff0072; font-weight: bold; line-height: 31px; padding-left: 40px; background: transparent url('./../image/header-phone.png') left center no-repeat; font-size: 15px; }
#phone span { color: #0085a6; display: block; }
#phone a { color: #ff0072; text-decoration: none; display: block; float: left; width: 90px; }
#phone a:hover { text-decoration: underline; }
#header > ul { line-height: 44px; position: absolute; color: #004774; text-transform: uppercase; font-weight: bold; font-size: 17px; word-spacing: 2px; }
#header > ul a { color: #004774; text-decoration: none; }
#menu-left { top: 125px; left: 20px; }
#menu-right { top: 125px; right: 20px; }
#header > ul > li { list-style-type: none; float: left; position: relative; }
#header > ul > li > .separator { padding: 0px 10px; background: transparent url('./../image/separator.png') center center no-repeat; display: block; line-height: 44px; height: 44px; width: 0px; }
#header > ul > li > a { display: block; line-height: 44px; margin: 0px 10px; }
#header > ul > li:hover > a, #header > ul a:hover { color: #ff0072; }
#header > ul > li > a .left, #header > ul > li > a .right { width: 10px; height: 44px; display: block; background: transparent center center no-repeat; }
#header > ul > li > a .left { float: left; margin-left: -10px; }
#header > ul > li > a .right { float: right; margin-right: -10px; }
#header > ul > li:hover > a, #header > ul > li.active > a, #header > ul > li > a:hover { background: transparent url('./../image/menu-background.png') center center repeat-x; }
#header > ul > li:hover > a .left, #header > ul > li.active > a .left, #header > ul > li > a:hover .left { background-image: url('./../image/menu-left.png'); }
#header > ul > li:hover > a .right, #header > ul > li.active > a .right, #header > ul > li > a:hover .right { background-image: url('./../image/menu-right.png'); }
#header > ul li ul { visibility: hidden; position: absolute; top: 44px; width: 183px; left: -56px; padding-top: 15px; z-index: 2; }
#header > ul li:hover ul { visibility: visible; }
#header > ul li ul li { list-style-type: none; padding-bottom: 2px; }
#header > ul li ul li a { display: block; line-height: 31px; background: transparent url('./../image/menu-drop-background.png') no-repeat center center; text-align: center; font-size: 14px; }

#page-container { width: 100%; background: transparent url('./../image/page-top.png') center top no-repeat; }
#page { width: 970px; min-height: 320px; padding: 20px 11px; background: transparent url('./../image/page-bottom.png') center bottom no-repeat; position: relative; }
#page #kids { width: 427px; height: 194px; position: absolute; top: -90px; left: 545px; background: transparent url('./../image/page-kids.jpg') center center no-repeat; }

#contentSide { margin-left: 20px; width: 254px; min-height: 320px; float: left; }
.side-menu a { display: block; width: 100%; line-height: 45px; text-align: center; text-decoration: none; text-transform: uppercase; font-weight: bold; font-size: 15px; color: #004774; }
.side-menu a.active { background: transparent url('./../image/left-menu.png') center center no-repeat; }
.side-menu a:hover { color: #ff0072; background: transparent url('./../image/left-menu.png') center center no-repeat; }
.calendar { margin-top: 20px; }
.calendar strong { display: block; width: 100%; line-height: 44px; padding-top: 20px; background: transparent url('./../image/calendar-header.png') center top no-repeat; text-align: center; text-transform: uppercase; font-size: 15px; color: #004774; }
.calendar strong a { color: #004774; text-decoration: none; }
.calendar strong a.navigate { font-size: 20px; margin-top: 12px; width: 15px; height: 15px; display: block; line-height: 15px; text-align: center; }
.calendar strong a:hover { color: #ff0072; }
.calendar strong a.navigate.navigateLeft { float: left; margin-left: 15px; }
.calendar strong a.navigate.navigateRight { float: right; margin-right: 15px; }
.calendar table { margin: 0px 0px; text-align: center; font-size: 14px; color: #004774; }
.calendar table td { width: 36px; line-height: 36px; overflow: hidden; }
.calendar table td a { color: #004774; display: block; text-decoration: none; }
.calendar table td a:hover { color: #ff0072; }
.calendar table td.event { background: transparent url('./../image/calendar-event.png') center center no-repeat; }
.calendar table td.today { background: transparent url('./../image/calendar-today.png') center center no-repeat; }
.sidePhotoBox { width: 254px; height: 203px; margin-top: 10px; position: relative; }
.sidePhotoBox .photoItems { position: absolute; top: 22px; left: 4px; width: 244px; height: 175px; visibility: hidden; position: relative; }
.sidePhotoBox .photoItems img { position: absolute; top: 0px; left: 0px; }
.sidePhotoBox .photoActual { position: absolute; top: 22px; left: 4px; width: 244px; height: 175px; background: transparent center center no-repeat; background-size: cover; }
.sidePhotoBox .photoCover { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: transparent url('./../image/photo-border.png') center center no-repeat; }
.sidePhotoBox .photoCover a { display: block; height: 100%; width: 100%; }

.leftBox { margin-top: 20px; }
.leftBox .boxTop { width: 100%; height: 35px; background: transparent url('./../image/left-box-top.png') center center no-repeat; }
.leftBox .boxContent { padding: 0px 10px; background: transparent url('./../image/left-box-background.png') center top repeat-y; }
.leftBox .boxBottom { width: 100%; height: 12px; background: transparent url('./../image/left-box-bottom.png') center center no-repeat; }
.leftBox .boxContent strong { display: block; text-align: center; text-transform: uppercase; font-size: 16px; color: #004774; }
.leftBox .boxContent label { color: #004774; display: block; margin: 8px 0px 0px; clear: both; line-height: 23px; font-size: 14px; cursor: hand; cursor: pointer; }
.leftBox .boxContent input { float: right; border: 1px solid #a5eef4; width: 170px; color: #004774; line-height: 23px; height: 23px; padding: 0px 5px; border-radius: 5px; font-size: 13px; font-family: 'Patrick Hand', cursive; }
.leftBox .boxContent textarea { display: block; resize: none; border: 1px solid #a5eef4; width: 100%; height: 90px; box-sizing: border-box; color: #004774; line-height: 20px; padding: 5px; border-radius: 5px; font-size: 13px; font-family: 'Patrick Hand', cursive; }
.leftBox .boxContent a.button { display: inline-block; width: 234px; height: 34px; line-height: 34px; text-align: center; background: transparent url('./../image/button.png') center center no-repeat; cursor: pointer; text-transform: uppercase; color: #ffffff; font-size: 16px; margin: 5px 0px 0px; border: 1px solid #a5eef4; box-sizing: border-box; border-radius: 5px; }

#content { float: right; width: 640px; margin-right: 20px; color: #004774; padding-top: 40px; padding-bottom: 9px; position: relative; font-size: 17px; letter-spacing: 0.5px; }
#content a { color: #004774; }
#content a:hover { color: #ff0072; }
#content > h2 { text-transform: uppercase; font-size: 25px; line-height: 60px; margin: 5px 0px 20px; }
#content > h2.class { padding-left: 70px; background-position: left center; background-repeat: no-repeat; background-color: transparent; }
#content > h2.class.apple { background-image: url('./../image/class-title-apple.png'); }
#content > h2.class.sun { background-image: url('./../image/class-title-sun.png'); }
#content > h2.class.heart { background-image: url('./../image/class-title-heart.png'); }
#content > h2.class.butterfly { background-image: url('./../image/class-title-butterfly.png'); }
#content > h2.class.flower { background-image: url('./../image/class-title-flower.png'); }
#content > h2.class.noImage { padding-left: 0px; background: inherit; }
#content p { line-height: 25px; margin: 8px 0px; text-align: justify; }
#content p small { font-size: 14px; }
#content li { margin-left: 20px; }
#content a.iconLink { line-height: 30px; display: block; float: left; margin-bottom: 20px; padding-left: 40px; background: transparent no-repeat left center; }
#content a.iconLinkPdf { background-image: url('./../image/icon-pdf.png'); }
#content img.imageMargin { margin-bottom: 15px; }
#content img.svp { margin-bottom: 15px; }

#content label { color: #004774; display: block; margin: 8px 0px 0px; clear: both; line-height: 30px; font-size: 16px; cursor: hand; cursor: pointer; }
label .required { color: #ff0072; }
#content input { border: 1px solid #a5eef4; width: 222px; color: #004774; line-height: 30px; height: 30px; padding: 0px 5px; border-radius: 5px; font-size: 15px; font-family: 'Patrick Hand', cursive; }
#content textarea { display: block; resize: none; border: 1px solid #a5eef4; width: 100%; height: 200px; box-sizing: border-box; color: #004774; line-height: 20px; padding: 5px; border-radius: 5px; font-size: 15px; font-family: 'Patrick Hand', cursive; }
#content a.button { display: inline-block; width: 234px; height: 34px; line-height: 34px; text-align: center; background: transparent url('./../image/button.png') center center no-repeat; cursor: pointer; text-transform: uppercase; color: #ffffff; font-size: 16px; margin: 5px 0px 0px; border: 1px solid #a5eef4; box-sizing: border-box; border-radius: 5px; }
#content a:hover.button { color: #ffffff; }

strong.className { text-transform: uppercase; }
strong.className.apple { color: #80c018; }
strong.className.sun { color: #ffc02a; }
strong.className.heart { color: #e80151; }
strong.className.butterfly { color: #0190fb; }
strong.className.flower { color: #ffa400; }

.contentBox { margin-top: 20px; }
.contentBox .boxTop { width: 100%; height: 9px; background: transparent url('./../image/content-box-top.png') center center no-repeat; }
.contentBox .boxContent { padding: 21px 32px 20px 30px; background: transparent url('./../image/content-box-background.png') center top repeat-y; }
.contentBox .boxBottom { width: 100%; height: 12px; background: transparent url('./../image/content-box-bottom.png') center center no-repeat; }
.contentBox h2 { margin: -15px 0px 10px; color: #ff0072; }

.photoBox .photoItem { float: left; width: 176px; height: 115px; margin-right: 25px; margin-bottom: 25px; background: transparent no-repeat center center; background-size: cover; }
.photoBox .photoItem.photoLineEnd { margin-right: 0px; }
.photoBox .photoItem.photoLastRow { margin-bottom: 0px; }
.photoBox .photoMore { float: right; display: block; width: 176px; height: 82px; background: transparent url('./../image/photoMore.png') center center no-repeat; text-decoration: none; text-transform: uppercase; color: #ffffff !important; padding-top: 33px; text-align: center; line-height: 23px; }

.classBox { margin-top: 45px; text-align: center; }
#contentSide .classBox { margin-top: 15px; }
.classItem { width: 152px; margin-right: 8px; display: inline-block; background: transparent url('./../image/class-background.png') center top no-repeat; text-decoration: none; color: #004774; }
.classItem.classNone { background: transparent; line-height: 35px; font-size: 23px; text-align: center; text-transform: uppercase; }
.classItem:hover { color: #ff0072; background-image: url('./../image/class-background-hover.png'); }
.classItem.classNone:hover { background: transparent; color: #004774; }
.classItem .classImage { display: inline-block; width: 152px; height: 152px; background: transparent center center no-repeat; }
.classItem.classNone .classImage {  padding-top: 27px; height: 125px; }
.classItem .classImage.classApple { background-image: url('./../image/class-apple.png'); }
.classItem .classImage.classSun { background-image: url('./../image/class-sun.png'); }
.classItem .classImage.classHeart { background-image: url('./../image/class-heart.png'); }
.classItem .classImage.classButterfly { background-image: url('./../image/class-butterfly.png'); }
.classItem .classImage.classFlower { background-image: url('./../image/class-flower.png'); }
.classItem .classText { display: inline-block; line-height: 30px; text-transform: uppercase; text-align: center; font-size: 23px; margin-top: 8px; }
.classItemOther { width: 152px; margin-right: 8px; display: inline-block; padding-top: 27px; line-height: 35px; font-size: 23px; text-align: center; text-transform: uppercase; }

.galleryBack { line-height: 48px; display: block; color: #004774; text-decoration: none; padding-left: 25px; font-size: 17px; text-transform: uppercase; }
.galleryBack span { padding-left: 10px; }
.galleryBack i { float: left; display: block; width: 48px; height: 48px; background: transparent url('./../image/gallery-back.png') 0px 0px no-repeat; }
.galleryBack:hover { color: #ff0072; }
.galleryBack:hover i { background-position: -48px 0px; }

#contentSide .classItem { margin: 0px 51px; }

.flex-images .item .over { background-color: rgba(0, 0, 0, 0.7); bottom: 0; right: 0; position: absolute; color: #ffffff; font-size: 14px; left: 0; padding: 4px 6px; }

.paginationBox { margin-top: 20px; text-align: center; font-size: 15px; line-height: 20px; }
.paginationBox a { text-decoration: none; }
.paginationBox a:hover { text-decoration: underline; }
.paginationBox span.separator { padding: 0px 5px; }
#content .paginationBox a.active { color: #ff0072; }

.pink { color: #ff0072; }
.pinkTitle { color: #ff0072; text-transform: uppercase; padding: 0px; font-size: 25px; }
.pinkTitle .date { margin-left: 15px; font-size: 14px; }
.contactMotto { color: #00c4d6; font-size: 25px; }
.contactInfo strong { display: block; text-transform: uppercase; }
.contactInfo span { display: block; }

.eventItem { font-size: 16px; }
.eventItem .selectedEvent { color: #ff0072; }

.left-separator { display: block; width: 100%; height: 10px; background: transparent url('./../image/left-separator.png') center center repeat-x; }
.left-separator.separatorMargin { margin: 15px 0px; }

#footer { width: 100%; height: 50px; text-align: center; line-height: 50px; color: #004774; text-transform: uppercase; }
#footer a { color: #004774; text-decoration: none; }
#footer a:hover { color: #ff0072; }
#footer span.separator { padding: 0px 15px; background: transparent url('./../image/separator.png') center center no-repeat; }