/** Shopify CDN: Minification failed

Line 210:0 Comments in CSS use "/* ... */" instead of "//"
Line 426:112 Unexpected "{"
Line 555:2 Comments in CSS use "/* ... */" instead of "//"
Line 634:0 Comments in CSS use "/* ... */" instead of "//"
Line 849:0 Comments in CSS use "/* ... */" instead of "//"
Line 866:0 Comments in CSS use "/* ... */" instead of "//"
Line 879:0 Comments in CSS use "/* ... */" instead of "//"
Line 915:4 Comments in CSS use "/* ... */" instead of "//"
Line 931:15 Expected identifier but found whitespace
Line 1033:0 Comments in CSS use "/* ... */" instead of "//"

**/
/*============================================================================
  [replace with theme name] | Built with Slate
    - You cannot use native CSS/Sass @imports in this file without a build script
==============================================================================*/
/*
/*  SECTION 1
/*    1.1 - Base Styles
/*    1.2 - HTML5 Elements
/*    1.3 - Forms and Inputs
/*    1.4 - Typography
/*    1.5 - Links and Buttons
/*    1.6 - Tables
/*    1.7 - Icons
/*    1.8 - Tags
/*
/*  SECTION 2
/*    2.1 - Helper classes
/*    2.2 - Grid system
/*    2.3 - Lists
/*
/*  SECTION 3
/*    3.1 - Toolbar
/*    3.2 - Header
/*    3.3 - Navigation
/*    3.4 - Footer
/*    3.5 - Homepage
/*    3.6 - Product & Collections
/*    3.7 - Cart
/*    3.8 - Blogs/Articles/Search
/*    3.9 - Customer Pages
/*	  3.10- Notification Bar
/*
/*  SECTION 4
/*    4.1 - Media Query - Desktop Slim
/*    4.2 - Media Query - Tablet Landscape
/*    4.3 - Media Query - Mobile Landscape
/*    4.4 - Media Query - Mobile Portrait
/*
/*  SECTION 5
/*    5.1 - IE Fixes
/*
/*  SECTION 6
/*    6.1 - Fancybox plugin
/*    6.2 - FlexSlider plugin
/*    6.3 - jQuery Tabs
/*    6.4 - Web Fonts
/*    6.5 - Example Products & Content Tooltip
/*
/*  SECTION 7
/*	  7.1 - Swatches Styles
/*	  7.2 - SPR Styles
/*	  7.3 - Shapify
/* 	  7.4 - Yotpo and socialphotos
/*	  7.5 - random hacks
/* 	  7.6 - useful classes
/*    7.7 - buy button css


/* =================== */
/*      SECTION 1      */
/* =================== */
/* 1.1 - Base Styles */
html,body { margin: 0; padding: 0; border: 0; background-color: ; -webkit-font-smoothing: antialiased; }
html { font-size: 62.5%; -webkit-text-size-adjust:none; -ms-text-size-adjust:100%; height: 100%; }
body { line-height: 21px; font-size: 13px; color: ; min-height: 100%; }

/* 1.2 - HTML5 Elements */
article, aside, details, figcaption, figure, dialog, footer, header, hgroup, menu, nav, section { display:block; }

/* 1.3 - Forms and Inputs */
form { margin:0; padding:0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; }
button, input { line-height: normal; -webkit-appearance: none; border-radius: 0;  }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="search"] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
textarea { overflow: auto; vertical-align: top; }
select, input[type=file] { height: 27px; height: auto; line-height: 27px; }
input[type=password]:focus, input[type=text]:focus, input[type=number]:focus, input[type=email]:focus, textarea:focus { outline:none; }
input[type=checkbox],input[type=radio] { height:16px; line-height:16px; vertical-align:middle; }
input[type=checkbox] { -webkit-appearance:checkbox; }
input[type=file] { cursor:pointer; border:none; box-shadow:none; padding:0; margin:0; }
input[type=submit] { cursor:pointer; }
select { font-size:1em; display:inline-block; color:#222;  vertical-align:top; height:22px; line-height:22px; padding:2px; padding:initial; border:1px solid #ccc; border-radius:0; -moz-border-radius:0; -webkit-border-radius:0; }
@-moz-document url-prefix() { select { padding:0px;  } } /* Firefox fix */
select:focus, select.focus { outline:none; border:1px solid #4c90ee; -webkit-box-shadow:0px 0px 2px 1px rgba(76, 144, 238, 0.3) inset, 0px 0px 2px 0px rgba(76, 144, 238, 0.2); -moz-box-shadow:0px 0px 2px 1px rgba(76, 144, 238, 0.3) inset, 0px 0px 2px 0px rgba(76, 144, 238, 0.2); box-shadow:0px 0px 2px 1px rgba(76, 144, 238, 0.3) inset, 0px 0px 2px 0px rgba(76, 144, 238, 0.2); }
textarea { min-height:72px; }
img { max-width:100%; border: 0; -ms-interpolation-mode: bicubic; }
ul, ol { margin: 0; padding: 0; }
ul li { margin-bottom: 5px; }
ul { list-style:none; }
.documentation-header { margin-bottom: 30px !important; }

/* 1.4 - Typography */
/* 1.5 - Links and Buttons */
/* 1.6 - Tables */
/* 1.7 - Icons */
/* 1.8 - Tags */

/* =================== */
/*      SECTION 2      */
/* =================== */
/* 2.1 - Helper Classes */
/* 2.2 - Grid System */
/* 2.3 - Lists */

/* =================== */
/*      SECTION 3      */
/* =================== */
/* 3.1 - Toolbar */
/* 3.2 - Header */
/* 3.3 - Navigation */
    nav { position: relative; }
    nav > ul > li { margin-bottom: 0; }
    nav > ul > li > a { text-decoration: none; color: #fff; font-size: 14px; }
    nav > ul > li.dropdown > a { padding-right: 15px; margin-right: 10px; background:url('//sandbox.rhinoshield.tw/cdn/shop/t/59/assets/arrow-dark.png?v=4648') no-repeat 100% 50%; }
    nav > ul > li.dropdown > .dropdown { background: #fff; list-style: none outside none; padding: 5px 15px; display: none; position: absolute; min-width: 180px; z-index: 99999; top: 100%; left: 0%; margin-left: 15px; border: 1px solid ; }
    nav > ul > li.dropdown li { list-style: none; font-size: 13px; line-height: 30px; }
    nav > ul > li.dropdown li a { line-height: 30px; height: 30px; font-size: 15px; color: ; }
    
    .nav-table { display: table; }
    .nav-logo { display: table-cell; float: none; vertical-align: middle; }
    .nav-links { display: table-cell; float: none; vertical-align: middle; }
    .logo h1 { text-align: left; }
    .logo a img, .logo h1 a { margin: 0; }
    nav { position: relative; border: none; float: right; }
    nav > ul > li:first-child > a { padding-left: 0; }
    nav > ul > li.dropdown > a { margin-right: 0; }
    nav > ul > li.dropdown > a { margin-right: 0; }
    
    nav > ul > li { display: block; padding: 0; float: none; }
    nav > ul > li.dropdown > .dropdown { text-align: left; }
    nav > ul > li.dropdown > .dropdown > li { display: block; }
    nav > ul > li .toolbar-wide-click {padding:10px 0px;margin-right:5px;}
    nav > ul > li .toolbar-wide-click:hover {background-color:#000;}

    nav.mobile { display: none; border: none; }

    nav.mobile select { height: 30px; line-height: 30px; width: 100%; }

    .mobile-navbar {
      display:none;
      }
    .mobile {display:none;}


    @media screen and (max-width: 768px) {
      /* #menu is the original menu */
      .desktop-navbar {
        display:none;
      }

    .mobile-navbar {
      display:block;
      }
    .mobile {display:initial;}
    .not-mobile {display:none !important;}
    }
  @media screen and (min-width: 768px) {
    /* #menu is the original menu */
    .mobile {display:none !important;}
    .not-mobile {cursor: default;}
}

/* 3.4 - Footer */
/* 3.5 - Homepage */
/* 3.6 - Product & Collections */

/* 3.7 - Cart */
#checkout {  color: #fff; vertical-align: middle; }
.checkor { display: block; margin: 10px auto; font-size: 15px; text-transform: uppercase; }
#update-cart { margin-top: 10px; }
.orcart { display: block; float: right; margin-top: 14px; }

@media only screen and (min-width: 601px) {
  #cart table tr.summary.show-on-medium-and-up.hide-on-small-and-down { display: table-row !important;  }
}

@media only screen and (max-width: 600px) {
  #cart #checkout-note-and-confirm .cart-buttons a,
  #cart #checkout-note-and-confirm .cart-buttons input
  {
    width:100%;
    margin-left: 0;
    margin-right: 0;
  }

  #cartform .row {
    margin:0;
  }

}

#checkout-note-and-confirm { display:block; box-sizing:border-box;}
// #checkout-note-and-confirm * {vertical-align:top; text-align:center;}
#checkout-note-and-confirm > div { box-sizing:border-box;}

#checkout-note-and-confirm .cart-buttons > div {display:block; margin:10px auto;}
#checkout-note-and-confirm .checkout-buttons:first-child {
  margin-top:0px;
}
#checkout-note-and-confirm .checkout-buttons:first-child label {font-size:15px;}

#checkout-note-and-confirm .cart-buttons {
  text-align: right;
}

#checkout-note-and-confirm .cart-buttons .continue-shopping {
  width: 210px;
  min-width: 210px;
  border-radius: 25px;
  color: #f2f2f2;
  margin: 1em;
  height: 42px;
  float: none;
  background-color: #000;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

#checkout-note-and-confirm .cart-buttons .checkout {
  width: 210px;
  min-width: 210px;
  border-radius: 25px;
  padding: 0;
  font-size: 1em;
  height: 42px;
  line-height: 42px;
  float: right;
  margin: 1em;
}
#checkout-note-and-confirm .accordion {
  border-radius: 30px;
  width: 250px;
  margin-left: auto;
  color: white;
  margin-right: auto;
  background-color:rgb(153, 153, 153);
}


