@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Great+Vibes&display=swap";
:root{--cream:#fffaf3;--ivory:#f8efe6;--rose:#b9707c;--rose-dark:#8c4f5d;--rose-soft:#efd2d2;--ink:#272121;--muted:#6f6260;--sage:#7f917d;--gold:#b69762;--line:#b9707c85}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 12% 8%, #efd2d294, transparent 28rem), linear-gradient(180deg, var(--cream), #fffdf8 46%, var(--ivory));color:var(--ink);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:18px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.hero{padding:24px}.stitched-frame{border:1px solid var(--line);background:linear-gradient(#fffaf3b8, #fffaf3b8), repeating-linear-gradient(90deg, #b9707c14 0 1px, transparent 1px 84px), var(--cream);border-radius:8px;min-height:calc(100vh - 48px);position:relative;overflow:hidden}.stitched-frame:before{content:"";pointer-events:none;border:1px dashed #8c4f5d61;border-radius:6px;position:absolute;inset:12px}.nav{z-index:2;justify-content:space-between;align-items:center;gap:24px;padding:24px clamp(22px,4vw,56px);display:flex;position:relative}.brand{gap:0;line-height:1;display:grid}.brand span{color:var(--rose);font-family:Great Vibes,cursive;font-size:clamp(30px,4vw,46px)}.brand strong{letter-spacing:.26em;text-transform:uppercase;font-size:18px}.nav-links{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:clamp(14px,3vw,34px);font-size:17px;display:flex}.hero-grid{z-index:1;grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);align-items:center;gap:clamp(28px,5vw,72px);min-height:calc(100vh - 142px);padding:28px clamp(22px,6vw,86px) 58px;display:grid;position:relative}.hero-copy{max-width:620px}.eyebrow{color:var(--rose-dark);letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;font-size:14px;font-weight:700}h1,h2,h3,p{margin-top:0}h1{text-transform:uppercase;margin-bottom:18px;font-size:clamp(58px,9vw,124px);line-height:.86}h1 span{color:var(--rose);text-transform:none;font-family:Great Vibes,cursive;font-size:.72em;font-weight:400;display:block}.lede{max-width:560px;color:var(--muted);font-size:clamp(22px,2.3vw,32px);line-height:1.2}.hero-actions,.contact-actions{flex-wrap:wrap;gap:12px;margin:30px 0 18px;display:flex}.button{border:1px solid var(--rose);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;font-size:16px;font-weight:700;display:inline-flex}.button.primary{background:var(--rose);color:#fffaf8;box-shadow:0 14px 34px #8c4f5d38}.button.secondary{color:var(--rose-dark);background:#fffaf3b8}.location{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:17px}.hero-art{background:linear-gradient(135deg,#fffcf5f5,#e8d7c4eb),#f5eadb;border:7px solid #b99a64;border-radius:7px;justify-content:center;align-items:center;padding:clamp(18px,2vw,28px);display:flex;position:relative;overflow:hidden;box-shadow:0 30px 68px #55363038,0 6px #7e5c3729,inset 0 0 0 2px #fffaefeb,inset 0 0 0 10px #7e5c371a}.hero-art:before,.hero-art:after{content:"";pointer-events:none;position:absolute}.hero-art:before{z-index:3;border:1px solid #fffaefd6;border-radius:2px;inset:9px;box-shadow:inset 0 0 18px #59392929}.hero-art:after{z-index:2;border:1px solid #b9707c5c;inset:clamp(18px,2vw,28px);box-shadow:0 0 0 8px #fffaf3d1}.hero-art img{z-index:1;object-fit:cover;object-position:34% center;width:100%;height:clamp(300px,27vw,370px);position:relative}.section-inner{width:min(1120px,100% - 40px);margin:0 auto}.intro,.local-seo,.services,.gallery,.highlights,.about,.faq,.contact{padding:clamp(54px,8vw,104px) 0}.intro-grid,.about-grid,.local-grid{grid-template-columns:.78fr 1.22fr;align-items:center;gap:clamp(28px,5vw,68px);display:grid}.script-note{color:var(--rose);font-family:Great Vibes,cursive;font-size:clamp(38px,5.2vw,72px);line-height:.95}.intro h2,.local-seo h2,.services h2,.gallery h2,.about h2,.faq h2,.contact h2{max-width:720px;font-size:clamp(38px,5.3vw,72px);line-height:.98}.intro p:not(.script-note),.local-seo p:not(.eyebrow),.gallery-note,.about p:not(.eyebrow),.faq-card p,.contact p:not(.script-note){color:var(--muted);font-size:24px;line-height:1.35}.local-seo{padding-top:18px}.area-list{flex-wrap:wrap;gap:10px;display:flex}.area-list span{color:var(--rose-dark);letter-spacing:.08em;text-transform:uppercase;background:#fffaf3c2;border:1px solid #b9707c57;border-radius:999px;padding:9px 14px;font-size:15px;font-weight:700}.services{background:#efd2d242;border-block:1px solid #b9707c38}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.service-grid,.highlight-grid,.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.faq-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-card,.highlight-card,.gallery-card,.faq-card,.mini-card,.contact-panel{background:#fffaf3d6;border:1px solid #b9707c5c;border-radius:8px;box-shadow:0 16px 40px #55363014}.service-card{min-height:158px;padding:24px}.service-card span{border:1px dashed var(--line);width:38px;height:38px;color:var(--rose);border-radius:50%;place-items:center;margin-bottom:20px;font-size:20px;display:inline-grid}.service-card h3,.highlight-card h3{font-size:28px;line-height:1.04}.highlight-card{padding:28px}.highlight-card p{color:var(--muted);line-height:1.45}.gallery{background:linear-gradient(#fffaf3d6, #fffaf3d6), var(--cream)}.gallery-note{max-width:720px;margin-bottom:28px}.gallery-card{overflow:hidden}.gallery-card img{object-fit:cover;width:100%;height:280px}.featured-gallery-card img{object-fit:contain;background:#b9b5b1}.gallery-card div{padding:22px}.gallery-card h3,.faq-card h3{font-size:27px;line-height:1.04}.gallery-card p{color:var(--muted);line-height:1.42}.about{background:linear-gradient(90deg, #fffaf3f0, #fffaf3b3), var(--ivory)}.mini-card{text-align:center;min-height:300px;padding:46px 32px;position:relative}.mini-card:before{content:"";border:1px dashed #b9707c6b;border-radius:4px;position:absolute;inset:13px}.mini-card p{color:var(--rose);margin-bottom:0;font-family:Great Vibes,cursive;font-size:58px}.mini-card strong{letter-spacing:.24em;text-transform:uppercase;margin:4px 0 22px;font-size:32px;display:block}.mini-card span{color:var(--rose-dark);letter-spacing:.16em;text-transform:uppercase;font-size:13px;font-weight:700}.faq-card{padding:28px}.faq-card p{margin-bottom:0;font-size:21px}.contact{padding-top:40px}.contact-panel{text-align:center;padding:clamp(34px,6vw,72px);position:relative}.contact-panel:before{content:"";pointer-events:none;border:1px dashed #b9707c61;border-radius:4px;position:absolute;inset:14px}.contact-panel>*{position:relative}.contact-panel h2,.contact-panel p{margin-inline:auto}.contact-actions{justify-content:center}address{color:var(--muted);font-style:normal;line-height:1.5}address a{color:var(--rose-dark);font-weight:700}@media (max-width:860px){.hero{padding:12px}.stitched-frame{min-height:auto}.nav,.nav-links{align-items:flex-start}.nav{flex-direction:column}.nav-links{justify-content:space-between;width:100%;font-size:14px}.hero-grid,.intro-grid,.about-grid,.local-grid,.section-heading{grid-template-columns:1fr}.hero-grid{min-height:auto;padding-bottom:40px}.hero-art{order:-1}.hero-art img{object-position:35% center;height:clamp(220px,48vw,320px)}.service-grid,.highlight-grid,.gallery-grid,.faq-grid{grid-template-columns:1fr}.section-heading{display:block}}@media (max-width:520px){body{font-size:17px}.hero-actions,.contact-actions{display:grid}.button{width:100%}.section-inner{width:min(100% - 28px,1120px)}h1{font-size:clamp(52px,20vw,74px)}}
