@layer components{html[data-theme=dark] .location-stat,html[data-theme=dark] .location-note,html[data-theme=dark] .contact-form,html[data-theme=dark] .contact-detail__icon,html[data-theme=dark] .contact-field,html[data-theme=dark] .contact-option,html[data-theme=dark] .contact-message textarea,html[data-theme=dark] .booking-offer{background:#181613d1;border:1px solid #b88a3b2e}html[data-theme=dark] .booking-offer{color:#f8f4ed}.booking-offer{font-family:var(--font-body);color:var(--ink);border-radius:8px;flex-direction:column;gap:.65rem;margin:0;font-size:.78rem;font-weight:600;line-height:1.55;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.booking-offer{color:color-mix(in srgb, var(--ink) 84%, var(--gold) 16%)}}.booking-offer{background:#fffdf8bd;border:1px solid #b88a3b3d}.booking-offer__part{grid-template-columns:2.8rem 1fr;align-items:center;gap:.8rem;margin:0;display:grid}.booking-offer__badge{letter-spacing:.04em;color:#fffdf8;background:var(--gold);border-radius:5px;justify-content:center;align-items:center;min-width:2.8rem;min-height:1.75rem;font-size:.64rem;font-weight:800;line-height:1;display:inline-flex}.booking-offer--hero{max-width:29rem;margin-top:1.05rem;padding:.78rem .9rem}.booking-offer--detail{background:#fffdf8db;margin:0;padding:.72rem .78rem;font-size:.72rem}@media (min-width:721px) and (max-height:820px){.booking-offer--hero{max-width:27rem;margin-top:.8rem;padding:.66rem .76rem;font-size:.72rem;line-height:1.45}}}
@layer components{.apartment-detail{min-height:100vh;color:var(--ink);background:var(--background);padding-top:6.35rem;overflow-x:hidden}.apartment-detail .hero__header{position:fixed}.apartment-detail-hero{text-align:center;width:min(66rem,100% - clamp(2rem,6vw,7rem));margin:0 auto;padding:clamp(1.55rem,3vw,2.25rem) 0 clamp(1rem,2vw,1.45rem)}.apartment-detail-hero__content{width:min(47rem,100%);margin:0 auto}.apartment-detail-eyebrow{font-family:var(--font-body);letter-spacing:.14em;color:var(--gold);text-transform:uppercase;align-items:center;gap:.7rem;margin:0 0 .55rem;font-size:.64rem;font-weight:700;line-height:1.25;display:inline-flex}.apartment-detail-eyebrow:before,.apartment-detail-eyebrow:after{content:"";background:#b88a3b6b;width:2rem;height:1px}.apartment-detail-hero h1{font-family:var(--font-heading);letter-spacing:0;text-wrap:balance;color:var(--ink);margin:0;font-size:clamp(2.1rem,3.45vw,3.3rem);font-weight:500;line-height:1.02}.apartment-detail-hero__content>span{max-width:40rem;font-family:var(--font-body);color:var(--muted);margin:.75rem auto 0;font-size:clamp(.86rem,.95vw,.95rem);line-height:1.58;display:block}.apartment-detail-hero__features{border-bottom:1px solid var(--border);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:0;margin-top:1.15rem;display:flex}.apartment-detail-hero__features span{min-height:3.15rem;font-family:var(--font-body);color:var(--muted);align-items:center;gap:.42rem;padding:.65rem 1rem;font-size:.76rem;font-weight:600;line-height:1.25;display:inline-flex}.apartment-detail-hero__features span:not(:last-child){border-right:1px solid var(--border)}.apartment-detail-hero__features svg{fill:none;stroke:currentColor;stroke-width:1.65px;width:.98rem;height:.98rem;color:var(--gold);stroke-linecap:round;stroke-linejoin:round}.apartment-detail-hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;margin-top:1.15rem;display:flex}.apartment-detail-button{min-height:2.55rem;font-family:var(--font-body);letter-spacing:.08em;color:#fffdf8;text-transform:uppercase;background:var(--gold);border:1px solid #b88a3b85;border-radius:6px;justify-content:center;align-items:center;padding:0 1rem;font-size:.66rem;font-weight:800;transition:background .18s,transform .18s;display:inline-flex}.apartment-detail-button:hover{background:#a97d34;transform:translateY(-1px)}.apartment-detail-link{font-family:var(--font-body);letter-spacing:.08em;color:var(--gold);text-transform:uppercase;align-items:center;gap:.55rem;font-size:.66rem;font-weight:800;line-height:1.3;transition:gap .18s,color .18s;display:inline-flex}.apartment-detail-link:hover{color:#8d6420;gap:.78rem}.apartment-detail-gallery{width:min(66rem,100% - clamp(2rem,6vw,7rem));margin:0 auto}.apartment-detail-gallery__mosaic{aspect-ratio:2.15;border-radius:14px;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:2fr 1fr 1fr;gap:.5rem;display:grid;position:relative;overflow:hidden}.apartment-detail-gallery__tile{cursor:pointer;background:#d8d2c7;border:0;min-width:0;padding:0;position:relative;overflow:hidden}.apartment-detail-gallery__tile:first-child{grid-row:1/3}.apartment-detail-gallery__tile img{object-fit:cover;transition:filter .18s,transform .24s}.apartment-detail-gallery__tile:hover img{filter:brightness(.88);transform:scale(1.015)}.apartment-detail-gallery__show-all{z-index:3;cursor:pointer;min-height:2.6rem;font-family:var(--font-body);color:#24211d;background:#fffffff5;border:1px solid #24211d;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem .9rem;font-size:.7rem;font-weight:750;display:inline-flex;position:absolute;bottom:1rem;right:1rem}.apartment-detail-gallery__show-all span{font-size:1.15rem;line-height:1}.apartment-detail-gallery-modal{z-index:10000;-webkit-backdrop-filter:blur(16px)saturate(.72);background:#22201e6b;place-items:center;padding:clamp(.75rem,2vw,1.5rem);display:grid;position:fixed;inset:0}.apartment-detail-gallery-modal__panel{background:#f8f8f8;border:1px solid #ffffffbf;border-radius:14px;width:min(95vw,110rem);height:min(92vh,66rem);position:relative;overflow:hidden;box-shadow:0 26px 80px #00000057}.apartment-detail-gallery-modal__header{z-index:2;background:#fff;border-bottom:1px solid #e6e3de;justify-content:center;align-items:center;gap:1rem;height:3.8rem;padding:0 1.2rem;display:flex;position:relative}.apartment-detail-gallery-modal__title{align-items:baseline;gap:.45rem;display:inline-flex}.apartment-detail-gallery-modal__header strong{color:#211f1c;font-size:.92rem}.apartment-detail-gallery-modal__title span{color:#77716a;font-size:.68rem}.apartment-detail-gallery-modal__book{color:#fff;background:var(--gold);border-radius:6px;align-items:center;min-height:2.4rem;padding:0 .9rem;font-size:.65rem;font-weight:800;display:inline-flex}.apartment-detail-gallery-modal__header>button{cursor:pointer;color:#24211d;background:0 0;border:0;align-items:center;gap:.55rem;font-size:.7rem;font-weight:750;display:inline-flex;position:absolute;right:1.2rem}.apartment-detail-gallery-modal__header>button b{font-size:1.8rem;font-weight:300;line-height:1}.apartment-detail-gallery-modal__grid{overscroll-behavior:contain;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(9rem,16vh,11rem);align-content:start;gap:.7rem;height:calc(100% - 3.8rem);padding:.85rem .9rem 1rem;display:grid;overflow-y:auto}.apartment-detail-gallery-modal__photo{cursor:zoom-in;background:#e5e1da;border:0;border-radius:7px;width:100%;height:100%;padding:0;position:relative;overflow:hidden}.apartment-detail-gallery-modal__photo img{object-fit:cover;transition:transform .22s,filter .18s}.apartment-detail-gallery-modal__photo:hover img{filter:brightness(.94);transform:scale(1.015)}.apartment-detail-photo-viewer{z-index:5;background:#faf9f7;position:absolute;inset:0}.apartment-detail-photo-viewer__image{justify-content:center;align-items:center;display:flex;position:absolute;inset:4.4rem 5rem 3.4rem}.apartment-detail-photo-viewer__image img{object-fit:contain;border:1px solid #24211d1a;width:auto;max-width:100%;height:auto;max-height:100%;position:static;box-shadow:0 8px 24px #24211d1f;border-radius:18px!important}.apartment-detail-photo-viewer__back,.apartment-detail-photo-viewer__previous,.apartment-detail-photo-viewer__next{z-index:2;cursor:pointer;color:#24211d;border:0;position:absolute}.apartment-detail-photo-viewer__back{background:0 0;align-items:center;gap:.55rem;font-size:.72rem;font-weight:750;display:inline-flex;top:1.15rem;left:1.25rem}.apartment-detail-photo-viewer__back span{font-size:1.25rem}.apartment-detail-photo-viewer__previous,.apartment-detail-photo-viewer__next{background:#fffffff5;border:1px solid #24211d2e;border-radius:50%;place-items:center;width:2.9rem;height:2.9rem;display:grid;top:50%;transform:translateY(-50%);box-shadow:0 4px 18px #24211d1f}.apartment-detail-photo-viewer__previous span,.apartment-detail-photo-viewer__next span{border-bottom:3px solid;border-left:3px solid;width:.72rem;height:.72rem;display:block}.apartment-detail-photo-viewer__previous span{position:relative;left:.12rem;transform:rotate(45deg)}.apartment-detail-photo-viewer__next span{position:relative;right:.12rem;transform:rotate(225deg)}.apartment-detail-photo-viewer__previous{left:1rem}.apartment-detail-photo-viewer__next{right:1rem}.apartment-detail-photo-viewer>p{letter-spacing:.08em;color:#3f3a34;margin:0;font-size:.7rem;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}html[data-theme=dark] .apartment-detail-gallery-modal{-webkit-backdrop-filter:blur(18px)saturate(.7);background:#070605b8}html[data-theme=dark] .apartment-detail-gallery-modal__panel{background:#141310;border-color:#b88a3b6b;box-shadow:0 26px 90px #000000ad}html[data-theme=dark] .apartment-detail-gallery-modal__header{background:#1b1916;border-bottom-color:#b88a3b3d}html[data-theme=dark] .apartment-detail-gallery-modal__header strong,html[data-theme=dark] .apartment-detail-gallery-modal__header>button{color:#f8f4ed}html[data-theme=dark] .apartment-detail-gallery-modal__title span{color:#f8f4ed9e}html[data-theme=dark] .apartment-detail-gallery-modal__grid{scrollbar-color:#b88a3b8c #141310;background:#141310}html[data-theme=dark] .apartment-detail-gallery-modal__photo{background:#29251f;border:1px solid #b88a3b29}html[data-theme=dark] .apartment-detail-photo-viewer{background:#11100e}html[data-theme=dark] .apartment-detail-photo-viewer__image img{border-color:#b88a3b3d;box-shadow:0 12px 34px #00000080}html[data-theme=dark] .apartment-detail-photo-viewer__back,html[data-theme=dark] .apartment-detail-photo-viewer__previous,html[data-theme=dark] .apartment-detail-photo-viewer__next,html[data-theme=dark] .apartment-detail-photo-viewer>p{color:#f8f4ed}html[data-theme=dark] .apartment-detail-photo-viewer__previous,html[data-theme=dark] .apartment-detail-photo-viewer__next{background:#1b1916f5;border-color:#b88a3b6b;box-shadow:0 5px 20px #0000006b}.apartment-detail-gallery__stage{aspect-ratio:4/3;background:#f0ede7;border:1px solid #e8e3dbeb;border-radius:8px;position:relative;overflow:hidden}.apartment-detail-gallery__stage img{object-fit:contain;filter:saturate(.95)contrast(1.02)}.apartment-detail-gallery__thumbs img{object-fit:cover;filter:saturate(.95)contrast(1.02)}.apartment-detail-gallery__stage button{z-index:2;cursor:pointer;width:2.5rem;height:2.5rem;color:var(--gold);background:#fffdf8e6;border:1px solid #b88a3b6b;border-radius:50%;place-items:center;font-size:1rem;transition:transform .18s,background .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.apartment-detail-gallery__stage button:hover{background:#fffdf8;transform:translateY(-50%)scale(1.04)}.apartment-detail-gallery__stage button:first-of-type{left:.9rem}.apartment-detail-gallery__stage button:last-of-type{right:.9rem}.apartment-detail-gallery__stage p{z-index:2;font-family:var(--font-body);letter-spacing:.1em;color:var(--gold);text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffdf8c7;border:1px solid #fffdf8a3;border-radius:999px;margin:0;padding:.42rem .7rem;font-size:.58rem;font-weight:800;position:absolute;bottom:.85rem;right:.9rem}.apartment-detail-gallery__thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;display:grid}.apartment-detail-gallery__thumbs button{aspect-ratio:1.65;cursor:pointer;opacity:.72;background:#d8d2c7;border:1px solid #e8e3dbeb;border-radius:7px;min-width:0;padding:0;transition:border-color .18s,opacity .18s;position:relative;overflow:hidden}.apartment-detail-gallery__thumbs button.is-active,.apartment-detail-gallery__thumbs button:hover{opacity:1;border-color:#b88a3b9e}.apartment-detail-gallery__remaining{z-index:1;font-family:var(--font-heading);letter-spacing:.03em;color:#fff;text-shadow:0 1px 12px #0000004d;background:#1816138f;place-items:center;font-size:clamp(1.25rem,2.2vw,2rem);font-weight:500;display:grid;position:absolute;inset:0}.apartment-detail-overview,.apartment-detail-two-column,.apartment-detail-location,.apartment-detail-booking,.apartment-detail-faq,.apartment-detail-help{width:min(66rem,100% - clamp(2rem,6vw,7rem));margin:0 auto}.apartment-detail-overview,.apartment-detail-location,.apartment-detail-faq{border-top:1px solid var(--border);grid-template-columns:minmax(12rem,.32fr) minmax(0,1fr);align-items:start;gap:clamp(1rem,2.6vw,2.4rem);margin-top:clamp(1.45rem,2.7vw,2.1rem);padding-top:clamp(1.45rem,2.7vw,2.1rem);display:grid}.apartment-detail-overview h2,.apartment-detail-sleep h2,.apartment-detail-amenities h2,.apartment-detail-location h2,.apartment-detail-booking h2,.apartment-detail-faq h2{font-family:var(--font-heading);text-wrap:balance;color:var(--ink);margin:0;font-size:clamp(1.3rem,2vw,1.8rem);font-weight:500;line-height:1.02}.apartment-detail-overview>p,.apartment-detail-location p{font-family:var(--font-body);color:var(--muted);margin:0;font-size:.86rem;line-height:1.58}.apartment-detail-two-column{grid-template-columns:minmax(16rem,.44fr) minmax(0,1fr);gap:clamp(.85rem,1.8vw,1.25rem);margin-top:clamp(1.35rem,2.4vw,1.9rem);display:grid}.apartment-detail-sleep,.apartment-detail-amenities,.apartment-detail-booking{background:var(--surface);border:1px solid #e8e3dbe6;border-radius:8px;padding:clamp(1rem,1.8vw,1.35rem)}.apartment-detail-sleep ul,.apartment-detail-amenities ul,.apartment-detail-booking ul{gap:.62rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.apartment-detail-sleep li,.apartment-detail-amenities li,.apartment-detail-booking li{font-family:var(--font-body);color:var(--muted);align-items:center;gap:.58rem;font-size:.8rem;line-height:1.45;display:flex}.apartment-detail-sleep li:before{content:"";background:var(--gold);border-radius:50%;flex:none;width:.36rem;height:.36rem}.apartment-detail-amenities ul{grid-template-columns:repeat(3,minmax(0,1fr))}.apartment-detail-amenities li span{color:var(--gold);font-weight:700}.apartment-detail-location{align-items:center}.apartment-detail-location__facts{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.apartment-detail-location__facts article{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.68rem;min-height:3.55rem;padding:.72rem 1rem;display:grid}.apartment-detail-location__facts article:not(:last-child){border-right:1px solid var(--border)}.apartment-detail-location__facts strong{font-family:var(--font-heading);color:var(--ink);font-size:clamp(1.3rem,1.8vw,1.65rem);font-weight:500;line-height:1}.apartment-detail-location__facts span{font-family:var(--font-body);letter-spacing:.09em;color:var(--gold);text-transform:uppercase;font-size:.56rem;font-weight:800;line-height:1.35}.apartment-detail-booking{grid-template-columns:minmax(15rem,.55fr) minmax(12rem,.45fr) minmax(12rem,.55fr) auto;align-items:center;gap:clamp(.8rem,1.6vw,1.2rem);margin-top:clamp(1.35rem,2.4vw,1.9rem);display:grid}.apartment-detail-booking .apartment-detail-button{white-space:nowrap}.apartment-detail-faq__items{gap:.55rem;display:grid}.apartment-detail-faq details{background:var(--surface);border:1px solid #e8e3dbe6;border-radius:8px;padding:.78rem .9rem}.apartment-detail-faq summary{cursor:pointer;font-family:var(--font-body);color:var(--ink);font-size:.82rem;font-weight:800;line-height:1.4;list-style:none}.apartment-detail-faq summary::-webkit-details-marker{display:none}.apartment-detail-faq summary:after{content:"+";float:right;color:var(--gold)}.apartment-detail-faq details[open] summary:after{content:"-"}.apartment-detail-faq p{font-family:var(--font-body);color:var(--muted);margin:.55rem 0 0;font-size:.8rem;line-height:1.55}.apartment-detail-help{background:var(--surface);border:1px solid #e8e3dbe6;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(1.6rem,3vw,2.4rem);margin-bottom:clamp(2.2rem,4vw,3.2rem);padding:clamp(1rem,2vw,1.35rem);display:flex}.apartment-detail-help p,.apartment-detail-help span{font-family:var(--font-body);margin:0}.apartment-detail-help p{letter-spacing:.08em;color:var(--ink);text-transform:uppercase;font-size:.78rem;font-weight:800}.apartment-detail-help span{color:var(--muted);margin-top:.35rem;font-size:.82rem;display:block}.apartment-detail-help a{min-height:2.55rem;font-family:var(--font-body);letter-spacing:.08em;color:var(--gold);text-transform:uppercase;border:1px solid #b88a3b85;border-radius:6px;justify-content:center;align-items:center;padding:0 1rem;font-size:.66rem;font-weight:800;display:inline-flex}@media (max-width:980px){.apartment-detail-overview,.apartment-detail-two-column,.apartment-detail-location,.apartment-detail-booking,.apartment-detail-faq{grid-template-columns:1fr}.apartment-detail-booking{align-items:start}.apartment-detail-amenities ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.apartment-detail-hero h1{font-size:clamp(2.1rem,9vw,2.9rem);line-height:1.03}.apartment-detail-hero__features{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.apartment-detail-hero__features span{border-bottom:1px solid var(--border);border-right:0;min-width:0}.apartment-detail-hero__features span:nth-last-child(-n+2){border-bottom:0}.apartment-detail-gallery,.apartment-detail-overview,.apartment-detail-two-column,.apartment-detail-location,.apartment-detail-booking,.apartment-detail-faq,.apartment-detail-help{width:min(100% - 2.3rem,66rem)}.apartment-detail-gallery__stage{aspect-ratio:4/3}.apartment-detail-gallery__mosaic{aspect-ratio:1.32;border-radius:10px;display:block}.apartment-detail-gallery__tile{width:100%;height:100%;display:none}.apartment-detail-gallery__tile:first-child{display:block}.apartment-detail-gallery__show-all{min-height:2.35rem;padding:.55rem .7rem;font-size:.61rem;bottom:.75rem;right:.75rem}.apartment-detail-gallery-modal{padding:0}.apartment-detail-gallery-modal__panel{border-radius:0;width:100%;height:100%}.apartment-detail-gallery-modal__header{justify-content:flex-start;height:4rem;padding:0 4rem 0 .9rem}.apartment-detail-gallery-modal__header>div{text-align:left}.apartment-detail-gallery-modal__title{gap:.1rem;display:grid}.apartment-detail-gallery-modal__book{display:none}.apartment-detail-gallery-modal__header>button{right:.8rem}.apartment-detail-gallery-modal__header>button span{display:none}.apartment-detail-gallery-modal__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;gap:.4rem;height:calc(100% - 4rem);padding:.5rem}.apartment-detail-gallery-modal__photo{aspect-ratio:1.25;height:auto}.apartment-detail-photo-viewer__image{inset:4rem .75rem 3rem}.apartment-detail-photo-viewer__previous,.apartment-detail-photo-viewer__next{background:#fffffff5;width:2.45rem;height:2.45rem}.apartment-detail-gallery__thumbs{grid-template-columns:repeat(5,minmax(3.6rem,1fr));gap:.38rem}.apartment-detail-location__facts,.apartment-detail-amenities ul{grid-template-columns:1fr}.apartment-detail-location__facts article:not(:last-child){border-bottom:1px solid var(--border);border-right:0}.apartment-detail-booking .apartment-detail-button{width:100%}.apartment-detail-help{display:grid}.apartment-detail-help a{width:100%}}html[data-theme=dark] :is(.apartments-compare-card,.apartments-benefits article,.apartments-faq details,.apartments-final-cta,.apartment-card,.apartment-detail-gallery__stage,.apartment-detail-gallery__thumb,.apartment-detail-sleep,.apartment-detail-amenities,.apartment-detail-booking,.apartment-detail-faq details,.apartment-detail-final-cta,.things-featured article,.things-evening article,.things-card,.things-card__image,.things-featured__image,.things-categories a,.things-faq details,.things-cta,.discover-card,.location-landing__address,.location-landing__highlights article,.location-landing__content article,.location-landing__faq details,.location-landing__cta,.contact-landing__support article,.contact-landing__panel,.section-guide){border-color:#2a251f!important}:is(.apartments-faq,.things-faq,.location-landing__faq,.contact-landing__faq,.about-page__faq,.apartment-detail-faq) details{interpolate-size:allow-keywords}:is(.apartments-faq,.things-faq,.location-landing__faq,.contact-landing__faq,.about-page__faq,.apartment-detail-faq) details::details-content{opacity:0;block-size:0;transition:block-size .28s cubic-bezier(.22, .72, .22, 1), content-visibility .28s allow-discrete, opacity .18s ease;overflow:hidden}:is(.apartments-faq,.things-faq,.location-landing__faq,.contact-landing__faq,.about-page__faq,.apartment-detail-faq) details[open]::details-content{opacity:1;block-size:auto}@media (prefers-reduced-motion:reduce){:is(.apartments-faq,.things-faq,.location-landing__faq,.contact-landing__faq,.about-page__faq,.apartment-detail-faq) details::details-content{transition:none}}@media (min-width:721px){html[lang=el] .apartment-detail .apartment-detail-hero h1{font-size:clamp(2.1rem,3.45vw,3.3rem)!important;line-height:1.02!important}}}