#update-cart-button {width:100%;height:50px;}
#update-cart-button input {float:right;}
.subtext.success { font-weight: bold; color: #40954a; }
div.errors, .subtext.error { color: #444; padding: 15px !important; background: #ebcece; width: 247px; }
div.errors, .subtext.error ul { list-style: none; margin: 0; padding: 0; }
div.errors { margin-bottom: 15px; }

.return-to-store {display:none;}

#shipping-calculator div > p * {width:100%;  box-sizing: border-box; height: 25px; box-shadow: none;}
#shipping-calculator div > p input {
  border: 1px solid #b5b5b5;
}

#shipping-calculator .calculate-btn {
  position: absolute;
  top: 125px;
  left: 100%;
  margin-left: 10px;
  input {
    border-radius: 15px;
    height: 35px;
    &:hover {
      opacity: 0.8;
    }
  }
}
#shipping-calculator li {list-style:circle;margin-left:15px;text-align:left;}

#shipping-calculator { margin-top: 15px; width: 25%; margin: 0 0 0 1em; position: relative;}
   .accordion {
       margin: 0;
       padding: 10px;
       text-decoration: none;
       font-weight: bold;
       font-size: 1.4em;
       position: relative;
   }
   .accordion-open span {
       display: block;
       position: absolute;
       right: 3px;
       top: 25% ;
       padding: 10px;
   }
   .accordion-open span {
       background: url('//sandbox.rhinoshield.tw/cdn/shop/t/59/assets/minus.png?v=4648') center center no-repeat;
   }
   .accordion-close span {
       display: block;
       position: absolute;
       right: 3px;
       top: 25%;
       background: url('//sandbox.rhinoshield.tw/cdn/shop/t/59/assets/plus.png?v=4648') center center no-repeat;
       padding: 10px;
   }
   .faqpage div.container {
       padding: 0;
       margin: 0;
   }
   .faqpage div.container {
       max-width: 100% ;
       padding: 0px 0;
   }
   .faqpage div.content {
       background: #ffcd00;
       margin: 0;
       padding: 10px;
       font-size: 1.2em;
       line-height: 2em;
   }
   .faqpage div.content ul {
       padding: 0;
       margin: 0;
       padding: 3px;
   }
   .faqpage div.content p {
       padding: 0;
       margin: 3px 0 10px;
       padding: 3px;
   }
   .faqpage div.content ul li {
       list-style-position: inside;
       line-height: 25px;
   }


#cartform #cart-content-and-update-button {width:55%; float:left;box-sizing:border-box;}
#cartform #cart-content-and-update-button > div input {float:right;}

#cartform table thead th, #cartform .table .thead .th {border:none; padding-bottom: 12px;}

#cartform .table input.item-quantity, #cartform input.item-quantity {height: 32px;}
#cartform table tr.summary td, #cartform .table .tr.summary .td {border-bottom:none; vertical-align: bottom;}
#cartform table tr.summary td:first-child, #cartform .table .tr.summary .td:first-child{
  text-align: left;
}
#cartform table input[type=number]::-webkit-inner-spin-button {
  opacity: 1
}
#note {padding:17px 20px;}
#cartform #checkout {  background-color: #FFEF00; color: rgb(47, 47, 47); text-decoration: none; }

.gift-packaging {
  border-top: 1px solid #d0d0d0;
  padding-top: 30px;
}

