@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-400-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-400-italic.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-500-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-500-italic.woff2) format('woff2')}
@font-face{font-family:'Karla';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/karla-400-normal.woff2) format('woff2')}
@font-face{font-family:'Karla';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/karla-500-normal.woff2) format('woff2')}
@font-face{font-family:'Karla';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/karla-600-normal.woff2) format('woff2')}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#f6f3ee;color:#2f302d;font-family:'Karla',system-ui,sans-serif;font-size:18px;line-height:1.7}
img{max-width:100%}
a{color:#4f6352}a:hover{color:#3b4b3e}
a:focus-visible,summary:focus-visible{outline:2px solid #4f6352;outline-offset:3px;border-radius:4px}
.page{min-height:100vh;display:flex;flex-direction:column;max-width:1440px;margin:0 auto;overflow-x:hidden}
.skip{position:absolute;left:-999px;top:0;background:#4f6352;color:#fff;padding:10px 16px;z-index:100}.skip:focus{left:12px;top:12px}
.site-header{height:128px;padding:0 clamp(20px,5.56vw,80px);display:flex;align-items:center;justify-content:space-between;background:#f6f3ee;position:relative;z-index:20}
.brand img{height:96px;width:auto;display:block}
.nav-desktop{display:flex;align-items:center;gap:36px;font-size:15px}
.nav-desktop>a,.dd>a{text-decoration:none;color:#2f302d;padding:6px 0}
.nav-desktop a.active{color:#4f6352;border-bottom:1px solid #809581}
.btn-book{text-decoration:none;background:#4f6352;color:#fff!important;padding:12px 24px!important;border-radius:999px;border:0!important}
.btn-book:hover{background:#3b4b3e}
.dd{position:relative}
.dd-menu{list-style:none;margin:0;padding:12px 0;position:absolute;top:100%;left:-20px;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 12px 32px rgba(47,48,45,.12);display:none}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}
.dd-menu a{display:block;padding:9px 20px;text-decoration:none;color:#2f302d}
.dd-menu a:hover{background:#f6f3ee;color:#3b4b3e}
.nav-mobile{display:none}
.nav-mobile summary{list-style:none;cursor:pointer;padding:10px;margin-right:-10px}
.nav-mobile summary::-webkit-details-marker{display:none}
.mobile-menu{position:absolute;left:0;right:0;top:100%;background:#f6f3ee;padding:8px 20px 28px;display:flex;flex-direction:column;box-shadow:0 16px 24px rgba(47,48,45,.08)}
.mobile-menu a{padding:10px 0;text-decoration:none;color:#2f302d;font-size:17px;border-bottom:1px solid #e6e0d6}
.mobile-menu ul{list-style:none;margin:0 0 4px;padding:0 0 0 16px}
.mobile-menu ul a{font-size:16px;color:#4a4b47}
.mm-label{padding:14px 0 4px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#6b7d6d}
.mobile-menu .btn-book{margin-top:18px;text-align:center;border-bottom:0}
footer a:hover{color:#fff!important}
@media (max-width:1100px){
 .g-n{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:960px){
 .nav-desktop{display:none}
 .nav-mobile{display:block}
 .site-header{height:88px}
 .brand img{height:64px}
}
@media (max-width:860px){
 body{font-size:17px}
 .g,.g-n{grid-template-columns:minmax(0,1fr)!important}
 .fr{flex-wrap:wrap}
 .hsec{min-height:0!important}
 .arch{height:auto!important;aspect-ratio:4/5}
 aside,figure{min-width:0}
 [style*="border-left: 1px solid"]{border-left:0!important;padding-left:0!important}
}
@media (max-width:480px){
 .fr>a[style*="border-radius: 999px"]{flex:1 1 auto;text-align:center}
}
