*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:oklch(96.2% .018 78);--paper-soft:oklch(93.4% .023 80);--linen:oklch(89.7% .032 72);--ink:oklch(20.5% .025 105);--ink-soft:oklch(35.5% .028 100);--muted:oklch(49% .025 92);--palm:oklch(30% .055 155);--palm-soft:oklch(89% .045 145);--clay:oklch(59% .105 46);--clay-soft:oklch(86% .07 52);--night:oklch(19% .036 155);--line:oklch(82% .024 78);--surface:oklch(98.2% .01 78);--surface-strong:oklch(99% .006 78);--shadow-soft:0 24px 70px oklch(20% .02 90/.12);--shadow-small:0 12px 32px oklch(25% .02 90/.08);--px:clamp(18px, 5vw, 72px);--section-py:clamp(72px, 9vw, 132px);--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--radius:8px;--radius-lg:18px;--radius-xl:28px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}body{background:linear-gradient(90deg, oklch(20% .01 80/.035) 1px, transparent 1px) 0 0 / 72px 72px, var(--paper);min-width:320px;color:var(--ink);font-family:Avenir Next,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.6}#root{min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}input,select,textarea{outline:0}.container{width:100%;max-width:1440px;padding:0 var(--px);margin:0 auto}.section{padding:var(--section-py) 0}.section-tag,.page-header-tag,.arrival-kicker,.room-card-cat,.footer-col-title,.room-detail-cat,.form-label{color:var(--clay);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800;line-height:1.2;display:block}.section-title,.page-header-title,.hero-title,.cta-title,.room-detail-name,.room-about-title,.empty-state-title,.footer-logo,.room-card-name,.widget-price,.price-amount,.price-summary-value{font-family:Georgia,Times New Roman,serif;font-weight:500}.section-title{max-width:830px;color:var(--ink);margin-top:12px;font-size:clamp(2rem,5vw,4.8rem);line-height:.98}.section-subtitle{max-width:62ch;color:var(--muted);font-size:clamp(1rem,1.4vw,1.1rem);line-height:1.8}.btn,.text-link,.room-card-btn,.navbar-book-btn,.widget-submit{transition:transform .16s var(--ease-out), background-color .22s var(--ease-out), border-color .22s var(--ease-out), color .22s var(--ease-out), box-shadow .22s var(--ease-out);justify-content:center;align-items:center;gap:10px;display:inline-flex}.btn:active,.text-link:active,.room-card-btn:active,.navbar-book-btn:active,.widget-submit:active,.menu-toggle:active{transform:scale(.97)}.btn{border:1px solid #0000;border-radius:999px;min-height:48px;padding:13px 24px;font-size:.92rem;font-weight:800}.btn-primary{background:var(--clay);color:var(--surface-strong);box-shadow:0 14px 30px oklch(43% .08 48/.18)}.btn-primary:hover{background:oklch(52% .11 45);transform:translateY(-2px)}.btn-quiet{color:var(--surface-strong);border-color:oklch(96% .02 80/.46)}.btn-quiet:hover{background:oklch(96% .02 80/.12)}.btn-light{background:var(--surface);color:var(--night)}.btn-light:hover{background:var(--clay-soft);transform:translateY(-2px)}.text-link{color:var(--palm);white-space:nowrap;font-size:.94rem;font-weight:800}.text-link:hover{color:var(--clay)}.navbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:oklch(96% .018 78/.88);border-bottom:1px solid oklch(28% .02 100/.1);position:sticky;top:0}.navbar-inner{max-width:1440px;height:74px;padding:0 var(--px);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.navbar-logo{color:var(--night);align-items:center;gap:11px;font-family:Georgia,Times New Roman,serif;font-size:1.17rem;display:inline-flex}.logo-mark{background:var(--night);color:var(--paper);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-family:Avenir Next,Segoe UI,system-ui,sans-serif;font-size:.82rem;font-weight:900;display:inline-flex}.navbar-links{align-items:center;gap:clamp(18px,3vw,42px);display:flex}.navbar-links a{color:var(--ink-soft);padding:8px 0;font-size:.88rem;font-weight:700;position:relative}.navbar-links a:after{background:var(--clay);content:"";transform-origin:0;height:2px;transition:transform .18s var(--ease-out);width:100%;position:absolute;bottom:1px;left:0;transform:scaleX(0)}.navbar-links a:hover,.navbar-links a.active{color:var(--night)}.navbar-links a:hover:after,.navbar-links a.active:after{transform:scaleX(1)}.navbar-right{align-items:center;gap:12px;display:flex}.navbar-book-btn{background:var(--night);color:var(--paper);border-radius:999px;min-height:40px;padding:10px 18px;font-size:.86rem;font-weight:800}.navbar-book-btn:hover{background:var(--palm);transform:translateY(-1px)}.menu-toggle{color:var(--night);height:42px;transition:transform .16s var(--ease-out);background:0 0;justify-content:center;align-items:center;width:42px;display:none}.hero{background:var(--night);color:var(--surface);isolation:isolate;min-height:min(820px,100dvh - 74px);position:relative;overflow:hidden}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media:after{content:"";background:linear-gradient(90deg,oklch(18% .035 155/.92) 0%,oklch(18% .035 155/.72) 42%,oklch(18% .035 155/.18) 100%),linear-gradient(#0000 72%,oklch(18% .035 155/.86) 100%);position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:center;width:100%;height:100%}.hero-shell{min-height:min(820px,100dvh - 74px);padding:clamp(88px, 13vw, 170px) var(--px) 54px;grid-template-columns:minmax(0,1.1fr) minmax(280px,.42fr);align-items:end;gap:36px;display:grid}.hero-content{max-width:760px;margin-left:clamp(0px,5vw,70px)}.hero-eyebrow{color:var(--clay-soft);margin-bottom:22px}.hero-title{color:var(--surface);max-width:760px;font-size:clamp(3.4rem,9vw,8.2rem);line-height:.9}.hero-sub{color:oklch(88% .02 78/.86);max-width:58ch;margin-top:28px;font-size:clamp(1.02rem,1.8vw,1.25rem);line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.arrival-panel{border-radius:var(--radius-xl);color:var(--surface);background:oklch(96% .018 78/.12);border:1px solid oklch(96% .018 78/.18);align-self:end;gap:18px;padding:24px;display:grid;box-shadow:inset 0 1px oklch(98% .01 78/.12)}.arrival-panel p{margin-top:8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,3vw,2.45rem);line-height:1.05}.arrival-row{color:oklch(90% .018 78/.86);border-top:1px solid oklch(96% .018 78/.18);align-items:center;gap:12px;padding-top:16px;display:flex}.arrival-row svg{color:var(--clay-soft);flex:none}.intro-section{padding-bottom:clamp(42px,6vw,82px)}.intro-grid{grid-template-columns:minmax(0,.82fr) minmax(300px,.68fr);align-items:start;gap:clamp(28px,8vw,120px);display:grid}.intro-grid .section-title{font-size:clamp(2.2rem,5.8vw,5.7rem)}.split-header{justify-content:space-between;align-items:end;gap:28px;margin-bottom:clamp(34px,5vw,64px);display:flex}.rooms-section{background:linear-gradient(180deg, transparent 0%, var(--paper-soft) 100%);padding-top:clamp(42px,5vw,70px)}.rooms-grid{grid-template-columns:1.08fr .92fr 1fr;gap:22px;display:grid}.room-card{animation:rise .52s var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms);background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-small);min-width:0;transition:transform .24s var(--ease-out), box-shadow .24s var(--ease-out), border-color .24s var(--ease-out);border:1px solid oklch(84% .026 78/.9);flex-direction:column;display:flex;overflow:hidden}.room-card:nth-child(2){margin-top:clamp(24px,4vw,68px)}.room-card:nth-child(3){margin-top:clamp(4px,2vw,30px)}.room-card:hover{box-shadow:var(--shadow-soft);border-color:oklch(71% .06 55/.9);transform:translateY(-6px)}.room-card-img{aspect-ratio:4/3;background:var(--linen);display:block;position:relative;overflow:hidden}.room-card-img img{object-fit:cover;height:100%;transition:transform .6s var(--ease-out), filter .6s var(--ease-out);width:100%}.room-card:hover .room-card-img img{filter:saturate(.95)contrast(1.02);transform:scale(1.045)}.room-card-placeholder{background:linear-gradient(135deg, var(--palm-soft), var(--linen)), var(--linen);color:var(--palm);text-transform:uppercase;justify-content:center;align-items:center;height:100%;display:flex}.room-card-placeholder span{letter-spacing:.18em;border:1px solid oklch(45% .04 140/.26);border-radius:50%;padding:34px 20px;font-size:.72rem;font-weight:900}.room-card-body{flex-direction:column;flex:1;gap:14px;padding:clamp(20px,2.6vw,28px);display:flex}.room-card-name{color:var(--night);font-size:clamp(1.6rem,2.4vw,2.35rem);line-height:1.04}.room-card-desc{color:var(--muted);font-size:.95rem;line-height:1.7}.room-card-features{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.feature-chip{background:var(--palm-soft);color:var(--palm);border:1px solid oklch(72% .06 145/.48);border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.room-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:16px;margin-top:8px;padding-top:18px;display:flex}.room-price{gap:2px;display:grid}.price-amount{color:var(--night);font-size:clamp(1.35rem,2vw,1.9rem);line-height:1}.price-night{color:var(--muted);font-size:.78rem;font-weight:700}.room-card-btn{background:var(--night);color:var(--paper);border-radius:999px;flex:none;min-height:38px;padding:9px 15px;font-size:.84rem;font-weight:850}.room-card-btn:hover{background:var(--clay)}.amenities-section{background:var(--night);color:var(--surface);position:relative;overflow:hidden}.amenities-section:before{content:"";opacity:.5;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,oklch(96% .018 78/.08) 1px,#0000 1px),linear-gradient(0deg,oklch(96% .018 78/.05) 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:92px 92px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.amenities-layout{grid-template-columns:minmax(280px,.58fr) minmax(0,1fr);align-items:start;gap:clamp(36px,7vw,100px);display:grid;position:relative}.amenities-copy{position:sticky;top:112px}.amenities-section .section-title{color:var(--surface)}.amenities-section .section-subtitle{color:oklch(84% .018 78/.78);margin-top:22px}.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.amenity-card{min-height:210px;transition:background-color .22s var(--ease-out), transform .22s var(--ease-out);background:oklch(96% .018 78/.075);border:1px solid oklch(96% .018 78/.08);gap:18px;padding:clamp(22px,3vw,34px);display:grid}.amenity-card:hover{background:oklch(96% .018 78/.12);transform:translateY(-3px)}.amenity-icon{color:var(--clay-soft);border:1px solid oklch(82% .07 52/.38);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.amenity-label{color:var(--surface);margin-bottom:8px;font-size:1.1rem;line-height:1.2}.amenity-card p{color:oklch(84% .018 78/.72);font-size:.94rem;line-height:1.65}.service-grid{grid-template-columns:minmax(0,.92fr) minmax(300px,.74fr);align-items:center;gap:clamp(34px,8vw,118px);display:grid}.service-image{border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);min-height:620px;overflow:hidden}.service-image img{object-fit:cover;width:100%;height:100%;min-height:620px}.service-list .section-title{margin-bottom:34px}.service-note{border-top:1px solid var(--line);grid-template-columns:42px 1fr;align-items:flex-start;gap:18px;padding:22px 0;display:grid}.service-note>span{background:var(--surface);border:1px solid var(--line);color:var(--clay);border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.service-note h3{color:var(--night);margin-bottom:4px;font-size:1.04rem}.service-note p{color:var(--muted);line-height:1.7}.cta-section{color:var(--surface);background:linear-gradient(120deg,oklch(22% .04 155) 0%,oklch(20% .03 112) 54%,oklch(34% .08 46) 100%);padding:clamp(86px,12vw,158px) 0;position:relative;overflow:hidden}.cta-section:after{content:"";background:linear-gradient(90deg,#0000,oklch(96% .02 78/.18),#0000);height:1px;position:absolute;top:0;left:0;right:0}.cta-inner{max-width:850px}.cta-title{color:var(--surface);margin-top:12px;font-size:clamp(3rem,8vw,7rem);line-height:.94}.cta-sub{color:oklch(88% .018 78/.8);max-width:56ch;margin:24px 0 34px;font-size:1.08rem;line-height:1.75}.page-header{color:var(--surface);background:linear-gradient(115deg,oklch(20% .035 155/.96),oklch(24% .04 120/.84)),url(https://picsum.photos/seed/isinmi-lobby/1600/900) 50%/cover;padding:clamp(88px,12vw,156px) 0 clamp(64px,8vw,102px)}.page-header-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.36fr);align-items:end;gap:32px;display:grid}.page-header-title{color:var(--surface);max-width:900px;margin-top:14px;font-size:clamp(3rem,8vw,7.2rem);line-height:.92}.page-header-sub{color:oklch(88% .02 78/.82);max-width:60ch;margin-top:24px;font-size:1.05rem;line-height:1.75}.page-note{border-radius:var(--radius-xl);color:oklch(90% .018 78/.86);background:oklch(96% .018 78/.1);border:1px solid oklch(96% .018 78/.16);gap:16px;padding:24px;display:grid}.page-note svg{color:var(--clay-soft);width:30px;height:30px}.rooms-list-section{background:var(--paper-soft)}.room-card-wide .room-card-img{aspect-ratio:16/11}.booking-widget{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);position:sticky;top:96px;overflow:hidden}.widget-header{background:var(--night);color:var(--surface);padding:28px}.widget-price{color:var(--surface);font-size:clamp(2rem,4vw,3rem);line-height:1}.widget-price-note{color:oklch(86% .018 78/.68);margin-top:8px;font-size:.86rem}.widget-body{padding:26px 28px 28px}.form-group{gap:7px;margin-bottom:16px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row>div{gap:7px;display:grid}.form-input{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);min-height:44px;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out), background-color .16s var(--ease-out);width:100%;padding:10px 12px}.form-input:focus{background:var(--surface);border-color:var(--clay);box-shadow:0 0 0 4px oklch(59% .105 46/.12)}.form-textarea{resize:vertical;min-height:88px}.price-summary{background:var(--palm-soft);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin:18px 0;padding:14px 16px;display:flex}.price-summary-label{color:var(--palm);font-size:.86rem;font-weight:750}.price-summary-value{color:var(--night);font-size:1.45rem}.widget-submit{background:var(--night);border-radius:var(--radius);color:var(--paper);width:100%;min-height:48px;font-weight:850}.widget-submit:hover{background:var(--palm)}.widget-submit:disabled{cursor:not-allowed;opacity:.62;transform:none}.widget-note{color:var(--muted);text-align:center;margin-top:12px;font-size:.8rem;line-height:1.55}.room-detail-hero{background:var(--night);height:min(520px,58vw);min-height:320px;position:relative;overflow:hidden}.room-detail-hero img{object-fit:cover;width:100%;height:100%}.room-detail-hero-overlay{background:linear-gradient(#0000 38%,oklch(18% .035 155/.64));position:absolute;inset:0}.room-detail-content{padding:clamp(54px,8vw,92px) 0 clamp(76px,10vw,128px)}.room-detail-layout{grid-template-columns:minmax(0,1fr) minmax(320px,390px);align-items:start;gap:clamp(32px,6vw,74px);display:grid}.room-detail-name{color:var(--night);margin:12px 0 24px;font-size:clamp(2.7rem,6vw,6.4rem);line-height:.94}.room-detail-price-row{border-bottom:1px solid var(--line);border-top:1px solid var(--line);align-items:center;gap:10px;margin-bottom:24px;padding:18px 0;display:flex}.room-detail-price{color:var(--night);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,2.6rem)}.room-detail-features{flex-wrap:wrap;gap:8px;margin:24px 0 34px;display:flex}.room-about-title{color:var(--night);margin-bottom:14px;font-size:clamp(1.7rem,3vw,2.5rem)}.room-about-text{color:var(--muted);max-width:72ch;font-size:1.02rem;line-height:1.85}.loading-center{justify-content:center;align-items:center;min-height:320px;display:flex}.spinner{border:3px solid var(--line);border-top-color:var(--clay);border-radius:50%;width:42px;height:42px;animation:.76s linear infinite spin}.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);text-align:center;padding:clamp(42px,7vw,84px) 24px}.empty-state.compact{margin-top:26px}.empty-state-title{color:var(--night);font-size:clamp(1.7rem,3vw,2.7rem)}.empty-state-text{color:var(--muted);margin-top:8px}.skeleton-card{pointer-events:none}.skeleton-media,.skeleton-line{background:linear-gradient(90deg, var(--linen), var(--surface), var(--linen));background-size:220% 100%;animation:1.2s linear infinite shimmer}.skeleton-media{aspect-ratio:4/3}.skeleton-line{border-radius:999px;width:100%;height:12px}.skeleton-line.short{width:34%}.skeleton-line.title{width:78%;height:28px}.skeleton-line.tiny{width:52%}.footer{background:var(--night);color:oklch(88% .016 78/.72);padding:clamp(64px,8vw,96px) 0 34px}.footer-grid{grid-template-columns:minmax(260px,1.3fr) repeat(3,minmax(150px,.6fr));gap:clamp(32px,5vw,68px);padding-bottom:48px;display:grid}.footer-logo{color:var(--surface);margin-bottom:18px;font-size:1.7rem;line-height:1;display:inline-block}.footer-desc{max-width:34ch;line-height:1.75}.footer-social{gap:10px;margin-top:24px;display:flex}.social-btn{color:oklch(88% .016 78/.7);height:38px;transition:background-color .18s var(--ease-out), color .18s var(--ease-out), transform .16s var(--ease-out);border:1px solid oklch(96% .018 78/.15);border-radius:50%;justify-content:center;align-items:center;width:38px;display:inline-flex}.social-btn:hover{background:var(--clay);color:var(--surface);transform:translateY(-2px)}.footer-col-title{color:var(--clay-soft);margin-bottom:18px}.footer-links{gap:11px;display:grid}.footer-links a,.footer-contact-row{color:oklch(88% .016 78/.68);font-size:.94rem}.footer-links a:hover{color:var(--surface)}.footer-contact-row{align-items:flex-start;gap:10px;margin-bottom:12px;line-height:1.6;display:flex}.footer-contact-icon{color:var(--clay-soft);flex:none;margin-top:3px}.footer-bottom{color:oklch(88% .016 78/.48);border-top:1px solid oklch(96% .018 78/.11);justify-content:space-between;align-items:center;gap:16px;padding-top:26px;font-size:.84rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{to{background-position:-220% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (width<=1080px){.hero-shell,.intro-grid,.amenities-layout,.service-grid,.page-header-grid,.room-detail-layout{grid-template-columns:1fr}.arrival-panel,.page-note{max-width:520px}.amenities-copy{position:static}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-card:nth-child(2),.room-card:nth-child(3){margin-top:0}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=760px){:root{--section-py:68px;--px:clamp(16px, 5vw, 28px)}.navbar-inner{height:68px}.navbar-links{background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-small);padding:8px var(--px);gap:0;display:none;position:absolute;top:68px;left:0;right:0}.navbar-links.open{display:grid}.navbar-links a{border-bottom:1px solid var(--line);padding:15px 0}.navbar-links a:last-child{border-bottom:0}.navbar-links a:after,.navbar-book-btn{display:none}.menu-toggle{display:inline-flex}.hero,.hero-shell{min-height:calc(100dvh - 68px)}.hero-shell{align-items:end;padding-top:96px}.hero-content{margin-left:0}.hero-title,.page-header-title,.cta-title{font-size:clamp(3rem,16vw,4.8rem)}.split-header{flex-direction:column;align-items:start}.rooms-grid,.amenities-grid,.footer-grid{grid-template-columns:1fr}.service-image,.service-image img{min-height:360px}.form-row{grid-template-columns:1fr}.room-detail-price-row,.footer-bottom{flex-direction:column;align-items:flex-start}}@media (width<=460px){.hero-actions,.btn{width:100%}.arrival-panel,.page-note,.room-card,.booking-widget,.empty-state{border-radius:18px}.room-card-footer,.price-summary{flex-direction:column;align-items:flex-start}}
