:root{--color-white: #FFFFFF;--color-khaki-light: #f5f5f4;--color-khaki: #e7e5e4;--color-brown-soft: #a6a09b;--color-brown-medium: #57534d;--color-brown-dark: #292524;--color-brown-darker: #1c1917;--bg-primary: #FFFFFF;--bg-secondary: #fafaf9;--bg-tertiary: #f5f5f4;--bg-card: #fafaf9;--bg-overlay: rgba(28, 25, 23, .6);--text-primary: #1c1917;--text-secondary: #44403b;--text-muted: #79716b;--text-on-dark: #FFFFFF;--text-on-overlay: #FFFFFF;--accent-primary: #44403b;--accent-hover: #57534d;--accent-active: #292524;--border-color: #e7e5e4;--border-color-dark: #d6d3d1;--success: #4A7C59;--warning: #D4A574;--error: #C95D63;--info: #5B7C99;--font-heading: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3rem;--font-size-hero: 4rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--line-height-loose: 2;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--spacing-0: 0;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--spacing-3xl: 6rem;--spacing-4xl: 8rem;--border-radius-none: 0;--border-radius-sm: 2px;--border-radius-md: 4px;--border-radius-lg: 6px;--border-radius-xl: 12px;--border-radius-2xl: 20px;--border-radius-full: 9999px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--shadow-xs: 0 1px 2px rgba(28, 25, 23, .05);--shadow-sm: 0 1px 3px rgba(28, 25, 23, .08);--shadow-md: 0 4px 12px rgba(28, 25, 23, .12);--shadow-lg: 0 8px 24px rgba(28, 25, 23, .15);--shadow-xl: 0 16px 48px rgba(28, 25, 23, .2);--shadow-2xl: 0 24px 64px rgba(28, 25, 23, .25);--shadow-card: var(--shadow-md);--shadow-card-hover: var(--shadow-lg);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-slower: .7s cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--breakpoint-mobile: 480px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--breakpoint-wide: 1280px;--breakpoint-ultrawide: 1536px;--z-base: 1;--z-elevated: 10;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 1000;--z-modal: 1100;--z-overlay: 1200;--z-tooltip: 1300;--container-max-width: 1200px;--container-padding: var(--spacing-md);--section-padding-y: var(--spacing-2xl);--section-padding-y-mobile: calc(var(--spacing-2xl) * .75);--grid-gap: var(--spacing-lg);--grid-gap-mobile: var(--spacing-md);--animation-duration-fast: .2s;--animation-duration-normal: .4s;--animation-duration-slow: .6s;--opacity-disabled: .5;--opacity-hover: .8;--opacity-overlay: .6;--blur-sm: 4px;--blur-md: 8px;--blur-lg: 16px}@media (max-width: 767px){:root{--font-size-hero: 2.5rem;--font-size-5xl: 2rem;--font-size-4xl: 1.75rem;--font-size-3xl: 1.5rem;--section-padding-y: calc(var(--spacing-2xl) * .75);--container-padding: var(--spacing-sm);--grid-gap: var(--spacing-md)}}@media (min-width: 768px) and (max-width: 1023px){:root{--font-size-hero: 3rem;--section-padding-y: var(--spacing-2xl)}}@media (min-width: 1280px){:root{--container-max-width: 1280px;--section-padding-y: calc(var(--spacing-2xl) * 1.25)}}@media (min-width: 1536px){:root{--container-max-width: 1400px}}@media (prefers-reduced-motion: reduce){:root{--transition-fast: 0ms;--transition-base: 0ms;--transition-slow: 0ms;--transition-slower: 0ms;--animation-duration-fast: 0ms;--animation-duration-normal: 0ms;--animation-duration-slow: 0ms}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:var(--line-height-normal);font-family:var(--font-body);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--bg-primary);overflow-x:hidden}ul[role=list],ol[role=list]{list-style:none}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}a{text-decoration:none;color:inherit}a:not([class]){text-decoration-skip-ink:auto}img,picture,svg,video{max-width:100%;height:auto;display:block}input,textarea,select{outline:none}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent-primary);outline-offset:2px}table{border-collapse:collapse;border-spacing:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-brown-soft);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-brown-medium)}::selection{background-color:var(--accent-primary);color:var(--text-on-dark)}::-moz-selection{background-color:var(--accent-primary);color:var(--text-on-dark)}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}[hidden]{display:none!important}[disabled]{cursor:not-allowed;opacity:var(--opacity-disabled)}fieldset{border:none;padding:0;margin:0}legend{padding:0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);letter-spacing:var(--letter-spacing-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary);margin:0;letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h3{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold)}h4{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}h5{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium)}h6{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.heading-hero{font-size:var(--font-size-hero);font-weight:var(--font-weight-bold);line-height:1.1;letter-spacing:var(--letter-spacing-tight)}p{margin:0;line-height:var(--line-height-relaxed);color:var(--text-secondary)}.text-lead{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--text-secondary)}.text-small{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.text-caption{font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--text-muted)}ul,ol{margin:0;padding-left:var(--spacing-lg)}li{line-height:var(--line-height-relaxed);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}li:last-child{margin-bottom:0}.list-unstyled{list-style:none;padding-left:0}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-white{color:var(--text-on-dark)}.text-accent{color:var(--accent-primary)}.text-uppercase{text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px;border-radius:2px}.link-unstyled{color:inherit;text-decoration:none}.link-unstyled:hover{color:inherit}blockquote{margin:var(--spacing-lg) 0;padding-left:var(--spacing-lg);border-left:4px solid var(--accent-primary);font-size:var(--font-size-lg);font-style:italic;color:var(--text-secondary)}blockquote cite{display:block;margin-top:var(--spacing-sm);font-size:var(--font-size-base);font-style:normal;color:var(--text-muted)}code{font-family:Monaco,Courier New,monospace;font-size:.875em;padding:2px 6px;background-color:var(--bg-tertiary);border-radius:var(--border-radius-sm);color:var(--text-primary)}pre{font-family:Monaco,Courier New,monospace;font-size:var(--font-size-sm);padding:var(--spacing-md);background-color:var(--bg-tertiary);border-radius:var(--border-radius-md);overflow-x:auto;line-height:var(--line-height-relaxed)}pre code{padding:0;background:none}@media (max-width: 767px){body{font-size:15px}.text-lead{font-size:var(--font-size-base)}blockquote{font-size:var(--font-size-base);padding-left:var(--spacing-md)}}@media (min-width: 1280px){body{font-size:17px}}.container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.container-fluid{width:100%;padding-left:var(--container-padding);padding-right:var(--container-padding)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.gap-0{gap:0}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.gap-2xl{gap:var(--spacing-2xl)}.gap-3xl{gap:var(--spacing-3xl)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.m-0{margin:0}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-2xl{margin:var(--spacing-2xl)}.m-3xl{margin:var(--spacing-3xl)}.m-auto{margin:auto}.mt-0{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mt-2xl{margin-top:var(--spacing-2xl)}.mt-3xl{margin-top:var(--spacing-3xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mb-2xl{margin-bottom:var(--spacing-2xl)}.mb-3xl{margin-bottom:var(--spacing-3xl)}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-2xl{padding:var(--spacing-2xl)}.p-3xl{padding:var(--spacing-3xl)}.py-0{padding-top:0;padding-bottom:0}.py-xs{padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.py-sm{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-xl{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.py-2xl{padding-top:var(--spacing-2xl);padding-bottom:var(--spacing-2xl)}.py-3xl{padding-top:var(--spacing-3xl);padding-bottom:var(--spacing-3xl)}.px-0{padding-left:0;padding-right:0}.px-xs{padding-left:var(--spacing-xs);padding-right:var(--spacing-xs)}.px-sm{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-xl{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.w-full{width:100%}.w-auto{width:auto}.w-screen{width:100vw}.h-full{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.max-w-xs{max-width:320px}.max-w-sm{max-width:480px}.max-w-md{max-width:640px}.max-w-lg{max-width:768px}.max-w-xl{max-width:1024px}.max-w-2xl{max-width:1280px}.max-w-full{max-width:100%}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.visible{visibility:visible}.invisible{visibility:hidden}.section{padding-top:var(--section-padding-y);padding-bottom:var(--section-padding-y)}.section-sm{padding-top:var(--spacing-2xl);padding-bottom:var(--spacing-2xl)}.section-lg{padding-top:var(--spacing-4xl);padding-bottom:var(--spacing-4xl)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-card{background-color:var(--bg-card)}.bg-accent{background-color:var(--accent-primary)}.border{border:var(--border-width-thin) solid var(--border-color)}.border-t{border-top:var(--border-width-thin) solid var(--border-color)}.border-b{border-bottom:var(--border-width-thin) solid var(--border-color)}.border-l{border-left:var(--border-width-thin) solid var(--border-color)}.border-r{border-right:var(--border-width-thin) solid var(--border-color)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--border-radius-sm)}.rounded-md{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:var(--border-radius-xl)}.rounded-full{border-radius:var(--border-radius-full)}.shadow-none{box-shadow:none}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}@media (max-width: 767px){.mobile-hidden{display:none}.mobile-block{display:block}}@media (min-width: 768px){.tablet-hidden{display:none}.tablet-block{display:block}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.desktop-hidden{display:none}.desktop-block{display:block}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}[data-animate]{opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow)}[data-animate].animated{opacity:1;transform:none}[data-animate=fade-in]{opacity:0}[data-animate=fade-in].animated{opacity:1}[data-animate=slide-in-left]{opacity:0;transform:translate(-50px)}[data-animate=slide-in-left].animated{opacity:1;transform:translate(0)}[data-animate=slide-in-right]{opacity:0;transform:translate(50px)}[data-animate=slide-in-right].animated{opacity:1;transform:translate(0)}[data-animate=slide-in-top]{opacity:0;transform:translateY(-50px)}[data-animate=slide-in-top].animated{opacity:1;transform:translateY(0)}[data-animate=slide-in-bottom]{opacity:0;transform:translateY(50px)}[data-animate=slide-in-bottom].animated{opacity:1;transform:translateY(0)}[data-animate=scale-in]{opacity:0;transform:scale(.8)}[data-animate=scale-in].animated{opacity:1;transform:scale(1)}[data-animate=scale-up]{opacity:0;transform:scale(.95)}[data-animate=scale-up].animated{opacity:1;transform:scale(1)}[data-animate].stagger-1{transition-delay:.1s}[data-animate].stagger-2{transition-delay:.2s}[data-animate].stagger-3{transition-delay:.3s}[data-animate].stagger-4{transition-delay:.4s}[data-animate].stagger-5{transition-delay:.5s}[data-animate].stagger-6{transition-delay:.6s}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-lift:active{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hover-card-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-card-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.hover-zoom{overflow:hidden}.hover-zoom img{transition:transform var(--transition-slow);will-change:transform}.hover-zoom:hover img{transform:scale(1.05)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.02)}.hover-opacity{transition:opacity var(--transition-fast)}.hover-opacity:hover{opacity:var(--opacity-hover)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0px,var(--bg-secondary) 40px,var(--bg-tertiary) 80px);background-size:1000px 100%;animation:shimmer 2s infinite linear}.page-transition-fade{animation:fadeIn var(--transition-slow)}.page-transition-slide{animation:slideInUp var(--transition-slow)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.backdrop-fade-in{animation:backdropFadeIn var(--transition-base)}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-scale-in{animation:modalScaleIn var(--transition-base)}@keyframes heroTitleIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-title-animation{animation:heroTitleIn .8s var(--ease-out) .3s both}.hero-subtitle-animation{animation:heroTitleIn .8s var(--ease-out) .6s both}.hero-button-animation{animation:heroTitleIn .8s var(--ease-out) .9s both}.gpu-accelerated{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden}.smooth-scroll{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-animate]{opacity:1!important;transform:none!important;transition:none!important}.hover-lift:hover,.hover-card-lift:hover,.hover-scale:hover,.hover-zoom:hover img{transform:none!important}}@media print{*,*:before,*:after{animation:none!important;transition:none!important}}html{scroll-behavior:smooth}.section{padding:var(--section-padding-y) 0;position:relative}.section-header{margin-bottom:var(--spacing-2xl)}.section-header.text-center{text-align:center}.section-eyebrow{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-primary);margin-bottom:var(--spacing-sm)}.section-divider{display:block;width:40px;height:1px;background:var(--border-color-dark, #d5c9bd);margin:var(--spacing-sm) 0}.text-center .section-divider{margin-inline:auto}.section-title{font-family:var(--font-heading);font-size:var(--font-size-4xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:1.15;letter-spacing:-.015em;margin-bottom:var(--spacing-sm);position:relative}.section-subtitle{font-family:var(--font-body);font-size:var(--font-size-base);color:var(--text-muted);text-align:inherit;margin-top:var(--spacing-sm);max-width:560px;line-height:var(--line-height-relaxed)}.text-center .section-subtitle{margin-inline:auto}.btn{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-decoration:none;border-radius:var(--border-radius-lg);border:var(--border-width-medium) solid transparent;cursor:pointer;transition:all var(--transition-base);text-align:center;line-height:1.5}.btn-primary,.btn-primary:visited{background-color:var(--accent-primary);color:var(--text-on-dark);border-color:var(--accent-primary)}.btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active{background-color:var(--accent-active);transform:translateY(0)}.btn-outline,.btn-outline:visited{background-color:transparent;color:var(--accent-primary);border-color:var(--accent-primary)}.btn-outline:hover{background-color:var(--accent-primary);color:var(--text-on-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-lg{padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-lg)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.btn-block{display:block;width:100%}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],input[type=password],textarea,select{background-color:var(--bg-primary);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-base);color:var(--text-primary);transition:border-color var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #8b6f471a}.container{max-width:var(--container-max-width, 1200px);margin-inline:auto;padding-inline:var(--container-padding, 1.5rem)}@media (max-width: 767px){.section-title{font-size:var(--font-size-3xl)}.section-subtitle{font-size:var(--font-size-base);margin-bottom:var(--spacing-xl)}.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}}@media (max-width: 480px){.section{padding:var(--spacing-2xl) 0}.container{padding-inline:var(--spacing-sm)}}html.no-scroll,html.no-scroll body{overflow:hidden!important;touch-action:none;overscroll-behavior:none}.slider-dots{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:var(--spacing-md);padding-bottom:8px}@media (min-width: 768px){.slider-dots{display:none}}.slider-dot{width:8px;height:8px;border-radius:50%;background-color:var(--border-color-dark);border:none;padding:0;cursor:pointer;transition:all var(--transition-base)}.slider-dot.active{width:24px;border-radius:4px;background-color:var(--accent-primary)}.nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed, 300);padding:var(--spacing-sm, 1rem) 0;transition:all var(--transition-base, .3s ease);background:transparent}.nav--scrolled{background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px #2c241814;padding:6px 0}.nav__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md, 1.5rem);min-height:48px}.nav__brand{font-family:Cinzel,Georgia,serif;font-size:1.55rem;font-weight:700;color:#fffffff2;text-decoration:none;text-shadow:0 1px 8px rgba(0,0,0,.28);transition:opacity .2s ease,color .3s ease,text-shadow .3s ease;flex-shrink:0}.nav__brand:hover{opacity:.85}.nav--scrolled .nav__brand{color:var(--text-primary, #2c2418);text-shadow:none}.nav__links{display:flex;list-style:none;gap:0;margin:0;padding:0;flex:1;justify-content:center}.nav__link{display:block;padding:.45rem .9rem;font-family:var(--font-body);font-size:var(--font-size-sm, .875rem);font-weight:500;color:#ffffffd9;text-decoration:none;text-shadow:0 1px 4px rgba(0,0,0,.25);border-radius:var(--border-radius-sm, 4px);transition:color .2s ease;position:relative}.nav__link:after{content:"";position:absolute;bottom:1px;left:50%;transform:translate(-50%);width:0;height:1.5px;background:#fff9;border-radius:1px;transition:width .25s ease}.nav__link:hover{color:#fff}.nav__link:hover:after{width:55%}.nav--scrolled .nav__link{color:var(--text-secondary, #4a3f35);text-shadow:none}.nav--scrolled .nav__link:after{background:var(--accent-primary, #8b6f47)}.nav--scrolled .nav__link:hover{color:var(--accent-primary, #8b6f47)}.nav__actions{display:flex;align-items:center;gap:var(--spacing-sm, 1rem);flex-shrink:0}.nav__phone{display:flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:.8rem;font-weight:500;color:#ffffffbf;text-decoration:none;text-shadow:0 1px 4px rgba(0,0,0,.25);transition:color .2s ease;white-space:nowrap}.nav__phone:hover{color:#fff}.nav--scrolled .nav__phone{color:var(--text-secondary, #4a3f35);text-shadow:none}.nav--scrolled .nav__phone:hover{color:var(--accent-primary, #8b6f47)}.btn-nav{display:inline-block;padding:.45rem 1.2rem;font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.04em;text-decoration:none;color:#fff;background:var(--accent-primary, #8b6f47);border:1.5px solid var(--accent-primary, #8b6f47);border-radius:var(--border-radius-md, 8px);transition:background .2s ease,transform .15s ease;white-space:nowrap}.btn-nav:hover{background:var(--accent-hover, #a68a64);border-color:var(--accent-hover, #a68a64);transform:translateY(-1px)}.nav__bottom{display:none;position:fixed;bottom:0;left:0;right:0;background:#ffffffb8;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 -8px 32px #00000014;border-top:1px solid rgba(255,255,255,.3);z-index:var(--z-fixed, 300);padding-bottom:env(safe-area-inset-bottom,0px)}.nav__bottom-links{display:flex;justify-content:space-around;align-items:center;list-style:none;margin:0;padding:0;height:68px}.nav__bottom-link{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--text-secondary, #6c5f50);gap:5px;flex:1;height:100%;transition:all .25s cubic-bezier(.2,0,0,1)}.nav__bottom-link[href^="tel:"]{color:var(--accent-primary, #8b6f47);font-weight:600}.nav__bottom-link:hover,.nav__bottom-link:active{color:var(--accent-primary, #8b6f47);transform:translateY(-2px)}.nav__bottom-icon{display:block}.nav__bottom-label{font-family:var(--font-body);font-size:.7rem;font-weight:500;text-align:center;line-height:1}@media (max-width: 1100px){.nav__phone span{display:none}}@media (max-width: 991px){.nav{display:none!important}.nav__bottom{display:block}}@media (max-width: 991px){body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}}.hero{position:relative;height:100svh;min-height:640px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.hero__bg-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.hero__bg{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background-size:cover;background-position:center;transform:scale(1.06);transition:transform .08s ease-out;will-change:transform}.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(ellipse 80% 70% at 50% 45%,#140e0833,#140e088c 55%,#0a0603d9)}.hero__overlay:after{content:"";position:absolute;bottom:0;left:0;right:0;height:38%;background:linear-gradient(to top,rgba(10,6,3,.75),transparent)}.hero__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding-inline:2rem;gap:0}.hero__location{display:flex;align-items:center;gap:1rem;font-family:var(--font-body);font-size:.65rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:#ffffff80;margin-bottom:1.8rem}.hero__location-line{display:block;width:36px;height:1px;background:#ffffff40}.hero__title-wrap{display:flex;flex-direction:column;align-items:center;gap:.7rem;margin-bottom:1.8rem}.hero__rule{width:100%;max-width:520px;height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,.35) 20%,rgba(255,255,255,.35) 80%,transparent)}.hero__title{font-family:Cinzel,Georgia,serif;font-size:clamp(2.8rem,7.5vw,6.5rem);font-weight:400;letter-spacing:.18em;color:#fff;line-height:1;text-transform:uppercase;text-shadow:0 2px 32px rgba(0,0,0,.4);margin:0;padding-inline:.5rem}.hero__tagline{font-family:var(--font-heading, "Cormorant Garamond", serif);font-style:italic;font-weight:300;font-size:clamp(1rem,2.2vw,1.4rem);color:#ffffffa6;letter-spacing:.04em;margin-bottom:2.4rem;max-width:420px}.hero__ctas{display:flex;flex-direction:column;align-items:center;gap:1rem}.btn-hero{display:inline-block;padding:0;font-family:var(--font-body, "Jost", sans-serif);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:#fff;background:transparent;border:none;position:relative}.btn-hero:after{content:"";position:absolute;bottom:-4px;left:0;height:1px;width:0;background-color:#c9a96e;transition:width .3s ease-out}.btn-hero:hover{background:transparent}.btn-hero:hover:after{width:100%}.hero__link{font-family:var(--font-body);font-size:.72rem;font-weight:400;letter-spacing:.12em;color:#ffffff61;text-decoration:none;transition:color .2s ease}.hero__link:hover{color:#ffffffb3}.hero__marquee{position:absolute;bottom:0;left:0;width:100%;overflow:hidden;border-top:1px solid rgba(255,255,255,.12);padding:.8rem 0;z-index:10}.hero__marquee-inner{display:flex;width:max-content;animation:marquee 40s linear infinite}.hero__marquee-inner span{font-family:var(--font-body, "Jost", sans-serif);font-size:.6rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:#fff6;white-space:nowrap;padding-right:2rem}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero__anim{opacity:0}.hero__anim--1{animation:heroUp .7s cubic-bezier(0,0,.2,1) .2s forwards}.hero__anim--2{animation:heroUp .8s cubic-bezier(0,0,.2,1) .45s forwards}.hero__anim--3{animation:heroUp .7s cubic-bezier(0,0,.2,1) .7s forwards}.hero__anim--4{animation:heroUp .7s cubic-bezier(0,0,.2,1) .9s forwards}.hero__anim--5{animation:heroUp .6s cubic-bezier(0,0,.2,1) 1.1s forwards}@keyframes heroUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media (max-width: 600px){.hero{min-height:100svh}.hero__title{font-size:clamp(2.2rem,12vw,3.2rem);letter-spacing:.08em}.hero__tagline{font-size:1rem;margin-bottom:1.8rem}.hero__rule{max-width:90vw}.hero__ctas{gap:.75rem}.btn-hero{font-size:.68rem}}@media (max-width: 380px){.hero__title{font-size:2rem;letter-spacing:.06em}}@media (prefers-reduced-motion: reduce){.hero__anim{animation:none;opacity:1}.hero__bg{transition:none;transform:none!important}}.rooms-section{background-color:var(--bg-primary);overflow-x:hidden;width:100%}.rooms-slider-container{width:100%;position:relative}.rooms-grid{display:flex;overflow-x:auto;overflow-y:hidden;align-items:stretch;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:var(--spacing-md);padding-bottom:var(--spacing-md);scrollbar-width:none;-ms-overflow-style:none}.rooms-grid::-webkit-scrollbar{display:none}.room-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;transition:all var(--transition-base);height:auto;display:flex;flex-direction:column}.rooms-grid .room-card{flex:0 0 100%;scroll-snap-align:start}.room-card:hover{border-color:#2c241866}.room-card__image-wrap{position:relative;overflow:hidden;height:240px;cursor:pointer}.room-card__image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.room-card:hover .room-card__image{transform:scale(1.05)}.room-card__image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base)}.room-card:hover .room-card__image-overlay{opacity:1}.room-card__zoom-hint{display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff;transform:scale(.8);transition:transform var(--transition-base)}.room-card__zoom-hint svg{width:48px;height:48px;stroke-width:1.5;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.room-card__zoom-hint span{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.room-card:hover .room-card__zoom-hint{transform:scale(1)}.gallery-icon-pill{position:absolute;bottom:16px;right:16px;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:6px 14px;border-radius:30px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:8px;box-shadow:0 4px 6px #0003}.room-card__rating{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background-color:#fffffff2;color:var(--accent-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:4px 10px;border-radius:var(--border-radius-full);box-shadow:var(--shadow-sm)}.room-card__body{padding:var(--spacing-md);display:flex;flex-direction:column;flex:1}.room-card__title{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:var(--line-height-tight);margin-bottom:var(--spacing-xs);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}.room-card__meta{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.room-card__meta-item,.room-card__meta-sep{font-size:var(--font-size-sm);color:var(--text-muted)}.room-card__desc{font-size:var(--font-size-sm);color:var(--text-muted);line-height:var(--line-height-relaxed);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:var(--spacing-sm)}.room-card__features{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--spacing-md)}.room-card__tag{font-size:.6rem;font-weight:var(--font-weight-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);background-color:transparent;border:1px solid var(--border-color);padding:4px 10px;border-radius:var(--border-radius-sm)}.room-card__tag--more{background-color:transparent;color:var(--text-primary)}.room-card__footer{margin-top:auto;padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.room-card__price-wrap{display:flex;flex-direction:column}.room-card__price{display:flex;align-items:baseline;gap:4px}.room-card__price-from{font-size:var(--font-size-xs);color:var(--text-muted)}.room-card__price-amount{font-size:var(--font-size-lg);font-weight:500;color:var(--text-primary);font-family:var(--font-heading)}.room-card__link{font-family:var(--font-body, "Jost", sans-serif);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-primary);text-decoration:none;transition:color .2s ease}.room-card__link:hover{color:var(--accent-primary)}.room-card__price-period{font-size:var(--font-size-sm);color:var(--text-muted)}.rooms-slider-dots{display:flex;justify-content:center;gap:8px;margin-top:var(--spacing-sm)}.rooms-slider-dot{width:8px;height:8px;border-radius:50%;background-color:var(--border-color);border:none;padding:0;cursor:pointer;transition:all var(--transition-base)}.rooms-slider-dot.active{background-color:var(--accent-primary);width:24px;border-radius:4px}.rooms-toggle{text-align:center;margin-top:var(--spacing-xl)}.btn-rooms-toggle{font-family:var(--font-body, "Jost", sans-serif);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-primary);background:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:.8rem 2.4rem;cursor:pointer;transition:all .2s ease;display:inline-block}.btn-rooms-toggle:hover{background:#00000005;border-color:var(--text-primary)}.gallery-modal{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000eb;z-index:10000;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease-out;overscroll-behavior:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.gallery-modal__close{position:absolute;top:20px;right:20px;background:none;border:none;color:#fff;font-size:40px;cursor:pointer;z-index:10001;width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s;padding:0;line-height:1}.gallery-modal__close:hover{background-color:#ffffff1a}.gallery-modal__content{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:1200px;margin-bottom:40px;flex:1}.gallery-modal__nav{background:#ffffff1a;color:#fff;border:none;font-size:30px;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;position:absolute;top:50%;transform:translateY(-50%);z-index:10010}.gallery-modal__nav:hover{background:#ffffff40;transform:translateY(-50%) scale(1.1)}.gallery-modal__nav.prev{left:30px}.gallery-modal__nav.next{right:30px}.gallery-modal__main-image-container{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;padding:0 80px}.gallery-modal__main-image{max-width:100%;max-height:75vh;object-fit:contain;border-radius:8px;box-shadow:0 10px 30px #00000080;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.gallery-modal__counter{position:absolute;bottom:-45px;left:50%;transform:translate(-50%);color:#ffffffb3;font-size:var(--font-size-sm);letter-spacing:2px}.gallery-modal__thumbnails{display:flex;gap:12px;overflow-x:auto;max-width:1000px;width:100%;padding:10px 5px 20px;scrollbar-width:none}.gallery-modal__thumbnails:before,.gallery-modal__thumbnails:after{content:"";margin:auto}.gallery-modal__thumbnails::-webkit-scrollbar{display:none}.gallery-modal__thumb{width:80px;height:60px;object-fit:cover;border-radius:6px;cursor:pointer;opacity:.4;transition:all .2s;flex-shrink:0}.gallery-modal__thumb:hover{opacity:.8}.gallery-modal__thumb.active{opacity:1;box-shadow:0 0 0 2px var(--accent-primary);transform:scale(1.05)}@media (min-width: 768px){.rooms-featured{display:grid;grid-template-columns:7fr 5fr;grid-template-rows:330px 330px;gap:16px;margin-bottom:56px}.rooms-featured .room-card{position:relative;border:none;border-radius:var(--border-radius-lg);background:transparent;overflow:hidden}.rooms-featured .room-card__image-wrap{position:absolute;top:0;right:0;bottom:0;left:0;height:100%!important;overflow:hidden}.rooms-featured .room-card__image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.rooms-featured .room-card:hover .room-card__image{transform:scale(1.04)}.rooms-featured .room-card__meta,.rooms-featured .room-card__desc,.rooms-featured .room-card__features,.rooms-featured .room-card__footer{display:none}.rooms-featured .room-card__body{position:absolute;bottom:0;left:0;right:0;padding:40px 48px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,transparent 100%);z-index:2}.rooms-featured .room-card__title{color:#fff;margin:0 0 12px;font-size:1.6rem;font-weight:400;letter-spacing:.04em;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.5);-webkit-line-clamp:unset;line-clamp:unset;display:block;overflow:visible;min-height:unset}.rooms-featured .room-card:nth-child(1){grid-column:1 / 2;grid-row:1 / 3}.rooms-featured .room-card:nth-child(1) .room-card__title{font-size:2.2rem}.rooms-featured .room-card:nth-child(2){grid-column:2 / 3;grid-row:1 / 2}.rooms-featured .room-card:nth-child(3){grid-column:2 / 3;grid-row:2 / 3}.rooms-slider-dots{display:none}.room-card__image-overlay{opacity:0}}@media (max-width: 767px){.rooms-slider-container{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}.rooms-grid{padding:0 var(--spacing-md) var(--spacing-md);scroll-padding-left:var(--spacing-md);gap:var(--spacing-sm)}.rooms-grid .room-card{flex:0 0 85vw;max-width:360px}.room-card__image-wrap{height:200px}.gallery-modal{padding:0;z-index:10000}.gallery-modal__close{top:10px;right:10px;background-color:#00000080}.gallery-modal__nav{width:44px;height:44px;font-size:20px;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gallery-modal__nav.prev{left:10px}.gallery-modal__nav.next{right:10px}.gallery-modal__main-image-container{padding:0;height:auto}.gallery-modal__main-image{max-height:calc(100vh - 220px);border-radius:0}.gallery-modal__thumbnails{padding:10px}.room-card__image-overlay{opacity:1;background:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 60%);justify-content:flex-end}.room-card__zoom-hint{display:none}}.all-rooms-page{min-height:100vh;background-color:var(--bg-primary);padding-bottom:var(--section-padding-y)}.all-rooms-page__header{padding:140px 0 60px;border-bottom:1px solid var(--border-color);margin-bottom:60px}.all-rooms-page__back{display:inline-block;font-family:var(--font-body);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;margin-bottom:32px;transition:color .2s ease}.all-rooms-page__back:hover{color:var(--text-primary)}.all-rooms-page__title{font-family:var(--font-heading);font-size:clamp(2.4rem,5vw,4rem);font-weight:400;color:var(--text-primary);margin:0 0 16px;line-height:1.1}.all-rooms-page__subtitle{font-family:var(--font-body);font-size:.95rem;color:var(--text-muted);max-width:480px;margin:0;line-height:1.7}.all-rooms-page__grid{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width: 640px){.all-rooms-page__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.all-rooms-page__grid{grid-template-columns:repeat(3,1fr)}.all-rooms-page__grid .room-card__image-wrap{height:280px}}.footer{background-color:var(--color-brown-darker);color:#ffffffbf;padding:var(--spacing-2xl) 0 0}.footer__grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);padding-bottom:var(--spacing-sm)}@media (min-width: 768px){.footer__grid{grid-template-columns:repeat(3,1fr)}}.footer__col{margin-bottom:var(--spacing-lg)}.footer__heading{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;margin-bottom:var(--spacing-sm)}.footer__text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:#fff9}.footer__links{list-style:none;padding:0;margin:0}.footer__links li{margin-bottom:var(--spacing-xs)}.footer__links a{font-size:var(--font-size-sm);color:#fff9;text-decoration:none;transition:color var(--transition-fast)}.footer__links a:hover{color:#fff}.footer__contacts{list-style:none;padding:0;margin:0}.footer__contacts li{font-size:var(--font-size-sm);color:#fff9;margin-bottom:var(--spacing-xs);line-height:var(--line-height-relaxed)}.footer__contacts a{color:#fff9;text-decoration:none;transition:color var(--transition-fast)}.footer__contacts a:hover{color:#fff}.footer__social{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.footer__social-link{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--border-radius-lg);background:#ffffff1a;color:#ffffffe6;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;transition:all var(--transition-fast)}.footer__social-link.instagram-link{width:40px;height:40px;padding:0;border-radius:var(--border-radius-full)}.footer__social-link.booking-dot-link{background:#0035804d;border:1px solid rgba(255,255,255,.1)}.footer__social-link:hover{background:var(--accent-primary);color:#fff}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding:var(--spacing-md) 0;text-align:center;margin-top:0}.footer__bottom p{font-size:var(--font-size-xs);color:#fff6}@media (max-width: 767px){.footer__col{text-align:left;margin-bottom:var(--spacing-lg)}.footer__social{justify-content:flex-start}.footer__links{display:grid;grid-template-columns:1fr 1fr;gap:4px var(--spacing-md)}.footer__links a,.footer__contacts a{display:inline-block;padding:6px 0;min-height:auto;line-height:1.4}}.back-to-top{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-fixed);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background-color:var(--accent-primary);color:var(--text-on-dark);border:none;border-radius:var(--border-radius-full);cursor:pointer;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(12px);transition:all var(--transition-base)}.back-to-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background-color:var(--accent-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (max-width: 991px){.back-to-top{display:none!important}}
