@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#29241f;--paper:#f7f4ed;--white:#fffdfa;--gold:#c3a476;--muted:#756d62;--line:#d8d0c4;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}button{color:inherit}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:clamp(42px,4.4vw,65px);line-height:1.08;letter-spacing:-1.7px}em{font-weight:400}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #ac7c36;outline-offset:5px}.skip-link{position:fixed;top:-80px;background:white;padding:12px;z-index:100}.skip-link:focus{top:0}.site-header{height:100px;background:var(--ink);color:var(--paper);padding:0 5.3%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20}.wordmark{font-family:var(--serif);font-size:39px;letter-spacing:5px;line-height:1.05;text-align:center}.wordmark span{display:block;font:9px/1.9 var(--sans);letter-spacing:3px;margin-top:6px}.site-header nav{display:flex;gap:38px;font-size:14px}.site-header nav a{position:relative}.site-header nav a:after{content:'';position:absolute;left:0;bottom:-6px;height:1px;width:0;background:var(--gold);transition:width .25s}.site-header nav a:hover:after{width:100%}.button{display:inline-flex;gap:36px;align-items:center;justify-content:center;padding:18px 26px;border:1px solid transparent;font-size:14px;line-height:1.4;font-weight:500;transition:background .2s,color .2s,transform .2s}.button span{font-size:21px;line-height:1}.button:hover{transform:translateY(-2px)}.button-outline{border-color:#c3a47680;color:var(--paper);padding:13px 22px}.button-outline:hover{background:var(--paper);color:var(--ink)}.button-cream{background:var(--paper);color:var(--ink)}.button-cream:hover{background:#e6d8c3}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#4b3d31}.menu-toggle{display:none}.mobile-nav{background:var(--ink);color:white;padding:15px 6%;border-bottom:1px solid var(--gold)}.mobile-nav a{display:block;padding:10px}.hero{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;min-height:690px;padding:24px 2.2% 30px 7.5%;overflow:hidden}.hero-copy{position:relative;padding:72px 0 16px;z-index:1}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:500;display:flex;gap:14px;align-items:center}.tiny-line{display:inline-block;width:30px;height:1px;background:var(--gold)}.hero h1{font:400 clamp(68px,7.8vw,118px)/.98 var(--serif);letter-spacing:-3px;margin:34px -100px 28px 0;position:relative;z-index:1}.hero h1 em{color:#d3b990}.hero-description{max-width:360px;color:#d1cac0;font-size:15px;line-height:1.85;margin-bottom:31px}.hero-foot{display:flex;justify-content:space-between;max-width:370px;margin-top:61px;font-size:10px;letter-spacing:1.8px;color:#bfb5a8}.hero-art{position:relative;padding-left:35px}.hero-image{height:635px;width:100%;object-fit:cover;object-position:50% 65%}.hero-art:after{content:'';position:absolute;inset:0 0 0 35px;pointer-events:none;background:linear-gradient(0deg,#211a1760,transparent 35%)}.image-caption{position:absolute;right:30px;bottom:32px;font:italic 26px var(--serif);z-index:1}.hero-inset{position:absolute;left:-52px;bottom:42px;width:178px;background:var(--paper);padding:7px;z-index:2;box-shadow:0 6px 30px #0003;transform:rotate(-5deg);transition:transform .4s}.hero-inset:hover{transform:rotate(0deg) translateY(-5px)}.hero-inset img{height:203px;width:100%;object-fit:cover}.hero-inset>span{color:var(--ink);font:8px var(--sans);letter-spacing:1px;display:flex;justify-content:space-between;padding:10px 3px 4px}.hero-index{position:absolute;right:18px;top:14px;z-index:1;font-size:10px;letter-spacing:2px;writing-mode:vertical-rl;color:#fff}.hero-index span{padding:12px 0}.occasion-ribbon{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 7.5%;border-bottom:1px solid var(--line);white-space:nowrap;overflow:auto;font:21px var(--serif)}.occasion-ribbon i{font-style:normal;font-size:19px;color:#987b51}.section{padding:108px 7.5%}.section-header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-header .eyebrow{margin-bottom:19px;color:#8b714c}.section-header>p{max-width:340px;color:var(--muted);font-size:15px}.site-footer{background:var(--ink);color:var(--paper);padding:65px 7.5% 25px;text-align:center}.site-footer .wordmark{font-size:62px}.site-footer>p{font:italic 23px var(--serif);color:#c9b89c;margin:20px 0 48px}.footer-bottom{padding-top:24px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:15px;text-align:left;font-size:12px;color:#c9c1b6}
@media(min-width:1600px){.hero{padding-left:max(7.5%,calc((100vw - 1450px)/2));padding-right:max(2.2%,calc((100vw - 1550px)/2))}}@media(max-width:1000px){.site-header nav{gap:22px}.hero{padding-left:5%;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding-top:63px}.hero h1{font-size:83px}.hero-image{height:600px}.hero-description{max-width:300px}.hero-inset{width:143px;left:-14px;bottom:30px}.hero-inset img{height:160px}.hero .eyebrow{font-size:10px;letter-spacing:1px}.hero-foot{max-width:295px}.section{padding:80px 5%}.image-caption{font-size:22px;bottom:14px}.section-header>p{max-width:285px}}@media(max-width:700px){html{scroll-padding-top:20px}.site-header{height:86px;padding:0 6%}.wordmark{font-size:31px}.site-header nav{display:none}.header-cta{margin-left:auto;padding:11px 14px;font-size:12px;gap:12px}.menu-toggle{display:block;background:none;border:0;font-size:23px;margin-left:18px;padding:4px}.hero{display:flex;flex-direction:column;padding:0 6% 26px}.hero-copy{padding:43px 0 0}.hero .eyebrow{font-size:10px;letter-spacing:1.2px}.hero h1{font-size:clamp(65px,14.7vw,95px);letter-spacing:-2px;margin:28px 0 22px}.hero-description{font-size:15px;max-width:340px;margin-bottom:24px}.hero .button{padding:16px 21px;gap:28px}.hero-foot{margin:27px 0 26px;max-width:none;font-size:9px}.hero-art{padding-left:24px;margin-left:15px;margin-right:0}.hero-image{height:400px;object-position:50% 68%}.hero-art:after{left:24px}.hero-inset{left:-30px;width:125px;bottom:28px}.hero-inset img{height:139px}.hero-inset>span{font-size:6px;letter-spacing:.5px}.image-caption{right:15px;font-size:22px;bottom:20px}.hero-index{font-size:8px}.occasion-ribbon{padding:20px 6%;font-size:20px;gap:25px}.section{padding:68px 6%}.section-header{display:block;margin-bottom:30px}.section-header>p{margin-top:23px;max-width:400px}.section-header .eyebrow{font-size:11px}.footer-bottom{flex-direction:column;text-align:center;font-size:11px}.site-footer{padding-left:6%;padding-right:6%}}
.occasion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px}.card-image{position:relative;overflow:hidden}.card-image img{height:405px;width:100%;object-fit:cover;transition:transform .7s}.occasion-card:first-child .card-image img{object-position:50% 62%}.occasion-card:hover .card-image img{transform:scale(1.035)}.card-number{position:absolute;left:17px;top:12px;color:#fff;font:italic 27px var(--serif);text-shadow:0 1px 4px #0008}.card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:22px}.card-title h3{font:29px/1.1 var(--serif);letter-spacing:-.6px}.card-title>span{font-size:22px;color:#8c7350}.occasion-card>p{color:var(--muted);font-size:13px;margin-top:10px}.occasion-note{display:flex;gap:20px;justify-content:space-between;border-top:1px solid var(--line);margin-top:37px;padding-top:24px;font-size:13px;color:var(--muted)}.text-link{background:none;border:0;border-bottom:1px solid currentColor;display:inline-flex;align-items:center;gap:24px;padding:0 0 6px;font:500 14px var(--sans);width:max-content;max-width:100%;color:var(--ink)}.text-link span{font-size:19px}.signature{background:#eae4d9;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-top:88px;padding-bottom:88px}.signature-visual{position:relative}.signature-visual>img{width:100%;height:535px;object-fit:cover;object-position:50% 45%}.signature-seal{position:absolute;right:-47px;bottom:33px;border-radius:50%;height:125px;width:125px;background:var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:center;font:italic 65px/.9 var(--serif);box-shadow:0 0 0 7px #f7f4ed60}.signature-seal span{font:8px var(--sans);letter-spacing:1.2px;margin-top:12px}.signature-copy>.eyebrow{color:#8b714c;margin-bottom:24px}.signature-copy h2{margin-bottom:28px}.signature-copy>p:not(.eyebrow){color:#6d6559;font-size:15px;max-width:370px;margin-top:17px}.signature-values{margin:29px 0;display:flex;flex-direction:column;border-top:1px solid #c9c0b3;padding-top:19px;gap:7px;font-size:13px}.signature-values span:before{content:'✧';color:#8b714c;margin-right:13px}.gallery-section{background:#34332b;color:var(--paper)}.gallery-section .section-header .eyebrow{color:#c8b694}.gallery-section .section-header>p{color:#d2ccc0}.gallery-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;grid-template-rows:250px 250px;gap:17px}.gallery-item{padding:0;border:0;position:relative;overflow:hidden;background:#51463a}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#0008);pointer-events:none}.gallery-item>span{position:absolute;left:20px;right:20px;bottom:18px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:12px;z-index:1;text-align:left;gap:20px}.gallery-item>span i{font-size:22px;font-style:normal}.gallery-large{grid-row:span 2}.gallery-large img{object-position:50% 63%}.gallery-wide{grid-column:span 2}.gallery-wide img{object-position:50% 60%}.gallery-more{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.gallery-more>span{font:italic 25px var(--serif);color:#d4c5ac}.gallery-more .text-link{color:#e8ddc9}.booking-section{background:var(--paper)}.booking-shell{background:var(--white);border:1px solid var(--line);box-shadow:0 10px 60px #29241f05}.booking-top{display:flex;align-items:center;justify-content:space-between;padding:22px 34px;border-bottom:1px solid #e4ddd2}.booking-top .eyebrow{letter-spacing:2px;color:#7c6649}.preview-label{font-size:11px;border:1px solid var(--line);padding:3px 10px;color:var(--muted)}.booking-steps{margin:0;padding:28px 35px;display:flex;list-style:none;border-bottom:1px solid #e4ddd2;gap:38px;font-size:14px;color:#857f76}.booking-steps li{display:flex;align-items:center;gap:9px}.booking-steps li>span{font-size:11px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #ddd4c6;border-radius:50%}.booking-steps li.active{color:var(--ink)}.booking-steps li.active>span{background:var(--ink);color:white;border-color:var(--ink)}.booking-steps li.done>span{background:#ece6dc}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:40px 48px}.calendar-pane h3,.details-intro h3{font:32px/1.15 var(--serif)}.field-help{font-size:13px;color:var(--muted);margin-top:7px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin:26px 0 21px}.calendar-toolbar strong{font-size:15px;font-weight:600}.calendar-toolbar button{width:34px;height:34px;border:1px solid var(--line);background:transparent;display:flex;align-items:center;justify-content:center;font-size:23px;line-height:1}.calendar-toolbar button:hover:not(:disabled){background:#eae4d9}.calendar-toolbar button:disabled{opacity:.3}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:4px}.calendar-weekdays{color:#8c8173;font-size:10px;letter-spacing:1px;margin-bottom:12px}.calendar-days button{border:1px solid transparent;border-radius:50%;background:transparent;aspect-ratio:1;min-height:34px;max-width:48px;width:100%;font-size:14px;justify-self:center;position:relative}.calendar-days button:hover:not(:disabled){border-color:var(--gold);background:#f7f2e9}.calendar-days button:disabled{color:#c4bfb8}.calendar-days button.today:after{content:'';width:3px;height:3px;border-radius:50%;position:absolute;left:calc(50% - 1.5px);bottom:5px;background:#aa8552}.calendar-days button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.calendar-days button[aria-pressed=true]:hover{background:#4b3d31;color:white}.calendar-days button.today[aria-pressed=true]:after{background:#fff}.flexible-date{display:flex!important;align-items:center;gap:10px;margin:23px 0 10px!important;font-size:12px!important;cursor:pointer}.flexible-date input{accent-color:var(--ink);height:17px;width:17px;margin:0}.calendar-note{font-size:11px;color:var(--muted);line-height:1.6;max-width:330px}.event-pane{padding-top:5px}.event-pane label,.details-grid label{display:block;margin-bottom:9px;font-size:14px}.event-pane input,.event-pane select,.details-grid input,.details-grid textarea{border:1px solid var(--line);background:#fffdfa;border-radius:0;width:100%;height:51px;padding:11px 13px;font-size:14px;color:var(--ink)}input::placeholder,textarea::placeholder{color:#928a7e;opacity:1}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:24px}label small{font-size:11px;color:#83796a}input[aria-invalid=true],select[aria-invalid=true]{border-color:#a3382a;background:#fff8f5}.selection-box{background:#f3eee5;padding:23px;margin-top:28px}.selection-box .eyebrow{font-size:10px;color:#8b714c}.selection-box dl{margin:13px 0 0;font-size:13px}.selection-box dl>div{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid #ded6c9}.selection-box dl>div:last-child{border:0}.selection-box dt{color:#7e7365}.selection-box dd{margin:0;text-align:right}.private-note{font-size:11px;color:#7a6f60;margin-top:18px;max-width:300px}.form-actions{padding:23px 36px;border-top:1px solid #e4ddd2;display:flex;justify-content:space-between;align-items:center;gap:20px}.form-actions>p{font-size:12px;color:#8a7555;letter-spacing:1px}.form-actions>p>span{display:block;color:var(--muted);letter-spacing:0;font-size:11px;margin-top:4px}.form-error{margin:0 35px 25px;padding:15px;border-left:3px solid #9b3b2b;background:#fbefe8;color:#8b3025;font-size:14px}.booking-trust{display:flex;justify-content:center;gap:28px;margin-top:30px;font-size:12px;color:#7c7162}.booking-trust i{font-style:normal;color:#a78b62}.details-intro{padding:36px 48px 20px}.details-intro>p{font-size:14px;color:var(--muted);margin-top:10px}.details-grid{padding:10px 48px 27px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.full-width{grid-column:1/-1}.details-grid textarea{height:auto;resize:vertical;min-height:120px}.demo-note{font-size:12px;color:#7a6e5c;background:#f2eee6;border-left:2px solid #b99b6d;padding:16px 19px;margin:0 48px 28px;line-height:1.7}.summary-intro{padding:30px 48px 0;text-align:center}.summary-symbol{font-size:37px;color:#9c8258}.summary-intro .eyebrow{justify-content:center;font-size:10px;margin:8px 0 14px;color:#8c7350}.summary-intro h3{font:39px/1.1 var(--serif)}.summary-intro>p:last-child{font-size:14px;color:var(--muted);margin:15px auto 0;max-width:470px}.final-summary{margin:30px 48px;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.final-summary>div{padding:13px 0;border-bottom:1px solid var(--line)}.final-summary>div:last-child{grid-column:1/-1}.final-summary dt{font-size:11px;color:#83735c}.final-summary dd{margin:4px 0 0;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.closing-banner{min-height:385px;position:relative;background:#332719;color:white;display:flex;align-items:center;justify-content:center;text-align:center;padding:60px 6%;isolation:isolate}.closing-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%;z-index:-2}.closing-banner:after{content:'';position:absolute;inset:0;background:#211a13b8;z-index:-1}.closing-banner .eyebrow{justify-content:center;margin-bottom:21px;color:#dcc9ab;font-size:10px}.closing-banner h2{font-size:clamp(38px,4.5vw,66px)}.closing-banner .button{margin-top:28px}.closing-banner h2 em{color:#e0cba8}dialog{border:0;padding:0;background:#211e19;color:#fff;max-width:calc(100vw - 40px);max-height:calc(100dvh - 30px);width:990px;overflow:auto}dialog::backdrop{background:#14120fef}.lightbox-stage{display:grid;grid-template-columns:65px 1fr 65px;align-items:center;padding-top:46px}.lightbox-stage img{max-width:100%;width:auto;height:calc(100dvh - 170px);object-fit:contain;margin:auto;min-height:200px}.lightbox-close{position:absolute;right:14px;top:5px;border:0;background:none;color:white;font-size:32px;line-height:1;width:40px;height:40px;z-index:1}.lightbox-prev,.lightbox-next{background:none;border:0;font-size:35px;color:white;width:50px;height:50px;justify-self:center}.lightbox-footer{padding:15px 28px 20px;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#ddcdb5}.lightbox-footer>p{font-family:var(--serif);font-size:23px}[hidden]{display:none!important}
@media(max-width:1000px){.occasion-grid{gap:19px}.card-image img{height:330px}.card-title h3{font-size:25px}.signature{gap:10%}.signature-visual>img{height:490px}.booking-grid{gap:6%;padding:32px}.gallery-grid{grid-template-rows:225px 225px}.booking-steps{gap:25px}.event-pane label{font-size:12px}.two-fields{gap:9px}}
@media(max-width:700px){.occasion-grid{grid-template-columns:1fr;gap:35px}.card-image img{height:400px}.occasion-card:nth-child(2) .card-image img{object-position:50% 40%}.card-title h3{font-size:30px}.occasion-card>p{font-size:14px}.occasion-note{flex-direction:column;font-size:13px;gap:20px}.signature{display:flex;flex-direction:column;gap:55px;padding-bottom:65px}.signature-visual{width:85%;align-self:flex-start}.signature-visual>img{height:360px}.signature-seal{width:105px;height:105px;right:-35px;bottom:28px;font-size:57px}.signature-seal span{font-size:7px}.signature-copy{align-self:flex-start}.signature-copy h2{font-size:52px}.signature-copy>.eyebrow{font-size:11px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:370px 245px 230px;gap:10px}.gallery-large{grid-column:span 2;grid-row:auto}.gallery-large img{object-position:50% 73%}.gallery-item>span{font-size:10px;left:12px;right:12px;bottom:12px;gap:8px}.gallery-item>span i{font-size:18px}.gallery-more{align-items:flex-start;flex-direction:column;gap:22px}.gallery-more>span{font-size:23px}.booking-section{padding-left:5%;padding-right:5%}.booking-section .section-header{padding:0 1%}.booking-top{padding:18px 20px}.booking-top .eyebrow{font-size:10px}.booking-steps{padding:21px 16px;gap:16px;justify-content:space-between;font-size:11px;line-height:1.4}.booking-steps li{gap:6px;flex:1}.booking-steps li>span{height:23px;width:23px;min-width:23px;font-size:9px}.booking-grid{grid-template-columns:1fr;gap:28px;padding:25px 22px}.calendar-pane h3{font-size:31px}.calendar-days button{min-height:38px;font-size:14px}.calendar-note{font-size:12px}.flexible-date{font-size:13px!important}.event-pane{border-top:1px solid var(--line);padding-top:25px}.event-pane label{font-size:14px}.selection-box{margin-top:24px}.form-actions{padding:22px;flex-wrap:wrap;gap:17px}.form-actions>p{display:none}.form-actions>.button{width:100%;padding:17px 15px;gap:18px;font-size:13px}.form-actions>.text-link{margin-bottom:7px;font-size:13px}.booking-trust{flex-wrap:wrap;gap:8px 16px;font-size:10px;line-height:1.5}.booking-trust i{font-size:10px}.details-intro{padding:28px 22px 14px}.details-intro h3{font-size:30px}.details-intro>p{font-size:13px}.details-grid{grid-template-columns:1fr;padding:10px 22px 25px;gap:19px}.demo-note{margin:0 22px 23px;padding:14px;font-size:12px}.summary-intro{padding:24px 22px 0}.summary-intro h3{font-size:34px}.final-summary{margin:25px 22px;grid-template-columns:1fr}.final-summary dd{font-size:13px}.form-error{margin:0 22px 23px;font-size:13px}.closing-banner{min-height:350px}.closing-banner h2{font-size:40px}.lightbox-stage{grid-template-columns:36px 1fr 36px}.lightbox-stage img{height:calc(100dvh - 200px)}.lightbox-prev,.lightbox-next{width:34px}.lightbox-footer{padding:14px 18px;align-items:center}.lightbox-footer>p{font-size:21px}dialog{max-width:calc(100vw - 16px)}.wordmark span{font-size:10px;letter-spacing:2px}.private-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.hero-image{object-position:50% 54%}.hero-inset img{object-position:50% 62%}

.calendar-days button.is-booked:disabled{color:#8b6d56;text-decoration:line-through;background:#eee6dc;opacity:1;cursor:not-allowed}.calendar-note{min-height:1.5em}#retry-availability{font-size:14px;margin-top:8px}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.request-success{padding:50px;text-align:center}.request-success h3{font-size:42px;margin:18px 0}.request-success p{max-width:640px;margin:18px auto;line-height:1.7}#request-reference{font-size:13px;overflow-wrap:anywhere}.button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.request-success{padding:32px 22px}}
