:root{--color-primary: #E8563A;--color-primary-dark: #D04428;--color-primary-light: #FF7A62;--color-secondary: #2D3748;--color-secondary-dark: #1A202C;--color-bg: #FAFAFA;--color-white: #FFFFFF;--color-text: #1A202C;--color-text-muted: #718096;--color-border: #E2E8F0;--color-border-dark: #CBD5E0;--color-success: #48BB78;--color-warning: #F6AD55;--color-error: #FC8181;--color-star: #F6AD55;--font-family: Inter, -apple-system, BlinkMacSystemFont, sans-serif;--font-size-base: 16px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.06);--shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07), 0 2px 4px rgba(0, 0, 0, 0.06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);--shadow-card: 0 2px 8px rgba(0, 0, 0, 0.08), 0 0 1px rgba(0, 0, 0, 0.04);--shadow-card-hover: 0 8px 24px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.08);--transition-fast: all 0.15s ease;--transition-base: all 0.25s ease;--transition-slow: all 0.4s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-tooltip: 400;--z-overlay: 500;--spacer: 8px;--container-max: 1280px;--container-pad: 24px;--sidebar-width: 300px;--btn-h-sm: 36px;--btn-h-md: 44px;--btn-h-lg: 52px;--btn-px-sm: 12px;--btn-px-md: 24px;--btn-px-lg: 32px;--btn-fz-sm: 12px;--btn-fz-md: 14px;--btn-fz-lg: 16px;--card-bg: #FFFFFF;--card-border: #E2E8F0;--card-radius: 12px;--card-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 0 1px rgba(0, 0, 0, 0.04);--card-padding: 16px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;color:#1a202c;background:#fafafa;line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block;height:auto}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}table{border-collapse:collapse;border-spacing:0}:focus-visible{outline:2px solid #e8563a;outline-offset:2px}:focus:not(:focus-visible){outline:none}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-text, #1A202C)}h1{font-size:clamp(28px,2rem + 3vw,60px)}h2{font-size:clamp(24px,1.5rem + 2.5vw,48px)}h3{font-size:clamp(20px,1.25rem + 1.8vw,36px)}h4{font-size:clamp(18px,1rem + 1.2vw,28px)}h5{font-size:clamp(16px,.9rem + .8vw,22px)}h6{font-size:clamp(14px,.875rem + .5vw,18px)}p{line-height:1.7;color:var(--color-text-muted, #718096)}strong{font-weight:700;color:var(--color-text, #1A202C)}small{font-size:14px}.section-label{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--color-primary, #E8563A);background:rgba(232,86,58,.1);padding:4px 12px;border-radius:var(--radius-full, 9999px);margin-bottom:12px;letter-spacing:.02em}.section__title{font-size:clamp(22px,1.375rem + 1.8vw,36px);font-weight:800;color:var(--color-text, #1A202C);margin-bottom:8px}.section__subtitle{font-size:clamp(16px,1rem + .3vw,18px);color:var(--color-text-muted, #718096);max-width:600px}.section__header{margin-bottom:40px}.section__header--centered{text-align:center}.section__header--centered .section__subtitle{margin:0 auto}@media(max-width: 320px){html{font-size:14px}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}100%{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-in{opacity:0;animation:fadeInUp .5s ease forwards}.animate-in:nth-child(1){animation-delay:.05s}.animate-in:nth-child(2){animation-delay:.1s}.animate-in:nth-child(3){animation-delay:.15s}.animate-in:nth-child(4){animation-delay:.2s}.animate-in:nth-child(5){animation-delay:.25s}.animate-in:nth-child(6){animation-delay:.3s}.animate-fade{animation:fadeIn .3s ease}.animate-slide-up{animation:slideUp .35s ease}.animate-scale{animation:scaleIn .3s ease}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}.animate-in,.animate-fade,.animate-slide-up,.animate-scale{opacity:1 !important;transform:none !important;animation:none !important}}.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);z-index:calc(var(--z-overlay, 500) + 100);background:var(--color-primary, #E8563A);color:var(--color-white, #FFFFFF);padding:12px 24px;border-radius:0 0 var(--radius-md, 8px) var(--radius-md, 8px);font-weight:600;font-size:14px;text-decoration:none;transition:top .2s ease;white-space:nowrap;box-shadow:var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05))}.skip-link:focus{top:0;outline:3px solid var(--color-white, #FFFFFF);outline-offset:2px}.container{max-width:1280px;margin:0 auto;padding:0 24px}@media(max-width: 768px){.container{padding:0 16px}}@media(max-width: 375px){.container{padding:0 12px}}.section{padding:80px 0}@media(max-width: 768px){.section{padding:60px 0}}@media(max-width: 375px){.section{padding:48px 0}}@media(max-width: 320px){.section{padding:40px 0}}.section__header{margin-bottom:40px}.section__header--centered{text-align:center}.section__header--centered .section__subtitle{margin:0 auto}.section__title{font-size:36px;font-weight:800;color:#1a202c;margin-bottom:8px}@media(max-width: 768px){.section__title{font-size:30px}}@media(max-width: 375px){.section__title{font-size:24px}}@media(max-width: 320px){.section__title{font-size:22px}}.section__subtitle{font-size:18px;color:#718096}@media(max-width: 768px){.section__subtitle{font-size:16px}}.section__footer{display:flex;justify-content:center;margin-top:40px}.section-header{margin-bottom:40px}.section-header.centered{text-align:center}.section-title{font-size:36px;font-weight:800;color:#1a202c;margin-bottom:8px}@media(max-width: 768px){.section-title{font-size:30px}}@media(max-width: 375px){.section-title{font-size:24px}}.section-desc{font-size:18px;color:#718096}@media(max-width: 375px){.section-desc{font-size:16px}}.grid{display:grid;gap:24px}.grid--2{grid-template-columns:repeat(2, 1fr)}.grid--3{grid-template-columns:repeat(3, 1fr)}.grid--4{grid-template-columns:repeat(4, 1fr)}@media(max-width: 768px){.grid--3,.grid--4{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 414px){.grid--2{grid-template-columns:1fr}}@media(max-width: 375px){.grid--3,.grid--4{grid-template-columns:1fr}}.tag-group{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px;padding-bottom:4px}@media(max-width: 768px){.tag-group{overflow-x:auto;flex-wrap:nowrap;-ms-overflow-style:none;scrollbar-width:none}.tag-group::-webkit-scrollbar{display:none}.tag-group{padding-bottom:8px}}.tag{display:inline-flex;align-items:center;padding:8px 16px;border-radius:9999px;border:1.5px solid #e2e8f0;font-size:14px;font-weight:500;color:#718096;background:#fff;cursor:pointer;transition:all .25s ease;white-space:nowrap;min-height:44px;min-width:44px}.tag.active,.tag:hover{border-color:#e8563a;color:#e8563a;background:rgba(232,86,58,.06)}.tag.active{background:rgba(232,86,58,.1)}.header,.navbar{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(26,32,44,.95);backdrop-filter:blur(12px);transition:all .25s ease;padding-top:env(safe-area-inset-top)}.header.scrolled,.scrolled.navbar{background:rgba(26,32,44,.98);box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06)}.header--transparent{background:rgba(0,0,0,0)}.header--transparent.scrolled{background:rgba(26,32,44,.97)}.header__inner,.navbar-inner{display:flex;align-items:center;justify-content:space-between;height:68px;gap:32px}.header__logo,.navbar-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.header__logo-icon{width:38px;height:38px;background:#e8563a;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.header__logo-text{font-size:20px;font-weight:700;color:#fff;white-space:nowrap}.header__logo-text span{color:#e8563a}.header__nav,.navbar-nav{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0;flex:1;justify-content:center}.header__nav-link{display:block;padding:8px 14px;font-size:14px;font-weight:500;color:hsla(0,0%,100%,.75);border-radius:8px;transition:all .25s ease;text-decoration:none}.header__nav-link:hover,.header__nav-link.active{color:#fff;background:hsla(0,0%,100%,.1)}.header__actions,.navbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.header__phone,.navbar-phone{display:flex;align-items:center;gap:6px;font-size:14px;color:hsla(0,0%,100%,.8);transition:all .15s ease;text-decoration:none}.header__phone:hover,.navbar-phone:hover{color:#fff}@media(max-width: 1024px){.header__phone,.navbar-phone{display:none}}.header__burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;border:none;background:hsla(0,0%,100%,.1);border-radius:8px;cursor:pointer;padding:8px;transition:all .25s ease}.header__burger span{display:block;width:100%;height:2px;background:#fff;border-radius:2px;transition:all .25s ease;transform-origin:center}.header__burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.header__burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.header__burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width: 768px){.header__burger{display:flex}}.header__mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(26,32,44,.98);padding:16px 0;border-top:1px solid hsla(0,0%,100%,.1);animation:fadeInDown .2s ease}.header__mobile-menu.open{display:block}.header__mobile-menu .header__nav-link{padding:12px 24px;border-radius:0;font-size:16px}.header__mobile-menu .header__nav-link:hover{background:hsla(0,0%,100%,.08)}@media(min-width: 769px)and (max-width: 1024px){.header__logo .header__logo-icon,.navbar-logo .header__logo-icon{width:32px;height:32px;font-size:16px}.header__logo .header__logo-text,.navbar-logo .header__logo-text{font-size:18px}.header__nav-link{padding:8px 10px;font-size:12px}}@media(max-width: 768px){.header__nav,.navbar-nav,.header__actions,.navbar-actions{display:none}.header__inner,.navbar-inner{height:60px}}@media(max-width: 375px){.header__logo .header__logo-text,.navbar-logo .header__logo-text{display:none}}.navbar.scrolled{background:rgba(26,32,44,.98);box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06)}.logo-icon{width:38px;height:38px;background:#e8563a;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.logo-text{font-size:20px;font-weight:700;color:#fff}.logo-text span{color:#e8563a}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;border:none;background:hsla(0,0%,100%,.1);border-radius:8px;cursor:pointer;padding:8px}.hamburger span{display:block;width:100%;height:2px;background:#fff;border-radius:2px;transition:all .25s ease}@media(max-width: 768px){.hamburger{display:flex}}.hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;overflow:hidden}.hero__bg{position:absolute;inset:0;z-index:0}.hero__bg img{width:100%;height:100%;object-fit:cover}.hero__overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(135deg, rgba(26, 32, 44, 0.82) 0%, rgba(26, 32, 44, 0.5) 60%, rgba(26, 32, 44, 0.2) 100%)}.hero__content{position:relative;z-index:2;max-width:820px;padding-top:80px}.hero__badge{display:inline-flex;align-items:center;gap:8px;background:hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.9);padding:8px 16px;border-radius:9999px;font-size:14px;font-weight:500;margin-bottom:24px;backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.2)}.hero__badge .dot{width:8px;height:8px;background:#48bb78;border-radius:50%;animation:pulse 2s ease-in-out infinite}.hero__title{font-size:60px;font-weight:800;color:#fff;line-height:1.1;margin-bottom:20px;letter-spacing:-0.02em}.hero__title span{color:#e8563a}.hero__subtitle{font-size:20px;color:hsla(0,0%,100%,.82);line-height:1.6;margin-bottom:36px;max-width:580px}.hero__search{margin-bottom:28px;max-width:820px}.hero__amenities{display:flex;align-items:center;gap:20px;margin-bottom:36px;flex-wrap:wrap}.hero__amenity{display:flex;align-items:center;gap:8px;color:hsla(0,0%,100%,.8);font-size:14px}.hero__amenity-icon{width:28px;height:28px;background:hsla(0,0%,100%,.15);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px}.hero__stats{display:flex;align-items:center;gap:0;background:hsla(0,0%,100%,.1);backdrop-filter:blur(8px);border-radius:16px;border:1px solid hsla(0,0%,100%,.15);padding:20px 28px;width:fit-content;flex-wrap:wrap}.hero__stat{text-align:center;padding:0 24px}.hero__stat-value{font-size:24px;font-weight:800;color:#fff;line-height:1.2}.hero__stat-label{font-size:12px;color:hsla(0,0%,100%,.65);margin-top:2px}.hero__stat-divider{width:1px;height:36px;background:hsla(0,0%,100%,.2);flex-shrink:0}@media(min-width: 769px)and (max-width: 1024px){.hero{height:80vh}.hero .hero__title{font-size:48px}}@media(max-width: 768px){.hero{height:70vh;min-height:560px}.hero__title{font-size:32px}.hero__subtitle{font-size:16px}.hero__stats{gap:0;padding:14px 16px}.hero__stat{padding:0 12px}.hero__stat-value{font-size:20px}}@media(max-width: 375px){.hero{height:60vh}.hero__title{font-size:28px}.hero__subtitle{font-size:14px;margin-bottom:24px}.hero__amenities{gap:12px}.hero__stats{width:100%;justify-content:center}}@media(max-width: 320px){.hero__title{font-size:26px}}.sidebar{width:300px;flex-shrink:0;position:sticky;top:88px;max-height:calc(100vh - 108px);overflow-y:auto;align-self:flex-start;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.sidebar::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:9999px}.sidebar__inner{background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06);padding:20px}.sidebar__title{font-size:16px;font-weight:700;color:#1a202c;margin-bottom:20px;display:flex;align-items:center;gap:8px}@media(min-width: 769px)and (max-width: 1024px){.sidebar{width:260px}}@media(max-width: 768px){.sidebar{display:none;width:100%;position:fixed;bottom:0;left:0;right:0;max-height:85vh;z-index:300;border-radius:24px 24px 0 0;box-shadow:0 -8px 32px rgba(0,0,0,.2);animation:slideUp .35s ease;top:auto;align-self:auto;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.sidebar.open{display:block}.sidebar__inner{border-radius:24px 24px 0 0;max-height:85vh;overflow-y:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}}.sidebar-title{font-size:16px;font-weight:700;color:#1a202c;margin-bottom:20px;display:flex;align-items:center;gap:8px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.footer{background:#1a202c;color:hsla(0,0%,100%,.7);padding:64px 0 0}.footer__top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid hsla(0,0%,100%,.1)}@media(max-width: 768px){.footer__top{grid-template-columns:1fr 1fr;gap:32px}}@media(max-width: 414px){.footer__top{grid-template-columns:1fr;text-align:center}}.footer__logo{display:flex;align-items:center;gap:10px;color:#fff;font-size:20px;font-weight:700;text-decoration:none;margin-bottom:16px}@media(max-width: 414px){.footer__logo{justify-content:center}}.footer__tagline{font-size:14px;color:hsla(0,0%,100%,.6);line-height:1.7;max-width:280px}@media(max-width: 414px){.footer__tagline{margin:0 auto;text-align:center}}.footer__nav{display:flex;flex-direction:column;gap:0}.footer__nav-title{font-size:14px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}.footer__nav-item{margin-bottom:0}.footer__nav-link{display:block;font-size:14px;color:hsla(0,0%,100%,.6);padding:5px 0;transition:all .15s ease;text-decoration:none}.footer__nav-link:hover{color:#fff;padding-left:4px}.footer__contacts{display:flex;flex-direction:column;gap:10px}.footer__contact-item{display:flex;align-items:center;gap:8px;font-size:14px;color:hsla(0,0%,100%,.7)}.footer__contact-item svg{flex-shrink:0;color:#e8563a}@media(max-width: 414px){.footer__contact-item{justify-content:center}}.footer__social{display:flex;gap:10px;margin-top:20px}@media(max-width: 414px){.footer__social{justify-content:center}}.footer__social-link{width:38px;height:38px;border-radius:8px;background:hsla(0,0%,100%,.08);display:flex;align-items:center;justify-content:center;color:hsla(0,0%,100%,.7);font-size:14px;text-decoration:none;transition:all .25s ease;border:1px solid hsla(0,0%,100%,.1)}.footer__social-link:hover{background:#e8563a;color:#fff;border-color:#e8563a}.footer__bottom{display:flex;align-items:center;justify-content:space-between;padding:20px 0;flex-wrap:wrap;gap:12px}@media(max-width: 414px){.footer__bottom{flex-direction:column;text-align:center}}.footer__copyright{font-size:12px;color:hsla(0,0%,100%,.4)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid hsla(0,0%,100%,.1)}@media(max-width: 768px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width: 414px){.footer-grid{grid-template-columns:1fr;text-align:center}}.footer-desc{font-size:14px;color:hsla(0,0%,100%,.55);line-height:1.7;margin-bottom:16px}.footer-logo{display:flex;align-items:center;gap:10px;color:#fff;font-size:20px;font-weight:700;text-decoration:none;margin-bottom:16px}@media(max-width: 414px){.footer-logo{justify-content:center}}.footer-col h5{font-size:14px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}.footer-col ul{display:flex;flex-direction:column;gap:0}.footer-col ul li a{display:block;font-size:14px;color:hsla(0,0%,100%,.6);padding:5px 0;transition:all .15s ease}.footer-col ul li a:hover{color:#fff}.footer-contact{display:flex;align-items:center;gap:8px;font-size:14px;color:hsla(0,0%,100%,.7);margin-bottom:8px}@media(max-width: 414px){.footer-contact{justify-content:center}}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding:20px 0;flex-wrap:wrap;gap:12px}@media(max-width: 414px){.footer-bottom{flex-direction:column;text-align:center}}.footer-bottom-links{display:flex;gap:20px;flex-wrap:wrap}.footer-bottom-links a{font-size:12px;color:hsla(0,0%,100%,.4);transition:all .15s ease;text-decoration:none}.footer-bottom-links a:hover{color:hsla(0,0%,100%,.8)}@media(max-width: 414px){.footer-bottom-links{justify-content:center}}.social-links{display:flex;gap:8px;margin-top:16px}@media(max-width: 414px){.social-links{justify-content:center}}.social-link{width:36px;height:36px;border-radius:8px;background:hsla(0,0%,100%,.08);display:flex;align-items:center;justify-content:center;color:hsla(0,0%,100%,.7);font-size:14px;transition:all .25s ease;border:1px solid hsla(0,0%,100%,.1);text-decoration:none}.social-link:hover{background:#e8563a;color:#fff}.btn,.booking-widget__btn,.filter-sheet__close,.filter__reset,.filter__apply{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 var(--btn-px-md, 24px);height:var(--btn-h-md, 44px);font-family:var(--font-family, Inter, -apple-system, BlinkMacSystemFont, sans-serif);font-size:var(--btn-fz-md, 14px);font-weight:600;line-height:1;border:2px solid rgba(0,0,0,0);border-radius:var(--radius-md, 8px);cursor:pointer;transition:var(--transition-base, all 0.25s ease);white-space:nowrap;text-decoration:none;position:relative;overflow:hidden}.btn:focus,.booking-widget__btn:focus,.filter-sheet__close:focus,.filter__reset:focus,.filter__apply:focus{outline:none}.btn:focus-visible,.booking-widget__btn:focus-visible,.filter-sheet__close:focus-visible,.filter__reset:focus-visible,.filter__apply:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.btn--primary,.booking-widget__btn,.filter__apply{background:var(--color-primary, #E8563A);color:var(--color-white, #FFFFFF);border-color:var(--color-primary, #E8563A)}.btn--primary:hover,.booking-widget__btn:hover,.filter__apply:hover{background:var(--color-primary-dark, #D04428);border-color:var(--color-primary-dark, #D04428);box-shadow:0 4px 16px rgba(232,86,58,.35);transform:translateY(-1px)}.btn--primary:active,.booking-widget__btn:active,.filter__apply:active{transform:translateY(0);box-shadow:none}.btn--secondary{background:var(--color-secondary, #2D3748);color:var(--color-white, #FFFFFF);border-color:var(--color-secondary, #2D3748)}.btn--secondary:hover{background:var(--color-secondary-dark, #1A202C);border-color:var(--color-secondary-dark, #1A202C)}.btn--ghost,.filter-sheet__close,.filter__reset{background:rgba(0,0,0,0);color:var(--color-text, #1A202C);border-color:var(--color-border, #E2E8F0)}.btn--ghost:hover,.filter-sheet__close:hover,.filter__reset:hover{border-color:var(--color-primary, #E8563A);color:var(--color-primary, #E8563A)}.btn--outline{background:rgba(0,0,0,0);color:var(--color-primary, #E8563A);border-color:var(--color-primary, #E8563A)}.btn--outline:hover{background:var(--color-primary, #E8563A);color:var(--color-white, #FFFFFF)}.btn--white{background:var(--color-white, #FFFFFF);color:var(--color-text, #1A202C);border-color:var(--color-white, #FFFFFF)}.btn--white:hover{background:hsla(0,0%,100%,.9)}.btn--sm{--btn-h: var(--btn-h-sm, 36px);--btn-px: var(--btn-px-sm, 12px);--btn-fz: var(--btn-fz-sm, 12px);height:var(--btn-h-sm, 36px);padding:0 var(--btn-px-sm, 12px);font-size:var(--btn-fz-sm, 12px);border-radius:var(--radius-sm, 4px)}.btn--lg{height:var(--btn-h-lg, 52px);padding:0 var(--btn-px-lg, 32px);font-size:var(--btn-fz-lg, 16px);border-radius:var(--radius-lg, 12px)}.btn--block,.booking-widget__btn,.filter__apply{width:100%}.btn--icon{padding:10px;border-radius:var(--radius-md, 8px);height:var(--btn-h-md, 44px);width:var(--btn-h-md, 44px)}.btn--icon svg{flex-shrink:0}.btn--icon-only,.filter-sheet__close{padding:0;height:var(--btn-h-md, 44px);width:var(--btn-h-md, 44px);border-radius:var(--radius-full, 9999px)}.btn--icon-only svg,.filter-sheet__close svg{flex-shrink:0}.btn--icon-only.btn--sm,.btn--sm.filter-sheet__close{height:var(--btn-h-sm, 36px);width:var(--btn-h-sm, 36px)}.btn--icon-only.btn--lg,.btn--lg.filter-sheet__close{height:var(--btn-h-lg, 52px);width:var(--btn-h-lg, 52px)}.btn--loading{pointer-events:none;cursor:not-allowed;opacity:.8}.btn--loading::after{content:"";position:absolute;width:16px;height:16px;border:2px solid rgba(0,0,0,0);border-top-color:currentColor;border-radius:50%;animation:spin .65s linear infinite}.btn--loading>*:not(::after){opacity:0}.btn--loading span,.btn--loading svg{opacity:0}.btn:disabled,.booking-widget__btn:disabled,.filter-sheet__close:disabled,.filter__reset:disabled,.filter__apply:disabled,.btn[aria-disabled=true],[aria-disabled=true].booking-widget__btn,[aria-disabled=true].filter-sheet__close,[aria-disabled=true].filter__reset,[aria-disabled=true].filter__apply{opacity:.5;pointer-events:none;cursor:not-allowed}@media(hover: none)and (pointer: coarse){.btn:hover,.booking-widget__btn:hover,.filter-sheet__close:hover,.filter__reset:hover,.filter__apply:hover{transform:none;box-shadow:none;opacity:.9}}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;border-radius:9999px;letter-spacing:.02em;white-space:nowrap}.badge--new{background:rgba(72,187,120,.12);color:rgb(56.3505976096,151.6494023904,96.1274900398)}.badge--sale{background:rgba(232,86,58,.12);color:#d04428}.badge--top{background:rgba(246,173,85,.15);color:rgb(217.4860335196,124.094972067,11.5139664804)}.badge--success{background:rgba(72,187,120,.12);color:rgb(56.3505976096,151.6494023904,96.1274900398)}.badge--warning{background:rgba(246,173,85,.15);color:rgb(193.2681564246,110.2765363128,10.2318435754)}.badge--error{background:rgba(252,129,129,.12);color:hsl(0,95.3488372093%,64.7058823529%)}.card-label{display:inline-flex;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;border-radius:4px;letter-spacing:.04em;text-transform:uppercase}.card-label-top{background:rgba(246,173,85,.9);color:#fff}.card-label-new{background:rgba(72,187,120,.9);color:#fff}.card-label-promo{background:#e8563a;color:#fff}.rating{display:flex;align-items:center;gap:6px}.rating__stars{display:flex;color:#f6ad55;gap:1px;font-size:14px;line-height:1}.rating__score{font-size:14px;font-weight:700;color:#1a202c}.rating__count{font-size:12px;color:#718096}.star{color:#f6ad55;display:inline-block}.star--empty{color:#cbd5e0}.stars{display:flex;align-items:center;gap:1px}.form{display:flex;flex-direction:column;gap:16px}.form__group{display:flex;flex-direction:column;gap:6px}.form__label{font-size:14px;font-weight:500;color:#1a202c}.form__input{width:100%;padding:10px 14px;font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;color:#1a202c;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;transition:all .25s ease;min-height:44px;min-width:44px;appearance:none}.form__input::placeholder{color:#718096}.form__input:focus{border-color:#e8563a;box-shadow:0 0 0 3px rgba(232,86,58,.12);outline:none}.form__input--error{border-color:#fc8181}.form__input--error:focus{box-shadow:0 0 0 3px rgba(252,129,129,.12)}.form__error{font-size:12px;color:#fc8181}.search-form{display:flex;align-items:center;background:#fff;border-radius:16px;box-shadow:0 20px 25px rgba(0,0,0,.1),0 10px 10px rgba(0,0,0,.04);overflow:hidden;padding:6px;gap:0}.search-form__group{display:flex;align-items:center;padding:8px 16px;gap:12px;flex:1;min-width:0;cursor:pointer}.search-form__group:hover{background:#fafafa;border-radius:12px}.search-form__label{font-size:11px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.search-form__input{font-size:14px;font-weight:500;color:#1a202c;background:rgba(0,0,0,0);border:none;outline:none;width:100%;padding:0;cursor:pointer}.search-form__input::placeholder{color:#718096}.search-form__input[type=date]::-webkit-calendar-picker-indicator{opacity:0}.search-form__divider{width:1px;height:36px;background:#e2e8f0;flex-shrink:0}.search-form__icon{flex-shrink:0;color:#e8563a;width:18px;height:18px}.search-form__btn{flex-shrink:0;width:52px;height:52px;background:#e8563a;border-radius:12px;border:none;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .25s ease;margin-left:4px}.search-form__btn:hover{background:#d04428;transform:scale(1.05)}@media(max-width: 768px){.search-form{flex-direction:column;border-radius:16px;padding:8px;gap:4px}.search-form__group{width:100%;padding:10px 14px}.search-form__divider{width:100%;height:1px}.search-form__btn{width:100%;height:50px;border-radius:12px;margin-left:0}}.search-card{display:flex;align-items:center;background:#fff;border-radius:16px;box-shadow:0 20px 25px rgba(0,0,0,.1),0 10px 10px rgba(0,0,0,.04);overflow:hidden;padding:6px}@media(max-width: 768px){.search-card{flex-direction:column;border-radius:16px;padding:8px}.search-card .search-field{width:100%;border-bottom:1px solid #e2e8f0}.search-card .search-field:last-child{border-bottom:none}.search-card .search-divider{display:none}.search-card .search-btn{width:100%;height:50px;border-radius:12px;margin-left:0}}.search-field{display:flex;align-items:center;padding:8px 16px;gap:12px;flex:1;min-width:0;cursor:pointer}.search-field:hover{background:#fafafa;border-radius:12px}.search-field-icon{flex-shrink:0;color:#e8563a}.search-field-content{flex:1;min-width:0}.search-field-label{font-size:11px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.search-field input{font-size:14px;font-weight:500;color:#1a202c;background:rgba(0,0,0,0);border:none;outline:none;width:100%;cursor:pointer}.search-divider{width:1px;height:36px;background:#e2e8f0;flex-shrink:0}.search-btn{flex-shrink:0;width:52px;height:52px;background:#e8563a;border-radius:12px;border:none;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .25s ease}.search-btn:hover{background:#d04428;transform:scale(1.05)}.range-slider{width:100%;height:4px;background:#e2e8f0;border-radius:9999px;appearance:none;outline:none;cursor:pointer;margin:12px 0}.range-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:#e8563a;cursor:pointer;box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06);border:2px solid #fff}.range-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#e8563a;cursor:pointer;box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06);border:2px solid #fff}.sort-select{border:1.5px solid #e2e8f0;border-radius:4px;padding:6px 12px;font-size:14px;color:#1a202c;background:#fff;cursor:pointer;outline:none;font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}.sort-select:focus{border-color:#e8563a}.check-group{display:flex;flex-direction:column;gap:8px}.check-item{display:flex;align-items:center;gap:8px;cursor:pointer}.check-item input[type=checkbox]{width:18px;height:18px;accent-color:#e8563a;cursor:pointer;flex-shrink:0}.check-item label{font-size:14px;color:#1a202c;cursor:pointer;display:flex;align-items:center;gap:6px;justify-content:space-between;width:100%}.check-item .check-count{font-size:12px;color:#718096;margin-left:auto}.rooms-selector{display:flex;gap:6px}.room-btn{flex:1;height:36px;border:1.5px solid #e2e8f0;border-radius:4px;background:#fff;font-size:14px;font-weight:500;color:#718096;cursor:pointer;transition:all .25s ease}.room-btn.active,.room-btn:hover{border-color:#e8563a;color:#e8563a;background:rgba(232,86,58,.06)}.rating-options{display:flex;flex-direction:column;gap:8px}.rating-option{display:flex;align-items:center;gap:8px;cursor:pointer}.rating-option input[type=radio]{accent-color:#e8563a;cursor:pointer}.filter{background:var(--color-white, #FFFFFF);border-radius:var(--radius-lg, 12px);padding:20px;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.06))}.filter__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.filter__title{font-size:18px;font-weight:700;color:var(--color-text, #1A202C)}.filter__section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--color-border, #E2E8F0)}.filter__section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter__section-title{font-size:14px;font-weight:600;color:var(--color-text, #1A202C);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.filter__range{position:relative;height:4px;background:var(--color-border, #E2E8F0);border-radius:var(--radius-full, 9999px);margin:16px 0}.filter__range-track{position:absolute;inset:0;background:var(--color-border, #E2E8F0);border-radius:var(--radius-full, 9999px)}.filter__range-fill{position:absolute;height:100%;background:var(--color-primary, #E8563A);border-radius:var(--radius-full, 9999px)}.filter__range-thumb{position:absolute;top:50%;transform:translateY(-50%);width:20px;height:20px;background:var(--color-white, #FFFFFF);border:2px solid var(--color-primary, #E8563A);border-radius:50%;cursor:grab;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.06));transition:var(--transition-fast, all 0.15s ease)}.filter__range-thumb:focus{outline:none}.filter__range-thumb:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.filter__range-thumb:hover,.filter__range-thumb:active{transform:translateY(-50%) scale(1.2);cursor:grabbing}.filter__price-inputs{display:flex;gap:12px;align-items:center;margin-top:8px}.filter__price-input{flex:1;display:flex;flex-direction:column;gap:4px}.filter__price-input label{font-size:11px;color:var(--color-text-muted, #718096)}.filter__price-input input{width:100%;padding:8px 10px;border:1.5px solid var(--color-border, #E2E8F0);border-radius:var(--radius-sm, 4px);font-size:14px;color:var(--color-text, #1A202C);background:var(--color-bg, #FAFAFA);transition:var(--transition-fast, all 0.15s ease)}.filter__price-input input:focus{border-color:var(--color-primary, #E8563A);outline:none;box-shadow:0 0 0 3px rgba(232,86,58,.15)}.filter__options{display:flex;flex-direction:column;gap:8px}.filter__option{display:flex;align-items:center;gap:10px;cursor:pointer;border-radius:var(--radius-sm, 4px);padding:4px;transition:var(--transition-fast, all 0.15s ease)}.filter__option:hover .filter__label{color:var(--color-primary, #E8563A)}.filter__option:focus-within{outline:2px solid var(--color-primary, #E8563A);outline-offset:2px}.filter__checkbox,.filter__radio{width:18px;height:18px;accent-color:var(--color-primary, #E8563A);cursor:pointer;flex-shrink:0}.filter__label{font-size:14px;color:var(--color-text, #1A202C);cursor:pointer;transition:var(--transition-fast, all 0.15s ease);flex:1;display:flex;justify-content:space-between;align-items:center}.filter__amenities{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter__amenity{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted, #718096);padding:6px 8px;border:1.5px solid var(--color-border, #E2E8F0);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:var(--transition-base, all 0.25s ease)}.filter__amenity:focus{outline:none}.filter__amenity:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.filter__amenity.active,.filter__amenity:hover{border-color:var(--color-primary, #E8563A);color:var(--color-primary, #E8563A);background:rgba(232,86,58,.05)}.filter__footer{display:flex;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid var(--color-border, #E2E8F0)}.filter__apply{flex:1}.filter__reset{flex-shrink:0;font-size:14px;color:var(--color-text-muted, #718096)}.filter-sheet__backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:calc(var(--z-modal, 300) - 10);opacity:0;pointer-events:none;transition:opacity var(--transition-base, 0.25s ease)}.filter-sheet__backdrop.is-open{opacity:1;pointer-events:all}.filter-sheet__panel{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-modal, 300);background:var(--color-white, #FFFFFF);border-radius:var(--radius-2xl, 24px) var(--radius-2xl, 24px) 0 0;box-shadow:var(--shadow-xl, 0 20px 25px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.04));padding-bottom:calc(16px + env(safe-area-inset-bottom));max-height:90vh;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.filter-sheet__panel::-webkit-scrollbar{display:none}.filter-sheet__panel{transform:translateY(100%);transition:transform .4s cubic-bezier(0.34, 1.2, 0.64, 1)}.filter-sheet__panel.is-open{transform:translateY(0)}.filter-sheet__handle{display:flex;justify-content:center;padding:12px 0 8px;cursor:grab}.filter-sheet__handle::before{content:"";width:40px;height:4px;background:var(--color-border-dark, #CBD5E0);border-radius:var(--radius-full, 9999px)}.filter-sheet__handle:active{cursor:grabbing}.filter-sheet__content{padding:0 20px 24px}.filter-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 16px;border-bottom:1px solid var(--color-border, #E2E8F0);margin-bottom:16px}.filter-sheet__title{font-size:18px;font-weight:700;color:var(--color-text, #1A202C)}.filter-sheet__close{width:32px;height:32px;border:none;color:var(--color-text-muted, #718096)}@media(max-width: 1024px){.filter-trigger{display:flex;align-items:center;gap:8px}}@media(min-width: 1025px){.filter-trigger{display:none}}.filter-group{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--color-border, #E2E8F0)}.filter-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter-label{font-size:14px;font-weight:600;color:var(--color-text, #1A202C);margin-bottom:10px}.price-display{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;color:var(--color-text, #1A202C);margin-bottom:6px}.card{background:var(--card-bg, #FFFFFF);border-radius:var(--card-radius, 12px);border:1px solid rgba(0,0,0,0);overflow:hidden;box-shadow:var(--card-shadow, 0 2px 8px rgba(0, 0, 0, 0.08), 0 0 1px rgba(0, 0, 0, 0.04));transition:var(--transition-base, all 0.25s ease);display:flex;flex-direction:column;color:var(--color-text, #1A202C);text-decoration:none;contain:layout style}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover, 0 8px 24px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.08))}.card__header{display:flex;flex-direction:column;gap:6px;padding:var(--card-padding, 16px);padding-bottom:0}.card__content{padding:var(--card-padding, 16px);flex:1;display:flex;flex-direction:column}.card__footer{display:flex;align-items:center;padding:var(--card-padding, 16px);padding-top:0;gap:8px}.card__image-wrap{position:relative;overflow:hidden;aspect-ratio:4/3;flex-shrink:0}.card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;transform:translateZ(0);backface-visibility:hidden}.card:hover .card__image{transform:scale(1.05) translateZ(0)}.card__badge{position:absolute;top:12px;left:12px;z-index:2}.card__favorite{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;background:hsla(0,0%,100%,.9);border-radius:var(--radius-full, 9999px);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted, #718096);transition:var(--transition-base, all 0.25s ease);background:hsla(0,0%,100%,.85);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.card__favorite:focus{outline:none}.card__favorite:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.card__favorite:hover{color:var(--color-primary, #E8563A);background:var(--color-white, #FFFFFF);transform:scale(1.1)}.card__favorite--active{color:var(--color-primary, #E8563A)}.card__body{padding:var(--card-padding, 16px);display:flex;flex-direction:column;flex:1}.card__meta{display:flex;align-items:center;gap:6px;margin-bottom:8px}.card__rating{display:flex;align-items:center;gap:4px}.card__stars{display:flex;color:var(--color-star, #F6AD55);font-size:13px;gap:1px}.card__reviews-count{font-size:12px;color:var(--color-text-muted, #718096)}.card__title{font-size:16px;font-weight:600;color:var(--color-text, #1A202C);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.card__address{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--color-text-muted, #718096);margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card__address svg{flex-shrink:0;color:var(--color-primary, #E8563A)}.card__features{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.card__feature{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-muted, #718096);background:var(--color-bg, #FAFAFA);padding:3px 8px;border-radius:var(--radius-sm, 4px)}.card__price{display:flex;align-items:baseline;gap:4px;margin-top:auto}.card__price-amount{font-size:20px;font-weight:700;color:var(--color-primary, #E8563A)}.card__price-period{font-size:14px;color:var(--color-text-muted, #718096)}.card--elevated{box-shadow:var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05));border-color:rgba(0,0,0,0)}.card--elevated:hover{box-shadow:var(--shadow-xl, 0 20px 25px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.04));transform:translateY(-6px)}.card--outline{box-shadow:none;border-color:var(--card-border, #E2E8F0)}.card--outline:hover{border-color:var(--color-primary, #E8563A);box-shadow:0 0 0 3px rgba(232,86,58,.12);transform:translateY(-2px)}.card--featured{border:2px solid var(--color-primary, #E8563A)}.card--featured .card__title{font-size:18px}.card--featured .card__price-amount{font-size:24px}.card--horizontal{flex-direction:row}.card--horizontal .card__image-wrap{width:200px;aspect-ratio:auto;flex-shrink:0}.card--horizontal .card__body{flex:1}@media(max-width: 375px){.card--horizontal{flex-direction:column}.card--horizontal .card__image-wrap{width:100%;aspect-ratio:4/3}}@media(max-width: 768px){.card__title{font-size:14px}.card__body{padding:12px}}@media(max-width: 375px){.card__price-amount{font-size:24px}}@media(hover: none)and (pointer: coarse){.card:hover{transform:none !important;will-change:auto}}.gallery{display:grid;grid-template-columns:3fr 2fr;grid-template-rows:repeat(2, 1fr);gap:8px;border-radius:var(--radius-xl, 16px);overflow:hidden;height:500px;transform:translateZ(0);will-change:transform;backface-visibility:hidden}.gallery__main{grid-row:1/3;position:relative;overflow:hidden;cursor:pointer}.gallery__main:hover .gallery__main-img{transform:scale(1.03) translateZ(0)}.gallery__main-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;transform:translateZ(0);backface-visibility:hidden;transition:transform .5s ease,opacity .3s ease}.gallery__thumbs{display:contents}@media(max-width: 768px){.gallery__thumbs{display:none}}.gallery__thumb{position:relative;overflow:hidden;cursor:pointer}.gallery__thumb:hover .gallery__thumb-img{transform:scale(1.05) translateZ(0)}.gallery__thumb:focus{outline:none}.gallery__thumb:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.gallery__thumb-img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;transform:translateZ(0);backface-visibility:hidden}.gallery__count{position:absolute;inset:0;background:rgba(26,32,44,.55);display:flex;align-items:center;justify-content:center;color:var(--color-white, #FFFFFF);font-size:18px;font-weight:700;cursor:pointer;transition:var(--transition-base, all 0.25s ease)}.gallery__count:hover{background:rgba(26,32,44,.4)}.gallery__nav{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 16px;pointer-events:none}.gallery__btn{pointer-events:all;width:40px;height:40px;background:hsla(0,0%,100%,.88);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:none;border-radius:var(--radius-full, 9999px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-base, all 0.25s ease)}.gallery__btn:focus{outline:none}.gallery__btn:focus-visible{outline:2px solid #E8563A;outline-offset:3px;border-radius:inherit}.gallery__btn:hover{background:var(--color-white, #FFFFFF);transform:scale(1.1)}.gallery__btn svg{flex-shrink:0;pointer-events:none}.gallery__dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:none;gap:6px;align-items:center;z-index:5}.gallery__dot{width:6px;height:6px;background:hsla(0,0%,100%,.55);border-radius:var(--radius-full, 9999px);transition:var(--transition-base, all 0.25s ease);cursor:pointer;border:none;padding:0}.gallery__dot--active{width:20px;background:var(--color-white, #FFFFFF)}.gallery__dot:hover{background:hsla(0,0%,100%,.8)}.gallery__dot:focus{outline:none}.gallery__dot:focus-visible{outline:2px solid white;outline-offset:3px;border-radius:inherit}@media(max-width: 768px){.gallery{display:flex;height:280px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;border-radius:var(--radius-lg, 12px);-ms-overflow-style:none;scrollbar-width:none}.gallery::-webkit-scrollbar{display:none}.gallery{position:relative}.gallery .gallery__dots{display:flex}.gallery .gallery__main{flex:0 0 100%;scroll-snap-align:start;height:100%}.gallery .gallery__slide{flex:0 0 100%;scroll-snap-align:start;height:100%;overflow:hidden;position:relative}.gallery .gallery__slide-img{width:100%;height:100%;object-fit:cover;transform:translateZ(0)}}@media(max-width: 375px){.gallery{height:240px;border-radius:var(--radius-md, 8px)}}@media(max-width: 320px){.gallery{height:200px;border-radius:0;margin:0 -24px}}.gallery-modal{position:fixed;inset:0;z-index:var(--z-modal, 300);background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;outline:none}.gallery-modal__img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-md, 8px);animation:scaleIn .25s ease;transform:translateZ(0)}.gallery-modal__close{position:absolute;top:16px;right:16px;width:40px;height:40px;background:hsla(0,0%,100%,.15);border:none;border-radius:var(--radius-full, 9999px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-base, all 0.25s ease)}.gallery-modal__close:focus{outline:none}.gallery-modal__close:focus-visible{outline:2px solid white;outline-offset:3px;border-radius:inherit}.gallery-modal__close:hover{background:hsla(0,0%,100%,.25)}.gallery-modal__prev,.gallery-modal__next{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;background:hsla(0,0%,100%,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-full, 9999px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-base, all 0.25s ease)}.gallery-modal__prev:focus,.gallery-modal__next:focus{outline:none}.gallery-modal__prev:focus-visible,.gallery-modal__next:focus-visible{outline:2px solid white;outline-offset:3px;border-radius:inherit}.gallery-modal__prev:hover,.gallery-modal__next:hover{background:hsla(0,0%,100%,.2)}.gallery-modal__prev{left:16px}.gallery-modal__next{right:16px}.gallery-modal__counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:hsla(0,0%,100%,.7);font-size:14px}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:40px;flex-wrap:wrap}.pagination__item{display:flex}.pagination__link{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;width:40px;height:40px;border-radius:8px;border:1.5px solid #e2e8f0;font-size:14px;font-weight:500;color:#1a202c;background:#fff;cursor:pointer;transition:all .25s ease;text-decoration:none}.pagination__link:hover{border-color:#e8563a;color:#e8563a}.pagination__link--active{background:#e8563a;border-color:#e8563a;color:#fff;font-weight:700}.pagination__link--active:hover{background:#d04428;border-color:#d04428;color:#fff}.pagination__prev,.pagination__next{display:flex;align-items:center;gap:6px;padding:0 16px;height:40px;border-radius:8px;border:1.5px solid #e2e8f0;font-size:14px;font-weight:500;color:#1a202c;background:#fff;cursor:pointer;transition:all .25s ease}.pagination__prev:hover,.pagination__next:hover{border-color:#e8563a;color:#e8563a}.pagination__prev:disabled,.pagination__next:disabled{opacity:.4;cursor:not-allowed}.pagination__prev:disabled:hover,.pagination__next:disabled:hover{border-color:#e2e8f0;color:#1a202c}.page-btn{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;min-width:40px;height:40px;padding:0 12px;border-radius:8px;border:1.5px solid #e2e8f0;font-size:14px;font-weight:500;color:#1a202c;background:#fff;cursor:pointer;transition:all .25s ease;gap:6px}.page-btn:hover{border-color:#e8563a;color:#e8563a}.page-btn.active{background:#e8563a;border-color:#e8563a;color:#fff}.breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:12px 0}.breadcrumb__item{display:flex;align-items:center;gap:6px}.breadcrumb__item--active .breadcrumb__link{color:#1a202c;pointer-events:none}.breadcrumb__link{font-size:14px;color:#718096;transition:all .15s ease}.breadcrumb__link:hover{color:#e8563a}.breadcrumb__separator{color:#cbd5e0;font-size:12px}.modal{display:none;position:fixed;inset:0;z-index:300}.modal--open{display:flex;align-items:flex-end}@media(min-width: 1025px){.modal--open{align-items:center;justify-content:center}}.modal__overlay{position:absolute;inset:0;background:rgba(26,32,44,.6);backdrop-filter:blur(2px);animation:fadeIn .2s ease;cursor:pointer}.modal__content{position:relative;z-index:1;background:#fff;width:100%;max-height:85vh;border-radius:24px 24px 0 0;overflow-y:auto;animation:slideUp .35s ease;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding-bottom:calc(16px + env(safe-area-inset-bottom))}@media(min-width: 1025px){.modal__content{width:480px;max-height:80vh;border-radius:16px;margin:0 auto;animation:scaleIn .25s ease}}.modal__handle{width:36px;height:4px;background:#cbd5e0;border-radius:9999px;margin:12px auto 0}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0;position:sticky;top:0;background:#fff;z-index:1;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.modal__title{font-size:20px;font-weight:700;color:#1a202c}.modal__close{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;width:36px;height:36px;border-radius:9999px;background:#fafafa;border:none;cursor:pointer;color:#718096;transition:all .25s ease}.modal__close:hover{background:#e2e8f0;color:#1a202c}.modal__body{padding:20px;overflow-y:auto}.modal__footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0;position:sticky;bottom:0;background:#fff}body.modal-open{overflow:hidden}.filter-toggle-btn{display:none;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;color:#1a202c;cursor:pointer;transition:all .25s ease;min-height:44px;min-width:44px}.filter-toggle-btn:hover{border-color:#e8563a;color:#e8563a}@media(max-width: 768px){.filter-toggle-btn{display:flex}}.popular-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:24px}@media(max-width: 1280px){.popular-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 414px){.popular-grid{display:flex;overflow-x:auto;gap:16px;padding-bottom:8px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.popular-grid::-webkit-scrollbar{display:none}.popular-grid .apt-card{flex:0 0 78%;scroll-snap-align:start}}@media(max-width: 375px){.popular-grid .apt-card{flex:0 0 86%}}.why-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:20px}@media(max-width: 1024px){.why-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 414px){.why-grid{grid-template-columns:1fr}}.feature-card{display:flex;gap:16px;padding:24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06);border:1px solid #e2e8f0;transition:all .25s ease}.feature-card:hover{box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06);transform:translateY(-2px)}.feature-icon{font-size:28px;flex-shrink:0;width:48px;height:48px;background:rgba(232,86,58,.1);border-radius:8px;display:flex;align-items:center;justify-content:center}.feature-title{font-size:16px;font-weight:600;color:#1a202c;margin-bottom:6px}.feature-desc{font-size:14px;color:#718096;line-height:1.6}.reviews-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:24px}@media(max-width: 1024px){.reviews-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 414px){.reviews-grid{display:flex;overflow-x:auto;gap:16px;padding-bottom:8px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.reviews-grid::-webkit-scrollbar{display:none}.reviews-grid .review-card{flex:0 0 84%;scroll-snap-align:start}}.review-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06);border:1px solid #e2e8f0;position:relative;transition:all .25s ease}.review-card:hover{box-shadow:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.06)}.review-quote{font-size:64px;line-height:1;color:rgba(232,86,58,.2);font-weight:900;position:absolute;top:8px;left:20px}.review-stars{display:flex;color:#f6ad55;gap:2px;margin-bottom:12px;margin-top:8px}.review-text{font-size:14px;color:#718096;line-height:1.7;margin-bottom:20px}.review-author{display:flex;align-items:center;gap:12px}.review-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0}.review-avatar img{width:100%;height:100%;object-fit:cover}.review-name{font-size:14px;font-weight:600;color:#1a202c}.review-date{font-size:12px;color:#718096}.cta-section{background:linear-gradient(135deg, #1A202C 0%, #D04428 100%)}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:60px 0;flex-wrap:wrap}.cta-title{font-size:36px;font-weight:800;color:#fff;line-height:1.2;margin-bottom:16px}@media(max-width: 768px){.cta-title{font-size:30px}}.cta-desc{font-size:16px;color:hsla(0,0%,100%,.75);line-height:1.7;max-width:520px}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}@media(max-width: 375px){.cta-actions{width:100%}.cta-actions .btn,.cta-actions .booking-widget__btn,.cta-actions .filter__apply,.cta-actions .filter__reset,.cta-actions .filter-sheet__close{width:100%;justify-content:center}}.steps-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:24px;position:relative}.steps-grid::before{content:"";position:absolute;top:28px;left:calc(12.5% + 24px);right:calc(12.5% + 24px);height:2px;background:linear-gradient(to right, #E8563A, #FF7A62);z-index:0}@media(max-width: 1024px){.steps-grid{grid-template-columns:repeat(2, 1fr)}.steps-grid::before{display:none}}@media(max-width: 414px){.steps-grid{grid-template-columns:1fr}}.step-item{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;z-index:1}.step-number{width:56px;height:56px;background:#e8563a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:#fff;margin-bottom:16px;box-shadow:0 4px 16px rgba(232,86,58,.3);border:3px solid #fafafa}.step-title{font-size:16px;font-weight:700;color:#1a202c;margin-bottom:8px}.step-desc{font-size:14px;color:#718096;line-height:1.6}.promo-band{background:linear-gradient(135deg, #E8563A 0%, #D04428 100%);padding:20px 0;overflow:hidden}.promo-band-inner{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}@media(max-width: 768px){.promo-band-inner{gap:24px}}.promo-item{display:flex;align-items:center;gap:10px;color:#fff;font-size:14px;font-weight:600;white-space:nowrap}.promo-icon{font-size:20px}.cities-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:16px}@media(max-width: 768px){.cities-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 375px){.cities-grid{grid-template-columns:1fr}}.city-card{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:3/2;cursor:pointer}.city-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.city-card:hover img{transform:scale(1.07)}.city-card-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.1) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:16px;transition:all .25s ease}.city-card:hover .city-card-overlay{background:linear-gradient(to top, rgba(232, 86, 58, 0.7) 0%, rgba(232, 86, 58, 0.1) 100%)}.city-name{color:#fff;font-size:18px;font-weight:700;margin-bottom:2px}.city-count{color:hsla(0,0%,100%,.8);font-size:13px}.popular-section{background:#fafafa}.reviews-section{background:#fff}.how-section{background:#fafafa}.why-us{background:#fff}.cities-section{background:#fff}.hero-stats{display:flex;align-items:center;gap:0;background:hsla(0,0%,100%,.1);backdrop-filter:blur(8px);border-radius:16px;border:1px solid hsla(0,0%,100%,.15);padding:20px 28px;width:fit-content;flex-wrap:wrap}@media(max-width: 768px){.hero-stats{padding:12px 16px}}@media(max-width: 375px){.hero-stats{width:100%;justify-content:center}}.hero-stat{text-align:center;padding:0 20px}.hero-stat-value{font-size:24px;font-weight:800;color:#fff;line-height:1.2}@media(max-width: 768px){.hero-stat-value{font-size:20px}}.hero-stat-label{font-size:12px;color:hsla(0,0%,100%,.65);margin-top:2px}.hero-stat-divider{width:1px;height:36px;background:hsla(0,0%,100%,.2);flex-shrink:0}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.9);padding:8px 16px;border-radius:9999px;font-size:14px;font-weight:500;margin-bottom:24px;backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.2)}.hero-badge .dot{width:8px;height:8px;background:#48bb78;border-radius:50%;animation:pulse 2s ease-in-out infinite;flex-shrink:0}.hero-content{position:relative;z-index:2;padding-top:80px}.hero-title{font-size:60px;font-weight:800;color:#fff;line-height:1.1;margin-bottom:20px;letter-spacing:-0.02em}.hero-title span{color:#e8563a}@media(min-width: 769px)and (max-width: 1024px){.hero-title{font-size:48px}}@media(max-width: 768px){.hero-title{font-size:32px}}@media(max-width: 375px){.hero-title{font-size:28px}}@media(max-width: 320px){.hero-title{font-size:26px}}.hero-subtitle{font-size:20px;color:hsla(0,0%,100%,.82);line-height:1.6;margin-bottom:32px;max-width:580px}@media(max-width: 768px){.hero-subtitle{font-size:16px}}@media(max-width: 375px){.hero-subtitle{font-size:14px;margin-bottom:24px}}.search-bar-wrapper{max-width:820px;width:100%;margin-bottom:28px}.avatar{border-radius:50%;overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-md{width:44px;height:44px}.avatar-lg{width:56px;height:56px}.catalog-page{background:#fafafa;min-height:100vh}.catalog-hero{background:linear-gradient(135deg, #1A202C 0%, rgb(25.3846153846, 31.0256410256, 40.6153846154) 100%);padding:120px 0 48px;position:relative;overflow:hidden}.catalog-hero::before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" fill="none" stroke="rgba(255,255,255,0.03)" stroke-width="40"/></svg>');background-size:300px;opacity:.3}.catalog-hero-title{font-size:36px;font-weight:800;color:#fff;margin-bottom:8px}@media(max-width: 768px){.catalog-hero-title{font-size:30px}}@media(max-width: 375px){.catalog-hero-title{font-size:24px}}.catalog-hero-subtitle{font-size:18px;color:hsla(0,0%,100%,.7)}@media(max-width: 375px){.catalog-hero-subtitle{font-size:16px}}.catalog-layout{display:flex;gap:28px;padding:32px 0 64px;align-items:flex-start}@media(max-width: 768px){.catalog-layout{flex-direction:column;gap:0}}.catalog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.catalog-count{font-size:18px;font-weight:600;color:#1a202c}.catalog-count span{color:#e8563a}.catalog-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:20px}@media(min-width: 1281px){.catalog-grid{grid-template-columns:repeat(3, 1fr)}}@media(min-width: 1025px)and (max-width: 1280px){.catalog-grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 769px)and (max-width: 1024px){.catalog-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.catalog-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 414px){.catalog-grid{grid-template-columns:1fr}}.active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.active-filter{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 12px;background:rgba(232,86,58,.1);color:#e8563a;border-radius:9999px;font-size:12px;font-weight:600}.active-filter-remove{width:16px;height:16px;border:none;background:#e8563a;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;line-height:1;transition:all .25s ease;padding:0}.active-filter-remove:hover{background:#d04428;transform:scale(1.1)}.clear-all{font-size:12px;font-weight:600;color:#718096;cursor:pointer;text-decoration:underline;background:none;border:none;transition:all .15s ease}.clear-all:hover{color:#e8563a}.apt-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08),0 0 1px rgba(0,0,0,.04);transition:all .25s ease;display:flex;flex-direction:column;color:#1a202c;text-decoration:none}.apt-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08)}@media(hover: none)and (pointer: coarse){.apt-card:hover{transform:none !important}}.apt-card-img{position:relative;overflow:hidden;aspect-ratio:4/3}.apt-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.apt-card:hover .apt-card-img img{transform:scale(1.05)}.apt-card-fav{position:absolute;top:10px;right:10px;width:32px;height:32px;background:hsla(0,0%,100%,.9);border:none;border-radius:9999px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#718096;transition:all .25s ease}.apt-card-fav:hover{color:#e8563a;background:#fff}.apt-card-body{padding:14px;display:flex;flex-direction:column;flex:1}@media(max-width: 768px){.apt-card-body{padding:12px}}.apt-card-rating{display:flex;align-items:center;gap:4px;margin-bottom:6px}.apt-card-title{font-size:14px;font-weight:600;color:#1a202c;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width: 768px){.apt-card-title{font-size:12px}}.apt-card-addr{display:flex;align-items:center;gap:4px;font-size:12px;color:#718096;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apt-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.apt-price{font-size:20px;font-weight:700;color:#e8563a}@media(max-width: 375px){.apt-price{font-size:24px}}.apt-price-label{font-size:12px;color:#718096;margin-left:2px}.stars-text{font-size:12px;font-weight:700;color:#1a202c}.stars-count{font-size:12px;color:#718096}.view-toggle{display:flex;gap:4px;background:#fafafa;padding:4px;border-radius:4px;border:1.5px solid #e2e8f0}.view-btn{width:34px;height:34px;border-radius:6px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#718096;transition:all .25s ease}.view-btn.active{background:#fff;color:#1a202c;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06)}.map-toggle{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;color:#1a202c;cursor:pointer;transition:all .25s ease}.map-toggle:hover{border-color:#e8563a;color:#e8563a}.apartment-page{background:#fafafa;padding-top:72px}.apartment-layout{display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:flex-start;padding:32px 0 64px}@media(min-width: 769px)and (max-width: 1024px){.apartment-layout{grid-template-columns:1fr 320px;gap:24px}}@media(max-width: 1024px){.apartment-layout{grid-template-columns:1fr}}.apartment-title{font-size:30px;font-weight:800;color:#1a202c;margin:16px 0 8px}@media(max-width: 768px){.apartment-title{font-size:24px}}@media(max-width: 375px){.apartment-title{font-size:20px}}.apartment-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.apartment-address{display:flex;align-items:center;gap:6px;font-size:16px;color:#718096}.apartment-address svg{color:#e8563a;flex-shrink:0}.booking-widget{background:#fff;border-radius:16px;box-shadow:0 10px 15px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);border:1px solid #e2e8f0;overflow:hidden}@media(min-width: 1025px){.booking-widget{position:sticky;top:88px}}@media(max-width: 1024px){.booking-widget{position:relative;top:auto}}@media(max-width: 375px){.booking-widget{position:fixed;bottom:0;left:0;right:0;border-radius:16px 16px 0 0;z-index:200;padding-bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:0 -4px 24px rgba(0,0,0,.15)}}.booking-widget__header{padding:20px 20px 0}.booking-widget__price{display:flex;align-items:baseline;gap:6px;margin-bottom:4px}.booking-widget__price-amount{font-size:30px;font-weight:800;color:#e8563a}.booking-widget__price-period{font-size:16px;color:#718096}.booking-widget__rating{display:flex;align-items:center;gap:6px;margin-bottom:20px}.booking-widget__dates{padding:0 20px 16px;border-bottom:1px solid #e2e8f0}.booking-widget__dates-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1.5px solid #e2e8f0;border-radius:8px;overflow:hidden}.booking-widget__date-group{padding:10px 14px;cursor:pointer;transition:all .15s ease}.booking-widget__date-group:first-child{border-right:1px solid #e2e8f0}.booking-widget__date-group:hover{background:#fafafa}.booking-widget__date-group label{display:block;font-size:11px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.booking-widget__date-group input{width:100%;border:none;outline:none;font-size:14px;font-weight:500;color:#1a202c;background:rgba(0,0,0,0);cursor:pointer;font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}.booking-widget__guests{padding:12px 14px;border:1.5px solid #e2e8f0;border-radius:8px;margin:12px 20px 0;display:flex;align-items:center;justify-content:space-between}.booking-widget__guests label{font-size:11px;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:2px}.booking-widget__guests input{border:none;outline:none;font-size:14px;font-weight:500;color:#1a202c;background:rgba(0,0,0,0);width:60px;font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}.booking-widget__total{padding:16px 20px;border-top:1px solid #e2e8f0;margin-top:16px}.booking-widget__total-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0}.booking-widget__total-row:last-child{font-weight:700;font-size:16px;padding-top:12px;margin-top:6px;border-top:1px solid #e2e8f0}.booking-widget__total-row span:first-child{font-size:14px;color:#718096}.booking-widget__total-row span:last-child{font-size:14px;font-weight:500;color:#1a202c}.booking-widget__btn{display:block;margin:0 20px 20px;width:calc(100% - 40px);font-size:16px;padding:16px;border-radius:12px}.booking-widget__note{text-align:center;font-size:12px;color:#718096;padding:0 20px 16px}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(180px, 1fr));gap:12px;margin-bottom:32px}@media(max-width: 768px){.amenities-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 375px){.amenities-grid{grid-template-columns:1fr}}.amenity{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fafafa;border-radius:8px;border:1px solid #e2e8f0}.amenity__icon{font-size:18px;flex-shrink:0;width:32px;height:32px;background:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center}.amenity__name{font-size:14px;font-weight:500;color:#1a202c}.reviews-list{display:flex;flex-direction:column;gap:24px}.review{padding:20px;background:#fff;border-radius:12px;border:1px solid #e2e8f0}.review__author{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review__avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0}.review__avatar img{width:100%;height:100%;object-fit:cover}.review__name{font-size:14px;font-weight:600;color:#1a202c}.review__date{font-size:12px;color:#718096}.review__rating{display:flex;align-items:center;gap:4px;margin-bottom:10px}.review__text{font-size:14px;color:#718096;line-height:1.7}.apt-gallery{display:grid;grid-template-columns:3fr 2fr;gap:8px;border-radius:16px;overflow:hidden;height:480px}.apt-gallery .gallery-main{grid-row:1/3;position:relative;overflow:hidden}.apt-gallery .gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.apt-gallery .gallery-main:hover img{transform:scale(1.03)}.apt-gallery .gallery-thumb{position:relative;overflow:hidden;cursor:pointer}.apt-gallery .gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.apt-gallery .gallery-thumb:hover img{transform:scale(1.05)}.apt-gallery .gallery-count-overlay{position:absolute;inset:0;background:rgba(26,32,44,.55);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700;cursor:pointer}.apt-gallery .gallery-count-overlay:hover{background:rgba(26,32,44,.4)}@media(max-width: 768px){.apt-gallery{display:flex;height:260px;overflow-x:scroll;scroll-snap-type:x mandatory;border-radius:12px;-ms-overflow-style:none;scrollbar-width:none}.apt-gallery::-webkit-scrollbar{display:none}.apt-gallery .gallery-main{flex:0 0 100%;scroll-snap-align:start;height:100%}.apt-gallery .gallery-thumb{display:none}}@media(max-width: 320px){.apt-gallery{border-radius:0;margin:0 -12px}}@media(hover: none)and (pointer: coarse){.card:hover,.apt-card:hover{transform:none !important;will-change:auto}.btn:hover,.filter__apply:hover,.filter__reset:hover,.filter-sheet__close:hover,.booking-widget__btn:hover{transform:none;box-shadow:none;opacity:.9}}@media(max-width: 320px){html{font-size:14px}}.header,.navbar{padding-top:env(safe-area-inset-top)}@media(max-width: 375px){.booking-widget{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}.card:hover,.card--elevated{will-change:transform,box-shadow}.gallery__main-img,.gallery__thumb-img{will-change:transform}.filter-sheet__panel{will-change:transform}.header,.navbar{contain:layout style}/*# sourceMappingURL=main.css.map */
.apt-card-specs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.apt-spec{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#718096;background:#f7f8fa;padding:3px 8px;border-radius:4px}
.card__image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;background:#f7f8fa}

/* ── Logo SVG ── */
.header__logo,
.navbar-logo {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.header__logo-svg {
  width: 42px;
  height: 36px;
  flex-shrink: 0;
  align-self: center;
  filter: drop-shadow(0 2px 4px rgba(232,86,58,.4));
  transition: transform .25s ease;
}
.header__logo:hover .header__logo-svg { transform: translateY(-2px) scale(1.05); }
.header__logo-text.logo-text {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  letter-spacing: -.01em;
  line-height: 1;
  align-self: center;
}
.header__logo-text.logo-text span { color: #E8563A; }

/* ── Footer contact columns ── */
.footer-contact-col {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.footer-contact-icon {
  width: 44px;
  height: 44px;
  background: rgba(232,86,58,.12);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  flex-shrink: 0;
}
.footer-contact-val {
  font-size: 14px;
  color: rgba(255,255,255,.75);
  line-height: 1.5;
  text-decoration: none;
  transition: color .15s ease;
}
a.footer-contact-val:hover { color: #fff; }
.footer-contact-val--phone {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 4px;
}
.footer-contact-val--sub {
  color: rgba(255,255,255,.5);
  font-size: 13px;
}
