/* Minification failed. Returning unminified contents.
(98,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(102,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(109,21): run-time error CSS1039: Token not allowed after unary operator: '-header_height'
(118,16): run-time error CSS1039: Token not allowed after unary operator: '-header_height'
(240,21): run-time error CSS1039: Token not allowed after unary operator: '-header_height'
 */
/*! jQuery UI - v1.12.1 - 2017-05-03
* http://jqueryui.com
* Includes: draggable.css, core.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=ui-lightness&cornerRadiusShadow=5px&offsetLeftShadow=-5px&offsetTopShadow=-5px&thicknessShadow=5px&opacityShadow=20&bgImgOpacityShadow=10&bgTextureShadow=flat&bgColorShadow=000000&opacityOverlay=50&bgImgOpacityOverlay=20&bgTextureOverlay=diagonals_thick&bgColorOverlay=666666&iconColorError=ffd27a&fcError=ffffff&borderColorError=cd0a0a&bgImgOpacityError=18&bgTextureError=diagonals_thick&bgColorError=b81900&iconColorHighlight=228ef1&fcHighlight=363636&borderColorHighlight=fed22f&bgImgOpacityHighlight=75&bgTextureHighlight=highlight_soft&bgColorHighlight=ffe45c&iconColorActive=ef8c08&fcActive=eb8f00&borderColorActive=fbd850&bgImgOpacityActive=65&bgTextureActive=glass&bgColorActive=ffffff&iconColorHover=ef8c08&fcHover=c77405&borderColorHover=fbcb09&bgImgOpacityHover=100&bgTextureHover=glass&bgColorHover=fdf5ce&iconColorDefault=ef8c08&fcDefault=1c94c4&borderColorDefault=cccccc&bgImgOpacityDefault=100&bgTextureDefault=glass&bgColorDefault=f6f6f6&iconColorContent=222222&fcContent=333333&borderColorContent=dddddd&bgImgOpacityContent=100&bgTextureContent=highlight_soft&bgColorContent=eeeeee&iconColorHeader=ffffff&fcHeader=ffffff&borderColorHeader=e78f08&bgImgOpacityHeader=35&bgTextureHeader=gloss_wave&bgColorHeader=f6a828&cornerRadius=4px&fsDefault=1.1em&fwDefault=bold&ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif
* Copyright jQuery Foundation and other contributors; Licensed MIT */

