.elementor-442 .elementor-element.elementor-element-69cfa33e{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E7E7E7;--border-color:#E7E7E7;--z-index:3;}.elementor-442 .elementor-element.elementor-element-69cfa33e:not(.elementor-motion-effects-element-type-background), .elementor-442 .elementor-element.elementor-element-69cfa33e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-442 .elementor-element.elementor-element-69cfa33e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-69cc9ca{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-442 .elementor-element.elementor-element-69cc9ca.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-5a2cb80{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-442 .elementor-element.elementor-element-5a2cb80.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-theme-site-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-442 .elementor-element.elementor-element-425a937{width:var( --container-widget-width, 128.278% );max-width:128.278%;--container-widget-width:128.278%;--container-widget-flex-grow:0;text-align:left;}.elementor-442 .elementor-element.elementor-element-425a937.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-425a937 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:39px;font-weight:600;color:#000000;}.elementor-442 .elementor-element.elementor-element-5dfa6ef{--display:flex;}.elementor-442 .elementor-element.elementor-element-5dfa6ef.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-2e746a8.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-4b559e6{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--gap:0px 8px;--row-gap:0px;--column-gap:8px;--flex-wrap:nowrap;--border-radius:0px 0px 0px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-442 .elementor-element.elementor-element-4b559e6.e-con{--align-self:center;--order:99999 /* order end hack */;--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button{background-color:#FFFFFF;font-family:"AirBnb_Bk", Sans-serif;text-shadow:0px 0px 10px rgba(0,0,0,0.3);fill:#020202;color:#020202;transition-duration:0.2s;border-radius:16px 16px 16px 16px;}.elementor-442 .elementor-element.elementor-element-29925d1{width:var( --container-widget-width, 62.525% );max-width:62.525%;--container-widget-width:62.525%;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-29925d1.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button-content-wrapper{flex-direction:row;}.elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button:hover, .elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button:focus{color:var( --e-global-color-accent );}.elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button:hover svg, .elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button:focus svg{fill:var( --e-global-color-accent );}.elementor-442 .elementor-element.elementor-element-7ec1e63.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-0e76e69{--display:flex;}.elementor-442 .elementor-element.elementor-element-0e76e69.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-af1472e{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-442 .elementor-element.elementor-element-af1472e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-searchbar-widget{justify-content:center;width:943px;margin:0 0 0 0;padding:0 0 0 0;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-search-input{width:943px;}.elementor-442 .elementor-element.elementor-element-066bd12 #b-search-button{background-color:var( --e-global-color-secondary );}.elementor-442 .elementor-element.elementor-element-066bd12 #b-search-button i{color:#FFFFFF;}.elementor-442 .elementor-element.elementor-element-84d8f3e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-442 .elementor-element.elementor-element-06f66ff{width:var( --container-widget-width, 90.759% );max-width:90.759%;--container-widget-width:90.759%;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-06f66ff.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-51f4b18.elementor-element{--align-self:center;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-442 .elementor-element.elementor-element-69cfa33e{--width:100%;}.elementor-442 .elementor-element.elementor-element-5a2cb80{--width:23.712%;}.elementor-442 .elementor-element.elementor-element-5dfa6ef{--width:40%;}.elementor-442 .elementor-element.elementor-element-4b559e6{--width:25%;}.elementor-442 .elementor-element.elementor-element-0e76e69{--width:1555px;}.elementor-442 .elementor-element.elementor-element-af1472e{--width:100.545%;}}@media(max-width:1024px) and (min-width:768px){.elementor-442 .elementor-element.elementor-element-69cfa33e{--width:665.2%;}.elementor-442 .elementor-element.elementor-element-5a2cb80{--width:55%;}.elementor-442 .elementor-element.elementor-element-5dfa6ef{--width:45%;}.elementor-442 .elementor-element.elementor-element-4b559e6{--width:157px;}.elementor-442 .elementor-element.elementor-element-0e76e69{--width:775.333px;}}@media(max-width:1024px){.elementor-442 .elementor-element.elementor-element-69cfa33e{--justify-content:space-evenly;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-442 .elementor-element.elementor-element-69cc9ca{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-442 .elementor-element.elementor-element-5a2cb80{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-theme-site-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-442 .elementor-element.elementor-element-5dfa6ef{--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-442 .elementor-element.elementor-element-2e746a8{width:var( --container-widget-width, 178.176px );max-width:178.176px;--container-widget-width:178.176px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-2e746a8.elementor-element{--align-self:flex-end;}.elementor-442 .elementor-element.elementor-element-29925d1{width:var( --container-widget-width, 506.764px );max-width:506.764px;--container-widget-width:506.764px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-7ec1e63{width:var( --container-widget-width, 103px );max-width:103px;--container-widget-width:103px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-searchbar-widget{width:688px;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-search-input{width:688px;}}@media(max-width:767px){.elementor-442 .elementor-element.elementor-element-69cfa33e{--justify-content:space-between;--gap:5px 0px;--row-gap:5px;--column-gap:0px;}.elementor-442 .elementor-element.elementor-element-69cc9ca{--justify-content:space-between;}.elementor-442 .elementor-element.elementor-element-5a2cb80{--width:50.004%;}.elementor-widget-theme-site-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-442 .elementor-element.elementor-element-425a937.elementor-element{--align-self:flex-start;}.elementor-442 .elementor-element.elementor-element-5dfa6ef{--width:31.138%;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-442 .elementor-element.elementor-element-2e746a8{width:var( --container-widget-width, 38.176px );max-width:38.176px;--container-widget-width:38.176px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-2e746a8.elementor-element{--align-self:flex-end;}.elementor-442 .elementor-element.elementor-element-4b559e6{--width:210px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-442 .elementor-element.elementor-element-29925d1{width:var( --container-widget-width, 139.319px );max-width:139.319px;--container-widget-width:139.319px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-29925d1.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-29925d1 .elementor-button{font-size:13px;}.elementor-442 .elementor-element.elementor-element-7ec1e63{width:var( --container-widget-width, 124px );max-width:124px;--container-widget-width:124px;--container-widget-flex-grow:0;}.elementor-442 .elementor-element.elementor-element-7ec1e63.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-searchbar-widget{width:200px;}.elementor-442 .elementor-element.elementor-element-066bd12 .b-search-input{width:200px;}}/* Start custom CSS for theme-site-title, class: .elementor-element-425a937 */.elementor-442 .elementor-element.elementor-element-425a937 .elementor-heading-title {
    background: linear-gradient(90deg, #787F8E 30%,#155DFC); /* Start with your desired gradient colors */
    -webkit-background-clip: text;
    color: transparent;
    transition: background 0.35s ease;
}

.elementor-442 .elementor-element.elementor-element-425a937 .elementor-heading-title:hover {
    background: linear-gradient(90deg, #155DFC 30%,#787F8E); /* Reverse the gradient on hover */
    -webkit-background-clip: text;
    color: transparent;
}

.elementor-442 .elementor-element.elementor-element-425a937 .elementor-heading-title {
    color: black; /* Default color */
    transition: background 0.35s ease, color 0.35s ease;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-69cfa33e */.elementor-442 .elementor-element.elementor-element-69cfa33e {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for B_SearchBar, class: .elementor-element-066bd12 *//* Default state for the search button */

.b-searchbar-widget {
    display: flex;
    align-items: center;
    position: relative;
    padding: 10px;
    background: #ffffff; /* Same background color */
    border-radius: 10px; /* Rounded corners for the outer container */
    border: 1px solid #e4e4e4; /* Light gray border */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    max-width: 999999px; /* Optional: Adjust width as needed */
    margin: 20px auto; /* Center the search bar */
    font-family: 'Arial', sans-serif; /* Consistent font */
}
.b-searchbar-widget #b-search-button {
    background-color: #F39200; /* Default solid color */
    border: none;
    cursor: pointer;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    outline: none;
    transition: background 0.35s ease, transform 0.2s ease; /* Smooth transition */
}

/* Hover state for the search button */
.b-searchbar-widget #b-search-button:hover {
    background: linear-gradient(90deg, #F39200, #1D71B8); /* Gradient on hover */
    transform: scale(1.1); /* Slight zoom effect on hover */
}

/* Icon inside the search button */
.b-searchbar-widget #b-search-button i {
    color: #ffffff; /* Icon color */
    font-size: 16px; /* Icon size */
    transition: color 0.35s ease; /* Smooth icon color transition */
}/* End custom CSS */
/* Start custom CSS for B_Country, class: .elementor-element-06f66ff */.category-button {
    display: inline-block;
    width: 50px; /* Reduced width for a smaller button */
    padding: 5px; /* Reduced padding */
    margin: 5px;
    background-color: transparent; /* No background color */
    color: black; /* Ensuring visibility on a transparent background */
    text-decoration: none;
    border: none;
    border-radius: 5px;
    font-family: 'AirBnb_Bk', 'AirBnb_Bk';
    text-align: center; /* Center the text and the icon */
    cursor: pointer;
    font-size: 10px; /* Reduced font size for text */
}

.category-button:hover {
    background-color: #e0e0e0; /* Slightly darker on hover */
    color: #333; /* Text color change on hover */
}

.category-button.highlighted {
    border: 2px solid #0073e6; /* Highlight color */
    background-color: #f0f8ff; /* Light background */
    font-weight: bold; /* Make text bold */
}/* End custom CSS */
/* Start custom CSS for b_popupfilter, class: .elementor-element-51f4b18 *//* ─────────────────────────────────────────────
   GLOBAL RESET & TYPOGRAPHY
────────────────────────────────────────────── */
*{box-sizing:border-box;margin:0;padding:0;}
body,input,button{
    font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;
}

/* ─────────────────────────────────────────────
   OVERLAY
────────────────────────────────────────────── */
.overlay{
    display:none;
    position:fixed;inset:0;
    background:rgba(0,0,0,.5);
    z-index:999;
}

.overlay{
    z-index: 9000;                 /* was 999 */
}

/* the actual window */
.popup-window{
    z-index: 9010;                 /* was 1000 */
}

/* ─────────────────────────────────────────────
   POP-UP WINDOW – DESKTOP DEFAULT
────────────────────────────────────────────── */
.popup-window{
    display:none;
    position:fixed;
    top:50%;left:50%;transform:translate(-50%,-50%);
    width:80%;max-width:800px;
    background:#fff;border:1px solid #ccc;border-radius:20px;
    padding:20px;
    z-index:1000;
    overflow:hidden;                 /* we’ll scroll inner body, not the shell */
}

/* inner scroll area (everything below the sticky header) */
.popup-body{
    max-height:calc(100vh - 120px);   /* keep your existing rule */
    overflow-y:auto;
    padding-bottom:50px;              /* 👈  space to taste (e.g. 16-32 px) */
}
.popup-body h2{
    font-size:20px;
    font-weight:700;
    color:#111;
    margin:20px 0 12px;   /* matches the rule you already use */
}
/* ── header (sticky) ───────────────────────── */
.popup-header{
    position:sticky;top:0;z-index:2; /* sticks during internal scroll */
    display:flex;justify-content:center;align-items:center;
    border-bottom:1px solid #ccc;
    padding:15px 0 20px;     /* extra vertical space */
    min-height:40px;         /* guarantees room */
    background:#fff;                 /* cover content while scrolling */
}

.section-desc{
    font-size:13px;
    color:#666;
    margin:-8px 0 12px;   /* pulls it closer to the heading, keeps gap below */
    line-height:1.4;
}

#filterTitle{
    position:static;         /* was absolute – remove it           */
    transform:none;          /* cancel the -50% translate          */
    margin:0 auto;           /* flex item, fills centre naturally  */
    font-size:22px;font-weight:700;
    pointer-events:none;     /* clicks still reach the close btn   */
}

#closePopupButton{
    position:absolute;right:18px;top:50%;transform:translateY(-50%);
    width:40px;height:40px;border:none;background:none;cursor:pointer;
    color:#555;font-size:20px;line-height:1;
}
#closePopupButton::before{content:"\00D7";display:block;text-align:center;}
#closePopupButton:hover{color:#1D71B8;}