/* 3.8 - Blog / Articles / Search */
#blog .pagination { margin-top:40px; }
#blog .details { width: 100%; max-width: 1200px; margin: 0 auto;}
.articles { width: 80%; }
.sidebar { width:20%; }
.recentbox, .tagsbox { background: #eee; padding: 20px; }
.recentbox { margin-bottom: 30px; }
.sidebar h3 { -webkit-font-smoothing: antialiased; font-size: 16px; text-transform: uppercase; line-height: 22px; border-bottom: solid 1px ; padding-bottom: 10px; }
.sidebar .article { padding-right: 0 !important; margin: 0 0 15px 0 !important; border-bottom: solid 1px ; }
.sidebar .article:last-child { margin: 0; border-bottom: 0; }
.sidebar .article a { display: block; -webkit-font-smoothing: antialiased; }
.sidebar .article em { font-size: 11px; }
.sidebar .tags li { margin: 0; }
.article h1 .article-title { display: block; }
.article h1 a:hover {  }
.article-body h1 .date { font-size: 14px; color:#ABABAB; margin-bottom:20px;  }
.article .continue { display: block; margin-top: 15px; }
#article .comment { margin-bottom: 15px; }
#article .comment_form { margin-top: 30px; }
#article .comment_form .subtext { margin-bottom: 15px; }
#article .comment_form label { display: block; }
#article .comment_form .text { margin-bottom: 15px; display:block; }
#article h2.comment-title { font-size: 20px; }
#article #comment_body { width: 100%; height: 200px; }
#article h3.author { font-size: 14px; font-style: italic; }
#article__content h1 { color: ;  font-size:36px; line-height:36px; }
#article__content h2 { color: ;  font-size: 28px; line-height:36px; }
#article__content h3 { color: ;  font-size: 28px; line-height: 28px; }
#search {
  padding-top: 20px;
  max-width: 1200px;
  margin: 0 auto;
}
#search .results {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#search .results .search-result {
  color: #b3b3b3;
  font-size: 1em;
}
#search .results .thumbnail a { display:block; float:right; }
#search .search-border { border-bottom: 1px solid ; }
#search .results .thumbnail a { float: none; }
#search .search-field { position: relative; height: 60px; line-height: 60px; }
#search .search_box { height: 34px; padding: 0 10px 0 31px; border: none; vertical-align: middle; line-height: normal; color:  !important; border: 1px solid ; }
#search #go { position: absolute; width: 14px; height: 14px; border: none; margin: 19px 0 0 4px; box-shadow: none; }
/* Page / Article content */
 #blog, #page, .errorpage, #collection, #product { padding: 30px 50px 40px 55px; line-height: 20px; font-size: 13px; }
.cartpage #cartform {
  padding: 0;
}
.errorpage { text-align: center; padding: 200px 0; }
.errorpage .subtext { width: 300px; display: block; margin: 0 auto; }
#page img[style="float: right;"], .article img[style="float: right;"] { margin-left: 30px; margin-bottom: 30px; }
#page img[style="float: left;"], .article img[style="float: left;"] { margin-right: 30px; margin-bottom: 30px; }
#page h1 { font-size: 30px; line-height: 40px; text-transform: uppercase; }
#page a:not(.not__underline) { text-decoration: underline; }
#page .details, #cart .details, #collection.details, #product .details, #article.details, #collection .details, {
  width: 85%; margin: 0 auto; padding-top:20px; max-width: 1200px
}
#product .details,   #collection .details, #cart .details {padding-top:0; width:100%;}
#customer-login .details { width: 280px; margin: 0 auto; padding: 100px 0 50px }
/*- - Jim Add - -*/
#customer-register .details { width: 560px; margin: 0 auto; padding: 100px 0 50px; box-sizing: border-box; }

.expanded-message { padding: 100px 0; text-align: center; }


/* 3.9 - Customer Pages */
#customer_password {
  position: relative
}

.input__eye {
  width: 25px;
  left: 85%;
  position: absolute;
  bottom: -2px;
  cursor: pointer;

  @media only screen and (max-width: 768px) {
    left: 82%;
  }
}

#login input.text { width: 248px; }
#customer-activate .create-password { margin-bottom: 30px; }
#customer-activate .label, #customer-login .label, #customer-reset-password .label, #customer-register .label { display: block; }
#customer-activate .text, #customer-login .text, #customer-reset-password .text, #customer-register .text { width: 87%; display: block; margin-bottom: 15px; padding-left: 10px; border: 1px solid ; }
#customer-login .action_bottom, #customer-register .action_bottom { margin-top: 15px; text-align:center; }
#guest input, #customer-login .action_bottom input, #customer-register .action_bottom input { background-color: #000; color: #fff; padding: 5px; }
/*- - Jim add - -*/
#customer-register .action_bottom input {padding: 5px 20px;}
.action_bottom span { line-height: 40px; display: block; }

textarea:focus, input:focus { outline: 0; }

/* For Privacy Policy */
.shopify-policy__container{
  max-width: 600px !important;
	width: 100%;
	margin: 100px auto 96px !important;
	padding: 0 !important;
  @media only screen and (max-width: 768px){
		padding: 0 30px !important;
  }
  .shopify-policy__title{
    font-size: 28px;
		line-height: 33px;
		text-align: center;
		font-weight: bold;
		color: #2D2D2D;
		margin: 0;
		margin-bottom: 14px;
		padding: 0;
    h1{
      font-size: 28px !important;
      margin: 0 !important;
    }
  }
  .shopify-policy__body{
    max-width: 600px;
		width: 100%;
		margin: 0 auto;
		font-size: 14px;
		line-height: 24px;
		color: #4F4F4F;
		padding: 0 !important;
    ul{
			padding-left: 18px;
			li{
				list-style-type: disc;
      }
    }
    hr{
			margin: 60px auto;
			border-style: solid;
			border-width: 0.5px;
			border-color: #D5D5D5;
			background-color: #D5D5D5;
			color: #D5D5D5;
			width: calc(100% + 20px);
			position: relative;
			left: -10px;
      &:first-of-type{
        margin-top: 40px;
      }
    }
    h1,h2,h3,h4,h5,h6,b,strong{
			font-weight: bold;
			color: #2d2d2d;
    }
		h1{
			margin: 0;
			margin-bottom: 20px;
			font-size: 20px;
			line-height: 23px;
    }
		h2{
			font-size: 20px;
			line-height: 23px;
    }
		h2,h3,h4,h5,h6{
			margin-top: 30px;
    }
		a{
			color: #2F80ED;
			font-weight: bold;
    }
  }
}

.rte {
  img {
    height: auto;
  }

  table {
    table-layout: fixed;
  }

  ul,
  ol {
    margin: 0 0 (30px / 2) 30px;
  }

  // Match the styles from RTE nested lists
  ul {
    list-style: disc outside;

    ul {
      list-style: circle outside;

      ul {
        list-style: square outside;
      }
    }
  }
}

