body {
font-size: 14px;
 /* -webkit-filter: grayscale(100%); /* New WebKit */ */
    /* -moz-filter: grayscale(100%); */
    /* -ms-filter: grayscale(100%); */
    /* -o-filter: grayscale(100%); */
    /* filter: grayscale(100%); */
     /* filter: gray; /* IE 6-9 */ */
}

.black-ribbon {   
position: fixed;   
z-index: 9999;   
width: 70px; 
}
@media only all and (min-width: 768px) { .black-ribbon { width: auto; } }

.stick-left { left: 0; }
.stick-right { right: 0; }
.stick-top { top: 0; }
.stick-bottom { bottom: 0; }



@font-face {
    font-family: 'bangna_newregular';
    src: url('../fonts/bangna-new-webfont.eot');
    src: url('../fonts/bangna-new-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/bangna-new-webfont.woff2') format('woff2'),
         url('../fonts/bangna-new-webfont.woff') format('woff'),
         url('../fonts/bangna-new-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.main-contain{
	position: absolute;  
	top: 0px;   
	left: 0px;  
	width: 100%;   
	height: 100%;   
	overflow: hidden;
}

	#overlay {   
	position: fixed;  
	top: 0px;   
	left: 0px;  
	background: #fff;   
	width: 100%;   
	height: 100%;   
	opacity: .9;   
	filter: alpha(opacity=90);   
	-moz-opacity: .9;  
	z-index: 9999;
	display: none;
}   


.carousel-inner img {
width:100%;
max-height:320px;
}

/* Footer */
footer
{
font-family: 'bangna_newregular';
text-align: center;
padding-top: 0px;
}

/*.panel-primary
{
	margin-top: 10px;
}
*/