/* ─────────────────────────────────────────────
   SECTION HEADINGS
────────────────────────────────────────────── */
.popup-window > h2,
.PriceRange-container > h3{
    font-size:20px;            /* same size      */
    font-weight:700;           /* same weight    */
    color:#111;                /* slightly darker*/
    margin:20px 0 12px;
}
/* ─────────────────────────────────────────────
   TAG LIST
────────────────────────────────────────────── */
.SubjectStreamTag-container{
    display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;
}
.SubjectStreamTag{
    padding:8px 16px;border-radius:15px;
    background:#e0e0e0;font-size:14px;cursor:pointer;
    transition:.2s background;
}
.SubjectStreamTag:hover,
.SubjectStreamTag.selected{background:#1D71B8;color:#fff;}

/* ─────────────────────────────────────────────
   PRICE RANGE (separator line at top)
────────────────────────────────────────────── */
.PriceRange-container{
    margin-top:20px;padding-top:20px;border-top:1px solid #ccc;
}
.PriceRange-container > h3{margin-bottom:20px;}
/* slider track */
#slider-range.ui-slider{
    width:95%;          /* whatever width you like                */
    margin:0 auto; 
    margin-top:8px;            /* ← this centres it horizontally          */
    background:#e5e5e5;
    border:none;
    height:6px;
    border-radius:3px;
}
#slider-range .ui-slider-range{
    background:#1D71B8;        /* your brand blue */
    border:none;
    height:6px;
    border-radius:3px;
}