.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;font-size:100%}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-button{padding:.4em 1em;display:inline-block;position:relative;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2em;box-sizing:border-box;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-button-icon-only{text-indent:0}.ui-button-icon-only .ui-icon{position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px}.ui-button.ui-icon-notext .ui-icon{padding:0;width:2.1em;height:2.1em;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-icon-notext .ui-icon{width:auto;height:auto;text-indent:0;white-space:normal;padding:.4em 1em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-controlgroup{vertical-align:middle;display:inline-block}.ui-controlgroup > .ui-controlgroup-item{float:left;margin-left:0;margin-right:0}.ui-controlgroup > .ui-controlgroup-item:focus,.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus{z-index:9999}.ui-controlgroup-vertical > .ui-controlgroup-item{display:block;float:none;width:100%;margin-top:0;margin-bottom:0;text-align:left}.ui-controlgroup-vertical .ui-controlgroup-item{box-sizing:border-box}.ui-controlgroup .ui-controlgroup-label{padding:.4em 1em}.ui-controlgroup .ui-controlgroup-label span{font-size:80%}.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item{border-left:none}.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item{border-top:none}.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content{border-right:none}.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content{border-bottom:none}.ui-controlgroup-vertical .ui-spinner-input{width:75%;width:calc( 100% - 2.4em )}.ui-controlgroup-vertical .ui-spinner .ui-spinner-up{border-top-style:solid}.ui-checkboxradio-label .ui-icon-background{box-shadow:inset 1px 1px 1px #ccc;border-radius:.12em;border:none}.ui-checkboxradio-radio-label .ui-icon-background{width:16px;height:16px;border-radius:1em;overflow:visible;border:none}.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon{background-image:none;width:8px;height:8px;border-width:4px;border-style:solid}.ui-checkboxradio-disabled{pointer-events:none}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker .ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;left:.5em;top:.3em}.ui-dialog{position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-n{height:2px;top:0}.ui-dialog .ui-resizable-e{width:2px;right:0}.ui-dialog .ui-resizable-s{height:2px;bottom:0}.ui-dialog .ui-resizable-w{width:2px;left:0}.ui-dialog .ui-resizable-se,.ui-dialog .ui-resizable-sw,.ui-dialog .ui-resizable-ne,.ui-dialog .ui-resizable-nw{width:7px;height:7px}.ui-dialog .ui-resizable-se{right:0;bottom:0}.ui-dialog .ui-resizable-sw{left:0;bottom:0}.ui-dialog .ui-resizable-ne{right:0;top:0}.ui-dialog .ui-resizable-nw{left:0;top:0}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-text{display:block;margin-right:20px;overflow:hidden;text-overflow:ellipsis}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:14em}.ui-selectmenu-icon.ui-icon{float:right;margin-top:0}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:.222em 0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:2em}.ui-spinner-button{width:1.6em;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top-style:none;border-bottom-style:none;border-right-style:none}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #ccc}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#1c94c4;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#c77405;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-icon-background,.ui-state-active .ui-icon-background{border:#fbd850;background-color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x;color:#363636}.ui-state-checked{border:1px solid #fed22f;background:#ffe45c}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{-webkit-box-shadow:-5px -5px 5px #000;box-shadow:-5px -5px 5px #000}
@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  vertical-align: baseline;
}

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

html {
  scroll-behavior: smooth;
  height: 100%;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  font-size: 1.6rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;
}

input, button, textarea, select {
  font: inherit;
  font-size: inherit;
  border: 0;
  outline: none;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

button, input[type=submit], input[type=button], label {
  cursor: pointer;
}

ul, ol {
  list-style: none;
}

table {
  border-collapse: separate;
  border-spacing: 0;
}

a {
  text-decoration: none;
  color: inherit;
  outline: none;
  cursor: pointer;
}

.clearfix::after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
}

.clearfix {
  zoom: 1;
}

:root {
  --header_height: 104px;
}
@media only screen and (max-width: 767px) {
  :root {
    --header_height: 84px;
  }
}

body {
  background-color: #FFFCF5;
  font-family: "Cardo", "Noto Serif TC", "Microsoft JhengHei", sans-serif;
  padding-top: var(--header_height);
}
body.no-scroll {
  overflow: hidden;
}

.site-header {
  background-color: #FFFCF5;
  width: 100%;
  height: var(--header_height);
  padding: 8px 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 2000;
}
.site-header .header-container {
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.site-header .header-container .logo {
  display: flex;
}
.site-header .header-container .logo img {
  height: auto;
  max-height: 80px;
  display: block;
}
.site-header .main-nav {
  display: flex;
  align-items: center;
  gap: 35px;
}
.site-header .main-nav ul {
  display: flex;
  align-items: center;
  gap: 20px;
}
.site-header .main-nav ul li {
  position: relative;
}
.site-header .main-nav ul li a {
  display: block;
  padding: 6px 20px;
  font-size: 20px;
  line-height: normal;
  font-weight: bold;
  transition: color 0.2s ease;
}
.site-header .main-nav ul li a:hover {
  color: #D19300;
}
.site-header .main-nav ul li a.main-item {
  background-color: #D19300;
  border-radius: 100px;
  color: #fff;
  transition: background-color 0.2s ease;
}
.site-header .main-nav ul li a.main-item:hover {
  background-color: #E7BC33;
}
.site-header .btn-burger {
  position: relative;
  width: 80px;
  height: 80px;
  border-radius: 100px;
  cursor: pointer;
  display: none;
  z-index: 2100;
}
.site-header .btn-burger span {
  display: block;
  width: 28px;
  height: 3px;
  background-color: #4F4F4F;
  border-radius: 50px;
  transition: all 0.3s ease;
}
.site-header .btn-burger span:nth-of-type(1) {
  position: absolute;
  top: calc(50% - 10px);
  left: 50%;
  transform: translate(-50%, -50%);
}
.site-header .btn-burger span:nth-of-type(2) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.site-header .btn-burger span:nth-of-type(3) {
  position: absolute;
  top: calc(50% + 10px);
  left: 50%;
  transform: translate(-50%, -50%);
}
.site-header .btn-burger:hover span {
  background-color: #D19300;
}
.site-header .btn-burger.active span {
  background-color: #D19300;
}
.site-header .btn-burger.active span:nth-of-type(1) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.site-header .btn-burger.active span:nth-of-type(2) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.site-header .btn-burger.active span:nth-of-type(3) {
  opacity: 0;
}
.site-header .burger-menu {
  visibility: hidden;
  position: fixed;
  width: 420px;
  max-width: 80%;
  height: 100%;
  top: 0px;
  right: 0px;
  padding-top: var(--header_height);
  overflow-y: auto;
  background-color: #262626;
  z-index: 2001;
  transition: all 0.3s ease;
  transform: translateX(100%);
  opacity: 0;
}
.site-header .burger-menu.active {
  visibility: visible;
  opacity: 1;
  transform: translateX(0);
}
.site-header .burger-menu::-webkit-scrollbar {
  width: 0;
}
.site-header .burger-menu ul li {
  display: flex;
  flex-direction: column;
}
.site-header .burger-menu ul li a {
  padding: 18px 44px;
  font-size: 18px;
  width: 100%;
  background-color: transparent;
  transition: all 0.2s ease;
  color: #fff;
  font-weight: bold;
  line-height: 1.3em;
  position: relative;
}
.site-header .burger-menu ul li a:hover {
  background-color: #E7BC33;
}
@media only screen and (max-width: 998px) {
  .site-header .btn-burger {
    display: block;
  }
  .site-header .main-nav {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .site-header {
    padding: 10px 0px;
  }
  .site-header .header-container .logo img {
    max-height: 60px;
  }
  .site-header .btn-burger {
    width: 60px;
    height: 60px;
  }
  .site-header .burger-menu ul li a {
    padding: 18px 32px;
    line-height: 1.1em;
  }
  .site-header .burger-menu ul li .dropdown-menu li a {
    padding: 15px 40px 16px 50px;
  }
}
@media only screen and (max-width: 480px) {
  .site-header {
    padding: 0px 0px;
  }
}

.site-footer {
  color: #fff;
  position: relative;
  z-index: 999;
}
.site-footer .footer-main {
  background-color: #D1A005;
  position: relative;
  padding: 60px 0 40px;
  overflow: hidden;
}
.site-footer .footer-main .footer-bg {
  position: absolute;
  bottom: -50px;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center bottom;
  opacity: 0.3;
  z-index: 1;
}
.site-footer .footer-main .relative-container {
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 998px) {
  .site-footer .footer-main {
    padding: 30px 0 10px;
  }
}
@media only screen and (max-width: 998px) {
  .site-footer .footer-main .footer-bg {
    background-size: 1100px;
    background-repeat: no-repeat;
  }
}
.site-footer .footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  padding-bottom: 40px;
  margin-bottom: 30px;
}
.site-footer .footer-top .footer-logo {
  width: 240px;
}
.site-footer .footer-top .footer-logo img {
  width: 100%;
  height: auto;
  display: block;
}
.site-footer .footer-top .footer-nav ul {
  display: flex;
  gap: 50px;
}
.site-footer .footer-top .footer-nav ul a {
  color: #fff;
  font-size: 18px;
  letter-spacing: 1px;
  transition: opacity 0.2s;
  font-weight: 600;
}
.site-footer .footer-top .footer-nav ul a:hover {
  opacity: 0.7;
  text-decoration: underline;
  text-underline-position: under;
}
@media only screen and (max-width: 998px) {
  .site-footer .footer-top {
    flex-direction: column;
    gap: 30px;
  }
  .site-footer .footer-top .footer-nav ul {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }
}
.site-footer .footer-contact {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
  padding: 0;
}
.site-footer .footer-contact .contact-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  color: #fff;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.site-footer .footer-contact .contact-item:hover {
  opacity: 0.8;
  text-decoration: underline;
  text-underline-position: under;
}
.site-footer .footer-contact .contact-item .icon-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background-color: #fff;
  border-radius: 50%;
  flex-shrink: 0;
}
.site-footer .footer-contact .contact-item .icon-circle .svg-icon {
  background-color: #D1A005;
  width: 24px;
  height: 24px;
}
@media only screen and (max-width: 998px) {
  .site-footer .footer-contact {
    margin-bottom: 20px;
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
}
.site-footer .btn-top {
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 999;
  width: 70px;
  height: 70px;
  background-color: #262626;
  border: none;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
.site-footer .btn-top:hover {
  background-color: #4F4F4F;
  transform: translateY(-4px);
}
.site-footer .btn-top .arrow-up {
  background-color: #fff;
  width: 24px;
  height: 24px;
  transform: rotate(-90deg);
  margin-bottom: -4px;
}
.site-footer .btn-top span {
  font-size: 12px;
  font-weight: bold;
}
@media only screen and (max-width: 998px) {
  .site-footer .btn-top {
    right: 20px;
    bottom: 20px;
    width: 60px;
    height: 60px;
  }
}
.site-footer .footer-socket {
  background-color: #B88005;
  padding: 12px 0;
  text-align: center;
}
.site-footer .footer-socket p {
  color: #F1DCA5;
  font-size: 13px;
  margin: 0;
}
.site-footer .footer-socket .divider {
  margin: 0 10px;
  opacity: 0.6;
}
@media only screen and (max-width: 767px) {
  .site-footer .footer-socket p {
    line-height: 1.8;
  }
  .site-footer .footer-socket .divider {
    display: none;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #262626;
  font-weight: bold;
  line-height: 1.3;
}

b,
strong {
  color: #E7BC33;
  font-weight: bold;
}

h1 {
  font-size: 64px;
}

h2 {
  font-size: 44px;
}

h3 {
  font-size: 34px;
}

h4 {
  font-size: 28px;
}

h5 {
  font-size: 24px;
}

@media only screen and (max-width: 767px) {
  h1 {
    font-size: 44px;
  }
  h2 {
    font-size: 36px;
  }
  h3 {
    font-size: 28px;
  }
  h4 {
    font-size: 24px;
  }
  h5 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 480px) {
  h1 {
    font-size: 34px;
  }
  h2 {
    font-size: 30px;
  }
  h3 {
    font-size: 24px;
  }
  h4 {
    font-size: 20px;
  }
  h5 {
    font-size: 18px;
  }
}
.anime {
  opacity: 0;
  will-change: opacity, transform, clip-path;
}
.anime.fade-down {
  transform: translateY(-40px);
  transition: all 0.6s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.fade-up {
  transform: translateY(40px);
  transition: all 0.6s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.fade-left {
  transform: translateX(40px);
  transition: all 1.2s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.fade-right {
  transform: translateX(-40px);
  transition: all 1.2s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.fade-in {
  transform: translate(0, 0);
  transition: all 0.8s ease-out;
}
.anime.movein-right {
  transform: translate(15vw, 0);
  transition: all 1.2s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.movein-left {
  transform: translate(-15vw, 0);
  transition: all 1.2s cubic-bezier(0, 0.4, 0, 1.43);
}
.anime.active {
  opacity: 1;
  transform: translate(0, 0) scale(1);
}
.anime.delay-100 {
  transition-delay: 0.1s;
}
.anime.delay-200 {
  transition-delay: 0.2s;
}
.anime.delay-300 {
  transition-delay: 0.3s;
}
.anime.delay-400 {
  transition-delay: 0.4s;
}
.anime.delay-500 {
  transition-delay: 0.5s;
}
.anime.delay-600 {
  transition-delay: 0.6s;
}

.display-none {
  display: none !important;
}

@media only screen and (max-width: 998px) {
  .mb-none {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) {
  .mb-display {
    display: none !important;
  }
}
.container {
  max-width: 1310px;
}

.container-s {
  max-width: 1100px;
}

.container-fluid {
  max-width: 100%;
}

.container,
.container-s,
.container-fluid {
  width: 100%;
  margin: 0 auto;
  padding-left: 40px;
  padding-right: 40px;
}

.section {
  position: relative;
  padding: 60px 0;
  overflow: hidden;
}

.section-center {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.section-center.row {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 20px;
}

.padding-top-30 {
  padding-top: 30px;
}

.padding-top-50 {
  padding-top: 50px;
}

.padding-top-70 {
  padding-top: 70px;
}

.padding-top-110 {
  padding-top: 110px;
}

.padding-240 {
  padding-top: 240px;
  padding-bottom: 240px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-50 {
  margin-top: 50px;
}

@media only screen and (max-width: 998px) {
  .padding-240 {
    padding-top: 180px;
    padding-bottom: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .padding-top-110 {
    padding-top: 70px;
  }
  .padding-240 {
    padding-top: 130px;
    padding-bottom: 130px;
  }
}
@media only screen and (max-width: 480px) {
  .padding-top-110 {
    padding-top: 40px;
  }
}
@media only screen and (max-width: 998px) {
  .section {
    padding: 50px 0 50px;
  }
  .container,
  .container-s,
  .container-fluid {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .container,
  .container-s,
  .container-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.content-page {
  margin: 50px auto;
}

.content-page a:not(.btn-main) {
  color: #E7BC33;
}
.content-page a:not(.btn-main):hover {
  color: #f1c129;
  text-decoration: underline;
  text-underline-position: under;
}
.content-page h2, .content-page h3, .content-page h4, .content-page h5 {
  margin-bottom: 20px;
}
.content-page table {
  margin: 20px auto 30px;
}

blockquote {
  position: relative;
  font-size: 24px;
  color: #262626;
  font-weight: 600;
  line-height: 1.5em;
  padding-left: 1.5em;
  margin-bottom: 1em;
}
blockquote::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 100%;
  background: #E7BC33;
  position: absolute;
  left: 0px;
  top: 0px;
}

u {
  text-underline-position: under;
}

.description {
  color: #A2A2A2;
  font-size: 14px;
  margin: 20px auto 0;
}

.text-red {
  color: #FF3C3C !important;
}

.big-num {
  font-size: 58px;
  font-weight: bold;
  color: #262626;
  line-height: normal;
}
@media only screen and (max-width: 998px) {
  .big-num {
    font-size: 44px;
  }
}
@media only screen and (max-width: 767px) {
  .big-num {
    font-size: 40px;
  }
}
@media only screen and (max-width: 480px) {
  .big-num {
    font-size: 36px;
  }
}

.content-page {
  font-size: 18px;
}
.content-page p {
  line-height: 1.8em;
  margin: 20px 0;
}
.content-page strong {
  color: inherit;
}
.content-page blockquote:not(:first-child) {
  margin-top: 30px;
}
.content-page ul,
.content-page ol {
  padding-left: 1.5em;
}
.content-page ul li,
.content-page ol li {
  line-height: 1.8em;
  margin-bottom: 4px;
}
.content-page ul li ul,
.content-page ul li ol,
.content-page ol li ul,
.content-page ol li ol {
  margin-top: 10px;
  margin-bottom: 20px;
}
.content-page ul li {
  list-style: initial;
}
.content-page ul li ul li {
  list-style: circle;
}
.content-page ul li ol li {
  list-style: decimal;
}
.content-page ol li {
  list-style: decimal;
}
.content-page ol li ul li {
  list-style: circle;
}
.content-page ol li ol li {
  list-style: decimal;
}
.content-page hr {
  margin: 0 0 20px 0;
}
.content-page hr + h1, .content-page hr + h2, .content-page hr + h3 {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .content-page {
    font-size: 17px;
  }
  .content-page p {
    line-height: 1.7em;
  }
  .content-page blockquote:not(:first-child) {
    margin-top: 24px;
  }
}

.no-content {
  margin: 20px auto 0;
  text-align: center;
}

.table-section {
  width: 100%;
  overflow-x: auto;
  margin: 20px auto;
}
.table-section::-webkit-scrollbar {
  height: 6px;
}
.table-section::-webkit-scrollbar-thumb {
  background-color: #E2C689;
  border-radius: 4px;
}

table {
  width: 100%;
  border-collapse: collapse;
  min-width: 540px;
}
table th,
table td {
  border: 1px solid #E2C689;
  padding: 12px 20px;
  text-align: left;
  line-height: 1.5em;
}
table th {
  background-color: #E7BC33;
  color: #fff;
  font-weight: bold;
  border-color: #E7BC33;
}
table td {
  background-color: transparent;
  color: #4F4F4F;
}

@media only screen and (max-width: 767px) {
  blockquote {
    font-size: 20px;
    padding-left: 1.3em;
  }
  blockquote::before {
    width: 10px;
  }
  table th,
  table td {
    padding: 10px 16px;
  }
}
.btn-main {
  background-color: #E7BC33;
  color: #f2f2f2;
  border: none;
  border-radius: 50px;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 18px 30px;
  font-size: 18px;
  min-width: 220px;
  width: -moz-fit-content;
  width: fit-content;
  gap: 0px;
  line-height: normal;
}
.btn-main:hover {
  background-color: #f1c129;
}
.btn-main.btn-black {
  background-color: #262626;
}
.btn-main.btn-black:hover {
  background-color: #4F4F4F;
}
.btn-main.btn-green {
  background-color: #34A552;
}
.btn-main.btn-green:hover {
  background-color: #2fbf55;
}
.btn-main.btn-red {
  background-color: #FF3C3C;
}
.btn-main.btn-red:hover {
  background-color: #d32f2f;
}
.btn-main.btn-white {
  background-color: #fff;
  color: #E7BC33;
}
.btn-main.btn-white::after {
  background-color: #E7BC33;
}
.btn-main.btn-white:hover {
  background-color: #EE4141;
  color: #262626;
}
.btn-main.btn-white:hover::after {
  background-color: #262626;
}
.btn-main.btn-grey {
  background-color: #A2A2A2;
}
.btn-main.btn-grey:hover {
  background-color: #4F4F4F;
}
.btn-main.btn-grey.no-hover {
  cursor: not-allowed;
  pointer-events: none;
}
.btn-main.btn-grey.no-hover:hover {
  background-color: #F0F0F0;
}
.btn-main.big {
  padding: 24px 32px;
  min-width: 260px;
  min-height: 108px;
  font-size: 20px;
}
.btn-main.small {
  padding: 15px 30px;
  min-width: 220px;
}
.btn-main.xs {
  padding: 12px 32px;
  min-width: 160px;
  gap: 4px;
}
.btn-main.xxs {
  padding: 6px 18px;
  font-size: 15px;
  min-width: 100px;
  border-radius: 50px;
  gap: 0px;
}
.btn-main.xxs .icon-arrow {
  margin-left: -2px;
}
.btn-main.fullsize {
  width: 100%;
  border-radius: 6px;
  padding: 12px 30px;
}
@media only screen and (max-width: 767px) {
  .btn-main {
    padding: 16px 28px;
    font-size: 17px;
    min-width: 200px;
  }
  .btn-main.big {
    padding: 20px 28px;
    min-width: 240px;
    min-height: 90px;
    font-size: 18px;
    border-radius: 40px;
  }
  .btn-main.small {
    padding: 14px 28px;
    min-width: 180px;
  }
  .btn-main.fullsize {
    padding: 10px 28px;
    font-size: 16px;
  }
}

.btn-reset {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #F0F0F0;
  font-size: 16px;
  font-weight: 500;
  transition: color 0.2s ease;
  padding: 5px 10px;
}
.btn-reset span {
  width: 20px;
  height: 20px;
  position: relative;
  top: -1px;
}
.btn-reset span svg {
  width: 100%;
  height: 100%;
}
.btn-reset span svg path {
  fill: #F0F0F0;
  transition: fill 0.2s ease;
}
.btn-reset:hover {
  color: #4F4F4F;
}
.btn-reset:hover span svg path {
  fill: #4F4F4F;
}
.btn-reset.active {
  background-color: #E7BC33;
  color: #fff;
  border-radius: 4px;
  text-decoration: none;
}
.btn-reset.active:hover {
  background-color: #f1c129;
}

.btn-wrapper,
.msg-wrapper {
  position: relative;
}
.btn-wrapper .error-msg,
.msg-wrapper .error-msg {
  position: absolute;
  bottom: -24px;
  color: #FF3C3C;
  font-size: 14px;
  display: block;
}
.btn-wrapper .error-msg.grey,
.msg-wrapper .error-msg.grey {
  color: #A2A2A2;
}

.btn-social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  padding: 16px 20px;
  border: 1px solid #E2C689;
  border-radius: 8px;
  background-color: #fff;
  color: #262626;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s ease;
}
.btn-social .icon-social {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn-social .icon-social svg {
  width: 100%;
  height: 100%;
}
.btn-social:hover {
  background-color: #F0F0F0;
  border-color: #F0F0F0;
}
@media only screen and (max-width: 767px) {
  .btn-social {
    padding: 14px 20px;
    font-size: 16px;
  }
}

.iconbox {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 12px;
  line-height: normal;
  border-radius: 50px;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
}
.iconbox.eco {
  background-color: #34A552;
}
.iconbox.lohas {
  background-color: #DD622D;
}
.iconbox.culture {
  background-color: #3D7EC9;
}

.tag-divider {
  width: 1px;
  height: 30px;
  background-color: #F0F0F0;
  margin: 0px 4px;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=url],
select,
textarea {
  cursor: pointer;
  height: auto;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
  background-color: #fff;
  padding: 16px 20px;
  font-size: 18px;
  color: #4F4F4F;
  width: 100%;
  outline: none;
  transition: all 0.2s ease;
}
input[type=text]:focus, input[type=text]:hover,
input[type=tel]:focus,
input[type=tel]:hover,
input[type=email]:focus,
input[type=email]:hover,
input[type=password]:focus,
input[type=password]:hover,
input[type=url]:focus,
input[type=url]:hover,
select:focus,
select:hover,
textarea:focus,
textarea:hover {
  border-color: #A2A2A2;
  background-color: #F0F0F0;
}
input[type=text]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=url]::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #A2A2A2;
}
input[type=text]::placeholder,
input[type=tel]::placeholder,
input[type=email]::placeholder,
input[type=password]::placeholder,
input[type=url]::placeholder,
select::placeholder,
textarea::placeholder {
  color: #A2A2A2;
}
input[type=text]:disabled,
input[type=tel]:disabled,
input[type=email]:disabled,
input[type=password]:disabled,
input[type=url]:disabled,
select:disabled,
textarea:disabled {
  background-color: #f2f2f2;
  border-color: #CCCCCC;
  color: #4F4F4F;
  -webkit-text-fill-color: #4F4F4F;
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=password],
  input[type=url],
  select,
  textarea {
    padding: 14px 18px;
    font-size: 16px;
  }
}

.password-group {
  position: relative;
}
.password-group input[type=password],
.password-group input[type=text] {
  padding-right: 50px;
}
.password-group .btn-toggle-pwd {
  position: absolute;
  right: 16px;
  bottom: 15px;
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  color: #A2A2A2;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
}
.password-group .btn-toggle-pwd:hover {
  color: #262626;
}
.password-group .btn-toggle-pwd svg {
  width: 20px;
  height: 20px;
}
@media only screen and (max-width: 767px) {
  .password-group .btn-toggle-pwd {
    bottom: 11px;
  }
}
.password-group .forgot-wrap {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  bottom: -30px;
  right: 0;
  padding: 4px 10px;
}
.password-group .forgot-wrap .forgot-link {
  font-size: 14px;
  color: #A2A2A2;
  text-decoration: underline;
  text-underline-position: under;
  transition: color 0.2s;
}
.password-group .forgot-wrap .forgot-link:hover {
  color: #4F4F4F;
}

.radio-group {
  display: flex;
  align-items: center;
  gap: 30px;
  height: 61px;
}
.radio-group .radio-label {
  cursor: pointer;
}
.radio-group .radio-label input[type=radio] {
  display: none;
}
.radio-group .radio-label input[type=radio]:checked + .custom-radio {
  border-color: #D19300;
}
.radio-group .radio-label input[type=radio]:checked + .custom-radio::after {
  transform: scale(1);
}
.radio-group .radio-label .custom-radio {
  width: 18px;
  height: 18px;
  display: inline-block;
  border: 1px solid #A2A2A2;
  border-radius: 50%;
  position: relative;
  top: 3px;
  transition: border-color 0.2s;
  margin-right: 2px;
}
.radio-group .radio-label .custom-radio::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 10px;
  height: 10px;
  background-color: #D19300;
  border-radius: 50%;
  transform: scale(0);
  transition: transform 0.2s ease;
}
.radio-group .radio-label:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 767px) {
  .radio-group {
    height: 54px;
  }
  .radio-group .radio-label {
    font-size: 16px;
  }
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23A2A2A2' d='M5 6L0 0h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 20px center;
}
select:valid {
  color: #4F4F4F;
}
select option {
  color: #4F4F4F;
}

.search-group {
  position: relative;
}
.search-group .search-icon {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
}
.search-group .search-icon svg {
  width: 100%;
  height: 100%;
}
.search-group .search-icon svg path {
  fill: #F0F0F0;
  transition: fill 0.2s ease;
}
.search-group:hover .search-icon path, .search-group:focus-within .search-icon path {
  fill: #4F4F4F;
}
.search-group input {
  padding-left: 50px;
}
@media only screen and (max-width: 767px) {
  .search-group input {
    padding-left: 46px;
  }
  .search-group .search-icon {
    left: 16px;
    width: 16px;
    height: 16px;
  }
}

.tag-group {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.tag-group.align-center {
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .tag-group {
    gap: 16px;
  }
}

.svg-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  background-color: currentColor;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-size: contain;
}
.svg-icon.icon-eco {
  -webkit-mask-image: url("../../images/icon/eco.svg");
}
.svg-icon.icon-lohas {
  -webkit-mask-image: url("../../images/icon/lohas.svg");
}
.svg-icon.icon-culture {
  -webkit-mask-image: url("../../images/icon/culture.svg");
}
.svg-icon.icon-cube {
  -webkit-mask-image: url("../../images/icon/Cube.svg");
}
.svg-icon.icon-location {
  -webkit-mask-image: url("../../images/icon/Location.svg");
}
.svg-icon.icon-date {
  -webkit-mask-image: url("../../images/icon/date.svg");
}
.svg-icon.icon-person {
  -webkit-mask-image: url("../../images/icon/Person.svg");
}
.svg-icon.icon-arrow {
  -webkit-mask-image: url("../../images/icon/arrow.svg");
}
.svg-icon.icon-arrow.arrow-left {
  transform: scaleX(-1);
}
.svg-icon.icon-phone {
  -webkit-mask-image: url("../../images/icon/Phone.svg");
}
.svg-icon.icon-question {
  -webkit-mask-image: url("../../images/icon/問號.svg");
}
.svg-icon.icon-mail {
  -webkit-mask-image: url("../../images/icon/mail.svg");
}
.svg-icon.icon-line {
  -webkit-mask-image: url("../../images/icon/Line.svg");
}
.svg-icon.icon-car {
  -webkit-mask-image: url("../../images/icon/car.svg");
}
.svg-icon.icon-mountain {
  -webkit-mask-image: url("../../images/icon/mountain.svg");
}
.svg-icon.icon-hotel {
  -webkit-mask-image: url("../../images/icon/hotel.svg");
}
.svg-icon.icon-food {
  -webkit-mask-image: url("../../images/icon/food.svg");
}
.svg-icon.icon-sound {
  -webkit-mask-image: url("../../images/icon/sound.svg");
}
.svg-icon.icon-reload {
  -webkit-mask-image: url("../../images/icon/reload.svg");
}
.svg-icon.icon-eye {
  -webkit-mask-image: url("../../images/icon/eyes.svg");
}
    .svg-icon.icon-eye-off {
        -webkit-mask-image: url("../../images/icon/eyes-Hide.svg");
    }
.svg-icon.icon-toggle {
  -webkit-mask-image: url("../../images/icon/toggle.svg");
}
.svg-icon.icon-download {
  -webkit-mask-image: url("../../images/icon/download.svg");
}
    .svg-icon.icon-schedule {
        -webkit-mask-image: url("../../images/icon/schedule.svg");
    }
.svg-icon.icon-upload {
  -webkit-mask-image: url("../../images/icon/upload.svg");
}
.svg-icon.icon-edit {
  -webkit-mask-image: url("../../images/icon/Edit.svg");
}
.svg-icon.icon-copy {
  -webkit-mask-image: url("../../images/icon/copy.svg");
}
.svg-icon.icon-delete {
  -webkit-mask-image: url("../../images/icon/Delet.svg");
}
.svg-icon.icon-close {
  -webkit-mask-image: url("../../images/icon/close.svg");
}
.svg-icon.icon-plus {
  -webkit-mask-image: url("../../images/icon/plus.svg");
}
.svg-icon.icon-drag-handle {
  -webkit-mask-image: url("../../images/icon/dragable.svg");
}
.svg-icon.icon-exclamation {
  -webkit-mask-image: url("../../images/icon/exclamation.svg");
}
.svg-icon.icon-check {
  -webkit-mask-image: url("../../images/icon/checked.svg");
}
.svg-icon.icon-lock {
  -webkit-mask-image: url("../../images/icon/locked.svg");
}

.cloud-divider {
  position: absolute;
  top: -1px;
  left: 0;
  width: max(100%, 840px);
  height: max(80px, 9.5vw);
  background-image: url("../../images/vector-cloud.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  z-index: 2;
}
.cloud-divider.bottom {
  top: auto;
  bottom: -20px;
  transform: scaleY(-1);
  background-position: bottom center;
}

.deco-bg-bottom {
  position: absolute;
  bottom: 0;
  width: 800px;
  height: 415px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom;
  z-index: 1;
  pointer-events: none;
}
.deco-bg-bottom.left {
  left: 0;
  background-position: bottom left;
  background-image: url("../../images/deco-bg-01.png");
}
.deco-bg-bottom.right {
  right: 0;
  background-position: bottom right;
  background-image: url("../../images/deco-bg-02.png");
}

.card-box {
  background: #fff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease;
}
.card-box:hover {
  transform: translateY(-6px);
  transition: transform 0.3s ease;
}
.card-box .card-img {
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  padding: 20px;
}
.card-box .card-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s ease;
  border-radius: 20px;
}
.card-box:hover .card-img img {
  transform: scale(1.03);
}
.card-box .card-body {
  padding: 0 20px 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.card-box .card-body h4 {
  margin-bottom: 12px;
}

.meta-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.meta-top .company {
  font-size: 15px;
  color: #4F4F4F;
}

.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}
.tags span {
  font-size: 16px;
  color: #A2A2A2;
}

.card-footer {
  margin-top: auto;
  background-color: #FFF3DA;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 8px 20px;
  font-size: 16px;
  font-weight: bold;
  color: #262626;
}
.card-footer .info-item {
  display: flex;
  align-items: center;
  gap: 4px;
  line-height: normal;
}
.card-footer .info-item .svg-icon {
  background-color: #EE4141;
  font-size: 16px;
}
.card-footer .divider {
  width: 1.5px;
  height: 70%;
  background-color: #E2C689;
  display: inline-block;
}

.fullsize-line {
  width: 100%;
  height: 1px;
  background-color: #CCCCCC;
}
.fullsize-line.dark {
  background-color: #A2A2A2;
}

.frost-overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(3px);
  top: 0;
  left: 0;
  z-index: 1500;
  display: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.frost-overlay.active {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 1;
  visibility: visible;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  color: #4F4F4F;
}
.pagination .page-num {
  text-decoration: none;
  width: 30px;
  text-align: center;
  transition: color 0.2s;
}
.pagination .page-num:hover {
  color: #E7BC33;
}
.pagination .page-num.current {
  color: #E7BC33;
  font-weight: 600;
  font-size: 16px;
  position: relative;
}
.pagination .page-num.current::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #E7BC33;
  margin-top: 4px;
}
.pagination .dots {
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  .pagination {
    justify-content: center;
    gap: 7px;
  }
}

.pagination-jump {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-top: -10px;
  font-size: 14px;
  color: #4F4F4F;
}
.pagination-jump .page-input {
  width: 40px;
  height: 30px;
  padding: 0;
  text-align: center;
  border: 1px solid #E2C689;
  border-radius: 4px;
  font-size: 14px;
}
.pagination-jump .page-input::-webkit-outer-spin-button, .pagination-jump .page-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.download-list {
  position: relative;
  border: 1px solid #E2C689;
  border-radius: 10px;
  padding: 4px 24px;
  margin: 30px auto 0;
  background-color: #fff;
  overflow: hidden;
  max-width: 640px;
}
.download-list .download-inner {
  position: relative;
  z-index: 2;
}
.download-list .download-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  text-decoration: none;
  transition: opacity 0.2s;
}
.download-list .download-item:hover .file-name {
  opacity: 0.7;
}
.download-list .download-item .file-info {
  display: flex;
  align-items: center;
  gap: 12px;
}
.download-list .download-item .file-info .icon-pdf {
  width: 40px;
  height: 40px;
}
.download-list .download-item .file-info .file-name {
  font-size: 18px;
  font-weight: bold;
  color: #262626;
}

.btn-download {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  background-color: #EE4141;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.2s;
}
.btn-download .icon-download {
  background-color: #fff;
  width: 24px;
  height: 24px;
}
.btn-download:hover {
  background-color: #ff6666;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.modal.active {
  opacity: 1;
  visibility: visible;
}
.modal .modal-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(3px);
}
.modal .modal-content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 560px;
  padding: 20px;
}
.modal .modal-content .btn-close-modal {
  position: absolute;
  top: 5px;
  right: 5px;
  background-color: #4F4F4F;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s;
  z-index: 5;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.modal .modal-content .btn-close-modal .svg-icon {
  background-color: #fff;
  width: 32px;
  height: 32px;
}
.modal .modal-content .btn-close-modal:hover {
  background-color: #262626;
}
.modal .modal-content .modal-card {
  padding: 60px 40px 40px;
  margin: 0;
  text-align: center;
  background-color: #fff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  width: 100%;
  position: relative;
  overflow: hidden;
}
.modal .modal-content .modal-card.top-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background-color: #E7BC33;
}
.modal .modal-content .modal-title {
  margin-bottom: 24px;
}
.modal .modal-content .modal-desc {
  font-size: 18px;
  color: #4F4F4F;
  line-height: 1.8;
  margin-bottom: 40px;
}
.modal .modal-content .btn-main {
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .modal .modal-content .modal-desc {
    font-size: 16px;
  }
  .modal .modal-content .modal-card {
    padding: 50px 20px 40px;
  }
}

.admin-form-card {
  background-color: #fff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  position: relative;
  overflow: hidden;
  padding: 50px 50px;
  width: 100%;
}
.admin-form-card.top-line {
  padding-top: 70px;
}
.admin-form-card.top-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background-color: #E7BC33;
}
.admin-form-card .card-header {
  margin-bottom: 20px;
  text-align: center;
}
.admin-form-card .card-header.align-left {
  text-align: left;
}
.admin-form-card .card-header .svg-icon {
  width: 24px;
  height: 24px;
  position: relative;
  top: 3px;
}
.admin-form-card.small {
  width: 600px;
  max-width: 100%;
  margin: 0 auto;
}
.admin-form-card .form-actions {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .admin-form-card {
    padding: 40px 40px;
  }
  .admin-form-card.top-line {
    padding: 60px 40px 40px;
  }
}
@media only screen and (max-width: 480px) {
  .admin-form-card {
    padding: 40px 20px;
  }
  .admin-form-card.top-line {
    padding: 60px 20px 40px;
  }
}

.form {
  padding-top: 30px;
}
.form .form-group {
  margin-bottom: 50px;
}
.form .form-group label:not(.btn-main) {
  display: block;
  font-size: 16px;
  color: #4F4F4F;
  margin-bottom: 6px;
  font-weight: 500;
}
.form .form-group label:not(.btn-main) .required {
  color: #FF3C3C;
  margin-left: 4px;
}
.form .form-group.has-error input {
  border-color: #FF3C3C;
}
.form .form-group.has-error .error-msg {
  display: block;
}
.form .form-group.has-error .error-msg.grey {
  color: #FF3C3C;
}
.form .form-group .error-msg:not(.grey) {
  display: none;
}
.form.login-form .form-group {
  margin-bottom: 30px;
}
.form .form-actions {
  display: flex;
  gap: 16px;
  margin-top: 70px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.form .form-actions.align-center {
  justify-content: center;
}
.form .form-row-horizontal {
  display: flex;
  align-items: flex-start;
  margin-bottom: 30px;
  gap: 20px;
}
.form .form-row-horizontal .row-label {
  flex: 0 0 14%;
  min-width: 140px;
  text-align: right;
  padding-top: 17px;
  font-size: 17px;
  font-weight: bold;
  color: #262626;
}
.form .form-row-horizontal .row-input {
  flex: 1;
  min-width: 0;
  position: relative;
}
.form .form-row-horizontal .inline-upload {
  margin: 0;
}
@media only screen and (max-width: 767px) {
  .form .form-row-horizontal {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }
  .form .form-row-horizontal .row-label {
    flex: auto;
    text-align: left;
    padding-top: 0;
  }
}
.form textarea {
  resize: vertical;
  min-height: 120px;
}
@media only screen and (max-width: 767px) {
  .form {
    padding-top: 24px;
  }
  .form .form-group {
    margin-bottom: 26px;
  }
}

.hint {
  display: inline-block;
  vertical-align: top;
  margin-left: 16px;
  font-size: 14px;
  color: #A2A2A2;
  line-height: 1.6;
  margin-top: 10px;
}

.admin-login-section {
  padding-top: 60px;
  padding-bottom: 120px;
  background-color: #FFFCF5;
}
.admin-login-section .admin-layout {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 60px;
}
.admin-login-section .admin-layout .admin-intro {
  flex: 1;
}
.admin-login-section .admin-layout .admin-intro .intro-desc {
  font-size: 16px;
  color: #4F4F4F;
  line-height: 1.8;
  margin-bottom: 40px;
}
.admin-login-section .admin-form-card {
  width: 60%;
  flex-shrink: 0;
}
@media only screen and (max-width: 998px) {
  .admin-login-section .admin-layout {
    flex-direction: column;
    align-items: center;
  }
  .admin-login-section .admin-layout .admin-intro {
    width: 100%;
    margin: 0px auto;
  }
  .admin-login-section .admin-layout .admin-form-card {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
  }
}

.register-form .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0 30px;
}
.register-form .form-row .col-full {
  width: 100%;
}
.register-form .form-row .col-half {
  width: calc(50% - 15px);
}
@media only screen and (max-width: 767px) {
  .register-form .form-row .col-half {
    width: 100%;
  }
}
.register-form .input-with-btn {
  display: flex;
  gap: 20px;
  align-items: center;
}
.register-form .input-with-btn input[type=text],
.register-form .input-with-btn input[type=email],
.register-form .input-with-btn select {
  flex: 1;
}
.register-form .input-with-btn .btn-main {
  flex-shrink: 0;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .register-form .input-with-btn {
    flex-direction: column;
    align-items: stretch;
  }
  .register-form .input-with-btn .btn-main {
    width: 100%;
  }
}
.register-form .section-divider {
  text-align: center;
  position: relative;
  margin: 30px 0 30px;
}
.register-form .section-divider h4 {
  display: inline-block;
  background-color: #fff;
  padding: 0 20px;
  position: relative;
  z-index: 2;
  color: #262626;
  margin: 0;
}
.register-form .section-divider::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #CCCCCC;
  z-index: 1;
}
.register-form .custom-file-upload {
  margin: 20px 0 0;
}

.custom-file-upload input[type=file] {
  display: none;
}
.custom-file-upload label {
  cursor: pointer;
  display: inline-flex;
  margin-bottom: 0;
  color: #fff;
  font-weight: 600;
}

.terms-box {
  background-color: #FFFCF5;
  border: 1px solid #E2C689;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 24px;
}
.terms-box .terms-content {
  height: 200px;
  overflow-y: auto;
  padding-right: 10px;
  margin: 0 auto;
}
.terms-box .terms-content p {
  font-size: 15px;
  color: #4F4F4F;
  line-height: 1.6;
  margin-bottom: 12px;
}
.terms-box .terms-content::-webkit-scrollbar {
  width: 6px;
}
.terms-box .terms-content::-webkit-scrollbar-track {
  background: transparent;
}
.terms-box .terms-content::-webkit-scrollbar-thumb {
  background-color: #A2A2A2;
  border-radius: 10px;
}

.form-checkbox-wrapper {
  margin-bottom: 30px;
}
.form-checkbox-wrapper .custom-checkbox-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  font-weight: normal;
}
.form-checkbox-wrapper .custom-checkbox-label input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.form-checkbox-wrapper .custom-checkbox-label input:checked ~ .checkmark {
  background-color: #E7BC33;
  border-color: #E7BC33;
}
.form-checkbox-wrapper .custom-checkbox-label input:checked ~ .checkmark::after {
  display: block;
}
.form-checkbox-wrapper .custom-checkbox-label .checkmark {
  position: relative;
  top: 3px;
  display: inline-flex;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-color: #fff;
  border: 1px solid #A2A2A2;
  border-radius: 4px;
  transition: all 0.2s;
}
.form-checkbox-wrapper .custom-checkbox-label .checkmark::after {
  content: "";
  position: absolute;
  display: none;
  left: 6px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.form-checkbox-wrapper .custom-checkbox-label .label-text {
  font-size: 16px;
  color: #4F4F4F;
  line-height: 1.5;
}

.captcha-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 40px;
}
.captcha-wrapper .captcha-input {
  width: 150px;
  height: 54px;
}
.captcha-wrapper .captcha-image {
  background-color: #d1d1d1;
  color: #666;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 4px;
  padding: 0 20px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
}
.captcha-wrapper .btn-icon-only {
  background: none;
  border: none;
  cursor: pointer;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.captcha-wrapper .btn-icon-only .svg-icon {
  background-color: #4F4F4F;
  transition: background-color 0.2s;
}
.captcha-wrapper .btn-icon-only:hover .svg-icon {
  background-color: #E7BC33;
}
@media only screen and (max-width: 767px) {
  .captcha-wrapper {
    flex-wrap: wrap;
  }
  .captcha-wrapper .captcha-input {
    width: 100%;
  }
}

.verify-form .verify-desc {
  text-align: center;
  margin-bottom: 24px;
}
.verify-form .verify-desc p {
  color: #4F4F4F;
  font-size: 16px;
  font-weight: 500;
}
.verify-form .otp-inputs {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 40px;
}
.verify-form .otp-inputs .otp-field {
  width: 60px;
  height: 70px;
  padding: 0;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  color: #262626;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
  background-color: #fff;
  transition: all 0.2s;
}
.verify-form .otp-inputs .otp-field:focus {
  border-color: #E2C689;
  box-shadow: 0 0 0 3px rgba(231, 188, 51, 0.2);
}
.verify-form .otp-inputs .otp-field::-webkit-outer-spin-button, .verify-form .otp-inputs .otp-field::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.verify-form .captcha-wrapper.align-center {
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .verify-form .captcha-wrapper.align-center {
    justify-content: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .verify-form .otp-inputs {
    gap: 10px;
  }
  .verify-form .otp-inputs .otp-field {
    width: 50px;
    height: 60px;
    font-size: 24px;
  }
}

.admin-list-section,
.admin-apply-section {
  background-color: #FFF3DA;
  padding-top: 230px;
  position: relative;
}
@media only screen and (max-width: 1800px) {
  .admin-list-section,
  .admin-apply-section {
    padding: 150px 0;
  }
}

.admin-table {
  width: 100%;
  min-width: 990px;
  border-collapse: collapse;
}
.admin-table th,
.admin-table td {
  vertical-align: middle;
  font-size: 15px;
  padding: 8px 16px;
}
.admin-table th {
  background-color: #D19300;
}
.admin-table .btn-main {
  margin-left: auto;
  margin-right: auto;
}
.admin-table .action-icons {
  display: flex;
  gap: 8px;
}
.admin-table .action-icons .btn-icon {
  background-color: #A2A2A2;
  border: none;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s;
}
.admin-table .action-icons .btn-icon .svg-icon {
  background-color: #fff;
  width: 28px;
  height: 28px;
}
.admin-table .action-icons .btn-icon:hover {
  background-color: #262626;
}

.status-badge {
  display: inline-block;
  padding: 4px 16px;
  border-radius: 4px;
  color: #fff;
  font-weight: 600;
  white-space: nowrap;
}
.status-badge.bg-black {
  background-color: #262626;
}
.status-badge.bg-yellow {
  background-color: #D19300;
}
.status-badge.bg-green {
  background-color: #34A552;
}
.status-badge.bg-red {
  background-color: #FF3C3C;
}

.form.tour-add-form {
  padding-top: 0px;
}

.tour-content-wrapper {
  display: flex;
  flex-direction: column;
}

.admin-form-card.day-setting-card {
  margin-top: 40px;
}
.admin-form-card.day-setting-card .card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.admin-form-card.day-setting-card .card-header .card-title {
  margin: 0;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.admin-form-card.day-setting-card .card-header .card-title .svg-icon {
  position: relative;
  top: 4px;
}
.admin-form-card.day-setting-card .card-header .action-icons {
  display: flex;
  gap: 8px;
}
.admin-form-card.day-setting-card .card-header .action-icons .btn-icon {
  background-color: transparent;
  border: none;
  cursor: pointer;
  width: 40px;
  height: 40px;
  border-radius: 100px;
  transition: background-color 0.2s;
}
.admin-form-card.day-setting-card .card-header .action-icons .btn-icon .svg-icon {
  background-color: #4F4F4F;
  width: 32px;
  height: 32px;
  transition: background-color 0.2s;
}
.admin-form-card.day-setting-card .card-header .action-icons .btn-icon:hover {
  background-color: #E7BC33;
}
.admin-form-card.day-setting-card .card-header .action-icons .btn-icon:hover .svg-icon {
  background-color: #fff;
}
.admin-form-card.day-setting-card .card-header + .fullsize-line {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .admin-form-card.day-setting-card .card-header .card-title {
    gap: 6px;
  }
  .admin-form-card.day-setting-card .card-header .card-title .svg-icon {
    position: relative;
    top: 0px;
  }
  .admin-form-card.day-setting-card .card-header + .fullsize-line {
    margin-bottom: 10px;
  }
}

.itinerary-items-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 30px;
}

.itinerary-item-card {
  background-color: #fff;
  border-radius: 10px;
  padding: 30px 30px 10px;
  border: 1px solid #E2C689;
  background-color: rgba(162, 162, 162, 0.1);
}
.itinerary-item-card .fullsize-line {
  margin: 30px 0;
}
.itinerary-item-card .editable-tags-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.itinerary-item-card .editable-tags-container .edit-tag {
  cursor: pointer;
  height: auto;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
  background-color: #fff;
  padding: 0px;
  font-size: 18px;
  color: #4F4F4F;
  width: 200px;
  outline: none;
  display: flex;
  align-items: center;
  transition: all 0.2s ease;
}
.itinerary-item-card .editable-tags-container .edit-tag:focus, .itinerary-item-card .editable-tags-container .edit-tag:hover {
  border-color: #A2A2A2;
  background-color: #F0F0F0;
}
.itinerary-item-card .editable-tags-container .edit-tag:focus .icon-drag-handle, .itinerary-item-card .editable-tags-container .edit-tag:hover .icon-drag-handle {
  background-color: #4F4F4F;
}
.itinerary-item-card .editable-tags-container .edit-tag.disabled {
  background-color: #f2f2f2;
  border-color: #CCCCCC;
  color: #4F4F4F;
  -webkit-text-fill-color: #4F4F4F;
  opacity: 1;
  pointer-events: none;
  /* 完全禁用互動 */
}
.itinerary-item-card .editable-tags-container .edit-tag .icon-drag-handle {
  background-color: #A2A2A2;
  width: 24px;
  height: 24px;
  cursor: grab;
  left: 10px;
  position: relative;
}
.itinerary-item-card .editable-tags-container .edit-tag .icon-drag-handle:active {
  cursor: grabbing;
}
.itinerary-item-card .editable-tags-container .edit-tag input {
  border: none;
  background-color: transparent;
}
.itinerary-item-card .editable-tags-container .edit-tag input:focus, .itinerary-item-card .editable-tags-container .edit-tag input:hover {
  box-shadow: none;
  background-color: transparent;
}
.itinerary-item-card .editable-tags-container .btn-add-tag {
  border: none;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.itinerary-item-card .editable-tags-container .btn-add-tag .icon-plus {
  background-color: #A2A2A2;
  width: 44px;
  height: 44px;
  transition: all 0.2s ease;
}
.itinerary-item-card .editable-tags-container .btn-add-tag:hover .icon-plus {
  background-color: #4F4F4F;
}
.itinerary-item-card.type-transport {
  background-color: rgba(231, 188, 51, 0.08);
  border-color: rgba(231, 188, 51, 0.3);
}
.itinerary-item-card.type-spot {
  background-color: rgba(52, 165, 82, 0.08);
  border-color: rgba(52, 165, 82, 0.3);
}
.itinerary-item-card.type-hotel {
  background-color: rgba(61, 126, 201, 0.08);
  border-color: rgba(61, 126, 201, 0.3);
}
.itinerary-item-card.type-food {
  background-color: rgba(255, 60, 60, 0.05);
  border-color: rgba(255, 60, 60, 0.2);
}
@media only screen and (max-width: 480px) {
  .itinerary-item-card {
    padding: 30px 20px 10px;
  }
}

.btn-add-content {
  width: 100%;
  background-color: #F0F0F0;
  border: none;
  border-radius: 8px;
  padding: 16px;
  margin-top: 30px;
  color: #4F4F4F;
  font-size: 16px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn-add-content:hover {
  background-color: #F3E3BF;
}
.btn-add-content .icon-plus {
  width: 34px;
  height: 34px;
}

.tour-add-day-wrapper {
  margin-top: 30px;
}
.tour-add-day-wrapper .btn-add-day {
  width: 100%;
  margin: 0 auto;
  background-color: rgba(231, 188, 51, 0.2);
  border: 2px dashed #E7BC33;
  border-radius: 12px;
  padding: 24px;
  color: #4F4F4F;
  font-size: 18px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  cursor: pointer;
  transition: all 0.2s;
  line-height: normal;
}
.tour-add-day-wrapper .btn-add-day .icon-plus {
  width: 34px;
  height: 34px;
}
.tour-add-day-wrapper .btn-add-day:hover {
  background-color: #E2C689;
}

.preview-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}
.preview-gallery .preview-item {
  position: relative;
  width: 160px;
  height: 160px;
  border-radius: 4px;
  border: 1px solid #CCCCCC;
  padding: 4px;
  background-color: #fff;
}
.preview-gallery .preview-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
}
.preview-gallery .preview-item .btn-delete-img {
  position: absolute;
  top: -8px;
  right: -8px;
  background-color: #262626;
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
}
.preview-gallery .preview-item .btn-delete-img .icon-close {
  background-color: #fff;
  width: 32px;
  height: 32px;
}
.preview-gallery .preview-item .btn-delete-img:hover {
  background-color: #FF3C3C;
}
@media only screen and (max-width: 767px) {
  .preview-gallery .preview-item {
    width: 130px;
    height: 130px;
  }
}

.admin-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto 12px;
}
.admin-top-bar .bar-title {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 18px;
  font-weight: bold;
  padding-right: 20px;
  color: #4F4F4F;
}
.admin-top-bar .bar-title .icon-question {
  background-color: #4F4F4F;
  width: 24px;
  height: 24px;
}
.admin-top-bar .bar-actions {
  display: flex;
  gap: 10px;
}
@media only screen and (max-width: 767px) {
  .admin-top-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}

.admin-layout-sidebar {
  display: flex;
  align-items: flex-start;
  gap: 30px;
}
.admin-layout-sidebar .sidebar-menu {
  flex: 0 0 280px;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  overflow: hidden;
  padding: 20px;
  z-index: 10;
}
.admin-layout-sidebar .sidebar-menu .cert-nav {
  display: flex;
  flex-direction: column;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 8px 14px 18px;
  font-size: 17px;
  text-decoration: none;
  color: #4F4F4F;
  font-weight: 600;
  border-bottom: 1px solid #CCCCCC;
  transition: all 0.2s;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item .svg-icon {
  width: 28px;
  height: 28px;
  background-color: #A2A2A2;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item:hover {
  background-color: #f0f0f0;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item.active {
  background-color: #E7BC33;
  color: #fff;
  border-bottom-color: #E7BC33;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item.active .svg-icon {
  display: none;
}
.admin-layout-sidebar .sidebar-menu .cert-nav .nav-item.is-completed .svg-icon.icon-check {
  background-color: #34A552;
  width: 28px;
  height: 28px;
}
.admin-layout-sidebar .sidebar-menu .score-board {
  padding: 30px 20px;
  text-align: center;
  background-color: #FFFCF5;
  border: 1px solid #E2C689;
  margin: 20px 0;
  border-radius: 10px;
}
.admin-layout-sidebar .sidebar-menu .score-board .score-label {
  font-size: 15px;
  color: #4F4F4F;
  margin-bottom: 10px;
}
.admin-layout-sidebar .sidebar-menu .score-board .big-num {
  font-weight: bold;
  line-height: 1;
  margin-bottom: 8px;
  color: #FF3C3C;
}
.admin-layout-sidebar .sidebar-menu .score-board .score-status {
  font-size: 14px;
  font-weight: 500;
}
.admin-layout-sidebar .sidebar-menu .sidebar-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.admin-layout-sidebar .content-area {
  flex: 1;
  min-width: 0;
}
.admin-layout-sidebar .content-area .cert-description {
  margin: 30px auto;
}
.admin-layout-sidebar .content-area .cert-description blockquote {
  font-size: 20px;
}
.admin-layout-sidebar .content-area .cert-description blockquote::before {
  width: 10px;
}
@media only screen and (max-width: 998px) {
  .admin-layout-sidebar {
    gap: 20px;
  }
  .admin-layout-sidebar .sidebar-menu {
    flex: 0 0 260px;
  }
  .admin-layout-sidebar .admin-form-card {
    padding: 40px;
  }
  .admin-layout-sidebar .admin-form-card.top-line {
    padding-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .admin-layout-sidebar {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .admin-layout-sidebar .sidebar-menu {
    flex: auto;
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
  }
  .admin-layout-sidebar .content-area .cert-description blockquote {
    font-size: 18px;
  }
  .admin-layout-sidebar .admin-form-card {
    padding: 40px 20px;
  }
}

.metric-nav-card .metric-anchor-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 30px;
}
.metric-nav-card .metric-anchor-nav .anchor-tag {
  background-color: #A2A2A2;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 6px 20px;
  border-radius: 4px;
  text-decoration: none;
  transition: opacity 0.2s;
}
.metric-nav-card .metric-anchor-nav .anchor-tag:hover {
  opacity: 0.8;
}
.metric-nav-card .metric-anchor-nav .anchor-tag.is-completed {
  background-color: #34A552;
}

.metric-cards-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 20px;
}
.metric-cards-list .day-card .day-header .metric-title-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
}
.metric-cards-list .day-card .day-header .metric-title-row .status-badge {
  flex-shrink: 0;
  position: relative;
  top: 2px;
}
.metric-cards-list .day-card .day-header .metric-title-row .title-text {
  padding-right: 20px;
}
.metric-cards-list .day-card .day-header .metric-title-row .title-text h5 {
  line-height: 1.4;
}
.metric-cards-list .day-card .day-header .metric-title-row .title-text .small {
  font-size: 0.7em;
  text-wrap: nowrap;
}
.metric-cards-list .day-card .day-header .metric-title-row .title-text .description {
  margin-top: 4px;
  color: #A2A2A2;
}
.metric-cards-list .day-card .day-body {
  position: relative;
}
.metric-cards-list .char-count {
  text-align: right;
  color: #A2A2A2;
  font-size: 14px;
  position: absolute;
  width: 100%;
  bottom: -14px;
}
.metric-cards-list .score-input {
  max-width: 280px;
}
.metric-cards-list .description.metric-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.metric-cards-list .description.metric-tags span {
  position: relative;
  display: flex;
  align-items: center;
}
.metric-cards-list .description.metric-tags span::before {
  content: "·";
  display: inline-block;
  margin-right: 6px;
  font-weight: bold;
}

.locked-form-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  display: none;
}
.locked-form-wrapper .locked-overlay {
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(1px);
  width: 100%;
  height: 100%;
  z-index: 10;
  align-items: center;
  justify-content: center;
  position: relative;
  display: flex;
}
.locked-form-wrapper .locked-overlay .locked-content {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 24px;
  font-weight: bold;
  color: #262626;
}
.locked-form-wrapper .locked-overlay .locked-content .icon-lock {
  background-color: #262626;
  width: 28px;
  height: 28px;
}
.locked-form-wrapper.active {
  display: block;
}
.locked-form-wrapper.active .form {
  opacity: 0.4;
  pointer-events: none;
}

.page-banner.about-page .banner-bg {
  background-image: url("../../images/page-banner-01.jpg");
  background-position-y: 80%;
}
.page-banner.news-page .banner-bg {
  background-image: url("../../images/page-banner-02.jpg");
  background-position-y: 50%;
}
.page-banner.tour-page .banner-bg {
  background-image: url("../../images/page-banner-03.jpg");
  background-position-y: center;
}
.page-banner.admin-page .banner-bg {
  background-image: url("../../images/page-banner-04.png");
  background-position-y: center;
}

.hero-banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.hero-banner .heroSwiper,
.hero-banner .slide-bg {
  width: 100%;
  height: 624px;
}
@media only screen and (max-width: 1440px) {
  .hero-banner .heroSwiper,
  .hero-banner .slide-bg {
    height: 540px;
  }
}
@media only screen and (max-width: 998px) {
  .hero-banner .heroSwiper,
  .hero-banner .slide-bg {
    height: 480px;
  }
}
@media only screen and (max-width: 767px) {
  .hero-banner .heroSwiper,
  .hero-banner .slide-bg {
    height: 400px;
  }
}
.hero-banner .slide-bg {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.hero-banner .slogan-container {
  position: absolute;
  top: 50%;
  left: 15%;
  transform: translateY(-50%);
  z-index: 10;
}
.hero-banner .slogan-container .slogan-img {
  max-width: 450px;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .hero-banner .slogan-container .slogan-img {
    max-width: 300px;
    left: 5%;
  }
}
.hero-banner .custom-nav {
  width: 50px;
  height: 50px;
  background-color: #E7BC33;
  border-radius: 50%;
  opacity: 0.8;
  transition: all 0.3s ease;
}
.hero-banner .custom-nav::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.hero-banner .custom-nav:hover {
  opacity: 1;
  background-color: #D19300;
}
.hero-banner .swiper-button-prev {
  left: 20px;
}
.hero-banner .swiper-button-prev::after {
  transform: rotate(-135deg);
  margin-left: 6px;
}
.hero-banner .swiper-button-next {
  right: 20px;
}
.hero-banner .swiper-button-next::after {
  transform: rotate(45deg);
  margin-right: 6px;
}
.hero-banner .bottom-curve {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 80px;
  background-color: #FFFCF5;
  border-radius: 100% 100% 0 0/100% 100% 0 0;
  z-index: 20;
  box-shadow: 0 -10px 16px rgba(0, 0, 0, 0.0784313725);
}
@media only screen and (max-width: 767px) {
  .hero-banner .bottom-curve {
    height: 40px;
  }
}

.section-header {
  margin-bottom: 30px;
}
.section-header .sub-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-right: 10px;
}
.section-header .sub-title .en-title {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #D19300;
  font-size: 18px;
  font-weight: bold;
}
.section-header .sub-title .en-title::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("../../images/sky_lantern.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.section-header .main-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.section-header .main-title h2 {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 4px 0 0;
  letter-spacing: 2px;
}
.section-header .main-title h2::before, .section-header .main-title h2::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 22px;
  background-image: url("../../images/vector-wing.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: -4px;
}
.section-header .main-title h2::after {
  transform: scaleX(-1);
}
.section-header.section-center .sub-title,
.section-header.section-center .main-title {
  justify-content: center;
}
.section-header.section-center h2 {
  margin: 4px auto 0;
}

.slogan-text {
  font-weight: 600;
  line-height: 1.9em;
  margin-bottom: 40px;
  letter-spacing: 1px;
}

.video-container {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 60px;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  border-radius: 20px;
  overflow: hidden;
  z-index: 5;
}
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.feature-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 60px;
}
@media only screen and (max-width: 767px) {
  .feature-cards {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.feat-card {
  background-color: #fff;
  border-radius: 20px;
  padding: 24px 30px 20px;
  position: relative;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.03);
  border: 1px solid #F3E3BF;
}
.feat-card::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 10px;
  width: 40px;
  height: 40px;
  background: url("../../images/sky_lantern.png") center/contain no-repeat;
  z-index: 3;
}
.feat-card .card-content {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 20px;
}
.feat-card .feat-icon {
  width: 80px;
  height: 80px;
  background: linear-gradient(0deg, #D19300, #FFC852);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 48px;
  letter-spacing: -4px;
  text-indent: -4px;
  flex-shrink: 0;
  font-family: "Montaga", "Cardo", serif;
}
.feat-card .feat-text {
  text-align: left;
}
.feat-card .feat-text h4 {
  margin-bottom: 4px;
}
.feat-card .feat-text p {
  font-size: 18px;
  color: #D19300;
}
.feat-card.process-card {
  width: 280px;
  padding: 32px 20px 28px;
}
.feat-card.process-card::before {
  display: none;
}
.feat-card.process-card .card-content {
  flex-direction: column;
  text-align: center;
  gap: 16px;
}
.feat-card.process-card .feat-text {
  text-align: center;
}
.feat-card.process-card .feat-text p {
  margin-top: 4px;
}
@media only screen and (max-width: 767px) {
  .feat-card.process-card {
    padding: 24px 20px 20px;
  }
}

.card-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../../images/pattern-01.png");
  background-size: cover;
  background-position: center;
  opacity: 0.3;
  z-index: 1;
}

.scroll-deco-text {
  position: absolute;
  bottom: -15px;
  left: 0;
  width: 100%;
  z-index: 1;
  pointer-events: none;
  white-space: nowrap;
  text-align: center;
  opacity: 0.5;
}
.scroll-deco-text span {
  display: inline-block;
  font-family: "Cardo", serif;
  color: transparent;
  -webkit-text-stroke: 1px #E2C689;
  font-size: clamp(80px, 15vw, 150px);
  font-weight: bold;
  line-height: normal;
  transition: transform 0.1s ease-out;
}
@media only screen and (max-width: 998px) {
  .scroll-deco-text {
    bottom: 10px;
  }
  .scroll-deco-text span {
    font-size: clamp(60px, 10vw, 90px);
  }
}

.tour-section {
  padding-top: 30px;
}
.tour-section .deco-bg {
  position: absolute;
  top: 70%;
  transform: translateY(-50%);
  width: 500px;
  height: 500px;
  background-image: url("../../images/DecoImage-01.png");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -1;
}
.tour-section .deco-bg.left {
  left: -150px;
}
.tour-section .deco-bg.right {
  right: -150px;
  transform: translateY(-50%) scaleX(-1);
}
@media only screen and (max-width: 998px) {
  .tour-section .deco-bg {
    width: 300px;
    height: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .tour-section .deco-bg {
    display: none;
  }
}
.tour-section .card-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px 20px;
  margin-top: 50px;
  margin-bottom: 70px;
}
@media only screen and (max-width: 998px) {
  .tour-section .card-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 767px) {
  .tour-section .card-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.info-section {
  background-color: #FFF3DA;
  position: relative;
  padding-top: 240px;
  padding-bottom: 180px;
  z-index: 1;
  overflow: hidden;
}
@media only screen and (max-width: 1800px) {
  .info-section {
    padding-top: 180px;
  }
}
.info-section .action-block {
  position: relative;
  z-index: 5;
  text-align: center;
}
.info-section .action-block .btn-action {
  margin: 0 auto;
}
.info-section .action-block .btn-action .svg-icon {
  background-color: #fff;
}
.info-section .deco-bg-bottom {
  position: absolute;
  bottom: 0;
  width: 800px;
  height: 415px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom;
  z-index: 1;
  pointer-events: none;
}
.info-section .deco-bg-bottom.left {
  left: 0;
  background-position: bottom left;
}
.info-section .deco-bg-bottom.right {
  right: 0;
  background-position: bottom right;
}
@media only screen and (max-width: 1440px) {
  .info-section .deco-bg-bottom {
    width: 600px;
    height: 310px;
  }
}
@media only screen and (max-width: 998px) {
  .info-section {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .info-section .deco-bg-bottom {
    width: 350px;
    height: 180px;
    opacity: 0.6;
  }
}

.news-section {
  padding-bottom: 90px;
}
.news-section .news-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 20px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 998px) {
  .news-section .news-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 767px) {
  .news-section .news-list {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.news-section .news-card {
  display: flex;
  flex-direction: column;
}
.news-section .news-card .news-img {
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 16px;
  aspect-ratio: 847/564;
}
.news-section .news-card .news-img img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.4s ease;
}
.news-section .news-card:hover .news-img img {
  transform: scale(1.03);
}
.news-section .news-card .news-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.news-section .news-card .news-body .meta-info {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.news-section .news-card .news-body .meta-info .date {
  color: #4F4F4F;
  font-size: 15px;
}
.news-section .news-card .news-body h5 {
  margin-bottom: 12px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-section .news-card .news-body .desc {
  margin-top: 12px;
  color: #4F4F4F;
  font-size: 16px;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.page-banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.page-banner .banner-bg {
  width: 100%;
  height: 340px;
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}
.page-banner .bottom-curve {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 50px;
  background-color: #FFFCF5;
  border-radius: 100% 100% 0 0/100% 100% 0 0;
  z-index: 2;
  box-shadow: 0 -10px 16px rgba(0, 0, 0, 0.0784313725);
}
@media only screen and (max-width: 767px) {
  .page-banner .bottom-curve {
    height: 30px;
  }
}
.page-banner .banner-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-banner .page-title {
  margin-bottom: 30px;
}
.page-banner .page-title h3 {
  background-color: rgba(209, 147, 0, 0.9);
  border-radius: 22px;
  padding: 4px 30px;
  color: #fff;
  margin-bottom: 4px;
  line-height: normal;
}
.page-banner .page-title span {
  display: block;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-shadow: 0px 1px 4px rgba(0, 0, 0, 0.8), 0px 1px 14px rgba(0, 0, 0, 0.8);
}
@media only screen and (max-width: 1440px) {
  .page-banner .banner-bg {
    height: 320px;
  }
}
@media only screen and (max-width: 998px) {
  .page-banner .banner-bg {
    height: 290px;
  }
  .page-banner .page-title span {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .page-banner .banner-bg {
    height: 270px;
  }
  .page-banner .page-title h3 {
    padding: 2px 26px;
  }
  .page-banner .page-title span {
    font-size: 17px;
  }
}

.about-content {
  position: relative;
  padding-bottom: 74px;
  padding-top: 40px;
  overflow: hidden;
}

.about-layout {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 60px;
}
.about-layout .about-text {
  width: calc(45% - 30px);
  text-align: left;
  flex-shrink: 0;
}
.about-layout .about-img {
  width: calc(55% - 30px);
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
}
.about-layout .about-img img {
  width: 100%;
  height: auto;
  display: block;
}
@media only screen and (max-width: 998px) {
  .about-layout {
    flex-direction: column;
    align-items: center;
    gap: 0px;
  }
  .about-layout .about-text {
    width: 100%;
  }
  .about-layout .about-img {
    width: 100%;
    max-width: 768px;
  }
  .about-layout.reverse {
    flex-direction: column-reverse;
  }
}

.about-logo {
  background-color: #FFFCF5;
  padding-top: 20px;
  padding-bottom: 80px;
}
.about-logo .color-swatches {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-bottom: 40px;
  margin-top: 10px;
}
.about-logo .color-swatches .swatch {
  aspect-ratio: 5/4;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 6px 8px;
  color: #fff;
  font-size: 12px;
  line-height: 1.3;
}
.about-logo .color-swatches .swatch span {
  display: block;
  word-break: break-all;
}
@media only screen and (max-width: 998px) {
  .about-logo .color-swatches .swatch {
    aspect-ratio: auto;
    height: 140px;
  }
}
@media only screen and (max-width: 767px) {
  .about-logo .color-swatches .swatch {
    height: 110px;
    font-size: 11px;
  }
}

.about-slogan-section {
  position: relative;
  padding: 280px 0;
  text-align: center;
  overflow: hidden;
}
.about-slogan-section .bg-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../../images/about-bg-01.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}
.about-slogan-section .bg-layer::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 243, 218, 0.7);
}
.about-slogan-section .container {
  position: relative;
  z-index: 5;
}
.about-slogan-section .slogan-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.about-slogan-section .slogan-content h3 {
  line-height: 1.6;
  letter-spacing: 2px;
  margin: 0;
}
.about-slogan-section .slogan-content h3::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: url("../../images/sky_lantern.png") center/contain no-repeat;
  margin: 0 auto 20px;
}
.about-slogan-section .guide-dashed-line {
  position: absolute;
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 200px;
  border-left: 2px dashed #E7BC33;
  z-index: 10;
}
@media only screen and (max-width: 1800px) {
  .about-slogan-section {
    padding: 180px 0;
  }
}
@media only screen and (max-width: 767px) {
  .about-slogan-section {
    padding: 130px 0;
  }
  .about-slogan-section .guide-dashed-line {
    height: 150px;
  }
}

.about-process-section {
  background-color: #FFFCF5;
  padding-top: 100px;
  padding-bottom: 90px;
}
.about-process-section .process-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 20px 10px;
  margin: 50px auto 0;
}
.about-process-section .process-cards .process-card {
  width: calc((100% - 106px) / 3);
}
.about-process-section .step-arrow {
  display: flex;
  justify-content: center;
  align-items: center;
}
.about-process-section .step-arrow span {
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #E7BC33;
  margin: 0 10px;
}
.about-process-section .break-line {
  flex-basis: 100%;
  height: 0;
}
@media only screen and (max-width: 767px) {
  .about-process-section .break-line {
    display: none;
  }
  .about-process-section .step-arrow {
    transform: rotate(90deg);
  }
  .about-process-section .process-cards {
    flex-direction: column;
    align-items: center;
  }
  .about-process-section .process-cards .process-card {
    width: 100%;
    max-width: 400px;
  }
}

.news-detail-section {
  padding-bottom: 90px;
  position: relative;
}
.news-detail-section .container-s {
  position: relative;
  z-index: 5;
}
.news-detail-section .detail-header {
  text-align: center;
  margin-bottom: 30px;
}
.news-detail-section .detail-header .meta-info {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
}
.news-detail-section .detail-header .meta-info .date {
  color: #4F4F4F;
  font-size: 15px;
}
.news-detail-section .detail-header .detail-title {
  line-height: 1.4;
  margin: 0 auto;
}
.news-detail-section .fullsize-line {
  margin-bottom: 40px;
}
.news-detail-section .content-page img {
  width: 100%;
  border-radius: 16px;
  max-width: 800px;
  margin: 0 auto 40px;
}
.news-detail-section .deco-bg-bottom {
  position: absolute;
  bottom: 0;
  width: 600px;
  height: 310px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom;
  z-index: 1;
  pointer-events: none;
}
.news-detail-section .deco-bg-bottom.right {
  right: 0;
  background-position: bottom right;
  background-image: url("../../images/deco-bg-02.png");
}
@media only screen and (max-width: 998px) {
  .news-detail-section .deco-bg-bottom {
    width: 350px;
    height: 180px;
    opacity: 0.6;
  }
}

.tour-list-section {
  padding-top: 30px;
  padding-bottom: 90px;
}
.tour-list-section .filter-tabs {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-bottom: 50px;
  flex-wrap: wrap;
}
.tour-list-section .filter-tabs .tab-divider {
  width: 1px;
  height: 24px;
  background-color: #E2C689;
}
.tour-list-section .filter-tabs .filter-tab {
  cursor: pointer;
  display: inline-block;
}
.tour-list-section .filter-tabs .filter-tab input[type=checkbox] {
  display: none;
}
.tour-list-section .filter-tabs .filter-tab .tab-content {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 8px 28px;
  line-height: normal;
  border-radius: 10px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  background-color: #A2A2A2;
  transition: all 0.3s ease;
}
.tour-list-section .filter-tabs .filter-tab .tab-content .svg-icon {
  width: 24px;
  height: 24px;
}
.tour-list-section .filter-tabs .filter-tab:hover .tab-content {
  opacity: 0.8;
  transform: translateY(-2px);
}
.tour-list-section .filter-tabs .filter-tab.eco input[type=checkbox]:checked + .tab-content {
  background-color: #34A552;
}
.tour-list-section .filter-tabs .filter-tab.lohas input[type=checkbox]:checked + .tab-content {
  background-color: #DD622D;
}
.tour-list-section .filter-tabs .filter-tab.culture input[type=checkbox]:checked + .tab-content {
  background-color: #3D7EC9;
}
.tour-list-section .card-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px 20px;
  margin-bottom: 60px;
}
@media only screen and (max-width: 998px) {
  .tour-list-section .card-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 767px) {
  .tour-list-section .card-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.tour-gallery-section {
  background: linear-gradient(to bottom, #FFF3DA 70%, #FFFCF5 70%);
}
.tour-gallery-section .bottom-cloud {
  position: absolute;
  left: 0;
  width: 100%;
  height: clamp(80px, 9.5vw, 180px);
  z-index: 10;
  pointer-events: none;
  background-image: none;
  background-color: #FFF3DA;
  -webkit-mask-image: url("../../images/vector-cloud.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: top center;
  mask-image: url("../../images/vector-cloud.svg");
}
.tour-gallery-section .bottom-cloud {
  bottom: 20%;
  top: auto;
  z-index: 0;
}
.tour-gallery-section .container {
  position: relative;
  z-index: 5;
}
.tour-gallery-section .gallery-wrapper {
  display: flex;
  gap: 8px;
  height: 600px;
}
.tour-gallery-section .gallery-wrapper .main-image {
  flex: 1;
  border-radius: 16px;
  overflow: hidden;
}
.tour-gallery-section .gallery-wrapper .main-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: opacity 0.3s ease;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list {
  width: 120px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  overflow-y: auto;
  padding-right: 4px;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list::-webkit-scrollbar {
  width: 4px;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list::-webkit-scrollbar-track {
  background: transparent;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list::-webkit-scrollbar-thumb {
  background-color: #A2A2A2;
  border-radius: 10px;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list .thumb-item {
  width: 100%;
  aspect-ratio: 1/1;
  cursor: pointer;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list .thumb-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-radius: 10px;
  border: 2px solid transparent;
  opacity: 0.6;
  transition: all 0.3s ease;
}
.tour-gallery-section .gallery-wrapper .thumbnail-list .thumb-item:hover img, .tour-gallery-section .gallery-wrapper .thumbnail-list .thumb-item.active img {
  opacity: 1;
  border-color: #D19300;
}
@media only screen and (max-width: 1440px) {
  .tour-gallery-section .gallery-wrapper {
    height: 540px;
  }
}
@media only screen and (max-width: 998px) {
  .tour-gallery-section .gallery-wrapper {
    height: 480px;
  }
}
@media only screen and (max-width: 767px) {
  .tour-gallery-section .gallery-wrapper {
    flex-direction: column;
    height: auto;
  }
  .tour-gallery-section .gallery-wrapper .main-image {
    aspect-ratio: 16/9;
  }
  .tour-gallery-section .gallery-wrapper .thumbnail-list {
    width: 100%;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    padding-right: 0;
    padding-bottom: 4px;
  }
  .tour-gallery-section .gallery-wrapper .thumbnail-list::-webkit-scrollbar {
    height: 4px;
  }
  .tour-gallery-section .gallery-wrapper .thumbnail-list .thumb-item {
    width: 80px;
    flex-shrink: 0;
  }
}

.tour-info-section {
  padding-top: 10px;
}
.tour-info-section .info-layout {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 60px;
}
.tour-info-section .info-layout .info-text {
  flex: 1;
}
.tour-info-section .info-layout .info-text .tour-title {
  margin-bottom: 20px;
  line-height: 1.4;
}
.tour-info-section .info-layout .info-text .fullsize-line {
  margin-bottom: 24px;
}
.tour-info-section .info-layout .info-text .content-page {
  margin: 20px auto;
}
.tour-info-section .info-layout .info-text .tags span {
  font-size: 16px;
  color: #D19300;
}
.tour-info-section .info-sidebar {
  width: 400px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.tour-info-section .info-sidebar .sidebar-card {
  background-color: #fff;
  border: 1px solid #E2C689;
  border-radius: 12px;
  padding: 24px 30px 20px;
  position: relative;
  overflow: hidden;
}
.tour-info-section .info-sidebar .price-card {
  text-align: center;
}
.tour-info-section .info-sidebar .price-card .card-inner {
  position: relative;
  z-index: 2;
}
.tour-info-section .info-sidebar .price-card .price-box {
  padding: 30px 20px 10px;
}
.tour-info-section .info-sidebar .price-card .price-box p {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
.tour-info-section .info-sidebar .price-card .price-box .price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
  font-weight: bold;
}
.tour-info-section .info-sidebar .price-card .price-box .price .num {
  font-size: 56px;
  color: #262626;
  line-height: 1;
}
.tour-info-section .info-sidebar .price-card .price-box .price .unit {
  font-size: 20px;
  font-weight: bold;
  color: #262626;
}
.tour-info-section .info-sidebar .action-card {
  background-color: #FFF3DA;
}
.tour-info-section .info-sidebar .action-card .contact-person {
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #4F4F4F;
}
@media only screen and (max-width: 767px) {
  .tour-info-section .info-layout {
    flex-direction: column;
    gap: 40px;
  }
  .tour-info-section .info-sidebar {
    width: 100%;
  }
  .tour-info-section .info-sidebar .sidebar-card {
    padding: 20px;
  }
  .tour-info-section .info-sidebar .price-card .price-box p {
    font-size: 18px;
  }
  .tour-info-section .info-sidebar .price-card .price-box .price .num {
    font-size: 44px;
  }
  .tour-info-section .info-sidebar .price-card .price-box .price .unit {
    font-size: 18px;
  }
}

.tour-timeline-section {
  padding-top: 0px;
  padding-bottom: 120px;
  background-color: #FFFCF5;
}
.tour-timeline-section .timeline-wrapper {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.tour-timeline-section .timeline-item {
  position: relative;
  padding-left: 76px;
  padding-bottom: 50px;
  margin-top: 20px;
}
.tour-timeline-section .timeline-item::before {
  content: "";
  position: absolute;
  top: 40px;
  left: 27px;
  width: 2px;
  height: calc(100% - 40px);
  border-left: 2px dashed #CCCCCC;
}
.tour-timeline-section .timeline-item .item-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F0F0F0;
  z-index: 2;
}
.tour-timeline-section .timeline-item .item-icon .svg-icon {
  background-color: #fff;
  width: 30px;
  height: 30px;
}
.tour-timeline-section .timeline-item .item-content {
  padding-top: 4px;
}
.tour-timeline-section .timeline-item .item-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
  font-weight: 600;
}
.tour-timeline-section .timeline-item .item-tags .tag {
  font-size: 18px;
  padding: 2px 14px;
  border-radius: 4px;
  border: 1px solid #F0F0F0;
  color: #F0F0F0;
  background-color: #fff;
  line-height: normal;
}
.tour-timeline-section .timeline-item .item-title {
  margin-bottom: 10px;
}
.tour-timeline-section .timeline-item .item-desc {
  color: #4F4F4F;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 20px;
}
.tour-timeline-section .timeline-item.type-car .item-icon {
  background-color: #E7BC33;
}
.tour-timeline-section .timeline-item.type-car .tag {
  border-color: #E7BC33;
  color: #E7BC33;
}
.tour-timeline-section .timeline-item.type-mountain .item-icon {
  background-color: #34A552;
}
.tour-timeline-section .timeline-item.type-mountain .tag {
  border-color: #34A552;
  color: #34A552;
}
.tour-timeline-section .timeline-item.type-hotel .item-icon {
  background-color: #3D7EC9;
}
.tour-timeline-section .timeline-item.type-hotel .tag {
  border-color: #3D7EC9;
  color: #3D7EC9;
}
.tour-timeline-section .timeline-item.type-food .item-icon {
  background-color: #DD622D;
}
.tour-timeline-section .timeline-item.type-food .tag {
  border-color: #DD622D;
  color: #DD622D;
}
.tour-timeline-section .timeline-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.tour-timeline-section .timeline-gallery img {
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  cursor: zoom-in;
  transition: opacity 0.3s;
  aspect-ratio: 4/3;
  max-width: 720px;
}
.tour-timeline-section .timeline-gallery img:hover {
  opacity: 0.9;
}
.tour-timeline-section .timeline-gallery img:only-child {
  width: 100%;
}
.tour-timeline-section .timeline-gallery img:not(:only-child) {
  width: calc(50% - 8px);
}
@media only screen and (max-width: 767px) {
  .tour-timeline-section .day-card {
    border-radius: 12px;
  }
  .tour-timeline-section .day-header {
    padding: 30px 30px 0px;
  }
  .tour-timeline-section .day-body {
    padding: 0px 30px 30px;
  }
  .tour-timeline-section .timeline-item {
    padding-left: 64px;
  }
  .tour-timeline-section .timeline-item::before {
    left: 23px;
  }
  .tour-timeline-section .timeline-item .item-icon {
    width: 48px;
    height: 48px;
  }
  .tour-timeline-section .timeline-item .item-icon .svg-icon {
    width: 24px;
    height: 24px;
  }
  .tour-timeline-section .timeline-item .item-tags .tag {
    font-size: 16px;
  }
  .tour-timeline-section .timeline-item .item-tags .item-desc {
    font-size: 15px;
  }
}
@media only screen and (max-width: 480px) {
  .tour-timeline-section .day-header {
    padding: 30px 20px 0px;
  }
  .tour-timeline-section .day-body {
    padding: 0px 20px 30px;
  }
}

.day-card {
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  overflow: hidden;
  position: relative;
}
.day-card.is-active .day-header .icon-toggle {
  transform: rotate(0deg);
}
.day-card.is-active .day-body {
  display: block;
}
@media only screen and (max-width: 767px) {
  .day-card {
    border-radius: 12px;
  }
}

.day-header {
  padding: 40px 50px 20px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  cursor: pointer;
  background-color: #fff;
  transition: background-color 0.2s;
}
.day-header h4 {
  margin: 0 0 20px;
}
.day-header .icon-toggle {
  background-color: #262626;
  transition: transform 0.3s ease;
  width: 28px;
  height: 28px;
  transform: rotate(-90deg);
}
.day-header:hover {
  background-color: #f8f8f8;
}
@media only screen and (max-width: 767px) {
  .day-header {
    padding: 30px 30px 20px;
  }
}

.day-body {
  padding: 0px 50px 40px;
}
@media only screen and (max-width: 767px) {
  .day-body {
    padding: 0px 30px 30px;
  }
}

.image-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.image-modal.is-open {
  opacity: 1;
  visibility: visible;
}
.image-modal .modal-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(5px);
  cursor: zoom-out;
}
.image-modal .modal-content {
  position: relative;
  z-index: 1;
  max-width: 90vw;
  max-height: 90vh;
}
.image-modal .modal-content img {
  max-width: 100%;
  max-height: 90vh;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 8px;
}
.image-modal .modal-content .btn-close-modal {
  position: absolute;
  top: -40px;
  right: -40px;
  background: none;
  border: none;
  cursor: pointer;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.image-modal .modal-content .btn-close-modal .svg-icon {
  background-color: #fff;
  width: 24px;
  height: 24px;
}
.image-modal .modal-content .btn-close-modal:hover .svg-icon {
  background-color: #E7BC33;
}
@media only screen and (max-width: 998px) {
  .image-modal .modal-content .btn-close-modal {
    top: -40px;
    right: 0;
  }
}
.toast-container {
	width: 90%;
	z-index: 9999;
	max-width: 450px;
}

* html .toast-container {
	position: absolute;
}

.toast-item {
	height: auto;
	background: rgba(255,255,255,0.9);
	border-radius: 10px;
	color: #626262;
	padding: 60px 20px 20px 20px;
	font-family: lucida Grande;
	font-size: 1.25rem;
	border: 2px solid #FFF;
	box-shadow: 0 0 10px rgba(0,0,0,0.2),0 0 5px rgba(0,0,0,0.2);
	display: block;
	position: relative;
	margin: 0 0 12px 0;
}

	.toast-item p {
		text-align: left;
		font-size: 2.25rem;
		line-height: 1.5;
	}

		.toast-item p:last-child {
			padding: 0;
		}

.toast-item-close {
	background: url(/Content/toastmessage/images/close.png);
	width: 22px;
	height: 22px;
	position: absolute;
	top: -12px;
	right: -12px;
	cursor: pointer;
}

.toast-item-image {
	width: 32px;
	height: 32px;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 15px;
}

.toast-item-image-notice {
	background: url(/Content/toastmessage/images/notice.png);
}

.toast-item-image-success {
	background: url(/Content/toastmessage/images/success.png);
}

.toast-item-image-warning {
	background: url(/Content/toastmessage/images/warning.png);
}

.toast-item-image-error {
	background: url(/Content/toastmessage/images/error.png);
}


/**
 * toast types
 *
 * pattern: toast-type-[value]
 * where 'value' is the real value of the plugin option 'type'
 *
 */
.toast-type-notice {
	color: #626262;
}

.toast-type-success {
	color: #626262;
}

.toast-type-warning {
	color: #626262;
	border-color: #FCBD57;
}

.toast-type-error {
	color: #626262;
	border-color: #B32B2B;
}

/**
 * positions
 *
 * pattern: toast-position-[value]
 * where 'value' is the real value of the plugin option 'position'
 *
 */
.toast-position-top-left {
	position: fixed;
	left: 20px;
	top: 20px;
}

.toast-position-top-center {
	position: fixed;
	top: 20px;
	left: 50%;
	margin-left: -140px;
}

.toast-position-top-right {
	position: fixed;
	top: 20px;
	right: 20px;
}

.toast-position-middle-left {
	position: fixed;
	left: 20px;
	top: 50%;
	margin-top: -40px;
}

.toast-position-middle-center {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

.toast-position-middle-right {
	position: fixed;
	right: 20px;
	margin-left: -140px;
	margin-top: -40px;
	top: 50%;
}

