@import url('https://fonts.googleapis.com/css2?family=Allura&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&display=swap');
:root{--paper:#faf8f4;--ink:#252321;--wine:#521c2b;--muted:#645d59;--rose:#efe4df;--line:#d8ceca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ab5c72;outline-offset:6px}p{margin:0 0 24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.06;margin:0 0 28px;letter-spacing:-.045em}h1{font-size:clamp(60px,6.8vw,102px)}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:29px;letter-spacing:-.035em}em{font-weight:400;color:var(--wine)}.wrap{max-width:1320px;margin:auto;padding-left:54px;padding-right:54px}.preview{background:var(--wine);color:#fff;font-size:12px;letter-spacing:.055em;text-align:center;padding:7px 16px}.preview span{margin:0 12px}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:22px 54px;background:#faf8f4f5;border-bottom:1px solid #e7dfd9;backdrop-filter:blur(12px)}.brand{font-family:Georgia,serif;font-size:36px;letter-spacing:.18em;line-height:1}.brand small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.34em;margin-top:10px}nav{display:flex;gap:30px;align-items:center;font-size:14px}nav>a:not(.button):hover,.text-link:hover{color:#90354f}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;background:var(--wine);color:white;padding:15px 24px;font-size:15px;font-weight:500;transition:transform .2s,background .2s;border:1px solid var(--wine)}.button:hover{transform:translateY(-2px);background:#732b40}.button.small{padding:11px 22px}.menu{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-top:58px;padding-bottom:70px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.19em;color:var(--wine);margin-bottom:24px}.intro{max-width:460px;font-size:19px;color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid #947b80;padding:5px 0;font-size:15px}.hero .text-link{display:block;width:fit-content;margin-top:15px}.hero-note{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--muted);margin-top:38px;letter-spacing:.06em}.line{width:40px;height:1px;background:var(--wine)}.portrait{position:relative;margin:0;background:var(--rose);height:630px}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.portrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:55px 30px 26px;background:linear-gradient(transparent,#000b);color:white}.portrait figcaption span{font-family:Georgia,serif;font-size:32px;display:block}.portrait figcaption small{font-size:11px;letter-spacing:.18em}.photo-tag{position:absolute;right:-20px;top:35px;writing-mode:vertical-rl;background:var(--wine);color:#fff;padding:22px 14px;font-family:Georgia,serif;font-style:italic;font-size:19px}.audience{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 20px}.audience span{font-size:11px;letter-spacing:.18em;color:var(--muted)}.audience p{font-family:Georgia,serif;font-size:25px;margin:10px 0 0}.audience b{font-weight:400;color:#bca69d;margin:0 20px}.about{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:100px;padding-bottom:100px}.large{font-size:23px;line-height:1.5}.fine{font-size:12px;margin-top:14px;color:var(--muted)}.services{background:var(--rose);padding:85px 0}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end}.section-head>p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:45px}.service-grid article{border-top:1px solid #bda9a4;padding-top:26px}.number{font-size:12px;letter-spacing:.15em;color:var(--wine);display:block;margin-bottom:26px}.service-grid p{font-size:16px;color:#574c49}.packages{padding-top:100px;padding-bottom:70px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;gap:20px}.package-grid article{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column}.package-grid article>p:not(.eyebrow):not(.price){font-size:15px}.package-grid h3{min-height:62px}.price{font-family:Georgia,serif;font-size:39px;letter-spacing:-.04em;margin:0 0 25px}.price small{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:0}.package-grid ul{list-style:none;margin:0 0 30px;padding:0;font-size:14px;flex:1}.package-grid li{border-top:1px solid var(--line);padding:10px 0}.outline{background:transparent;color:var(--wine)}.outline:hover{color:white}.featured{background:var(--wine);color:#fff}.featured .eyebrow{color:#f1c9d2}.featured li{border-color:#865262}.light{background:var(--paper);color:var(--wine);border-color:var(--paper)}.light:hover{background:#efdfdc;color:var(--wine)}.scope{font-size:13px;color:var(--muted);margin-top:24px;max-width:980px}.extras{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:20px 0;list-style:none;font-size:17px;font-weight:500;display:flex;justify-content:space-between;gap:24px}summary:after{content:'+';color:var(--wine);font-size:24px;line-height:1}details[open]>summary:after{content:'−'}.extras>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;font-size:15px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-top:50px;padding-bottom:100px}.faq details{border-bottom:1px solid var(--line)}.faq details p{color:var(--muted);font-size:16px}.contact{background:var(--wine);color:var(--paper);padding:80px 0;text-align:center}.contact .eyebrow,.contact em,.contact .fine{color:#e6c4cc}.contact h2{font-size:clamp(38px,4.5vw,65px)}footer{display:flex;align-items:center;gap:28px;padding-top:45px;padding-bottom:45px;font-size:13px}footer p{margin:0 auto 0 15px;color:var(--muted)}footer .brand{font-size:25px}footer .brand small{font-size:7px}@media(min-width:1500px){header{padding-left:calc((100vw - 1212px)/2);padding-right:calc((100vw - 1212px)/2)}}@media(max-width:1000px){.wrap{padding-left:30px;padding-right:30px}header{padding:20px 30px}nav{gap:18px}.hero{gap:35px}.portrait{height:560px}.package-grid article{padding:22px}.package-grid{gap:12px}.about,.faq{gap:40px}.section-head{align-items:start}.section-head>p{max-width:230px}footer{flex-wrap:wrap}}@media(max-width:720px){html{scroll-padding-top:90px}.preview{font-size:10px}.wrap{padding-left:24px;padding-right:24px}header{padding:18px 24px}.brand{font-size:28px}.brand small{font-size:7px}.menu{display:block;background:none;border:1px solid var(--line);padding:8px 14px;font:inherit;font-size:14px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 10px 20px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{grid-template-columns:1fr;gap:35px;padding-top:38px;padding-bottom:45px}h1{font-size:64px}.hero-copy .eyebrow{font-size:10px}.intro{font-size:17px}.portrait{height:510px;margin-right:12px}.photo-tag{right:-12px}.hero-note{margin-top:25px}.audience p{font-size:19px}.audience b{margin:0 5px}.audience span{font-size:9px}.about,.faq{grid-template-columns:1fr;gap:16px;padding-top:60px;padding-bottom:60px}.services{padding:60px 0}.section-head{display:block}.section-head>p{max-width:none}.service-grid,.package-grid,.extras>div{grid-template-columns:1fr;gap:20px}.service-grid{margin-top:24px}.service-grid article{padding-top:22px}.service-grid h3{margin-bottom:16px}.packages{padding-top:60px;padding-bottom:25px}.package-grid{margin-top:30px}.package-grid article{padding:28px}.package-grid h3{min-height:0}.package-grid .button{margin-top:10px}.contact{padding:60px 0}.contact br{display:none}.contact h2{line-height:1.13}footer{gap:22px;padding-top:30px;padding-bottom:30px}footer p{width:100%;margin:0;order:4}h2{line-height:1.12}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
