.availability-admin{display:grid;gap:24px}.availability-admin__topbar{display:flex;align-items:end;justify-content:space-between;gap:28px}.availability-admin__topbar .eyebrow{margin-bottom:10px}.availability-admin__topbar h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1}.availability-property-select{display:grid;min-width:min(290px,100%);gap:8px;color:var(--ink-soft);font-size:.78rem;font-weight:700}.availability-property-select select,.availability-form-grid select,.availability-form-grid textarea{width:100%;border:1px solid rgba(29,28,25,.18);border-radius:14px;background:#ffffffeb;color:var(--ink);padding:0 16px}.availability-property-select select,.availability-form-grid select{min-height:50px}.availability-form-grid textarea{resize:vertical;padding-block:14px;line-height:1.5}.availability-calendar-card{overflow:hidden;border:1px solid var(--line);background:#fffdf9f5;box-shadow:0 22px 70px #2b241b0f}.availability-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:22px 24px}.availability-month-navigation,.availability-calendar-actions{display:flex;align-items:center;gap:12px}.availability-month-navigation h2{min-width:210px;font-size:clamp(1.45rem,2.6vw,2rem);text-align:center}.availability-icon-button{display:inline-grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.availability-icon-button:hover{background:var(--paper-deep)}.availability-legend{display:flex;flex-wrap:wrap;gap:18px;border-bottom:1px solid var(--line);padding:14px 24px;color:var(--ink-soft);font-size:.76rem;font-weight:700}.availability-legend span{display:inline-flex;align-items:center;gap:8px}.availability-swatch{width:10px;height:10px;border:1px solid rgba(29,28,25,.18);border-radius:50%}.availability-swatch--available{background:var(--white)}.availability-swatch--booked{background:var(--dark)}.availability-swatch--blocked{background:#b98c69}.availability-notice,.availability-error{margin:16px 24px 0;padding:12px 14px;font-size:.85rem;line-height:1.5}.availability-notice{border:1px solid rgba(60,96,67,.2);background:#4e775514;color:#365f3e}.availability-error{border:1px solid rgba(124,46,46,.16);background:#a6484814;color:#7a2d2d}.availability-calendar{position:relative;padding:20px 24px 26px}.availability-weekdays,.availability-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.availability-weekdays{border-bottom:1px solid var(--line)}.availability-weekdays span{padding:0 8px 12px;color:var(--ink-soft);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;text-transform:uppercase}.availability-grid{border-left:1px solid var(--line)}.availability-day{position:relative;min-width:0;min-height:102px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);cursor:pointer;padding:12px;text-align:left}.availability-day:hover:not(.availability-day--empty){box-shadow:inset 0 0 0 2px #9c765b6b}.availability-day--empty{cursor:default;background:#ebe3d76b}.availability-day--booked{background:#282824;color:var(--white)}.availability-day--blocked{background:#ead7c5;color:var(--ink)}.availability-day__number{display:block;font-size:.82rem;font-weight:800}.availability-day__status{position:absolute;right:10px;bottom:10px;left:10px;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.availability-day__today{position:absolute;top:12px;right:12px;width:7px;height:7px;border-radius:50%;background:#b98558}.availability-day--booked .availability-day__today{background:#efd5bc}.availability-day--booking-owned{box-shadow:inset 0 0 0 2px #ffffff3d}.availability-loading{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);border:1px solid var(--line);background:#fffdf9f5;padding:10px 14px;font-size:.82rem}.availability-modal-backdrop{position:fixed;z-index:120;inset:0;display:grid;place-items:center;background:#0f0f0dad;padding:20px}.availability-modal{display:flex;width:min(640px,100%);max-height:calc(100dvh - 40px);flex-direction:column;overflow:hidden;background:var(--paper);box-shadow:0 26px 90px #00000047}.availability-modal__header{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:24px 26px 20px}.availability-modal__header .eyebrow{margin-bottom:8px}.availability-modal__header h2{font-size:clamp(1.9rem,4vw,2.8rem)}.availability-modal__form{display:flex;min-height:0;flex:1 1 auto;flex-direction:column}.availability-modal__body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:24px 26px}.availability-modal__property{margin-bottom:22px;font-size:.86rem}.availability-modal__property strong{color:var(--ink)}.availability-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.availability-form-grid__wide{grid-column:1 / -1}.availability-form-grid .admin-field span{display:flex;justify-content:space-between;gap:12px}.availability-form-grid .admin-field em{color:var(--ink-soft);font-size:.72rem;font-style:normal;font-weight:500}.availability-modal__hint{margin-top:14px;font-size:.76rem}.availability-modal__body>.availability-error{margin:18px 0 0}.availability-modal__actions{display:flex;flex:0 0 auto;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);background:var(--paper);padding:18px 26px}.availability-booking-warning{margin-bottom:22px;border:1px solid rgba(124,78,46,.2);background:#b98c691f;padding:16px}.availability-booking-warning>strong{display:block;margin-bottom:6px}.availability-booking-warning p{margin-bottom:12px;font-size:.84rem}@media(max-width:820px){.availability-admin__topbar,.availability-calendar-toolbar{align-items:stretch;flex-direction:column}.availability-property-select{min-width:0}.availability-calendar-actions{justify-content:flex-start}}@media(max-width:620px){.availability-calendar-card{overflow:visible}.availability-calendar-toolbar,.availability-calendar,.availability-legend{padding-right:12px;padding-left:12px}.availability-month-navigation{justify-content:space-between}.availability-month-navigation h2{min-width:0;font-size:1.4rem}.availability-calendar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.availability-calendar-actions .button{width:100%;padding-inline:12px}.availability-weekdays span{padding-inline:2px;font-size:.58rem}.availability-day{min-height:74px;padding:8px}.availability-day__status{right:5px;bottom:6px;left:5px;overflow:hidden;font-size:.56rem;letter-spacing:.03em;text-overflow:ellipsis}.availability-day__today{top:8px;right:8px}.availability-modal-backdrop{align-items:end;padding:8px}.availability-modal{max-height:calc(100dvh - 16px)}.availability-modal__header,.availability-modal__body,.availability-modal__actions{padding-right:18px;padding-left:18px}.availability-form-grid{grid-template-columns:1fr}.availability-form-grid__wide{grid-column:auto}.availability-modal__actions .button{flex:1 1 0;min-width:0}}.bookings-admin{display:grid;min-width:0;max-width:100%;gap:24px}.bookings-admin__topbar{display:grid;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px}.bookings-admin__topbar>*{min-width:0;max-width:100%}.bookings-admin__topbar .eyebrow{margin-bottom:10px}.bookings-admin__topbar h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1}.bookings-admin__intro{max-width:44ch;margin-top:14px}.bookings-admin__actions{display:flex;min-width:0;max-width:100%;flex-wrap:wrap;align-items:end;gap:16px}.bookings-filter{display:grid;min-width:0;width:min(320px,100%);max-width:100%;gap:8px;color:var(--ink-soft);font-size:.78rem;font-weight:700}.bookings-filter select,.bookings-form-grid select,.bookings-form-grid textarea,.bookings-form-grid input[disabled]{width:100%;border:1px solid rgba(29,28,25,.18);border-radius:14px;background:#ffffffeb;color:var(--ink);padding:0 16px}.bookings-filter select,.bookings-form-grid select{min-height:50px}.bookings-form-grid textarea{resize:vertical;padding-block:14px;line-height:1.5}.bookings-notice,.bookings-error{padding:12px 14px;font-size:.85rem;line-height:1.5}.bookings-notice{border:1px solid rgba(60,96,67,.2);background:#4e775514;color:#365f3e}.bookings-error{border:1px solid rgba(124,46,46,.16);background:#a6484814;color:#7a2d2d}.bookings-error--inline{margin-top:20px}.bookings-list{display:grid;min-width:0;max-width:100%;gap:16px}.bookings-loading,.bookings-empty{border:1px solid var(--line);background:#fffdf9f5;box-shadow:0 22px 70px #2b241b0f;padding:22px 24px}.bookings-empty h2{font-size:clamp(1.6rem,3vw,2.4rem)}.bookings-empty p:not(.eyebrow){margin-top:12px;max-width:42ch}.booking-card{min-width:0;max-width:100%;border:1px solid var(--line);background:#fffdf9f5;box-shadow:0 22px 70px #2b241b0f;padding:22px 24px}.booking-card__header{display:flex;align-items:start;justify-content:space-between;gap:18px}.booking-card__property{color:var(--warm-dark);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.booking-card__header h2{margin-top:8px;font-size:clamp(1.55rem,3vw,2rem)}.booking-status{display:inline-flex;align-items:center;min-height:36px;border-radius:999px;padding:0 14px;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.booking-status--confirmed{background:#282824;color:var(--white)}.booking-status--cancelled{background:#ead7c5;color:var(--ink)}.booking-card__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.booking-card__details div{display:grid;gap:6px}.booking-card__details dt{color:var(--ink-soft);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.booking-card__details dd{margin:0;color:var(--ink);line-height:1.6}.booking-card__detail--wide{grid-column:1 / -1}.booking-card__footer{display:flex;justify-content:flex-end;margin-top:20px}.bookings-modal-backdrop{position:fixed;z-index:120;inset:0;display:grid;place-items:center;background:#0f0f0dad;padding:20px}.bookings-modal{display:flex;width:min(720px,100%);min-width:0;max-width:100%;max-height:calc(100dvh - 40px);flex-direction:column;overflow:hidden;background:var(--paper);box-shadow:0 26px 90px #00000047}.bookings-modal__header{display:flex;flex:0 0 auto;min-width:0;max-width:100%;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:24px 26px 20px}.bookings-modal__header .eyebrow{margin-bottom:8px}.bookings-modal__header h2{font-size:clamp(1.9rem,4vw,2.8rem)}.bookings-modal__form{display:flex;min-height:0;min-width:0;max-width:100%;flex:1 1 auto;flex-direction:column}.bookings-modal__body{min-height:0;min-width:0;max-width:100%;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:24px 26px}.bookings-modal__property{margin-bottom:22px;font-size:.86rem}.bookings-modal__property strong{color:var(--ink)}.bookings-form-grid{display:grid;min-width:0;max-width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bookings-form-grid__wide{grid-column:1 / -1}.bookings-form-grid .admin-field{min-width:0;max-width:100%}.bookings-form-grid .admin-field span{display:flex;justify-content:space-between;gap:12px}.bookings-modal__hint{margin-top:16px;font-size:.76rem}.bookings-modal__actions{display:flex;flex:0 0 auto;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);background:var(--paper);padding:18px 26px}@media(max-width:1080px){.bookings-admin__topbar{grid-template-columns:1fr;align-items:stretch}.bookings-admin__actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.bookings-filter{width:100%}}@media(max-width:700px){.bookings-admin__actions{grid-template-columns:1fr}.bookings-admin__actions>.button{width:100%}}@media(max-width:620px){.booking-card__header,.booking-card__footer{flex-direction:column;align-items:stretch}.booking-card__details,.bookings-form-grid{grid-template-columns:1fr}.booking-card__detail--wide,.bookings-form-grid__wide{grid-column:auto}.bookings-modal-backdrop{align-items:end;padding:8px}.bookings-modal{max-height:calc(100dvh - 16px)}.bookings-modal__header,.bookings-modal__body,.bookings-modal__actions{padding-right:18px;padding-left:18px}.bookings-modal__actions .button{flex:1 1 0;min-width:0}}:root{color:#1d1c19;background:#f5f1e9;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1d1c19;--ink-soft: #57534d;--paper: #f5f1e9;--paper-deep: #ebe3d7;--white: #fffdf9;--warm: #9c765b;--warm-dark: #634b3d;--line: rgba(29, 28, 25, .16);--dark: #191a18;--shell: min(1180px, calc(100vw - 48px) )}*{box-sizing:border-box}html{max-width:100%;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:92px;background:var(--paper)}body{margin:0;max-width:100%;min-width:320px;min-height:100vh;overflow-x:clip;background:var(--paper);color:var(--ink)}#root{max-width:100%;overflow-x:clip}body,button,a,input,textarea,select{font:inherit}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}p{margin:0;color:var(--ink-soft);line-height:1.7}h1,h2,h3{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(3.25rem,7.3vw,7rem);line-height:.93}h2{font-size:clamp(2.25rem,4.4vw,4.4rem);line-height:1}h3{font-size:1.4rem;line-height:1.1}.shell{width:var(--shell);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{margin:0 0 20px;color:var(--warm-dark);font-size:.73rem;font-weight:700;letter-spacing:.16em;line-height:1.2;text-transform:uppercase}.eyebrow--light{color:#d6c4b4}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:1px solid var(--dark);border-radius:999px;background:var(--dark);color:var(--white);cursor:pointer;padding:0 24px;font-size:.86rem;font-weight:700;letter-spacing:.02em;transition:background .16s ease,color .16s ease,transform .16s ease}.button:hover{background:#34352f}.button:active{transform:translateY(1px)}.button:focus-visible,.text-link:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #b98558;outline-offset:4px}.button--small{min-height:40px;padding-inline:18px;font-size:.76rem}.button--ghost{border-color:var(--line);background:transparent;color:var(--ink)}.button--ghost:hover{background:var(--paper-deep)}.button--light{border-color:var(--white);background:var(--white);color:var(--dark)}.button--light:hover{background:#e9dfd4}.text-link{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:.88rem;font-weight:700}.text-link--button{border:0;border-bottom:1px solid currentColor;background:transparent;cursor:pointer;padding-inline:0}.site-header{position:sticky;z-index:30;top:0;border-bottom:1px solid rgba(29,28,25,.09);background:color-mix(in srgb,var(--paper) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.site-header__inner{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:32px}.brand-mark{display:inline-grid;line-height:1;letter-spacing:.16em}.brand-mark__name{font-size:.87rem;font-weight:800}.brand-mark__place{margin-top:4px;color:var(--warm-dark);font-size:.56rem;font-weight:700;letter-spacing:.31em}.site-nav{display:flex;align-items:center;gap:24px}.site-nav>a:not(.button){color:#44413b;font-size:.76rem;font-weight:600}.site-nav>a:not(.button):hover{color:var(--ink)}.menu-toggle{display:none;width:44px;height:44px;border:0;background:transparent;cursor:pointer}.menu-toggle>span:not(.sr-only){display:block;width:24px;height:1px;margin:6px auto;background:var(--ink)}.home-hero{padding:56px 0 88px}.home-hero__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);align-items:center;gap:clamp(48px,7vw,110px)}.home-hero__copy{padding-block:52px}.home-hero__copy h1{max-width:720px}.home-hero__lead{max-width:590px;margin-top:30px;font-size:clamp(1rem,1.6vw,1.2rem)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.hero-location{display:flex;align-items:flex-start;gap:18px;margin-top:72px;border-top:1px solid var(--line);padding-top:18px}.hero-location>span{color:var(--warm);font-family:Georgia,Times New Roman,serif;font-size:1.2rem}.hero-location p{font-size:.82rem;line-height:1.55}.home-hero__visual{position:relative;min-height:720px}.home-hero__image-frame{position:absolute;inset:0 12% 7% 8%;overflow:hidden;background:var(--paper-deep)}.home-hero__image-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 70%}.home-hero__detail-frame{position:absolute;right:0;bottom:0;width:31%;aspect-ratio:.73;overflow:hidden;border:8px solid var(--paper);background:var(--paper-deep)}.home-hero__detail-frame img{width:100%;height:100%;object-fit:cover}.section{padding:112px 0}.section--muted{background:var(--paper-deep)}.section-heading{margin-bottom:56px}.section-heading--split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr);align-items:end;gap:72px}.section-heading--split>p{max-width:440px;justify-self:end}.apartment-intro__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.8fr);gap:clamp(70px,10vw,160px)}.apartment-intro__copy{padding-top:4px}.apartment-intro__copy>*+*{margin-top:24px}.large-copy{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.4;letter-spacing:-.025em}.property-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:88px}.property-preview{display:block}.property-preview__image{aspect-ratio:1.25;overflow:hidden;background:var(--paper-deep)}.property-preview__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.property-preview:hover .property-preview__image img{transform:scale(1.018)}.property-preview__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:20px 0 24px}.property-preview__meta p{margin-top:6px;font-size:.82rem}.property-preview__meta>span{font-size:1.1rem}.amenities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity{min-height:230px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px}.amenity__number{display:block;margin-bottom:54px;color:var(--warm);font-size:.72rem;font-weight:700;letter-spacing:.12em}.amenity p{max-width:270px;margin-top:12px;font-size:.9rem}.gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:16px}.gallery-item{margin:0;overflow:hidden;background:var(--paper-deep)}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-item--1{grid-column:span 7;aspect-ratio:1.35}.gallery-item--2{grid-column:span 5;aspect-ratio:.78}.gallery-item--3{grid-column:span 5;aspect-ratio:.9}.gallery-item--4{grid-column:span 7;aspect-ratio:1.2}.gallery-item--5{grid-column:span 6;aspect-ratio:.9}.about-section{padding-top:64px}.about-section__grid{display:grid;grid-template-columns:minmax(380px,.9fr) minmax(0,.8fr);align-items:center;gap:clamp(64px,10vw,150px)}.about-section__image{aspect-ratio:.86;overflow:hidden}.about-section__image img{width:100%;height:100%;object-fit:cover}.about-section__copy>*+*{margin-top:24px}.contact-section{background:var(--dark);color:var(--white);padding:104px 0}.contact-section__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:100px}.contact-section h2{max-width:640px}.contact-section__lead{max-width:570px;margin:24px 0 32px;color:#c9c5bc}.contact-list{border-top:1px solid rgba(255,255,255,.2)}.contact-list a{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(255,255,255,.2);padding:20px 0}.contact-list span{color:#b9b5ad;font-size:.76rem}.contact-list strong{color:var(--white);font-size:.9rem;font-weight:600;text-align:right}.site-footer{background:#10110f;color:var(--white);padding:54px 0 28px}.site-footer .brand-mark__place{color:#bca18d}.site-footer__grid{display:grid;grid-template-columns:1fr 1fr auto;align-items:start;gap:36px}.site-footer__grid p{max-width:380px;color:#aaa79f;font-size:.86rem}.site-footer__links{display:flex;gap:20px;color:#ddd8cf;font-size:.8rem}.site-footer__bottom{display:flex;justify-content:space-between;gap:20px;margin-top:54px;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;color:#77766f;font-size:.7rem}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;background:#0f0f0da6;padding:24px}.booking-modal{display:flex;width:min(920px,100%);max-height:min(820px,calc(100dvh - 48px));flex-direction:column;overflow:hidden;background:var(--paper);box-shadow:0 24px 80px #00000038}.booking-modal__header{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);padding:28px 32px 24px}.booking-modal__header .eyebrow{margin-bottom:9px}.booking-modal__header h2{font-size:clamp(2rem,4vw,3.2rem)}.icon-button{display:inline-grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;font-size:1.6rem;font-weight:300;line-height:1}.booking-modal__body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:28px 32px 34px}.booking-modal__intro{max-width:560px;margin-bottom:26px}.property-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.property-choice-card{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--paper-deep)}.property-choice-card>img{width:100%;min-height:300px;aspect-ratio:1.18;object-fit:cover}.property-choice-card__content{position:absolute;top:14px;right:14px;left:14px;display:grid;gap:16px;background:#fffdf9f0;padding:16px}.property-choice-card__content p{margin-top:4px;font-size:.8rem}.property-choice-card__actions{display:grid;grid-template-columns:.7fr 1.3fr;gap:10px}.property-choice-card__actions .button{min-height:44px;padding-inline:14px;font-size:.76rem}.property-hero{padding:54px 0 92px}.property-hero__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(470px,1.18fr);align-items:center;gap:clamp(50px,8vw,120px)}.property-hero__copy p:not(.eyebrow){max-width:520px;margin-top:28px;font-size:1.05rem}.property-hero__image{position:relative;aspect-ratio:.88;overflow:hidden;background:var(--paper-deep)}.property-hero__image>img{width:100%;height:100%;object-fit:cover}.property-hero__caption{position:absolute;right:0;bottom:0;left:0;display:flex;justify-content:space-between;gap:20px;background:#11110fd1;color:#fff;padding:13px 18px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.not-found{display:grid;min-height:100dvh;place-items:center;background:var(--paper);padding:32px}.not-found__card{width:min(680px,100%);border:1px solid var(--line);background:var(--white);padding:clamp(34px,6vw,72px)}.not-found__card h1{font-size:clamp(2.8rem,7vw,5.4rem)}.not-found__card>p:not(.eyebrow){margin:24px 0 32px}@media(max-width:1020px){:root{--shell: min(100% - 36px, 920px)}.site-nav{gap:17px}.site-nav>a:not(.button){font-size:.7rem}.home-hero__grid,.property-hero__grid{grid-template-columns:minmax(0,.86fr) minmax(390px,1.14fr);gap:46px}.home-hero__visual{min-height:620px}.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-section__grid{gap:60px}}@media(max-width:820px){html{scroll-padding-top:74px}.site-header__inner{min-height:68px}.menu-toggle{display:block}.site-nav{position:absolute;top:100%;right:0;left:0;display:none;align-items:stretch;border-bottom:1px solid var(--line);background:var(--paper);padding:18px}.site-nav--open{display:grid}.site-nav>a:not(.button){padding:12px 6px;font-size:.86rem}.site-nav .button{width:100%;margin-top:4px}.home-hero{padding:30px 0 72px}.home-hero__grid,.property-hero__grid,.apartment-intro__grid,.about-section__grid,.contact-section__grid{grid-template-columns:1fr}.home-hero__copy{padding-block:30px 14px}.home-hero__visual{min-height:650px}.home-hero__image-frame{inset:0 10% 6% 0}.hero-location{margin-top:48px}.section{padding:86px 0}.section-heading--split{grid-template-columns:1fr;align-items:start;gap:22px}.section-heading--split>p{justify-self:start}.apartment-intro__grid{gap:40px}.property-preview-grid{margin-top:64px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item,.gallery-item--1,.gallery-item--2,.gallery-item--3,.gallery-item--4,.gallery-item--5{grid-column:span 1;aspect-ratio:.82}.gallery-item:nth-child(3n+1){grid-column:span 2;aspect-ratio:1.35}.about-section__grid{gap:52px}.about-section__image{width:min(620px,100%);aspect-ratio:1.1}.contact-section__grid{gap:54px}.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__links{grid-column:1 / -1}.property-hero{padding-top:28px}.property-hero__grid{gap:48px}.property-hero__image{width:min(620px,100%);aspect-ratio:.95}}@media(max-width:620px){:root{--shell: calc(100% - 28px) }h1{font-size:clamp(3.2rem,16vw,5rem)}.home-hero__lead{margin-top:22px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px;margin-top:28px}.home-hero__visual{min-height:520px}.home-hero__image-frame{right:8%}.home-hero__detail-frame{width:34%;border-width:5px}.section{padding:72px 0}.section-heading{margin-bottom:38px}.property-preview-grid,.amenities-grid{grid-template-columns:1fr}.property-preview-grid{gap:40px}.amenity{min-height:190px}.amenity__number{margin-bottom:34px}.gallery-grid{grid-template-columns:1fr;gap:10px}.gallery-item,.gallery-item--1,.gallery-item--2,.gallery-item--3,.gallery-item--4,.gallery-item--5,.gallery-item:nth-child(3n+1){grid-column:span 1;aspect-ratio:.9}.gallery-item:nth-child(2n){aspect-ratio:.76}.contact-section{padding:76px 0}.contact-list a{align-items:flex-start;flex-direction:column;gap:6px}.contact-list strong{text-align:left}.site-footer__grid{grid-template-columns:1fr}.site-footer__links{grid-column:auto}.site-footer__bottom{align-items:flex-start;flex-direction:column}.modal-backdrop{align-items:end;padding:10px}.booking-modal{max-height:calc(100dvh - 20px)}.booking-modal__header{padding:22px 20px 18px}.booking-modal__body{padding:22px 20px 26px}.property-choice-grid{grid-template-columns:1fr}.property-choice-card>img{min-height:280px}.property-choice-card__actions{grid-template-columns:1fr}.property-choice-card__actions .button{width:100%}.property-choice-card__content{top:10px;right:10px;left:10px;padding:14px}.property-hero__copy p:not(.eyebrow){margin-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.reviews-section{background:var(--white)}.reviews-heading{margin-bottom:48px}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.review-card{display:flex;min-height:310px;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px}.review-card__number{color:var(--warm);font-size:.72rem;font-weight:700;letter-spacing:.12em}.review-card blockquote{margin:auto 0 34px}.review-card blockquote p{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.45;letter-spacing:-.02em}.review-card__name{color:var(--warm-dark);font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.admin-auth{display:grid;min-height:100dvh;padding:28px;background:radial-gradient(circle at top left,rgba(156,118,91,.14),transparent 34%),linear-gradient(180deg,#f7f2ea,#efe4d7)}.admin-auth__panel{width:min(520px,100%);margin:auto;border:1px solid var(--line);background:#fffdf9f0;padding:clamp(28px,5vw,42px);box-shadow:0 30px 80px #2b241b14}.admin-auth__panel--status{max-width:640px}.admin-auth__brand{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-auth__brand .eyebrow{margin:0}.admin-auth__intro{margin-top:34px}.admin-auth__intro p{margin-top:16px;max-width:34ch}.admin-auth__form{display:grid;gap:18px;margin-top:28px}.admin-field{display:grid;gap:8px;font-size:.86rem;font-weight:600}.admin-field input{min-height:52px;border:1px solid rgba(29,28,25,.18);border-radius:14px;background:#ffffffe6;padding:0 16px}.admin-field input:disabled,.button:disabled{cursor:not-allowed;opacity:.65}.admin-auth__error{border:1px solid rgba(124,46,46,.16);background:#a6484814;color:#7a2d2d;padding:14px 16px;font-size:.9rem;line-height:1.5}.admin-shell{min-width:0;max-width:100%;min-height:100dvh;background:linear-gradient(180deg,#f5f1e9,#f0e7dc)}.admin-shell__header{border-bottom:1px solid var(--line);background:#f5f1e9eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-shell__header-inner{display:grid;min-width:0;max-width:100%;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;padding:18px 0}.admin-shell__brand{display:flex;min-width:0;max-width:100%;align-items:center;gap:14px}.admin-shell__brand-label{color:var(--warm-dark);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.admin-shell__nav{display:flex;min-width:0;max-width:100%;flex-wrap:wrap;gap:12px}.admin-shell__link{border:1px solid transparent;border-radius:999px;padding:10px 16px;color:var(--ink-soft);font-size:.84rem;font-weight:700}.admin-shell__link--active{border-color:#1d1c1924;background:#fffdf9eb;color:var(--ink)}.admin-shell__actions{display:flex;min-width:0;max-width:100%;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:18px}.admin-shell__actions p{min-width:0;color:var(--ink);font-size:.82rem;overflow-wrap:anywhere}.admin-shell__main{min-width:0;max-width:100%;padding:32px 0 56px}.admin-shell__main>.shell{min-width:0;max-width:100%}.admin-card{width:min(760px,100%);border:1px solid var(--line);background:#fffdf9f0;padding:clamp(28px,5vw,40px);box-shadow:0 22px 70px #2b241b0f}.admin-card p:not(.eyebrow){margin-top:18px;max-width:48ch}@media(max-width:1080px){.reviews-grid{grid-template-columns:1fr}.review-card{min-height:250px}.admin-shell__header-inner{grid-template-columns:minmax(0,1fr) auto;align-items:start;grid-template-areas:"brand actions" "nav nav"}.admin-shell__brand{grid-area:brand}.admin-shell__nav{grid-area:nav}.admin-shell__actions{grid-area:actions;justify-content:flex-end}}@media(max-width:820px){.admin-shell__header-inner{grid-template-columns:1fr;align-items:start;grid-template-areas:"brand" "nav" "actions"}.admin-shell__actions{justify-content:flex-start}}@media(max-width:620px){.admin-auth{padding:14px}.admin-shell__nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell__link{text-align:center}.admin-shell__actions{flex-direction:column;align-items:flex-start;gap:12px}}.gallery-grid{display:block;column-count:2;column-gap:16px}.gallery-item,.gallery-item--1,.gallery-item--2,.gallery-item--3,.gallery-item--4,.gallery-item--5{display:block;width:100%;margin:0 0 16px;break-inside:avoid;aspect-ratio:auto;grid-column:auto}.gallery-item img{width:100%;height:auto;object-fit:cover}@media(max-width:720px){.gallery-grid{column-count:1}}
