:root{--ink:#211C19;--forest:#78613F;--blue:#78613F;--blue-hover:#59452C;--muted:#6C6259;--paper:#FFFFFF;--white:#FFFFFF;--line:#D8CFC2;--mint:#E8E0D4;--lime:#B9A27A;--coral:#B9A27A;--radius:18px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,a,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.1}img{display:block;width:100%;object-fit:cover}svg.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.shell{width:min(1360px,calc(100% - 80px));margin:auto}.skip{position:fixed;top:-80px;left:16px;z-index:40;background:white;padding:16px;border-radius:12px}.skip:focus{top:16px}
.concept-nav{min-height:34px;background:var(--mint);border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.035em}.concept-nav>.shell{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-height:34px}.concept-nav span{color:var(--muted);margin-right:5px}.concept-nav a{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;border-radius:7px;color:var(--muted)}.concept-nav a[aria-current=page]{background:var(--blue);color:white}.concept-nav a:hover{background:#E8E0D4;color:var(--ink)}.concept-nav a[aria-current=page]:hover{background:var(--blue-hover);color:white}
.header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;min-height:44px}.brand-logo{width:176px;height:auto;object-fit:contain;transition:transform .2s var(--ease)}.brand:hover .brand-logo{transform:translateY(-1px)}.nav{display:flex;align-items:center;gap:26px}.nav>a{min-height:44px;display:flex;align-items:center;font-size:12px;font-weight:550}.nav .contact{gap:8px;border:1px solid var(--line);border-radius:10px;padding:0 14px;color:var(--ink)}.nav .contact>.icon{width:16px;height:16px;color:var(--blue)}.favorite-nav{border:0;background:transparent;min-height:44px;display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:550}.favorite-count{background:var(--mint);color:var(--blue);border-radius:7px;min-width:21px;height:21px;display:grid;place-items:center;font-size:10px;font-weight:700}
.hero{display:grid;grid-template-columns:.94fr 1.06fr;gap:44px;min-height:350px;position:relative;padding:10px 0 14px;align-items:center}.hero-copy{position:relative;max-width:100%;padding:0 0 32px;z-index:1}.hero-label{color:var(--blue);display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.06em;font-weight:650;margin-bottom:20px}.hero-label:before{content:"";width:7px;height:7px;background:var(--coral);border-radius:50%}.hero h1{color:var(--blue);font-size:clamp(42px,4.65vw,68px);font-weight:720;line-height:1.04;letter-spacing:-.055em}.hero h1 span{color:var(--ink)}.hero p{color:var(--muted);font-size:14px;margin-top:20px;max-width:310px}.hero-note{margin-top:22px;display:flex;align-items:center;gap:9px;font-size:11px;color:var(--ink)}.hero-note>.icon{color:var(--blue);width:18px;height:18px}.hero-gallery{position:relative;height:350px;margin-right:0;isolation:isolate}.hero-main-photo{height:310px;width:calc(100% - 34px);margin-left:34px;border-radius:19px 19px 19px 68px;overflow:hidden;position:relative;background:var(--mint)}.hero-main-photo>img{height:100%;object-position:center 53%;transition:transform 700ms var(--ease)}.hero-gallery:hover .hero-main-photo>img{transform:scale(1.035)}.hero-credit{position:absolute;top:16px;left:16px;color:var(--ink);background:#FFFFFFEE;border-radius:8px;font-size:10px;padding:6px 9px;display:flex;align-items:center;gap:6px}.hero-credit>.icon{width:13px;height:13px;color:var(--blue)}.hero-small-photo{position:absolute;left:0;bottom:0;width:180px;aspect-ratio:1.46;border:5px solid white;border-radius:16px;background:white;margin:0;overflow:hidden;box-shadow:0 8px 28px #211C1914;transform:rotate(-4deg);transition:transform 350ms var(--ease)}.hero-gallery:hover .hero-small-photo{transform:rotate(-2deg) translateY(-3px)}.hero-small-photo>img{height:100%;object-position:center}.hero-small-photo figcaption{position:absolute;left:5px;right:5px;bottom:5px;border-radius:6px;padding:4px 6px;background:#FFFFFFEC;color:var(--ink);font-size:9px}.hero-window{position:absolute;width:91px;height:91px;right:-10px;bottom:0;background:url('../brand/pattern.svg') center/contain no-repeat;z-index:-1;opacity:.7;pointer-events:none}.hero-accent{position:absolute;width:20px;height:20px;border-radius:6px;background:var(--coral);right:38px;bottom:25px;transform:rotate(12deg);z-index:-1}
.search-shell{padding-top:0}.search-bar{display:flex;gap:12px;align-items:center;width:100%;max-width:none;background:white;padding:9px;border:1px solid var(--line);border-radius:16px;margin:8px auto 0;box-shadow:0 10px 26px #211C1907;position:relative;z-index:3}.search-bar>.icon{margin-left:14px;color:var(--blue)}.search-bar input{width:100%;border:0;background:transparent;color:var(--ink);outline:none;padding:12px 0;min-height:44px;font-size:14px}.search-bar input::placeholder{color:var(--muted)}.search-bar:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #E8E0D4}.search-bar input:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:5px}.search-clear{background:none;border:0;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:var(--muted);flex:none}.search-clear:hover{background:var(--mint)}.search-submit{min-height:48px;padding:0 24px;background:var(--blue);border:0;border-radius:11px;color:white;display:flex;align-items:center;gap:16px;font-size:13px;font-weight:650;white-space:nowrap;transition:background .2s,transform .2s}.search-submit:hover{background:var(--blue-hover);transform:translateY(-1px)}.search-submit>.icon{width:18px;height:18px}
.discovery{padding-top:25px}.area-rail{display:flex;align-items:stretch;justify-content:flex-start;gap:9px;padding-bottom:24px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.area-rail::-webkit-scrollbar{display:none}.area-button{display:flex;flex-direction:row;gap:9px;align-items:center;justify-content:center;border:1px solid var(--line);background:white;color:var(--muted);min-width:0;min-height:49px;padding:8px 15px;border-radius:12px;position:relative;font-size:11px;white-space:nowrap;font-weight:550;transition:background .2s,color .2s,border-color .2s}.area-icon{display:grid;place-items:center;flex:none}.area-icon .icon{width:20px;height:20px;stroke-width:1.6}.area-button:hover{background:var(--mint);color:var(--blue);border-color:#B9A27A}.area-button[aria-pressed=true]{color:white;background:var(--blue);border-color:var(--blue)}.area-button small{display:none}.catalog-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 18px}.catalog-head h2{font-size:26px;font-weight:700;letter-spacing:-.035em}.catalog-head p{color:var(--muted);font-size:12px;margin-top:7px}.tools{display:flex;gap:8px;align-items:center;flex:none}.toggle{border:1px solid var(--line);background:white;border-radius:10px;min-height:44px;padding:10px 13px;display:flex;align-items:center;gap:7px;font-size:11px;color:var(--ink);transition:background .2s,border .2s}.toggle[aria-pressed=true]{background:var(--mint);border-color:var(--blue);color:var(--blue)}.toggle>.icon{width:16px;height:16px}.specific-tools{display:flex;gap:12px;align-items:center;margin:0 0 20px;font-size:12px}.specific-tools label{color:var(--muted)}.specific-tools select{min-height:44px;border:1px solid var(--line);background:white;padding:10px 32px 10px 14px;border-radius:10px;color:var(--ink);max-width:100%;font:inherit}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}.stay{min-width:0;background:white;border:0;border-radius:0;padding:0;animation:enter .3s var(--ease) both;transition:transform .25s}.media{position:relative;height:232px;border-radius:16px;overflow:hidden;background:var(--mint)}.photo-open{width:100%;height:100%;padding:0;border:0;background:transparent;display:block}.photo-open img{height:100%;transition:transform .45s var(--ease)}.stay:hover .photo-open img{transform:scale(1.04)}.save{position:absolute;top:10px;right:10px;width:44px;height:44px;border-radius:50%;border:0;background:#FFFFFFF2;display:grid;place-items:center;box-shadow:0 3px 12px #211C1910;color:var(--ink);transition:background .2s,transform .2s}.save .icon{width:19px;height:19px}.save:hover{background:white;transform:scale(1.04)}.save[aria-pressed=true] .icon{fill:var(--blue);stroke:var(--blue)}.online-badge{position:absolute;left:10px;top:13px;background:#FFFFFFF0;border-radius:7px;padding:5px 8px;font-size:9px;display:flex;align-items:center;gap:4px;color:var(--ink);pointer-events:none;backdrop-filter:blur(6px)}.online-badge .icon{width:12px;height:12px;color:var(--blue)}.photo-count{position:absolute;bottom:10px;right:10px;background:#211C19A6;color:white;border-radius:6px;font-size:10px;padding:3px 7px;pointer-events:none}.placeholder{height:100%;position:relative;background:linear-gradient(140deg,#E8E0D4,#D8CFC2);display:grid;place-items:center;color:#9E8C73;overflow:hidden}.placeholder:before,.placeholder:after{content:"";position:absolute;width:90px;height:90px;border-radius:12px;border:1px solid #FFFFFFB0;transform:translate(-56px,45px) rotate(15deg)}.placeholder:after{width:140px;height:140px;transform:translate(70px,-48px) rotate(15deg)}.placeholder>.icon{width:85px;height:85px;stroke-width:.8;color:#9E8C73}.placeholder-label{position:absolute;bottom:13px;left:0;right:0;text-align:center;font-size:11px;color:var(--muted)}.stay-copy{padding:9px 0 0}.place-row{display:flex;align-items:center;justify-content:space-between;gap:5px;color:var(--muted);font-size:11px;min-height:37px;margin-bottom:0}.place-row span{display:flex;gap:5px;align-items:center}.place-row .icon{width:13px;height:13px}.compare-add{border:0;background:none;padding:0;min-height:44px;min-width:44px;display:grid;place-items:center;color:var(--muted);border-radius:10px;transition:background .2s,color .2s}.compare-add>.icon{width:17px;height:17px}.compare-add:hover{background:var(--mint);color:var(--blue)}.compare-add[aria-pressed=true]{color:var(--blue);background:var(--mint)}.compare-add[aria-pressed=true] .icon{stroke-width:2.5}.name-open{font-size:17px;font-weight:700;letter-spacing:-.025em;line-height:1.3;min-height:44px;display:block;text-align:left;border:0;padding:0;background:none;color:var(--ink);max-width:100%}.operator{font-size:11px;color:var(--muted);margin-top:0;min-height:17px}.facts{min-height:27px;display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:8px}.facts span{display:flex;gap:4px;align-items:center}.facts .icon{width:13px;height:13px;color:var(--blue)}.tile-bottom{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:8px;border-top:1px solid var(--line);padding-top:10px}.tile-price{font-size:11px;color:var(--muted);line-height:1.4}.tile-action{display:flex;gap:6px;align-items:center;min-height:44px;font-size:11px;font-weight:650;border:0;background:none;padding:0;color:var(--blue);white-space:nowrap}.tile-action>.icon{width:14px;height:14px}.online-action{background:var(--blue);color:white;border-radius:9px;padding:0 13px;transition:background .2s,transform .2s}.online-action:hover{background:var(--blue-hover);transform:translateY(-1px)}.pagination{text-align:center;padding:36px 0 44px}.pagination p{font-size:11px;color:var(--muted);margin-bottom:12px}.secondary{border:1px solid #B9AC99;background:white;color:var(--blue);border-radius:11px;padding:12px 24px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:650;transition:background .2s}.secondary:hover{background:var(--mint)}.primary{border:0;background:var(--blue);color:white;border-radius:11px;padding:12px 24px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:650;transition:background .2s,transform .2s}.primary:hover{background:var(--blue-hover);transform:translateY(-1px)}
.state{padding:56px 20px;background:var(--mint);border:1px solid var(--line);border-radius:20px;text-align:center;min-height:210px}.state>.icon{width:36px;height:36px;color:var(--blue);margin-bottom:12px}.state h3{font-size:22px;margin-bottom:10px}.state p{font-size:13px;color:var(--muted);max-width:470px;margin:0 auto 20px}.loader{width:32px;height:32px;border:2px solid #D8CFC2;border-top-color:var(--blue);border-radius:50%;margin:0 auto 16px;animation:spin .8s linear infinite}.brief-note{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.brief-note>div{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:550}.brief-note .icon{color:var(--blue)}.brief-note button{border:0;background:transparent;color:var(--muted);min-height:44px;font-size:11px;text-decoration:underline;text-underline-offset:4px}.brand-footer{background:var(--blue);margin-top:8px}.footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;min-height:128px;color:white;font-size:11px}.footer-identity img{width:154px;height:auto;object-fit:contain}.footer-identity p{color:#FFFFFFCC;margin-top:9px;font-size:11px}.footer>a{min-height:44px;display:flex;align-items:center;gap:8px;color:white;font-size:12px}.prototype-note{font-size:10px;line-height:1.6;color:var(--muted);padding:13px 0 24px}
.compare-tray{position:fixed;z-index:8;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;padding:12px 16px 12px 20px;background:var(--ink);color:white;box-shadow:0 8px 32px #211C1926;border:1px solid #594B3E;border-radius:16px;max-width:calc(100% - 32px);min-width:360px}.compare-tray>.icon{color:var(--coral)}.compare-tray>p{font-size:12px;flex:1}.compare-tray .primary{background:var(--coral);color:var(--ink);min-height:44px;padding:10px 18px;font-size:12px}.compare-tray .primary:hover{background:#D0BB98}.compare-tray .primary:disabled{opacity:.7}.tray-clear{border:0;background:transparent;color:#C9BFB1;min-height:44px;min-width:44px;display:grid;place-items:center}.toast{position:fixed;z-index:30;left:50%;top:20px;transform:translateX(-50%);background:var(--ink);color:white;border-radius:12px;padding:12px 20px;font-size:12px;box-shadow:0 8px 24px #211C1925;max-width:calc(100% - 32px)}
dialog{border:1px solid var(--line);padding:0;background:white;color:var(--ink);border-radius:22px;max-height:calc(100dvh - 48px);width:min(900px,calc(100% - 40px));box-shadow:0 32px 100px #211C1930}dialog::backdrop{background:#211C1990;backdrop-filter:blur(6px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-bottom:1px solid var(--line);background:white;position:sticky;top:0;z-index:2}.modal-head h2{font-size:18px}.close{border:1px solid var(--line);border-radius:10px;background:white;width:44px;height:44px;display:grid;place-items:center;color:var(--ink);flex:none}.modal-body{padding:24px 28px 28px}.gallery{height:360px;border-radius:16px;overflow:hidden;position:relative;background:var(--mint)}.gallery>img{height:100%}.gallery .placeholder{height:100%}.gallery-control{position:absolute;top:calc(50% - 22px);width:44px;height:44px;display:grid;place-items:center;border:0;background:#FFFFFFF0;border-radius:10px;color:var(--ink)}.gallery-control.prev{left:16px}.gallery-control.next{right:16px}.gallery-counter{position:absolute;bottom:16px;right:16px;padding:6px 10px;background:#211C19B8;color:white;border-radius:8px;font-size:11px}.detail-content{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;margin-top:24px}.detail-content h3{font-size:26px;margin-bottom:8px}.detail-operator{font-size:12px;color:var(--muted);margin-bottom:20px}.detail-line{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:12px;color:var(--muted)}.detail-line>.icon{color:var(--blue);width:18px;height:18px}.detail-line a{text-decoration:underline;text-underline-offset:3px;color:var(--blue);font-size:11px;display:inline-flex;min-height:44px;align-items:center}.room-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.room-chip{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:11px;background:var(--mint)}.room-chip small{display:block;color:var(--muted);margin-top:3px}.room-heading{font-size:11px;letter-spacing:.06em;font-weight:700;text-transform:uppercase;margin-top:20px}.detail-book{background:var(--mint);border:1px solid var(--line);border-radius:16px;padding:24px;align-self:start}.detail-book>.icon{width:24px;height:24px;color:var(--blue);margin-bottom:12px}.detail-book h4{font-size:18px;margin:0 0 10px;letter-spacing:-.03em}.detail-book p{font-size:12px;color:var(--muted);margin-bottom:18px}.detail-book>a{width:100%}.detail-book small{display:block;margin-top:12px;color:var(--muted);font-size:10px}.detail-source{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:24px}.compare-table-wrap{overflow:auto}.compare-table{width:100%;border-collapse:collapse;min-width:580px;font-size:12px}.compare-table th,.compare-table td{padding:16px;vertical-align:top;text-align:left;border-bottom:1px solid var(--line)}.compare-table th{width:130px;font-weight:600;color:var(--muted)}.compare-table thead th{font-size:16px;color:var(--ink);letter-spacing:-.03em}.compare-table small{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:8px}.compare-table .secondary{font-size:11px;padding:10px 14px;min-height:44px}.compare-table .compare-remove{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 12px;margin-top:8px;border:1px solid #B9AC99;border-radius:9px;background:var(--mint);color:var(--blue);font-size:11px;letter-spacing:0;font-weight:500}.compare-remove .icon{width:14px;height:14px}.compare-remove:hover{background:#E8E0D4}.price-explain p{font-size:13px;color:var(--muted);margin:16px 0}.price-explain details{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:12px 0;background:white}.price-explain summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:650}.price-explain details p{font-size:12px;margin:6px 0 10px;max-width:670px}.price-explain .callout{background:var(--mint);padding:16px;border-radius:12px;font-size:12px;color:var(--ink)}.text-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;color:var(--blue)}[hidden]{display:none!important}@keyframes enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1440px){.hero{gap:66px}.hero-gallery{height:380px}.hero-main-photo{height:340px}.media{height:255px}.hero-small-photo{width:194px}}
@media(max-width:1150px){.shell{width:calc(100% - 48px)}.hero{gap:34px;grid-template-columns:.9fr 1.1fr}.hero-gallery{height:324px}.hero-main-photo{height:287px;width:calc(100% - 24px);margin-left:24px}.hero-small-photo{width:156px}.hero-window{width:74px;height:74px}.hero h1{font-size:54px}.nav{gap:18px}.grid{gap:30px 16px}.media{height:207px}.tile-price{font-size:10px}.tile-action{font-size:11px}.online-action{padding:0 10px}.area-button{padding:8px 12px;font-size:11px}.area-rail{gap:8px}}
@media(max-width:900px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nav>.contact{display:none}.hero{gap:24px;min-height:300px}.hero h1{font-size:45px}.hero-label{font-size:10px;margin-bottom:17px}.hero p{font-size:12px;max-width:235px;margin-top:16px}.hero-note{font-size:10px;margin-top:17px}.hero-gallery{height:290px}.hero-main-photo{height:258px;border-bottom-left-radius:45px}.hero-small-photo{width:142px}.media{height:225px}.hero-window{width:63px;height:63px}.hero-accent{width:14px;height:14px;right:29px;bottom:20px}.catalog-head{gap:16px}.tools{gap:6px}.toggle{font-size:11px;padding:10px 11px}}
@media(max-width:640px){.shell{width:calc(100% - 32px)}.concept-nav>.shell{justify-content:flex-start;min-height:32px;font-size:10px;gap:4px}.concept-nav span{margin-right:auto}.concept-nav a{padding:4px 9px}.header{height:76px;gap:16px}.brand-logo{width:148px}.nav{gap:10px}.nav>a{display:none}.favorite-nav{font-size:0;gap:5px}.favorite-nav .icon{width:19px;height:19px}.favorite-count{font-size:10px}.hero{display:grid;grid-template-columns:1fr;gap:19px;min-height:0;padding:5px 0 0}.hero-copy{padding:0}.hero-label{font-size:10px;margin-bottom:15px;letter-spacing:.045em}.hero h1{font-size:43px;line-height:1.04;max-width:100%;letter-spacing:-.05em}.hero p{font-size:12px;max-width:100%;margin-top:14px}.hero-note{display:none}.hero-gallery{height:207px;width:100%;margin-top:2px}.hero-main-photo{height:183px;width:calc(100% - 18px);margin-left:18px;border-radius:15px 15px 15px 36px}.hero-main-photo>img{object-position:center 54%}.hero-credit{left:10px;top:10px;font-size:9px;padding:5px 7px}.hero-credit>.icon{width:11px;height:11px}.hero-small-photo{width:123px;border-width:4px;left:0;bottom:0;border-radius:12px}.hero-small-photo figcaption{font-size:8px;left:3px;right:3px;bottom:3px;padding:3px 4px}.hero-window{width:58px;height:58px;right:3px;bottom:-2px}.hero-accent{right:25px;bottom:17px;width:12px;height:12px}.search-bar{margin:19px 0 0;padding:5px;border-radius:13px;gap:6px;box-shadow:0 5px 18px #211C1905}.search-bar>.icon{margin-left:8px;width:18px;height:18px}.search-bar input{font-size:12px;padding:10px 0;min-height:44px}.search-clear{width:44px;min-width:44px}.search-submit{width:44px;height:44px;min-height:44px;border-radius:9px;padding:0;justify-content:center}.search-submit span{display:none}.search-submit>.icon{width:18px}.discovery{padding-top:18px}.area-rail{gap:7px;padding-bottom:19px;margin-right:-16px;padding-right:16px}.area-button{min-height:45px;gap:7px;padding:7px 11px;border-radius:9px;font-size:10px}.area-icon .icon{width:18px;height:18px}.catalog-head{display:block;padding:22px 0 17px}.catalog-head h2{font-size:24px}.catalog-head p{font-size:11px;margin-top:6px}.tools{margin-top:15px;gap:8px}.toggle{font-size:11px;min-height:44px;padding:10px 12px;border-radius:9px}.specific-tools{font-size:11px;gap:8px}.specific-tools select{flex:1;min-width:0}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.media{height:184px;border-radius:12px}.save{top:5px;right:5px;width:44px;height:44px}.save>.icon{width:17px;height:17px}.online-badge{top:10px;left:6px;font-size:8px;padding:4px 5px;gap:3px;max-width:calc(100% - 55px);white-space:nowrap}.online-badge>.icon{width:9px;height:9px}.photo-count{bottom:7px;right:7px;font-size:9px;padding:3px 5px}.stay-copy{padding-top:7px}.place-row{font-size:10px;margin-bottom:1px;gap:3px;min-height:37px;align-items:center}.place-row span{gap:3px;line-height:1.4}.place-row .icon{width:11px;height:11px}.compare-add{min-width:34px;min-height:44px}.compare-add>.icon{width:15px;height:15px}.name-open{font-size:15px;min-height:44px;line-height:1.3;letter-spacing:-.03em}.operator{font-size:11px;line-height:1.4;min-height:32px;margin-top:1px}.facts{min-height:34px;gap:4px 7px;font-size:10px;line-height:1.5;margin-top:7px}.facts .icon{width:12px;height:12px}.facts>span{gap:3px}.tile-bottom{margin-top:8px;padding-top:9px;gap:4px;flex-wrap:wrap;min-height:54px}.tile-price{font-size:10px;max-width:60px}.tile-action{font-size:11px;min-height:44px;gap:4px}.online-action{padding:0 8px;border-radius:8px}.tile-action>.icon{width:12px;height:12px}.placeholder>.icon{width:70px;height:70px}.placeholder-label{font-size:10px;bottom:10px}.pagination{padding:30px 0}.brief-note{display:block;font-size:11px;padding:20px 0}.brief-note>div{line-height:1.6}.brief-note button{margin-top:8px;font-size:11px}.footer{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:28px 0 30px;min-height:0}.footer-identity img{width:140px}.footer-identity p{font-size:11px}.footer>a{font-size:12px}.prototype-note{font-size:10px;padding:13px 0 68px}.compare-tray{min-width:0;width:calc(100% - 24px);padding:10px 12px;gap:9px;border-radius:13px;bottom:12px}.compare-tray>p{font-size:10px}.compare-tray .primary{font-size:11px;padding:10px 13px}.compare-tray>.icon{width:18px}.tray-clear{width:44px}.modal-head{padding:15px 16px}.modal-head h2{font-size:15px;line-height:1.4;max-width:calc(100% - 60px)}.modal-body{padding:16px}.gallery{height:240px;border-radius:13px}.detail-content{grid-template-columns:1fr;gap:22px;margin-top:20px}.detail-content h3{font-size:22px}.detail-book{padding:20px}.detail-book h4{font-size:17px}.detail-line{font-size:12px}.compare-table th,.compare-table td{padding:12px}.compare-table{min-width:560px}dialog{border-radius:18px;max-height:calc(100dvh - 28px);width:calc(100% - 32px)}.price-explain p{font-size:12px}.price-explain summary{font-size:12px}}
@media(max-width:370px){.hero h1{font-size:39px}.hero-gallery{height:190px}.hero-main-photo{height:166px}.brand-logo{width:139px}.media{height:164px}.tile-price{font-size:9px;max-width:50px}.tile-action{font-size:10px}.operator{font-size:10px}.hero-small-photo{width:115px}.online-badge{font-size:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.brand:hover .brand-logo,.hero-gallery:hover .hero-main-photo>img,.hero-gallery:hover .hero-small-photo,.stay:hover .photo-open img,.save:hover,.primary:hover,.online-action:hover,.search-submit:hover{transform:none}.loader{border-color:var(--blue)}}
.area-button{flex:0 0 auto}
.hero-main-photo>img{transition:transform 350ms var(--ease)}
@media(max-width:640px){.hero-label{display:none}.hero{gap:14px}.hero h1{font-size:40px}.hero p{margin-top:12px}.hero-gallery{height:175px}.hero-main-photo{height:155px}.hero-small-photo{width:106px}.search-bar{margin-top:16px}.discovery{padding-top:16px}}
@media(max-width:370px){.brand-logo{width:144px}.hero h1{font-size:37px}.hero-gallery{height:168px}.hero-main-photo{height:148px}.hero-small-photo{width:102px}}
.hero h1{font-size:clamp(42px,4.2vw,60px)}.hero p{max-width:390px;font-size:14px}.portfolio-count{font-weight:750;color:var(--ink)}.hero-note{flex-wrap:wrap}.hero-note .icon{color:var(--blue)}.search-bar{display:grid;grid-template-columns:minmax(190px,1.6fr) repeat(2,minmax(140px,1fr)) repeat(2,minmax(95px,.65fr)) auto;gap:0;padding:10px;align-items:stretch}.stay-field{min-width:0;display:block;padding:4px 13px;border-right:1px solid var(--line)}.stay-field>span{font-size:11px;font-weight:650;color:var(--muted);display:flex;align-items:center;gap:5px;white-space:nowrap}.stay-field>span .icon{width:14px;height:14px;color:var(--blue)}.stay-field input,.stay-field select{border:0;background:transparent;width:100%;min-width:0;min-height:40px;color:var(--ink);padding:8px 0;outline:none;font:600 13px/1.4 system-ui,-apple-system,sans-serif}.stay-field select{cursor:pointer}.destination-field{position:relative;padding-right:33px}.destination-field .search-clear{position:absolute;right:0;bottom:0;width:32px;min-width:32px;height:40px;color:var(--muted)}.search-bar .search-submit{align-self:stretch;padding:0 20px;min-height:66px;margin-left:10px;gap:10px}.search-error{font-size:12px;margin:10px 3px 0;color:#A33232}.search-caption{font-size:12px;color:var(--muted);margin:12px 3px 0;display:flex;align-items:center;gap:6px}.search-caption>.icon{width:14px;height:14px;color:var(--blue)}.direct-benefits{display:flex;gap:26px;flex-wrap:wrap;margin:20px 0 0;color:var(--ink);font-size:12px}.direct-benefits span{display:flex;align-items:center;gap:7px}.direct-benefits .icon{width:17px;height:17px;color:var(--blue)}.tile-bottom{align-items:flex-end;gap:9px}.tile-price{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:100%;font-size:11px}.tile-price strong{font-size:20px;line-height:1.1;color:var(--ink);font-weight:750;letter-spacing:-.03em;white-space:nowrap}.tile-price .price-average{color:var(--blue);font-size:11px;font-weight:600}.tile-price .price-option{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}.tile-price .price-loading{color:var(--muted);display:flex;align-items:center;gap:6px}.price-spinner{display:inline-block;width:12px;height:12px;flex:none;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite}.tile-price .price-unavailable{color:var(--muted);font-size:11px;line-height:1.4}.tile-action{flex:none}.tile-bottom:has(.tile-price strong){flex-wrap:wrap}.tile-bottom:has(.tile-price strong) .online-action{width:100%;justify-content:center;margin-top:4px}.detail-price{margin:16px 0;font-size:12px}.detail-price strong{display:block;font-size:28px;font-weight:750;color:var(--blue)}.detail-price small{display:block;margin:5px 0;color:var(--muted)}.search-results-stay{font-weight:550;color:var(--blue)}
@media(max-width:1150px){.search-bar{grid-template-columns:minmax(175px,1.4fr) repeat(2,minmax(132px,1fr)) repeat(2,minmax(82px,.6fr)) auto}.stay-field{padding:4px 9px}.search-bar .search-submit{padding:0 15px}.search-bar .search-submit span{display:none}}
@media(max-width:900px){.search-bar{grid-template-columns:1fr 1fr 1fr;padding:10px;gap:8px}.stay-field{border-right:0;padding:5px 10px;background:var(--mint);border-radius:9px}.destination-field{grid-column:1/-1;padding-right:38px}.stay-field:nth-of-type(2),.stay-field:nth-of-type(3){grid-column:span 1}.search-bar .search-submit{margin:0;min-height:64px;justify-content:center}.search-bar .search-submit span{display:inline}.direct-benefits{gap:14px}.hero h1{font-size:44px}}
@media(max-width:640px){.hero h1{font-size:40px}.hero p{font-size:13px;margin-top:12px}.hero-gallery{height:170px}.hero-main-photo{height:150px}.search-bar{margin-top:20px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border-radius:16px}.stay-field{padding:6px 9px}.stay-field>span{font-size:11px}.stay-field input,.stay-field select{font-size:13px;min-height:34px;padding:6px 0}.search-bar .search-submit{width:100%;height:auto;min-height:48px;grid-column:1/-1;gap:8px}.search-bar .search-submit span{display:inline;font-size:13px}.direct-benefits{display:grid;grid-template-columns:1fr;gap:9px;margin-top:16px;font-size:11px}.search-caption{font-size:11px;align-items:flex-start}.tile-price strong{font-size:18px}.tile-price .price-option{max-width:100%}.tile-bottom:has(.tile-price strong) .online-action{font-size:11px;min-height:42px}.tile-price .price-average{font-size:10px}.tile-price .price-option{font-size:9px}.catalog-head{align-items:flex-start}.catalog-head h2{font-size:22px}.hero-note{display:none}}
@media(prefers-reduced-motion:reduce){.price-spinner{animation:none}}
/* Premium serviced-apartment layer over the selected City Days identity. */
:root { --paper: #F2EDE4; --ink: #211C19; --muted: #6C6259; --line: #D8CFC2; --mint: #E8E0D4; }
body { font-size: 14px; }
.shell { width: min(1280px, calc(100% - 96px)); }
.header { height: 92px; gap: 24px; }
.brand-logo { width: 174px; }
.nav { gap: 26px; }
.nav > a, .favorite-nav { font-size: 12px; }
.nav .nav-quote { background: var(--ink); color: white; border: 0; border-radius: 4px; padding: 0 18px; min-height: 44px; }
.nav-quote:hover { background: var(--blue); }
.hero { min-height: 550px; gap: 42px; grid-template-columns: .9fr 1.1fr; padding: 22px 0 40px; }
.hero-copy { padding: 0; }
.hero-label { display: inline-flex; font-size: 10px; letter-spacing: .15em; margin-bottom: 27px; color: var(--muted); }
.hero-label:before { width: 5px; height: 5px; }
.hero h1 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(48px, 4.9vw, 72px); line-height: 1.09; font-weight: 400; letter-spacing: -.05em; color: var(--ink); text-wrap: balance; }
.hero h1 span { color: var(--blue); font-style: italic; }
.hero p { max-width: 330px; color: var(--muted); line-height: 1.8; font-size: 14px; margin-top: 25px; }
.hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 27px; flex-wrap: wrap; }
.hero-actions .primary { background: var(--blue); border-radius: 4px; min-height: 47px; padding: 0 20px; font-size: 12px; }
.hero-actions .text-link { font-size: 12px; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.hero-gallery { height: 465px; margin: 0; }
.hero-main-photo { width: 100%; height: 100%; margin: 0; border-radius: 3px 3px 64px 3px; }
.hero-main-photo > img { object-position: 47% center; }
.hero-credit { top: auto; bottom: 20px; left: 20px; border-radius: 3px; padding: 10px 14px; font-size: 11px; gap: 8px; }
.hero-small-photo, .hero-window, .hero-accent { display: none; }
.hero-location { margin-top: 30px; color: var(--muted); display: flex; align-items: center; gap: 9px; font-size: 10px; letter-spacing: .03em; }
.hero-location .icon { width: 16px; height: 16px; color: var(--blue); }
.search-shell { background: white; border: 1px solid var(--line); border-radius: 8px; padding: 0 24px 20px; }
.stay-types { display: flex; gap: 26px; border-bottom: 1px solid var(--line); padding: 0; }
.stay-type { background: none; border: 0; border-bottom: 2px solid transparent; padding: 16px 1px 14px; font-size: 12px; min-height: 48px; color: var(--muted); }
.stay-type[aria-pressed=true] { color: var(--ink); border-color: var(--blue); font-weight: 650; }
.stay-type span { margin-left: 5px; font-size: 9px; color: var(--muted); }
.search-bar { box-shadow: none; border: 0; border-radius: 0; padding: 0; margin: 17px 0 0; grid-template-columns: minmax(170px, 1.35fr) repeat(2, minmax(136px, 1fr)) repeat(2, minmax(75px,.5fr)) auto; }
.search-bar:focus-within { box-shadow: none; border: 0; }
.stay-field { padding: 4px 16px; }
.stay-field:first-child { padding-left: 0; }
.stay-field > span { font-size: 10px; font-weight: 500; }
.stay-field input, .stay-field select { font-size: 12px; min-height: 40px; font-weight: 600; }
.search-bar .search-submit { min-height: 60px; border-radius: 4px; padding: 0 21px; font-size: 12px; }
.search-caption { margin-top: 12px; font-size: 10px; }
.direct-benefits { justify-content: space-between; margin-top: 22px; padding: 16px 2px 0; border-top: 1px solid var(--line); font-size: 10px; color: var(--muted); }
.discovery { padding-top: 64px; }
.catalog-kicker, .section-kicker { display: block; color: var(--blue); font-size: 10px; letter-spacing: .12em; margin-bottom: 13px; font-weight: 600; }
.area-rail { gap: 8px; padding-bottom: 20px; }
.area-button { background: transparent; border-radius: 4px; min-height: 44px; border-color: var(--line); }
.area-button[aria-pressed=true] { background: var(--ink); border-color: var(--ink); color: white; }
.catalog-head { margin-top: 0; padding-top: 25px; border-top: 1px solid var(--line); }
.catalog-head h2 { font-family: Georgia, serif; font-size: 35px; font-weight: 400; letter-spacing: -.04em; }
.catalog-head p { font-size: 11px; margin-top: 10px; }
.toggle { border-radius: 4px; font-size: 11px; min-height: 44px; }
.grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 36px 24px; }
.media { height: auto; aspect-ratio: 1.34; border-radius: 5px; }
.media .photo-open { height: 100%; }
.save { width: 40px; height: 40px; top: 12px; right: 12px; }
.online-badge { border-radius: 3px; font-size: 9px; left: 12px; top: 12px; padding: 5px 8px; }
.photo-count { right: 12px; bottom: 12px; border-radius: 3px; }
.stay-copy { padding-top: 15px; }
.name-open { font-size: 18px; font-weight: 600; letter-spacing: -.035em; margin-top: 9px; min-height: 32px; }
.operator { font-size: 11px; }
.facts { min-height: 24px; gap: 15px; color: var(--muted); font-size: 10px; }
.tile-bottom { border-top: 1px solid var(--line); margin-top: 14px; padding-top: 14px; min-height: 50px; }
.tile-price { font-size: 11px; line-height: 1.5; }
.tile-price strong { font-variant-numeric: tabular-nums; }
.tile-action, .online-action { border-radius: 4px; font-size: 11px; min-height: 44px; }
.quote-card-action { padding: 0 14px; color: var(--blue); background: #E8E0D4; border: 0; display: inline-flex; align-items: center; gap: 8px; }
.stay-period-note { font-size: 10px; color: var(--muted); }
.pagination { padding: 24px 0 0; }
.pagination .secondary { border-radius: 4px; min-height: 44px; }
.brief-note { margin-top: 30px; padding-top: 20px; font-size: 10px; }
.longstay { padding-top: 72px; padding-bottom: 72px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: center; }
.longstay figure { margin: 0; position: relative; overflow: hidden; border-radius: 4px; }
.longstay figure > img { height: 420px; object-position: center 35%; }
.longstay figcaption { position: absolute; left: 18px; bottom: 18px; color: white; background: #211C19e8; padding: 7px 11px; font-size: 10px; }
.longstay h2 { font-family: Georgia, serif; font-weight: 400; font-size: clamp(32px,3.2vw,48px); line-height: 1.12; letter-spacing: -.04em; text-wrap: balance; }
.longstay h2 em { color: var(--blue); font-weight: 400; }
.longstay p { color: var(--muted); font-size: 13px; line-height: 1.8; margin-top: 18px; max-width: 350px; }
.longstay-options { display: flex; gap: 24px; margin: 22px 0; padding: 20px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.longstay-options span { flex: 1; font-size: 11px; color: var(--muted); }
.longstay-options strong { display: block; font-size: 16px; color: var(--ink); font-weight: 500; margin-bottom: 6px; }
.longstay .primary { border-radius: 4px; min-height: 48px; font-size: 12px; }
.longstay .contact-note { font-size: 10px; margin-top: 12px; }
.stay-process { border-top: 1px solid var(--line); padding: 40px 0 56px; display: grid; grid-template-columns: 1.15fr repeat(3,1fr); gap: 32px; }
.stay-process h2 { font-family: Georgia,serif; font-size: 29px; font-weight: 400; line-height: 1.2; }
.process-step > span { font-family: Georgia,serif; font-size: 26px; color: #B9A27A; }
.process-step h3 { font-size: 13px; font-weight: 600; margin: 12px 0 8px; }
.process-step p { font-size: 11px; color: var(--muted); line-height: 1.7; }
.brand-footer { background: var(--ink); }
.footer { padding: 40px 0 28px; }
.footer-identity img { width: 160px; }
.footer-identity p { font-size: 11px; opacity: .8; margin-top: 14px; }
.footer > a { font-size: 12px; }
.footer-meta { display: flex; gap: 20px; justify-content: space-between; padding: 0 0 26px; color: #C9BFB1; font-size: 10px; line-height: 1.7; }
.footer-meta p { max-width: 690px; }
.footer-meta button { background: none; color: #F2EDE4; border: 0; padding: 0; min-height: 44px; white-space: nowrap; }
.mobile-contact { display: none; }
.quote-modal { max-width: 640px; }
.quote-intro { color: var(--muted); font-size: 12px; margin-bottom: 20px; line-height: 1.7; }
.quote-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.quote-field { display: flex; flex-direction: column; gap: 7px; color: var(--muted); font-size: 11px; }
.quote-field input, .quote-field select, .quote-field textarea { min-height: 44px; border: 1px solid var(--line); border-radius: 4px; padding: 10px; color: var(--ink); background: white; font: inherit; font-size: 13px; width: 100%; }
.quote-wide { grid-column: 1/-1; }
.quote-field textarea { resize: vertical; }
.quote-draft { white-space: pre-wrap; font: 12px/1.75 system-ui,sans-serif; background: #E8E0D4; padding: 18px; border-radius: 4px; margin: 18px 0 12px; }
.quote-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.quote-actions button, .quote-actions a { min-height: 44px; border-radius: 4px; font-size: 12px; }
.quote-help, .quote-status { font-size: 11px; color: var(--muted); margin: 12px 0 0; line-height: 1.7; }
.quote-status { color: var(--blue); }
.quote-error { color: #9e3030; font-size: 12px; margin-top: 12px; }
.detail-source { line-height: 1.7; }
.detail-book .detail-quote { margin-top: 12px; min-height: 44px; border-radius: 4px; padding: 8px 12px; color: var(--blue); border: 1px solid var(--line); background: white; width: 100%; font-size: 12px; }
button:active, .primary:active { transform: translateY(1px); }
@media (min-width: 1440px) { .hero-gallery { height: 510px; } .hero { min-height: 594px; } }
@media (max-width: 1150px) { .shell { width: calc(100% - 56px); } .hero { gap: 30px; } .hero-gallery { height: 425px; } .hero h1 { font-size: 58px; } .search-bar { grid-template-columns: 1fr 1fr 1fr; gap: 12px; } .destination-field { grid-column: 1/-1; } .stay-field { border: 0; background: #F2EDE4; padding: 8px 12px; border-radius: 4px; } .stay-field:first-child { padding-left: 12px; } .search-bar .search-submit { margin: 0; min-height: 64px; } .search-bar .search-submit span { display: inline; } .longstay { gap: 40px; } }
@media (max-width: 900px) { .nav { gap: 16px; } .nav .longstay-nav { display: none; } .hero h1 { font-size: 47px; } .hero-gallery { height: 400px; } .hero p { font-size: 12px; } .hero-actions { gap: 12px; } .hero-actions .primary { font-size: 11px; padding: 0 14px; } .grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .stay-process { grid-template-columns: repeat(3,1fr); gap: 24px; } .stay-process > h2 { grid-column: 1/-1; max-width: 350px; } }
@media (max-width: 640px) {
  .shell { width: calc(100% - 36px); } .header { height: 74px; gap: 12px; } .brand-logo { width: 145px; } .nav { gap: 7px; } .nav > a:first-child, .nav .nav-quote { display: none; } .favorite-nav { font-size: 0; min-width: 44px; justify-content: flex-end; gap: 5px; } .favorite-count { font-size: 10px; } .favorite-nav .icon { width: 19px; }
  .hero { display: flex; flex-direction: column; align-items: stretch; gap: 26px; padding: 12px 0 27px; min-height: 0; } .hero-copy { padding: 0 3px; } .hero-label { display: inline-flex; font-size: 9px; margin-bottom: 17px; } .hero h1 { font-size: clamp(40px,11.5vw,53px); line-height: 1.08; max-width: 360px; } .hero p { font-size: 12px; max-width: 305px; margin-top: 17px; line-height: 1.75; } .hero-actions { margin-top: 19px; gap: 19px; } .hero-actions .primary { min-height: 44px; } .hero-actions .text-link { font-size: 11px; } .hero-location { display: none; } .hero-gallery { height: 260px; } .hero-main-photo { height: 100%; border-radius: 3px 3px 36px 3px; } .hero-credit { left: 12px; bottom: 14px; font-size: 9px; padding: 7px 9px; }
  .search-shell { padding: 0 14px 15px; border-radius: 6px; } .stay-types { gap: 19px; } .stay-type { font-size: 11px; } .stay-type span { display: none; } .search-bar { grid-template-columns: 1fr 1fr; padding: 0; gap: 9px; margin-top: 14px; } .stay-field { padding: 7px 10px; } .stay-field > span { font-size: 10px; } .stay-field input, .stay-field select { font-size: 12px; } .search-bar .search-submit { min-height: 45px; grid-column: 1/-1; } .search-caption { font-size: 10px; line-height: 1.6; margin-top: 11px; } .direct-benefits { display: flex; gap: 8px; justify-content: flex-start; margin-top: 15px; padding-top: 12px; font-size: 9px; } .direct-benefits span:nth-child(2) { display: none; } .direct-benefits .icon { width: 14px; height: 14px; }
  .discovery { padding-top: 38px; } .catalog-kicker { font-size: 9px; margin-bottom: 16px; } .area-rail { gap: 7px; padding-bottom: 16px; overflow: auto; } .area-button { font-size: 10px; padding: 8px 12px; min-height: 44px; } .catalog-head { display: block; padding-top: 22px; margin-bottom: 20px; } .catalog-head h2 { font-size: 29px; line-height: 1.15; } .catalog-head p { font-size: 10px; margin-top: 8px; } .tools { margin-top: 16px; justify-content: flex-start; } .toggle { min-height: 44px; font-size: 10px; } .grid { grid-template-columns: 1fr; gap: 31px; } .media { aspect-ratio: 1.43; } .name-open { font-size: 19px; } .operator { font-size: 11px; } .facts { font-size: 10px; } .tile-price { font-size: 11px; } .tile-action { font-size: 11px; } .tile-bottom:has(.tile-price strong) .online-action { width: auto; } .tile-price .price-option { font-size: 10px; } .brief-note { flex-direction: column; align-items: flex-start; gap: 12px; font-size: 10px; } .brief-note button { min-height: 44px; }
  .longstay { display: flex; flex-direction: column; gap: 27px; padding-top: 42px; padding-bottom: 35px; align-items: stretch; } .longstay figure > img { height: 300px; } .longstay h2 { font-size: 37px; max-width: 330px; } .longstay p { font-size: 12px; } .longstay-options { gap: 18px; } .longstay .primary { width: 100%; justify-content: center; } .stay-process { grid-template-columns: 1fr; gap: 0; padding: 28px 0 35px; } .stay-process h2 { font-size: 29px; margin-bottom: 18px; } .process-step { display: grid; grid-template-columns: 32px 1fr; gap: 0 14px; padding: 17px 0; border-bottom: 1px solid var(--line); } .process-step > span { grid-row: span 2; font-size: 24px; } .process-step h3 { margin: 3px 0 6px; } .process-step p { font-size: 11px; }
  .footer { display: block; padding-top: 30px; } .footer > a { display: inline-flex; margin-top: 23px; min-height: 44px; } .footer-meta { display: block; padding-bottom: 100px; font-size: 9px; } .footer-meta button { margin-top: 10px; } .mobile-contact { display: flex; position: fixed; z-index: 8; left: 0; right: 0; bottom: 0; padding: 10px 18px calc(10px + env(safe-area-inset-bottom)); gap: 10px; background: #fffffff5; backdrop-filter: blur(12px); border-top: 1px solid var(--line); } .mobile-contact > a { width: 46px; min-height: 46px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 4px; } .mobile-contact > button { flex: 1; min-height: 46px; background: var(--blue); color: white; border: 0; border-radius: 4px; font-size: 12px; } .compare-tray { bottom: 80px; } .toast { bottom: 82px; } .quote-fields { gap: 12px; } .quote-actions > * { flex: 1; justify-content: center; } .quote-modal .modal-body { padding: 19px; } .quote-field input, .quote-field select { font-size: 16px; } .quote-field textarea { font-size: 16px; } .quote-field.quote-wide textarea { font-size: 12px; } .detail-content { gap: 20px; }
}
@media (prefers-reduced-motion: reduce) { *, *:before, *:after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media (max-width: 640px) {
  .hero-actions { gap: 12px; }
  .hero-actions .primary { padding: 0 11px; font-size: 10px; gap: 7px; }
  .hero-actions .primary .icon { width: 16px; height: 16px; }
  .hero-actions .text-link { font-size: 10px; gap: 7px; }
  .hero-actions .text-link .icon { width: 16px; height: 16px; }
}
/* Verified photo galleries preserve the full room composition. */
.media-caption{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:5px 9px;background:rgba(33,28,25,.78);color:#fff;font-size:10px;line-height:1.4;border-radius:4px;pointer-events:none}
.photo-count{bottom:auto!important;top:64px!important}
.gallery{background:#E8E0D4}
.gallery>img{object-fit:contain!important;max-width:100%;height:100%;margin:auto;display:block}
.gallery-caption{margin:0;padding:14px 24px 8px;font-size:14px;color:#3C3129;line-height:1.5}
.gallery-caption small{display:block;margin-top:4px;font-size:11px;line-height:1.6;color:#6C6259}
.reference-note{margin:0 0 8px;padding:10px 11px;background:var(--ice);border-left:2px solid var(--blue);color:var(--ink);font-size:11px;line-height:1.55}
.reference-note strong,.reference-note span{display:block}
.reference-note strong{font-size:11px;margin-bottom:3px}
.gallery-caption .reference-disclosure{padding:10px 12px;background:var(--ice);border-left:2px solid var(--blue);color:var(--ink);font-size:12px}
.project-note{background:#FAF7F1;border-left-color:#78613F}.reference-kind{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#78613F}.project-reference-intro{padding:14px 16px;margin-bottom:14px;background:#FAF7F1;border-left:2px solid #78613F;border-radius:8px}.project-reference-intro h4,.area-context h4{font-size:15px;color:var(--ink);margin:0 0 8px}.project-reference-intro p{font-size:12px;line-height:1.6;margin:5px 0}.project-reference-intro .source-address-note{color:var(--muted)}.gallery-caption .project-disclosure{padding:10px 12px;background:#FAF7F1;border-left:2px solid #78613F;color:var(--ink);font-size:12px}.area-context{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.area-context p,.area-context figcaption{font-size:12px;line-height:1.6;color:var(--muted)}.area-context figure{margin:12px 0 0}.area-context img{width:100%;height:auto;max-height:280px;object-fit:contain;border-radius:12px;background:var(--ice)}.area-context figcaption{padding-top:8px}
.gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:4px 24px 18px;scrollbar-width:thin}
.gallery-thumbnails button{flex:0 0 88px;width:88px;height:64px;border:2px solid transparent;border-radius:5px;overflow:hidden;padding:0;background:#E8E0D4}
.gallery-thumbnails button[aria-pressed=true]{border-color:#78613F}
.gallery-thumbnails img{width:100%;height:100%;object-fit:cover}
.reference-price{color:#6C6259;font-size:10px;letter-spacing:.02em}
@media(max-width:600px){.gallery-caption{padding:12px 18px 8px}.gallery-thumbnails{padding:2px 18px 14px}.media-caption{font-size:9px}.gallery{height:280px}}

.media .photo-low-resolution{max-width:320px;object-fit:contain!important;margin:auto}.media:has(.photo-low-resolution){background:#E8E0D4}
