.foot-link[data-astro-cid-sz7xmlte]:hover{color:#fff!important}.foot-social[data-astro-cid-sz7xmlte]:hover{background:var(--rose);border-color:var(--rose)!important}:root{--bg: #FBF6F2;--bg-alt: #F3E6DD;--surface: #FFFFFF;--ink: #2B211F;--ink-soft: #7A6A63;--muted: #9C8B83;--line: rgba(43, 33, 31, .12);--rose: #BE5A6E;--rose-deep: #8E3A53;--blush: #F4DDD8;--gold: #C2A05A;--gold-soft: #E7D6AE;--nav-bg: rgba(251,246,242,.86);--nav-solid: #FBF6F2;--footer: #221A18;--shadow-sm: 0 1px 2px rgba(43,33,31,.06), 0 4px 14px rgba(43,33,31,.06);--shadow-md: 0 18px 50px -22px rgba(72,38,46,.45);--shadow-lg: 0 40px 90px -40px rgba(72,38,46,.55);--radius: 18px;--radius-lg: 28px;--maxw: 1200px;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Jost", system-ui, sans-serif;--font-script: "Pinyon Script", cursive;--ease: cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:400;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:var(--rose);color:#fff}.display{font-family:var(--font-display);font-weight:500;line-height:1.02;letter-spacing:-.01em}.eyebrow{font-family:var(--font-body);font-weight:500;font-size:12.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--rose);margin:0}.eyebrow.muted{color:var(--muted)}.lede{font-size:1.2rem;line-height:1.55;color:var(--ink-soft)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}.wrap-narrow{max-width:860px;margin:0 auto;padding:0 32px}.section{padding:110px 0}.section-sm{padding:72px 0}.center{text-align:center}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);font-weight:500;font-size:14px;letter-spacing:.12em;text-transform:uppercase;padding:15px 28px;border-radius:999px;border:1px solid transparent;transition:transform .25s var(--ease),background .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--rose-deep);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-rose{background:var(--rose);color:#fff}.btn-rose:hover{background:var(--rose-deep);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);background:var(--ink);color:#fff}.btn-light{background:#ffffffeb;color:var(--ink)}.btn-light:hover{background:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-lg{padding:18px 36px;font-size:14.5px}.btn .arr{transition:transform .25s var(--ease)}.btn:hover .arr{transform:translate(4px)}.link-u{position:relative;color:var(--rose-deep);font-weight:500}.link-u:after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.link-u:hover:after{transform:scaleX(1)}.rule{height:1px;background:var(--line);border:0}.divider-dot{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--gold)}.divider-dot:before,.divider-dot:after{content:"";height:1px;width:60px;background:linear-gradient(to var(--d,right),transparent,var(--gold-soft))}.divider-dot:before{--d: left}.tag{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--rose-deep);background:var(--blush);padding:6px 13px;border-radius:999px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}.card-hover:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--rose)}.slot{position:relative;display:flex;align-items:center;justify-content:center;background:var(--blush);color:var(--rose-deep);font-size:13px;font-weight:500;letter-spacing:.01em;text-align:center;padding:16px;overflow:hidden}.slot:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%238E3A53' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='18' height='18' rx='2'/><circle cx='8.5' cy='8.5' r='1.5'/><path d='m21 15-5-5L5 21'/></svg>");background-repeat:no-repeat;background-position:center calc(50% - 18px);opacity:.4}.slot span{position:relative;max-width:80%;margin-top:30px;opacity:.8}.reveal{opacity:1}.reveal.in{animation:wxRise .6s var(--ease) both}@keyframes wxRise{0%{transform:translateY(16px)}to{transform:none}}@keyframes wxMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.reveal.in,.marquee-track{animation:none!important}html{scroll-behavior:auto}}@media(max-width:1040px){.vp-grid,.sp-grid{grid-template-columns:repeat(2,1fr)!important}.stats-grid{grid-template-columns:repeat(2,1fr)!important;row-gap:36px!important}.gallery-cols{column-count:2!important}.nav-phone{display:none!important}}@media(max-width:880px){body{font-size:16px}.section{padding:76px 0}.section-sm{padding:56px 0}.wrap,.wrap-narrow{padding:0 22px}.nav-links{display:none!important}.nav-burger{display:block!important}.nav-right .nav-cta{display:none}.hero-copy{text-align:left}.hero-art,.hero-chip,.about-badge{display:none!important}.about-grid,.contact-grid,.svc-layout,.ref-band,.foot-cta,.foot-cols,.about-teaser-grid{grid-template-columns:1fr!important}.svc-nav{position:static!important}.hero-strip{grid-template-columns:1fr 1fr!important}.two-col{grid-template-columns:1fr!important}}@media(max-width:620px){.vp-grid,.sp-grid,.stats-grid,.gallery-cols{grid-template-columns:1fr!important;column-count:1!important}.ref-band{padding:40px 28px!important}.foot-cols{gap:36px!important}}
