:root{--paper: #dde4d3;--paper-soft: #e8ecdf;--paper-deep: #c8d3bb;--sage: #4a5a3d;--sage-deep: #2f3a26;--sage-soft: #6b7d5a;--ink: #1f2419;--ink-soft: #3a4232;--accent: #4a5a3d;--rule: rgba(31, 36, 25, .18)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:Inter,sans-serif;font-weight:300;font-size:16px;line-height:1.6;letter-spacing:.01em;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 15% 20%,rgba(47,58,38,.1) 0%,transparent 45%),radial-gradient(circle at 85% 75%,rgba(74,90,61,.08) 0%,transparent 45%);pointer-events:none;z-index:1}.container{max-width:720px;margin:0 auto;padding:0 32px;position:relative;z-index:2}.nav{position:absolute;top:32px;left:0;right:0;display:flex;justify-content:center;gap:40px;z-index:10;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase}.nav a{color:var(--ink-soft);text-decoration:none;transition:color .3s ease}.nav a:hover{color:var(--sage)}.hero{min-height:95vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:120px 32px 80px;position:relative}.ornament-leaves{margin-bottom:40px;opacity:0;animation:fadeUp 1.2s ease-out .2s forwards}.logo{font-family:Cormorant Garamond,serif;font-weight:400;font-size:clamp(48px,8vw,84px);line-height:1;letter-spacing:-.02em;margin-bottom:24px;opacity:0;animation:fadeUp 1.2s ease-out .4s forwards;color:var(--ink)}.logo .ampersand{font-style:italic;font-weight:300;color:var(--sage);margin:0 .05em}.logo-descriptor{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.5em;text-transform:uppercase;color:var(--sage);padding-top:18px;padding-left:.5em;margin-bottom:36px;opacity:0;animation:fadeUp 1.2s ease-out .55s forwards;position:relative}.logo-descriptor:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60px;height:1px;background:var(--rule)}.tagline{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:clamp(20px,2.5vw,26px);color:var(--ink-soft);max-width:540px;line-height:1.4;opacity:0;animation:fadeUp 1.2s ease-out .7s forwards}.location-tag{margin-top:32px;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--sage);opacity:0;animation:fadeUp 1.2s ease-out .85s forwards}.section{padding:100px 0;border-top:1px solid var(--rule)}.section-label{font-family:Inter,sans-serif;font-size:11px;font-weight:400;letter-spacing:.3em;text-transform:uppercase;color:var(--sage);margin-bottom:32px;text-align:center}.section-heading{font-family:Cormorant Garamond,serif;font-weight:400;font-size:clamp(28px,4vw,38px);line-height:1.2;text-align:center;margin-bottom:48px;letter-spacing:-.01em;color:var(--ink)}.section-heading em{font-style:italic;color:var(--sage)}.prose{font-family:Cormorant Garamond,serif;font-weight:300;font-size:20px;line-height:1.7;color:var(--ink-soft);max-width:580px;margin:0 auto}.prose p{margin-bottom:24px}.prose p:last-child{margin-bottom:0}.prose .lead{font-size:22px;color:var(--ink);font-style:italic;text-align:center;margin-bottom:40px}.prose .practice-note{text-align:center;font-style:italic;color:var(--ink);margin-top:32px}.pullquote{padding:80px 0;text-align:center;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--sage-deep);color:var(--paper)}.pullquote-text{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:clamp(24px,3.5vw,34px);line-height:1.4;color:var(--paper);max-width:600px;margin:0 auto;padding:0 32px;letter-spacing:-.005em}.arrangements{text-align:center}.arrangement{padding:32px 0}.arrangement+.arrangement{border-top:1px solid var(--rule)}.arrangement-title{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:400;color:var(--ink);margin-bottom:8px}.arrangement-price{font-family:Cormorant Garamond,serif;font-style:italic;font-size:28px;color:var(--sage);font-weight:400}.arrangements-note{margin-top:48px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:17px;color:var(--ink-soft);text-align:center;max-width:540px;margin-left:auto;margin-right:auto;line-height:1.6}.quotes{display:flex;flex-direction:column;gap:56px;max-width:620px;margin:0 auto}.quote{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:20px;line-height:1.65;color:var(--ink-soft);text-align:center;position:relative;padding:0 20px}.quote:before{content:"“";display:block;font-size:48px;color:var(--sage);line-height:.5;margin-bottom:24px;font-style:normal}.quote-attr{display:block;margin-top:20px;font-family:Inter,sans-serif;font-style:normal;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sage)}.discretion{text-align:center;max-width:520px;margin:0 auto}.hello-you{padding:120px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--paper-deep)}.hello-prose{font-family:Cormorant Garamond,serif;font-weight:300;font-size:20px;line-height:1.75;color:var(--ink-soft);max-width:600px;margin:0 auto}.hello-prose p{margin-bottom:24px}.hello-prose .opener{font-size:22px;color:var(--ink);font-style:italic;text-align:center;margin-bottom:40px}.hello-prose .emphasis{text-align:center;font-style:italic;color:var(--ink);font-size:22px;margin:40px 0}.hello-quote{margin:56px auto;max-width:540px;text-align:center;padding:32px 24px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.hello-quote-text{font-family:Cormorant Garamond,serif;font-style:italic;font-size:22px;line-height:1.5;color:var(--ink);margin-bottom:16px}.hello-quote-attr{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--sage)}.hello-loves{text-align:center;font-style:italic;color:var(--ink);font-size:19px;line-height:1.7;margin:40px auto;max-width:540px;font-family:Cormorant Garamond,serif}.hello-signoff{text-align:center;margin-top:56px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:24px;color:var(--ink);line-height:1.5}.hello-name{margin-top:32px;font-family:Caveat,cursive;font-size:42px;color:var(--sage);text-align:center}.hello-practicals{margin-top:56px;padding-top:32px;border-top:1px solid var(--rule);text-align:center;font-family:Cormorant Garamond,serif;font-style:italic;font-size:17px;color:var(--ink-soft);line-height:1.8}.hello-photo{display:flex;justify-content:center;margin-bottom:56px}.hello-photo-placeholder{width:240px;height:300px;background:linear-gradient(135deg,#2f3a2626,#2f3a2640);border-radius:2px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--sage)}.hello-photo-placeholder span{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sage)}.contact{padding:100px 0 80px;text-align:center;border-top:1px solid var(--rule)}.contact-intro{font-family:Cormorant Garamond,serif;font-style:italic;font-size:19px;color:var(--ink-soft);max-width:480px;margin:0 auto 48px;line-height:1.5}.form{max-width:520px;margin:0 auto;text-align:left}.form-row{margin-bottom:28px}.form-row.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form label{display:block;font-family:Inter,sans-serif;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sage);margin-bottom:10px}.form label .optional{text-transform:none;letter-spacing:.05em;opacity:.6}.form input,.form textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--rule);padding:8px 0 12px;font-family:Cormorant Garamond,serif;font-size:18px;color:var(--ink);transition:border-color .3s ease;resize:none}.form input:focus,.form textarea:focus{outline:none;border-bottom-color:var(--sage)}.form textarea{min-height:100px;line-height:1.5}.form-consent{margin-top:24px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:14px;color:var(--ink-soft);text-align:center}.form-submit{margin-top:36px;text-align:center}.btn{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--paper);background:var(--sage);border:1px solid var(--sage);padding:14px 36px;text-decoration:none;transition:all .3s ease;cursor:pointer;display:inline-block}.btn:hover{background:var(--sage-deep);border-color:var(--sage-deep)}.form-alt{margin-top:48px;padding-top:36px;border-top:1px solid var(--rule);font-family:Cormorant Garamond,serif;font-style:italic;font-size:17px;color:var(--ink-soft);text-align:center;line-height:1.6}.form-alt a{color:var(--sage);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:1px}footer{text-align:center;padding:40px 32px 60px;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sage)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(20px);transition:opacity 1s ease-out,transform 1s ease-out}.reveal.visible{opacity:1;transform:translateY(0)}.form-success{padding:60px 20px;text-align:center;font-family:Cormorant Garamond,serif;font-style:italic;font-size:22px;color:var(--ink);line-height:1.5}@media(max-width:600px){.container{padding:0 24px}.nav{gap:24px}.hero{padding:90px 24px 60px;min-height:85vh}.section{padding:70px 0}.prose{font-size:18px}.prose .lead{font-size:20px}.quote{font-size:18px}.form-row.split{grid-template-columns:1fr;gap:28px}.logo-descriptor{font-size:10px;letter-spacing:.4em}}