.panel-danger>.panel-heading { background-color: #b81e0d;border-color:#b81e0d;font-family: 'bangna_newregular';}
.panel-danger>.panel-heading> h3 {font-family:'bangna_newregular';font-weight:bold;font-size:22px;};
.panel-danger>.panel-title { font-size:20px; }
.panel-danger>.panel-footer {  background-color: #ebccd1;border-top: 1px solid #ebccd1; }
.panel-danger {border-color:#b81e0d;};


.navbar-default {   background-color: #b81e0d;   border-color: #b81e0d;	font-family: 'bangna_newregular';	    border-radius: unset;	}
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:focus, .navbar-default .navbar-nav>.active>a:hover {
    color: #FFFFFF;
    background-color: #f79388;
}
.navbar-default .navbar-nav>li>a {   color: #FFFFFF; }
.navbar-default .navbar-nav>li>a:focus, .navbar-default .navbar-nav>li>a:hover {   color: #A9D0F5;    background-color: transparent; }

.navbar-custom {    color: #FFFFFF;    background-color: #0000ff;}

.nav h4 {font-family: 'bangna_newregular';color:#FFFFFF;font-size:16px;    font-weight: bold;}
.nav-pills>li.active>a{ font-family: 'bangna_newregular';background-color: #2e64fe;	font-size:16px;    font-weight: bold;	}
.nav-pills>li.active>a:focus, .nav-pills>li.active>a:hover {font-family: 'bangna_newregular';    background-color: #337ab7;	font-size:16px; font-weight: bold;}

.nav-pills>li>h4>a{
    position: relative;
    display: block;
    padding: 8px 15px;
	border-radius: 4px;
	}
.nav-pills>li>h4>a:focus, .nav-pills>li>h4>a:hover {	color:#FFFFFF; background-color: #2e64fe;text-decoration: none;}
.navbar-inverse {   font-family: 'bangna_newregular';  font-weight:bold;border-radius: unset;	}
.navbar-inverse .navbar-nav>li>a { color: #ffffff;}
.navbar-inverse .navbar-nav>li>a:hover { color: black;}


/* Right Menu*/
.rmenu { margin-top:3px;font-family: 'bangna_newregular'; }
.rmenu h4 { font-weight:bold; }
.rmenu a:hover { color:black;}

/* box-example*/
.bs-example {
	position: relative;
    padding: 4px 15px 15px;
    margin: 5px -15px 15px;
    border-color: #e5e5e5 #eee #eee;
    border-style: solid;
    border-width: 1px 0;
    -webkit-box-shadow: inset 0 3px 6px rgba(0,0,0,.05);
    box-shadow: inset 0 3px 6px rgba(0,0,0,.05);
	}

.bs-example ul {margin-top: 4px;}
.bs-example ul li {padding-left: 9px;padding-top:2px;}


.footer
{
	font-family: 'bangna_newregular';
	background-color: #b81e0d;
	color:white;
	padding:10px;
}

.contact
{
	font-family: 'bangna_newregular';
	background-color: #EDEDED ;
}
.contact h5
{
	font-family: 'bangna_newregular';
	text-transform: uppercase;
	font-size: 25px;
	font-weight: bold;
	margin-top: -14px;
}

.contact h6
{
	font-family: 'bangna_newregular';
	text-align: center;
	text-transform: uppercase;
	font-size: 28px;
	font-weight: bold;
}

.contact hr
{
	width: 40px;
	margin-bottom: 45px;
}

.contact .contact-holder
{
	padding-left: 40px;
	text-align: left;
}

.contact .contact-holder h6
{
	margin-bottom: 15px;
	text-align: left;
}

.contact .contact-holder p
{
	margin-bottom: 30px;
}

#calendar{
    width:750px;    
    margin:auto;
}



.thumbnail2 img{width:230px;height:150px;margin:5px;border:solid 1px #CCCCCC;
padding:5px;
margin-top:15px;
margin-right:12px;}

 .thumbnail img{width:170px;height:135px;margin:5px;}
        /*canvas{border:1px solid red;} */

.circle {
	position:relative;
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	border:10px solid rgba(255,255,255,.10);
	width:auto;
	height:200px;
	overflow:hidden;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s  ease;
	-o-transition: all .3s  ease;
	-ms-transition: all .3s  ease;
	transition: all .3s ease;
	background-color:#2E64FE;
}

/* Blur + Gray Scale */
.hover10 figure img {
	-webkit-filter: grayscale(0) blur(0);
	filter: grayscale(0) blur(0);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.hover10 figure:hover img {
	-webkit-filter: grayscale(100%) blur(1px);
	filter: grayscale(100%) blur(1px);
}
:focus {
  outline: none;
}
.row {
  margin-right: 0;
  margin-left: 0;
}
/* 
    Sometimes the sub menus get too large for the page and prevent the menu from scrolling, limiting functionality
    A quick fix is to change .side-menu to 

    -> position:absolute
    
    and uncomment the code below.
    You also need to uncomment 
    
    -> <div class="absolute-wrapper"> </div> in the html file

    you also need to tweek the animation. Just uncomment the code in that section
    --------------------------------------------------------------------------------------------------------------------
    If you want to make it really neat i suggest you look into an alternative like http://areaaperta.com/nicescroll/
    This will allow the menu to say fixed on body scoll and scoll on the side bar if it get to large
*/
/*.absolute-wrapper{
    position: fixed;
    width: 300px;
    height: 100%;
    background-color: #f8f8f8;
    border-right: 1px solid #e7e7e7;
}*/

.side-menu {
  height: 100%;
  /*background-color: #f8f8f8;*/
  border-right: 1px solid #e7e7e7;
  margin-top:10px;
}
.side-menu .navbar {
font-family: bangna_newregular;
 background-color: #b81e0d;
 border: none;
 border-radius: unset;
}
.side-menu .navbar-header {
  width: 100%;
  border-bottom: 1px solid #e7e7e7;
}
.side-menu .navbar-nav .active a {
  background-color: transparent;
  margin-right: -1px;
  border-right: 5px solid #e7e7e7;
}
.side-menu .navbar-nav li {
  display: block;
  width: 100%;
  border-bottom: 1px solid #e7e7e7;
}
.side-menu .navbar-nav li a {
  font-weight: bold;
  padding: 15px;
  
}

.side-menu .navbar-nav li a:hover {
color:black;
}
.side-menu .navbar-nav li a .glyphicon {
  padding-right: 4px;
}
.side-menu #dropdown {
  border: 0;
  margin-bottom: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  color:black;
}
.side-menu #dropdown .caret {
  float: right;
  margin: 9px 5px 0;
}
.side-menu #dropdown .indicator {
  float: right;
}
.side-menu #dropdown > a {
 border-bottom: 1px solid #e7e7e7;
}
.side-menu #dropdown .panel-body {
  padding: 0;
  /*background-color: #f3f3f3;*/
  background-color: #f25240;
}
.side-menu #dropdown .panel-body .navbar-nav {
  width: 100%;
}
.side-menu #dropdown .panel-body .navbar-nav li {
   font-size:12px;
  padding-left: 10px;
  border-bottom: 1px solid #e7e7e7;
}
.side-menu #dropdown .panel-body .navbar-nav li:last-child {
  border-bottom: none;
}
.side-menu #dropdown .panel-body .panel > a {
  margin-left: -20px;
  padding-left: 35px;
}

.side-menu #dropdown .panel-body .panel-body {
  margin-left: -15px;
}
.side-menu #dropdown .panel-body .panel-body li {
  padding-left: 30px;
}

.side-menu #dropdown .panel-body .panel-body li:last-child {
  border-bottom: 1px solid #e7e7e7;
}
.side-menu #search-trigger {
  background-color: #f3f3f3;
  border: 0;
  border-radius: 0;
  position: absolute;
  top: 0;
  right: 0;
  padding: 15px 18px;
}
.side-menu .brand-name-wrapper {
  min-height: 50px;
}
.side-menu .brand-name-wrapper .navbar-brand {
  display: block;
}
.side-menu #search {
  position: relative;
  z-index: 1000;
}
.side-menu #search .panel-body {
  padding: 0;
}
.side-menu #search .panel-body .navbar-form {
  padding: 0;
  padding-right: 50px;
  width: 100%;
  margin: 0;
  position: relative;
  border-top: 1px solid #e7e7e7;
}
.side-menu #search .panel-body .navbar-form .form-group {
  width: 100%;
  position: relative;
}
.side-menu #search .panel-body .navbar-form input {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  width: 100%;
  height: 50px;
}
.side-menu #search .panel-body .navbar-form .btn {
  position: absolute;
  right: 0;
  top: 0;
  border: 0;
  border-radius: 0;
  background-color: #f3f3f3;
  padding: 15px 18px;
}
/* Main body section */
.side-body {
  margin-left: 310px;
}
/* small screen */
@media (max-width: 768px) {
  .side-menu {
    position: relative;
    width: 100%;
    height: 0;
    border-right: 0;
    border-bottom: 1px solid #e7e7e7;
	border-radius: 0px;
  }
  .side-menu .brand-name-wrapper .navbar-brand {
    display: inline-block;
  }
  /* Slide in animation */
  @-moz-keyframes slidein {
    0% {
      left: -300px;
    }
    100% {
      left: 10px;
    }
  }
  @-webkit-keyframes slidein {
    0% {
      left: -300px;
    }
    100% {
      left: 10px;
    }
  }
  @keyframes slidein {
    0% {
      left: -300px;
    }
    100% {
      left: 10px;
    }
  }
  @-moz-keyframes slideout {
    0% {
      left: 0;
    }
    100% {
      left: -300px;
    }
  }
  @-webkit-keyframes slideout {
    0% {
      left: 0;
    }
    100% {
      left: -300px;
    }
  }
  @keyframes slideout {
    0% {
      left: 0;
    }
    100% {
      left: -300px;
    }
  }
  /* Slide side menu*/
  /* Add .absolute-wrapper.slide-in for scrollable menu -> see top comment */
  .side-menu-container > .navbar-nav.slide-in {
    -moz-animation: slidein 300ms forwards;
    -o-animation: slidein 300ms forwards;
    -webkit-animation: slidein 300ms forwards;
    animation: slidein 300ms forwards;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
  }
.side-menu-container > .navbar-nav {
    /* Add position:absolute for scrollable menu -> see top comment */
    position: fixed;
    left: -300px;
    width: 300px;
    top: 43px;
    height: 100%;
    border-right: 1px solid #e7e7e7;
    /*background-color: #f8f8f8;*/
	background-color: #b81e0d;
    -moz-animation: slideout 300ms forwards;
    -o-animation: slideout 300ms forwards;
    -webkit-animation: slideout 300ms forwards;
    animation: slideout 300ms forwards;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
  }
  /* Uncomment for scrollable menu -> see top comment */
  /*.absolute-wrapper{
        width:285px;
        -moz-animation: slideout 300ms forwards;
        -o-animation: slideout 300ms forwards;
        -webkit-animation: slideout 300ms forwards;
        animation: slideout 300ms forwards;
        -webkit-transform-style: preserve-3d;
        transform-style: preserve-3d;
    }*/
  @-moz-keyframes bodyslidein {
    0% {
      left: 0;
    }
    100% {
      left: 300px;
    }
  }
  @-webkit-keyframes bodyslidein {
    0% {
      left: 0;
    }
    100% {
      left: 300px;
    }
  }
  @keyframes bodyslidein {
    0% {
      left: 0;
    }
    100% {
      left: 300px;
    }
  }
  @-moz-keyframes bodyslideout {
    0% {
      left: 300px;
    }
    100% {
      left: 0;
    }
  }
  @-webkit-keyframes bodyslideout {
    0% {
      left: 300px;
    }
    100% {
      left: 0;
    }
  }
  @keyframes bodyslideout {
    0% {
      left: 300px;
    }
    100% {
      left: 0;
    }
  }
  /* Slide side body*/
  .side-body {
    margin-left: 5px;
    margin-top: 70px;
    position: relative;
    -moz-animation: bodyslideout 300ms forwards;
    -o-animation: bodyslideout 300ms forwards;
    -webkit-animation: bodyslideout 300ms forwards;
    animation: bodyslideout 300ms forwards;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
  }
  .body-slide-in {
    -moz-animation: bodyslidein 300ms forwards;
    -o-animation: bodyslidein 300ms forwards;
    -webkit-animation: bodyslidein 300ms forwards;
    animation: bodyslidein 300ms forwards;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
  }
  /* Hamburger */
  .navbar-toggle {
    border: 0;
    float: right;
    padding: 18px;
    margin: 0;
    border-radius: 0;
    background-color: #f25240;
  }
  /* Search */
  #search .panel-body .navbar-form {
    border-bottom: 0;
  }
  #search .panel-body .navbar-form .form-group {
    margin: 0;
  }
  .navbar-header {
    /* this is probably redundant */
    /*position: fixed;*/
    z-index: 3;
    /*background-color: #f8f8f8;*/
  }
  /* Dropdown tweek */
  #dropdown .panel-body .navbar-nav {
    margin: 0;
  }
}

