:root{--paper: #F4F1EA;--surface: #FFFFFF;--ink: #191713;--rule: #D8D2C6;--on-ink: #F4F1EA;--rule-ink: #3A362F;--action: #F0A73B;--action-deep: #D98D1F;--brand-blue: #356CB5;--accent: #C2410C;--accent-bright:#F0A73B;--container: 1364px;--gutter: 64px;--section-y: 120px;--radius-lg: 24px;--radius-notch: 24px;--radius-md: 10px;--radius-sm: 6px;--tray-bleed: 3px;--tray-h: calc(var(--control-h) + 24px);--logo-h: 104px;--plinth-r: 884px;--plinth-drop: 68px;--plinth-w: 720px;--header-h: calc(var(--control-h) + var(--space-5) * 2);--topbar-h: round(down, calc(22px * 1.3 + var(--space-4) * 2), 1px);--lane-edge: max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)));--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 40px;--space-8: 48px;--space-9: 64px;--space-10: 80px;--measure-lead: 44ch;--measure-body: 65ch;--page-head-measure: 48%;--aside-w: 360px;--scrim-w: 60%;--measure-table: 62rem;--control-h: 44px;--btn-h: 44px;--font: Manrope, -apple-system, Helvetica, Arial, sans-serif;--font-display: Newsreader, Georgia, "Times New Roman", serif;--fs-display: 72px;--fs-hero-2: 38px;--fs-page-title: 72px;--fs-section: 48px;--fs-price: 48px;--fs-sub: 30px;--fs-read: 24px;--fs-lead: 20px;--fs-body: 17px;--fs-label: 13px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-padding-top:calc(var(--header-h) + var(--plinth-drop) + var(--space-6))}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--fs-body);line-height:1.65;font-synthesis:none;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure,blockquote,ul,li,summary,dl,dd,dt{margin:0;padding:0}ul{list-style:none}img{display:block;max-width:100%}h1,h2,h3,h4,blockquote{text-wrap:balance}p,li,summary{text-wrap:pretty}a{color:inherit;text-decoration:none}:is(.t-display,.t-page-title,.t-price,.t-section,.t-sub,.t-quote){font-family:var(--font-display);font-optical-sizing:auto}.t-page-title{font-size:var(--fs-page-title);line-height:1.05;font-weight:400}.t-price{font-size:var(--fs-price);line-height:1;font-weight:600;font-variant-numeric:tabular-nums}.t-section{font-size:var(--fs-section);line-height:1.1;font-weight:400}.t-sub{font-size:var(--fs-sub);line-height:1.28;font-weight:500}.t-quote{font-size:var(--fs-sub);line-height:1.35;font-weight:300;font-style:italic}.t-read{font-size:var(--fs-read);line-height:1.5;font-weight:400}.t-lead{font-size:var(--fs-lead);line-height:1.55;font-weight:700}.t-body{font-size:var(--fs-body);line-height:1.65;font-weight:400}.t-label,.rate-table th,.rate-table td:before,.contact-detail dt{font-family:var(--font);font-size:var(--fs-label);line-height:1.2;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.t-tabular{font-variant-numeric:tabular-nums}.is-accent{color:var(--accent)}.ink .is-accent{color:var(--accent-bright)}.is-em{color:var(--accent)}.ink .t-body{line-height:1.7}.shell{max-width:var(--container);margin-inline:auto;width:100%}.pad{padding-inline:var(--gutter)}.band{padding-block:var(--section-y)}.band-tight{padding-block:var(--space-8)}.ink{background:var(--ink);color:var(--on-ink);--rule: var(--rule-ink)}.band-white{background:var(--surface)}.band-end{padding-bottom:var(--space-10)}.band-start{padding-top:var(--section-y)}.self-start{align-self:start}.self-center{align-self:center}.band-start-lg{padding-top:var(--space-10)}.band-seam{padding-top:var(--space-6);border-top:1px solid var(--rule)}.band-image{aspect-ratio:21 / 9;width:100%;min-height:280px;background-image:url(/images/Harbor-Pointe-Apartments-NC-Aerial.jpg);background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--ink)}@media(prefers-reduced-motion:reduce),(hover:none){.band-image{background-attachment:scroll}}.is-centered{align-items:center;text-align:center}.plans-cta{align-self:center}.stack{display:flex;flex-direction:column}.stack-1{gap:var(--space-1)}.stack-2{gap:var(--space-2)}.stack-3{gap:var(--space-3)}.stack-4{gap:var(--space-4)}.stack-5{gap:var(--space-5)}.stack-6{gap:var(--space-6)}.stack-7{gap:var(--space-7)}.stack-8{gap:var(--space-8)}.stack-9{gap:var(--space-9)}.stack-10{gap:var(--space-10)}.stack>:is(.row-actions,.btn):not(:first-child){margin-top:var(--space-4)}.eyebrow-group{display:flex;flex-direction:column;gap:var(--space-4)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.row-end{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.row-adjacent{display:flex;align-items:flex-end;gap:var(--space-8);flex-wrap:wrap}.two-up{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-9)}.is-middle{align-items:center}.measure-lead{max-width:var(--measure-lead)}.measure-body{max-width:var(--measure-body)}.btn{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-h);padding-inline:20px;border:0;border-radius:var(--radius-md);font-family:var(--font);font-size:var(--fs-label);font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color .18s ease-in-out,color .18s ease-in-out,box-shadow .18s ease-in-out}.btn-primary{background:var(--action);color:var(--ink)}.btn-primary:hover{background:var(--action-deep)}.btn-secondary{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--action)}.btn-secondary:hover{background:var(--action);color:var(--ink)}.ink .btn-secondary{color:var(--on-ink);box-shadow:inset 0 0 0 1px var(--on-ink)}.ink .btn-secondary:hover{background:var(--on-ink);color:var(--ink)}.lnk{text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:4px;transition:text-decoration-color .18s ease-in-out}.lnk:hover{text-decoration-color:var(--action)}.lnk-action{color:inherit;font-weight:800;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:4px;transition:text-decoration-color .18s ease-in-out}.lnk-action:hover{text-decoration-color:var(--action)}.hero-frame{background:linear-gradient(to bottom,var(--paper) 0 75%,var(--ink) 75% 100%)}.topbar{position:relative;z-index:60;background:var(--brand-blue);color:#fff}.topbar-inner{padding-block:var(--space-4);min-height:40px;display:flex;align-items:center;justify-content:center;gap:var(--space-5)}.topbar-inner>*{line-height:1.25}@media(min-width:621px){.topbar-inner{height:72px}}.topbar-welcome{font-family:var(--font-display);font-size:var(--fs-read);line-height:1.3;font-weight:400}.topbar-welcome em{font-style:italic}.topbar .lnk-action{font-size:var(--fs-read)}.topbar-rule{width:1px;height:26px;background:#9ab5da;flex:none}.site-header{position:sticky;top:0;z-index:60;background:var(--surface);color:var(--ink)}.site-header:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:min(var(--plinth-w),100%);height:var(--plinth-drop);background:radial-gradient(circle var(--plinth-r) at 50% calc(var(--plinth-drop) - var(--plinth-r)),var(--surface) 99.8%,transparent 100%);z-index:0;pointer-events:none}.site-header-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;padding-block:var(--space-5)}.site-logo-link{display:block;grid-column:2;justify-self:center;margin-bottom:calc(var(--control-h) - var(--logo-h))}.site-logo{height:var(--logo-h);width:auto;display:block}.menu-btn{grid-column:1;justify-self:start;display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--control-h);padding:0;border:0;background:none;color:var(--ink);cursor:pointer}.menu-icon{display:block;flex:none}.menu-btn-label{color:var(--ink)}.menu-btn:hover .menu-btn-label{text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:4px}.header-apply{grid-column:3;justify-self:end}.menu-panel{position:fixed;inset:0;z-index:70;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:var(--space-8);padding:calc(var(--control-h) + var(--space-8) * 2) var(--gutter) var(--space-10);overflow-y:auto}.menu-panel-close{position:absolute;top:var(--space-8);left:var(--gutter)}.menu-panel[hidden]{display:none}.menu-nav{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center}.menu-nav a{font-family:var(--font-display);font-size:var(--fs-sub);line-height:1.1;font-weight:400}.menu-nav a:hover{text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:8px}.menu-foot{display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}.menu-phone{font-size:var(--fs-read)}.footer-col a:not(.lnk-action):hover{text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:4px}.hero{--hero-h: calc(100svh - var(--gutter) - var(--topbar-h));position:relative;isolation:isolate;overflow:hidden;min-height:var(--hero-h);min-height:round(down,var(--hero-h),1px);display:flex;flex-direction:column;background:var(--ink) url(/images/Harbor-Pointe-Apartments-NC-New-Cabinets.jpg) 50% 38% / cover no-repeat;color:var(--on-ink)}.hero-media{position:absolute;inset:0;z-index:-2;pointer-events:none;container-type:size;overflow:hidden}.hero-media iframe{--overscan: 1.18;position:absolute;top:0;left:50%;transform:translate(-50%);width:calc(max(100vw,calc(var(--hero-h) * 16 / 9)) * var(--overscan));height:calc(max(100vw,calc(var(--hero-h) * 16 / 9)) * var(--overscan) * 9 / 16);width:calc(max(100cqw,calc(100cqh * 16 / 9)) * var(--overscan));height:calc(max(100cqw,calc(100cqh * 16 / 9)) * var(--overscan) * 9 / 16);border:0;animation:film-in .7s ease-out .3s both;filter:saturate(1.12)}@keyframes film-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.hero-media{display:none}}.hero-body{margin-top:auto;margin-inline:auto;margin-bottom:calc(var(--tray-h) + var(--space-9) - var(--space-8));padding:var(--space-8) var(--space-6);max-width:820px;text-align:center;align-items:center;display:flex;flex-direction:column;gap:var(--space-5);position:relative;isolation:isolate}.hero-body:after{content:"";position:absolute;z-index:-1;inset:-195px -155px;border-radius:200px;background:#19171385;filter:blur(96px);pointer-events:none}.hero-title{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.hero-title-lead{font-family:var(--font-display);font-size:var(--fs-display);line-height:1.04;font-weight:400}.hero-title-rest{font-family:var(--font-display);font-size:var(--fs-hero-2);line-height:1.2;font-weight:400;font-style:italic}.hero-lead{max-width:58ch;margin-inline:auto}.hero-lead{border-top:2px solid var(--accent-bright);padding-top:var(--space-5)}.hero-wrap{position:relative;margin-top:calc(-1 * var(--header-h))}.hero-tray{position:absolute;bottom:calc(-1 * var(--tray-bleed));left:50%;transform:translate(-50%);z-index:3;background:var(--paper);color:var(--ink);border-radius:var(--radius-notch) var(--radius-notch) 0 0;padding:var(--space-3) var(--space-8) calc(var(--space-3) + var(--tray-bleed));display:flex;align-items:stretch;gap:var(--space-6)}.tray-link{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--control-h);color:var(--ink);font-size:var(--fs-label);font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.tray-icon{flex:none;transition:transform .18s ease-in-out}.tray-link:hover .tray-icon{transform:translate(2px)}.tray-link:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:5px}.video-modal{max-width:100vw;max-height:100vh;width:100%;height:100%;padding:var(--space-6);border:0;background:none;overflow:hidden}.video-modal::backdrop{background:#191713e6}.video-modal-inner{position:relative;display:flex;flex-direction:column;gap:var(--space-4);align-items:center;justify-content:center;width:100%;height:100%}.video-frame{width:min(100%,1100px);aspect-ratio:16 / 9;max-height:72vh;border-radius:var(--radius-md);overflow:hidden;background:#000}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-modal-close{position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;width:var(--control-h);height:var(--control-h);padding:0;border:0;border-radius:50%;background:#f4f1ea1f;cursor:pointer;transition:background .18s ease-in-out}.video-modal-close:hover{background:#f4f1ea3d}.video-modal-close:focus-visible,.video-modal-out:focus-visible{outline:3px solid var(--action);outline-offset:2px}@media(prefers-reduced-motion:reduce){.video-modal-close{transition:none}}.video-modal-out{color:var(--on-ink);text-decoration:underline;text-decoration-color:#f4f1ea66;text-underline-offset:4px}.video-modal-out:hover{text-decoration-color:var(--action)}.tray-rule{width:1px;background:var(--rule);align-self:stretch}.hero-tray:before,.hero-tray:after{content:"";position:absolute;width:var(--radius-notch);height:var(--radius-notch);bottom:var(--tray-bleed)}.hero-tray:before{left:calc(-1 * var(--radius-notch));width:calc(var(--radius-notch) + 1px);background:radial-gradient(circle at top left,#0000 var(--radius-notch),var(--paper) 0)}.hero-tray:after{right:calc(-1 * var(--radius-notch));width:calc(var(--radius-notch) + 1px);background:radial-gradient(circle at top right,#0000 var(--radius-notch),var(--paper) 0)}.plan-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.plan-card{color:var(--ink);display:grid;grid-template-columns:2fr 3fr;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);overflow:hidden}.plan-card img{width:100%;height:100%;object-fit:cover}.plan-card img.crop-high{object-position:50% 38%}.plan-card img.crop-mid{object-position:50% 50%}.plan-card{transition:border-color .2s ease-in-out}.plan-card img{transition:transform .26s ease-out}.plan-card:hover{border-color:var(--accent)}.plan-card:hover img{transform:scale(1.03)}.plan-card-title{text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:4px;transition:text-decoration-color .18s ease-in-out}.plan-card:hover .plan-card-title{text-decoration-color:var(--action)}.plan-card:focus-visible{outline:3px solid var(--action);outline-offset:3px}@media(prefers-reduced-motion:reduce){.plan-card,.plan-card img,.plan-card-title{transition:none}.plan-card:hover img{transform:none}}.plan-card-body{padding:var(--space-7) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.plan-from{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-4)}.plan-rows{display:flex;flex-direction:column}.plan-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-3);border-top:1px solid var(--rule)}.plan-row:last-child{border-bottom:1px solid var(--rule)}.amenity-list{columns:2;column-gap:var(--space-8)}.amenity-list-full{columns:3}.amenity-list li{padding-block:var(--space-4);border-bottom:1px solid var(--rule);text-wrap:balance;break-inside:avoid}.panel{border:1px solid var(--rule);border-radius:var(--radius-lg);padding:var(--space-6)}.panel-pets{padding:0;overflow:hidden;display:flex;flex-direction:column}.panel-pets img{width:100%;height:260px;object-fit:cover;object-position:50% 42%}.panel-pets>.stack{padding:var(--space-6)}.panel-flush{padding:0;overflow:hidden}.panel-flush img{width:100%;height:auto;aspect-ratio:var(--panel-ratio, 4 / 3);object-fit:cover}.panel-wide{--panel-ratio: 16 / 9}.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}.tour-frame{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-lg);overflow:hidden;background:#000}.tour-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tour-frame:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 42% 38% at 50% 50%,#19171380,#19171300 70%);pointer-events:none}.tour-start{position:relative;z-index:1}.tour-fallback{color:var(--on-ink);position:relative;z-index:1}.tour-embed{width:100%;height:100%;border:0;display:block}.tour-frame:has(.tour-embed){place-items:stretch}.tour-frame:has(.tour-embed):after{content:none}.faq details{border-top:1px solid var(--rule)}.faq details:last-child{border-bottom:1px solid var(--rule)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-height:var(--control-h);padding-block:var(--space-5);cursor:pointer;list-style:none}.faq-icon{flex:none;stroke:var(--accent);transition:transform .2s ease-in-out}.faq details[open] .faq-icon{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.faq-icon{transition:none}}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:4px}.faq details p{padding-bottom:var(--space-5)}.prose{max-width:var(--measure-body)}.prose>*+*{margin-top:var(--space-5)}.prose>:is(h1,h2,h3,h4)+*{margin-top:var(--space-4)}.prose>*+:is(h1,h2,h3,h4){margin-top:var(--space-7)}.prose p{font-size:var(--fs-body);line-height:1.65}.prose :is(h1,h2,h3,h4){font-family:var(--font-display);font-optical-sizing:auto;line-height:1.2;font-weight:500;text-wrap:balance}.prose h1{font-size:var(--fs-section);font-weight:400;line-height:1.1}.prose h2{font-size:var(--fs-sub)}.prose :is(h3,h4){font-size:var(--fs-read)}.prose a{font-weight:800;text-decoration:underline;text-decoration-color:var(--rule);text-decoration-thickness:2px;text-underline-offset:4px;transition:text-decoration-color .18s ease-in-out}.prose a:hover{text-decoration-color:var(--action)}.prose-scroll{overflow-x:auto}.prose table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--fs-body)}.prose :is(th,td){padding:var(--space-4) var(--space-5) var(--space-4) 0;border-bottom:1px solid var(--rule);white-space:nowrap}.prose th,.prose td strong{font-weight:800;letter-spacing:normal;text-transform:none}.prose tbody tr:last-child :is(th,td){border-bottom:0}.prose :is(ul,ol){padding-left:var(--space-6)}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li+li{margin-top:var(--space-2)}.prose strong{font-weight:800}.prose :is(h2,h3,h4) strong{font-weight:inherit}.prose em{font-style:italic}.with-aside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--aside-w));gap:var(--space-9);align-items:start}.page-aside{min-width:0}.quote-panel{padding-left:var(--space-6);border-left:2px solid var(--accent)}@media(max-width:900px){.with-aside{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}}.page-body>section{padding-block:var(--section-y)}.page-body>section.bleed{padding-block:0}.page-body>section.band-intro{padding-bottom:var(--space-8)}.next-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)}.next-cards:has(>:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}.next-card{display:grid;gap:var(--space-4)}.next-card img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-lg)}.next-card-title{text-wrap:balance;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:4px;transition:text-decoration-color .18s ease-in-out}.next-card:hover .next-card-title{text-decoration-color:var(--action)}.next-card img{transition:transform .24s ease-out}.next-card:hover img{transform:translateY(-4px)}@media(prefers-reduced-motion:reduce){.next-card img{transition:none}.next-card:hover img{transform:none}}@media(max-width:1100px){.next-cards:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}:root{--fs-page-title: 48px}}@media(max-width:900px){.next-cards,.next-cards:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.next-cards,.next-cards:has(>:nth-child(4)){grid-template-columns:minmax(0,1fr)}}.page-head{position:relative;isolation:isolate;overflow:clip;background:var(--ink);color:var(--on-ink);padding-top:calc(var(--plinth-drop) + var(--section-y));padding-bottom:var(--section-y)}.page-head:before{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:var(--scrim-w);background:linear-gradient(to right,#191713b3,#1917138f 45%,#19171300);pointer-events:none}@media(max-width:620px){.page-head:before{width:100%;background:#1917138f}}.page-head-wide{--page-head-measure: 58%;--scrim-w: 72%}@media(max-width:1100px){.page-head-wide{--page-head-measure: 72%;--scrim-w: 86%}}@media(max-width:620px){.page-head-wide{--page-head-measure: 100%;--scrim-w: 100%}}.page-head-img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}.page-head-body{position:relative;isolation:isolate;max-width:var(--page-head-measure)}.page-head .t-label{color:var(--on-ink)}@media(max-width:620px){:root{--page-head-measure: 100%}.page-head-body{align-items:center;text-align:center}.page-head-body .measure-body{margin-inline:auto}.page-head-body .t-read{font-size:var(--fs-body)}}.rate-table{width:100%;max-width:var(--measure-table);border-collapse:collapse;text-align:left}.rate-table th{padding-block:var(--space-4);border-bottom:1px solid var(--rule)}.rate-table td{padding-block:var(--space-5);border-bottom:1px solid var(--rule)}.rate-table tbody tr:last-child td{border-bottom:0}.rate-unit{font-weight:800}.rate-rent{font-family:var(--font-display);font-size:var(--fs-read);font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}.rate-table td:not(.rate-unit){font-variant-numeric:tabular-nums}@media(max-width:760px){.rate-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.rate-table tr{display:block;padding-block:var(--space-5);border-bottom:1px solid var(--rule)}.rate-table tbody tr:last-child{border-bottom:0}.rate-table td{display:flex;justify-content:space-between;gap:var(--space-5);padding-block:var(--space-2);border:0}.rate-table td:before{content:attr(data-label)}.rate-table .rate-unit{padding-bottom:var(--space-4)}.rate-table .rate-unit:before{content:none}}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.photo-cell{display:block;width:100%;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer}.photo-grid img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover}.photo-cell img{transition:transform .22s ease-out,filter .22s ease-out}.photo-cell:hover img{transform:scale(1.02);filter:brightness(1.06)}.photo-cell:focus-visible{outline:3px solid var(--action);outline-offset:3px}@media(prefers-reduced-motion:reduce){.photo-cell img{transition:none}.photo-cell:hover img{transform:none}}.photo-grid li{overflow:hidden}.lightbox{max-width:100vw;max-height:100vh;width:100%;height:100%;padding:var(--space-6);border:0;background:none;overflow:hidden}.lightbox::backdrop{background:#191713e0}.lightbox-inner{display:flex;align-items:center;justify-content:center;gap:var(--space-5);width:100%;height:100%}.lightbox-figure{display:flex;flex-direction:column;gap:var(--space-4);align-items:center;min-width:0}.lightbox-img{display:block;width:auto;height:auto;max-width:min(100%,800px);max-height:72vh;object-fit:contain;border-radius:var(--radius-md);background:var(--ink)}.lightbox-caption{display:flex;flex-direction:column;gap:var(--space-2);align-items:center;text-align:center;color:var(--on-ink);max-width:60ch}.lightbox-close,.lightbox-nav{display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--control-h);height:var(--control-h);padding:0;border:0;border-radius:50%;background:#f4f1ea1f;color:var(--on-ink);cursor:pointer;transition:background .18s ease-in-out}.lightbox-close:hover,.lightbox-nav:hover{background:#f4f1ea3d}.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:3px solid var(--action);outline-offset:2px}.lightbox-close{position:absolute;top:var(--space-6);right:var(--space-6)}@media(prefers-reduced-motion:reduce){.lightbox-close,.lightbox-nav{transition:none}}@media(max-width:620px){.lightbox{padding:var(--space-5)}.lightbox-inner{flex-wrap:wrap;gap:var(--space-4)}.lightbox-figure{order:-1;flex-basis:100%}.lightbox-img{max-height:60vh}}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.contact-detail{display:flex;flex-direction:column;gap:var(--space-7)}.contact-detail>div{display:flex;flex-direction:column;gap:var(--space-4)}.contact-detail dd{line-height:1.4;font-weight:600}.contact-detail dd .lnk-action{font-weight:inherit;text-decoration-color:currentColor}.contact-detail dd .lnk-action:hover{text-decoration-color:var(--action)}.contact-detail dd a{overflow-wrap:anywhere}.gallery-band{padding:0;background:var(--ink);color:var(--on-ink)}.gallery-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.gallery-strip img{width:100%;height:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:0}.gallery-cta{align-self:center}@media(max-width:900px){.gallery-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:3px;padding-bottom:var(--space-2)}.gallery-strip li{flex:0 0 clamp(180px,42%,260px);scroll-snap-align:start}}.form-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:var(--space-6)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field input,.field textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--font);font-size:var(--fs-body);transition:border-color .18s ease-in-out}.field input{min-height:var(--control-h)}.field textarea{resize:vertical}.form-panel form .btn{align-self:flex-start}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}.site-footer{padding-top:var(--space-10);padding-bottom:var(--space-9);text-align:center}.footer-top{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(var(--space-8),7vw,var(--space-10));padding-bottom:var(--space-9)}.footer-brand,.footer-hours{display:flex;flex-direction:column;gap:var(--space-2)}.footer-logo{height:72px;width:auto;margin:0 auto var(--space-3)}.footer-hours{border-left:1px solid var(--rule);padding-left:clamp(var(--space-8),7vw,var(--space-10))}.site-footer address{font-style:normal;line-height:1.7}.site-footer a{text-decoration:none}.footer-brand a:hover,.footer-corporate a:hover{text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:4px}.footer-corporate{max-width:52rem;border-top:1px solid var(--rule);padding-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.keystone-logo{height:56px;width:auto;margin:0 auto var(--space-3)}.keystone-name{color:var(--accent)}.footer-credit{margin-top:var(--space-3)}.site-footer a{overflow-wrap:anywhere}.nowrap{white-space:nowrap}.nowrap a{overflow-wrap:normal}@media(max-width:680px){.footer-hours{border-left:0;padding-left:0}}@media(max-width:1200px){.amenity-list{columns:1}.amenity-list-full{columns:2}}@media(max-width:900px){.hero-media{display:none}.two-up{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.plan-cards{grid-template-columns:1fr}.site-footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-tray{position:relative;left:auto;bottom:auto;transform:none;margin-top:calc(-1 * var(--radius-notch));border-top-left-radius:var(--radius-notch);border-top-right-radius:var(--radius-notch)}.hero-tray:before,.hero-tray:after{display:none}.tray-link{flex:1;justify-content:center}.hero-body{margin-bottom:var(--radius-notch)}.hero-body:after{filter:blur(48px)}}@media(max-width:700px){:root{--logo-h: 88px;--header-h: calc( var(--space-5) + var(--control-h) + var(--space-5) + var(--logo-h) + var(--space-5) );--plinth-r: 389px;--plinth-w: 360px;--plinth-drop: 36px}.site-logo-link{margin-bottom:0}.site-header-inner{grid-template-columns:1fr auto;grid-template-areas:"menu apply" "logo logo";row-gap:var(--space-5);align-items:center}.menu-btn{grid-area:menu}.header-apply{grid-area:apply}.site-logo-link{grid-area:logo}.hero-wrap{margin-top:0}.menu-nav a{font-size:var(--fs-read)}}@media(max-width:620px){:root{--gutter: 24px;--section-y: 80px;--fs-display: 38px;--fs-page-title: 38px;--fs-hero-2: var(--fs-sub);--fs-price: 38px;--fs-section: 30px;--fs-sub: 24px;--fs-read: 20px;--topbar-h: calc(var(--control-h) + var(--space-4) * 2)}.topbar-welcome{display:none}.topbar-inner{justify-content:center}.topbar .lnk-action{min-height:var(--control-h)}.amenity-list,.amenity-list-full{columns:1}.site-footer{grid-template-columns:minmax(0,1fr)}.hero{--hero-h: 66svh}.hero-body{padding-block:var(--space-6);padding-right:var(--space-5);padding-left:var(--lane-edge);gap:var(--space-4)}.hero-body:after{inset:-80px;border-radius:110px;filter:blur(36px)}.hero-lead{padding-top:var(--space-4)}.hero-tray{flex-direction:column;align-items:center;gap:0;padding:0;border-bottom:1px solid var(--rule)}.tray-link{flex:0 0 auto;width:100%;justify-content:center;min-height:64px}.tray-rule{width:auto;height:1px;align-self:stretch;margin-inline:0}.plan-card{grid-template-columns:1fr}.plan-card img{height:200px}.form-panel .btn{width:100%}.form-panel form .btn{align-self:stretch}.footer-col>a{display:inline-flex;align-items:center;min-height:var(--control-h);align-self:flex-start}}@media(max-width:360px){:root{--fs-display: 30px;--fs-hero-2: var(--fs-lead)}}
