:root{--charcoal:#2d2a27;--warm-gold:#c6a26b;--taupe:#b8ada1;--linen:#e9e3d8;--ivory:#fbf8f3;--charcoal-soft:#4a4540;--charcoal-mute:#6e675f;--gold-deep:#a9854f;--gold-soft:#d9bc90;--gold-wash:#f1e5d2;--taupe-soft:#cec6bc;--linen-soft:#f2ede4;--surface-page:var(--ivory);--surface-card:#fff;--surface-tint:var(--linen-soft);--surface-inverse:var(--charcoal);--text-heading:var(--charcoal);--text-body:15px;--text-muted:var(--charcoal-mute);--text-on-dark:var(--ivory);--text-accent:var(--gold-deep);--border-hairline:var(--linen);--border-strong:var(--taupe);--border-accent:var(--warm-gold);--focus-ring:#c6a26b73;--accent:var(--warm-gold);--accent-hover:var(--gold-deep);--success:#7d8b6f;--danger:#a56a5e;--info:var(--taupe);--font-display:"Cormorant Garamond",Georgia,serif;--font-script:"Pinyon Script",cursive;--font-sans:"Montserrat",-apple-system,sans-serif;--text-hero:clamp(44px,6vw,72px);--text-h1:clamp(34px,4.5vw,44px);--text-h2:32px;--text-h3:24px;--text-body-lg:17px;--text-small:13px;--text-caption:11px;--weight-display:500;--weight-body:300;--weight-medium:400;--weight-strong:500;--track-caps:.28em;--track-wide:.12em;--track-body:.01em;--leading-tight:1.1;--leading-normal:1.5;--leading-loose:1.75;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:144px;--radius-none:0;--radius-soft:2px;--radius-pill:999px;--radius-round:50%;--shadow-card:0 1px 2px #2d2a270d,0 8px 28px #2d2a2712;--shadow-lift:0 2px 6px #2d2a2714,0 16px 44px #2d2a271f;--ease-brand:cubic-bezier(.4,0,.2,1);--dur-fast:.15s;--dur-normal:.28s;--dur-slow:.5s;--container:1140px;--container-narrow:720px}*,:before,:after{box-sizing:border-box}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-weight:var(--weight-body);font-size:var(--text-body);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-heading);font-weight:var(--weight-display);line-height:var(--leading-tight);margin:0}a{color:var(--text-accent);transition:color var(--dur-fast) var(--ease-brand);text-decoration:none}a:hover{color:var(--charcoal)}img{max-width:100%;height:auto;display:block}::selection{background:var(--gold-wash)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}em{font-style:italic}.container{max-width:var(--container);padding-left:var(--space-6);padding-right:var(--space-6);margin:0 auto}.container-narrow{max-width:var(--container-narrow);padding-left:var(--space-6);padding-right:var(--space-6);margin:0 auto}.skip-link{background:var(--charcoal);color:var(--ivory);z-index:100;padding:10px 18px;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.eyebrow{font-size:var(--text-caption);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-accent)}.eyebrow--light{color:var(--gold-soft)}.rule{border:0;align-items:center;gap:14px;max-width:220px;margin:0 auto;display:flex}.rule:before,.rule:after{content:"";background:var(--border-accent);flex:1;height:1px}.rule span{color:var(--warm-gold);font-size:9px;line-height:1}.btn{font-family:var(--font-sans);font-weight:var(--weight-medium);letter-spacing:var(--track-caps);text-transform:uppercase;border-radius:var(--radius-none);cursor:pointer;transition:all var(--dur-normal) var(--ease-brand);text-align:center;background:0 0;border:1px solid #0000;padding:12px 30px;font-size:11px;display:inline-block}.btn--gold{background:var(--accent);color:var(--charcoal)}.btn--gold:hover{background:var(--accent-hover);color:var(--charcoal)}.btn--primary{background:var(--charcoal);color:var(--ivory)}.btn--primary:hover{background:var(--charcoal-soft);color:var(--ivory)}.btn--outline{border-color:var(--border-accent);color:var(--text-accent)}.btn--outline:hover{background:var(--gold-wash);color:var(--text-accent)}.btn--sm{padding:8px 18px;font-size:10px}.btn--lg{padding:16px 40px}.text-link{font-size:var(--text-small);letter-spacing:var(--track-wide);text-transform:uppercase}.announce{background:var(--charcoal);color:var(--ivory);font-size:var(--text-caption);letter-spacing:var(--track-wide);text-transform:uppercase;text-align:center;position:relative}.announce a{color:var(--gold-soft);padding:10px 48px;display:block}.announce a:hover{color:var(--ivory)}.announce button{color:var(--taupe-soft);cursor:pointer;background:0 0;border:0;padding:6px;font-size:14px;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.announce button:hover{color:var(--ivory)}.announce[hidden]{display:none}.site-header{border-bottom:1px solid var(--border-hairline);background:var(--ivory)}.site-header__inner{max-width:var(--container);padding:16px var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-5);margin:0 auto;display:flex}.brand{display:block}.brand__logo{mix-blend-mode:multiply;width:auto;height:40px;transition:opacity var(--dur-fast) var(--ease-brand)}.brand:hover .brand__logo{opacity:.8}@media (width<=560px){.brand__logo{height:30px}}.site-nav{gap:var(--space-6);align-items:center;display:flex}.site-nav a:not(.btn){font-size:var(--text-caption);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-muted);text-align:center;border-bottom:1px solid #0000;padding-bottom:4px;line-height:1.6}.site-nav a:not(.btn):hover{color:var(--text-heading)}.site-nav a[aria-current=page]{color:var(--text-heading);border-bottom-color:var(--accent)}.nav-toggle{border:1px solid var(--border-hairline);font-size:var(--text-caption);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-heading);cursor:pointer;background:0 0;padding:8px 12px;display:none}@media (width<=900px){.site-nav{background:var(--ivory);border-bottom:1px solid var(--border-hairline);padding:var(--space-5);z-index:50;gap:var(--space-4);flex-direction:column;display:none;position:absolute;top:100%;left:0;right:0}.site-nav.open{display:flex}.nav-toggle{display:block}.site-header{position:relative}}.hero{text-align:center;padding:var(--space-9) var(--space-6) var(--space-8);max-width:820px;margin:0 auto}.hero h1{font-size:var(--text-hero);margin:18px 0}.hero p{font-size:16px;line-height:var(--leading-loose);color:var(--text-body);max-width:560px;margin:0 auto var(--space-6)}.hero__ctas{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.hero-split{max-width:var(--container);padding:var(--space-8) var(--space-6) var(--space-9);gap:var(--space-8);grid-template-columns:1.05fr .95fr;align-items:center;margin:0 auto;display:grid}.hero-split__text{padding:var(--space-6) 0;position:relative}.hero-split__ghost{opacity:.1;z-index:-1;width:340px;height:auto;position:absolute;top:-30px;left:-70px}.hero-split__text h1{font-size:var(--text-hero);margin:16px 0 20px}.hero-split__text p{font-size:16px;line-height:var(--leading-loose);max-width:480px;margin:0 0 var(--space-4)}.hero-split__script{font-family:var(--font-script);color:var(--gold-deep);margin:var(--space-2) 0 var(--space-5);font-size:34px}.hero-split__rule .rule{max-width:180px;margin:0}.hero-art{padding:0 var(--space-6) var(--space-7) 0;position:relative}.hero-art__main{width:82%;margin-left:auto}.hero-art__main img{aspect-ratio:3/4;object-fit:cover}.hero-art__accent{width:42%;box-shadow:var(--shadow-lift);position:absolute;bottom:0;left:0}.hero-art__accent img{aspect-ratio:3/4.6;object-fit:cover}@media (width<=900px){.hero-split{gap:var(--space-6);padding-top:var(--space-7);text-align:center;grid-template-columns:1fr}.hero-split__text p{margin-left:auto;margin-right:auto}.hero-split__rule .rule{margin:0 auto}.hero-split__ghost{left:50%;transform:translate(-50%)}.hero-art{padding:0 0 var(--space-7) 0}.hero-art__main{width:88%;margin:0 auto}.hero-art__accent{width:38%;left:-4px}}.section{padding-top:var(--space-8);padding-bottom:var(--space-8)}.section--tint{background:var(--surface-tint)}.section--inverse{background:var(--surface-inverse);color:var(--text-on-dark)}.section--inverse h2,.section--inverse h3{color:var(--ivory)}.section--inverse p{color:var(--taupe-soft)}.section-head{text-align:center;max-width:640px;margin:0 auto var(--space-7)}.section-head h2{font-size:var(--text-h2);margin:14px 0 10px}.section-head p{color:var(--text-muted)}.script-line{font-family:var(--font-script);color:var(--gold-soft);font-size:38px;line-height:1.3}.grid-3{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-5);grid-template-columns:repeat(4,1fr);display:grid}.grid-2{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}@media (width<=900px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3,.grid-2{grid-template-columns:1fr}}@media (width<=560px){.grid-4{grid-template-columns:1fr}}.card{background:var(--surface-card);border:1px solid var(--border-hairline);box-shadow:var(--shadow-card);padding:var(--space-6)}.tile{text-align:center}.tile .tile__media{border:1px solid var(--border-hairline);overflow:hidden}.tile img{aspect-ratio:3/4;object-fit:cover;width:100%;transition:transform var(--dur-slow) var(--ease-brand);display:block}.tile h3{font-size:var(--text-h3);transition:color var(--dur-fast) var(--ease-brand);margin:18px 0 8px}.tile p{font-size:var(--text-small);color:var(--text-muted);margin:0;line-height:1.6}.tile .eyebrow{margin-top:6px;display:block}a.tile-link{color:inherit;display:block}a.tile-link:hover .tile__media{box-shadow:var(--shadow-lift)}a.tile-link:hover img{transform:scale(1.045)}a.tile-link:hover h3{color:var(--text-accent)}.ph{aspect-ratio:3/4;background:var(--linen-soft);border:1px solid var(--border-hairline);justify-content:center;align-items:center;display:flex}.ph span{letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--taupe);font-size:10px}.step{text-align:center}.step__num{font-family:var(--font-display);color:var(--warm-gold);font-size:40px;line-height:1}.step h3{font-size:var(--text-h3);margin:10px 0 8px}.step p{font-size:var(--text-small);color:var(--text-muted);margin:0;line-height:1.6}.testimonial{text-align:center;max-width:680px;margin:0 auto}.testimonial blockquote{font-family:var(--font-display);color:var(--text-heading);margin:0 0 var(--space-5);font-size:22px;font-style:italic;line-height:1.6}.testimonial cite{font-style:normal;font-size:var(--text-caption);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-accent)}.testimonial cite small{color:var(--text-muted);letter-spacing:var(--track-wide);margin-top:4px;display:block}.prose{font-size:var(--text-body-lg);line-height:var(--leading-loose)}.prose h2{font-size:var(--text-h2);margin:var(--space-7) 0 var(--space-4)}.prose h3{font-size:var(--text-h3);margin:var(--space-6) 0 var(--space-3)}.prose p{margin:0 0 var(--space-4)}.prose ul{margin:0 0 var(--space-4);padding-left:1.2em}.prose li{margin-bottom:var(--space-2)}.prose strong{font-weight:var(--weight-strong);color:var(--text-heading)}.prose blockquote{border-left:2px solid var(--border-accent);margin:var(--space-5) 0;padding-left:var(--space-5);font-family:var(--font-display);color:var(--text-heading);font-size:19px;font-style:italic}.prose img{border:1px solid var(--border-hairline);margin:var(--space-5) 0}.page-head{text-align:center;padding:var(--space-8) var(--space-6) var(--space-7);max-width:760px;margin:0 auto}.page-head h1{font-size:var(--text-h1);margin:14px 0 12px}.page-head p{color:var(--text-muted);max-width:560px;margin:0 auto}.page-head .script-line{color:var(--warm-gold);margin-top:6px;font-size:30px}.faq{border-top:1px solid var(--border-hairline)}.faq details{border-bottom:1px solid var(--border-hairline)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-4);font-family:var(--font-display);color:var(--text-heading);padding:18px 4px;font-size:19px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--warm-gold);font-size:20px;font-family:var(--font-sans);transition:transform var(--dur-normal) var(--ease-brand);font-weight:300}.faq details[open] summary:after{content:"−"}.faq .faq__a{max-width:640px;line-height:var(--leading-loose);padding:0 4px 20px}.field{display:block}.field span{font-size:var(--text-caption);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;display:block}.field input,.field select,.field textarea{width:100%;font-family:var(--font-sans);font-weight:var(--weight-body);font-size:var(--text-body);color:var(--text-heading);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-soft);transition:border-color var(--dur-fast) var(--ease-brand),box-shadow var(--dur-fast) var(--ease-brand);padding:11px 13px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--border-accent);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.site-footer{background:var(--charcoal);color:var(--ivory);margin-top:var(--space-9)}.site-footer__grid{max-width:var(--container);padding:var(--space-8) var(--space-6);gap:var(--space-6);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}@media (width<=900px){.site-footer__grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.site-footer__grid{grid-template-columns:1fr}}.site-footer h3{color:var(--ivory);letter-spacing:.06em;margin-bottom:var(--space-4);font-size:18px}.site-footer h4{font-family:var(--font-sans);font-size:var(--text-caption);font-weight:var(--weight-medium);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--gold-soft);margin:0 0 var(--space-4)}.site-footer p,.site-footer li{font-size:var(--text-small);color:var(--taupe-soft);line-height:1.8}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer a{color:var(--taupe-soft)}.site-footer a:hover{color:var(--gold-soft)}.site-footer__bottom{text-align:center;padding:var(--space-5) var(--space-6);font-size:var(--text-caption);color:var(--taupe-soft);border-top:1px solid #e9e3d824}.site-footer__bottom a{color:var(--taupe-soft);margin:0 6px}.site-footer__bottom a:hover{color:var(--gold-soft)}.footer-values{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--gold-soft);margin:10px 0 var(--space-4);font-size:10px}.footer-seal{border-radius:var(--radius-round);object-fit:cover;width:88px;height:88px;margin-bottom:var(--space-4);border:1px solid #e9e3d840}.photo-frame{border:1px solid var(--border-hairline);background:var(--surface-card);box-shadow:var(--shadow-card);padding:10px}.photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.welcome-grid{gap:var(--space-7);grid-template-columns:1.1fr 1fr;align-items:center;display:grid}@media (width<=900px){.welcome-grid{grid-template-columns:1fr}}.portrait-arch{margin:var(--space-7) auto 0;max-width:360px;padding:0 var(--space-6)}.portrait-arch__ring{background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-soft);box-shadow:var(--shadow-lift);transition:transform var(--dur-slow) var(--ease-brand);padding:12px 12px 6px;transform:rotate(-2.5deg)}.portrait-arch:hover .portrait-arch__ring{transform:rotate(0)scale(1.01)}.portrait-arch__ring img{aspect-ratio:1;object-fit:cover;border-radius:1px;width:100%;display:block}.portrait-arch figcaption{font-family:var(--font-script);color:var(--gold-deep);text-align:center;padding:8px 4px 10px;font-size:24px;line-height:1.4}@media (prefers-reduced-motion:reduce){.portrait-arch__ring{transition:none;transform:none}}.reveal{opacity:0;transition:opacity var(--dur-slow) var(--ease-brand),transform var(--dur-slow) var(--ease-brand);transform:translateY(16px)}.reveal-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.tile img,.brand__mark{transition:none}}.center{text-align:center}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}.muted{color:var(--text-muted)}.small{font-size:var(--text-small)}.map-embed{border:1px solid var(--border-hairline);aspect-ratio:16/8;background:var(--surface-tint);justify-content:center;align-items:center;width:100%;display:flex}.map-embed iframe{border:0;width:100%;height:100%}.map-embed__prompt{text-align:center;padding:var(--space-5);max-width:420px}.map-embed__address{font-family:var(--font-display);color:var(--text-heading);margin:10px 0 16px;font-size:18px;line-height:1.4}.map-embed__note{font-size:var(--text-caption);color:var(--text-muted);margin:14px 0 0;line-height:1.6}.map-embed__note a{margin-top:4px;display:inline-block}
