@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/fonts/karla-latin-3b1eb09a53.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/montserrat-latin-06b16db7a9.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root { --ink:#241f1d; --paper:#faf7f2; --muted:#57504a; --rule:#d6ccbf; --rose:#925c69; --rose-soft:#e0d2d0; --champagne-soft:#f0e6d6; --bronze:#6e563b; --gold:#8c7250; --heading:'Montserrat',sans-serif; --body:'Karla',sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--body); font-size:16px; }
[hidden] { display:none !important; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button,.button { border-radius:10px; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { font-family:var(--heading); font-weight:400; letter-spacing:-.045em; }
h1 em,h2 em { font-style:normal; color:#62564a; }
p { line-height:1.6; }
:focus-visible { outline:3px solid var(--rose); outline-offset:4px; }
.container { width:calc(100% - 88px); max-width:1280px; margin-inline:auto; }
.eyebrow { font-size:10px; font-weight:700; letter-spacing:.16em; color:var(--bronze); }
.fine-print { font-size:12px; line-height:1.6; color:var(--muted); }
.skip-link { position:absolute; top:-100px; left:12px; z-index:20; padding:12px; background:var(--ink); color:#fff; }
.skip-link:focus { top:12px; }
.site-header { border-bottom:1px solid var(--rule); }
.header-inner { display:flex; align-items:center; gap:34px; min-height:82px; }
.wordmark { display:inline-flex; align-items:center; gap:16px; flex-shrink:0; }
.brand-mark { display:grid; grid-template-columns:repeat(2,1fr); gap:2px; width:27px; height:27px; transform:rotate(45deg); }
.brand-mark i { background:var(--ink); }
.brand-mark i:nth-child(2),.brand-mark i:nth-child(3) { background:#b59a72; }
.brand-type { display:flex; flex-direction:column; gap:4px; }
.brand-type strong { font-family:var(--heading); font-size:15px; font-weight:500; letter-spacing:.13em; }
.brand-type > span { font-size:8px; font-weight:600; letter-spacing:.22em; }
.desktop-nav { display:flex; gap:28px; margin-left:auto; }
.desktop-nav a { font-size:13px; font-weight:500; }
.desktop-nav a:hover,.mobile-nav a:hover { color:var(--rose); }
.menu-toggle { display:none; width:44px; height:44px; padding:10px; border:0; background:transparent; margin-left:auto; }
.menu-toggle span { display:block; height:2px; background:var(--ink); margin:6px 0; }
.mobile-nav { padding:8px 20px 22px; border-top:1px solid var(--rule); }
.mobile-nav a { display:block; padding:10px 0; font-size:16px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; gap:8px; border:1px solid var(--rose); background:var(--rose); color:#fff; padding:12px 20px; font-size:14px; font-weight:600; }
.button:hover { background:#784652; border-color:#784652; }
.secondary-action { min-height:46px; padding:12px 16px; border:1px solid var(--rule); background:transparent; color:var(--ink); font-size:14px; }
.text-link { display:inline-flex; font-weight:600; border-bottom:1px solid var(--bronze); color:var(--bronze); }
.page-heading .lead { color:var(--muted); }
.page-heading h1 { margin-top:10px; }
.form-heading { margin:20px 0; }
fieldset { min-width:0; padding:0; border:0; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.form-grid label { display:block; font-size:14px; font-weight:600; line-height:1.6; }
.form-grid label > span { color:var(--rose); }
.form-grid input,.form-grid select,.form-grid textarea { display:block; width:100%; margin-top:7px; padding:12px; background:#fff; color:var(--ink); border:1px solid #b9ada0; border-radius:2px; font-size:16px; }
.form-grid textarea { resize:vertical; }
.form-grid .full { grid-column:1/-1; }
.acknowledge { display:flex; align-items:flex-start; gap:10px; margin:20px 0; font-size:14px; line-height:1.6; }
.acknowledge input { margin-top:4px; accent-color:var(--rose); }
.form-actions { display:flex; gap:12px; flex-wrap:wrap; }
.form-status { margin-top:16px; font-size:14px; }
.inquiry-estimate { margin:20px 0; padding:18px; background:var(--rose-soft); border-left:3px solid var(--rose); }
.inquiry-estimate p { white-space:pre-line; margin:10px 0; font-size:14px; }
.inquiry-estimate a,.fine-print a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:850px) { .desktop-nav { display:none; } .menu-toggle { display:block; } .header-inner { min-height:76px; } }
@media(max-width:640px) { .container { width:calc(100% - 40px); } .form-grid { grid-template-columns:1fr; gap:18px; } .form-grid .full { grid-column:auto; } .form-actions { flex-direction:column; } .form-actions > * { width:100%; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.booking-led-preview { height:235px; margin:20px 0; border:1px solid var(--rule); }
.floor-style-preview { position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:100%; background:#f0e6d6; overflow:hidden; }
.wood-preview-label { position:absolute; top:17px; left:20px; color:#6e563b; font-size:9px; font-weight:700; letter-spacing:.08em; }
.wood-preview-board { display:grid; grid-template-columns:repeat(4,1fr); grid-template-rows:repeat(4,1fr); width:155px; aspect-ratio:1; border:1px solid #b59d7e; box-shadow:9px 9px 0 rgba(110,86,59,.12); }
.preview-led .wood-preview-board i { --led-light:#ff7191; background-color:#241f1d; background-image:radial-gradient(circle,var(--led-light) 1.6px,transparent 2.5px); background-size:15px 15px; background-position:center; border:1px solid var(--led-light); box-shadow:inset 0 0 18px color-mix(in srgb,var(--led-light) 22%,transparent); }
.preview-led .wood-preview-board i:nth-child(6n+1) { --led-light:#ff7191; }
.preview-led .wood-preview-board i:nth-child(6n+2) { --led-light:#ffb46b; }
.preview-led .wood-preview-board i:nth-child(6n+3) { --led-light:#dbef72; }
.preview-led .wood-preview-board i:nth-child(6n+4) { --led-light:#64e5bf; }
.preview-led .wood-preview-board i:nth-child(6n+5) { --led-light:#70bfff; }
.preview-led .wood-preview-board i:nth-child(6n+6) { --led-light:#c79aff; }

.inquiry-page .page-heading { max-width: 880px; padding: 40px 0 22px; }
.inquiry-page .page-heading h1 { font-size: clamp(32px, 4.4vw, 52px); line-height: 1.13; }
.inquiry-page .page-heading .lead { margin-top: 14px; font-size: 16px; }
.inquiry-page .page-heading .eyebrow { margin-bottom: 12px; }
.inquiry-page .quote-layout { display: block; max-width: 880px; padding-bottom: 42px; }
.quote-main { min-width: 0; }
.inquiry-page .header-cta { display: none; }
.honeybook-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 12px 0 16px; }
.honeybook-status { margin: 0; font-size: 14px; line-height: 1.6; color: var(--muted); }
.honeybook-toolbar .text-link { font-size: 14px; flex-shrink: 0; padding: 8px 0; }
#honeybook-widget { width: 100%; max-width: 100%; }
#honeybook-widget iframe { display: block; width: 100%; max-width: 100%; border: 0; background: var(--paper); }
.honeybook-live[data-widget-state="loading"] #honeybook-widget { max-height: 340px; overflow: hidden; }
.honeybook-live[data-widget-state="unavailable"] #honeybook-link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 12px 20px; background: var(--rose); color: #fff; border: 1px solid var(--rose); border-radius: 10px; font-weight: 600; }
.honeybook-help { margin: 16px 0 0; font-size: 13px; line-height: 1.6; color: var(--muted); }
.honeybook-help a { text-decoration: underline; text-underline-offset: 3px; }
.honeybook-context { margin: 0 0 18px; padding: 14px 18px; background: var(--rose-soft); border-left: 3px solid var(--rose); }
.honeybook-context > summary { cursor: pointer; font-size: 14px; font-weight: 600; line-height: 1.5; }
.honeybook-context > p { white-space: pre-line; font-size: 14px; line-height: 1.6; margin-top: 12px; }
.honeybook-context .fine-print { white-space: normal; }
.honeybook-context .booking-led-preview { max-width: 270px; margin-top: 16px; }
.email-inquiry-fallback { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--rule); }
.email-inquiry-fallback > summary { cursor: pointer; font-size: 14px; font-weight: 600; padding: 8px 0; }
.email-inquiry-fallback > summary:focus-visible,
.honeybook-context > summary:focus-visible { outline: 3px solid var(--rose); outline-offset: 3px; }
.email-inquiry-fallback #inquiry-preview { margin-top: 16px; }
.email-inquiry-fallback .form-heading { font-size: 26px; }
.honeybook-live.floor-unavailable #honeybook-widget,
.honeybook-live.floor-unavailable #honeybook-status,
.honeybook-live.floor-unavailable #honeybook-link { display: none !important; }
#honeybook-floor-note { font-weight: 600; }
#honeybook-floor-note a { text-decoration: underline; }
.inquiry-footer { background: var(--ink); color: var(--paper); padding: 22px 0; }
.inquiry-footer .container { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.inquiry-footer small { font-size: 12px; }
.inquiry-footer a { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width:640px) {
  .inquiry-page .page-heading { padding: 28px 0 18px; }
  .inquiry-page .page-heading h1 { font-size: 34px; }
  .inquiry-page .page-heading .lead { font-size: 15px; line-height: 1.6; }
  .inquiry-page .quote-layout { padding-bottom: 28px; }
  .honeybook-toolbar { flex-wrap: wrap; gap: 6px; }
  .honeybook-context { padding: 12px 14px; }
  .inquiry-footer .container { flex-wrap: wrap; gap: 12px 20px; }
  .inquiry-footer small { width: 100%; }
}

.honeybook-live.email-mode #honeybook-widget,
.honeybook-live.email-mode .honeybook-toolbar { display: none; }


html body .site-header,
html .home-page .site-header,
html[data-header-style] .home-page .site-header {
  background: #241f1d;
  color: #faf7f2;
  border-bottom-color: #5c4d3e;
}
html body .site-header .mobile-nav,
html[data-header-style] .home-page .site-header .mobile-nav {
  background: #241f1d;
  color: #faf7f2;
  border-top-color: #5c4d3e;
}
html body .site-header .desktop-nav a,
html body .site-header .mobile-nav a,
html[data-header-style] .home-page .site-header .mobile-nav a { color: #faf7f2; }
html body .site-header .desktop-nav a:hover,
html body .site-header .desktop-nav a[aria-current],
html[data-header-style] .home-page .site-header .desktop-nav a:hover,
html[data-header-style] .home-page .site-header .desktop-nav a[aria-current] {
  color: #ddc9a7;
  border-bottom-color: #ddc9a7;
}
html body .site-header .mobile-nav a:hover,
html body .site-header .mobile-nav a:last-child,
html[data-header-style] .home-page .site-header .mobile-nav a:hover,
html[data-header-style] .home-page .site-header .mobile-nav a:last-child { color: #ddc9a7; }
html body .site-header .menu-toggle span,
html[data-header-style] .home-page .site-header .menu-toggle span { background: #faf7f2; }
html body .site-header a:focus-visible,
html body .site-header button:focus-visible {
  outline: 2px solid #ddc9a7;
  outline-offset: 4px;
  box-shadow: none;
}
html .site-header a.wordmark.wordmark--footer {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  min-width: 0;
  min-height: 50px;
  gap: 15px;
  padding: 10px 14px;
  background: #241f1d;
  color: #fff;
}
html .site-header a.wordmark.wordmark--footer .brand-mark {
  width: 29px;
  height: 29px;
  gap: 3px;
  flex-shrink: 0;
}
html .site-header a.wordmark.wordmark--footer .brand-mark i { background: #faf7f2; }
html .site-header a.wordmark.wordmark--footer .brand-mark i:nth-child(2),
html .site-header a.wordmark.wordmark--footer .brand-mark i:nth-child(3) { background: #ddc9a7; }
html .site-header a.wordmark.wordmark--footer .brand-type {
  align-items: center;
  line-height: 1.1;
  gap: 7px;
}
html .site-header a.wordmark.wordmark--footer .brand-type strong {
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: .10em;
}
html .site-header a.wordmark.wordmark--footer .brand-type > span {
  font-family: 'Karla', Arial, sans-serif;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .32em;
  padding-left: 3px;
}
@media (min-width: 641px) and (max-width: 850px) {
  html .site-header a.wordmark.wordmark--footer .brand-type strong { font-size: 17px; }
}
@media (max-width: 640px) {
  html .site-header a.wordmark.wordmark--footer { gap: 10px; padding: 10px 12px; }
  html .site-header a.wordmark.wordmark--footer .brand-mark { width: 25px; height: 25px; }
  html .site-header a.wordmark.wordmark--footer .brand-type strong { font-size: 15px; }
  html .site-header a.wordmark.wordmark--footer .brand-type > span { font-size: 6px; letter-spacing: .24em; }
}


@media (max-width: 850px) {
  html body .site-header { position: relative; z-index: 50; }
  html body .site-header .mobile-nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: min(70vh, 420px);
    max-height: min(70dvh, 420px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 14px max(20px, calc((100vw - 1280px) / 2)) 22px;
    border-bottom: 1px solid #5c4d3e;
    box-shadow: 0 14px 24px rgba(0, 0, 0, .22);
  }
  html body .site-header .mobile-nav a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding-block: 10px;
  }
  html body .site-header .menu-toggle {
    position: relative;
    min-width: 44px;
    min-height: 44px;
  }
  html body .site-header .menu-toggle span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 2px;
    margin: 0;
    transform: translate(-50%, -5px);
    transition: transform 180ms cubic-bezier(.2, .8, .2, 1);
  }
  html body .site-header .menu-toggle span:last-child { transform: translate(-50%, 3px); }
  html body .site-header .menu-toggle[aria-expanded="true"] span:first-child { transform: translate(-50%, -50%) rotate(45deg); }
  html body .site-header .menu-toggle[aria-expanded="true"] span:last-child { transform: translate(-50%, -50%) rotate(-45deg); }
}
@media (prefers-reduced-motion: reduce) {
  html body .site-header .menu-toggle span { transition: none; }
}