#slider-range .ui-slider-handle{
    width:18px;height:18px;
    top:-6px;                  /* centre on bar  */
    background:#fff;
    border:3px solid #1D71B8;  /* blue ring      */
    border-radius:50%;
    cursor:pointer;
    transition:box-shadow .2s;
}
#slider-range .ui-slider-handle:hover,
#slider-range .ui-slider-handle:focus{
    box-shadow:0 0 0 4px rgba(29,113,184,.25); /* focus glow */
}

input[type=number]{
    width:45%;padding:8px;font-size:16px;text-align:center;
    border:1px solid #ccc;border-radius:20px;
}
input[type=number]:focus{border-color:#F39200;outline:none;}

/* ────────────────────────────────
   MIN / MAX PRICE ROW
──────────────────────────────────*/
.PriceNumberSection{
    display:flex;gap:24px;justify-content:space-between;margin-top:28px;
}
@media(max-width:500px){.PriceNumberSection{flex-direction:column}}

/* each box */
.priceBox{position:relative;flex:1;text-align:center;}
.priceBox label{
    display:block;font-size:13px;font-weight:600;color:#555;margin-bottom:6px;
}

/* baht badge */
.currency{
    position:absolute;left:18px;top:50%;transform:translateY(-50%);
    font-size:17px;font-weight:700;color:#1D71B8;pointer-events:none;
}
/* labels next to inputs, not above */
.PriceNumberSection label{
    flex:none;
}

/* number boxes – pill shape, subtle grey, blue focus */
.priceBox input[type=number]{
    width:100%;padding:14px 18px 14px 42px;   /* room for ฿ */
    font-size:18px;font-weight:700;color:#111;
    background:#fafafa;border:1px solid #ccc;border-radius:32px;
    text-align:right;                         /* aligns numbers neatly */
}
.priceBox input[type=number]:focus{
    border-color:#1D71B8;outline:none;
}

/* small tweak to keep the two inputs side-by-side even on narrow view */
@media (max-width:500px){
    .PriceNumberSection{flex-direction:column;gap:10px;}
    .PriceNumberSection input[type=number]{width:100%;max-width:none;}
}

/* ─────────────────────────────────────────────
   FILTER BUTTON (opens pop-up)
────────────────────────────────────────────── */
#openPopupButton{
    color:#111;
    font-size:12px;
    border:1px solid #ccc;border-radius:5px;
    background:#fff;cursor:pointer;
    transition:border-color .2s, box-shadow .2s;
}
#openPopupButton:hover,
#openPopupButton:focus{
    border-color:#1D71B8;               /* blue outline on hover / focus   */
    box-shadow:0 0 0 2px rgba(29,113,184,.4);
}
#openPopupButton svg{pointer-events:none;}
#openPopupButton.active{
    border-color:#1D71B8;
    box-shadow:0 0 0 2px rgba(29,113,184,.8);
}

#openPopupButton .badge{display:none !important;}
/* ─────────────────────────────────────────────
   RESPONSIVE  – TABLET / PHONE  ( ≤ 991 px )
────────────────────────────────────────────── */
@media (max-width:991px){
    .popup-window{
        top:0;left:0;transform:none;width:100vw;max-width:none;
        height:100vh;border-radius:0;padding:0;   /* true fullscreen */
    }
    .popup-header{padding:14px 0 18px 0;}
    .popup-body{max-height:calc(100vh - 56px);}   /* header = 56 px */
}

.overlay{
    z-index: 99990 !important;      /*  ✅  stays below the window   */
}

/* modal above *everything* (Elementor sections often use 40000-50000) */
#popupContainer,                /* id used in the HTML            */
.popup-window{                  /* class fallback                 */
    z-index: 100000 !important; /*  ✅  higher than overlay+widgets*/
}/* End custom CSS */
/* Start custom CSS */.searchandfilter-submit {
  background-color: blue;
  padding: 10px 20px;
  color: white;
  border: none;
  cursor: pointer;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('http://uniowl.co/wp-content/uploads/2025/02/Montserrat-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */