@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&display=swap');:root{--paper:#f7f5ed;--ink:#34443a;--accent:#536c50;--line:#cbd2c2;--sage:#a8b59a;--sage-light:#e7ecdf;--sage-deep:#536c50}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-underline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 4%;border-bottom:1px solid var(--line);gap:20px;background:var(--paper)}.brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;line-height:1.05;text-decoration:none}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:8px}nav{display:flex;gap:24px;align-items:center}nav a{font-size:12px;text-decoration:none}nav a.active{border-bottom:1px solid}.button{display:inline-block;background:var(--ink);color:white;text-decoration:none;padding:13px 25px;font-size:12px;letter-spacing:.6px;border:1px solid var(--ink);cursor:pointer}.button.light{background:var(--paper);color:var(--ink)}.textlink{font-size:13px}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.04;margin:18px 0 25px}h1{font-size:clamp(48px,6.7vw,100px)}h2{font-size:clamp(37px,4vw,65px)}h3{font-size:33px}em{font-weight:400;color:var(--accent)}p{max-width:640px}.eyebrow{font-size:10px;letter-spacing:2.3px;text-transform:uppercase}.draft{background:#e7ecdf;padding:7px 4%;font-size:11px;text-align:center}.draft a{margin-left:10px}.hero{min-height:690px;height:85vh;position:relative;background:#536c50;display:flex;align-items:center;color:white;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.68}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10251c80,transparent)}.hero .copy{position:relative;z-index:1;margin:0 7%;max-width:790px}.hero h1 em{color:#ece3cf}.hero .button{background:var(--paper);color:var(--ink);border:0}.hero p{max-width:440px}.strip{padding:23px 5%;display:flex;justify-content:space-around;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1.3px}.wrap{padding:85px 7%}.center{text-align:center}.center p{margin:15px auto 30px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:85px 8%;align-items:center}.split>img{width:100%;height:620px;object-fit:cover}.split:nth-of-type(even){background:#e7ecdf}.split div{max-width:530px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card img{width:100%;height:390px;object-fit:cover}.card h3{font-size:33px;margin-bottom:10px}.card p{font-size:14px}.quote{padding:80px 12%;text-align:center;background:#d8e0cd}.quote blockquote{font-family:'Cormorant Garamond',Georgia,serif;font-size:35px;line-height:1.3;max-width:900px;margin:0 auto 25px}.cta{background:#536c50;color:var(--paper);text-align:center;padding:85px 7%}.cta p{margin:0 auto 30px}.cta em{color:#eef2e7}.cta .button{background:var(--paper);color:var(--ink)}footer{padding:45px 7%;display:flex;justify-content:space-between;gap:30px;font-size:12px}footer .links{display:flex;flex-wrap:wrap;gap:18px;max-width:600px}.intro{text-align:center;padding:80px 7% 55px}.intro p{margin:auto}.wide{display:block;width:86%;height:520px;object-fit:cover;margin:0 auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px}.panel{padding:35px;border:1px solid var(--line)}.note{background:#e7ecdf;border-left:3px solid var(--accent);padding:18px 24px;font-size:13px}.price{font-family:'Cormorant Garamond',Georgia,serif;font-size:49px}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.packages .panel{position:relative}.packages ul{padding-left:18px;font-size:14px}.packages h3{margin-bottom:10px}.feature{background:#d8e0cd}.tag{font-size:10px;letter-spacing:1px;background:#cad5bd;padding:5px 10px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps b{font-size:11px;letter-spacing:2px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:19px;cursor:pointer}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}th{background:#e7ecdf}.tablewrap{overflow:auto}.filters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid var(--line);padding:10px 20px;background:none;color:var(--ink);cursor:pointer}.filters button.on{background:var(--ink);color:white}.supplier{border-top:1px solid var(--line);padding:25px 0}.supplier .tag{display:inline-block;margin-bottom:10px}.supplier[hidden]{display:none}.form{max-width:700px;margin:auto}label{display:block;margin:20px 0 5px;font-size:13px}input,textarea,select{padding:14px;width:100%;border:1px solid #b9c0b6;background:#faf8f3;font:inherit;color:var(--ink)}textarea{min-height:150px}.form button{margin-top:24px}.small{font-size:12px}.film{position:relative}.film:after{content:'PHOTO + FILM';position:absolute;left:30px;bottom:25px;color:white;letter-spacing:5px;font-size:13px}.film img{width:100%;height:530px;object-fit:cover;filter:brightness(.75)}.owner{background:#e7ecdf}.menu-toggle{display:none}@media(max-width:900px){header{flex-wrap:wrap}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:10px}nav{display:none;flex-direction:column;align-items:start;width:100%;gap:15px}nav.open{display:flex}.hero{min-height:600px;height:78vh}.hero .copy{margin:0 7%}.split,.grid2{grid-template-columns:1fr}.split{gap:30px}.split>img{height:470px}.cards,.packages,.steps{grid-template-columns:1fr}.cards .card img{height:420px}.strip{gap:20px;flex-wrap:wrap}footer{flex-direction:column}.wide{height:350px}.wrap{padding:55px 6%}h1{font-size:60px}.intro{padding-top:55px}.brand{font-size:24px}.film img{height:350px}}
/* Sage brand palette: light sage surfaces with deep sage controls. */
header{background:#e7ecdf}.button,.filters button.on{background:var(--sage-deep);border-color:var(--sage-deep)}.button.light{background:var(--paper);color:var(--ink)}.cta{background:var(--sage);color:var(--ink)}.cta em{color:#34443a}.cta .button{background:var(--sage-deep);color:white}.hero .button{background:var(--paper);color:var(--ink)}

/* Editorial sage direction — October revision */
:root{--paper:#faf8f2;--ink:#303c32;--accent:#536c50;--sage:#a8b59a;--sage-light:#e7ecdf;--sage-deep:#536c50}
header{padding:28px 4%;background:var(--sage);border-bottom:0}.brand{font-size:38px;letter-spacing:-1.5px}.brand small{letter-spacing:3px;margin-top:10px}nav{gap:22px}nav a{text-transform:uppercase;font-size:10px;letter-spacing:1.2px}nav .button{background:transparent;color:var(--ink);border-color:var(--ink)}
h1,h2,h3{letter-spacing:-.035em}h1{font-size:clamp(58px,7.2vw,110px)}h2{font-size:clamp(44px,4.7vw,76px)}h3{font-size:38px}em{font-style:italic}.eyebrow{font-size:10px;letter-spacing:2.6px}.button{padding:15px 27px;letter-spacing:1.5px;text-transform:uppercase}.textlink{letter-spacing:1px}.button:hover{filter:brightness(.92)}a:focus-visible,button:focus-visible{outline:3px solid #816545;outline-offset:5px}
.home .hero{display:grid;grid-template-columns:43% 57%;min-height:690px;height:84vh;margin:28px 3% 0;background:var(--sage-light);color:var(--ink);overflow:hidden}.home .hero>img{position:relative;grid-column:2;grid-row:1;width:100%;height:100%;opacity:1;object-fit:cover;object-position:center 42%}.home .hero:after{display:none}.home .hero .copy{grid-column:1;grid-row:1;margin:0;padding:45px 9%;max-width:none}.home .hero h1{font-size:clamp(62px,6.8vw,106px);line-height:.92;margin:30px 0}.home .hero h1 em{color:var(--accent)}.home .hero p{font-size:14px;max-width:335px}.home .hero .button{background:var(--sage-deep);color:white;margin-top:16px}.strip{padding:28px 5%;letter-spacing:3px;font-size:10px}.split{padding:110px 9%;gap:10%}.split>img{height:650px}.home .split:first-of-type>img{width:90%;box-shadow:26px 26px 0 #d8e0cd}.split:nth-of-type(even){background:var(--paper)}.wedding-stories{background:var(--sage-light);padding:95px 5% 110px}.wedding-stories>h2{max-width:650px}.cards{gap:35px}.wedding-stories .card:nth-child(2){padding-top:90px}.card img{height:470px}.card a{font-size:11px;letter-spacing:1px;text-transform:uppercase}.quote{padding:100px 14%;background:var(--sage)}.quote blockquote{font-size:clamp(35px,4vw,58px);line-height:1.08;letter-spacing:-1px;margin:35px auto}.cta{background:var(--sage-deep);color:var(--paper);padding:105px 7%}.cta em{color:#e1e7d7}.cta .button{background:var(--paper);color:var(--ink)}.intro{padding:90px 8% 65px;background:var(--sage-light);margin:25px 3% 45px}.intro h1{max-width:1000px;margin:20px auto 30px}.intro p{max-width:620px}.panel{background:#fffdf8}.feature{background:#d8e0cd}.wide{height:620px}.note{border-left-color:var(--sage-deep)}footer{padding:65px 6%}.draft{background:var(--paper);color:#56604f}
@media(max-width:900px){header{padding:24px 6%}.brand{font-size:31px}.home .hero{height:auto;min-height:0;grid-template-columns:1fr;margin:18px 4% 0}.home .hero>img{grid-column:1;grid-row:1;height:400px;object-position:center 40%}.home .hero .copy{grid-column:1;grid-row:2;padding:40px 8% 45px}.home .hero h1{font-size:70px}.home .hero h1 br:last-of-type{display:none}.split{padding:65px 7%}.split>img{height:490px}.wedding-stories .card:nth-child(2){padding-top:0}.card img{height:440px}.wide{height:400px}.intro{padding:55px 7%;margin:18px 4% 30px}.intro h1{font-size:60px}.quote{padding:65px 8%}.cta{padding:75px 7%}nav .button{padding:12px 20px}}
@media(prefers-reduced-motion:no-preference){.button,img{transition:filter .2s ease}}

.home .hero>img{object-position:66% center}
@media(min-width:901px){.home .hero{height:76vh;min-height:570px}.home .hero h1{font-size:clamp(60px,6.4vw,98px)}}

@media(max-width:480px){.home .hero h1{font-size:62px}.home .hero h1 br:last-of-type{display:block}}

.reviews{background:var(--sage-light)}.review-scores{display:flex;gap:55px;margin:30px 0 45px}.review-scores a{text-decoration:none}.review-scores strong{display:block;font:40px 'Cormorant Garamond',Georgia,serif}.review-scores span{font-size:12px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-card{padding:30px;background:var(--paper);border-top:2px solid var(--sage-deep)}.review-card blockquote{font:32px/1.2 'Cormorant Garamond',Georgia,serif;margin:30px 0;min-height:120px}.review-card p{font-size:13px;font-weight:600}.review-card a{font-size:12px}.questions{display:grid;grid-template-columns:1fr 1.25fr;gap:8%;align-items:start}.questions details:first-child{border-top:1px solid var(--line)}.questions summary{font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:20px}.questions summary::after{content:'+';font-size:24px;color:var(--accent)}.questions details[open] summary::after{content:'−'}.questions details p{font-size:14px;padding-right:25px}.about-personal{background:#d8e0cd}.about-personal>h2{margin-bottom:55px}@media(max-width:900px){.review-grid,.questions{grid-template-columns:1fr}.review-scores{gap:28px;flex-wrap:wrap}.review-scores strong{font-size:34px}.review-card blockquote{min-height:0}.questions{gap:25px}}

.recent-ribbon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:65px 5%;align-items:center;background:var(--sage-light)}.recent-ribbon img{width:100%;height:430px;object-fit:cover}.recent-ribbon div{text-align:center}.recent-ribbon h2{font-size:45px}.home .hero>img{object-position:51% center}@media(max-width:900px){.recent-ribbon{grid-template-columns:1fr}.recent-ribbon img{height:450px}.home .hero>img{object-position:center}}

.included{padding:65px 0}.enquiry-steps{margin-bottom:70px}.packages .panel{display:flex;flex-direction:column}.packages .panel .button{margin-top:auto}.packages .panel p{font-size:14px}

.supplier-website{font-weight:600}.social-contact{max-width:700px;margin:55px auto 0;padding-top:30px;border-top:1px solid var(--line)}

/* Keep Cindy’s selected bouquet, scenery and reflected light within the frame. */
.wedding-stories .card img,.selected-weddings .card img{height:420px;object-fit:contain;background:#e7ecdf}
@media(max-width:700px){.wedding-stories .card img,.selected-weddings .card img{height:390px}}

#four-paws>img{height:auto;max-height:650px;object-fit:contain}
/* Portraits and pre-wedding stories: preserve each photograph's composition. */
.gallery-wrap{padding:25px 4% 85px}.portrait-grid{columns:3;column-gap:22px}.portrait-grid figure{margin:0 0 28px;break-inside:avoid}.portrait-grid figure[hidden]{display:none}.photo-open{border:0;background:none;padding:0;display:block;width:100%;cursor:zoom-in}.photo-open img{width:100%;height:auto;display:block}.portrait-grid figcaption{font-size:11px;letter-spacing:.8px;padding:12px 0;border-bottom:1px solid var(--line)}.photo-dialog{border:0;padding:60px 65px 20px;max-width:96vw;max-height:96vh;background:var(--paper);color:var(--ink);overflow:auto}.photo-dialog::backdrop{background:#162219ed}.photo-dialog img{display:block;max-width:80vw;max-height:73vh;object-fit:contain;margin:auto}.photo-dialog button{position:absolute;border:1px solid var(--line);padding:10px 14px;background:var(--paper);color:var(--ink);cursor:pointer}.photo-close{top:12px;right:12px}.photo-prev{left:10px;top:48%}.photo-next{right:10px;top:48%}.photo-dialog p{text-align:center;margin:12px auto 0;font-size:12px}.couples-intro>img{object-fit:contain;height:auto;max-height:700px}nav{gap:15px}nav a{letter-spacing:.7px}nav .button{padding:12px 17px}@media(max-width:1150px){header{flex-wrap:wrap}nav{flex-wrap:wrap}}@media(max-width:900px){.portrait-grid{columns:2;column-gap:12px}.gallery-wrap{padding:20px 5% 55px}.portrait-grid figcaption{font-size:10px}.photo-dialog{padding:60px 35px 20px}.photo-dialog img{max-width:78vw}.photo-dialog button{padding:7px}.photo-prev{left:2px}.photo-next{right:2px}}@media(max-width:520px){.portrait-grid{columns:1}}
.gallery-intro{padding:45px 7% 40px!important;min-height:0!important}.gallery-intro h1{font-size:clamp(50px,6vw,88px)}
.film-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:40px 0}.film-options .panel{display:flex;flex-direction:column}.film-options h3{font-size:37px}.film-options ul{padding-left:18px;font-size:14px}.film-options .textlink{margin-top:auto}.film-options .price{font-size:49px}@media(max-width:1000px){.film-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.film-options{grid-template-columns:1fr}}
.portfolio .gallery-intro{background:transparent;margin:0;padding:30px 6% 10px!important}.portfolio .gallery-intro h1{font-size:clamp(43px,4.5vw,65px);margin:8px 0 15px}.portfolio .gallery-wrap{padding-top:20px}.portfolio .portrait-grid figure{margin-bottom:20px}

/* Venue features and dog-friendly celebrations */
.supplier-photo{display:block;width:100%;height:330px;object-fit:cover;object-position:center 30%;margin:18px 0 12px}.venue-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}.venue-story-grid .card img{width:100%;height:400px;object-fit:cover;object-position:center 30%}.dog-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.dog-photo-grid figure{margin:0}.dog-photo-grid img{width:100%;height:390px;object-fit:contain;background:#e7e9df}.dog-photo-grid figcaption{padding:12px 0;font-size:13px}.dog-celebrations>p{margin-top:32px}@media(max-width:900px){.venue-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dog-photo-grid{grid-template-columns:1fr}.dog-photo-grid img{height:auto}}@media(max-width:560px){.venue-story-grid{grid-template-columns:1fr}.supplier-photo{height:300px}}

/* Consistent portrait frames for featured celebrations and venue photographs. */
.wedding-stories .card img,.selected-weddings .card img,.venue-story-grid .card img,.supplier-photo{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center}

.roman-photo-grid,.party-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}.roman-photo-grid img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}.party-photo-grid img{display:block;width:100%;height:auto}.roman-wedding>p{max-width:780px}@media(max-width:700px){.roman-photo-grid,.party-photo-grid{grid-template-columns:1fr}}

/* The requested dog photograph is landscape: show the whole moment in its card. */
.venue-story-grid img[src$="megan-samuel-dog-arms.jpg"],.supplier-photo[src$="megan-samuel-dog-arms.jpg"]{object-fit:contain;background:#eeeae5}

/* Client words alongside the wedding they describe. */
.review-grid{grid-template-columns:1fr;gap:30px}.review-card.review-with-photo{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.4fr);padding:0;overflow:hidden;align-items:stretch}.review-photo{display:block;min-height:360px}.review-photo img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover;object-position:center}.review-photo img[src$="megan-samuel-dog-arms.jpg"]{object-fit:contain;background:#e8e9df}.review-copy{padding:38px}.review-copy blockquote{min-height:0;margin:25px 0}.review-copy .small{font-weight:400}@media(max-width:620px){.review-card.review-with-photo{grid-template-columns:1fr}.review-photo{min-height:0}.review-photo img{height:360px;max-height:none}.review-copy{padding:28px}.review-copy blockquote{font-size:30px}}

.review-detail{margin:0 0 25px}.review-detail-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-deep)}.review-copy .review-detail p{font-size:15px;line-height:1.75;font-weight:400;margin:10px 0 0}.review-card.review-with-photo .review-photo img{max-height:none}.review-copy blockquote{font-size:30px}@media(max-width:620px){.review-copy blockquote{font-size:28px}}

.home-lake-feature{padding:55px 7% 0}.home-lake-feature figure{margin:0}.home-lake-feature img{display:block;width:100%;height:auto}.home-lake-feature figcaption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 0 0}@media(max-width:620px){.home-lake-feature{padding:28px 4% 0}.home-lake-feature figcaption{align-items:flex-start;flex-direction:column;gap:8px}}

/* Let the Lake Bled opening photograph keep its landscape composition. */
.hero.boat-hero{display:grid;grid-template-columns:1fr;height:auto;min-height:0;position:relative;background:var(--sage-light)}.hero.boat-hero>img{grid-column:1;grid-row:1;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center}.hero.boat-hero .copy{grid-column:1;grid-row:1;align-self:center;z-index:1;width:38%;margin:0;padding:35px 12% 35px 12%;box-sizing:content-box;max-width:390px;color:white;padding-left:5%;padding-right:0}.hero.boat-hero:after{display:block;content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,27,21,.65),rgba(12,27,21,.18) 38%,transparent 55%);pointer-events:none}.hero.boat-hero h1{font-size:clamp(50px,5.4vw,86px)}.hero.boat-hero h1 em{color:#ece3cf}.hero.boat-hero .button{background:var(--paper);color:var(--ink)}@media(max-width:1000px){.hero.boat-hero .copy{grid-row:2;width:auto;max-width:none;box-sizing:border-box;padding:34px 8% 40px;color:var(--ink)}.hero.boat-hero:after{display:none}.hero.boat-hero h1{font-size:62px}.hero.boat-hero h1 em{color:var(--accent)}.hero.boat-hero .button{background:var(--sage-deep);color:white}.hero.boat-hero .copy p{max-width:550px}}
