@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#171210;--deep:#0c0a09;--gold:#e3ba64;--paper:#fffefa;--text:#2d251c;--muted:#716a60;--line:#e4dfd4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none;transition:color .18s,background .18s,transform .18s;-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #b29457;outline-offset:6px}p,h1,h2,h3,figure{margin:0}em{font-weight:400}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.15}h2{font-size:clamp(2rem,3.05vw,2.9rem);letter-spacing:-.035em}h2 em{color:#7c6541}svg{flex-shrink:0}.skip{position:fixed;top:-80px;left:20px;background:var(--gold);padding:12px 20px;z-index:100}.skip:focus{top:10px}
.header{background:var(--ink);color:var(--paper);min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 5.2%;border-bottom:1px solid #ffffff17}.brand{display:flex;flex-direction:column;width:max-content}.brand-main{font-family:var(--serif);font-size:1.9rem;line-height:1.2;letter-spacing:-.055em}.brand-main i{color:var(--gold);letter-spacing:-.02em}.brand-sub{font-size:.75rem;font-weight:500;letter-spacing:.22em;margin-top:9px;color:#cfbfa3}.header nav{display:flex;gap:32px;font-size:.9rem;color:#e4dace}.header nav a:hover{color:var(--gold)}.header-call{border:1px solid #ffffff4d;padding:11px 18px;font-size:.9rem;display:flex;align-items:center;gap:10px;white-space:nowrap}.header-call:hover{background:#ffffff0d}
.hero{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.08fr 1fr;overflow:hidden}.hero-copy{padding:74px 9.5% 78px 10%;align-self:center}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:500;display:flex;align-items:center;gap:12px;color:var(--gold);line-height:1.5}.small-line{width:26px;height:1px;background:var(--gold);flex-shrink:0}.hero h1{font-size:clamp(3.3rem,5.45vw,5.3rem);letter-spacing:-.045em;margin:29px 0 24px;line-height:1.1}.hero h1 em{color:var(--gold)}.hero-description{max-width:370px;color:#d5c9b5;line-height:1.85}.hero-actions{margin-top:32px;display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;min-height:52px;font-size:.9rem;font-weight:600;line-height:1.5;text-align:center}.gold{background:var(--gold);color:var(--deep)}.gold:hover{background:#ead5a8;transform:translateY(-2px)}.text-link{font-size:.9rem;border-bottom:1px solid #80918b;padding:9px 0}.text-link:hover{color:var(--gold)}.hero-note{font-size:.875rem;color:#c9bba4;margin-top:33px;display:flex;gap:9px;align-items:center}.hero-note>span{font-size:1.5rem;line-height:1}.hero-image{position:relative;min-height:610px;margin:24px 26px 24px 0;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;object-position:50% 57%;filter:saturate(.64) brightness(.84)}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081d20ab,transparent 40%)}.hero-image figcaption{position:absolute;bottom:30px;left:30px;right:30px;display:flex;flex-direction:column;gap:7px;z-index:1}.hero-image figcaption span:first-child{font-size:.75rem;letter-spacing:.22em}.hero-image figcaption span:last-child{font-family:var(--serif);font-size:1.8rem;font-style:italic}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:19px 5.2%;border-top:1px solid #ffffff1c;font-size:.75rem;letter-spacing:.17em;color:#c9bba4}.hero-bottom a{display:flex;gap:20px;align-items:center}.hero-bottom a span{font-size:1.2rem}
.section-wrap{max-width:1320px;margin:auto;padding-left:6.4%;padding-right:6.4%}.eyebrow.dark{color:#847048}.intro{display:grid;grid-template-columns:1.12fr 1fr;gap:80px;padding-top:97px;padding-bottom:92px}.intro h2{margin-top:20px}.intro-text{padding-top:30px;color:var(--muted)}.intro-text p:first-child{color:var(--text);font-size:1.13rem;margin-bottom:20px}.intro-text p{max-width:435px}.underlined{display:inline-block;margin-top:22px;font-size:.9rem;color:var(--text);padding-bottom:5px;border-bottom:1px solid #9b8256}.underlined:hover{color:#937544}.amenities{padding-top:65px;padding-bottom:75px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.section-heading h2{margin-top:16px}.section-heading>p{font-size:.9rem;color:var(--muted);padding-bottom:5px}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px}.amenity{padding:5px 27px;border-left:1px solid var(--line)}.amenity:first-child{padding-left:0;border-left:0}.amenity:last-child{padding-right:0}.amenity svg{width:32px;height:32px;color:#7a6644;margin-bottom:22px}.amenity h3{font-size:1rem;font-weight:500;line-height:1.4;margin-bottom:11px}.amenity p{font-size:.9rem;color:var(--muted);line-height:1.7;max-width:225px}
.suite-callout{background:var(--ink);color:var(--paper);position:relative;display:grid;grid-template-columns:1fr 200px;gap:40px;padding-top:77px;padding-bottom:77px;overflow:hidden;max-width:none;padding-left:max(6.4%,calc((100vw - 1150px)/2));padding-right:max(6.4%,calc((100vw - 1150px)/2))}.callout-number{position:absolute;left:32px;top:-80px;color:#ffffff04;font-family:var(--serif);font-size:490px;line-height:1;letter-spacing:-.15em;pointer-events:none}.callout-number span{font-style:italic}.callout-copy{position:relative;max-width:640px}.callout-copy h2{font-size:clamp(2.3rem,3.3vw,3.4rem);margin-top:24px}.callout-copy h2 em{color:var(--gold)}.callout-copy>p:not(.eyebrow){margin:24px 0 30px;max-width:530px;color:#d1c3ac;line-height:1.8}.callout-aside{align-self:center;text-align:center;border-left:1px solid #ffffff2a;padding-left:46px}.callout-aside>span{font-family:var(--serif);font-size:5.8rem;line-height:1.1;color:var(--gold)}.callout-aside>p{font-size:.75rem;letter-spacing:.18em;margin-top:12px;color:#ede2cf}.aside-line{background:#ffffff3b;height:1px;width:35px;margin:25px auto}.callout-aside .aside-caption{letter-spacing:0;font-size:.875rem;color:#c7b89e;line-height:1.7}
.location{display:grid;grid-template-columns:1fr 1fr;gap:72px;padding-top:96px;padding-bottom:94px}.location-copy h2{margin-top:20px}.address{margin:25px 0 30px;color:var(--muted);line-height:1.9}.dark-button{background:var(--ink);color:var(--paper)}.dark-button:hover{background:#3e3020;transform:translateY(-2px)}.contact-card{align-self:center;padding:34px 34px 26px;border:1px solid var(--line);background:#f6f1e7}.big-phone{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.4;display:block;margin:13px 0 8px;letter-spacing:.025em}.big-phone:hover{color:#877244}.contact-card>p:not(.eyebrow){font-size:.9rem;color:var(--muted);line-height:1.8}.contact-divider{height:1px;background:var(--line);margin:28px 0 14px}.contact-row{display:flex;gap:15px;justify-content:space-between;font-size:.875rem;padding:11px 0;align-items:baseline}.contact-row>span{color:var(--muted);font-size:.875rem}.contact-row strong{font-weight:500}.contact-row a{text-align:right;text-decoration:underline;text-underline-offset:4px}.email-row a{overflow-wrap:anywhere}
.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding-top:64px;padding-bottom:86px;border-top:1px solid var(--line)}.faq h2{margin-top:20px;font-size:clamp(2rem,2.7vw,2.6rem)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:20px 0;display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:.95rem;list-style:none;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:1.4rem;font-weight:400;color:#8a7448;line-height:1;flex-shrink:0}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding:0 30px 22px 0;color:var(--muted);font-size:.9rem;line-height:1.9}.faq-list details p a{color:var(--ink);text-decoration:underline}.footer{background:var(--deep);color:#d7c8b2;padding:40px 5.2% 23px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:34px}.footer-top>p{font-family:var(--serif);font-size:1.35rem;font-style:italic;color:var(--gold)}.footer-top>a:not(.brand){font-size:.95rem}.footer-bottom{border-top:1px solid #ffffff21;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#b5a68f}.mobile-contact{display:none}
@media(min-width:1600px){.hero-copy{padding-left:15%}.hero h1{font-size:6rem}.hero-image{min-height:700px}}
@media(max-width:1050px){.header{gap:20px;padding-left:4%;padding-right:4%}.header nav{gap:19px}.hero-copy{padding:55px 8% 60px}.hero-image{min-height:590px;margin-right:20px}.hero-actions{gap:16px}.intro{gap:45px}.amenity{padding:5px 18px}.location{gap:40px}.contact-card{padding:28px 24px}.contact-row{flex-wrap:wrap;gap:7px}.faq{gap:36px}.section-wrap{padding-left:5%;padding-right:5%}}
@media(max-width:760px){html{scroll-padding-top:25px}.header{min-height:89px;padding:19px 6%;gap:18px}.brand-main{font-size:1.6rem}.brand-sub{font-size:.75rem;margin-top:7px;letter-spacing:.13em}.header nav{display:none}.header-call{font-size:.875rem;padding:9px 12px;gap:7px}.hero{grid-template-columns:1fr}.hero-copy{padding:47px 7% 41px}.hero h1{font-size:clamp(3.5rem,12vw,5.2rem);margin-top:23px;margin-bottom:23px}.hero-description{font-size:1rem;max-width:390px}.hero-actions{gap:25px;margin-top:27px}.hero-note{margin-top:27px}.hero-image{height:340px;min-height:0;margin:0 6% 25px}.hero-image img{object-position:50% 57%}.hero-image figcaption{bottom:20px;left:22px}.hero-image figcaption span:last-child{font-size:1.5rem}.hero-bottom{padding:17px 7%;font-size:.75rem;gap:20px;letter-spacing:.08em}.hero-bottom>span{max-width:140px}.hero-bottom a{gap:10px}.section-wrap{padding-left:7%;padding-right:7%}.intro{grid-template-columns:1fr;gap:20px;padding-top:59px;padding-bottom:56px}.intro-text{padding-top:0}.intro h2{font-size:2.3rem}.intro-text p:first-child{font-size:1.06rem}.amenities{padding-top:46px;padding-bottom:47px}.section-heading{display:block}.section-heading>p{margin-top:16px}.section-heading h2{font-size:2.2rem;max-width:330px}.amenity-grid{grid-template-columns:1fr 1fr;gap:30px 20px;margin-top:34px}.amenity,.amenity:first-child,.amenity:last-child{padding:0;border:0}.amenity svg{margin-bottom:15px;width:30px;height:30px}.amenity h3{font-size:.95rem}.amenity p{font-size:.875rem}.suite-callout{grid-template-columns:1fr;padding-top:53px;padding-bottom:52px;gap:35px}.callout-copy h2{font-size:2.35rem}.callout-copy>p:not(.eyebrow){margin-top:21px}.callout-aside{display:flex;align-items:center;text-align:left;gap:22px;border-left:0;padding-left:0;padding-top:22px;border-top:1px solid #ffffff29}.callout-aside>span{font-size:3.7rem}.callout-aside>p{margin:0;font-size:.75rem;line-height:1.8}.callout-aside .aside-line,.callout-aside .aside-caption{display:none}.callout-number{font-size:360px;left:0;top:30px}.location{grid-template-columns:1fr;gap:38px;padding-top:58px;padding-bottom:55px}.location-copy h2{font-size:2.35rem}.contact-card{padding:29px 25px}.big-phone{font-size:2.8rem}.contact-row{flex-wrap:nowrap;font-size:.875rem;gap:14px}.contact-row strong{text-align:right}.faq{grid-template-columns:1fr;gap:26px;padding-top:45px;padding-bottom:53px}.faq h2{font-size:2.2rem}.faq-list summary{font-size:.95rem;padding:19px 0}.footer{padding:35px 7% 99px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top>p{display:none}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:.75rem}.footer-bottom>span:first-child{width:100%}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--gold);color:var(--deep);justify-content:space-between;align-items:center;padding:16px 7%;font-size:.9rem;font-weight:600;min-height:58px;box-shadow:0 -3px 20px #0002}.mobile-contact span{font-weight:400}}
@media(max-width:380px){.header-call svg{display:none}.header-call{padding:8px;font-size:.875rem}.brand-main{font-size:1.4rem}.brand-sub{letter-spacing:.07em}.hero h1{font-size:3.3rem}.hero-actions{gap:16px}.hero-actions .button{padding:14px 18px}.hero-bottom{letter-spacing:.06em}.contact-card{padding:25px 20px}.contact-row{flex-wrap:wrap}.contact-row a,.contact-row strong{text-align:left}}
.header{flex-wrap:wrap}.hero-copy,.intro>div,.location>div,.faq>div,.callout-copy{min-width:0}h1,h2,.big-phone{overflow-wrap:break-word}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a{transition:none}.button:hover{transform:none}}

/* Current Pacific Suites identity and owner-provided photographs. */
.hero-image img{filter:none;object-position:50% 39%}.hero-image:after{background:linear-gradient(0deg,#0c0a098c,transparent 34%)}.rooms{display:grid;grid-template-columns:1fr 1.08fr;gap:65px;border-top:1px solid var(--line);padding-top:65px;padding-bottom:75px;align-items:center}.rooms-copy{min-width:0}.rooms h2{margin-top:20px}.rooms-intro{margin-top:22px;color:var(--muted);max-width:400px}.room-list{margin-top:26px;border-top:1px solid var(--line)}.room-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.room-row:hover{color:#896427}.room-row>span:first-child{display:flex;flex-direction:column;gap:3px}.room-row strong{font-weight:500;font-size:1rem}.room-row>span>span{font-size:.875rem;color:var(--muted)}.room-action{font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.room-note{font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:20px}.promo-figure{margin:0;min-width:0}.promo-figure img{display:block;width:100%;height:auto;border:1px solid #d5b268}.promo-figure figcaption{margin-top:14px;text-align:center;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.amenities-note{margin-top:35px;font-size:.875rem;color:var(--muted);line-height:1.9}.amenities-note span{display:inline-block;margin:0 10px;color:#9c7b43}
@media(max-width:1050px){.rooms{gap:35px}}
@media(max-width:760px){.rooms{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:50px}.rooms h2{font-size:2.3rem}.promo-figure{max-width:580px;width:100%;margin:auto}.hero-image img{object-position:50% 36%}.hero h1{font-size:clamp(3rem,10.8vw,4.5rem)}.header-call{font-size:.875rem}.amenities-note span{margin:0 6px}}

/* Reception landlines, confirmed by the owner. */
.fixed-label{font-size:.875rem;color:var(--muted);margin-bottom:14px}.fixed-lines{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:17px}.fixed-lines>a{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);padding:15px 13px;min-width:0}.fixed-lines>a:hover{border-color:#b89246;background:#eee6d7}.fixed-lines>a>span:first-child{font-size:.875rem;color:var(--muted)}.fixed-lines strong{font-size:1.125rem;font-weight:500;overflow-wrap:break-word}.fixed-action{font-size:.875rem;text-decoration:underline;text-underline-offset:4px;margin-top:5px}.footer-contacts{display:flex;flex-direction:column;gap:9px;font-size:.875rem}.footer-contacts a:hover{color:var(--gold)}
@media(max-width:380px){.fixed-lines{grid-template-columns:1fr}.header-call{font-size:.875rem}}

/* Traveler overnight rate, confirmed by the owner. */
.traveler-teaser{display:inline-block;font-size:.875rem;color:var(--gold);border-bottom:1px solid #b98d48;margin-top:16px;padding-bottom:4px;line-height:1.7}.traveler-teaser:hover{color:#f1d38f}.traveler-offer .callout-copy strong{font-weight:600;color:var(--paper)}.traveler-offer .callout-aside>span{font-size:6rem}.traveler-offer .aside-caption{font-size:1rem;color:var(--gold)}
@media(max-width:760px){.traveler-offer .callout-aside{flex-wrap:wrap}.traveler-offer .callout-aside>span{font-size:4rem}.traveler-offer .callout-aside>p{font-size:.75rem}.traveler-offer .callout-aside .aside-caption{display:block;width:100%;font-size:1rem}.traveler-offer .aside-caption br{display:none}}

/* Regular four-hour stay information. */
.room-rate-info{display:flex;flex-direction:column;gap:8px;margin-top:22px;padding:18px 20px;background:#f3ecdf;border-left:3px solid #b89246;font-size:.95rem;line-height:1.7}.room-rate-info strong{font-size:1rem;font-weight:600}.room-rate-info span{color:var(--muted)}.room-row>span:first-child{min-width:0}.room-action{flex-shrink:0}
@media(max-width:380px){.room-row{gap:14px}.room-action{max-width:75px;text-align:right}}

/* Numbered rooms with their confirmed photographs and prices. */
.room-catalog{padding-top:66px;padding-bottom:75px;border-top:1px solid var(--line)}.catalog-list{display:grid;gap:36px;margin-top:38px}.catalog-item{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);border:1px solid var(--line);background:#fff;overflow:hidden}.room-gallery{min-width:0;padding:18px;background:#f5f0e7}.room-photo-full{display:block}.room-main-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.room-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.room-thumbnail{border:2px solid transparent;padding:0;background:transparent;cursor:pointer;overflow:hidden}.room-thumbnail[aria-pressed="true"]{border-color:#9f7536}.room-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.room-thumbnail:focus-visible{outline:3px solid #b29457;outline-offset:3px}.room-photo-counter{font-size:.75rem;color:var(--muted);margin-top:9px}.catalog-detail{align-self:center;padding:35px 34px;min-width:0}.catalog-detail h3{font-family:var(--serif);font-size:2.6rem;font-weight:400;line-height:1.2;margin-top:14px}.catalog-description{margin-top:18px;color:var(--muted);line-height:1.8}.catalog-price{display:flex;align-items:baseline;gap:15px;flex-wrap:wrap;margin-top:23px}.catalog-price strong{font-family:var(--serif);font-weight:500;font-size:2.9rem;line-height:1.25;color:#806025}.catalog-price span{font-size:1rem}.catalog-price-note{font-size:.875rem;color:var(--muted);margin-top:5px}.room-benefits{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.room-benefits span{font-size:.875rem;padding:5px 9px;background:#f5f0e7;color:#67523a}.catalog-detail .button{width:100%;max-width:310px}.catalog-night-link{display:block;font-size:.875rem;margin-top:16px;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}
@media(max-width:1050px){.catalog-detail{padding:25px}.catalog-detail h3{font-size:2.3rem}.catalog-price strong{font-size:2.6rem}.room-gallery{padding:14px}}
@media(max-width:760px){.room-catalog{padding-top:45px;padding-bottom:50px}.catalog-list{margin-top:28px}.catalog-item{grid-template-columns:1fr}.room-gallery{padding:12px}.catalog-detail{padding:27px 24px}.catalog-detail h3{font-size:2.3rem}.room-thumbnails{gap:7px}.catalog-detail .button{max-width:none}.room-benefits{margin:22px 0}}

/* Traveler offer: one four-hour tariff covers the overnight stay. */
.catalog-traveler-offer{margin-top:24px;padding:19px 20px;background:#f4ecdc;border-left:3px solid var(--gold);font-size:.9rem;line-height:1.7}.catalog-traveler-label{font-size:.7rem;letter-spacing:.12em;color:#735a31;margin-bottom:8px}.catalog-traveler-offer strong{font-size:1.15rem;font-weight:600}.catalog-traveler-caption{color:var(--muted);margin-top:7px}.catalog-traveler-offer a{display:inline-block;margin-top:10px;font-weight:500;text-decoration:underline;text-underline-offset:4px}.traveler-saving{display:inline-block;margin-top:14px;font-size:.875rem;color:#d1c3ac}

.catalog-traveler-offer .offer-person{font-size:.875rem;font-weight:500;color:var(--text)}

.catalog-features{margin:18px 0 22px;padding-left:20px;font-size:1rem;line-height:1.75;color:var(--text)}.catalog-features li+li{margin-top:4px}

/* Reservation requests are completed with reception through WhatsApp. */
.reservation-trigger{font-family:inherit;border:0;cursor:pointer}.catalog-consult-link{display:block;margin-top:12px;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}.catalog-traveler-offer .reservation-trigger{background:transparent;padding:0;min-height:44px;color:var(--text);font-size:.9rem;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-align:left}.reservation-open{overflow:hidden}.reservation-dialog{border:1px solid var(--line);width:min(620px,calc(100% - 28px));max-height:calc(100dvh - 32px);margin:auto;padding:32px;background:var(--paper);color:var(--text);overflow:auto}.reservation-dialog::backdrop{background:#100c0bc9}.reservation-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.reservation-dialog h2{font-family:var(--serif);font-size:2.1rem;line-height:1.2;margin-top:10px}.reservation-close{font:inherit;font-size:.875rem;background:transparent;border:1px solid var(--line);padding:10px 13px;cursor:pointer}.reservation-intro{font-size:1rem;margin:18px 0 22px;color:var(--muted);line-height:1.65}.reservation-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.reservation-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:.875rem}.reservation-field-wide{grid-column:1/-1}.reservation-field input,.reservation-field select{display:block;width:100%;min-width:0;min-height:46px;font:inherit;font-size:1rem;color:var(--text);background:#fff;padding:10px 12px;border:1px solid #b9aa92;border-radius:0}.reservation-field input[readonly]{background:#eee5d6;color:#65573f}.reservation-field input:focus-visible,.reservation-field select:focus-visible,.reservation-trigger:focus-visible,.reservation-close:focus-visible{outline:3px solid #a97d32;outline-offset:3px}.reservation-mode-note{font-size:.875rem;color:var(--muted);margin-top:16px;line-height:1.6}.reservation-price{font-size:1.1rem;font-weight:600;margin-top:14px;color:#73571d}.reservation-submit{width:100%;border:0;font:inherit;cursor:pointer;margin-top:20px}.reservation-status{font-size:.875rem;line-height:1.65;margin-top:14px;color:var(--muted)}.reservation-submit-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:12px}
@media(max-width:520px){.reservation-dialog{padding:24px 20px}.reservation-dialog h2{font-size:1.8rem}.reservation-fields{grid-template-columns:1fr}.reservation-field-wide{grid-column:auto}}

/* Rooms being renovated have their own status without substitute photos. */
.catalog-renovation{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.renovation-panel{display:flex;flex-direction:column;justify-content:center;padding:34px;background:var(--ink);color:var(--paper);min-height:260px}.renovation-status{font-family:var(--serif);font-size:2rem;line-height:1.25;margin-top:20px}.renovation-photo-note{font-size:.875rem;color:#d1c3ac;margin-top:14px}@media(max-width:760px){.catalog-renovation{grid-template-columns:1fr}.renovation-panel{padding:27px 24px;min-height:190px}}

.photo-pending-panel{display:flex;flex-direction:column;justify-content:center;padding:34px;background:var(--ink);color:var(--paper);min-height:300px}.photo-pending-title{font-family:var(--serif);font-size:2rem;line-height:1.3;margin-top:20px}@media(max-width:760px){.photo-pending-panel{min-height:190px;padding:27px 24px}}

.room-main-photo.room-photo-portrait{aspect-ratio:3/4;object-fit:contain}

/* Owner-confirmed new management and renovations in progress. */
.management-announcement{background:#e3ba64;color:#171210;border-bottom:1px solid #c39742;padding:23px 7%}.management-inner{display:flex;align-items:center;gap:30px;max-width:1280px;margin:0 auto}.management-announcement h2{flex-shrink:0;font-family:var(--serif);font-size:1.65rem;font-weight:500;line-height:1.25}.management-announcement p{font-size:1rem;line-height:1.6;max-width:70ch}.management-inner>*{min-width:0}
@media(max-width:760px){.management-announcement{padding:24px 7%}.management-inner{display:block}.management-announcement h2{font-size:1.6rem}.management-announcement p{font-size:.95rem;margin-top:9px}}

/* Physical in-room service button; this is information, not an online control. */
.service-callout{margin-top:32px;padding:24px 26px;background:#f3ecdf;border-left:3px solid #b89246}.service-callout h3{font-size:1.1rem;font-weight:600;line-height:1.4}.service-callout p{font-size:1rem;line-height:1.75;color:var(--muted);margin-top:8px;max-width:80ch}
@media(max-width:760px){.service-callout{margin-top:27px;padding:22px 20px}.service-callout p{font-size:.95rem}}
