:root{--paper:#f4f3ee;--ink:#171b18;--moss:#34443a;--sand:#ded8cc;--clay:#a96542;--muted:#666d68;--white:#fff;--danger:#9c2f2f;--success:#2d6848}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.skip{position:fixed;left:1rem;top:-5rem;z-index:99;background:#fff;padding:1rem}.skip:focus{top:1rem}.shell{width:min(1240px,calc(100% - 2rem));margin-inline:auto}.display{font-family:"Outfit",Arial,sans-serif;font-weight:500;letter-spacing:-.045em;text-wrap:balance}.eyebrow{font-size:.66rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.muted{color:var(--muted)}.site-header{position:sticky;top:0;z-index:40;border-bottom:1px solid #171b1817;background:#f4f3eef0;backdrop-filter:blur(16px)}.header-row{height:82px;display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.brand{display:flex;flex-shrink:0;align-items:center}.brand img{width:144px;height:64px;object-fit:contain;object-position:left}.header-primary{display:flex;align-items:center;gap:1.5rem}.header-actions{margin-left:auto;display:flex;align-items:center;gap:1.25rem}.phone-link{font-size:.6875rem;font-weight:700;color:#0008}.nav-link{position:relative;padding:.8rem .05rem;color:#171b18b3;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:.45rem;height:1px;background:var(--ink);transition:right .25s}.nav-link:hover:after{right:0}.lang{display:flex;gap:.5rem}.lang a{border-radius:999px;padding:.25rem .5rem;font-size:.5625rem;font-weight:700;text-transform:uppercase;color:#0007}.lang a.active{background:var(--ink);color:#fff}.mobile-toggle{display:none;border:0;background:none;font-size:1.5rem}.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.55rem;padding:.78rem 1.25rem;border:1px solid transparent;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--ink);color:#fff;box-shadow:0 12px 30px #171b1826}.btn-primary:hover{background:var(--moss)}.btn-ghost{border-color:#171b1833;background:transparent;color:var(--ink)}.btn-light{background:#fff;color:var(--ink)}.btn-danger{border-color:#9c2f2f55;color:var(--danger);background:#fff}.btn:disabled{opacity:.5;cursor:wait;transform:none}.hero-wrap{padding:.75rem 1.25rem 1.25rem}.hero{position:relative;min-height:calc(100vh - 110px);overflow:hidden;border-radius:36px;background:var(--moss);color:#fff}.hero-media,.page-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.placeholder{background:linear-gradient(135deg,#26342d,#526259);display:grid;place-items:center;color:#ffffff88;letter-spacing:.18em}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000bF,#00000059,#0000001a)}.hero-content{position:relative;min-height:calc(100vh - 110px);display:flex;align-items:flex-end;padding-top:6rem;padding-bottom:5rem}.hero-copy{max-width:896px}.hero h1{font-size:clamp(3rem,7.2vw,5.7rem);line-height:.98;margin:1.5rem 0 0}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:1.75rem;margin-top:2rem}.hero-bottom p{max-width:560px;margin:0;color:#ffffffb3;line-height:1.75}.hero-bottom .actions{flex-shrink:0}.actions{display:flex;flex-wrap:nowrap;gap:.75rem}.section{padding:8rem 0}.section-alt{background:#e6e3dc}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:3.5rem}.section h2{font-size:clamp(2.25rem,4.8vw,3.75rem);line-height:1.1;margin:1.5rem 0}.lead{font-size:1.125rem;line-height:1.8;color:#171b1894}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;border-top:1px solid #0000001a;margin-top:3rem;padding-top:1.75rem}.stats strong{font-size:2.25rem}.stats span{display:block;margin-top:.5rem;font-size:.625rem;text-transform:uppercase;font-weight:700;letter-spacing:.04em;color:#0006}.section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.section-head p{max-width:384px;font-size:.875rem;line-height:1.5;color:#0008}.villa-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.75rem}.villa-card{overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 18px 60px #171b1814;transition:.35s}.villa-card:hover{transform:translateY(-6px);box-shadow:0 26px 80px #171b1824}.villa-image{position:relative;aspect-ratio:5/4;overflow:hidden}.villa-image img{width:100%;height:100%;object-fit:cover;transition:.7s}.villa-card:hover img{transform:scale(1.04)}.tag{position:absolute;left:1.25rem;top:1.25rem;padding:.5rem .75rem;border-radius:99px;background:#ffffffe6;font-size:.5625rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.round-link{position:absolute;right:1.25rem;bottom:1.25rem;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fff;font-size:1.25rem;box-shadow:0 10px 25px #0002}.villa-body{padding:1.75rem}.villa-title-row{display:flex;justify-content:space-between;gap:1rem}.villa-title-row h3{font-size:1.875rem;line-height:1;margin:0}.price{max-width:145px;text-align:right;font-size:.6875rem;font-weight:600;color:#0007}.villa-body p{min-height:3.5rem;font-size:.8125rem;line-height:1.5rem;color:#0008}.villa-meta{display:flex;gap:1rem;border-top:1px solid #0000001a;padding-top:1rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em;color:#0008}.experience-section{background:#26342d;color:#fff;padding:8rem 0}.experience-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem}.experience-section h2{font-size:3rem;line-height:1.1;margin:1.5rem 0}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.feature{border:1px solid #ffffff1a;border-radius:24px;background:#ffffff0e;padding:1.75rem}.feature-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffff1a;font-size:1.25rem}.feature h3{font-size:1.5rem;margin:2rem 0 .75rem}.feature p{font-size:.875rem;color:#ffffff80;line-height:1.5rem;margin:0}.quiet-layout{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:2.5rem}.quiet-image{overflow:hidden;border-radius:30px}.quiet-image>*{width:100%;aspect-ratio:4/3;object-fit:cover}.quiet-copy{padding-left:2rem}.quiet-copy h2{font-size:clamp(2.25rem,4.8vw,3.75rem);line-height:1.08;margin:1.5rem 0 1.75rem}.quiet-copy p{font-size:.875rem;line-height:1.75rem;color:#0008}.location-wrap{padding-bottom:8rem}.location-card{overflow:hidden;border-radius:30px;background:#d8c9b7}.location-grid{display:grid;grid-template-columns:1fr .95fr}.location-copy{padding:4rem}.location-copy h2{font-size:3rem;margin:1.25rem 0}.location-copy p{font-size:.875rem;line-height:1.75rem;color:#0008}.map-pin{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#ffffff73;font-size:1.25rem}.route-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}.route-pills span{border:1px solid #0000001a;border-radius:99px;background:#ffffff40;padding:.5rem .75rem;font-size:.625rem;font-weight:700}.image-copy{display:grid;grid-template-columns:1.1fr .9fr;min-height:600px}.image-copy>div{min-height:420px}.image-copy img{width:100%;height:100%;object-fit:cover}.dark-panel{background:#26342d;color:#fff;padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}.dark-panel p{color:#ffffffaa}.destination-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem}.destination{border:1px solid #0002;border-radius:16px;padding:1rem;background:#fff}.page-hero{position:relative;min-height:360px;display:flex;align-items:end;color:#fff;background:linear-gradient(120deg,#26342d,#34443a 56%,#526259);overflow:hidden}.page-hero:after{content:"";position:absolute;width:42vw;aspect-ratio:1;right:-12vw;top:-52%;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 80px #ffffff06,0 0 0 160px #ffffff05}.page-hero .shell{position:relative;z-index:1;padding-block:5rem}.page-hero h1{font-size:clamp(3rem,7vw,5rem);margin:1rem 0}.page-hero p{max-width:740px;color:#ffffffb5;line-height:1.8}.content-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem}.warm-card{border:1px solid #171b181a;border-radius:24px;background:#fff;box-shadow:0 24px 70px #171b1812;padding:clamp(1.5rem,3vw,2.5rem)}.field{width:100%;min-height:50px;border:1px solid #171b1828;border-radius:12px;background:#fff;padding:.78rem .9rem;color:var(--ink)}textarea.field{min-height:110px;resize:vertical}.field:focus{outline:2px solid #a9654266;border-color:var(--clay)}.label{display:grid;gap:.48rem;color:#171b18a6;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.form-grid{display:grid;gap:1rem}.form-two{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-three{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.status{padding:1rem;border-radius:12px;font-size:.85rem}.status.ok{background:#e5f4eb;color:var(--success)}.status.error{background:#fae8e8;color:var(--danger)}.map{width:100%;min-height:384px;border:0;border-radius:0}.faq details{border-bottom:1px solid #0002;padding:1.25rem 0}.faq summary{cursor:pointer;font-weight:700;font-size:1.1rem}.faq p{line-height:1.8;color:#0009}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px}.villa-detail-hero{min-height:70vh}.amenities{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.amenity{padding:1.25rem;border-radius:18px;background:#fff;font-weight:700}.site-footer{background:#171b18;color:#fff;padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem}.footer-logo{filter:brightness(0) invert(1);width:176px;height:80px;object-fit:contain;object-position:left}.footer-links{display:grid;align-content:start;gap:.75rem;color:#ffffff99;font-size:.875rem}.copyright{border-top:1px solid #ffffff1a;margin-top:3.5rem;padding-top:1.5rem;color:#ffffff4d;font-size:.75rem}.loading{min-height:50vh;display:grid;place-items:center;letter-spacing:.2em;color:#0006}.toast{position:fixed;right:1rem;bottom:1rem;z-index:100;max-width:430px;padding:1rem 1.25rem;border-radius:14px;background:#171b18;color:#fff;box-shadow:0 15px 45px #0004;opacity:0;transform:translateY(20px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}.admin-body{background:#eee9df}.admin-top{background:#171b18;color:#fff}.admin-top .shell{height:66px;display:flex;align-items:center;justify-content:space-between}.admin-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:2rem;padding-block:2rem}.admin-nav{display:grid;align-content:start;gap:.5rem;position:sticky;top:90px;height:max-content}.admin-nav button{width:100%;text-align:left;border:1px solid #171b1833;border-radius:999px;background:transparent;padding:.78rem 1rem;font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.admin-nav button:hover,.admin-nav button.active{background:#171b18;color:#fff}.admin-main{min-width:0}.admin-main h1{font-size:2.5rem;margin:.6rem 0 2rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.metric{background:#fff;border:1px solid #171b181a;border-radius:24px;padding:1.5rem;box-shadow:0 24px 70px #171b1812}.metric strong{font-size:2.3rem}.metric span{display:block;margin-top:.5rem;color:#0008;font-size:.8rem}.admin-section{background:#fff;border:1px solid #171b181a;border-radius:24px;padding:1.5rem;margin-top:1.5rem;box-shadow:0 24px 70px #171b1812}.admin-section h2{margin-top:0}.table-wrap{overflow:auto}.data-table{width:100%;min-width:760px;border-collapse:collapse;font-size:.82rem}.data-table th{text-align:left;text-transform:uppercase;font-size:.63rem;color:#0007;padding:.8rem}.data-table td{border-top:1px solid #0002;padding:.8rem;vertical-align:top}.badge{display:inline-block;border-radius:99px;padding:.35rem .6rem;background:#0000000d;font-size:.68rem;font-weight:700}.admin-cards{display:grid;gap:1rem}.reservation-card,.message-card{border:1px solid #0002;border-radius:18px;padding:1.25rem;background:#fff}.reservation-card h3,.message-card h3{margin:.5rem 0}.inline-actions{display:flex;flex-wrap:wrap;gap:.6rem}.compact{min-height:40px;padding:.55rem .8rem}.tabs{display:flex;gap:.5rem;overflow:auto;margin-bottom:1rem}.tabs button{white-space:nowrap}.image-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.image-admin{border:1px solid #0002;padding:.75rem;border-radius:14px}.image-admin img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:min(450px,100%);background:#fff;border:1px solid #171b181a;border-radius:24px;padding:2.5rem;box-shadow:0 24px 70px #171b1812}.login-card img{width:180px;display:block;margin:auto}.finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.finance-card{border-radius:24px;padding:1.5rem;color:#fff;background:#26342d}.finance-card.bronze{background:#8b563b}.finance-values{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.finance-values div{background:#ffffff12;border-radius:14px;padding:1rem}.finance-values strong{display:block;font-size:1.3rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-day{min-height:92px;border-radius:8px;background:#fff;padding:.45rem;font-size:.7rem}.calendar-day.busy{background:#f6d9cf}.calendar-day.blocked{background:#ddd}.section-error{background:#fff3cd;color:#725c00;border-radius:12px;padding:1rem}.hide{display:none!important}
@media(max-width:900px){.nav{display:none;position:absolute;left:1rem;right:1rem;top:78px;background:#fff;border-radius:18px;padding:1rem;box-shadow:0 15px 50px #0003;flex-direction:column;align-items:stretch}.nav.open{display:flex}.mobile-toggle{display:block}.hero-bottom,.section-head{align-items:flex-start;flex-direction:column}.split,.content-grid,.image-copy{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.admin-layout{grid-template-columns:1fr}.admin-nav{display:flex;overflow:auto;position:static}.admin-nav button{width:auto;white-space:nowrap}.metric-grid{grid-template-columns:repeat(2,1fr)}.image-admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.header-row{height:76px}.brand img{width:130px}.hero-wrap{padding:.5rem}.hero{border-radius:24px}.hero-content{padding-block:3rem}.hero h1{font-size:3.3rem}.section{padding:4.5rem 0}.villa-grid,.feature-grid,.form-two,.form-three,.gallery,.amenities,.destination-list,.finance-grid{grid-template-columns:1fr}.stats{gap:.4rem}.stats strong{font-size:2rem}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.metric-grid{grid-template-columns:1fr 1fr}.image-admin-grid{grid-template-columns:1fr}.warm-card{padding:1.25rem}.calendar-day{min-height:68px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Reference design parity overrides */
#header{position:sticky;top:0;z-index:50}
.site-header{position:static}
.nav{display:flex;flex:1;align-items:center;gap:1.25rem}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.35),rgba(0,0,0,.10))}
.hero-ghost{color:#fff;border-color:#ffffff4d;background:#ffffff1a;backdrop-filter:blur(12px)}
.story-right{padding-top:3rem}
.quiet-copy .btn{margin-top:2rem}
.location-grid .map{height:100%;min-height:384px}
@media (max-width:1279px) and (min-width:769px){.header-primary{display:none}.mobile-toggle{display:block}.nav{justify-content:flex-end}}
@media (max-width:900px){.experience-layout,.quiet-layout,.location-grid{grid-template-columns:1fr}.quiet-copy{padding-left:0}.location-copy{padding:3rem}.location-grid .map{min-height:384px}.story-right{padding-top:0}}
@media (max-width:768px){.header-actions{display:none}.nav{display:none;position:absolute;left:1rem;right:1rem;top:78px;background:#f4f3ee;border-radius:0;padding:1.25rem;box-shadow:0 15px 50px #0003;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav.open .header-primary,.nav.open .header-actions{display:grid;gap:1rem}.nav.open .header-actions{margin-left:0}.phone-link{display:block}.hero-wrap{padding:.75rem}.hero-content{padding-bottom:4rem}.hero h1{font-size:3rem}.hero-bottom{align-items:flex-start;flex-direction:column}.actions{flex-wrap:wrap}.experience-section{padding:6rem 0}.experience-layout{grid-template-columns:1fr}.quiet-layout{grid-template-columns:1fr}.location-copy{padding:2rem}.location-wrap{padding-bottom:6rem}}

.page-hero h1{max-width:896px;font-size:clamp(3rem,6vw,4.5rem);line-height:1.02}
.page-hero p{font-size:1rem;line-height:1.75rem}
.subpage-section{background:#f4f3ee;padding:6rem 0}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.about-image>*{width:100%;min-height:34rem;height:100%;border-radius:28px;object-fit:cover}
.about-card{align-self:center;padding:3rem}
.about-lead{margin-top:1.75rem;font-size:1.875rem;line-height:1.4}
.about-body{margin-top:2rem;line-height:2rem;color:#0008}
.location-map-frame{overflow:hidden;border-radius:28px;box-shadow:0 20px 45px #0000000d}
.location-map-frame .map{min-height:30rem}
.address-line{margin-top:1.25rem;font-size:.875rem;color:#0008}
.destination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}
.destination-card{padding:1.5rem}
.destination-card>span{font-size:.625rem;font-weight:700;color:#0006}
.destination-card h2{margin:.5rem 0 0;font-size:1.5rem}
.destination-card p{font-size:.75rem;line-height:1.5rem;color:#0007}
.destination-card strong{display:block;margin-top:1rem;font-size:.75rem;color:#0008}
.booking-section{background:#f4f3ee;padding:6rem 0}
.booking-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:2rem}
.booking-intro{border-radius:28px;background:#26342d;padding:3rem;color:#fff}
.booking-intro>.eyebrow{color:#ffffff73}
.booking-intro h1{margin:1.5rem 0;font-size:3.75rem;line-height:1}
.booking-intro>p{max-width:28rem;line-height:1.75rem;color:#ffffff8c}
.booking-note{margin-top:2.5rem;border:1px solid #ffffff1a;border-radius:16px;background:#ffffff0f;padding:1.25rem;font-size:.875rem;line-height:1.5rem;color:#ffffff8c}
.booking-form-card{padding:2.5rem}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.contact-left{display:grid;gap:1.25rem}
.contact-panel{padding:3rem}
.contact-panel h2{margin:1.25rem 0 1rem;font-size:2.25rem}
.contact-panel>.muted{font-size:.875rem;line-height:1.75rem}
.contact-links{display:grid;gap:.75rem;margin-top:2rem;font-size:.875rem;line-height:1.5rem}
.contact-links p{max-width:24rem;color:#0008}
.contact-map{overflow:hidden;border-radius:24px}
.contact-map .map{min-height:16rem}
.contact-form-card{padding:2.5rem}
.consent{display:flex;gap:.75rem;font-size:.875rem;line-height:1.5rem}
.faq-list{max-width:896px}
.faq-list details{border:1px solid #0000001a;border-radius:16px;background:#fff;padding:1.5rem}
.faq-list details+details{margin-top:.75rem}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;font-size:1rem;font-weight:700;list-style:none}
.faq-list summary b{display:grid;width:32px;height:32px;flex-shrink:0;place-items:center;border-radius:50%;background:#0000000a;font-size:1.25rem;transition:transform .2s}
.faq-list details[open] summary b{transform:rotate(45deg)}
.faq-list details p{margin-top:1.25rem;border-top:1px solid #0000001a;padding-top:1.25rem;font-size:.875rem;line-height:1.75rem;color:#0008}
.legal-section{background:#f4f3ee;padding:4rem 0}
.legal-card{max-width:768px;padding:3.5rem;line-height:2rem;color:#0009}
.legal-check{border-top:1px solid #0000001a;border-bottom:1px solid #0000001a;padding:1.25rem 0;font-size:1.5rem;color:#171b18}
@media(max-width:900px){.about-grid,.booking-grid,.contact-grid{grid-template-columns:1fr}.destination-grid{grid-template-columns:repeat(2,1fr)}.about-card,.booking-intro,.booking-form-card,.contact-panel,.contact-form-card,.legal-card{padding:2rem}}
@media(max-width:620px){.destination-grid{grid-template-columns:1fr}.booking-intro h1{font-size:3rem}.page-hero h1{font-size:3rem}.subpage-section,.booking-section{padding:4rem 0}}

.villa-hero{position:relative;min-height:70vh;overflow:hidden;border-radius:36px;background:#26342d;color:#fff}
.villa-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.75),rgba(0,0,0,.1) 65%,rgba(0,0,0,.1))}
.villa-hero-content{position:relative;display:flex;min-height:70vh;align-items:flex-end;padding-top:6rem;padding-bottom:4rem}
.villa-hero-copy{width:100%}
.villa-hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-top:1.25rem}
.villa-hero-row h1{margin:0;font-size:4.5rem}
.villa-hero-row>div:first-child>p{max-width:42rem;margin-top:1.25rem;font-size:.875rem;line-height:1.75rem;color:#ffffffa6}
.villa-hero-meta{display:flex;gap:1.25rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#ffffffb3}
.villa-about{padding:7rem 0}
.villa-about-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:2.5rem;margin-bottom:2.5rem}
.villa-gallery{grid-template-columns:repeat(3,1fr)}
.villa-gallery button{overflow:hidden;border:0;border-radius:26px;background:#000;padding:0}
.villa-gallery button.wide{grid-column:span 2}
.villa-gallery img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0;transition:transform .5s}
.villa-gallery button.wide img{aspect-ratio:16/9}
.villa-gallery button:hover img{transform:scale(1.025)}
.gallery-placeholder{display:grid;min-height:32rem;place-items:center;border-radius:26px;background:linear-gradient(135deg,#d7d2c8,#aeb8b0);font-size:.7rem;font-weight:800;letter-spacing:.18em}
.villa-comfort{background:#e6e3dc;padding:7rem 0}
.villa-comfort-grid{display:grid;grid-template-columns:1fr 420px;gap:3rem}
.villa-comfort h2{margin:1.25rem 0 2.5rem;font-size:3rem}
.amenity span{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#e6e3dc}
.amenity p{margin:1.75rem 0 0;font-size:.875rem}
.stay-notes{margin-top:2.5rem;border:1px solid #0000001a;border-radius:24px;padding:1.75rem}
.stay-notes h3{margin:0 0 1.25rem;font-size:1.5rem}
.stay-notes p{margin:.75rem 0;font-size:.875rem;color:#0008}
.stay-notes .btn{margin-top:1rem}
.villa-booking{height:max-content;position:sticky;top:7rem;padding:2rem}
.villa-booking h2{margin:.75rem 0;font-size:1.875rem}
.villa-booking>p:not(.eyebrow){font-size:.875rem;line-height:1.5rem;color:#0008}
.villa-booking form{margin-top:1.75rem}
.villa-share{position:fixed;right:1.25rem;bottom:1.25rem;z-index:40;min-height:48px;border:0;border-radius:99px;background:#171b18;padding:0 1.25rem;color:#fff;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 20px 45px #0004}
.login-wrap{min-height:100vh;background:#181512;padding:1.25rem}
.login-card{width:min(448px,100%);border:0;border-radius:0;background:#eee3cf;padding:2.5rem;box-shadow:none}
.login-card .eyebrow{color:#5b3827}
.login-card h1{margin:.75rem 0 0;font-size:2.25rem}
.login-subtitle{margin:.75rem 0 2rem;font-size:.875rem;color:#0008}
.login-card .form-grid{gap:1.25rem}
.login-card .field{border-radius:12px}
.login-card .btn{width:100%}
.reset-link{border:0;background:transparent;text-decoration:underline;font-size:.875rem}
@media(max-width:1000px){.villa-hero-row{align-items:flex-start;flex-direction:column}.villa-comfort-grid{grid-template-columns:1fr}.villa-booking{position:static}.villa-about-copy{grid-template-columns:1fr}.villa-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.villa-hero{border-radius:28px}.villa-hero-row h1{font-size:3rem}.villa-hero-meta{flex-direction:column;gap:.5rem}.villa-gallery{grid-template-columns:1fr}.villa-gallery button.wide{grid-column:span 1}.amenities{grid-template-columns:repeat(2,1fr)}.villa-about,.villa-comfort{padding:5rem 0}}

@font-face{font-family:"Outfit";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/outfit-latin-ext.woff2") format("woff2");unicode-range:U+0100-02FF,U+1E00-1EFF,U+20A0-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Outfit";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/outfit-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/manrope-cyrillic-ext.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+2DE0-2DFF,U+A640-A69F}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/manrope-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/manrope-latin-ext.woff2") format("woff2");unicode-range:U+0100-02FF,U+1E00-1EFF,U+20A0-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/manrope-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Admin panel — original Next.js reference parity */
.admin-body{background:#eee9df;color:#181512}
.admin-top{border-bottom:1px solid #0000001a;background:#181512;color:#eee3cf}
.admin-top .shell{height:64px}
.admin-brand{border:0;background:transparent;padding:0;color:inherit;font-size:1.25rem;cursor:pointer}
.admin-logout{border:0;background:transparent;padding:0;color:inherit;font-size:.875rem;text-decoration:underline}
.admin-layout{grid-template-columns:220px minmax(0,1fr);gap:2rem;padding-block:2rem}
.admin-nav{gap:.5rem;top:96px}
.admin-nav .btn{width:100%;justify-content:flex-start;white-space:nowrap;background:transparent;color:#181512;text-align:left}
.admin-nav .btn:hover{transform:translateY(-2px);background:transparent;color:#181512}
.admin-nav .btn.active{border-color:#181512;background:transparent;color:#181512;box-shadow:inset 0 0 0 1px #181512}
.admin-main{min-width:0}
.admin-page-head>.eyebrow,.admin-main>.eyebrow{color:#5b3827}
.admin-page-head h1,.admin-main>h1{margin:.75rem 0 0;font-size:2.25rem;line-height:1.12}
.admin-page-head>p:last-child:not(.eyebrow){max-width:42rem;margin:.75rem 0 0;color:#00000080;font-size:.875rem;line-height:1.5rem}
.admin-section,.metric{border:1px solid rgba(23,27,24,.1);border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(23,27,24,.07)}
.admin-section{margin-top:2rem;padding:1.5rem}
.admin-section h2{font-size:1.5rem;font-weight:500}
.metric-grid{margin-top:2rem;gap:1rem}
.metric{padding:1.5rem}
.metric strong{font-size:2.25rem;line-height:1}
.metric span{margin-top:.75rem;color:#0000008c;font-size:.875rem}
.dashboard-finance{margin-top:2rem;gap:1.5rem}
.finance-card{border-radius:24px;padding:1.5rem;background:#26342d;box-shadow:0 20px 40px #171b1826}
.finance-card.bronze{background:#8b563b}
.finance-card>.eyebrow{min-height:1.9em;margin:0;color:#ffffff73}
.finance-card h2{margin:.75rem 0 0;font-size:1.5rem}
.finance-values{margin-top:1.5rem;gap:.75rem}
.finance-values div{border-radius:16px;background:#ffffff14;padding:1rem}
.finance-values strong{font-size:1.5rem;line-height:1}
.finance-values span{display:block;margin-top:.35rem;color:#ffffff8c;font-size:.625rem;font-weight:800}
.dashboard-analytics{display:grid;grid-template-columns:1.25fr .75fr;gap:1.5rem}
.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}
.section-title-row .eyebrow,.chart-card>.eyebrow,.popular-card>.eyebrow,.occupancy-section .eyebrow{margin:0;color:#00000059}
.section-title-row h2,.popular-card h2{margin:.5rem 0 0}
.section-title-row>span{color:#00000066;font-size:.75rem}
.visitor-chart{display:flex;height:14rem;align-items:flex-end;gap:.5rem;margin-top:2rem}
.visitor-chart>div{display:flex;min-width:0;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;gap:.5rem}
.visitor-chart b{font-size:.5625rem}.visitor-chart i{width:100%;border-radius:8px 8px 0 0;background:#34443a}.visitor-chart span{white-space:nowrap;color:#00000066;font-size:.5rem}
.popular-list{display:grid;gap:1.25rem;margin-top:2rem}.popular-list p{display:flex;justify-content:space-between;gap:.75rem;margin:0;font-size:.75rem}.popular-list p strong{text-transform:capitalize}.popular-list p span{color:#0008}.popular-list>div>i{display:block;height:.5rem;overflow:hidden;margin-top:.5rem;border-radius:999px;background:#0000000f}.popular-list>div>i>b{display:block;height:100%;border-radius:inherit;background:#a96542}
.occupancy-section{margin-top:2rem}.occupancy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:2rem}.occupancy-item{border-radius:16px;background:#00000009;padding:1.25rem}.occupancy-item>div{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.occupancy-item>div>div{display:grid;gap:.25rem}.occupancy-item span{color:#00000073;font-size:.75rem}.occupancy-item .display{font-size:1.875rem}.occupancy-item>i{display:block;height:.75rem;overflow:hidden;margin-top:1rem;border-radius:999px;background:#00000014}.occupancy-item>i>b{display:block;height:100%;border-radius:inherit;background:#34443a}
.recent-section{margin-top:2rem}.recent-section h2{margin-bottom:1.25rem}
.data-table{min-width:620px;font-size:.875rem}.data-table th{padding:0 0 .75rem;color:#00000073;font-size:.75rem}.data-table td{padding:1rem 0;border-top:1px solid #0000001a}.data-table th+th,.data-table td+td{padding-left:1rem}
.reservation-toolbar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;margin-top:1.5rem;border:1px solid rgba(23,27,24,.1);border-radius:24px;background:#fff;padding:1rem;box-shadow:0 24px 70px rgba(23,27,24,.07)}
.record-pills,.toolbar-actions{display:flex;flex-wrap:wrap;gap:.75rem}.record-pills span{border-radius:999px;background:#181512;padding:.5rem .75rem;color:#fff;font-size:.75rem;font-weight:700}.record-pills span:nth-child(2){background:#fef3c7;color:#78350f}.record-pills span:last-child{background:#0000000d;color:#0000008c;font-weight:500}.toolbar-actions .field{min-width:170px}.reservation-list{margin-top:1.5rem}.reservation-card{position:relative;overflow:hidden;border-radius:24px;padding:1.25rem 1.5rem;box-shadow:0 24px 70px rgba(23,27,24,.07)}.reservation-card.is-pending{border-left:4px solid #fbbf24}.reservation-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.reservation-tags span{border-radius:999px;background:#26342d;padding:.4rem .75rem;color:#fff;font-size:.625rem;font-weight:800;text-transform:uppercase}.reservation-tags span:nth-child(2){background:#fef3c7;color:#78350f}.reservation-tags small{color:#00000059;font-size:.625rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.reservation-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.25rem}.reservation-summary .eyebrow{margin:0;color:#5b3827;letter-spacing:.08em}.reservation-summary h3{margin:.5rem 0;font-size:1.5rem}.reservation-summary>div>p:not(.eyebrow){overflow-wrap:anywhere;color:#0000008c;font-size:.875rem;line-height:1.5rem}.money-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.money-pills span{border-radius:999px;background:#0000000f;padding:.4rem .75rem;font-size:.75rem}.money-pills span:nth-child(2){background:#a878451a;color:#5b3827}.guest-note{max-width:42rem;color:#181512!important}.reservation-form{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #0000001a}.reservation-form .form-submit{display:flex;grid-column:1/-1;justify-content:flex-end}
.form-grid>.display{margin:0}.form-grid fieldset{border:1px solid #0000001a;border-radius:16px;padding:1rem}.form-grid legend{padding:0 .5rem;font-size:.75rem;font-weight:800;text-transform:uppercase}.form-grid details.admin-section{margin-top:0}.form-grid>button.btn-primary{justify-self:end}
#manual-form{gap:1.5rem;margin-top:2rem;padding:2rem}#manual-form>h2:not(:first-child){margin-top:.25rem;border-top:1px solid #0000001a;padding-top:1.5rem}#manual-form textarea{min-height:7rem}
.image-admin-grid{gap:1rem}.image-admin{border-radius:0;background:#fff;padding:.75rem}.image-admin img{border-radius:0}.admin-main details.admin-section>summary{font-size:1.5rem}.villa-form fieldset{border-radius:0}.page-image-form{padding:1.25rem 0}.page-image-form h3{margin:0;font-family:"Outfit",sans-serif;font-size:1.25rem;font-weight:500}.page-image-form+hr{border:0;border-top:1px solid #0000001a}
.calendar-legend{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.25rem;font-size:.75rem}.calendar-legend span{display:flex;align-items:center}.calendar-legend i{width:.75rem;height:.75rem;margin-right:.5rem;border-radius:3px}.calendar-legend .empty{background:#fff;box-shadow:0 0 0 1px #0002}.calendar-legend .pending,.calendar-cell.pending{background:#fcd34d}.calendar-legend .approved,.calendar-cell.approved{background:#059669}.calendar-legend .blocked,.calendar-cell.blocked{background:#64748b}.calendar-surface{overflow:hidden;padding:0}.calendar-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.calendar-board{width:max-content}.calendar-header-row,.calendar-villa-row{display:grid;grid-template-columns:180px repeat(120,32px);border-bottom:1px solid #0000000d}.calendar-header-row{background:#00000008}.calendar-header-row>b,.calendar-villa-row>b{position:sticky;left:0;z-index:2;display:flex;align-items:center;background:#fff;padding:.75rem;font-size:.75rem}.calendar-header-row>b{background:#f4f3ee}.calendar-header-row span{display:grid;height:56px;place-items:center;border-left:1px solid #0000000d;font-size:.5rem}.calendar-header-row span small{align-self:end}.calendar-header-row span strong{align-self:start}.calendar-header-row .month-start{background:#0000000d;font-weight:800}.calendar-cell{display:block;height:32px;margin:2px;border-radius:4px}.calendar-cell.empty{background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.calendar-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.calendar-lists{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}.calendar-lists h2{font-size:1.5rem}.calendar-lists .data-table{min-width:520px}
.message-card{border-radius:16px;padding:1.5rem}.message-card .eyebrow{color:#5b3827}.message-card h3{font-size:1.5rem}.message-card p{font-size:.875rem;line-height:1.5rem}.message-card small{color:#00000059;font-size:.625rem}
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-analytics{grid-template-columns:1fr}.reservation-toolbar{grid-template-columns:1fr}.toolbar-actions{justify-content:flex-start}}
@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.admin-nav{position:static;display:flex}.admin-nav .btn{width:auto}.dashboard-finance,.calendar-form-grid,.calendar-lists{grid-template-columns:1fr}}
@media(max-width:620px){.admin-top .shell{height:64px}.admin-brand{font-size:1.05rem}.admin-layout{padding-block:1.25rem}.admin-page-head h1{font-size:2rem}.metric-grid,.occupancy-grid{grid-template-columns:1fr}.finance-values{grid-template-columns:1fr}.reservation-summary{grid-template-columns:1fr}.reservation-form{grid-template-columns:1fr}.visitor-chart{gap:.25rem}.visitor-chart span{writing-mode:vertical-rl}.toolbar-actions{display:grid}.toolbar-actions .field{min-width:0}.calendar-form-grid{gap:0}}

/* SVG icon, Google map and control alignment refinements */
.icon{display:block;flex:0 0 auto;pointer-events:none}
.btn .icon,.external-link .icon,.villa-meta .icon,.villa-hero-meta .icon{flex-shrink:0}
.mobile-toggle{align-items:center;justify-content:center;color:#181512}
.mobile-toggle .icon{width:24px;height:24px}
.round-link .icon{transition:transform .3s}.villa-card:hover .round-link .icon{transform:rotate(45deg)}
.villa-meta span,.villa-hero-meta span,.external-link{display:inline-flex;align-items:center;gap:.375rem}
.feature-icon .icon,.map-pin .icon,.amenity .icon{width:20px;height:20px}
.consent{align-items:flex-start;color:#181512;font-size:.875rem;font-weight:400;letter-spacing:0;line-height:1.5rem;text-transform:none}
.consent input{width:16px;height:16px;flex:0 0 16px;margin:.25rem 0 0;accent-color:#181512}
.consent span{display:block;margin:0}
.contact-links .external-link{width:max-content;border-bottom:1px solid #0003;padding-bottom:.125rem;font-weight:700}
.admin-page-head-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:1.5rem}
.admin-page-head-action>.eyebrow,.admin-page-head-action>h1,.admin-page-head-action>p{grid-column:1}
.admin-page-head-action>.btn{grid-column:2;grid-row:1/4;align-self:end;white-space:nowrap}
.admin-main .btn{line-height:1.2;text-align:center}
.admin-main .inline-actions{align-items:center}
.admin-main .inline-actions .btn{margin:0}
.toolbar-actions{align-items:center}.toolbar-actions .field,.toolbar-actions .btn{min-height:50px}
.calendar-form-grid form>.btn,.page-image-form>.btn{width:100%;justify-self:stretch}
.villa-form>button,.content-form>button,#faq-form>button,#destinations-form>button,#location-form>button{justify-self:end}
.image-admin .inline-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.image-admin .inline-actions .btn{width:100%;padding-inline:.55rem}
@media(max-width:900px){.admin-page-head-action{grid-template-columns:1fr}.admin-page-head-action>.btn{grid-column:1;grid-row:auto;justify-self:start;margin-top:1rem}.image-admin .inline-actions{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.finance-values{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-values div{min-width:0;padding:.75rem}.finance-values strong{overflow-wrap:anywhere;font-size:1.125rem}.admin-main .btn{max-width:100%}.calendar-form-grid{gap:1rem}.image-admin .inline-actions{grid-template-columns:1fr}}

/* Mobile header parity and small-screen overflow fixes */
.mobile-toggle{width:44px;height:44px;flex:0 0 44px;padding:0;border:0;background:transparent;color:#181512!important;-webkit-appearance:none;appearance:none}
.mobile-toggle svg{stroke:#181512!important}
@media(max-width:768px){
  #header,.site-header{overflow:visible}
  .site-header{background:#f4f3ee;border-bottom:1px solid #0000001a;backdrop-filter:blur(20px)}
  .header-row{height:76px}
  .nav{left:0;right:0;top:76px;z-index:60;gap:0;border-top:1px solid #0000001a;border-radius:0;background:#f4f3ee;padding:1.25rem;box-shadow:0 24px 45px #171b1817}
  .nav.open{display:block}
  .nav.open .header-primary{display:grid;gap:1rem}
  .nav.open .header-primary .nav-link{width:max-content;padding:0;color:#181512;font-family:"Outfit",Arial,sans-serif;font-size:1.5rem;font-weight:500;letter-spacing:-.035em;line-height:1.2;text-transform:none}
  .nav.open .header-primary .nav-link:after{display:none}
  .nav.open .header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin:1.5rem 0 0;border-top:1px solid #0000001a;padding-top:1.25rem}
  .nav.open .phone-link{display:none}
  .nav.open .lang{display:flex;gap:.75rem}
  .nav.open .lang a{padding:.25rem 0;font-size:.6875rem}
  .nav.open .lang a.active{background:transparent;color:#181512;text-decoration:underline;text-underline-offset:.25rem}
  .nav.open .header-booking{min-height:44px;padding:.65rem 1rem;white-space:nowrap}
  .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
  .stats>div{min-width:0}
  .stats strong{font-size:1.75rem}
  .stats span{overflow-wrap:anywhere;font-size:.52rem;line-height:.8rem}
  .villa-title-row{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}
  .price{max-width:none;text-align:left;line-height:1.1rem}
  .villa-body>p{min-height:0}
}
@media(max-width:380px){.stats{gap:.35rem}.stats strong{font-size:1.5rem}.stats span{font-size:.48rem}.nav.open .header-booking{font-size:.62rem;padding-inline:.8rem}}

/* Admin message actions and reservation hover details */
.message-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:1.5rem}
.message-card>:not(:last-child){grid-column:1;min-width:0;overflow-wrap:anywhere}
.message-card>div:last-child{grid-column:2;grid-row:1/8;align-self:start}
.message-card>div:last-child .btn{margin:0;white-space:nowrap}
.calendar-cell{position:relative;cursor:default;transition:box-shadow .18s,transform .18s}
.calendar-cell.has-details{cursor:help}
.calendar-cell.has-details:hover,.calendar-cell.has-details:focus{z-index:4;outline:0;box-shadow:0 0 0 2px #18151280;transform:scale(1.05)}
.calendar-hover-card{position:fixed;z-index:250;display:none;width:360px;max-width:calc(100vw - 24px);border:1px solid #ffffff1a;border-radius:16px;background:#171b18;padding:1.25rem;color:#fff;box-shadow:0 24px 60px #0006;pointer-events:none}
.calendar-hover-card.show{display:block}
.calendar-hover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.calendar-hover-head p{margin:0;color:#ffffff73;font-size:.625rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.calendar-hover-head strong{display:block;margin-top:.3rem;font-size:1rem}
.calendar-hover-head span{border-radius:999px;background:#ffffff14;padding:.35rem .6rem;font-size:.625rem;font-weight:800}
.calendar-hover-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem;margin:1rem 0 0}
.calendar-hover-grid>div{min-width:0}
.calendar-hover-grid .wide{grid-column:1/-1}
.calendar-hover-grid dt{color:#ffffff66;font-size:.625rem}
.calendar-hover-grid dd{margin:.25rem 0 0;overflow-wrap:anywhere;font-size:.75rem;font-weight:700;line-height:1.15rem}
@media(max-width:620px){.message-card{grid-template-columns:1fr;row-gap:.75rem}.message-card>div:last-child{grid-column:1;grid-row:auto}.message-card>div:last-child .btn{width:100%}.calendar-hover-card{width:calc(100vw - 24px)}}
