:root{--color-primary:#77332F;--color-primary-dark:#5a2622;--color-primary-light:#8B4513;--color-secondary:#d4af37;--color-secondary-light:#D2B48C;--color-summer-primary:#8B4513;--color-summer-secondary:#D2B48C;--color-summer-accent:#F5F5DC;--color-white:#ffffff;--color-black:#000000;--color-gray-50:#f8f9fa;--color-gray-100:#f1f3f4;--color-gray-200:#e9ecef;--color-gray-300:#dee2e6;--color-gray-400:#ced4da;--color-gray-500:#adb5bd;--color-gray-600:#6c757d;--color-gray-700:#495057;--color-gray-800:#343a40;--color-gray-900:#212529;--color-text-primary:#555;--color-text-secondary:#666;--color-text-light:#999;--color-text-dark:#333;--color-text-summer:#3E2723;--color-success:#28a745;--color-error:#dc3545;--color-warning:#ffc107;--color-info:#17a2b8;--font-family-primary:'Lato','Arial',sans-serif;--font-family-heading:'Playfair Display','Times New Roman',serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.6;--line-height-relaxed:1.8;--letter-spacing-tight:-0.025em;--letter-spacing-normal:0;--letter-spacing-wide:0.025em;--letter-spacing-wider:0.05em;--letter-spacing-widest:0.1em;--spacing-0:0;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--breakpoint-xs:360px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1200px;--breakpoint-2xl:1440px;--container-max-width:1200px;--header-height:80px;--header-height-mobile:70px;--touch-target-min:44px;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-base:0 1px 3px 0 rgba(0, 0, 0, 0.1),0 1px 2px 0 rgba(0, 0, 0, 0.06);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05);--shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1),0 10px 10px -5px rgba(0, 0, 0, 0.04);--shadow-2xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);--shadow-primary:0 8px 20px rgba(119, 51, 47, 0.4);--shadow-primary-lg:0 12px 40px rgba(119, 51, 47, 0.3);--border-radius-none:0;--border-radius-sm:0.25rem;--border-radius-base:0.5rem;--border-radius-md:0.75rem;--border-radius-lg:1rem;--border-radius-xl:1.5rem;--border-radius-full:9999px;--border-width-thin:1px;--border-width-base:2px;--border-width-thick:4px;--transition-fast:0.15s ease;--transition-base:0.3s ease;--transition-slow:0.5s ease;--transition-slower:0.8s ease;--transition-timing-ease:ease;--transition-timing-ease-in:ease-in;--transition-timing-ease-out:ease-out;--transition-timing-ease-in-out:ease-in-out;--transition-timing-cubic:cubic-bezier(0.4, 0, 0.2, 1);--z-index-base:1;--z-index-dropdown:100;--z-index-sticky:200;--z-index-fixed:300;--z-index-modal-backdrop:400;--z-index-modal:500;--z-index-popover:600;--z-index-tooltip:700;--z-index-header:1000;--z-index-overlay:998;--z-index-menu:999;--z-index-lightbox:9999;--gradient-primary:linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);--gradient-summer:linear-gradient(135deg, #F5F5DC 0%, #FAEBD7 100%);--gradient-primary-color:linear-gradient(90deg, #77332F, #5a2622, #77332F);--gradient-secondary:linear-gradient(90deg, #77332F, #d4af37);--gradient-summer-btn:linear-gradient(145deg, #4A90E2 0%, #87CEEB 100%);--opacity-disabled:0.5;--opacity-hover:0.8;--opacity-overlay:0.5;--opacity-backdrop:0.9;--image-hero-winter:url('../images/chalet/paysage.jpg');--image-hero-summer:url('../images/chalet/vue-sur-le-chalet-2.jpeg')}body.winter-theme{--theme-primary:var(--color-primary);--theme-primary-dark:var(--color-primary-dark);--theme-secondary:var(--color-secondary);--theme-accent:var(--color-gray-50);--theme-text:var(--color-text-primary);--theme-bg-gradient:var(--gradient-primary);--theme-hero-bg:var(--image-hero-winter)}body.summer-theme{--theme-primary:var(--color-summer-primary);--theme-primary-dark:#A0522D;--theme-secondary:var(--color-summer-secondary);--theme-accent:var(--color-summer-accent);--theme-text:var(--color-text-summer);--theme-bg-gradient:var(--gradient-summer);--theme-hero-bg:var(--image-hero-summer)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family-primary);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-white);font-weight:var(--font-weight-light);margin:0;padding:0;transition:all var(--transition-base);overflow-x:hidden;width:100%;max-width:100vw}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--theme-primary)}h1{font-size:var(--font-size-5xl);font-family:var(--font-family-heading)}h2{font-size:var(--font-size-4xl);font-family:var(--font-family-heading)}h3{font-size:var(--font-size-2xl);font-family:var(--font-family-primary)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-4);color:var(--color-text-primary);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-light);font-size:var(--font-size-base)}a{color:var(--theme-primary);text-decoration:none;transition:color var(--transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:hover{color:var(--theme-primary-dark)}img{max-width:100%;height:auto;display:block}ol,ul{list-style:none;margin:0;padding:0}button{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;padding:0;border:none;background:0 0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}:focus:not(:focus-visible){outline:0}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}@media print{*{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}img{page-break-inside:avoid}h2,h3{page-break-after:avoid}}header{background-color:rgba(255,255,255,.95);color:var(--color-text-dark);padding:var(--spacing-4) var(--spacing-8);display:flex;justify-content:space-between;align-items:center;border-bottom:var(--border-width-thin) solid rgba(0,0,0,.05);box-shadow:var(--shadow-sm);position:fixed;top:0;left:0;right:0;width:100%;z-index:var(--z-index-header);transition:all var(--transition-base);transform:translateY(0);height:var(--header-height)}.nav-container{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);max-width:var(--container-max-width);margin:0 auto;width:100%}.logo{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);font-family:var(--font-family-heading);letter-spacing:var(--letter-spacing-wide);color:var(--theme-primary);position:relative;text-transform:uppercase}.logo::after{content:"⋆⋆⋆⋆";display:block;font-size:var(--font-size-sm);color:var(--theme-primary);letter-spacing:var(--spacing-2);margin-top:calc(var(--spacing-1) * -1);text-align:center}nav ul{display:flex;list-style:none;gap:var(--spacing-6)}nav ul li{margin:0}nav ul li a{color:var(--theme-primary);text-decoration:none;padding:var(--spacing-2) var(--spacing-4);transition:all var(--transition-base);font-weight:var(--font-weight-medium);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);display:flex;align-items:center;justify-content:center;min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}nav ul li a.active,nav ul li a:hover{color:var(--color-text-dark);text-decoration:underline}.burger-menu{display:none;background:0 0;border:none;cursor:pointer;padding:var(--spacing-3);z-index:calc(var(--z-index-header) + 1);margin-left:auto;position:relative;width:50px;height:50px;border-radius:var(--border-radius-full);transition:all var(--transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex-shrink:0}.burger-menu:hover{background-color:rgba(119,51,47,.1);transform:scale(1.05)}.burger-menu:active{transform:scale(.95)}.burger-menu span{display:block;width:20px;height:2px;margin:4px auto;background:var(--theme-primary);border-radius:1px;transition:all var(--transition-timing-cubic);position:relative;left:50%;transform:translateX(-50%);opacity:1;visibility:visible}.burger-menu.active{background-color:rgba(119,51,47,.1);transform:scale(1.05)}.burger-menu.active span:first-child{transform:translateX(-50%) translateY(-50%) rotate(45deg);background:var(--theme-primary);width:20px;height:2px;position:absolute;top:50%;left:50%;margin:0;z-index:var(--z-index-base);opacity:1}.burger-menu.active span:nth-child(2){opacity:0;transform:scaleX(0);width:0;margin:0;visibility:hidden}.burger-menu.active span:nth-child(3){transform:translateX(-50%) translateY(-50%) rotate(-45deg);background:var(--theme-primary);width:20px;height:2px;position:absolute;top:50%;left:50%;margin:0;z-index:calc(var(--z-index-base) + 1);opacity:1}.nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,var(--opacity-overlay));z-index:var(--z-index-overlay);opacity:0;visibility:hidden;transition:all var(--transition-base)}.nav-overlay.active{opacity:1;visibility:visible}@media (max-width:900px){header{padding:var(--spacing-4) var(--spacing-6)}.nav-container{width:100%;justify-content:space-between}.logo{font-size:var(--font-size-2xl);margin-right:auto;order:1}.burger-menu{display:block;padding:var(--spacing-2);width:44px;height:44px;min-width:44px;min-height:44px;margin-left:0;margin-right:0;border-radius:var(--border-radius-base);background:rgba(119,51,47,.1);border:var(--border-width-thin) solid rgba(119,51,47,.2);order:2;flex-shrink:0}.burger-menu span{background:var(--theme-primary);display:block}nav{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:var(--color-white);box-shadow:var(--shadow-xl);transition:right var(--transition-base);z-index:var(--z-index-menu);padding-top:var(--header-height-mobile)}nav.active{right:0;display:block}nav:not(.active){display:none}nav ul{flex-direction:column;padding:0;margin:0;gap:0}nav ul li{margin:0;border-bottom:var(--border-width-thin) solid var(--color-gray-200)}nav ul li a{display:block;padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-base)}.nav-overlay{display:block}}@media (max-width:1024px) and (min-width:901px){header{padding:var(--spacing-4) var(--spacing-6)}.nav-container{width:100%;justify-content:space-between}.logo{font-size:var(--font-size-2xl);margin-right:auto}nav{display:block}nav ul{display:flex;flex-direction:row;gap:var(--spacing-2)}nav ul li{margin:0}nav ul li a{font-size:var(--font-size-xs);padding:var(--spacing-2) var(--spacing-2);white-space:nowrap}.burger-menu{display:none}.nav-overlay{display:none}}@media (max-width:768px){header{padding:calc(var(--spacing-2) + 4px) var(--spacing-4);height:var(--header-height-mobile)}.nav-container{justify-content:space-between}.logo{font-size:var(--font-size-xl);margin-right:auto;order:1}.logo::after{font-size:var(--font-size-xs)}.burger-menu{display:block;padding:var(--spacing-2);width:44px;height:44px;min-width:44px;min-height:44px;margin-left:0;margin-right:0;border-radius:var(--border-radius-base);background:rgba(119,51,47,.1);border:var(--border-width-thin) solid rgba(119,51,47,.2);order:2;flex-shrink:0}.burger-menu span{background:var(--theme-primary);display:block}nav{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:var(--color-white);box-shadow:var(--shadow-xl);transition:right var(--transition-base);z-index:var(--z-index-menu);padding-top:var(--header-height-mobile)}nav.active{right:0;display:block}nav:not(.active){display:none}nav ul{flex-direction:column;padding:0;margin:0;gap:0}nav ul li{margin:0;border-bottom:var(--border-width-thin) solid var(--color-gray-200)}nav ul li a{display:block;padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-base)}}@media (max-width:480px){.logo{font-size:var(--font-size-lg);margin-right:auto}.burger-menu{width:40px;height:40px;padding:var(--spacing-2);background:rgba(119,51,47,.1);border:var(--border-width-thin) solid rgba(119,51,47,.2)}.burger-menu span{background:var(--theme-primary)}}main{width:100%;margin:0;padding:0;padding-top:var(--header-height)}main>section:not(.hero):not(.availability-calendar){max-width:var(--container-max-width);margin:var(--spacing-16) auto;padding:0 var(--spacing-8)}section:not(.availability-calendar){margin-bottom:var(--spacing-16)}@media (max-width:768px){main{padding-top:var(--header-height-mobile)}main>section:not(.hero):not(.availability-calendar){padding:0 var(--spacing-4);margin:var(--spacing-8) auto}}@media (max-width:480px){main>section:not(.hero):not(.availability-calendar){padding:0 var(--spacing-3);margin:var(--spacing-6) auto}}footer{background:linear-gradient(135deg,var(--color-gray-800) 0,var(--color-gray-900) 100%);color:var(--color-white);padding:var(--spacing-12) var(--spacing-8);margin-top:var(--spacing-20);position:relative;border-top:var(--border-width-thick) solid var(--theme-primary)}footer::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--theme-primary),var(--theme-secondary),var(--theme-primary))}.footer-container{max-width:var(--container-max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-8);margin-bottom:var(--spacing-8)}.footer-section{display:flex;flex-direction:column}.footer-section h3{color:var(--theme-primary);font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-6);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);position:relative;padding-bottom:var(--spacing-2)}.footer-section h3::after{content:"";position:absolute;bottom:0;left:0;width:40px;height:2px;background:var(--theme-primary)}.footer-section li,.footer-section p{color:var(--color-gray-300);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-2)}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section ul li{margin-bottom:var(--spacing-3);position:relative;padding-left:var(--spacing-5)}.footer-section ul li::before{content:"→";position:absolute;left:0;color:var(--theme-primary);font-weight:var(--font-weight-bold)}.footer-section a{color:var(--color-gray-300);text-decoration:none;transition:all var(--transition-base);display:inline-block}.footer-section a:hover{color:var(--theme-primary);transform:translateX(5px)}.footer-section .footer-logo{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);font-family:var(--font-family-heading);color:var(--theme-primary);margin-bottom:var(--spacing-4);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.footer-section .footer-logo::after{content:"⋆⋆⋆⋆";display:block;font-size:var(--font-size-sm);color:var(--theme-primary);letter-spacing:var(--spacing-2);margin-top:calc(var(--spacing-1) * -1);text-align:center}.footer-section .footer-description{color:var(--color-gray-400);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-6)}.footer-contact-item{display:flex;align-items:flex-start;margin-bottom:var(--spacing-4);gap:var(--spacing-3)}.footer-contact-item strong{color:var(--theme-primary);min-width:80px;font-weight:var(--font-weight-semibold)}.footer-contact-item span{color:var(--color-gray-300);flex:1}.footer-bottom{border-top:var(--border-width-thin) solid rgba(255,255,255,.1);padding-top:var(--spacing-8);margin-top:var(--spacing-8);text-align:center}.footer-bottom p{color:var(--color-gray-400);font-size:var(--font-size-sm);margin:0}.footer-bottom a{color:var(--theme-primary);text-decoration:none;transition:color var(--transition-base)}.footer-bottom a:hover{color:var(--theme-secondary)}@media (max-width:1024px){footer{padding:var(--spacing-12) var(--spacing-6)}.footer-container{grid-template-columns:repeat(2,1fr);gap:var(--spacing-8)}}@media (max-width:768px){footer{padding:var(--spacing-10) var(--spacing-4);margin-top:var(--spacing-16)}.footer-container{grid-template-columns:1fr;gap:var(--spacing-8);margin-bottom:var(--spacing-8)}.footer-section h3{font-size:var(--font-size-lg)}.footer-section .footer-logo{font-size:var(--font-size-2xl)}}@media (max-width:480px){footer{padding:var(--spacing-8) var(--spacing-3)}.footer-section h3{font-size:var(--font-size-base)}.footer-section li,.footer-section p{font-size:var(--font-size-sm)}}.hero{background-color:var(--color-gray-50);background-image:var(--theme-hero-bg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;height:100vh;min-height:600px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--color-white);position:relative;padding:var(--spacing-8);margin-top:calc(var(--header-height) * -1)}.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.1);z-index:var(--z-index-base)}.hero>*{position:relative;z-index:calc(var(--z-index-base) + 1)}.hero h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-6);text-shadow:2px 2px 4px rgba(0,0,0,.5);color:var(--color-white);font-family:var(--font-family-heading);letter-spacing:var(--letter-spacing-wider)}.hero p{font-size:var(--font-size-xl);margin-bottom:var(--spacing-8);text-shadow:1px 1px 2px rgba(0,0,0,.5);color:var(--color-white);max-width:800px}.season-buttons{position:absolute;top:calc(var(--header-height) + var(--spacing-8));right:var(--spacing-8);display:flex;gap:var(--spacing-2);align-items:center;z-index:calc(var(--z-index-header) + 1)}.season-btn{background:linear-gradient(145deg,rgba(255,255,255,.15) 0,rgba(255,255,255,.05) 100%);color:var(--color-white);border:var(--border-width-thin) solid rgba(255,255,255,.2);padding:var(--spacing-2);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-timing-cubic);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.2);position:relative;overflow:hidden;width:48px;height:48px;z-index:calc(var(--z-index-header) + 1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.season-btn::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 var(--transition-slow)}.season-btn:hover::before{left:100%}.season-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 40px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.3);border-color:rgba(255,255,255,.4);background:linear-gradient(145deg,rgba(255,255,255,.25) 0,rgba(255,255,255,.1) 100%)}.season-btn:active{transform:translateY(-1px) scale(.98);box-shadow:0 4px 20px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.2)}.season-btn:focus{outline:0;border-color:rgba(255,255,255,.6);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.2),0 0 0 2px rgba(255,255,255,.3)}.season-btn.active{background:var(--gradient-summer-btn);box-shadow:0 10px 40px rgba(74,144,226,.4),inset 0 1px 0 rgba(255,255,255,.3);transform:scale(1.08);border-color:rgba(255,255,255,.6)}.season-btn:not(.active){background:linear-gradient(145deg,rgba(255,255,255,.1) 0,rgba(255,255,255,.05) 100%);box-shadow:0 6px 24px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.1);opacity:var(--opacity-hover);border-color:rgba(255,255,255,.15)}.season-btn:not(.active):hover{opacity:1;transform:translateY(-3px) scale(1.05);background:linear-gradient(145deg,rgba(255,255,255,.2) 0,rgba(255,255,255,.1) 100%);border-color:rgba(255,255,255,.3);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.2)}.season-icon{font-size:var(--font-size-xl);transition:transform var(--transition-base)}@media (min-width:1025px){.hero{background-position:center top}}@media (max-width:1024px){.hero{height:80vh;min-height:500px}.hero h1{font-size:var(--font-size-4xl)}.hero p{font-size:calc(var(--font-size-lg) + 2px)}}@media (max-width:768px){.hero{height:70vh;min-height:450px;background-attachment:scroll;margin-top:calc(var(--header-height-mobile) * -1)}.hero h1{font-size:var(--font-size-3xl);padding:0 var(--spacing-4)}.hero p{font-size:var(--font-size-lg);padding:0 var(--spacing-6)}.season-buttons{top:calc(var(--header-height-mobile) + var(--spacing-6));right:var(--spacing-4)}.season-btn{width:42px;height:42px}}@media (max-width:480px){.hero{height:60vh;min-height:400px}.hero h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.hero p{font-size:var(--font-size-base)}.season-buttons{top:calc(var(--header-height-mobile) + var(--spacing-5));right:calc(var(--spacing-2) + 4px);gap:var(--spacing-1)}.season-btn{width:38px;height:38px}.season-icon{font-size:var(--font-size-base)}}@media (max-width:768px) and (orientation:landscape){.hero{height:100vh;min-height:100vh}.hero h1{font-size:var(--font-size-2xl)}.hero p{font-size:var(--font-size-base)}}.btn{display:inline-block;padding:var(--spacing-3) var(--spacing-6);text-decoration:none;border-radius:var(--border-radius-base);font-weight:var(--font-weight-medium);text-align:center;transition:all var(--transition-base);border:none;cursor:pointer;font-size:var(--font-size-base);min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn-primary{background-color:var(--theme-primary);color:var(--color-white);border:var(--border-width-base) solid var(--theme-primary)}.btn-primary:hover{background-color:var(--theme-primary-dark);border-color:var(--theme-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-primary)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-primary:focus{outline:2px solid var(--theme-primary);outline-offset:2px}.btn-secondary{background-color:var(--theme-secondary);color:var(--color-white);border:var(--border-width-base) solid var(--theme-secondary)}.btn-secondary:hover{background-color:var(--color-secondary-light);border-color:var(--color-secondary-light);transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (max-width:768px){.btn{padding:calc(var(--spacing-2) + 2px) var(--spacing-5);font-size:var(--font-size-sm)}}@media (max-width:480px){.btn{padding:calc(var(--spacing-2) + 4px) var(--spacing-4);font-size:var(--font-size-sm);width:100%;max-width:100%}}h2{color:var(--theme-primary);margin-bottom:var(--spacing-6);font-size:var(--font-size-4xl);padding-bottom:var(--spacing-2);font-family:var(--font-family-heading);position:relative;font-weight:var(--font-weight-bold);text-align:center;letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}h2::before{content:"";position:absolute;width:40px;height:2px;background-color:var(--theme-primary);bottom:0;left:50%;transform:translateX(-50%)}h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-2xl);font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-normal)}@media (max-width:768px){h2{font-size:var(--font-size-3xl);padding:0 var(--spacing-4)}h3{font-size:var(--font-size-xl)}}@media (max-width:480px){h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-lg)}}.bathrooms-gallery,.rooms-gallery{padding:var(--spacing-16) var(--spacing-8);background:var(--color-gray-50);width:100%;max-width:100%;margin:0 auto}.bathrooms-carousel,.rooms-carousel{max-width:100%;margin:0 auto;width:100%;overflow:hidden}.bathroom-slide,.room-slide{display:flex;margin-bottom:var(--spacing-8);padding:0;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;width:100%;max-width:100%}.bathroom-carousel-container,.room-carousel-container{width:100%;position:relative;margin:0;padding:0;max-width:100%}.bathroom-carousel-container .carousel-wrapper,.room-carousel-container .carousel-wrapper{width:100%;position:relative;overflow:hidden;max-width:100%}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{width:100%;height:400px;object-fit:cover;display:block;max-width:100%}.bathroom-info,.room-info{padding:var(--spacing-6);min-width:auto;width:100%;max-width:100%}@media (max-width:768px){html body .bathrooms-gallery,html body .rooms-gallery{padding:var(--spacing-8) var(--spacing-4);background:var(--color-gray-50);width:100%;max-width:100%;margin:0 auto;overflow-x:hidden}html body .bathrooms-carousel,html body .rooms-carousel{max-width:100%;margin:0 auto;width:100%;overflow:hidden;padding:0}html body .bathroom-slide,html body .room-slide{display:block;margin-bottom:var(--spacing-8);padding:0;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;width:100%;max-width:100%;margin-left:0;margin-right:0}html body .bathroom-carousel-container,html body .room-carousel-container{width:100%;position:relative;margin:0;padding:0;max-width:100%;display:block}html body .bathroom-carousel-container .carousel-wrapper,html body .room-carousel-container .carousel-wrapper{width:100%;position:relative;overflow:hidden;max-width:100%;height:350px}html body .bathroom-carousel-container .carousel-image,html body .room-carousel-container .carousel-image{width:100%;height:350px;object-fit:cover;display:block;max-width:100%;position:static;margin:0;padding:0}html body .bathroom-info,html body .room-info{padding:var(--spacing-6);width:100%;max-width:100%}}@media (max-width:480px){html body .bathrooms-gallery,html body .rooms-gallery{padding:var(--spacing-6) var(--spacing-3)}html body .bathrooms-carousel,html body .rooms-carousel{padding:0}html body .bathroom-carousel-container .carousel-wrapper,html body .room-carousel-container .carousel-wrapper{height:250px}html body .bathroom-carousel-container .carousel-image,html body .room-carousel-container .carousel-image{height:250px}html body .bathroom-info,html body .room-info{padding:var(--spacing-4)}}@media (min-width:481px) and (max-width:768px){html body .bathroom-carousel-container .carousel-wrapper,html body .room-carousel-container .carousel-wrapper{height:300px}html body .bathroom-carousel-container .carousel-image,html body .room-carousel-container .carousel-image{height:300px}}.chalet-carousel{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;text-align:center}.chalet-carousel h2{font-size:var(--font-size-4xl);color:var(--theme-primary);margin-bottom:var(--spacing-4);font-family:var(--font-family-heading)}.chalet-carousel p{color:var(--color-text-secondary);margin-bottom:var(--spacing-8);font-size:var(--font-size-lg)}.carousel-container{position:relative;max-width:100%;margin:0 auto}.carousel-wrapper{position:relative;height:500px;overflow:hidden;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl)}.carousel-slides{display:flex;height:100%;transition:transform var(--transition-base)}.carousel-slide{min-width:100%;height:100%;position:relative;display:none}.carousel-slide.active{display:block}.carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.slide-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.7));color:var(--color-white);padding:var(--spacing-6) var(--spacing-4) var(--spacing-4);font-size:var(--font-size-base);text-align:center}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.9);border:none;width:50px;height:50px;border-radius:var(--border-radius-full);font-size:var(--font-size-xl);color:var(--theme-primary);cursor:pointer;z-index:var(--z-index-base);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);box-shadow:var(--shadow-md);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.carousel-btn:hover{background:var(--color-white);transform:translateY(-50%) scale(1.1);box-shadow:var(--shadow-lg)}.carousel-btn.prev{left:var(--spacing-4)}.carousel-btn.next{right:var(--spacing-4)}.carousel-categories{display:flex;justify-content:center;gap:var(--spacing-3);margin-top:var(--spacing-6);flex-wrap:wrap}.category-btn{padding:var(--spacing-2) var(--spacing-5);background:var(--color-white);border:var(--border-width-base) solid var(--theme-primary);color:var(--theme-primary);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:var(--touch-target-min)}.category-btn.active,.category-btn:hover{background:var(--theme-primary);color:var(--color-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}@media (max-width:1024px){.chalet-carousel{padding:var(--spacing-12) var(--spacing-6)}.chalet-carousel h2{font-size:var(--font-size-3xl)}.carousel-wrapper{height:450px}}@media (max-width:768px){.chalet-carousel{padding:var(--spacing-10) var(--spacing-4)}.chalet-carousel h2{font-size:var(--font-size-2xl)}.chalet-carousel p{font-size:var(--font-size-base)}.carousel-wrapper{height:350px}.carousel-btn{width:40px;height:40px;font-size:var(--font-size-lg)}.carousel-categories{gap:var(--spacing-2)}.category-btn{padding:calc(var(--spacing-2) + 2px) var(--spacing-4);font-size:var(--font-size-xs)}}@media (max-width:480px){.chalet-carousel{padding:var(--spacing-8) var(--spacing-3)}.chalet-carousel h2{font-size:var(--font-size-xl)}.chalet-carousel p{font-size:var(--font-size-sm)}.carousel-wrapper{height:250px}.slide-caption{padding:var(--spacing-4) var(--spacing-3) var(--spacing-2);font-size:var(--font-size-xs)}.carousel-btn{width:35px;height:35px;font-size:var(--font-size-base)}.carousel-btn.prev{left:var(--spacing-2)}.carousel-btn.next{right:var(--spacing-2)}.category-btn{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}}.description{background:var(--theme-bg-gradient);padding:var(--spacing-20) var(--spacing-8);position:relative;overflow:hidden;margin:var(--spacing-16) 0}.description-container{max-width:var(--container-max-width);margin:0 auto;position:relative;z-index:var(--z-index-base)}.description-header{text-align:center;margin-bottom:var(--spacing-16)}.description h2{font-size:var(--font-size-5xl);color:var(--theme-primary);margin-bottom:var(--spacing-6);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--spacing-2);position:relative}.description-subtitle{font-size:calc(var(--font-size-lg) + 2px);color:var(--color-text-secondary);font-style:italic;font-weight:var(--font-weight-light);margin:0}.description-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-16);align-items:start}.description-text{font-size:calc(var(--font-size-base) + 2px);line-height:var(--line-height-relaxed);color:var(--color-text-primary)}.description-text p{margin-bottom:var(--spacing-6);text-align:left}.description-text strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.description-highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8)}.highlight-item{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-lg);text-align:center;transition:all var(--transition-base);border:var(--border-width-thin) solid rgba(119,51,47,.1);position:relative;overflow:hidden}.highlight-item::before{content:"";position:absolute;top:0;left:0;width:100%;height:var(--border-width-thick);background:var(--gradient-secondary)}.highlight-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}.highlight-icon{font-size:var(--font-size-5xl);margin-bottom:var(--spacing-4);display:block}.highlight-text h4{color:var(--theme-primary);font-size:var(--font-size-xl);margin-bottom:var(--spacing-2)}@media (max-width:1024px){.description{padding:var(--spacing-16) var(--spacing-6)}.description h2{font-size:var(--font-size-4xl)}.description-subtitle{font-size:calc(var(--font-size-base) + 2px)}.description-highlights{grid-template-columns:repeat(2,1fr);gap:var(--spacing-6)}}@media (max-width:768px){.description{padding:var(--spacing-12) var(--spacing-4);margin:var(--spacing-8) 0}.description h2{font-size:var(--font-size-3xl)}.description-subtitle{font-size:var(--font-size-base)}.description-text{font-size:var(--font-size-sm)}.description-content{grid-template-columns:1fr;gap:var(--spacing-8)}.description-highlights{grid-template-columns:1fr;gap:var(--spacing-6)}.highlight-item{padding:var(--spacing-6)}.highlight-item h4{font-size:var(--font-size-lg)}}@media (max-width:480px){.description{padding:var(--spacing-8) var(--spacing-3)}.description h2{font-size:var(--font-size-2xl)}.description-subtitle{font-size:var(--font-size-sm)}.description-text{font-size:var(--font-size-sm)}.highlight-item{padding:var(--spacing-5)}.highlight-item h4{font-size:var(--font-size-base)}}.seasonal-activities{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto}.seasonal-activities h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.seasonal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8);margin-top:var(--spacing-8)}.season-card{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border-left:var(--border-width-thick) solid var(--theme-primary);transition:all var(--transition-base);display:flex;flex-direction:column}.season-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.season-card.winter{border-left-color:var(--theme-primary)}.season-card.summer{border-left-color:var(--theme-secondary)}.season-card h3{font-size:var(--font-size-2xl);color:var(--theme-primary);margin-bottom:var(--spacing-4);font-family:var(--font-family-heading);display:flex;align-items:center;gap:var(--spacing-3)}.season-card p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4);flex:1}.season-card ul{list-style:none;padding:0;margin:var(--spacing-4) 0}.season-card ul li{padding:var(--spacing-2) 0;padding-left:var(--spacing-6);position:relative;color:var(--color-text-primary);line-height:var(--line-height-normal)}.season-card ul li::before{content:"•";position:absolute;left:0;color:var(--theme-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl)}@media (max-width:1024px){.seasonal-activities{padding:var(--spacing-12) var(--spacing-6)}.seasonal-activities h2{font-size:var(--font-size-3xl)}.seasonal-grid{gap:var(--spacing-6)}}@media (max-width:768px){.seasonal-activities{padding:var(--spacing-10) var(--spacing-4)}.seasonal-activities h2{font-size:var(--font-size-2xl)}.seasonal-grid{grid-template-columns:1fr;gap:var(--spacing-8)}.season-card{padding:var(--spacing-6)}.season-card h3{font-size:var(--font-size-xl)}.season-card ul{font-size:var(--font-size-sm)}}@media (max-width:480px){.seasonal-activities{padding:var(--spacing-8) var(--spacing-3)}.seasonal-activities h2{font-size:var(--font-size-xl)}.season-card{padding:var(--spacing-5)}.season-card h3{font-size:var(--font-size-lg)}.season-card p{font-size:var(--font-size-sm)}.season-card ul{font-size:var(--font-size-xs);padding-left:var(--spacing-5)}}.features-detailed{margin-top:var(--spacing-16);padding-bottom:var(--spacing-16);width:100%}.features-detailed h3{font-size:var(--font-size-3xl);color:var(--theme-primary);margin-bottom:var(--spacing-8);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);text-align:center}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-8);max-width:1000px;margin:0 auto;width:100%}.feature-item{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-lg);text-align:left;border:var(--border-width-thin) solid rgba(119,51,47,.1);transition:all var(--transition-base);display:flex;flex-direction:column}.feature-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl);border-color:rgba(119,51,47,.2)}.feature-item h4{color:var(--theme-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-4);display:flex;align-items:center;gap:var(--spacing-2)}.feature-item p{color:var(--color-text-primary);line-height:var(--line-height-normal);margin:0;flex:1}.feature-item p strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}@media (max-width:1024px){.features-detailed{margin-top:var(--spacing-12);padding-bottom:var(--spacing-12)}.features-detailed h3{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-6)}.features-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-6);max-width:100%;padding:0 var(--spacing-4)}.feature-item{padding:var(--spacing-6)}.feature-item h4{font-size:var(--font-size-lg)}}@media (max-width:768px){.features-detailed{margin-top:var(--spacing-10);padding-bottom:var(--spacing-10)}.features-detailed h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-5);padding:0 var(--spacing-4)}.features-grid{grid-template-columns:1fr;gap:var(--spacing-5);padding:0 var(--spacing-4)}.feature-item{padding:var(--spacing-5);width:100%;max-width:100%}.feature-item h4{font-size:var(--font-size-base);margin-bottom:var(--spacing-3)}.feature-item p{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}}@media (max-width:480px){.features-detailed{margin-top:var(--spacing-8);padding-bottom:var(--spacing-8)}.features-detailed h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-4);padding:0 var(--spacing-3);line-height:var(--line-height-tight)}.features-grid{gap:var(--spacing-4);padding:0 var(--spacing-3)}.feature-item{padding:var(--spacing-4)}.feature-item h4{font-size:var(--font-size-sm);margin-bottom:var(--spacing-2)}.feature-item p{font-size:var(--font-size-xs)}}@media (max-width:768px) and (orientation:landscape){.features-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-4)}.feature-item{padding:var(--spacing-4)}}.availability-calendar{background-color:var(--color-white);padding:var(--spacing-16) var(--spacing-8);border-radius:var(--border-radius-none);box-shadow:var(--shadow-xl);margin:var(--spacing-20) auto;max-width:var(--container-max-width);width:100%}.calendar-title-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);flex-wrap:wrap;gap:var(--spacing-4)}.calendar-title-container h2{margin:0;flex:1;min-width:200px}.admin-toggle-btn{background:0 0;border:none;cursor:pointer;padding:var(--spacing-2);border-radius:var(--border-radius-full);transition:all var(--transition-base);opacity:.6;font-size:var(--font-size-xl);width:44px;height:44px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.admin-toggle-btn:hover{opacity:1;background-color:rgba(119,51,47,.1);transform:scale(1.1)}.admin-toggle-btn.active{opacity:1;background-color:rgba(119,51,47,.2)}.pencil-icon{display:block;font-size:var(--font-size-base)}.calendar-container{max-width:800px;margin:0 auto;width:100%}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding:0 var(--spacing-4);flex-wrap:wrap;gap:var(--spacing-4)}.calendar-header h3{font-size:var(--font-size-3xl);color:var(--theme-primary);margin:0;font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);flex:1;text-align:center;min-width:200px}.calendar-nav{background-color:transparent;border:var(--border-width-base) solid var(--theme-secondary);color:var(--color-text-dark);padding:var(--spacing-3) var(--spacing-5);font-size:var(--font-size-xl);cursor:pointer;transition:all var(--transition-base);border-radius:var(--border-radius-none);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.calendar-nav:hover{background-color:var(--theme-secondary);color:var(--color-white);transform:translateY(-2px)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:var(--color-gray-300);border:var(--border-width-thin) solid var(--color-gray-300);margin-bottom:var(--spacing-8);width:100%;overflow-x:auto}.calendar-day-header{background-color:var(--theme-primary);color:var(--color-white);padding:var(--spacing-4) var(--spacing-2);text-align:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.calendar-day{background-color:var(--color-white);padding:var(--spacing-4) var(--spacing-2);text-align:center;cursor:pointer;transition:all var(--transition-base);min-height:60px;display:flex;align-items:center;justify-content:center;position:relative;border:var(--border-width-thin) solid transparent;font-size:var(--font-size-base)}.calendar-day:hover{background-color:var(--color-gray-50);transform:scale(1.05)}.calendar-day.available{background-color:#e8f5e8;color:#2e7d32}.calendar-day.available:hover{background-color:#c8e6c9}.calendar-day.occupied{background-color:#ffebee;color:#c62828;cursor:not-allowed}.calendar-day.occupied:hover{background-color:#ffcdd2;transform:none}.calendar-day.maintenance{background-color:#fff3e0;color:#ef6c00}.calendar-day.maintenance:hover{background-color:#ffe0b2}.calendar-day.other-month{color:#5a6268;background-color:var(--color-gray-50)}.calendar-day.other-month:hover{background-color:var(--color-gray-100);transform:none}.calendar-day.today{border:var(--border-width-base) solid var(--theme-secondary);font-weight:var(--font-weight-bold)}.calendar-day.admin-mode{border:var(--border-width-base) dashed var(--theme-secondary)}.calendar-day.admin-mode:hover{background-color:#fff8e1}.calendar-legend{display:flex;justify-content:center;gap:var(--spacing-8);margin-top:var(--spacing-4);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm)}.legend-color{width:20px;height:20px;border-radius:var(--border-radius-sm);border:var(--border-width-thin) solid rgba(0,0,0,.1)}.legend-color.available{background-color:#e8f5e8}.legend-color.occupied{background-color:#ffebee}.legend-color.maintenance{background-color:#fff3e0}.admin-panel{display:none;margin-top:var(--spacing-8);padding:var(--spacing-6);background:var(--color-gray-50);border-radius:var(--border-radius-lg);border:var(--border-width-base) solid var(--theme-primary)}.admin-panel.active{display:block}.admin-panel h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-xl)}.admin-controls{display:flex;gap:var(--spacing-4);flex-wrap:wrap;margin-bottom:var(--spacing-4)}.admin-btn{padding:var(--spacing-3) var(--spacing-6);background:var(--theme-primary);color:var(--color-white);border:none;border-radius:var(--border-radius-base);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-base);min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.admin-btn:hover{background:var(--theme-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.admin-btn.save-btn{background:var(--color-success)}.admin-btn.save-btn:hover{background:#218838}.admin-btn.logout-btn{background:var(--color-error)}.admin-btn.logout-btn:hover{background:#c82333}.admin-info{margin-top:var(--spacing-4);padding:var(--spacing-4);background:var(--color-white);border-radius:var(--border-radius-base);font-size:var(--font-size-sm);color:var(--color-text-secondary)}@media (max-width:1024px){.availability-calendar{padding:var(--spacing-12) var(--spacing-6);margin:var(--spacing-16) auto}.calendar-header h3{font-size:var(--font-size-2xl)}.calendar-day{min-height:50px;padding:var(--spacing-3) var(--spacing-1);font-size:var(--font-size-sm)}.calendar-day-header{padding:var(--spacing-3) var(--spacing-1);font-size:var(--font-size-xs)}}@media (max-width:768px){.availability-calendar{padding:var(--spacing-10) var(--spacing-4);margin:var(--spacing-12) auto}.calendar-title-container{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.calendar-title-container h2{width:100%;text-align:center}.calendar-header{flex-wrap:wrap;gap:var(--spacing-3)}.calendar-header h3{font-size:var(--font-size-xl);width:100%;text-align:center;order:2}.calendar-nav{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-lg);order:1}.calendar-nav:last-of-type{order:3}.calendar-day-header{padding:var(--spacing-3) var(--spacing-1);font-size:var(--font-size-xs)}.calendar-day{min-height:45px;padding:var(--spacing-2) var(--spacing-1);font-size:var(--font-size-xs)}.calendar-legend{gap:var(--spacing-4);font-size:var(--font-size-xs)}.admin-panel{padding:var(--spacing-5)}.admin-controls{flex-direction:column}.admin-btn{width:100%}}@media (max-width:480px){.availability-calendar{padding:var(--spacing-8) var(--spacing-3);margin:var(--spacing-10) auto}.calendar-title-container h2{font-size:var(--font-size-xl)}.calendar-header h3{font-size:var(--font-size-lg)}.calendar-nav{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-base);width:40px;height:40px}.calendar-day-header{padding:var(--spacing-2) 2px;font-size:.65rem}.calendar-day{min-height:40px;padding:var(--spacing-2) 2px;font-size:.7rem}.calendar-legend{flex-direction:column;gap:var(--spacing-2);font-size:var(--font-size-xs);align-items:flex-start}.admin-panel{padding:var(--spacing-4)}.admin-panel h3{font-size:var(--font-size-lg)}}.testimonials{padding:var(--spacing-16) var(--spacing-8);margin-bottom:var(--spacing-20);max-width:var(--container-max-width);margin-left:auto;margin-right:auto;width:100%}.testimonials h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-8);margin-top:var(--spacing-8)}.testimonial{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:all var(--transition-base);border:var(--border-width-thin) solid rgba(119,51,47,.1);display:flex;flex-direction:column;min-height:250px}.testimonial:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:rgba(119,51,47,.2)}.testimonial-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-4);font-weight:var(--font-weight-semibold);color:var(--theme-primary);font-family:var(--font-family-heading)}.testimonial p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4);color:var(--color-text-primary);flex:1}.testimonial p strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.testimonial-author{font-size:var(--font-size-sm);font-style:italic;color:var(--color-text-secondary);margin-top:auto;padding-top:var(--spacing-4);border-top:var(--border-width-thin) solid var(--color-gray-200)}@media (max-width:1024px){.testimonials{padding:var(--spacing-12) var(--spacing-6);margin-bottom:var(--spacing-16)}.testimonials h2{font-size:var(--font-size-3xl)}.testimonial-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-6)}}@media (max-width:768px){.testimonials{padding:var(--spacing-10) var(--spacing-4);margin-bottom:var(--spacing-12)}.testimonials h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8);padding:0 var(--spacing-4)}.testimonial-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.testimonial{padding:var(--spacing-6);min-height:auto}.testimonial-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-3)}.testimonial p{font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin-bottom:var(--spacing-3)}.testimonial-author{font-size:var(--font-size-xs)}}@media (max-width:480px){.testimonials{padding:var(--spacing-8) var(--spacing-3);margin-bottom:var(--spacing-10)}.testimonials h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.testimonial{padding:var(--spacing-5)}.testimonial-title{font-size:var(--font-size-base);margin-bottom:var(--spacing-2)}.testimonial p{font-size:var(--font-size-xs);margin-bottom:var(--spacing-2)}.testimonial-author{font-size:.7rem;padding-top:var(--spacing-3)}}.amenities{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;width:100%;color:var(--color-text-primary)}.amenities h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-8);margin-top:var(--spacing-8)}.amenity-category{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid rgba(119,51,47,.1);transition:all var(--transition-base)}.amenity-category:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:rgba(119,51,47,.2)}.amenity-category h3{font-size:var(--font-size-2xl);color:var(--theme-primary);margin-bottom:var(--spacing-6);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);border-bottom:var(--border-width-base) solid var(--theme-primary);padding-bottom:var(--spacing-2)}.amenity-category ul{list-style:none;padding:0;margin:0}.amenity-category li{padding:var(--spacing-2) 0;padding-left:var(--spacing-6);position:relative;color:var(--color-text-primary);line-height:var(--line-height-normal);font-size:var(--font-size-base);font-weight:var(--font-weight-normal)}.amenity-category li::before{content:"✓";position:absolute;left:0;color:var(--theme-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}@media (max-width:1024px){.amenities{padding:var(--spacing-12) var(--spacing-6)}.amenities h2{font-size:var(--font-size-3xl)}.amenities-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-6)}.amenity-category{padding:var(--spacing-6)}.amenity-category h3{font-size:var(--font-size-xl)}}@media (max-width:768px){.amenities{padding:var(--spacing-10) var(--spacing-4)}.amenities h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8);padding:0 var(--spacing-4)}.amenities-grid{grid-template-columns:1fr;gap:var(--spacing-6);margin:var(--spacing-8) 0}.amenity-category{padding:var(--spacing-6);margin:0}.amenity-category h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-4)}.amenity-category li{font-size:var(--font-size-sm);margin-bottom:var(--spacing-1)}}@media (max-width:480px){.amenities{padding:var(--spacing-8) var(--spacing-3)}.amenities h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.amenity-category{padding:var(--spacing-5)}.amenity-category h3{font-size:var(--font-size-base)}.amenity-category li{font-size:var(--font-size-xs);padding-left:var(--spacing-5)}}.bathrooms-gallery,.rooms-gallery{padding:var(--spacing-16) var(--spacing-8);background:var(--color-gray-50);width:100%;max-width:100%;margin:0 auto;color:var(--color-text-primary)}.bathrooms-gallery h2,.rooms-gallery h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-4);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.bathrooms-gallery>p,.rooms-gallery>p{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-8);max-width:600px;margin-left:auto;margin-right:auto}.bathrooms-carousel,.rooms-carousel{max-width:100%;margin:0 auto;width:100%}.bathroom-slide,.room-slide{display:flex;margin-bottom:var(--spacing-12);padding:0;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;width:100%;max-width:100%;gap:0}.bathroom-info,.room-info{padding:var(--spacing-8);min-width:300px;width:40%;display:flex;flex-direction:column}.bathroom-info h3,.room-info h3{font-size:var(--font-size-2xl);color:var(--theme-primary);margin-bottom:var(--spacing-4);font-family:var(--font-family-heading)}.bathroom-info p,.room-info p{color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4);flex:1}.bathroom-features,.room-features{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-top:var(--spacing-4)}.bathroom-features span,.room-features span{background:var(--color-gray-50);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-gray-200);font-weight:var(--font-weight-normal)}.bathroom-carousel-container,.room-carousel-container{width:60%;position:relative;margin:0;padding:var(--spacing-4)}.bathroom-carousel-container .carousel-wrapper,.room-carousel-container .carousel-wrapper{width:100%;position:relative;overflow:hidden;height:400px;border-radius:var(--border-radius-md)}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{width:100%;height:400px;object-fit:cover;display:none;border-radius:var(--border-radius-md)}.bathroom-carousel-container .carousel-image.active,.room-carousel-container .carousel-image.active{display:block}.carousel-dots{text-align:center;margin-top:var(--spacing-4);padding:0 var(--spacing-4)}.carousel-dots .dot{width:10px;height:10px;margin:0 4px;border-radius:var(--border-radius-full);background:var(--color-gray-300);display:inline-block;cursor:pointer;transition:background var(--transition-base);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.carousel-dots .dot.active{background:var(--theme-primary)}@media (max-width:1024px){.bathrooms-gallery,.rooms-gallery{padding:var(--spacing-12) var(--spacing-6)}.bathrooms-gallery h2,.rooms-gallery h2{font-size:var(--font-size-3xl)}.bathroom-info,.room-info{padding:var(--spacing-6);min-width:250px}.bathroom-carousel-container,.room-carousel-container{padding:var(--spacing-3)}.bathroom-carousel-container .carousel-wrapper,.room-carousel-container .carousel-wrapper{height:350px;border-radius:var(--border-radius-md)}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{height:350px;border-radius:var(--border-radius-md)}}@media (max-width:768px){html body .bathrooms-gallery,html body .rooms-gallery{padding:var(--spacing-10) var(--spacing-4);background:var(--color-gray-50);width:100%;max-width:100%;margin:0 auto;overflow-x:hidden}.bathrooms-gallery h2,.rooms-gallery h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-3);padding:0 var(--spacing-4)}.bathrooms-gallery>p,.rooms-gallery>p{font-size:var(--font-size-base);margin-bottom:var(--spacing-6);padding:0 var(--spacing-4)}html body .bathrooms-carousel,html body .rooms-carousel{max-width:100%;margin:0 auto;width:100%;overflow:hidden;padding:0 var(--spacing-4)}html body .bathroom-slide,html body .room-slide{display:block;margin-bottom:var(--spacing-8);padding:0;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;width:100%;max-width:100%;margin-left:0;margin-right:0}html body .bathroom-info,html body .room-info{padding:var(--spacing-6);width:100%;max-width:100%;min-width:auto}.bathroom-info h3,.room-info h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-3)}.bathroom-info p,.room-info p{font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin-bottom:var(--spacing-3)}html body .bathroom-carousel-container,html body .room-carousel-container{width:100%;position:relative;margin:0;padding:var(--spacing-4)}html body .bathroom-carousel-container .carousel-wrapper,html body .room-carousel-container .carousel-wrapper{width:100%;height:300px;border-radius:var(--border-radius-md)}html body .bathroom-carousel-container .carousel-image,html body .room-carousel-container .carousel-image{width:100%;height:300px;border-radius:var(--border-radius-md)}.bathroom-features span,.room-features span{font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-2)}}@media (max-width:480px){html body .bathrooms-gallery,html body .rooms-gallery{padding:var(--spacing-8) var(--spacing-3)}.bathrooms-gallery h2,.rooms-gallery h2{font-size:var(--font-size-xl)}html body .bathrooms-carousel,html body .rooms-carousel{padding:0 var(--spacing-3)}html body .bathroom-info,html body .room-info{padding:var(--spacing-5)}.bathroom-info h3,.room-info h3{font-size:var(--font-size-lg)}.bathroom-info p,.room-info p{font-size:var(--font-size-xs)}html body .bathroom-carousel-container,html body .room-carousel-container{padding:var(--spacing-3)}html body .bathroom-carousel-container .carousel-wrapper,html body .room-carousel-container .carousel-wrapper{height:250px;border-radius:var(--border-radius-md)}html body .bathroom-carousel-container .carousel-image,html body .room-carousel-container .carousel-image{height:250px;border-radius:var(--border-radius-md)}.bathroom-features span,.room-features span{font-size:.7rem;padding:2px var(--spacing-2)}}@media (min-width:481px) and (max-width:768px){html body .bathroom-carousel-container,html body .room-carousel-container{padding:var(--spacing-4)}.bathroom-carousel-container .carousel-wrapper,.room-carousel-container .carousel-wrapper{height:350px;border-radius:var(--border-radius-md)}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{height:350px;border-radius:var(--border-radius-md)}}.rules{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;width:100%;color:var(--color-text-primary)}.rules h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.rules-container{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8);margin-top:var(--spacing-8)}.rule{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid rgba(119,51,47,.1);transition:all var(--transition-base)}.rule:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:rgba(119,51,47,.2)}.rule h3{font-size:var(--font-size-xl);color:var(--theme-primary);margin-bottom:var(--spacing-4);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);border-bottom:var(--border-width-base) solid var(--theme-primary);padding-bottom:var(--spacing-2)}.rule ul{list-style:none;padding:0;margin:0}.rule li{padding:var(--spacing-2) 0;padding-left:var(--spacing-6);position:relative;color:var(--color-text-primary);line-height:var(--line-height-normal);font-size:var(--font-size-base);font-weight:var(--font-weight-normal)}.rule li::before{content:"•";position:absolute;left:0;color:var(--theme-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl)}.booking-info{padding:var(--spacing-16) var(--spacing-8);background:var(--color-gray-50);margin:var(--spacing-16) 0;width:100%;color:var(--color-text-primary)}.booking-info h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.pricing-info{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8);max-width:var(--container-max-width);margin:0 auto}.pricing-card{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);text-align:center;border:var(--border-width-thin) solid rgba(119,51,47,.1);transition:all var(--transition-base)}.pricing-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:rgba(119,51,47,.2)}.pricing-card h3{font-size:var(--font-size-xl);color:var(--theme-primary);margin-bottom:var(--spacing-4);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold)}.pricing-card .price{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--theme-primary);margin-bottom:var(--spacing-4);line-height:var(--line-height-tight)}.pricing-card .price span{font-size:var(--font-size-lg);color:var(--color-text-secondary);font-weight:var(--font-weight-normal)}.pricing-card p{color:var(--color-text-secondary);font-size:var(--font-size-base);margin:0}@media (max-width:1024px){.rules{padding:var(--spacing-12) var(--spacing-6)}.rules h2{font-size:var(--font-size-3xl)}.rules-container{gap:var(--spacing-6)}.rule{padding:var(--spacing-6)}.booking-info{padding:var(--spacing-12) var(--spacing-6)}.booking-info h2{font-size:var(--font-size-3xl)}.pricing-info{gap:var(--spacing-6)}.pricing-card{padding:var(--spacing-6)}.pricing-card .price{font-size:var(--font-size-3xl)}}@media (max-width:768px){.rules{padding:var(--spacing-10) var(--spacing-4)}.rules h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8);padding:0 var(--spacing-4)}.rules-container{grid-template-columns:1fr;gap:var(--spacing-6)}.rule{padding:var(--spacing-6)}.rule h3{font-size:var(--font-size-lg)}.rule li{font-size:var(--font-size-sm)}.booking-info{padding:var(--spacing-10) var(--spacing-4);margin:var(--spacing-12) 0}.booking-info h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8);padding:0 var(--spacing-4)}.pricing-info{grid-template-columns:1fr;gap:var(--spacing-6);padding:0 var(--spacing-4)}.pricing-card{padding:var(--spacing-6)}.pricing-card h3{font-size:var(--font-size-lg)}.pricing-card .price{font-size:var(--font-size-2xl)}.pricing-card p{font-size:var(--font-size-sm)}}@media (max-width:480px){.rules{padding:var(--spacing-8) var(--spacing-3)}.rules h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.rule{padding:var(--spacing-5)}.rule h3{font-size:var(--font-size-base)}.rule li{font-size:var(--font-size-xs);padding-left:var(--spacing-5)}.booking-info{padding:var(--spacing-8) var(--spacing-3);margin:var(--spacing-10) 0}.booking-info h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.pricing-card{padding:var(--spacing-5)}.pricing-card h3{font-size:var(--font-size-base)}.pricing-card .price{font-size:var(--font-size-xl)}.pricing-card .price span{font-size:var(--font-size-sm)}.pricing-card p{font-size:var(--font-size-xs)}}.adventure-activities,.hiking,.mountain-biking,.pass-info,.ski,.ski-school,.summer-activities,.winter-activities{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;width:100%;color:var(--color-text-primary)}.adventure-activities h2,.hiking h2,.mountain-biking h2,.pass-info h2,.ski h2,.ski-school h2,.summer-activities h2,.winter-activities h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-8);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.adventure-activities p,.hiking p,.mountain-biking p,.pass-info p,.ski p,.ski-school p{color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4);font-size:var(--font-size-base)}.bike-image,.ski-image,.ski-school-image{width:100%;height:400px;margin-bottom:var(--spacing-8);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.bike-image img,.ski-image img,.ski-school-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.bike-image:hover img,.ski-image:hover img,.ski-school-image:hover img{transform:scale(1.05)}.ski-info{list-style:none;padding:0;margin:var(--spacing-6) 0;background:var(--color-gray-50);padding:var(--spacing-6);border-radius:var(--border-radius-lg);border-left:var(--border-width-thick) solid var(--theme-primary)}.ski-info li{padding:var(--spacing-3) 0;color:var(--color-text-primary);line-height:var(--line-height-relaxed);border-bottom:var(--border-width-thin) solid var(--color-gray-200)}.ski-info li:last-child{border-bottom:none}.ski-info li strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.ski-domain-button,.ski-school-button{text-align:center;margin-top:var(--spacing-8)}.winter-activities{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.activity-link{text-decoration:none;color:inherit;display:block;transition:all var(--transition-base)}.activity-link:hover{text-decoration:none;color:inherit;transform:translateY(-5px)}.activity{background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);overflow:hidden;transition:all var(--transition-base);height:100%;display:flex;flex-direction:column}.activity-link:hover .activity{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--theme-primary)}.activity-image{width:100%;height:200px;overflow:hidden;position:relative}.activity-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.activity-link:hover .activity-image img{transform:scale(1.1)}.activity h3{font-size:var(--font-size-xl);color:var(--theme-primary);margin:var(--spacing-4) var(--spacing-6);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold)}.activity p{padding:0 var(--spacing-6);margin-bottom:var(--spacing-6);color:var(--color-text-primary);line-height:var(--line-height-relaxed);flex:1}.ski-school-info{background:var(--color-gray-50);padding:var(--spacing-6);border-radius:var(--border-radius-lg);margin-top:var(--spacing-6);border-left:var(--border-width-thick) solid var(--theme-primary)}.ski-school-info h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-xl);font-family:var(--font-family-heading)}.ski-school-info ul{list-style:none;padding:0;margin:0}.ski-school-info li{padding:var(--spacing-2) 0;color:var(--color-text-primary);line-height:var(--line-height-relaxed);border-bottom:var(--border-width-thin) solid var(--color-gray-200)}.ski-school-info li:last-child{border-bottom:none}.ski-school-info li strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.hiking-trails{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.trail-link{text-decoration:none;color:inherit;display:block;transition:all var(--transition-base)}.trail-link:hover{text-decoration:none;color:inherit;transform:translateY(-5px)}.trail{background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);overflow:hidden;transition:all var(--transition-base);height:100%;display:flex;flex-direction:column}.trail-link:hover .trail{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--theme-primary)}.trail-image{width:100%;height:200px;overflow:hidden}.trail-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.trail-link:hover .trail-image img{transform:scale(1.1)}.trail h3{font-size:var(--font-size-xl);color:var(--theme-primary);margin:var(--spacing-4) var(--spacing-6);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold)}.trail p{padding:0 var(--spacing-6);margin-bottom:var(--spacing-2);color:var(--color-text-primary);line-height:var(--line-height-relaxed);font-size:var(--font-size-sm)}.trail p strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.trail-link-text{padding:var(--spacing-4) var(--spacing-6);margin-top:auto;color:var(--theme-primary);font-weight:var(--font-weight-semibold);text-align:right}.bike-info{background:var(--color-gray-50);padding:var(--spacing-6);border-radius:var(--border-radius-lg);margin-top:var(--spacing-6);border-left:var(--border-width-thick) solid var(--theme-primary)}.bike-info h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-xl);font-family:var(--font-family-heading)}.bike-info ul{list-style:none;padding:0;margin:0}.bike-info li{padding:var(--spacing-2) 0;color:var(--color-text-primary);line-height:var(--line-height-relaxed);border-bottom:var(--border-width-thin) solid var(--color-gray-200)}.bike-info li:last-child{border-bottom:none}.business{background:var(--color-white);padding:var(--spacing-6);border-radius:var(--border-radius-lg);margin-top:var(--spacing-4);box-shadow:var(--shadow-sm);border:var(--border-width-thin) solid var(--color-gray-200)}.business h4{color:var(--theme-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-2);font-family:var(--font-family-heading)}.business p{color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-2)}.business p strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.back-to-businesses{text-align:center;margin-top:var(--spacing-8)}.back-to-businesses .btn{display:inline-block}.section-description{text-align:center;font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-8);max-width:600px;margin-left:auto;margin-right:auto}.adventure-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.adventure-card-link{text-decoration:none;color:inherit;display:block;transition:all var(--transition-base)}.adventure-card-link:hover{text-decoration:none;color:inherit;transform:translateY(-5px)}.adventure-card{background:var(--color-white);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);transition:all var(--transition-base);height:100%;display:flex;flex-direction:column}.adventure-card-link:hover .adventure-card{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--theme-primary)}.adventure-image{width:100%;height:200px;overflow:hidden;position:relative}.adventure-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.adventure-card-link:hover .adventure-image img{transform:scale(1.1)}.adventure-content{padding:var(--spacing-6);flex:1;display:flex;flex-direction:column}.adventure-content h3{color:var(--theme-primary);font-size:var(--font-size-xl);margin-bottom:var(--spacing-3);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold)}.adventure-content p{color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4);flex:1}.adventure-business{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:var(--border-width-thin) solid var(--color-gray-200)}.adventure-business h4{color:var(--theme-primary);font-size:var(--font-size-base);margin-bottom:var(--spacing-2);font-weight:var(--font-weight-semibold)}.adventure-business p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin-bottom:0}.summer-activities.family-activities{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.pass-benefits{background:var(--color-gray-50);padding:var(--spacing-8);border-radius:var(--border-radius-lg);margin-top:var(--spacing-6);border-left:var(--border-width-thick) solid var(--theme-primary)}.pass-benefits h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-xl);font-family:var(--font-family-heading)}.pass-benefits ul{list-style:none;padding:0;margin:var(--spacing-4) 0}.pass-benefits li{padding:var(--spacing-2) 0;padding-left:var(--spacing-6);position:relative;color:var(--color-text-primary);line-height:var(--line-height-relaxed)}.pass-benefits li::before{content:"✓";position:absolute;left:0;color:var(--theme-primary);font-weight:var(--font-weight-bold)}.pass-benefits p{margin-top:var(--spacing-4);color:var(--color-text-primary)}.pass-benefits p strong{color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.pass-button-container{text-align:center;margin-top:var(--spacing-6)}.pass-button-container .btn{display:inline-block}@media (max-width:1024px){.adventure-activities,.hiking,.mountain-biking,.pass-info,.ski,.ski-school,.summer-activities,.winter-activities{padding:var(--spacing-12) var(--spacing-6)}.bike-image,.ski-image,.ski-school-image{height:350px}.adventure-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){.adventure-activities,.hiking,.mountain-biking,.pass-info,.ski,.ski-school,.summer-activities,.winter-activities{padding:var(--spacing-10) var(--spacing-4)}.adventure-activities h2,.hiking h2,.mountain-biking h2,.pass-info h2,.ski h2,.ski-school h2,.summer-activities h2,.winter-activities h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-6)}.bike-image,.ski-image,.ski-school-image{height:250px;margin-bottom:var(--spacing-6)}.adventure-grid,.hiking-trails,.summer-activities.family-activities,.winter-activities{grid-template-columns:1fr;gap:var(--spacing-4)}.activity-image,.adventure-image,.trail-image{height:180px}.activity h3,.adventure-content h3,.trail h3{font-size:var(--font-size-lg)}.section-description{font-size:var(--font-size-base);margin-bottom:var(--spacing-6)}.bike-info,.pass-benefits,.ski-info,.ski-school-info{padding:var(--spacing-4)}}@media (max-width:480px){.adventure-activities,.hiking,.mountain-biking,.pass-info,.ski,.ski-school,.summer-activities,.winter-activities{padding:var(--spacing-8) var(--spacing-3)}.adventure-activities h2,.hiking h2,.mountain-biking h2,.pass-info h2,.ski h2,.ski-school h2,.summer-activities h2,.winter-activities h2{font-size:var(--font-size-xl)}.bike-image,.ski-image,.ski-school-image{height:200px}.activity-image,.adventure-image,.trail-image{height:150px}.activity h3,.adventure-content h3,.trail h3{font-size:var(--font-size-base);margin:var(--spacing-3) var(--spacing-4)}.activity p,.adventure-content p,.trail p{padding:0 var(--spacing-4);font-size:var(--font-size-sm)}}.gallery-categories{padding:var(--spacing-12) var(--spacing-8);text-align:center;max-width:var(--container-max-width);margin:0 auto}.gallery-categories h2{font-size:var(--font-size-4xl);color:var(--theme-primary);margin-bottom:var(--spacing-8);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.category-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-3);margin-top:var(--spacing-6)}.category-btn{background-color:transparent;border:var(--border-width-base) solid rgba(119,51,47,.3);border-radius:var(--border-radius-full);padding:var(--spacing-3) var(--spacing-6);cursor:pointer;transition:all var(--transition-base);font-weight:var(--font-weight-normal);color:var(--color-text-primary);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-normal);min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.category-btn:hover{border-color:var(--theme-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.category-btn.active{background-color:var(--theme-primary);color:var(--color-white);border-color:var(--theme-primary);font-weight:var(--font-weight-semibold)}.photo-gallery{padding:var(--spacing-8) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-6)}.gallery-item{background-color:var(--color-white);overflow:hidden;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);transition:all var(--transition-base);display:flex;flex-direction:column}.gallery-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--theme-primary)}.gallery-image{width:100%;height:250px;overflow:hidden;position:relative}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base);cursor:pointer}.gallery-item:hover .gallery-image img{transform:scale(1.1)}.gallery-item p{padding:var(--spacing-4);text-align:center;margin:0;color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.lightbox{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.95);z-index:var(--z-index-lightbox);justify-content:center;align-items:center;animation:fadeIn var(--transition-base)}.lightbox.active{display:flex}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.lightbox-content{position:relative;max-width:90%;max-height:90%;display:flex;align-items:center;justify-content:center;width:auto;height:auto}.lightbox-image{max-width:95vw;max-height:95vh;object-fit:contain;border-radius:var(--border-radius-lg);width:auto;height:auto;box-shadow:var(--shadow-2xl)}.lightbox-close{position:absolute;top:var(--spacing-4);right:var(--spacing-4);color:rgba(255,255,255,.9);font-size:var(--font-size-3xl);cursor:pointer;z-index:calc(var(--z-index-lightbox) + 1);background:rgba(0,0,0,.5);width:45px;height:45px;border-radius:var(--border-radius-full);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);border:var(--border-width-thin) solid rgba(255,255,255,.3);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.lightbox-close:hover{background:rgba(0,0,0,.8);color:var(--color-white);transform:scale(1.1);border-color:rgba(255,255,255,.5)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(119,51,47,.9);color:var(--color-white);border:none;width:60px;height:60px;border-radius:var(--border-radius-full);font-size:var(--font-size-2xl);cursor:pointer;transition:all var(--transition-base);z-index:calc(var(--z-index-lightbox) + 1);display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.lightbox-nav:hover{background:var(--theme-primary);transform:translateY(-50%) scale(1.1)}.lightbox-prev{left:var(--spacing-8)}.lightbox-next{right:var(--spacing-8)}.lightbox-counter{position:absolute;bottom:var(--spacing-6);left:50%;transform:translateX(-50%);color:var(--color-white);background:rgba(0,0,0,.8);padding:var(--spacing-3) var(--spacing-5);border-radius:var(--border-radius-full);font-size:var(--font-size-base);backdrop-filter:blur(10px)}@media (max-width:1024px){.gallery-categories{padding:var(--spacing-10) var(--spacing-6)}.photo-gallery{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-5);padding:var(--spacing-6) var(--spacing-6)}.gallery-image{height:220px}.lightbox-image{max-width:90vw;max-height:90vh}}@media (max-width:768px){.gallery-categories{padding:var(--spacing-8) var(--spacing-4)}.gallery-categories h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-6)}.category-buttons{gap:var(--spacing-2)}.category-btn{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm)}.photo-gallery{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-4);padding:var(--spacing-6) var(--spacing-4)}.gallery-image{height:200px}.gallery-item p{padding:var(--spacing-3);font-size:var(--font-size-xs)}.lightbox-content{max-width:95%;max-height:95%}.lightbox-close{top:-40px;right:var(--spacing-2);font-size:var(--font-size-2xl);width:40px;height:40px}.lightbox-nav{width:50px;height:50px;font-size:var(--font-size-xl)}.lightbox-prev{left:var(--spacing-4)}.lightbox-next{right:var(--spacing-4)}.lightbox-counter{font-size:var(--font-size-sm);padding:var(--spacing-2) var(--spacing-4);bottom:var(--spacing-4)}}@media (max-width:480px){.gallery-categories{padding:var(--spacing-6) var(--spacing-3)}.gallery-categories h2{font-size:var(--font-size-xl)}.category-btn{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}.photo-gallery{grid-template-columns:1fr;gap:var(--spacing-4);padding:var(--spacing-6) var(--spacing-3)}.gallery-image{height:250px}.lightbox-content{max-width:98%;max-height:98%}.lightbox-close{top:-35px;right:0;font-size:var(--font-size-xl);width:35px;height:35px}.lightbox-nav{width:45px;height:45px;font-size:var(--font-size-lg)}.lightbox-prev{left:var(--spacing-2)}.lightbox-next{right:var(--spacing-2)}.lightbox-counter{font-size:var(--font-size-xs);padding:var(--spacing-2) var(--spacing-3)}}@media (min-width:1200px){.lightbox-image{max-width:85vw;max-height:85vh}}@media (min-width:1600px){.lightbox-image{max-width:80vw;max-height:80vh}}.contact-info{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;width:100%}.contact-info h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.contact-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.contact-item{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);text-align:center;transition:all var(--transition-base)}.contact-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--theme-primary)}.contact-item h3{color:var(--theme-primary);margin-bottom:var(--spacing-4);font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);position:relative;padding-bottom:var(--spacing-3)}.contact-item h3::after{content:"";position:absolute;width:40px;height:2px;background:var(--theme-primary);bottom:0;left:50%;transform:translateX(-50%)}.contact-item p{color:var(--color-text-primary);margin:var(--spacing-2) 0;line-height:var(--line-height-relaxed);font-size:var(--font-size-base)}.contact-item p:first-of-type{font-weight:var(--font-weight-semibold);color:var(--color-text-dark)}.contact-form{padding:var(--spacing-16) var(--spacing-8);max-width:var(--container-max-width);margin:0 auto;width:100%}.contact-form h2{font-size:var(--font-size-4xl);color:var(--theme-primary);text-align:center;margin-bottom:var(--spacing-12);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.contact-form form{background:var(--color-white);padding:var(--spacing-12);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--color-gray-200);max-width:800px;margin:0 auto}.form-group{margin-bottom:var(--spacing-6)}.form-group label{display:block;margin-bottom:var(--spacing-2);color:var(--color-text-dark);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-normal)}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-4);border:var(--border-width-base) solid var(--color-gray-300);border-radius:var(--border-radius-base);font-size:var(--font-size-base);font-family:var(--font-family-primary);background:var(--color-white);color:var(--color-text-primary);transition:all var(--transition-base);-webkit-tap-highlight-color:transparent}.form-group input:focus,.form-group textarea:focus{outline:0;border-color:var(--theme-primary);box-shadow:0 0 0 3px rgba(119,51,47,.1)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-gray-400)}.form-group textarea{resize:vertical;min-height:120px;line-height:var(--line-height-relaxed)}.date-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-4)}.date-inputs>div{display:flex;flex-direction:column}.date-inputs label{margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.submit-btn{background-color:var(--theme-primary);color:var(--color-white);border:var(--border-width-base) solid var(--theme-primary);padding:var(--spacing-4) var(--spacing-12);font-size:var(--font-size-base);border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--transition-base);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;width:100%;min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.submit-btn:hover{background-color:var(--theme-primary-dark);border-color:var(--theme-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-primary)}.submit-btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.submit-btn:focus{outline:2px solid var(--theme-primary);outline-offset:2px}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-btn:disabled:hover{transform:none;box-shadow:var(--shadow-md)}.form-message{padding:var(--spacing-4) var(--spacing-6);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-6);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:center;animation:slideDown .3s ease-out;max-width:800px;margin-left:auto;margin-right:auto}.form-message-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.form-message-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-success-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-16) var(--spacing-8);animation:slideDown .4s ease-out}.form-success-icon{width:80px;height:80px;border-radius:50%;background-color:#2d6a4f;color:#fff;font-size:2.5rem;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-6);box-shadow:0 4px 20px rgba(45,106,79,.35)}.form-success-title{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-text);margin-bottom:var(--spacing-4)}.form-success-text{font-size:var(--font-size-base);color:var(--color-text-light);max-width:480px;line-height:1.7;margin-bottom:var(--spacing-8)}@media (max-width:1024px){.contact-form,.contact-info{padding:var(--spacing-12) var(--spacing-6)}.contact-details{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-5)}.contact-form form{padding:var(--spacing-10)}}@media (max-width:768px){.contact-form,.contact-info{padding:var(--spacing-10) var(--spacing-4)}.contact-form h2,.contact-info h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8)}.contact-details{grid-template-columns:1fr;gap:var(--spacing-4)}.contact-item{padding:var(--spacing-6)}.contact-item h3{font-size:var(--font-size-lg)}.contact-form form{padding:var(--spacing-6)}.date-inputs{grid-template-columns:1fr;gap:var(--spacing-4)}.form-group{margin-bottom:var(--spacing-5)}.form-group input,.form-group textarea{padding:var(--spacing-3);font-size:var(--font-size-sm)}.submit-btn{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-sm)}}@media (max-width:480px){.contact-form,.contact-info{padding:var(--spacing-8) var(--spacing-3)}.contact-form h2,.contact-info h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.contact-item{padding:var(--spacing-5)}.contact-item h3{font-size:var(--font-size-base)}.contact-item p{font-size:var(--font-size-sm)}.contact-form form{padding:var(--spacing-5)}.form-group label{font-size:var(--font-size-sm)}.form-group input,.form-group textarea{padding:var(--spacing-3);font-size:var(--font-size-sm)}.submit-btn{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-sm)}}.scroll-to-top{position:fixed!important;bottom:30px!important;right:30px!important;width:40px!important;height:40px!important;background-color:var(--color-primary,#77332f)!important;color:#fff!important;border:none!important;border-radius:50%!important;cursor:pointer!important;display:none!important;align-items:center!important;justify-content:center!important;font-size:20px!important;z-index:99999!important;transition:all .3s ease!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;opacity:0!important;transform:translateY(20px)!important;pointer-events:none!important;visibility:hidden!important}.scroll-to-top.visible{display:flex!important;opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important;visibility:visible!important}.scroll-to-top:hover{background-color:var(--color-primary-dark,#5a2522)!important;transform:translateY(-3px)!important;box-shadow:0 6px 16px rgba(0,0,0,.2)!important}.scroll-to-top:active{transform:translateY(-1px)!important;box-shadow:0 2px 8px rgba(0,0,0,.15)!important}.scroll-to-top:focus{outline:2px solid var(--color-primary,#77332F)!important;outline-offset:2px!important}.scroll-to-top svg{width:20px!important;height:20px!important;fill:currentColor!important;stroke:currentColor!important}@media (max-width:768px){.scroll-to-top{bottom:20px!important;right:20px!important;width:36px!important;height:36px!important;font-size:18px!important}.scroll-to-top svg{width:18px!important;height:18px!important}}@media (max-width:480px){.scroll-to-top{bottom:15px!important;right:15px!important;width:32px!important;height:32px!important;font-size:16px!important}.scroll-to-top svg{width:16px!important;height:16px!important}}.p-0{padding:var(--spacing-0)}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-5{padding:var(--spacing-5)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.m-0{margin:var(--spacing-0)}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.m-5{margin:var(--spacing-5)}.m-6{margin:var(--spacing-6)}.m-8{margin:var(--spacing-8)}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.w-full{width:100%}.w-screen{width:100vw}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}body.winter-theme .description{background:var(--theme-bg-gradient)}body.winter-theme h2{color:var(--theme-primary)}body.winter-theme .season-card.winter{border-left-color:var(--theme-primary)}body.winter-theme .season-card.summer{border-left-color:var(--theme-secondary)}body.winter-theme .btn-primary{background-color:var(--theme-primary)}body.winter-theme .btn-primary:hover{background-color:var(--theme-primary-dark)}body.summer-theme .description{background:var(--theme-bg-gradient)}body.summer-theme h2{color:var(--theme-primary)}body.summer-theme .season-card.winter{border-left-color:var(--theme-primary)}body.summer-theme .season-card.summer{border-left-color:var(--theme-secondary)}body.summer-theme .btn-primary{background-color:var(--theme-primary)}body.summer-theme .btn-primary:hover{background-color:var(--theme-primary-dark)}body.season-transitioning{transition:all var(--transition-slow)}body.winter-theme .hero:not([style*=background-image]){background-image:var(--theme-hero-bg)}body.summer-theme .hero:not([style*=background-image]){background-image:var(--theme-hero-bg)}@media (max-width:768px){body,html{overflow-x:hidden;width:100%;max-width:100vw}main>section:not(.hero):not(.availability-calendar){padding:0 1rem;margin:2rem auto}h2{font-size:1.8rem;padding:0 1rem}h3{font-size:1.2rem}}@media (max-width:900px){header{padding:1rem 1.5rem}.nav-container{width:100%;justify-content:space-between}.logo{font-size:1.6rem;order:1}.burger-menu{display:block;order:2}nav{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:#fff;box-shadow:-5px 0 15px rgba(0,0,0,.1);transition:right .3s ease;z-index:999;padding-top:80px}nav.active{right:0}nav ul{flex-direction:column;padding:0;margin:0}nav ul li{margin:0;border-bottom:1px solid #f0f0f0}nav ul li a{display:block;padding:1rem 1.5rem;font-size:.9rem}}@media (max-width:1024px) and (min-width:901px){header{padding:1rem 1.5rem}.nav-container{width:100%;justify-content:space-between}.logo{font-size:1.6rem}nav{display:block}nav ul{display:flex;flex-direction:row;gap:.5rem}nav ul li{margin:0}nav ul li a{font-size:.75rem;padding:.5rem .6rem;white-space:nowrap}.burger-menu{display:none}}@media (max-width:768px){header{padding:.8rem 1rem}.logo{font-size:1.4rem}.logo::after{font-size:.6rem}.burger-menu{display:block}nav{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:#fff;box-shadow:-5px 0 15px rgba(0,0,0,.1);transition:right .3s ease;z-index:999;padding-top:80px}nav.active{right:0}nav ul{flex-direction:column;padding:0;margin:0}nav ul li{margin:0;border-bottom:1px solid #f0f0f0}nav ul li a{display:block;padding:1rem 1.5rem;font-size:.9rem}}@media (max-width:480px){.logo{font-size:1.2rem}.burger-menu{width:40px;height:40px;padding:8px}}@media (max-width:1024px){.hero{height:80vh;min-height:500px}.hero h1{font-size:3rem}.hero p{font-size:1.3rem}}@media (max-width:768px){.hero{height:70vh;min-height:450px;background-attachment:scroll}.hero h1{font-size:2.5rem;padding:0 1rem}.hero p{font-size:1.1rem;padding:0 1.5rem}.season-buttons{top:5.5rem;right:1rem}.season-btn{width:42px;height:42px}}@media (max-width:480px){.hero{height:60vh;min-height:400px}.hero h1{font-size:2rem;line-height:1.2}.hero p{font-size:1rem}.season-buttons{top:4.5rem;right:.8rem;gap:.3rem}.season-btn{width:38px;height:38px}.season-icon{font-size:.9rem}}@media (max-width:1024px){.description{padding:4rem 1.5rem}.description h2{font-size:2.5rem}.description-subtitle{font-size:1.1rem}.features-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width:768px){.description{padding:3rem 1rem;margin:2rem 0}.description h2{font-size:2rem}.description-subtitle{font-size:1rem}.description-text{font-size:.95rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.feature-item{padding:1.5rem}.feature-item h4{font-size:1.1rem}}@media (max-width:480px){.description{padding:2rem .8rem}.description h2{font-size:1.8rem}.description-subtitle{font-size:.95rem}.description-text{font-size:.9rem}.feature-item{padding:1.2rem}.feature-item h4{font-size:1rem}.feature-item p{font-size:.9rem}}@media (max-width:1024px){.chalet-carousel{padding:3.5rem 1.5rem}.chalet-carousel h2{font-size:2.2rem}.carousel-wrapper{height:450px}.carousel-slide{height:450px}.carousel-slide img{height:450px}}@media (max-width:768px){.chalet-carousel{padding:3rem 1rem}.chalet-carousel h2{font-size:2rem}.chalet-carousel p{font-size:1rem}.carousel-wrapper{height:350px}.carousel-slide{height:350px}.carousel-slide img{height:350px}.carousel-btn{width:40px;height:40px;font-size:1.2rem}.carousel-categories{gap:.5rem}.category-btn{padding:.6rem 1rem;font-size:.85rem}}@media (max-width:480px){.chalet-carousel{padding:2rem .5rem}.chalet-carousel h2{font-size:1.6rem}.chalet-carousel p{font-size:.9rem}.carousel-wrapper{height:250px}.carousel-slide{height:250px}.carousel-slide img{height:250px;object-fit:cover}.slide-caption{padding:1rem .8rem .6rem;font-size:.85rem}.carousel-btn{width:35px;height:35px;font-size:1rem}.carousel-btn.prev{left:8px}.carousel-btn.next{right:8px}.category-btn{padding:.5rem .8rem;font-size:.75rem}}@media (max-width:1024px){.seasonal-activities{padding:3rem 1.5rem}.seasonal-activities h2{font-size:2.2rem}.seasonal-grid{gap:2rem}}@media (max-width:768px){.seasonal-activities{padding:2.5rem 1rem}.seasonal-activities h2{font-size:1.8rem}.seasonal-grid{grid-template-columns:1fr;gap:2rem}.season-card{padding:2rem 1.5rem}.season-card h3{font-size:1.5rem}.season-card ul{font-size:.95rem}}@media (max-width:480px){.seasonal-activities{padding:2rem .8rem}.seasonal-activities h2{font-size:1.6rem}.season-card{padding:1.5rem 1rem}.season-card h3{font-size:1.3rem}.season-card p{font-size:.9rem}.season-card ul{font-size:.85rem;padding-left:1.2rem}.btn-primary{padding:.7rem 1.2rem;font-size:.85rem}}@media (max-width:1024px){.testimonials{padding:3rem 1.5rem}.testimonials h2{font-size:2.2rem}.testimonial-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width:768px){.testimonials{padding:2.5rem 1rem}.testimonials h2{font-size:1.8rem}.testimonial-grid{grid-template-columns:1fr;gap:1.5rem}.testimonial{padding:1.5rem;min-height:auto}.testimonial-title{font-size:1.1rem}.testimonial p{font-size:.95rem}.testimonial-author{font-size:.85rem}}@media (max-width:480px){.testimonials{padding:2rem .8rem}.testimonials h2{font-size:1.6rem}.testimonial{padding:1.2rem}.testimonial-title{font-size:1rem}.testimonial p{font-size:.9rem}.testimonial-author{font-size:.8rem}}@media (max-width:1024px){.availability-calendar{padding:2.5rem 1.5rem;margin:4rem auto}.calendar-header h3{font-size:1.6rem}.calendar-day{min-height:50px;padding:.8rem .3rem;font-size:.9rem}}@media (max-width:768px){.availability-calendar{padding:2rem 1rem;margin:3rem auto}.calendar-title-container{flex-direction:column;align-items:flex-start;gap:1rem}.calendar-title-container h2{font-size:1.6rem}.calendar-header{flex-wrap:wrap;gap:1rem}.calendar-header h3{font-size:1.4rem;width:100%;text-align:center}.calendar-nav{padding:.6rem 1rem;font-size:1rem}.calendar-day-header{padding:.8rem .3rem;font-size:.8rem}.calendar-day{min-height:45px;padding:.6rem .2rem;font-size:.85rem}.calendar-legend{gap:1rem;font-size:.85rem}.admin-panel{padding:1.5rem}.admin-controls{flex-direction:column}.admin-btn{width:100%}}@media (max-width:480px){.availability-calendar{padding:1.5rem .8rem;margin:2rem auto}.calendar-title-container h2{font-size:1.4rem}.calendar-header h3{font-size:1.2rem}.calendar-nav{padding:.5rem .8rem;font-size:.9rem}.calendar-day-header{padding:.6rem .2rem;font-size:.7rem}.calendar-day{min-height:40px;padding:.5rem .1rem;font-size:.75rem}.calendar-legend{flex-direction:column;gap:.5rem;font-size:.8rem}.admin-panel{padding:1.2rem}.admin-panel h3{font-size:1.1rem}}@media (max-width:1024px){.amenities-grid,.contact-details,.pricing-info,.rules-container{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width:768px){.amenities-grid,.booking-steps,.contact-details,.pricing-info,.rules-container{grid-template-columns:1fr;gap:1.5rem}.amenity-category,.booking-step,.contact-item,.pricing-card,.rule{padding:1.5rem}}@media (max-width:480px){.amenity-category,.booking-step,.contact-item,.pricing-card,.rule{padding:1.2rem}.amenity-category h3,.contact-item h3,.pricing-card h3,.rule h3{font-size:1.1rem}.price{font-size:2rem}}@media (max-width:768px){footer{padding:2rem 1rem;text-align:center}footer p{font-size:.9rem;margin-bottom:.5rem}}@media (max-width:480px){footer{padding:1.5rem .8rem}footer p{font-size:.85rem}}@media (max-width:768px){.lightbox-content{max-width:95%;max-height:95%}.lightbox-close{top:-35px;right:5px;font-size:1.5rem;width:30px;height:30px}.lightbox-nav{width:45px;height:45px;font-size:1.2rem}.lightbox-prev{left:15px}.lightbox-next{right:15px}.lightbox-counter{font-size:.9rem;padding:8px 16px}}@media (max-width:480px){.lightbox-content{max-width:98%;max-height:98%}.lightbox-close{top:-30px;right:0;font-size:1.3rem;width:28px;height:28px}.lightbox-nav{width:40px;height:40px;font-size:1rem}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-counter{font-size:.8rem;padding:6px 12px}}@media (max-width:768px){.admin-btn,.btn-primary,.calendar-nav,.carousel-btn,button{min-height:44px;min-width:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto}}@media (max-width:768px) and (orientation:landscape){.hero{height:100vh;min-height:100vh}.hero h1{font-size:2rem}.hero p{font-size:1rem}.carousel-wrapper{height:300px}.carousel-slide{height:300px}.carousel-slide img{height:300px}}@media (max-width:1024px){.commerces,.restaurants{padding:3rem 1.5rem}.commerces h2,.restaurants h2{font-size:2.2rem}.commerce-grid,.restaurant-grid{grid-template-columns:1fr;gap:2rem}.commerce-item,.restaurant-item{margin:0}}@media (max-width:768px){.commerces,.restaurants{padding:2.5rem 1rem}.commerces h2,.restaurants h2{font-size:1.8rem}.commerce-content,.restaurant-content{padding:1.5rem}.commerce-item h3,.restaurant-item h3{font-size:1.4rem}.commerce-item p,.restaurant-item p{font-size:.95rem}.commerce-info,.restaurant-info{padding:1.2rem}.commerce-info p,.restaurant-info p{font-size:.9rem}.commerce-links,.restaurant-links{flex-direction:column;gap:.8rem}.commerce-link,.restaurant-link{width:100%;justify-content:center;padding:.9rem 1.5rem}}@media (max-width:480px){.commerces,.restaurants{padding:2rem .8rem}.commerces h2,.restaurants h2{font-size:1.6rem}.commerce-content,.restaurant-content{padding:1.2rem}.commerce-item h3,.restaurant-item h3{font-size:1.2rem}.commerce-item p,.restaurant-item p{font-size:.9rem}.commerce-image,.restaurant-image{height:180px}.commerce-info,.restaurant-info{padding:1rem}.commerce-info p,.restaurant-info p{font-size:.85rem}.commerce-link,.restaurant-link{padding:.8rem 1.2rem;font-size:.85rem}.special-badge{top:15px;right:15px;padding:8px 14px;font-size:.75rem}}@media (max-width:768px){.amenities{padding:2rem 1rem}.amenities h2{font-size:1.8rem}.bathrooms-gallery,.rooms-gallery{padding:2rem 1rem}.bathrooms-gallery h2,.rooms-gallery h2{font-size:1.8rem}.bathroom-slide,.room-slide{flex-direction:column}.bathroom-info,.room-info{width:100%;padding:1.5rem}.bathroom-carousel-container,.room-carousel-container{width:100%}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{height:250px}}@media (max-width:480px){.amenities{padding:1.5rem .8rem}.amenities h2{font-size:1.6rem}.bathrooms-gallery,.rooms-gallery{padding:1.5rem .8rem}.bathrooms-gallery h2,.rooms-gallery h2{font-size:1.6rem}.bathroom-info,.room-info{padding:1.2rem}.bathroom-info h3,.room-info h3{font-size:1.3rem}.bathroom-info p,.room-info p{font-size:.9rem}.bathroom-carousel-container .carousel-image,.room-carousel-container .carousel-image{height:200px}.carousel-btn{width:35px;height:35px;font-size:1rem}}@media (max-width:360px){.hero h1{font-size:1.8rem}.hero p{font-size:.9rem}h2{font-size:1.5rem}.description h2{font-size:1.6rem}.chalet-carousel h2{font-size:1.4rem}.seasonal-activities h2{font-size:1.4rem}.testimonials h2{font-size:1.4rem}.calendar-day{min-height:35px;font-size:.7rem}.commerce-item h3,.restaurant-item h3{font-size:1.1rem}.bathroom-info h3,.room-info h3{font-size:1.2rem}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}}@media print{.admin-panel,.burger-menu,.calendar-nav,.carousel-btn,.season-buttons,footer,header{display:none}.hero{height:auto;min-height:auto;page-break-after:always}section{page-break-inside:avoid}}