/* General Responsive Fixes */
body {
  overflow-x: hidden;
}

html {
  overflow-x: hidden;
}

/* Desktop - Keep normal navbar behavior */
@media (min-width: 992px) {
  .navbar-inverse {
    width: 100%;
  }
  
  .navbar-header {
    width: auto;
  }
  
  .navbar-brand {
    padding: 5px 15px;
  }
  
  /* Ensure dropdown menus are visible */
  .navbar-inverse .navbar-nav .dropdown-menu {
    position: absolute;
    float: left;
    background-color: #d9230f;
    border: 1px solid rgba(0,0,0,.15);
    box-shadow: 0 6px 12px rgba(0,0,0,.175);
    min-width: 250px;
    max-height: 80vh;
    overflow-y: auto;
  }
  
  .navbar-inverse .navbar-nav .dropdown-menu>li>a {
    color: #fac0ba;
  }
  
  .navbar-inverse .navbar-nav .dropdown-menu>li>a:hover,
  .navbar-inverse .navbar-nav .dropdown-menu>li>a:focus {
    color: #ffffff;
    background-color: rgba(0,0,0,0.1);
  }
}

/* Mobile Responsive Styles */
@media (max-width: 991px) {
  /* Prevent horizontal scrolling */
  body {
    font-size: 13px;
    max-width: 100vw;
  }
  
  html {
    max-width: 100vw;
  }
  
  /* ซ่อน overlay บนมือถือ */
  #overlay {
    display: none !important;
  }
  
  /* Fix navbar width on mobile/tablet */
  .navbar-inverse {
    width: 100%;
    max-width: 100vw;
  }
  
  .navbar-header {
    width: 100%;
    max-width: 100%;
  }
  
  .navbar-brand {
    padding: 5px 10px !important;
    max-width: 180px !important;
  }
  
  .navbar-brand img {
    max-height: 35px !important;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
  }
  
  .navbar-inverse .navbar-nav {
    margin: 0;
    width: 100%;
  }
  
  .navbar-inverse .navbar-nav>li>a {
    padding: 12px 15px;
    font-size: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    white-space: normal;
    word-wrap: break-word;
  }
  
  /* Mobile dropdown menu - full width, static */
  .navbar-inverse .navbar-nav .dropdown-menu {
    background-color: #d9230f;
    border: none;
    box-shadow: none;
    position: static;
    float: none;
    width: 100%;
    max-height: none;
    overflow-y: visible;
  }
  
  .navbar-inverse .navbar-nav .dropdown-menu>li>a {
    color: #fac0ba;
    padding: 10px 15px 10px 30px;
    font-size: 13px;
    white-space: normal;
    word-wrap: break-word;
  }
  
  .navbar-inverse .navbar-nav .dropdown-menu>li>a:hover {
    background-color: rgba(0,0,0,0.2);
    color: #ffffff;
  }
  
  .navbar-inverse .navbar-nav .dropdown-menu .divider {
    background-color: rgba(255,255,255,0.1);
  }
  
  /* ปรับ panel heading สำหรับมือถือ */
  .panel-danger>.panel-heading h3,
  .alert h4 {
    font-size: 18px !important;
  }
  
  /* ปรับ carousel สำหรับมือถือ */
  .carousel-inner img {
    max-height: 250px;
  }
  
  /* ปรับ iframe ให้ responsive */
  iframe {
    max-width: 100% !important;
    height: auto !important;
  }
  
  /* ปรับ thumbnail gallery */
  .thumbnail {
    margin-bottom: 15px;
  }
  
  /* ซ่อนภาพพื้นหลังที่ไม่จำเป็นบนมือถือ */
  .main-contain {
    background-size: cover;
  }
  
  /* ปรับ container ให้เต็มจอ */
  .container {
    width: 100% !important;
    max-width: 100vw !important;
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
  }
  
  /* Fix any wide content */
  * {
    max-width: 100vw;
  }
  
  img {
    max-width: 100% !important;
    height: auto !important;
  }
}

