body{margin:0;background:#f8f7f2;color:#1c2121;font-family:'PT Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:#b08d4f;text-decoration:none}
a:hover{color:#1c2121}
img{display:block;max-width:100%}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
::selection{background:#f1e6d2}
:focus-visible{outline:2px solid #b08d4f;outline-offset:3px}
@keyframes fadeInUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.85}}
@keyframes scale-hover{from{transform:scale(1)}to{transform:scale(1.02)}}
@keyframes float-up{0%{transform:translateY(0)}50%{transform:translateY(-4px)}100%{transform:translateY(0)}}
details{overflow:hidden}details[open]>p{animation:fadeInUp .3s ease-out}
.mouse-glow{display:none;position:fixed;width:37px;height:37px;background:radial-gradient(circle,rgba(176,141,79,.6) 0%,rgba(176,141,79,.2) 45%,transparent 65%);border-radius:50%;pointer-events:none;z-index:2147483647;top:0;left:0;transform:translate(-9999px,-9999px);will-change:transform}
@media (hover:hover) and (pointer:fine){
  .mouse-glow{display:block}
  body,a,button,input,select,textarea,summary{cursor:none}
}
/* Content is visible by default (fail-safe): only elements JS has actually
   armed for a scroll-reveal get hidden first, then animated in. This way a
   script error or unusual timing can never leave real content invisible. */
[data-reveal].reveal-pending{opacity:0;transform:translateY(20px)}
[data-reveal].reveal-pending.visible{animation:reveal-fade-up .45s ease-out forwards}
@keyframes reveal-fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* interaction states */
.h1:hover{background:transparent !important;color:#1c2121 !important}
.h2:hover{background:#1c2121 !important;border-color:#1c2121 !important;color:#f8f7f2 !important;transform:translateY(-2px) !important}
.h3:hover{border-color:rgba(176,141,79,.55) !important}
.h4:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h5:hover{border-color:rgba(176,141,79,.55) !important}
.h6:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h7:hover{border-color:rgba(176,141,79,.55) !important}
.h8:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h9:hover{border-color:rgba(176,141,79,.55) !important}
.h10:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h11:hover{border-color:rgba(176,141,79,.55) !important}
.h12:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h13:hover{border-color:rgba(176,141,79,.55) !important}
.h14:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h15:hover{background:#1c2121 !important;border-color:#1c2121 !important;color:#f8f7f2 !important}
.h16:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h17:hover{background:transparent !important;color:#f8f7f2 !important}
.h18:hover{border-color:rgba(176,141,79,.55) !important}
.h19:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h20:hover{border-color:rgba(176,141,79,.55) !important}
.h21:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h22:hover{border-color:rgba(176,141,79,.55) !important}
.h23:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h24:hover{border-color:rgba(176,141,79,.55) !important}
.h25:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h26:hover{border-color:rgba(176,141,79,.55) !important}
.h27:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h28:hover{border-color:rgba(176,141,79,.55) !important}
.h29:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h30:hover{background:transparent !important;color:#1c2121 !important}
.h31:hover{background:transparent !important;color:#f8f7f2 !important}
.h32:hover{background:transparent !important;color:#1c2121 !important}
.h33:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h34:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h35:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h36:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h37:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h38:hover{color:#1c2121 !important;border-color:#1c2121 !important}
.h39:hover{background:transparent !important;color:#f8f7f2 !important}
.h40:hover{background:transparent !important;color:#1c2121 !important}
.h41:hover{color:#b08d4f !important}
.h42:hover{background:transparent !important;color:#1c2121 !important}
.h43:hover{background:transparent !important;color:#f8f7f2 !important}
.h44:hover{color:#b08d4f !important}
.h45:hover{background:transparent !important;color:#1c2121 !important}
.h46:hover{background:transparent !important;color:#f8f7f2 !important}
.h47:hover{color:#b08d4f !important}
.h48:hover{background:transparent !important;color:#1c2121 !important}
.h49:hover{background:transparent !important;color:#f8f7f2 !important}
.h50:hover{color:#b08d4f !important}
.h51:hover{background:transparent !important;color:#1c2121 !important}
.h52:hover{background:transparent !important;color:#f8f7f2 !important}
.h53:hover{color:#b08d4f !important}
.h54:hover{background:transparent !important;color:#1c2121 !important}
.h55:hover{background:transparent !important;color:#f8f7f2 !important}
.h56:hover{color:#b08d4f !important}
.h57:hover{background:transparent !important;color:#1c2121 !important}
.h58:hover{background:transparent !important;color:#f8f7f2 !important}
.h59:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h60:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h61:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h62:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h63:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h64:hover{border-bottom:1px solid #b08d4f !important;color:#b08d4f !important}
.h65:hover{background:#1c2121 !important;color:#f8f7f2 !important}
.h66:hover{color:#b08d4f !important;transform:translateY(-2px) !important}
.h67:hover{color:#b08d4f !important}
.h68:hover{color:#b08d4f !important}
.h69:hover{color:#b08d4f !important}
.h70:hover{color:#b08d4f !important}
.h71:hover{color:#b08d4f !important}
.h72:hover{color:#b08d4f !important}
.h73:hover{color:#b08d4f !important}
.h74:hover{color:#b08d4f !important}
.h75:hover{color:#b08d4f !important}
.h76:hover{color:#b08d4f !important}
.h77:hover{border-color:#f8f7f2 !important}
.h78:hover{background:transparent !important;color:#f8f7f2 !important}

/* layout */
.page[hidden]{display:none!important}
.nav-toggle{display:none}
.mobile-nav[hidden]{display:none}
@media (max-width:899px){
  .nav-desktop{display:none!important}
  .nav-toggle{display:inline-flex!important;align-items:center;justify-content:center}
}
@media (min-width:900px){
  .mobile-nav{display:none!important}
}
@media (max-width:900px){
  .contact-grid{grid-template-columns:1fr!important}
}
@media (max-width:640px){
  h1[style*="white-space:nowrap"],h2[style*="white-space:nowrap"],p[style*="white-space:nowrap"]{white-space:normal!important}
  .price-row-head{flex-direction:column;align-items:flex-start!important}
  .price-row-head>a{margin-top:2px}
}
