@font-face{font-family:'Playfair Display';src:url('fonts/Playfair-Variable.ttf') format('truetype');font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:Merriweather;src:url('fonts/Merriweather-Variable.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{--ink:#070A0F;--dark:#101722;--slate:#101722;--paper:#F1EEE9;--stone:#E8E1D7;--accent:#DBBF83;--blush:#E8E1D7;--muted:#E8E1D7;--line:rgba(16,23,34,.24)}
body{font-family:Merriweather,Georgia,serif;font-weight:400;padding-top:0;background:#101722}
.home-page .hero{height:100svh;min-height:640px}
.home-page .home-scene{inset:0}
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',Georgia,serif!important;font-weight:400;letter-spacing:-.025em!important;line-height:1.12!important}
p{line-height:1.6}
h1,.hero h1,.page h1,.blog-empty-copy h1,.contact-hero-copy h1{font-size:clamp(40px,5vw,64px)}
.glass-message-copy h2,.process-clean-heading h2,.reference-portal h2,.reviews h2,.about-mast h1,.contact-project-intro h2{font-size:clamp(32px,4.5vw,64px)}
nav,button,.button,.text-link,.eyebrow,.project-meta,.project-tags,.review-date,.review-number,.review-scroll-hint,.process-clean-meta,.process-clean-number,.hero-coordinates,.hero-index,.hero-scroll,.hero-signal,.glass-depth,.evening-reveal-label,.blog-status,.field label,.attachments,.legal-updated,footer{font-family:Arial,sans-serif!important}
.brand-name,.footer-brand strong{font-family:Georgia,serif}
.palette-rule{position:absolute;top:0;left:0;right:0;z-index:41;background:linear-gradient(90deg,#DBBF83 0 8%,#101722 8% 70%,#E8E1D7 70% 85%,#F1EEE9 85%)}
header{position:fixed;top:0;left:0;right:0;z-index:40;background:rgba(16,23,34,.67);border-bottom:1px solid rgba(232,225,215,.25);backdrop-filter:blur(22px) saturate(110%);-webkit-backdrop-filter:blur(22px) saturate(110%);box-shadow:0 8px 30px rgba(7,10,15,.15);transition:transform .5s cubic-bezier(.22,1,.36,1);color:#F1EEE9}
header.pointer-header:not(.header-visible):not(:focus-within):not(.menu-open){transform:translateY(-110%)}
header .brand,header nav a{color:#F1EEE9}
header .brand-service{color:#E8E1D7}
header nav a{font-family:'Playfair Display',Georgia,serif!important;font-size:1rem;letter-spacing:.015em}
header nav .nav-contact{font-family:Arial,sans-serif!important;font-size:.73rem}
header nav .nav-contact,.button,.submit{background:#DBBF83;border-color:#DBBF83;color:#070A0F}
header nav .nav-contact:hover,.button:hover,.submit:hover{background:#E8E1D7;border-color:#E8E1D7;color:#070A0F}
.project-note,.upload-note{color:inherit;opacity:.8}
.consent a{color:#DBBF83}
.home-page,.contact-page,.blog-empty,.process,.reference-portal,.reviews,footer,.quote{color:#F1EEE9}
.home-page .home-scene,.contact-page,.blog-empty{background-color:#101722}
.home-page footer,footer{background:#101722}
.hero-copy .intro,.glass-message-copy>p:not(.eyebrow),.contact-hero-copy>p:not(.eyebrow),.contact-project-intro>p:not(.eyebrow),.blog-empty-copy>p:not(.eyebrow),.legal-content p{color:#E8E1D7}
.contact-page .quote-form{background:rgba(16,23,34,.76);backdrop-filter:blur(18px)}
.contact-page .field input,.contact-page .field select,.contact-page .field textarea{background:#101722;color:#F1EEE9;font-family:Merriweather,Georgia,serif}
.contact-page .field input::placeholder,.contact-page .field textarea::placeholder{color:#E8E1D7;opacity:.7}
@media(max-width:1000px) and (min-width:721px){header{padding-inline:3vw}header nav{gap:1rem}header nav a{letter-spacing:.025em}.brand-service{letter-spacing:.1em}}
@media(max-width:720px){body{padding-top:0}header{height:82px;transform:none!important}header nav{background:rgba(16,23,34,.88);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}header nav a{font-family:'Playfair Display',Georgia,serif!important}header nav .nav-contact{font-family:Arial,sans-serif!important}.hero h1{font-size:clamp(3rem,13vw,5.4rem)}.hero-copy .intro{font-size:.94rem;line-height:1.7}}
@media(prefers-reduced-motion:reduce){header{transition:none;transform:none!important}}