/* Extra small mobile adjustments */
@media (max-width: 575px) {
  body {
    font-size: 13px;
  }
  
  .carousel-inner img {
    max-height: 200px;
  }
  
  .panel-danger>.panel-heading h3,
  .alert h4 {
    font-size: 16px !important;
  }
}

/* Tablet Responsive Styles */
@media (min-width: 576px) and (max-width: 991px) {
  body {
    font-size: 13.5px;
  }
  
  .carousel-inner img {
    max-height: 280px;
  }
  
  .panel-danger>.panel-heading h3,
  .alert h4 {
    font-size: 20px !important;
  }
}

/* Facebook Widget Responsive Styles */
.fb-page,
.fb-page iframe[style],
.fb-page span {
  width: 100% !important;
  max-width: 100% !important;
}

/* Desktop - Make Facebook widget use full column width */
@media (min-width: 992px) {
  .fb-page {
    width: 100% !important;
    height: 2110px !important;
  }
  
  .fb-page iframe[style] {
    width: 100% !important;
    height: 2110px !important;
  }
}

/* Mobile - Full width Facebook widget with appropriate height */
@media (max-width: 991px) {
  /* Facebook column - full width with minimal padding */
  .col-xs-12.col-md-3 {
    padding-left: 5px;
    padding-right: 5px;
  }
  
  .fb-page {
    width: 100% !important;
    min-width: 100% !important;
    height: 800px !important;
    min-height: 800px !important;
  }
  
  .fb-page iframe,
  .fb-page > span,
  .fb-page > span > iframe {
    width: 100% !important;
    min-width: 100% !important;
    height: 800px !important;
    min-height: 800px !important;
  }
  
  /* Force Facebook widget wrapper to be full width and height */
  .fb-page .fb_iframe_widget,
  .fb-page .fb_iframe_widget > span,
  .fb-page .fb_iframe_widget > span > iframe {
    width: 100% !important;
    height: 800px !important;
  }
}

/* Facebook widget spacing fix - Desktop */
@media (min-width: 992px) {
    .col-md-3 > div > div {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .col-md-3 .fb-page {
        margin: 0 !important;
        padding: 0 !important;
        min-height: auto !important;
    }
    
    .col-md-3 .fb-xfbml-parse-ignore {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* ลบ margin ของรูปภาพ */
    .col-md-3 div > a {
        display: block;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 0;
    }
    
    .col-md-3 img {
        margin: 0 !important;
        padding: 0 !important;
        display: block;
        vertical-align: top;
    }
}