.text-center.rte,
.text-center .rte {
  ul,
  ol {
    margin-left: 0;
    list-style-position: inside;
  }
}

/* 3.10 - Notification Bar and Notifications */


/* =================== */
/*      SECTION 4      */
/* =================== */
/* 4.1 - Desktop Slim */
/* 4.2 - Tablet Landscape */
/* 4.3 - Mobile Landscape */
/* 4.4 - Mobile Portrait */

/* =================== */
/*      SECTION 5      */
/* =================== */
/* 5.1 - IE Fixes */

/* =================== */
/*      SECTION 6      */
/* =================== */
/* 6.1 - FancyBox */
/* 6.2 - FlexSlider */
/* 6.4 - Web Fonts */
/* 6.5 - Example Products & Content Tooltip */
    .helper-note {font-size:16px; background: #31373d; border: none; color: ; padding: 30px; position: absolute; max-width:510px; margin-left:-255px; left:50%; z-index:99999; opacity: 0; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; filter: alpha(opacity = 0); -webkit-transition: opacity 0.1s cubic-bezier(0,0,0.33,1), margin-top 0.5s cubic-bezier(0.45, 0, 0, 0.95); -moz-transition: opacity 0.1s cubic-bezier(0,0,0.33,1), margin-top 0.5s cubic-bezier(0.45, 0, 0, 0.95); transition: opacity 0.1s cubic-bezier(0,0,0.33,1), margin-top 0.5s cubic-bezier(0.45, 0, 0, 0.95); }
    @media only screen and (max-width: 509px) { .helper-note { width:270px; margin-left:-145px; } }
  .helper-note p { line-height: 18px; margin-bottom: 15px; margin-left: 40px; font-size: 13px; }
  .helper-note p:last-child { margin-bottom: 0; }
  .helper-note h3 { font-family:'ProximaNovaLight'; font-size:19px; font-weight: normal; color: ;  margin-left: 40px; }
  .helper-note a.secondary-action { display: inline-block; line-height: 30px; color: ; }
  .helper-note a.admin-btn-primary { margin-right: 15px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; cursor: pointer; display: inline-block; height: 32px; line-height: 30px; padding: 0 9px; font-size: 13px; border-radius: 4px; text-decoration: none; white-space: nowrap; text-transform: none; vertical-align: middle; background-color: #479ccf; border: 1px solid #2f82b4; color: #fff; }
  .helper-note a.admin-btn-primary:active { box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset; background-color: #2f82b4; border-color: #24658c; }
  .helper-note .helper-icon { float: left; margin-top: 4px; width: 24px; height: 24px; background-size: contain; display: inline-block; vertical-align: top; }
  .helper-section { clear:both; }
  .helper-section:hover .helper-note { opacity: 1; filter: alpha(opacity = 100); -webkit-transition: all 0.5s cubic-bezier(0.45, 0, 0, 0.95); -moz-transition: all 0.5s cubic-bezier(0.45, 0, 0, 0.95); transition: all 0.5s cubic-bezier(0.45, 0, 0, 0.95); }
  .helper-section .helper-content { opacity: 1; filter: alpha(opacity = 100); -webkit-transition: opacity 0.25s cubic-bezier(0.67,0,1,1); -moz-transition: opacity 0.25s cubic-bezier(0.67,0,1,1); transition: opacity 0.25s cubic-bezier(0.67,0,1,1); }
  .helper-section:hover .helper-content { opacity: 0.2; filter: alpha(opacity = 20); -webkit-transition: opacity 0.3s cubic-bezier(0,0,0.33,1); -moz-transition: opacity 0.3s cubic-bezier(0,0,0.33,1); transition: opacity 0.3s cubic-bezier(0,0,0.33,1); }
  .helper-homepage-products                             { margin-top: 215px; }
  .helper-section:hover .helper-homepage-products       { margin-top: 200px; }
  .helper-homepage-page                                 { margin-top: 95px; }
  .helper-section:hover .helper-homepage-page           { margin-top: 80px; }
  .helper-all-products                                  { margin-top: 115px; }
  .helper-section:hover .helper-all-products            { margin-top: 100px; }
  .helper-product                                       { margin-top: 115px; }
  .helper-section:hover .helper-product                 { margin-top: 100px; }

/* =================== */
/*      SECTION 7      */
/* =================== */
/* 7.1 - Swatches Styles */
/* 7.2 - SPR STYLES  */
/* 7.3 - Shappify */
/* 7.4 - Yotpo and socialphotos */
/* 7.5 - random hacks  */
/* 7.6 useful classes */


// /*================ COMMON ================*/
/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */

/*
Document
========
*/

/**
Use a better box model (opinionated).
*/

*,
::before,
::after {
	box-sizing: border-box;
}

html {
	/* Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) */
	font-family:
		system-ui,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
	line-height: 1.15; /* 1. Correct the line height in all browsers. */
	-webkit-text-size-adjust: 100%; /* 2. Prevent adjustments of font size after orientation changes in iOS. */
	tab-size: 4; /* 3. Use a more readable tab size (opinionated). */
}

/*
Sections
========
*/

body {
	margin: 0; /* Remove the margin in all browsers. */
}

/*
Text-level semantics
====================
*/

/**
Add the correct font weight in Chrome and Safari.
*/

b,
strong {
	font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Consolas,
		'Liberation Mono',
		Menlo,
		monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/

small {
	font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/*
Tabular data
============
*/

/**
Correct table border color inheritance in Chrome and Safari. (https://issues.chromium.org/issues/40615503, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/

table {
	border-color: currentcolor;
}

/*
Forms
=====
*/

/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/

legend {
	padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
	vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/*
Interactive
===========
*/

/*
Add the correct display in Chrome and Safari.
*/

summary {
	display: list-item;
}

// Skip to main content link（平時隱藏，鍵盤 focus 時浮出）
.skip-to-main-content-link {
  position: absolute;
  top: -100%;
  left: 0;
  z-index: 9999;
  padding: 8px 16px;
  background: #fff;
  color: #000;
  font-weight: bold;
  text-decoration: none;

  &:focus {
    top: 0;
  }
}

// 螢幕閱讀器專用隱藏元素
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

// 確保其他地方設定的 CSS Property 可以覆蓋掉這邊設定的值
@layer base {

  body {
    font-family: var(--normal-font);
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin:0 0 13px 0;
  }

  a {
    color: #444;
    text-decoration: none;
  }

  input[type=text],
  input[type=password],
  input[type=email],
  input[type=time],
  input[type=date],
  input[type=tel],
  input[type=number],
  input[type=search] {
    width: 100%;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    background: transparent;

    // 移除 autocomplete 的樣式
    &:-webkit-autofill,
    &:-webkit-autofill:hover,
    &:-webkit-autofill:focus,
    &:-webkit-autofill:active {
      -webkit-background-clip: text;
      -webkit-text-fill-color: inherit;
      transition: background-color 5000s ease-in-out 0s;
    }
  }

  select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-position: right center;
    background: {
    image: url("data:image/svg;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogICB3aWR0aD0iOHB4IiBoZWlnaHQ9IjVweCIgdmlld0JveD0iMCAwIDggNSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA1IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZmlsbD0ie3tzZXR0aW5ncy5jb2xvcl9ib2R5X3RleHR9fSIgZD0iTTAsMGMwLDAsMy40LDQuNCwzLjUsNC40QzMuNyw0LjQsNy4xLDAsNy4xLDBIMHoiLz4KPC9zdmc+Cgo=");
      repeat: no-repeat;
      position: right 10px center;
      color: transparent;
    }
    padding-right: 28px;
    cursor: pointer;
  }

  select::-ms-expand {
    display: none;
  }
}

h1 {
  font-family: var(--title-font);
  font-weight: bold;
  font-size: 30px;
  line-height: 1.1;
}

h2 {
  font-family: var(--title-font);
  font-weight: bold;
  font-size: 21px;
  line-height: 1.1;
}

h3 {
  font-family: var(--normal-font);
  font-weight: bold;
  font-size: 16px;
  line-height: 21px;
}

h4 {
  font-family: var(--normal-font);
  font-weight: bold;
  font-size: 15px;
  line-height: 18px;
}

h5 {
  font-family: var(--normal-font);
  font-weight: bold;
  font-size: 12px;
  line-height: 18px;
}

h6 {
  font-family: var(--normal-font);
  font-weight: bold;
  font-size: 10px;
  line-height: 18px;
}

@font-face {
  font-family: LemurRhinoshield;
  font-weight: 300;
  font-display: swap;
  src: url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Light.woff2?v=1655274666') format('woff2'),
       url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Light.woff?v=1655274666') format('woff');
}

/** 
 * 此處 400 對應到 Light 是刻意為之的。
 *
 * 之前 JK 在調整 font-face 時（2022/06/15），有發現到 font-weight 和字型對應不起來。（見 https://app.clickup.com/t/3704209/WEBSITE-1672）\
 * 當時有問其他同事們，也沒有得到什麼有用的情報。\
 * 也有去問問看有沒有其他字型檔，也沒有。
 * 
 * 直到 2024/09/26，Cola 發現這邊 `font-weight: 700` 對應到的字型不是 `LemurRhinoshield-Bold`。\
 * 告知他上述情況後，才知道他那邊有 LemurRhinoshield 的全部 weight。\
 * 
 * 於是這次只修正 `font-weight: 700` 的情況；`font-weight: 400` 則繼續使用 light（400 原本應使用 `LemurRhinoshield-Regular`），避免改動範圍太大。
 */
@font-face {
  font-family: LemurRhinoshield;
  font-weight: 400;
  font-display: swap;
  src: url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Light.woff2?v=1655274666') format('woff2'),
       url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Light.woff?v=1655274666') format('woff');
}

@font-face {
  font-family: LemurRhinoshield;
  font-weight: 500;
  font-display: swap;
  src: url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Medium.woff2?v=1655274666') format('woff2'),
       url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Medium.woff?v=1655274666') format('woff');
}

@font-face {
  font-family: LemurRhinoshield;
  font-weight: 700;
  font-display: swap;
  src: url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Bold.woff2?v=1727337848') format('woff2'),
       url('https://cdn.shopify.com/s/files/1/0274/8717/files/LemurRhinoshield-Bold.woff?v=1727337839') format('woff');
}


// /*================ Vendors ================*/
body.stop-scrolling {
  height: 100%;
  overflow: hidden; }

.sweet-overlay {
  background-color: black;
  /* IE8 */
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  /* IE8 */
  background-color: rgba(0, 0, 0, 0.4);
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: none;
  z-index: 10000; }

.sweet-alert {
  background-color: white;
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  width: 478px;
  padding: 50px 17px;
  border-radius: 5px;
  text-align: center;
  position: fixed;
  left: 50%;
  top: 50%;
  margin-left: -256px;
  margin-top: -200px !important;
  overflow: hidden;
  display: none;
  z-index: 99999; }
  @media all and (max-width: 540px) {
    .sweet-alert {
      width: auto;
      margin-left: 0;
      margin-right: 0;
      left: 15px;
      right: 15px; } }
  .sweet-alert h2 {
    color: #575757;
    font-size: 30px;
    text-align: center;
    font-weight: 600;
    text-transform: none;
    position: relative;
    margin: 0;
    padding: 0;
    line-height: 40px;
    display: block; }
    @media all and (max-width: 540px) {
      .sweet-alert h2 {
        font-size: 20px;
        line-height: 23px;
      }
    }
  .sweet-alert p {
    font-weight: bold;
    color: #797979;
    font-size: 16px;
    text-align: center;
    font-weight: 300;
    position: relative;
    text-align: inherit;
    float: none;
    margin: 0;
    padding: 0;
    line-height: normal; }
  .sweet-alert fieldset {
    border: none;
    position: relative; }
  .sweet-alert .sa-error-container {
    background-color: #f1f1f1;
    margin-left: -17px;
    margin-right: -17px;
    overflow: hidden;
    padding: 0 10px;
    max-height: 0;
    webkit-transition: padding 0.15s, max-height 0.15s;
    transition: padding 0.15s, max-height 0.15s; }
    .sweet-alert .sa-error-container.show {
      padding: 10px 0;
      max-height: 100px;
      webkit-transition: padding 0.2s, max-height 0.2s;
      transition: padding 0.25s, max-height 0.25s; }
    .sweet-alert .sa-error-container .icon {
      display: inline-block;
      width: 24px;
      height: 24px;
      border-radius: 50%;
      background-color: #ea7d7d;
      color: white;
      line-height: 24px;
      text-align: center;
      margin-right: 3px; }
    .sweet-alert .sa-error-container p {
      display: inline-block; }
  .sweet-alert .sa-input-error {
    position: absolute;
    top: 29px;
    right: 26px;
    width: 20px;
    height: 20px;
    opacity: 0;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: all 0.1s;
    transition: all 0.1s; }
    .sweet-alert .sa-input-error::before, .sweet-alert .sa-input-error::after {
      content: "";
      width: 20px;
      height: 6px;
      background-color: #f06e57;
      border-radius: 3px;
      position: absolute;
      top: 50%;
      margin-top: -4px;
      left: 50%;
      margin-left: -9px; }
    .sweet-alert .sa-input-error::before {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    .sweet-alert .sa-input-error::after {
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .sweet-alert .sa-input-error.show {
      opacity: 1;
      -webkit-transform: scale(1);
      transform: scale(1); }
  .sweet-alert input {
    width: 100%;
    box-sizing: border-box;
    border-radius: 3px;
    border: 1px solid #d7d7d7;
    height: 43px;
    margin-top: 10px;
    margin-bottom: 17px;
    font-size: 18px;
    box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.06);
    padding: 0 12px;
    display: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    .sweet-alert input:focus {
      outline: none;
      box-shadow: 0px 0px 3px #c4e6f5;
      border: 1px solid #b4dbed; }
      .sweet-alert input:focus::-moz-placeholder {
        transition: opacity 0.3s 0.03s ease;
        opacity: 0.5; }
      .sweet-alert input:focus:-ms-input-placeholder {
        transition: opacity 0.3s 0.03s ease;
        opacity: 0.5; }
      .sweet-alert input:focus::-webkit-input-placeholder {
        transition: opacity 0.3s 0.03s ease;
        opacity: 0.5; }
    .sweet-alert input::-moz-placeholder {
      color: #bdbdbd; }
    .sweet-alert input::-ms-clear {
      display: none; }
    .sweet-alert input:-ms-input-placeholder {
      color: #bdbdbd; }
    .sweet-alert input::-webkit-input-placeholder {
      color: #bdbdbd; }
  .sweet-alert.show-input input {
    display: block; }
  .sweet-alert .sa-confirm-button-container {
    display: inline-block;
    position: relative; }
  .sweet-alert .la-ball-fall {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -27px;
    margin-top: 4px;
    opacity: 0;
    visibility: hidden; }
  .sweet-alert button {
    color: white;
    border: none;
    box-shadow: none;
    font-size: 17px;
    font-weight: 500;
    -webkit-border-radius: 4px;
    border-radius: 5px;
    padding: 10px 32px;
    margin: 10px 5px 0 5px;
    cursor: pointer; }
    @media all and (max-width: 540px) {
      .sweet-alert button {
        margin-top: 10px;
      }
    }
    .sweet-alert button:focus {
      outline: none;
      box-shadow: 0 0 2px rgba(128, 179, 235, 0.5), inset 0 0 0 1px rgba(0, 0, 0, 0.05); }
    .sweet-alert button:hover {
      background-color: #7ecff4; }
    .sweet-alert button:active {
      background-color: #5dc2f1; }
    .sweet-alert button.cancel {
      background-color: #C1C1C1; }
      .sweet-alert button.cancel:hover {
        background-color: #b9b9b9; }
      .sweet-alert button.cancel:active {
        background-color: #a8a8a8; }
      .sweet-alert button.cancel:focus {
        box-shadow: rgba(197, 205, 211, 0.8) 0px 0px 2px, rgba(0, 0, 0, 0.0470588) 0px 0px 0px 1px inset !important; }
    .sweet-alert button[disabled] {
      opacity: .6;
      cursor: default; }
    .sweet-alert button.confirm[disabled] {
      color: transparent; }
      .sweet-alert button.confirm[disabled] ~ .la-ball-fall {
        opacity: 1;
        visibility: visible;
        transition-delay: 0s; }
    .sweet-alert button::-moz-focus-inner {
      border: 0; }
  .sweet-alert[data-has-cancel-button=false] button {
    box-shadow: none !important; }
  .sweet-alert[data-has-confirm-button=false][data-has-cancel-button=false] {
    padding-bottom: 40px; }
  .sweet-alert .sa-icon {
    width: 80px;
    height: 80px;
    border: 4px solid gray;
    -webkit-border-radius: 40px;
    border-radius: 40px;
    border-radius: 50%;
    margin: 20px auto;
    padding: 0;
    position: relative;
    box-sizing: content-box; }
    @media all and (max-width: 540px) {
      .sweet-alert .sa-icon {
        width: 55px;
        height: 55px;
      }
    }
    .sweet-alert .sa-icon.sa-error {
      border-color: #F27474; }
      .sweet-alert .sa-icon.sa-error .sa-x-mark {
        position: relative;
        display: block; }
      .sweet-alert .sa-icon.sa-error .sa-line {
        position: absolute;
        height: 5px;
        width: 47px;
        background-color: #F27474;
        display: block;
        top: 37px;
        border-radius: 2px; }
        .sweet-alert .sa-icon.sa-error .sa-line.sa-left {
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
          left: 17px; }
        .sweet-alert .sa-icon.sa-error .sa-line.sa-right {
          -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
          right: 16px; }
    .sweet-alert .sa-icon.sa-warning {
      border-color: #F8BB86; }
      .sweet-alert .sa-icon.sa-warning .sa-body {
        position: absolute;
        width: 5px;
        height: 47px;
        left: 50%;
        top: 10px;
        -webkit-border-radius: 2px;
        border-radius: 2px;
        margin-left: -2px;
        background-color: #F8BB86; }
        @media all and (max-width: 540px) {
          .sweet-alert .sa-icon.sa-warning .sa-body {
            height: 25px;
          }
        }
      .sweet-alert .sa-icon.sa-warning .sa-dot {
        position: absolute;
        width: 7px;
        height: 7px;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        margin-left: -3px;
        left: 50%;
        bottom: 10px;
        background-color: #F8BB86; }
    .sweet-alert .sa-icon.sa-info {
      border-color: #C9DAE1; }
      .sweet-alert .sa-icon.sa-info::before {
        content: "";
        position: absolute;
        width: 5px;
        height: 29px;
        left: 50%;
        bottom: 17px;
        border-radius: 2px;
        margin-left: -2px;
        background-color: #C9DAE1; }
      .sweet-alert .sa-icon.sa-info::after {
        content: "";
        position: absolute;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        margin-left: -3px;
        top: 19px;
        background-color: #C9DAE1;
        left: 50%; }
    .sweet-alert .sa-icon.sa-success {
      border-color: #A5DC86; }
      .sweet-alert .sa-icon.sa-success::before, .sweet-alert .sa-icon.sa-success::after {
        content: '';
        -webkit-border-radius: 40px;
        border-radius: 40px;
        border-radius: 50%;
        position: absolute;
        width: 60px;
        height: 120px;
        background: white;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      .sweet-alert .sa-icon.sa-success::before {
        -webkit-border-radius: 120px 0 0 120px;
        border-radius: 120px 0 0 120px;
        top: -7px;
        left: -33px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: 60px 60px;
        transform-origin: 60px 60px; }
      .sweet-alert .sa-icon.sa-success::after {
        -webkit-border-radius: 0 120px 120px 0;
        border-radius: 0 120px 120px 0;
        top: -11px;
        left: 30px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: 0px 60px;
        transform-origin: 0px 60px; }
      .sweet-alert .sa-icon.sa-success .sa-placeholder {
        width: 80px;
        height: 80px;
        border: 4px solid rgba(165, 220, 134, 0.2);
        -webkit-border-radius: 40px;
        border-radius: 40px;
        border-radius: 50%;
        box-sizing: content-box;
        position: absolute;
        left: -4px;
        top: -4px;
        z-index: 2; }
      .sweet-alert .sa-icon.sa-success .sa-fix {
        width: 5px;
        height: 90px;
        background-color: white;
        position: absolute;
        left: 28px;
        top: 8px;
        z-index: 1;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg); }
      .sweet-alert .sa-icon.sa-success .sa-line {
        height: 5px;
        background-color: #A5DC86;
        display: block;
        border-radius: 2px;
        position: absolute;
        z-index: 2; }
        .sweet-alert .sa-icon.sa-success .sa-line.sa-tip {
          width: 25px;
          left: 14px;
          top: 46px;
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
        .sweet-alert .sa-icon.sa-success .sa-line.sa-long {
          width: 47px;
          right: 8px;
          top: 38px;
          -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg); }
    .sweet-alert .sa-icon.sa-custom {
      background-size: contain;
      border-radius: 0;
      border: none;
      background-position: center center;
      background-repeat: no-repeat; }

/*
 * Animations
 */
@-webkit-keyframes showSweetAlert {
  0% {
    transform: scale(0.7);
    -webkit-transform: scale(0.7); }
  45% {
    transform: scale(1.05);
    -webkit-transform: scale(1.05); }
  80% {
    transform: scale(0.95);
    -webkit-transform: scale(0.95); }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1); } }

@keyframes showSweetAlert {
  0% {
    transform: scale(0.7);
    -webkit-transform: scale(0.7); }
  45% {
    transform: scale(1.05);
    -webkit-transform: scale(1.05); }
  80% {
    transform: scale(0.95);
    -webkit-transform: scale(0.95); }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1); } }

@-webkit-keyframes hideSweetAlert {
  0% {
    transform: scale(1);
    -webkit-transform: scale(1); }
  100% {
    transform: scale(0.5);
    -webkit-transform: scale(0.5); } }

@keyframes hideSweetAlert {
  0% {
    transform: scale(1);
    -webkit-transform: scale(1); }
  100% {
    transform: scale(0.5);
    -webkit-transform: scale(0.5); } }

@-webkit-keyframes slideFromTop {
  0% {
    top: 0%; }
  100% {
    top: 50%; } }

@keyframes slideFromTop {
  0% {
    top: 0%; }
  100% {
    top: 50%; } }

@-webkit-keyframes slideToTop {
  0% {
    top: 50%; }
  100% {
    top: 0%; } }

@keyframes slideToTop {
  0% {
    top: 50%; }
  100% {
    top: 0%; } }

@-webkit-keyframes slideFromBottom {
  0% {
    top: 70%; }
  100% {
    top: 50%; } }

@keyframes slideFromBottom {
  0% {
    top: 70%; }
  100% {
    top: 50%; } }

@-webkit-keyframes slideToBottom {
  0% {
    top: 50%; }
  100% {
    top: 70%; } }

@keyframes slideToBottom {
  0% {
    top: 50%; }
  100% {
    top: 70%; } }

.showSweetAlert[data-animation=pop] {
  -webkit-animation: showSweetAlert 0.3s;
  animation: showSweetAlert 0.3s; }

.showSweetAlert[data-animation=none] {
  -webkit-animation: none;
  animation: none; }

.showSweetAlert[data-animation=slide-from-top] {
  -webkit-animation: slideFromTop 0.3s;
  animation: slideFromTop 0.3s; }

.showSweetAlert[data-animation=slide-from-bottom] {
  -webkit-animation: slideFromBottom 0.3s;
  animation: slideFromBottom 0.3s; }

.hideSweetAlert[data-animation=pop] {
  -webkit-animation: hideSweetAlert 0.2s;
  animation: hideSweetAlert 0.2s; }

.hideSweetAlert[data-animation=none] {
  -webkit-animation: none;
  animation: none; }

.hideSweetAlert[data-animation=slide-from-top] {
  -webkit-animation: slideToTop 0.4s;
  animation: slideToTop 0.4s; }

.hideSweetAlert[data-animation=slide-from-bottom] {
  -webkit-animation: slideToBottom 0.3s;
  animation: slideToBottom 0.3s; }

@-webkit-keyframes animateSuccessTip {
  0% {
    width: 0;
    left: 1px;
    top: 19px; }
  54% {
    width: 0;
    left: 1px;
    top: 19px; }
  70% {
    width: 50px;
    left: -8px;
    top: 37px; }
  84% {
    width: 17px;
    left: 21px;
    top: 48px; }
  100% {
    width: 25px;
    left: 14px;
    top: 45px; } }

@keyframes animateSuccessTip {
  0% {
    width: 0;
    left: 1px;
    top: 19px; }
  54% {
    width: 0;
    left: 1px;
    top: 19px; }
  70% {
    width: 50px;
    left: -8px;
    top: 37px; }
  84% {
    width: 17px;
    left: 21px;
    top: 48px; }
  100% {
    width: 25px;
    left: 14px;
    top: 45px; } }

@-webkit-keyframes animateSuccessLong {
  0% {
    width: 0;
    right: 46px;
    top: 54px; }
  65% {
    width: 0;
    right: 46px;
    top: 54px; }
  84% {
    width: 55px;
    right: 0px;
    top: 35px; }
  100% {
    width: 47px;
    right: 8px;
    top: 38px; } }

@keyframes animateSuccessLong {
  0% {
    width: 0;
    right: 46px;
    top: 54px; }
  65% {
    width: 0;
    right: 46px;
    top: 54px; }
  84% {
    width: 55px;
    right: 0px;
    top: 35px; }
  100% {
    width: 47px;
    right: 8px;
    top: 38px; } }

@-webkit-keyframes rotatePlaceholder {
  0% {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }
  5% {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }
  12% {
    transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg); }
  100% {
    transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg); } }

@keyframes rotatePlaceholder {
  0% {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }
  5% {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }
  12% {
    transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg); }
  100% {
    transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg); } }

.animateSuccessTip {
  -webkit-animation: animateSuccessTip 0.75s;
  animation: animateSuccessTip 0.75s; }

.animateSuccessLong {
  -webkit-animation: animateSuccessLong 0.75s;
  animation: animateSuccessLong 0.75s; }

.sa-icon.sa-success.animate::after {
  -webkit-animation: rotatePlaceholder 4.25s ease-in;
  animation: rotatePlaceholder 4.25s ease-in; }

@-webkit-keyframes animateErrorIcon {
  0% {
    transform: rotateX(100deg);
    -webkit-transform: rotateX(100deg);
    opacity: 0; }
  100% {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    opacity: 1; } }

@keyframes animateErrorIcon {
  0% {
    transform: rotateX(100deg);
    -webkit-transform: rotateX(100deg);
    opacity: 0; }
  100% {
    transform: rotateX(0deg);
    -webkit-transform: rotateX(0deg);
    opacity: 1; } }

.animateErrorIcon {
  -webkit-animation: animateErrorIcon 0.5s;
  animation: animateErrorIcon 0.5s; }

@-webkit-keyframes animateXMark {
  0% {
    transform: scale(0.4);
    -webkit-transform: scale(0.4);
    margin-top: 26px;
    opacity: 0; }
  50% {
    transform: scale(0.4);
    -webkit-transform: scale(0.4);
    margin-top: 26px;
    opacity: 0; }
  80% {
    transform: scale(1.15);
    -webkit-transform: scale(1.15);
    margin-top: -6px; }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
    margin-top: 0;
    opacity: 1; } }

@keyframes animateXMark {
  0% {
    transform: scale(0.4);
    -webkit-transform: scale(0.4);
    margin-top: 26px;
    opacity: 0; }
  50% {
    transform: scale(0.4);
    -webkit-transform: scale(0.4);
    margin-top: 26px;
    opacity: 0; }
  80% {
    transform: scale(1.15);
    -webkit-transform: scale(1.15);
    margin-top: -6px; }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
    margin-top: 0;
    opacity: 1; } }

.animateXMark {
  -webkit-animation: animateXMark 0.5s;
  animation: animateXMark 0.5s; }

@-webkit-keyframes pulseWarning {
  0% {
    border-color: #F8D486; }
  100% {
    border-color: #F8BB86; } }

@keyframes pulseWarning {
  0% {
    border-color: #F8D486; }
  100% {
    border-color: #F8BB86; } }

.pulseWarning {
  -webkit-animation: pulseWarning 0.75s infinite alternate;
  animation: pulseWarning 0.75s infinite alternate; }

@-webkit-keyframes pulseWarningIns {
  0% {
    background-color: #F8D486; }
  100% {
    background-color: #F8BB86; } }

@keyframes pulseWarningIns {
  0% {
    background-color: #F8D486; }
  100% {
    background-color: #F8BB86; } }

.pulseWarningIns {
  -webkit-animation: pulseWarningIns 0.75s infinite alternate;
  animation: pulseWarningIns 0.75s infinite alternate; }

@-webkit-keyframes rotate-loading {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-loading {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Internet Explorer 9 has some special quirks that are fixed here */
/* The icons are not animated. */
/* This file is automatically merged into sweet-alert.min.js through Gulp */
/* Error icon */
.sweet-alert .sa-icon.sa-error .sa-line.sa-left {
  -ms-transform: rotate(45deg) \9; }

.sweet-alert .sa-icon.sa-error .sa-line.sa-right {
  -ms-transform: rotate(-45deg) \9; }

/* Success icon */
.sweet-alert .sa-icon.sa-success {
  border-color: transparent\9; }

.sweet-alert .sa-icon.sa-success .sa-line.sa-tip {
  -ms-transform: rotate(45deg) \9; }

.sweet-alert .sa-icon.sa-success .sa-line.sa-long {
  -ms-transform: rotate(-45deg) \9; }

/*!
 * Load Awesome v1.1.0 (http://github.danielcardoso.net/load-awesome/)
 * Copyright 2015 Daniel Cardoso <@DanielCardoso>
 * Licensed under MIT
 */
.la-ball-fall,
.la-ball-fall > div {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.la-ball-fall {
  display: block;
  font-size: 0;
  color: #fff; }

.la-ball-fall.la-dark {
  color: #333; }

.la-ball-fall > div {
  display: inline-block;
  float: none;
  background-color: currentColor;
  border: 0 solid currentColor; }

.la-ball-fall {
  width: 54px;
  height: 18px; }

.la-ball-fall > div {
  width: 10px;
  height: 10px;
  margin: 4px;
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: ball-fall 1s ease-in-out infinite;
  -moz-animation: ball-fall 1s ease-in-out infinite;
  -o-animation: ball-fall 1s ease-in-out infinite;
  animation: ball-fall 1s ease-in-out infinite; }

.la-ball-fall > div:nth-child(1) {
  -webkit-animation-delay: -200ms;
  -moz-animation-delay: -200ms;
  -o-animation-delay: -200ms;
  animation-delay: -200ms; }

.la-ball-fall > div:nth-child(2) {
  -webkit-animation-delay: -100ms;
  -moz-animation-delay: -100ms;
  -o-animation-delay: -100ms;
  animation-delay: -100ms; }

.la-ball-fall > div:nth-child(3) {
  -webkit-animation-delay: 0ms;
  -moz-animation-delay: 0ms;
  -o-animation-delay: 0ms;
  animation-delay: 0ms; }

.la-ball-fall.la-sm {
  width: 26px;
  height: 8px; }

.la-ball-fall.la-sm > div {
  width: 4px;
  height: 4px;
  margin: 2px; }

.la-ball-fall.la-2x {
  width: 108px;
  height: 36px; }

.la-ball-fall.la-2x > div {
  width: 20px;
  height: 20px;
  margin: 8px; }

.la-ball-fall.la-3x {
  width: 162px;
  height: 54px; }

.la-ball-fall.la-3x > div {
  width: 30px;
  height: 30px;
  margin: 12px; }

/*
 * Animation
 */
@-webkit-keyframes ball-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-145%);
    transform: translateY(-145%); }
  10% {
    opacity: .5; }
  20% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  90% {
    opacity: .5; }
  100% {
    opacity: 0;
    -webkit-transform: translateY(145%);
    transform: translateY(145%); } }

@-moz-keyframes ball-fall {
  0% {
    opacity: 0;
    -moz-transform: translateY(-145%);
    transform: translateY(-145%); }
  10% {
    opacity: .5; }
  20% {
    opacity: 1;
    -moz-transform: translateY(0);
    transform: translateY(0); }
  80% {
    opacity: 1;
    -moz-transform: translateY(0);
    transform: translateY(0); }
  90% {
    opacity: .5; }
  100% {
    opacity: 0;
    -moz-transform: translateY(145%);
    transform: translateY(145%); } }

@-o-keyframes ball-fall {
  0% {
    opacity: 0;
    -o-transform: translateY(-145%);
    transform: translateY(-145%); }
  10% {
    opacity: .5; }
  20% {
    opacity: 1;
    -o-transform: translateY(0);
    transform: translateY(0); }
  80% {
    opacity: 1;
    -o-transform: translateY(0);
    transform: translateY(0); }
  90% {
    opacity: .5; }
  100% {
    opacity: 0;
    -o-transform: translateY(145%);
    transform: translateY(145%); } }

@keyframes ball-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-145%);
    -moz-transform: translateY(-145%);
    -o-transform: translateY(-145%);
    transform: translateY(-145%); }
  10% {
    opacity: .5; }
  20% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); }
  90% {
    opacity: .5; }
  100% {
    opacity: 0;
    -webkit-transform: translateY(145%);
    -moz-transform: translateY(145%);
    -o-transform: translateY(145%);
    transform: translateY(145%); } }

