:root{--color-accent: #ebafaf;--color-accent-deep: #9f604f;--font-display: "Libre Baskerville", Georgia, "Times New Roman", serif;--font-body: Montserrat, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:#1a1412;background:#101010;font-family:var(--font-body);font-size:16px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{min-height:100%;background:#101010}body{min-width:320px;min-height:100vh;margin:0;background:#101010}img{display:block;max-width:100%}#app{min-height:100vh}button,a{font:inherit}button{cursor:pointer}.site-shell{min-height:100vh;background:#101010}.hero-gallery{position:relative;min-height:100vh;overflow:hidden;isolation:isolate;color:#fffaf6}.gallery-stage,.gallery-image,.hero-tint{position:absolute;inset:0}.gallery-stage{z-index:-3;background:#17110f}.gallery-image{width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity 1.2s ease,transform 6s ease}.gallery-image--active{opacity:1;transform:scale(1)}.hero-tint{z-index:-2;background:radial-gradient(circle at 50% 46%,#1a120f1f,#100c0a99 62%),linear-gradient(180deg,#09080857,#09080885)}.hero-content{position:relative;z-index:1;display:flex;min-height:100vh;width:min(92vw,860px);margin:0 auto;padding:4rem 1.5rem 6rem;flex-direction:column;align-items:center;justify-content:center;text-align:center}.service-area,.eyebrow,.gallery-source{font-size:.76rem;font-weight:700;letter-spacing:.16em;line-height:1.5;text-transform:uppercase}.service-area{margin-bottom:1.35rem;color:#fffaf6d6;text-shadow:0 1px 18px rgba(0,0,0,.5)}.brand-mark{display:grid;gap:.9rem;justify-items:center}.brand-monogram{display:grid;width:6rem;height:6rem;place-items:center;border:1px solid var(--color-accent);border-radius:50%;background:#110d0c2e;box-shadow:0 16px 60px #0000005c;color:var(--color-accent);font-family:var(--font-display);font-size:1.35rem;letter-spacing:.12em;text-shadow:none}h1{margin:0;font-family:var(--font-display);font-size:clamp(3.1rem,9vw,7.8rem);font-weight:400;line-height:.94;text-shadow:1px 1px 0 var(--color-accent)}.brand-line{width:min(100%,620px);margin:1.35rem 0 2rem;color:#fffaf6e0;font-size:clamp(1rem,2vw,1.28rem);line-height:1.7;text-shadow:0 1px 18px rgba(0,0,0,.5)}.contact-button{min-width:13rem;min-height:3.25rem;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-accent);color:#17110f;font-weight:800;letter-spacing:.08em;padding:0 2.7rem;text-transform:uppercase;transition:background .18s ease,border-color .18s ease,transform .18s ease}.contact-button:hover{background:#f6c8c8;border-color:#f6c8c8;transform:translateY(-1px)}.social-links,.contact-social-links{display:flex;flex-wrap:wrap;align-items:center}.social-links{justify-content:center;gap:1.1rem;margin-top:1.35rem}.social-links a,.contact-social-links a{display:inline-flex;gap:.45rem;align-items:center;color:inherit;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}.social-icon{width:1.05rem;height:1.05rem;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.social-icon path{fill:currentColor;stroke:none}.social-links a{color:#fffaf6e0;text-shadow:0 1px 18px rgba(0,0,0,.5)}.social-links a:hover,.contact-social-links a:hover{color:var(--color-accent)}.gallery-controls{position:absolute;right:2rem;bottom:1.8rem;z-index:2;display:flex;gap:.65rem}.gallery-dot{width:.78rem;height:.78rem;border:1px solid rgba(255,250,246,.86);border-radius:50%;background:#fffaf62e}.gallery-dot--active{background:var(--color-accent);border-color:var(--color-accent)}.gallery-source{position:absolute;left:2rem;bottom:1.8rem;z-index:2;color:#fffaf6b3}.contact-backdrop{position:fixed;inset:0;z-index:10;display:flex;justify-content:flex-end;background:#0b09088a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.contact-panel{position:relative;display:grid;width:min(100vw,560px);height:100vh;grid-template-rows:auto 1fr;gap:1.5rem;overflow-y:auto;background:#fffaf6;color:#1a1412;box-shadow:-28px 0 80px #00000057;padding:4.5rem 2rem 2rem}.close-button{position:absolute;top:1.1rem;right:1.1rem;display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid rgba(26,20,18,.2);border-radius:50%;background:transparent;color:#1a1412;font-size:1.35rem;line-height:1}.contact-copy{display:grid;gap:.9rem}.eyebrow{color:var(--color-accent-deep)}.contact-copy h2{margin:0;font-family:var(--font-display);font-size:clamp(1.85rem,5vw,2.9rem);font-weight:400;line-height:1.08}.phone-link{color:#1a1412;font-size:1.12rem;font-weight:800;text-decoration:none}.contact-social-links{gap:.9rem;margin-top:.25rem}.contact-social-links a{color:var(--color-accent-deep)}.lead-form-frame{width:100%;min-height:560px;border:1px solid rgba(26,20,18,.14);border-radius:8px;background:#fff}.lead-form-frame{display:block}@media (max-width: 720px){.hero-content{width:100%;padding-inline:1.1rem}.brand-monogram{width:5rem;height:5rem;font-size:1.1rem}.gallery-controls{right:50%;bottom:1.35rem;transform:translate(50%)}.gallery-source{display:none}.contact-panel{width:100vw;padding:4.25rem 1rem 1rem}.lead-form-frame{min-height:620px}}
