*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#21373d;background:#faf8f3;font:16px/1.7 'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(3.1rem,6vw,6.5rem)}h2{font-size:clamp(2.5rem,4vw,4.5rem)}h2 em,h1 em{font-weight:400}a{color:inherit}img{display:block;max-width:100%}.nav{height:88px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;position:relative;background:#faf8f3;z-index:4}.brand{font-family:Georgia,serif;text-decoration:none;font-size:21px;letter-spacing:.06em;line-height:1.15}.brand span{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:.38em;text-align:center}.nav nav{display:flex;align-items:center;gap:32px}.nav nav a{text-decoration:none;font-size:13px;font-weight:600}.nav-cta{padding:11px 20px;border:1px solid #b99a6e}.menu{display:none;background:none;border:0;font-size:24px}.hero{height:min(810px,85vh);min-height:590px;background:url('images/31-aerial.webp') center 48%/cover;position:relative;color:white}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,35,.72),rgba(10,30,35,.1)),linear-gradient(0deg,rgba(0,0,0,.3),transparent 35%)}.hero-content{position:absolute;left:9%;top:49%;transform:translateY(-50%);max-width:790px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.23em;margin-bottom:25px;color:#f4d5a3}.eyebrow.dark{color:#a58456}.hero p{font-size:19px;max-width:510px}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:35px}.btn{display:inline-block;border:1px solid transparent;padding:15px 27px;font:700 12px 'DM Sans',sans-serif;letter-spacing:.08em;text-decoration:none;cursor:pointer;text-align:center}.primary{background:#d7b887;color:#233439}.outline{border-color:#fff;color:#fff;background:transparent}.secondary{background:transparent;border-color:#8a7962;color:#293e42}.hero-bottom{position:absolute;bottom:24px;left:9%;right:9%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em}.section{padding:110px max(7%,calc((100vw - 1400px)/2))}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-text p{max-width:540px;color:#647075}.intro-photo img{height:570px;width:100%;object-fit:cover}.text-link{display:inline-block;text-decoration:none;font-weight:700;border-bottom:1px solid #b99a6e;padding-bottom:8px;margin-top:20px}.features{text-align:center;background:#f0ece3}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:65px}.feature-grid article{padding:20px}.feature-grid article span{font-size:40px;color:#b99a6e}.feature-grid h3{font-family:Georgia,serif;font-size:21px;font-weight:400}.feature-grid p{font-size:14px;color:#687378}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading p{max-width:330px;color:#687378}.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}.gallery-filters button{padding:9px 17px;border:1px solid #d6d2c9;background:transparent;cursor:pointer;color:#4d6064}.gallery-filters button.active{background:#21373d;color:#fff}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo-grid button{border:0;padding:0;background:none;cursor:pointer;overflow:hidden;aspect-ratio:1.4}.photo-grid button:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo-grid button:hover img{transform:scale(1.045)}.show-more{display:block;margin:35px auto 0}.weddings{display:grid;grid-template-columns:1fr 1fr;min-height:600px;background:#21373d;color:#fff}.wedding-image{background:url('images/06-terrace.webp') center/cover}.wedding-copy{padding:90px 12%;align-self:center}.wedding-copy p{color:#d1dbd9}.wedding-copy small{display:block;margin-top:20px;color:#bdc9c8}.location{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.location p{max-width:530px;color:#647075}.location img{height:370px;width:100%;object-fit:cover}.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;background:#f0ece3}.contact-intro p{color:#617175}.contact-detail{line-height:2.2;font-weight:600}.direct-note{font-size:13px}.inquiry{background:#fff;padding:40px;box-shadow:0 12px 40px #253d4210}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry label{display:block;font-size:12px;font-weight:700;margin-bottom:18px}.inquiry input:not([type=checkbox]),.inquiry select,.inquiry textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #d6d6d1;border-radius:0;background:white;font:14px 'DM Sans',sans-serif;color:#21373d}.inquiry .consent{display:flex;gap:10px;align-items:start;font-weight:400}.inquiry .consent input{margin-top:5px}.inquiry small{display:block;color:#778184;font-size:11px}.submit{width:100%}.honeypot{position:absolute;left:-99999px}footer{padding:55px 7%;background:#1b3035;color:#f8f5ef;display:flex;gap:35px;align-items:center;justify-content:space-between;flex-wrap:wrap}footer strong{display:block;font-family:Georgia,serif;letter-spacing:.12em}footer span,footer small{font-size:11px;color:#b5c1c2}footer div:nth-child(2){display:flex;gap:22px}footer a{text-decoration:none;font-size:12px}dialog{border:0;background:#10191bed;color:white;padding:50px 60px;max-width:100vw;max-height:100vh}dialog::backdrop{background:#061015ed}dialog img{max-width:85vw;max-height:80vh;object-fit:contain}dialog button{position:absolute;border:0;background:none;color:white;font-size:35px;cursor:pointer}#close-lightbox{right:15px;top:5px}#prev-photo{left:12px;top:50%}#next-photo{right:12px;top:50%}#photo-counter{text-align:center;font-size:12px;padding-top:10px}@media(max-width:850px){.nav{height:72px}.menu{display:block}.nav nav{display:none;position:absolute;top:72px;left:0;right:0;background:#faf8f3;flex-direction:column;align-items:stretch;padding:20px 7%}.nav nav.open{display:flex}.section{padding:70px 6%}.intro,.weddings,.location,.contact{grid-template-columns:1fr}.wedding-image{height:370px}.wedding-copy{padding:65px 7%}.feature-grid{grid-template-columns:repeat(2,1fr)}.intro-photo img{height:400px}.hero-content{left:6%;right:6%}.hero-bottom{left:6%;right:6%}.section-heading{display:block}}@media(max-width:560px){.hero{min-height:620px}.hero p{font-size:16px}.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-grid button:first-child{grid-column:span 2;grid-row:span 1;aspect-ratio:1.4}.feature-grid{grid-template-columns:1fr 1fr;gap:5px}.feature-grid article{padding:12px}.form-row{grid-template-columns:1fr;gap:0}.inquiry{padding:25px}.hero-bottom{font-size:8px}.section{padding:60px 6%}}