:root{--ink:#242024;--body:#565057;--muted:#82767e;--mauve:#a18c96;--mauve-dark:#8d747e;--line:#eee8eb;--soft:#faf9f9;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:Jost,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:15px;font-weight:300;line-height:1.73;background:#fff;-webkit-font-smoothing:antialiased}figure,p,h1,h2,h3{margin-top:0}figure{margin-bottom:0}img{display:block;max-width:100%}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--mauve-dark);outline-offset:3px}.skip-link{position:fixed;z-index:100;top:-100px;left:20px;background:#fff;padding:8px 16px}.skip-link:focus{top:14px}
.site-header{height:83px;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:0 clamp(20px,5.5vw,98px);background:rgba(255,255,255,.975);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(15px)}.brand{display:flex;flex-direction:column;align-items:center;text-decoration:none;white-space:nowrap;line-height:1}.brand-main{font-family:var(--serif);font-style:italic;font-weight:500;font-size:32px;letter-spacing:.1px}.brand-small{font-family:var(--sans);font-size:7.7px;letter-spacing:2.6px;margin-top:7px;font-weight:400}.site-nav{display:flex;gap:clamp(11px,1.7vw,26px);align-items:center}.site-nav a{font-size:10.2px;letter-spacing:1.05px;text-transform:uppercase;text-decoration:none;font-weight:400;white-space:nowrap;transition:color .2s}.site-nav a:hover{color:var(--mauve-dark)}.site-nav .nav-cta{border:1px solid #bcaeb5;padding:9px 14px}.menu-toggle{display:none;background:transparent;border:0;padding:10px}.menu-toggle span{display:block;width:27px;height:1px;background:var(--ink);margin:6px}
.section{padding:clamp(78px,8vw,118px) 24px;text-align:center}.leaf{width:100px;height:auto;margin:0 auto 18px;object-fit:contain;opacity:.77}.leaf-hero{width:94px}.eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--muted);font-weight:400;margin:0 0 8px}.section h2,.section h1{font-family:var(--serif);font-style:italic;font-weight:400;line-height:1.06;letter-spacing:-.4px}.section h2{font-size:clamp(42px,4.4vw,61px);margin:5px auto 20px}.section h1{font-size:clamp(57px,6vw,85px);margin:6px auto 25px}.section h1 em{font-weight:400}.lead{font-size:14.3px;max-width:650px;margin:0 auto 25px;font-weight:300}
.hero{padding-top:60px;padding-bottom:84px}.hero-copy{width:min(100%,600px);text-align:left;margin:0 auto 36px}.hero-copy p{margin:0 0 17px}.hero-photo{max-width:860px;margin:0 auto}.hero-photo img{width:100%;height:auto;aspect-ratio:1.85;object-fit:cover;object-position:center 50%}.approach{min-height:460px;padding-top:100px;padding-bottom:110px}.approach-copy{max-width:495px;margin:25px auto 0;font-size:14px}.approach-copy p{margin:19px 0}
.gallery-section{padding:21px clamp(24px,4vw,65px) 39px;background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,34px)}.gallery-grid figure{overflow:hidden}.gallery-grid img{width:100%;height:auto;aspect-ratio:1.42;object-fit:cover;object-position:center}.gallery-grid figure:nth-child(3) img{object-position:center 53%}
.packages-section{padding-top:83px;padding-bottom:126px}.package-grid{max-width:1120px;margin:67px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,2.8vw,44px);text-align:left;align-items:stretch}.package-card{display:flex;flex-direction:column;min-width:0}.package-card>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}.package-label{font-size:10.5px;letter-spacing:.8px;color:var(--muted);margin:21px 0 5px;font-weight:400}.package-card h3{font:italic 500 clamp(23px,2.1vw,29px)/1.08 var(--serif);margin:1px 0 20px;min-height:60px}.package-desc{font-size:13.5px;line-height:1.77;color:var(--body);margin-bottom:18px}.package-inclusions{list-style:none;padding:0;margin:16px 0 12px;font-size:12.8px;color:var(--body)}.package-inclusions li{margin:0 0 13px;padding-left:12px;position:relative;line-height:1.65}.package-inclusions li:before{content:'•';position:absolute;left:0;top:0;color:var(--muted)}.price{font-size:15.5px;font-weight:500;letter-spacing:.2px;margin:auto 0 9px;padding-top:18px}.price span{font-size:10px;color:var(--muted);letter-spacing:1px;font-weight:400;margin-left:3px}.package-link{font-size:10.6px;text-transform:uppercase;letter-spacing:1px;color:var(--mauve-dark);font-weight:500;text-underline-offset:4px;text-decoration-thickness:.6px;margin:2px 0 0;align-self:flex-start}
.event-section{border-top:1px solid #f2eeee;background:#fff}.event-section .occasion-list{font-size:14px;line-height:1.88;margin:28px auto 0}.event-section .package-grid{margin-top:44px}.event-section .package-card h3{min-height:57px}.event-section .package-desc{font-size:13.8px}
.meeting-section{padding-top:104px;padding-bottom:115px}.meeting-section .lead{margin-top:26px}.meeting-grid{max-width:850px;margin:43px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px;text-align:left}.meeting-column{display:flex;flex-direction:column;gap:22px}.meeting-column h3{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:1.5px;margin:0 0 9px}.meeting-column p{font-size:13px;color:var(--body);margin:0;line-height:1.7}
.faq-section{padding:102px 20px 115px}.faq-grid{max-width:650px;margin:42px auto 0;display:grid;gap:19px;text-align:left}.faq-grid details{background:var(--soft);padding:23px 28px;min-height:94px}.faq-grid summary{list-style:none;font-weight:500;letter-spacing:1.2px;font-size:12px;cursor:pointer}.faq-grid summary::-webkit-details-marker{display:none}.faq-grid summary::after{content:'−';float:right;color:var(--mauve);font-size:17px;line-height:16px}.faq-grid details:not([open]) summary::after{content:'+'}.faq-grid details p{margin:12px 0 0;color:var(--body);font-size:12.8px}
.contact-section{padding-top:93px;padding-bottom:108px}.contact-section .lead{max-width:565px;margin-bottom:31px}.contact-section form{text-align:left;width:min(100%,475px);margin:26px auto 0}.field{margin-bottom:14px}.field label{display:block;font-size:12.5px;font-weight:400;margin:0 0 5px}.field label span{color:#bc5757}.field input,.field textarea,.field select{display:block;width:100%;padding:10px 12px;border:1px solid #e6e0e3;color:var(--ink);background:white;border-radius:0;font-size:12.5px;font-family:var(--sans);min-height:43px;outline:none;transition:border-color .15s}.field textarea{resize:vertical;min-height:111px}.field input::placeholder,.field textarea::placeholder{color:#a19aa0}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--mauve-dark)}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.form-status{min-height:0;margin:0 0 12px;font-size:12.5px}.form-status.success{color:#2c7146}.form-status.error{color:#aa3434}.send-button{padding:11px 27px;background:var(--mauve);color:#fff;border:0;border-radius:0;font-weight:500;font-size:12px;transition:background .15s}.send-button:hover{background:var(--mauve-dark)}.send-button:disabled{opacity:.6;cursor:wait}.contact-fallback{font-size:11.7px;color:var(--body);margin:18px 0 0}.contact-fallback a{text-underline-offset:3px}
.footer{background:#a38f99;color:#fff;padding:41px 24px 23px}.footer-grid{max-width:850px;display:grid;grid-template-columns:1.2fr 1fr;gap:85px;margin:0 auto}.footer strong{font-size:17px;font-weight:400}.footer p{font-size:12.3px;line-height:1.6;margin:8px 0}.footer a{text-decoration:underline;text-underline-offset:3px}.copyright{max-width:850px;margin:30px auto 0!important;font-size:10.5px!important}
@media(max-width:1120px){.site-header{padding:0 24px}.brand-main{font-size:28px}.site-nav{gap:13px}.site-nav a{font-size:9.5px}}
@media(max-width:940px){.site-header{height:72px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:72px;background:white;box-shadow:0 10px 15px rgba(20,10,18,.05);border-bottom:1px solid var(--line);padding:20px 25px 26px;flex-direction:column;align-items:stretch;gap:15px}.site-nav.is-open{display:flex}.site-nav a{font-size:12px}.site-nav .nav-cta{text-align:center;padding:11px}.section{padding:85px 24px}.packages-section{padding-bottom:100px}.package-grid{gap:22px}.package-card h3{font-size:25px}}
@media(max-width:700px){html{scroll-padding-top:70px}.section{padding:73px 20px 85px}.hero{padding-top:42px}.hero h1{font-size:clamp(51px,10vw,69px)}.hero-photo img{aspect-ratio:1.4}.section h2{font-size:clamp(40px,9vw,52px)}.gallery-section{padding:15px 16px 25px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-grid img{aspect-ratio:1.36}.packages-section{padding-top:75px;padding-bottom:85px}.package-grid{max-width:470px;grid-template-columns:1fr;gap:49px;margin-top:36px}.package-card>img{aspect-ratio:auto;height:auto}.package-card h3,.event-section .package-card h3{min-height:0;margin-bottom:11px;font-size:28px}.package-desc{font-size:14px}.package-inclusions{margin-top:10px}.package-inclusions li{margin-bottom:9px}.price{padding-top:12px}.event-section .occasion-list{font-size:12.5px}.meeting-grid{gap:25px}.meeting-column{gap:18px}.footer-grid{gap:35px}}
@media(max-width:480px){.brand-main{font-size:28px}.site-header{padding:0 17px}.gallery-section{padding:14px}.gallery-grid{gap:10px}.hero-copy p{font-size:13.6px}.meeting-grid{grid-template-columns:1fr;gap:20px;max-width:400px}.meeting-column{gap:19px}.desktop-break{display:none}.faq-grid details{padding:18px}.footer-grid{grid-template-columns:1fr;gap:20px}.footer{padding:32px 24px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original package-image proportions and desktop column widths. All image files remain unchanged. */
@media (min-width: 1100px){
  #weddings .package-grid{max-width:1215px;column-gap:30px}
  #events .package-grid{max-width:1328px;column-gap:34px}
}
