:root{--primary-amber: #D4893F;--secondary-blue: #4A7FB5;--pine-green: #3D6B4F;--warm-charcoal: #2D2926;--sunset-rose: #C4776E;--snow-white: #FFFFFF;--powder-gray: #E8E4E0;--bg: #FFFFFF;--card-bg: #FFFFFF;--border-color: #E8E4E0;--text-primary: #2D2926;--text-secondary: #5a534e;--text-muted: #94a3b8;--success: #3D6B4F;--warning: #D4893F;--danger: #C4776E;--shadow: rgba(45, 41, 38, .06);--shadow-hover: rgba(45, 41, 38, .12);--shadow-card: rgba(45, 41, 38, .04);--shadow-card-hover: rgba(45, 41, 38, .08);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--spacing-4xl: 96px;--spacing-5xl: 128px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.5rem}*{margin:0;padding:0;box-sizing:border-box}button,input,select,a,.card,[role=button]{transition:all .2s ease}a{text-decoration:none;color:inherit}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6;min-height:100vh;position:relative;font-size:var(--text-base)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-2xl)}@media(max-width:1024px){.container{padding:0 var(--spacing-xl)}}@media(max-width:768px){.container{padding:0 var(--spacing-lg)}}.top-nav{background:#fbfaf8;border-bottom:1px solid #f0efed;padding:0;position:sticky;top:0;z-index:100}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:auto;padding:4px 0}.nav-logo{display:flex;align-items:center;text-decoration:none}.nav-logo-img{height:144px;border-radius:0}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:110}.nav-hamburger span{display:block;width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:all .3s}.nav-hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-hamburger.active span:nth-child(2){opacity:0}.nav-hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.nav-links{display:flex;gap:var(--spacing-2xl);align-items:center}.nav-switchers{display:flex;gap:var(--spacing-xs);margin-left:var(--spacing-md)}.nav-select{appearance:none;-webkit-appearance:none;background:#ffffffd9;border:1.5px solid #e5e3e0;border-radius:8px;padding:5px 10px;font-size:13px;font-family:inherit;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.nav-select::-ms-expand{display:none}.nav-select:hover{border-color:var(--accent);background:#fff;box-shadow:0 2px 8px #0000000f}.nav-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb, 180,140,80),.15)}@media(max-width:1024px){.nav-hamburger{display:flex}.nav-links{display:flex;position:absolute;top:100%;right:0;background:#fbfaf8;border:1px solid #f0efed;border-radius:0 0 12px 12px;box-shadow:0 4px 16px #0000001a;flex-direction:column;padding:var(--spacing-md) var(--spacing-xl);gap:var(--spacing-md);min-width:160px;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}.nav-links.open{opacity:1;transform:translateY(0);pointer-events:auto}.nav-inner{position:relative}}.nav-link{color:var(--text-secondary);text-decoration:none;padding:var(--spacing-sm) 0;font-size:1.15rem;font-weight:700;font-family:DM Sans,sans-serif;transition:all .2s;position:relative}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--text-primary);font-weight:600}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--primary-amber)}.search-bar-row{display:flex;gap:var(--spacing-md);align-items:stretch;max-width:1100px;margin:0 auto}.search-bar-row .origin-search-box{flex:1 1 65%!important;min-width:0}.date-picker-box{display:none!important;align-items:center;background:#fff;border:2px solid var(--primary-amber);border-radius:50px;padding:var(--spacing-sm) var(--spacing-md);box-shadow:0 4px 20px #d4893f26;transition:all .3s;gap:var(--spacing-sm);min-width:180px;max-width:240px;flex:0 0 auto;cursor:pointer;position:relative}.date-icon{color:var(--primary-amber);flex-shrink:0}.date-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);white-space:nowrap}.date-calendar-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:var(--snow-white);border:2px solid var(--primary-amber);border-radius:16px;box-shadow:0 8px 32px #00000026;padding:16px;z-index:200;width:300px}.cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cal-title{font-weight:700;font-size:var(--text-base)}.cal-nav{background:none;border:none;font-size:20px;cursor:pointer;padding:4px 10px;border-radius:8px;color:var(--text-primary);transition:background .2s}.cal-nav:hover{background:#d4893f1a}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}.cal-day-header{font-size:11px;font-weight:600;color:var(--text-muted);padding:4px 0}.cal-day{padding:8px 4px;font-size:13px;border-radius:8px;cursor:pointer;transition:all .15s}.cal-day:hover:not(.past):not(.empty){background:#d4893f26}.cal-day.past{color:#ccc;cursor:default}.cal-day.empty{cursor:default}.cal-day.start,.cal-day.end{background:var(--primary-amber);color:#fff;font-weight:700}.cal-day.in-range{background:#d4893f26}.date-tabs{display:flex;gap:0;margin-bottom:12px;border-bottom:2px solid #eee}.date-tab{flex:1;padding:8px 4px;border:none;background:none;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.date-tab.active{color:var(--primary-amber);border-bottom-color:var(--primary-amber)}.date-tab:hover{color:var(--warm-charcoal)}.flex-fields{display:flex;flex-direction:column;gap:12px;padding:8px 0}.flex-label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--warm-charcoal)}.flex-select{padding:8px 12px;border:2px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;cursor:pointer}.flex-select:focus{border-color:var(--primary-amber);outline:none}.flex-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.flex-apply{background:var(--primary-amber);color:#fff;border:none;padding:8px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.flex-apply:hover{background:#c07a35}.cal-footer{margin-top:8px;text-align:right}.cal-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;padding:4px 8px}.cal-clear:hover{color:var(--primary-amber)}@media(max-width:768px){.search-bar-row{flex-direction:column;align-items:center}.search-bar-row .origin-search-box{width:100%}.date-picker-box{min-width:0;position:static}.date-calendar-dropdown{position:fixed;inset:auto 0 0;width:100%;max-width:100vw;border-radius:16px 16px 0 0;box-sizing:border-box}}.origin-bar{background:var(--snow-white);padding:var(--spacing-2xl) 0 var(--spacing-xl);border-bottom:1px solid var(--border-color)}.origin-bar-inner{max-width:900px;margin:0 auto}.origin-search-box{display:flex;align-items:center;background:#fff;border:2px solid var(--primary-amber);border-radius:50px;padding:var(--spacing-md) var(--spacing-xl);box-shadow:0 4px 20px #d4893f26;transition:all .3s;gap:var(--spacing-md)}.origin-search-box:focus-within{border-color:var(--primary-amber);box-shadow:0 4px 24px #d4893f40}.origin-search-icon{color:var(--primary-amber);flex-shrink:0}.origin-search-box .origin-input{border:none;padding:var(--spacing-sm) 0;font-size:var(--text-lg);font-weight:600;background:transparent;flex:1}.origin-search-box .origin-input:focus{border-color:transparent;box-shadow:none}.origin-clear{background:none;border:none;font-size:20px;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0}.origin-clear:hover{color:var(--text-primary)}.origin-search-box .travel-mode-switch{flex-shrink:0}.key-filters{background:var(--snow-white);border-bottom:1px solid var(--border-color);padding:var(--spacing-lg) 0;position:sticky;top:96px;z-index:90;box-shadow:0 2px 12px #0000000f}.key-filters-inner{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:nowrap;overflow-x:auto}.key-filter-group{display:flex;align-items:center;gap:var(--spacing-md)}.key-filter-group label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);white-space:nowrap}.key-filter-group input[type=range]{width:120px}.range-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);min-width:40px}.country-pills{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;overflow:visible;padding:4px}.country-pill{width:36px;height:36px;border-radius:50%;border:2px solid transparent;background:#f5f4f2;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s;position:relative;padding:0}.country-pill.active{border-color:var(--primary-amber);background:#fff;box-shadow:0 1px 4px #d4893f33}.country-pill:not(.active){opacity:.45}.country-pill:hover{transform:scale(1.1)}.country-pill:hover:after{content:attr(title);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--warm-charcoal);color:#fff;padding:4px 10px;border-radius:6px;font-size:12px;font-family:DM Sans,sans-serif;white-space:nowrap;z-index:10;pointer-events:none}.origin-group{gap:var(--spacing-md);flex:1;max-width:400px}.origin-input{border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-base);font-weight:500;width:100%;outline:none;transition:all .2s;font-family:inherit;background:var(--snow-white)}.origin-input::placeholder{color:var(--primary-amber);font-weight:500}.origin-input:focus{border-color:var(--primary-amber);box-shadow:0 0 0 4px #d4893f1f}.origin-input:hover{border-color:#d4893f66}.travel-mode-switch{display:flex;gap:var(--spacing-lg)}.mode-btn{background:none;border:none;padding:var(--spacing-xs) 0;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-weight:500;position:relative}.mode-btn:hover{color:var(--text-primary)}.mode-btn.active{color:var(--text-primary);font-weight:600}.mode-btn.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--primary-amber)}input[type=range]{-webkit-appearance:none;appearance:none;height:4px;background:var(--border-color);border-radius:2px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary-amber);cursor:pointer;border:2px solid var(--snow-white);box-shadow:0 2px 6px #00000026}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--primary-amber);cursor:pointer;border:2px solid var(--snow-white);box-shadow:0 2px 6px #00000026}.more-filters-btn,.more-filters-chevron{background:none;border:none;color:var(--text-secondary);cursor:pointer;transition:all .2s;padding:4px;display:flex;align-items:center;margin-left:auto;flex-shrink:0}.more-filters-chevron:hover{color:var(--primary-amber)}.more-filters-chevron.expanded svg{transform:rotate(180deg)}.extended-filters-row{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-sm) 0}.filter-inline{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-inline label{font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.search-inline{border:1px solid var(--border-color);border-radius:20px;padding:8px 16px;font-size:var(--text-sm);width:220px;outline:none;font-family:inherit;transition:border-color .2s}.search-inline:focus{border-color:var(--primary-amber)}.level-badges{display:flex;gap:6px}.level-badge{padding:4px 12px;border-radius:20px;border:2px solid var(--border-color);background:#fff;cursor:pointer;font-size:13px;font-family:DM Sans,sans-serif;font-weight:600;transition:all .2s}.level-badge.active{border-color:var(--primary-amber);background:#d4893f14}.level-badge:not(.active){opacity:.5}.level-badge:hover{border-color:var(--primary-amber)}.landing-section{width:100%}.search-hero{position:relative;padding-top:80px;min-height:200px;display:flex;align-items:center;background:url(/images/hero-search.jpg) center/cover no-repeat}.search-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0006,#00000080)}.search-hero-content{position:relative;z-index:2;padding:40px 0 32px}.search-hero-content h1{color:#fff;font-size:var(--text-3xl);margin-bottom:4px}.search-hero-content p{color:#ffffffd9;font-size:var(--text-base);margin:0}.landing-hero{position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.landing-content{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-3xl) var(--spacing-xl)}.landing-tagline{color:var(--snow-white);font-family:Lobster,cursive;font-size:4rem;line-height:1.15;text-shadow:0 2px 20px rgba(0,0,0,.4)}.landing-subtitle{color:#ffffffe6;font-size:var(--text-xl);font-weight:400;text-shadow:0 1px 8px rgba(0,0,0,.3);max-width:500px}.landing-usp{color:#f0ebe4cc;font-size:var(--text-base);font-weight:500;margin:-8px 0 0;text-shadow:0 1px 4px rgba(0,0,0,.3);letter-spacing:.02em}.hero-search-bar{display:flex;align-items:center;background:#fff;border-radius:60px;padding:6px 6px 6px 24px;margin-top:var(--spacing-lg);max-width:540px;width:100%;box-shadow:0 8px 32px #00000040}.hero-search-input-wrapper{display:flex;align-items:center;flex:1;gap:10px}.hero-search-icon{color:#999;flex-shrink:0}.hero-origin-input{border:none;outline:none;font-size:var(--text-base);font-family:inherit;background:transparent;width:100%;padding:12px 0;color:var(--text-primary)}.hero-origin-input::placeholder{color:#aaa}@media(max-width:600px){.hero-search-bar{flex-direction:column;border-radius:16px;padding:12px;gap:8px}.hero-search-input-wrapper{width:100%;padding:0 8px}.landing-cta{width:100%}}.landing-cta{background:var(--primary-amber);color:#fff;border:none;padding:14px 32px;font-size:var(--text-base);font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #d4893f66;white-space:nowrap;flex-shrink:0}.landing-cta:hover{transform:translateY(-2px);box-shadow:0 6px 30px #d4893f80;background:#c07a35}.landing-features{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);max-width:1000px;margin:0 auto}.feature-card{text-align:center;padding:var(--spacing-xl)}.feature-icon{font-size:2.5rem;display:block;margin-bottom:var(--spacing-md)}.feature-card h3{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.feature-card p{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}@media(max-width:768px){.landing-tagline{font-size:2.5rem}.landing-features{grid-template-columns:1fr;gap:var(--spacing-md)}.landing-hero{min-height:70vh}}.faq-section{padding:var(--spacing-2xl) 0}.faq-heading{font-family:Lobster,cursive;font-size:2.2rem;text-align:center;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.faq-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.faq-list{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-sm)}.faq-item{border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;background:var(--card-bg)}.faq-item summary{padding:var(--spacing-md) var(--spacing-lg);font-weight:600;font-size:var(--text-base);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--text-primary);transition:background .2s}.faq-item summary:hover{background:#00000005}.faq-item summary:after{content:"+";font-size:1.3rem;font-weight:400;color:var(--text-muted);transition:transform .2s}.faq-item[open] summary:after{content:"−"}.faq-item summary::-webkit-details-marker{display:none}.faq-answer{padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-md);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6}.show-more-wrapper{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xl) 0}.show-more-count{font-size:var(--text-sm);color:var(--text-secondary)}.show-more-btn{background:var(--primary-amber);border:none;color:#fff;padding:12px 32px;border-radius:8px;font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;box-shadow:0 2px 8px #0000001a}.show-more-btn:hover{background:#c07a35;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.hero-header{position:relative;min-height:340px;display:flex;align-items:center;overflow:hidden}.hero-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:auto;height:auto;object-fit:cover;z-index:0}.hero-background{position:absolute;inset:0;background:url(images/hero-search.jpg) center 40%/cover;z-index:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#2d29264d,#2d292633 40%,#2d292659);z-index:1}.hero-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-2xl);position:relative;z-index:2;padding:var(--spacing-5xl) var(--spacing-xl)}.hero-tagline{color:#f5f0ebf2;font-family:Lobster,cursive;font-size:3.2rem;font-weight:700;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.3);letter-spacing:.5px;line-height:1.2}.hero-subtitle{color:#f0ebe4e6;font-size:var(--text-lg);font-weight:400;margin:0;text-shadow:0 1px 6px rgba(0,0,0,.3);max-width:500px}.view-toggle{display:flex;gap:var(--spacing-md)}.view-btn{background:#ffffff1a;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);color:var(--snow-white);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:all .3s ease;font-size:15px;font-weight:700;font-family:DM Sans,sans-serif}.view-btn:hover{background:#fff3;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.view-btn.active{background:var(--snow-white);color:var(--text-primary);font-weight:600;border-color:var(--snow-white);box-shadow:0 4px 16px #fff3}.view-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.filters-bar{background:var(--snow-white);border-bottom:1px solid var(--border-color);box-shadow:0 1px 4px var(--shadow);padding:var(--spacing-xs) 0}.filters-toggle{padding:var(--spacing-md) 0;text-align:center}.filters-toggle-btn{background:var(--primary-blue);color:var(--snow-white);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:var(--spacing-sm)}.filters-toggle-btn:hover{background:var(--accent-blue)}.toggle-icon{transition:transform .3s ease}.filters-toggle-btn.expanded .toggle-icon{transform:rotate(180deg)}.filters-horizontal{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 var(--spacing-md)}.filters-horizontal.expanded{max-height:400px;padding:var(--spacing-lg) var(--spacing-md)}.filters-horizontal .filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.filters-horizontal .filters-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.main{padding:var(--spacing-xl) 0}.main .container{max-width:1200px;margin:0 auto}.mobile-filter-toggle{display:none;margin-bottom:1rem}.mobile-filters-button{width:100%;background:var(--accent-blue);color:#fff;border:none;padding:var(--spacing-md);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.mobile-filters-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.mobile-filters-button:hover{background:var(--primary-blue);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.mobile-filters-button:hover:before{left:100%}.filters-horizontal .filter-group{background:var(--card-bg);border-radius:var(--radius-md);padding:var(--spacing-md);border:1px solid var(--border-color)}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:2px solid var(--ice-blue);padding-bottom:1rem}.filters-header h3{color:var(--primary-blue);font-size:1.1rem}.filters-header-actions{display:flex;align-items:center;gap:.5rem}.clear-btn{background:none;border:1px solid var(--border-color);color:var(--text-muted);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.clear-btn:hover{border-color:var(--danger);color:var(--danger);background:#ef44440d;transform:translateY(-1px);box-shadow:0 2px 8px #ef444426}.close-filters-btn{display:none;background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;padding:.25rem;border-radius:4px;transition:color .3s ease}.close-filters-btn:hover{color:var(--danger)}.filter-group{margin-bottom:1.25rem}.filter-group label{display:block;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;font-size:.9rem}.filter-group input[type=text],.filter-group select{width:100%;background:var(--bg);border:2px solid var(--border-color);color:var(--text-primary);padding:.65rem .75rem;border-radius:8px;font-size:.9rem;transition:border-color .3s ease}.filter-group input[type=text]:focus,.filter-group select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f61a}.filter-group input[type=range]{width:100%;margin:.5rem 0;accent-color:var(--accent-blue)}.range-value{text-align:right;color:var(--primary-blue);font-weight:600;font-size:.85rem}.checkbox-group{display:flex;flex-direction:column;gap:.4rem}.checkbox-group label{display:flex;align-items:center;margin-bottom:0;font-size:.85rem;cursor:pointer}.checkbox-group input[type=checkbox]{margin-right:.5rem;accent-color:var(--accent-blue)}.location-input-group{display:flex;gap:.5rem;position:relative}.origin-input{flex:1;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;background:var(--snow-white);font-size:.9rem;transition:all .3s ease}.origin-input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f61a}.use-location-btn{background:var(--accent-blue);color:#fff;border:none;padding:.65rem;border-radius:8px;cursor:pointer;transition:all .3s ease;min-width:44px}.use-location-btn:hover{background:var(--primary-blue)}.use-location-btn:disabled{background:var(--text-muted);cursor:not-allowed}.location-status{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.travel-mode-toggle{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);background:var(--ice-blue);padding:var(--spacing-xs);border-radius:var(--radius-sm)}.travel-mode-toggle input[type=radio]{display:none}.travel-mode-toggle label{flex:1;padding:var(--spacing-sm);text-align:center;border-radius:var(--radius-sm);cursor:pointer;transition:all .3s ease;background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.travel-mode-toggle input[type=radio]:checked+label{background:var(--primary-blue);color:var(--snow-white);box-shadow:0 2px 8px #1d4ed84d}.search-group{margin-bottom:var(--spacing-lg)}.discrete-search{display:flex;align-items:center;gap:var(--spacing-sm)}.search-toggle{background:var(--primary-blue);color:var(--snow-white);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:var(--text-lg);box-shadow:0 2px 8px #1d4ed84d}.search-toggle:hover{background:var(--accent-blue);transform:scale(1.05)}.search-input-wrapper{flex:1;opacity:0;transform:translate(-20px);transition:all .3s ease;max-width:0;overflow:hidden}.search-input-wrapper.expanded{opacity:1;transform:translate(0);max-width:300px}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);transition:border-color .3s ease}.search-input:focus{outline:none;border-color:var(--primary-blue)}.autocomplete-dropdown{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--snow-white);border:2px solid var(--primary-amber);border-radius:16px;box-shadow:0 4px 16px #0000001a;max-height:240px;overflow-y:auto;z-index:1000;display:none}.autocomplete-item{padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;border-bottom:1px solid var(--border-color);transition:background-color .2s ease;font-size:var(--text-sm)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:#d4893f14;color:var(--text-primary)}.autocomplete-item:active{background:var(--primary-amber);color:#fff}.content{min-height:600px}.view{display:none}.view.active{display:block}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:#fffffff2;backdrop-filter:blur(8px);border-radius:var(--radius-md);box-shadow:0 2px 12px var(--shadow);border:1px solid var(--border-color);position:relative;z-index:1;transition:all .3s ease}.results-header:hover{box-shadow:0 4px 20px var(--shadow-hover)}.results-header-top{display:flex;align-items:center;gap:16px;flex:1}.name-search-wrapper{position:relative;display:flex;align-items:center}.name-search-input{padding:6px 28px 6px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.85rem;font-family:DM Sans,sans-serif;width:200px;transition:border-color .2s,box-shadow .2s;background:#fff}.name-search-input:focus{outline:none;border-color:var(--primary-amber);box-shadow:0 0 0 2px #d4893f26}.name-search-input::placeholder{color:#aaa}.name-search-clear{position:absolute;right:6px;background:none;border:none;font-size:1.1rem;color:#999;cursor:pointer;padding:0 4px;line-height:1;display:none}.name-search-clear:hover{color:#555}.name-search-input:not(:placeholder-shown)+.name-search-clear{display:block}.active-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.filter-pill{display:inline-flex;align-items:center;gap:var(--spacing-xs);background:var(--accent-blue);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;transition:all .2s ease;cursor:pointer;border:none}.filter-pill:hover{background:var(--primary-blue);transform:scale(1.05)}.filter-pill .remove-filter{background:none;border:none;color:inherit;cursor:pointer;font-weight:700;padding:0;margin-left:var(--spacing-xs);line-height:1}.filter-pill .remove-filter:hover{opacity:.7}#results-count{color:var(--text-secondary);font-weight:500}.sort-controls{display:flex;align-items:center;gap:.5rem}.sort-controls label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.sort-controls select{background:var(--bg);border:2px solid var(--border-color);color:var(--text-primary);padding:.4rem .6rem;border-radius:6px;font-size:.85rem;min-width:160px}.sort-controls select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #3b82f61a}.resort-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);opacity:1;transition:opacity .3s ease}.resort-grid.loading{opacity:.7}@media(max-width:1024px){.resort-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}}@media(max-width:768px){.resort-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}}.resort-card{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #0000000f;cursor:pointer;transition:all .2s ease;border:1px solid transparent;position:relative;display:flex;flex-direction:column}.resort-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f;border-color:#d4893f33}.resort-card-image-container{position:relative;overflow:hidden;width:100%;aspect-ratio:16 / 9}.resort-card-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .3s ease}.resort-card:hover .resort-card-image{transform:scale(1.05)}.resort-card-image-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.3),transparent);pointer-events:none}.resort-card-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#dbeafe,#c7d2fe,#bfdbfe);display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--text-muted)}.resort-card-body{padding:var(--spacing-2xl);flex:1;display:flex;flex-direction:column;gap:var(--spacing-lg)}.resort-card-header{display:flex;justify-content:space-between;align-items:flex-start}.resort-name{font-size:var(--text-xl);font-weight:800;color:var(--text-primary);margin-bottom:var(--spacing-xs);line-height:1.2;letter-spacing:-.025em}.resort-country{color:var(--text-muted);font-size:var(--text-sm);display:flex;align-items:center;gap:var(--spacing-xs);font-weight:500}.resort-badges{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.badge{color:var(--snow-white);padding:var(--spacing-xs) var(--spacing-md);border-radius:16px;font-size:var(--text-xs);font-weight:600;letter-spacing:.025em;position:relative;cursor:help;transition:all .2s ease}.badge:hover{transform:scale(1.02)}.badge[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:400;text-transform:none;letter-spacing:normal;white-space:nowrap;z-index:1000;margin-bottom:var(--spacing-xs);animation:tooltipFadeIn .2s ease}.badge[data-tooltip]:hover:before{content:"";position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#000000e6;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.badge.level-beginner{background:var(--success)}.badge.level-intermediate{background:var(--warning);color:#1e293b}.badge.level-advanced{background:var(--danger)}.badge.level-mixed{background:var(--accent-blue)}.badge.user-verified{background:var(--success)}.resort-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.stat{text-align:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--border-color);transition:all .2s ease}.stat:hover{transform:translateY(-1px);box-shadow:0 2px 8px var(--shadow)}.stat-value{display:block;font-size:var(--text-lg);font-weight:800;color:var(--primary-blue);letter-spacing:-.025em}.stat-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.resort-price{text-align:center;padding:var(--spacing-md);background:#d4893f1a;border:1px solid rgba(212,137,63,.25);border-radius:var(--radius-md);color:var(--warm-charcoal);font-weight:700;font-size:var(--text-lg);letter-spacing:-.025em;margin-top:auto;position:relative;overflow:hidden}.resort-price:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.resort-card:hover .resort-price:before{left:100%}.skipass-price{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-top:2px}.resort-actions{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--ice-blue)}.show-accommodations-btn{width:100%;background:var(--primary-amber);color:#fff;border:none;padding:var(--spacing-md) var(--spacing-lg);border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:var(--text-sm);font-family:inherit}.show-accommodations-btn:hover{background:#c67d35;transform:translateY(-1px);box-shadow:0 4px 16px #d4893f4d}.badge-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.country-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--snow-white);border:2px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .3s ease;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.country-badge:hover{border-color:var(--accent-blue);background:var(--ice-blue);color:var(--text-primary)}.country-badge.selected{border-color:var(--primary-blue);background:var(--primary-blue);color:var(--snow-white);box-shadow:0 2px 8px #1d4ed84d}.country-badge .flag{margin-right:var(--spacing-xs)}.map-container{height:70vh;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px var(--shadow);border:1px solid var(--border-color)}.compare-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background:var(--card-bg);border-radius:12px;border:1px solid var(--border-color)}.compare-header h2{color:var(--primary-blue)}.close-btn{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:color .3s ease}.close-btn:hover{color:var(--danger)}.compare-table{background:var(--card-bg);border-radius:16px;overflow:hidden;box-shadow:0 4px 16px var(--shadow);border:1px solid var(--border-color)}.compare-table table{width:100%;border-collapse:collapse}.compare-table th,.compare-table td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.compare-table th{background:var(--primary-blue);color:var(--snow-white);font-weight:600}.compare-table tr:nth-child(2n){background:var(--bg)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;backdrop-filter:blur(4px);z-index:1000}.modal.active{display:flex;justify-content:center;align-items:center;padding:2rem}.modal-content{background:var(--card-bg);border-radius:16px;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 16px 48px #0003;width:100%}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{color:var(--primary-blue);font-size:1.4rem}.modal-body{padding:1.5rem}.modal-resort-image{width:100%;height:250px;object-fit:cover;border-radius:12px;margin-bottom:1.5rem}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.detail-item{padding:.75rem;background:var(--bg);border-radius:8px}.detail-item strong{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:.25rem}.sio-details,.user-notes,.highlight{margin-bottom:1.25rem;padding:1rem;border-radius:10px}.sio-details{background:var(--ice-blue);border-left:4px solid var(--accent-blue)}.user-notes{background:#ecfdf5;border-left:4px solid var(--success)}.highlight{background:#fffbeb;border-left:4px solid var(--warning)}.sio-details h4,.user-notes h4,.highlight h4{margin-bottom:.5rem;font-size:.9rem}.modal-actions{margin-top:1.5rem}.resort-link{display:inline-block;background:var(--primary-blue);color:var(--snow-white);padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;transition:background .3s}.resort-link:hover,.route-link:hover{background:var(--accent-blue)}.route-link{display:inline-block;background:#059669;color:var(--snow-white);padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;transition:background .3s}.route-link:hover{background:#10b981}@media(max-width:768px){.nav-inner{height:auto}.nav-logo-img{height:88px}.key-filters{position:relative;top:auto;padding:var(--spacing-lg) 0}.top-nav{position:relative}.key-filters-inner{flex-direction:column;gap:var(--spacing-xl)}.origin-group{width:100%;max-width:none}.key-filter-group{width:100%;justify-content:space-between}.hero-header{min-height:360px}.hero-content{padding:var(--spacing-3xl) var(--spacing-lg);gap:var(--spacing-xl)}.hero-tagline{font-size:var(--text-3xl)}.hero-subtitle{font-size:var(--text-base)}.view-toggle{flex-wrap:nowrap;gap:var(--spacing-sm);width:100%}.view-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);text-align:center}.main{padding:var(--spacing-4xl) 0}.results-header{flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.sort-controls{justify-content:space-between}.sort-controls select{min-width:auto;flex:1;margin-left:var(--spacing-md)}}.accommodation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);opacity:1;transition:opacity .3s ease}@media(max-width:1024px){.accommodation-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}}@media(max-width:768px){.accommodation-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}}.accommodation-card{background:var(--card-bg);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 12px #0000000f;border:1px solid var(--border-color);transition:all .2s ease;cursor:pointer;position:relative;display:flex;flex-direction:column}.accommodation-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #0000001f;border-color:#d4893f4d}.acc-img-wrap{position:relative;overflow:hidden}.accommodation-card-image,.accommodation-card-image-placeholder{width:100%;height:170px;object-fit:cover;background:var(--powder-gray);display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--text-muted)}.acc-rating{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:#fffffff2;backdrop-filter:blur(4px);border-radius:8px;padding:4px 8px;display:flex;flex-direction:column;align-items:center;line-height:1;box-shadow:0 2px 8px #0000001a}.acc-rating-score{font-size:1rem;font-weight:700;color:var(--text-primary)}.acc-rating-label{font-size:.55rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:1px}.accommodation-card-body{padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);display:flex;flex-direction:column;flex:1}.accommodation-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accommodation-resort{color:var(--text-secondary);font-size:.85rem;font-weight:500;margin-bottom:2px}.accommodation-country{color:var(--text-muted);font-size:.8rem;margin-bottom:auto}.acc-drive-time{color:var(--primary-amber);font-weight:600}.acc-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.accommodation-price{font-weight:700;color:var(--text-primary);font-size:.95rem}.price-per{font-weight:400;color:var(--text-muted);font-size:.8rem}.acc-cta{display:inline-block;background:var(--primary-amber);color:#fff;font-size:.8rem;font-weight:600;padding:6px 14px;border-radius:8px;text-decoration:none;white-space:nowrap;transition:background .15s ease,transform .15s ease}.acc-cta:hover{background:#c07a35;transform:scale(1.03)}.badge.sio-true_sio{background:var(--success);color:#fff}.badge.sio-near_slope{background:var(--warning);color:#fff}.badge.sio-shuttle{background:var(--text-muted);color:#fff}.badge[class*=type-]{background:var(--accent-blue);color:#fff}.resort-accommodations{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--border-color)}.accommodation-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.accommodation-item{background:var(--bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;cursor:pointer;transition:all .3s ease}.accommodation-item:hover{background:var(--ice-blue);border-color:var(--accent-blue)}.accommodation-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.accommodation-item-details{color:var(--text-secondary);font-size:.9rem}.modal-accommodation-details{display:flex;flex-direction:column}.modal-img-wrap{position:relative}.modal-accommodation-image{width:100%;height:220px;object-fit:cover}.modal-rating{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:#fffffff2;backdrop-filter:blur(4px);border-radius:8px;padding:5px 10px;display:flex;flex-direction:column;align-items:center;line-height:1;box-shadow:0 2px 8px #0000001a}.modal-rating-score{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.modal-rating-src{font-size:.55rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:1px}.modal-info{padding:var(--spacing-lg)}.modal-location{font-size:.9rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.modal-sio-desc{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin-bottom:var(--spacing-md)}.modal-highlights{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--spacing-md)}.modal-highlight{font-size:.75rem;background:var(--powder-gray);color:var(--text-secondary);padding:3px 10px;border-radius:20px}.modal-price{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.modal-btn-primary{background:var(--primary-amber);color:#fff;padding:10px 24px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;display:inline-block;transition:background .15s ease}.modal-btn-primary:hover{background:#c07a35}.modal-btn-secondary{background:none;border:1.5px solid var(--border-color);color:var(--text-secondary);padding:9px 24px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;display:inline-block;transition:border-color .15s ease,color .15s ease}.modal-btn-secondary:hover{border-color:var(--primary-amber);color:var(--primary-amber)}@media(max-width:768px){.accommodation-grid{grid-template-columns:1fr;gap:1rem}.accommodation-item-header{flex-direction:column;align-items:flex-start;gap:.5rem}.modal-actions{flex-direction:column;gap:.75rem}.accommodation-link{margin-left:0}}.skeleton-card{background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 4px 16px var(--shadow-card);position:relative;display:flex;flex-direction:column}.skeleton-image{width:100%;aspect-ratio:16 / 9;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeletonLoading 1.5s infinite}.skeleton-content{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.skeleton-title{height:24px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeletonLoading 1.5s infinite;width:80%}.skeleton-subtitle{height:16px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeletonLoading 1.5s infinite;width:60%}.skeleton-badges{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.skeleton-badge{height:20px;width:60px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:var(--radius-xl);animation:skeletonLoading 1.5s infinite}.skeleton-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.skeleton-stat{height:40px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeletonLoading 1.5s infinite}.skeleton-price{height:48px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;border-radius:var(--radius-md);animation:skeletonLoading 1.5s infinite;margin-top:var(--spacing-md)}@keyframes skeletonLoading{0%{background-position:-200% 0}to{background-position:200% 0}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;grid-column:1 / -1}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.5}.empty-state h3{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.empty-state p{color:var(--text-secondary);font-size:var(--text-base);margin-bottom:var(--spacing-lg);max-width:400px}.reset-filters-btn{background:var(--accent-blue);color:#fff;border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s ease}.reset-filters-btn:hover{background:var(--primary-blue);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.star-rating{display:inline-flex;align-items:center;gap:1px}.star{color:#fbbf24;font-size:.875rem}.star.empty{color:#d1d5db}.footer{background:var(--warm-charcoal);color:#ffffffb3;padding:var(--spacing-2xl) 0 var(--spacing-lg);margin-top:var(--spacing-2xl)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-logo-text{font-family:Lobster,cursive;font-size:1.6rem;color:#ffffffb3;letter-spacing:.5px}.footer-tagline{font-size:var(--text-sm);line-height:1.5;max-width:300px;color:#ffffff80}.footer-col{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-col h4{color:#fff;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.05em}.footer-link{color:#fff9;text-decoration:none;font-size:var(--text-sm);transition:color .2s}.footer-link:hover{color:#fff}.footer-social{display:flex;justify-content:center;gap:var(--spacing-md);padding-top:var(--spacing-lg)}.footer-social-link{color:#ffffff80;transition:color .2s}.footer-social-link:hover{color:var(--accent)}.footer-bottom{padding-top:var(--spacing-md);text-align:center;font-size:var(--text-xs);color:#ffffff59}@media(max-width:768px){.footer-grid{grid-template-columns:1fr;gap:var(--spacing-xl)}}.blog-section{padding:var(--spacing-2xl) 0 var(--spacing-3xl)}.blog-heading{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.blog-subtitle{color:var(--text-secondary);font-size:var(--text-lg);margin-bottom:var(--spacing-xl)}.detail-flight-btn{display:block;text-align:center;padding:12px 20px;margin-top:var(--spacing-md);background:linear-gradient(135deg,#4a7fb5,#3a6a9a);color:#fff;border-radius:8px;text-decoration:none;font-weight:600;font-size:var(--text-sm);transition:all .2s}.detail-flight-btn:hover{background:linear-gradient(135deg,#3a6a9a,#2d5a87);transform:translateY(-1px);box-shadow:0 4px 12px #4a7fb54d}.blog-section-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md);margin-top:var(--spacing-xl)}.blog-country-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--spacing-md)}.blog-pill{padding:6px 16px;border-radius:20px;border:1px solid var(--border-light, #e0e0e0);background:var(--card-bg);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);transition:all .2s}.blog-pill:hover{border-color:var(--primary-amber);color:var(--primary-amber)}.blog-pill.active{background:var(--primary-amber);color:#fff;border-color:var(--primary-amber)}.blog-search-input{width:100%;max-width:400px;padding:10px 16px;border:1px solid var(--border-light, #e0e0e0);border-radius:8px;font-size:var(--text-base);margin-bottom:var(--spacing-lg);background:var(--card-bg);color:var(--text-primary)}.blog-search-input:focus{outline:none;border-color:var(--primary-amber);box-shadow:0 0 0 3px #d4893f1a}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.blog-card{background:var(--card-bg);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-color);box-shadow:0 2px 8px var(--shadow-card);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-card-hover)}.blog-card-thumb{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;background:var(--powder-gray)}.blog-card-body{padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);display:flex;flex-direction:column;flex:1}.blog-card-meta{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.blog-card-category{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--primary-amber);background:#d4893f1a;padding:2px 8px;border-radius:4px}.blog-card-readtime{font-size:var(--text-xs);color:var(--text-muted)}.blog-card h3{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm);line-height:1.3}.blog-card p{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6;flex:1}.blog-read-more{font-size:var(--text-sm);font-weight:600;color:var(--primary-amber);margin-top:var(--spacing-md);display:inline-block}.blog-card:hover .blog-read-more{text-decoration:underline}.blog-article{max-width:720px;margin:0 auto;line-height:1.8;font-size:var(--text-base)}.blog-hero-img{width:100%;border-radius:12px;margin-bottom:var(--spacing-lg);aspect-ratio:16/9;object-fit:cover}.blog-article h1{font-size:2rem;margin-bottom:var(--spacing-md)}.blog-article h2{font-size:1.5rem;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.blog-article h3{font-size:1.2rem;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.blog-article p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.blog-article ul,.blog-article ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}.blog-article li{margin-bottom:var(--spacing-xs);color:var(--text-secondary)}.blog-article a{color:inherit;text-decoration:none;border-bottom:1.5px solid var(--primary-amber);transition:border-color .2s,color .2s}.blog-article a:hover{color:var(--primary-amber);border-bottom-color:var(--primary-amber)}.blog-back{background:none;border:none;color:var(--primary-amber);font-weight:600;cursor:pointer;padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-lg);font-size:var(--text-sm)}.blog-back:hover{text-decoration:underline}@media(max-width:768px){.blog-grid{grid-template-columns:1fr}.blog-card h3{font-size:var(--text-base)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-blue)}.accommodation-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color);gap:var(--spacing-sm)}.accommodation-item:last-child{border-bottom:none}.accommodation-item-info{cursor:pointer;flex:1;min-width:0}.accommodation-item-info:hover strong{color:var(--primary-amber)}.accommodation-item-info strong{display:block;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s}.accommodation-item-meta{font-size:var(--text-xs);color:var(--text-muted)}.btn-book-small{background:var(--primary-amber);color:#fff;border:none;padding:6px 12px;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;text-decoration:none;white-space:nowrap;transition:background .2s}.btn-book-small:hover{background:#c07a35}.map-popup{min-width:180px}.map-popup h4{margin:0 0 4px;font-size:14px}.map-popup-stats{font-size:12px;color:#666;margin-bottom:4px}.map-popup-price{font-size:13px;font-weight:600;color:var(--warm-charcoal);margin-bottom:4px}.map-popup-btn{width:100%;background:var(--primary-amber);color:#fff;border:none;padding:6px 12px;border-radius:var(--radius-md);font-size:12px;font-weight:600;cursor:pointer}.map-popup-btn:hover{background:#c07a35}.map-popup-enhanced{padding:0;min-width:220px}.map-popup-enhanced .map-popup-content{padding:10px 12px}.map-popup-img{width:100%;height:100px;object-fit:cover;border-radius:4px 4px 0 0;display:block}.map-popup-badges{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.map-popup-stat{font-size:11px;color:#666;background:#f5f5f5;padding:2px 6px;border-radius:4px}.map-popup-rooms{font-size:12px;color:#555;margin-bottom:4px}.map-popup-skipass{font-size:11px;color:#888;margin-bottom:6px}.leaflet-popup-content{margin:0!important}.leaflet-popup-content-wrapper{padding:0!important;border-radius:8px!important;overflow:hidden}.landing-destinations{padding:var(--spacing-xl) 0}.section-heading{text-align:center;font-size:var(--text-2xl);font-weight:700;margin-bottom:8px;color:var(--text-primary)}.section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.destinations-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}.destination-card{border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .3s,box-shadow .3s;background:#fff;box-shadow:0 2px 12px #00000014}.destination-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.destination-img{height:180px;background-size:cover;background-position:center}.destination-info{padding:16px}.destination-info h3{font-size:var(--text-lg);font-weight:700;margin-bottom:4px}.destination-info span{font-size:var(--text-sm);color:var(--text-secondary)}@media(max-width:768px){.destinations-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.destinations-grid{grid-template-columns:1fr}}.landing-testimonials{padding:var(--spacing-xl) 0}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.testimonial-card{background:#fff;border-radius:16px;padding:28px;box-shadow:0 2px 12px #0000000f}.testimonial-stars{color:var(--primary-amber);font-size:18px;margin-bottom:12px}.testimonial-card p{font-size:var(--text-base);line-height:1.7;color:var(--text-primary);font-style:italic;margin-bottom:16px}.testimonial-author{display:flex;flex-direction:column;gap:2px}.testimonial-author strong{font-size:var(--text-sm)}.testimonial-author span{font-size:var(--text-xs);color:var(--text-secondary)}@media(max-width:768px){.testimonials-grid{grid-template-columns:1fr}}.landing-newsletter{padding:var(--spacing-xl) 0 var(--spacing-2xl)}.newsletter-box{background:linear-gradient(135deg,#2d2926,#3d3530);border-radius:20px;padding:48px;text-align:center;color:#fff}.newsletter-box h2{font-size:var(--text-xl);margin-bottom:8px}.newsletter-box>p{color:#fffc;margin-bottom:24px}.newsletter-form{display:flex;justify-content:center;gap:8px;max-width:460px;margin:0 auto}.newsletter-input{flex:1;padding:14px 20px;border:none;border-radius:50px;font-size:var(--text-base);font-family:inherit;outline:none}.newsletter-btn{background:var(--primary-amber);color:#fff;border:none;padding:14px 28px;border-radius:50px;font-weight:600;font-size:var(--text-base);cursor:pointer;transition:background .2s;white-space:nowrap}.newsletter-btn:hover{background:#c07a35}.newsletter-note{color:#fff9;font-size:var(--text-sm);margin-top:12px}@media(max-width:480px){.newsletter-form{flex-direction:column}.newsletter-box{padding:32px 20px}}#hero-autocomplete-dropdown{position:absolute;top:calc(100% + 8px);bottom:auto;left:0;right:0;background:#fff;border:none;border-radius:24px;box-shadow:0 8px 32px #0003;max-height:280px;overflow-y:auto;z-index:1000}#hero-autocomplete-dropdown .autocomplete-item{padding:14px 24px;border-bottom:1px solid #f0f0f0;font-size:var(--text-base);color:#333}#hero-autocomplete-dropdown .autocomplete-item:first-child{border-radius:24px 24px 0 0}#hero-autocomplete-dropdown .autocomplete-item:last-child{border-radius:0 0 24px 24px;border-bottom:none}#hero-autocomplete-dropdown .autocomplete-item:only-child{border-radius:24px}#hero-autocomplete-dropdown .autocomplete-item:hover{background:#f8f4ef}.detail-page{padding:0;min-height:100vh;background:var(--warm-white)}.detail-container{max-width:1200px;margin:0 auto;padding:80px 24px 48px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--warm-charcoal);line-height:1.6}.detail-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);margin-bottom:24px;flex-wrap:wrap}.detail-breadcrumbs a{color:var(--primary-amber);text-decoration:none}.detail-breadcrumbs a:hover{text-decoration:underline}.detail-breadcrumbs span:last-child{color:var(--text-primary);font-weight:500}.detail-hero{position:relative;border-radius:16px;overflow:hidden;height:320px;margin-bottom:24px}.detail-hero-img{width:100%;height:100%;object-fit:cover}.detail-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(45,41,38,.8));display:flex;flex-direction:column;justify-content:flex-end;padding:32px}.detail-hero-overlay h1{color:#fff;font-size:2.2rem;font-family:DM Sans,sans-serif;font-weight:700;margin:0 0 4px;text-shadow:0 2px 8px rgba(0,0,0,.4)}.detail-hero-subtitle{color:#ffffffd9;font-size:1.1rem;margin:0}.detail-stats{display:flex;gap:16px;flex-wrap:wrap;padding:20px 24px;background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000f;margin-bottom:32px}.detail-stat{display:flex;flex-direction:column;align-items:center;flex:1;min-width:80px}.detail-stat-value{font-size:1.3rem;font-weight:700;color:var(--warm-charcoal)}.detail-stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.detail-content{display:grid;grid-template-columns:1fr 360px;gap:32px}.detail-main{min-width:0}.detail-section{margin-bottom:32px}.detail-section h2{font-family:DM Sans,sans-serif;font-weight:700;font-size:1.3rem;margin:0 0 12px;color:var(--warm-charcoal)}.detail-section p{line-height:1.7;color:var(--text-secondary)}.detail-sidebar-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #0000000f;margin-bottom:20px}.detail-sidebar-card h3{font-family:DM Sans,sans-serif;font-size:1rem;font-weight:600;margin:0 0 12px}.detail-drive-table{width:100%;border-collapse:collapse;font-size:.85rem}.detail-drive-table th{text-align:left;padding:6px 8px;border-bottom:2px solid var(--border-color);font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase}.detail-drive-table td{padding:6px 8px;border-bottom:1px solid var(--border-color)}.detail-drive-table tr:last-child td{border-bottom:none}.detail-map{height:200px;border-radius:8px;overflow:hidden}.detail-btn-primary,.detail-btn-secondary{display:block;text-align:center;padding:12px 16px;border-radius:8px;font-weight:600;text-decoration:none;margin-bottom:8px;font-size:.95rem;transition:all .2s}.detail-btn-primary{background:var(--primary-amber);color:#fff}.detail-btn-primary:hover{background:#c07a35}.detail-btn-secondary{background:var(--snow-white);color:var(--warm-charcoal);border:1px solid var(--border-color)}.detail-btn-secondary:hover{background:var(--ice-blue)}.detail-btn-large{padding:16px;font-size:1.1rem}.detail-accom-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.detail-accom-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f;cursor:pointer;transition:transform .2s,box-shadow .2s}.detail-accom-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.detail-accom-card img{width:100%;height:160px;object-fit:cover}.detail-accom-info{padding:12px 16px}.detail-accom-info h4{margin:0 0 6px;font-size:1rem}.detail-accom-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.detail-accom-desc{font-size:.85rem;color:var(--text-secondary);margin:0 0 8px;line-height:1.5}.detail-accom-price{font-weight:600;color:var(--primary-amber)}.detail-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:500;background:#f0ebe4;color:var(--warm-charcoal)}.detail-badge.sio{background:#e8f5e9;color:#2e7d32}.detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.detail-rating{display:flex;align-items:center;gap:8px;margin-top:8px}.detail-rating-score{background:var(--primary-amber);color:#fff;padding:4px 10px;border-radius:6px;font-weight:700;font-size:1.1rem}.detail-rating-label{color:#ffffffb3;font-size:.85rem}.detail-price-box{background:#fdf8f0;border:2px solid var(--primary-amber);border-radius:12px;padding:20px;text-align:center}.detail-price-range{font-size:1.6rem;font-weight:700;color:var(--warm-charcoal)}.detail-price-per{display:block;color:var(--text-secondary);margin-top:4px}.detail-lift-dist{font-weight:600;color:var(--primary-amber)}.detail-similar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.detail-similar-card{background:#fff;border-radius:12px;overflow:hidden;cursor:pointer;box-shadow:0 2px 8px #0000000f;transition:transform .2s}.detail-similar-card:hover{transform:translateY(-2px)}.detail-similar-card img{width:100%;height:120px;object-fit:cover}.detail-similar-info{padding:10px 14px}.detail-similar-info h4{margin:0 0 4px;font-size:.95rem}.detail-similar-info span{font-size:.8rem;color:var(--text-secondary)}@media(max-width:768px){.detail-container{padding:70px 16px 32px}.detail-hero{height:220px;border-radius:12px}.detail-hero-overlay h1{font-size:1.5rem}.detail-content{grid-template-columns:1fr}.detail-stats{gap:8px;padding:16px}.detail-stat-value{font-size:1rem}.detail-accom-grid{grid-template-columns:1fr}}.filter-disabled{opacity:.4;pointer-events:none;position:relative}.auto-switch-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(20px);background:var(--primary-amber);color:#fff;padding:12px 24px;border-radius:8px;font-size:var(--text-sm);font-weight:500;box-shadow:0 4px 12px #00000026;opacity:0;transition:opacity .3s,transform .3s;z-index:9999;pointer-events:none}.auto-switch-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.detail-travel-card{background:linear-gradient(135deg,#d4893f0d,#d4893f05);border:1px solid rgba(212,137,63,.15)}.detail-travel-options{display:flex;flex-direction:column;gap:12px;margin-top:12px}.detail-travel-option{display:flex;align-items:flex-start;gap:10px}.detail-travel-icon{font-size:1.3rem;flex-shrink:0;margin-top:2px}.detail-travel-info{display:flex;flex-direction:column;gap:2px}.detail-travel-info strong{font-size:var(--text-sm);color:var(--text-primary)}.detail-travel-info span{font-size:var(--text-xs);color:var(--text-secondary)}.detail-travel-note{margin-top:14px;padding-top:12px;border-top:1px solid rgba(212,137,63,.12);font-size:var(--text-xs);color:var(--primary-amber);font-style:italic}.acc-best-for{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.best-for-tag{display:inline-block;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:12px;letter-spacing:.3px;text-transform:uppercase}.best-for-families{background:#e8f5e9;color:#2e7d32}.best-for-couples{background:#fce4ec;color:#c2185b}.best-for-budget{background:#fff3e0;color:#e65100}.best-for-luxury{background:#f3e5f5;color:#7b1fa2}.best-for-spa{background:#e0f7fa;color:#00838f}.best-for-ski-enthusiasts{background:#e3f2fd;color:#1565c0}.resort-hotel-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:12px 16px;background:#f8f9fa;border-radius:12px}.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-label{font-size:.85rem;font-weight:600;color:#555;white-space:nowrap}.resort-hotel-filters .filter-pills{display:flex;gap:4px;flex-wrap:wrap}.resort-hotel-filters .filter-pill{padding:4px 12px;border-radius:20px;border:1px solid #ddd;background:#fff;color:#333;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.resort-hotel-filters .filter-pill:hover{border-color:var(--primary-amber);color:var(--primary-amber)}.resort-hotel-filters .filter-pill.active{background:var(--primary-amber);color:#fff;border-color:var(--primary-amber)}@media(max-width:600px){.resort-hotel-filters{flex-direction:column;gap:10px;padding:10px 12px}}.star-badges-row,.bestfor-badges-row{display:grid;grid-template-columns:repeat(4,auto);gap:4px}.star-badges,.bestfor-badges{display:flex;gap:4px;flex-wrap:wrap}.country-pill-all{font-size:.75rem;font-weight:600;letter-spacing:.3px}.star-badge,.bestfor-badge{padding:4px 10px;border-radius:20px;border:1px solid #ddd;background:#fff;color:#555;font-size:.78rem;cursor:pointer;transition:all .2s;white-space:nowrap}.star-badge:hover,.bestfor-badge:hover{border-color:var(--primary-amber);color:var(--primary-amber)}.filter-select{padding:4px 10px;border-radius:20px;border:1px solid #ddd;background:#fff;color:#333;font-size:.8rem;cursor:pointer;outline:none}.filter-select:focus{border-color:var(--primary-amber)}.acc-google-rating{font-size:.82rem;color:#555;margin-top:2px}.google-review-count{color:#999;font-size:.75rem}.google-badge{background:#fff8e1;color:#f57f17}.detail-ratings-row{display:flex;gap:12px;align-items:center}.detail-rating-google .detail-rating-score{background:#fffffff2;color:#f57f17}.star-badge.active,.bestfor-badge.active{background:var(--primary-amber);color:#fff;border-color:var(--primary-amber)}.lang-switcher{display:flex;gap:4px;margin-left:16px;align-items:center}.lang-flag{padding:4px 8px;font-size:.7rem;font-weight:600;text-decoration:none;color:var(--text-muted);border-radius:4px;transition:all .2s}.lang-flag:hover{color:var(--text-primary);background:var(--powder-gray)}.lang-flag.active{color:var(--primary-amber);background:#d4893f1a}@media(max-width:768px){.lang-switcher{margin-left:0;margin-top:12px;justify-content:center}}
