@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;600&display=swap');
:root{--paper:#fcf8f4;--pink:#f9e5e4;--pale:#f4e9e3;--rose:#995251;--ink:#443631;--muted:#75655e;--line:#dfcec5;--sage:#e9ece2;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.75}img{display:block;max-width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}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(--rose);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.04}h2{font-size:clamp(37px,4.5vw,61px);letter-spacing:-1.6px}h3{font-size:31px;letter-spacing:-.5px}p{color:var(--muted)}em{font-weight:400}section{scroll-margin-top:22px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--paper);padding:12px;z-index:100}.skip-link:focus{top:10px}.announcement{background:var(--rose);color:white;text-align:center;font-size:10px;letter-spacing:2px;padding:8px 15px}.site-header{height:103px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--pink);border-bottom:1px solid #ead5d1;position:sticky;top:0;z-index:30}.brand{width:215px;flex-shrink:0}.brand img{width:100%;height:73px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:30px;font-size:12px}.site-header nav a{position:relative}.site-header nav a:not(.nav-cta):after{content:'';position:absolute;height:1px;bottom:-5px;left:0;width:0;background:var(--rose);transition:width .25s}.site-header nav a:hover:after{width:100%}.nav-cta{border:1px solid #ae7770;padding:10px 19px}.menu-toggle{display:none;border:1px solid var(--rose);background:none;color:var(--rose);padding:7px 13px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:var(--pink)}.hero-copy{padding:76px 7% 48px 10.4%;align-self:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.1px;color:var(--rose);line-height:1.7;margin-bottom:23px}.hero h1{font-size:clamp(52px,5.1vw,79px);letter-spacing:-2.8px;max-width:630px}.hero h1 em{display:block;color:var(--rose);margin-top:10px}.lead{max-width:410px;font-size:15px;line-height:1.85;margin:27px 0 29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--rose);border:1px solid var(--rose);color:white;padding:16px 24px;font-size:12px;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#7e4141;transform:translateY(-2px)}.button span{font-size:19px;line-height:1}.quiet-link{font-size:12px;display:block;margin-top:21px}.quiet-link span{margin-left:10px}.hero-foot{font-size:10px;letter-spacing:1px;display:flex;align-items:center;gap:10px;margin-top:44px;color:#745954}.fine-star{font-size:25px}.hero-photo{position:relative;min-width:0;margin:26px 26px 26px 0}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;object-position:55% 50%;border-radius:46% 46% 0 0}.hero-photo figcaption{position:absolute;bottom:12px;right:14px;background:#fcf8f4e8;color:#63534c;padding:3px 9px;font-size:9px}.photo-seal{position:absolute;bottom:32px;left:-43px;background:var(--paper);border:1px solid #d6bdb2;width:126px;height:126px;border-radius:50%;text-align:center;padding-top:21px;font-size:10px;letter-spacing:1px;box-shadow:0 0 0 6px #fcf8f46b;transform:rotate(-9deg)}.photo-seal em{font-family:var(--serif);font-size:23px;letter-spacing:0}.photo-seal span{display:block;font-size:22px;line-height:1.4}.ribbon{display:flex;align-items:center;justify-content:space-evenly;gap:20px;padding:23px 4%;font-size:10px;letter-spacing:1.65px;border-bottom:1px solid var(--line);color:#775e53}.ribbon i{font-style:normal;color:var(--rose);font-size:21px}.section{padding:100px 6.5%;max-width:1600px;margin:auto}.intro{text-align:center;max-width:880px;padding-top:90px;padding-bottom:80px}.intro h2{max-width:650px;margin:auto}.intro>p:not(.eyebrow){max-width:610px;margin:25px auto 0}.flower-mark{display:block;color:#b77c72;font-size:36px;margin-top:26px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:48px}.section-heading>div{max-width:650px}.section-heading>p{max-width:330px;font-size:14px}.services{padding-top:20px}.service-row{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;margin-top:55px}.service-row:nth-child(odd){direction:rtl}.service-row:nth-child(odd)>*{direction:ltr}.service-row figure{position:relative;overflow:hidden}.service-row img{width:100%;aspect-ratio:1.23;transition:transform .7s}.service-row figure:hover img{transform:scale(1.035)}figcaption{font-size:10px;color:#665952}.service-row figcaption{position:absolute;bottom:12px;left:14px;background:#fcf8f4e8;padding:2px 8px}.service-number{font-family:var(--serif);font-size:26px;color:#b28b7b;display:block;margin-bottom:20px}.service-copy h3{font-size:46px;margin-bottom:20px;max-width:360px}.service-copy .eyebrow{margin-bottom:14px}.service-copy p{max-width:415px}.service-copy .details{font-size:11px;margin:22px 0;color:#856c60}.text-link{display:inline-block;font-size:12px;border:0;border-bottom:1px solid var(--rose);padding:0 0 6px;background:none;color:var(--rose);transition:color .2s}.text-link:hover{color:var(--ink)}.seasonal{display:grid;grid-template-columns:1.2fr 1fr;background:var(--sage);align-items:stretch}.seasonal figure{position:relative}.seasonal img{width:100%;height:100%;min-height:560px}.seasonal figcaption{position:absolute;bottom:13px;left:16px;background:#fcf8f4e8;padding:3px 8px}.seasonal-copy{padding:75px 13% 65px 12%;align-self:center}.seasonal-copy .eyebrow{color:#5f6e50}.seasonal-copy h2{font-size:55px;margin-bottom:25px}.seasonal-copy .text-link{margin:28px 0}.small{font-size:11px;line-height:1.7}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}.filters button{font-size:11px;padding:9px 17px;background:transparent;border:1px solid var(--line);border-radius:30px;color:var(--muted)}.filters button[aria-pressed=true]{background:var(--rose);border-color:var(--rose);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-card[hidden]{display:none}.gallery-card button{width:100%;padding:0;border:0;display:block;position:relative;overflow:hidden;background:var(--pale)}.gallery-card img{width:100%;aspect-ratio:.88;transition:transform .6s}.gallery-card button:hover img{transform:scale(1.05)}.gallery-card button span{position:absolute;bottom:12px;right:12px;border-radius:50%;height:36px;width:36px;background:var(--paper);font-size:22px}.gallery-card h3{font-size:26px;margin-top:17px}.gallery-card p{font-size:10px;margin-top:6px;letter-spacing:.4px}.gallery-note{font-size:11px;max-width:730px;margin:30px auto 0;text-align:center}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;background:#f5eae4;max-width:none}.brand-card{background:var(--pink);border:1px solid #dfc6bc;outline:1px solid #dfc6bc;outline-offset:-15px;padding:25px 10px 38px;text-align:center}.brand-card img{width:100%;max-width:410px;margin:auto;mix-blend-mode:multiply}.brand-card p{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--rose)}.about-copy{max-width:510px}.about-copy h2{margin-bottom:28px}.about-copy>p:not(.eyebrow){margin-bottom:20px}.about-copy .text-link{margin-top:8px}.process{text-align:center}.process>h2{max-width:650px;margin:auto}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:58px}.step>span{display:block;font-family:var(--serif);font-size:45px;color:#ba8879;margin-bottom:22px}.step h3{font-size:31px;margin-bottom:18px}.step p{font-size:13px;max-width:300px;margin:auto}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;border-top:1px solid var(--line)}.faq h2{font-size:48px;margin-bottom:28px}.faq details{border-bottom:1px solid var(--line);padding:21px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:14px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:22px;font-weight:400;color:var(--rose);line-height:1.1}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;padding-top:17px}.enquiry{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;max-width:none;background:var(--pink)}.enquiry-copy{padding-top:30px}.enquiry-copy h2{font-size:63px;margin-bottom:25px}.enquiry-copy>p{max-width:380px}.contact-lines{display:flex;flex-direction:column;gap:10px;margin:35px 0;font-size:13px}.contact-lines a{text-decoration:underline;text-underline-offset:5px}.contact-lines span{font-size:11px;letter-spacing:1px}.enquiry form{background:var(--paper);padding:34px}.form-top{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:25px}.form-top>span{font-size:32px;color:var(--rose)}.form-top h3{font-size:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px}label{display:block;font-size:11px;font-weight:500;color:#655047}label small{font-weight:400}label span{color:var(--rose)}input,select,textarea{width:100%;display:block;margin-top:7px;border:0;border-bottom:1px solid #ceb8ad;background:transparent;border-radius:0;color:var(--ink);font-size:12px;padding:10px 1px;min-height:43px}input::placeholder,textarea::placeholder{color:#82726b;opacity:1}textarea{resize:vertical}.wide{grid-column:1/-1}form>.button{width:100%;margin:25px 0 13px}form .small a{text-decoration:underline}#enquiry-result{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}#enquiry-result h3{font-size:27px}#enquiry-result p{font-size:12px;margin:12px 0}#enquiry-result .button{width:100%}#enquiry-result details{font-size:12px;margin-top:18px}#message-preview{font:12px/1.7 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;background:#f4ece6;padding:14px}.site-footer{background:#443631;color:#f7e7df;padding:55px 6.5% 25px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:35px;border-bottom:1px solid #6b574d}.footer-name{font-family:var(--serif);font-size:35px}.footer-top p{color:#d4bdb2;font-size:12px;margin-top:8px}.footer-links{display:flex;gap:25px;align-items:center;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#cfbdb3;margin-top:22px}.footer-bottom a{text-decoration:underline}dialog{padding:14px;border:0;max-width:min(1000px,94vw);max-height:94dvh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#30211eda;backdrop-filter:blur(5px)}dialog img{width:auto;max-height:78dvh;object-fit:contain;margin:auto}dialog>button{position:absolute;right:23px;top:23px;width:40px;height:40px;border-radius:50%;background:var(--paper);border:0;font-size:27px;z-index:1}dialog p{text-align:center;font-size:11px;margin-top:10px}.legal{max-width:850px;min-height:65vh}.legal h1{font-size:62px;margin-bottom:32px}.legal h2{font-size:30px;margin:32px 0 15px}.legal p{margin-bottom:18px}.legal a{text-decoration:underline}.mobile-enquire{display:none}.reveal{animation:appear .7s ease both}@keyframes appear{from{opacity:.4;transform:translateY(14px)}to{opacity:1;transform:none}}@supports(animation-timeline:view()){.reveal{animation-timeline:view();animation-range:entry 0% entry 20%}}
@media(min-width:1600px){.hero-copy{padding-left:max(90px,calc((100vw - 1390px)/2))}.hero{min-height:720px}.hero-photo{margin-right:6.5%}}
@media(max-width:1050px){.site-header{padding:0 4%;gap:15px}.site-header nav{gap:18px}.brand{width:180px}.hero-copy{padding:55px 9%}.hero h1{font-size:61px}.section{padding:75px 5%}.hero-photo{margin-right:20px}.hero{min-height:610px}.seasonal-copy{padding:50px 9%}.seasonal-copy h2{font-size:45px}.seasonal img{min-height:480px}.enquiry{gap:5%}.enquiry form{padding:26px}.section-heading{gap:40px}.service-copy h3{font-size:40px}}
@media(max-width:760px){html{scroll-padding-top:85px}.announcement{font-size:8px;letter-spacing:1.1px;padding:6px 12px}.site-header{height:79px;padding:0 6%}.brand{width:175px}.brand img{height:62px}.menu-toggle{display:block;font-size:11px}.site-header nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--pink);padding:20px 6% 28px;border-bottom:1px solid var(--line);box-shadow:0 8px 12px #4436310d}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:17px}.nav-cta{text-align:center}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:44px 7% 32px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:18px}.hero h1{font-size:clamp(46px,10.8vw,71px);letter-spacing:-1.8px;max-width:580px}.hero h1 em{margin-top:7px}.lead{font-size:13px;margin:22px 0 25px;max-width:430px}.button{padding:14px 18px;font-size:11px}.quiet-link{display:inline-block;margin:0 0 0 15px;font-size:10px}.hero-foot{margin-top:25px;font-size:9px}.hero-photo{height:400px;margin:0 7% 30px}.hero-photo>img{border-radius:44% 44% 0 0;object-position:50% 50%}.photo-seal{left:auto;right:-12px;bottom:23px;width:100px;height:100px;padding-top:13px;font-size:9px}.photo-seal em{font-size:19px}.photo-seal span{font-size:17px}.hero-photo figcaption{left:10px;right:auto;bottom:9px;font-size:8px}.ribbon{gap:12px;flex-wrap:wrap;padding:17px 6%;font-size:8px;letter-spacing:1px}.ribbon i{font-size:14px}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.section{padding:63px 7%}h2{font-size:43px;letter-spacing:-1.2px}.intro{padding-top:62px;padding-bottom:35px}.intro>p:not(.eyebrow){font-size:13px;margin-top:20px}.flower-mark{font-size:29px;margin-top:22px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{max-width:440px;margin-top:20px;font-size:13px}.services{padding-top:25px}.service-row,.service-row:nth-child(odd){display:flex;flex-direction:column;direction:ltr;gap:26px;align-items:stretch;margin-top:37px}.service-row img{aspect-ratio:1.18}.service-number{margin-bottom:12px;font-size:22px}.service-copy h3{font-size:38px;max-width:none;margin-bottom:15px}.service-copy>p{font-size:13px}.service-copy .details{font-size:10px;margin:17px 0}.seasonal{grid-template-columns:1fr}.seasonal img{min-height:0;height:350px}.seasonal-copy{padding:42px 7% 46px}.seasonal-copy h2{font-size:45px;max-width:450px}.seasonal-copy>p:not(.eyebrow):not(.small){font-size:13px}.gallery-grid{grid-template-columns:1fr 1fr;gap:25px 16px}.gallery-card h3{font-size:25px}.gallery-card p{font-size:9px}.gallery-card img{aspect-ratio:.8}.gallery-grid .gallery-card:first-child{grid-column:1/-1}.gallery-grid .gallery-card:first-child img{aspect-ratio:1.2}.filters{gap:7px;margin-bottom:22px}.filters button{font-size:10px;padding:7px 11px}.gallery-note{text-align:left;font-size:10px;margin-top:25px}.about{grid-template-columns:1fr;gap:40px}.brand-card{max-width:440px;width:100%;margin:auto;padding-bottom:28px}.brand-card img{max-width:330px}.brand-card p{font-size:22px}.about-copy>p{font-size:13px}.steps{grid-template-columns:1fr;gap:33px;margin-top:35px;text-align:left}.step{position:relative;padding-left:56px}.step>span{position:absolute;left:0;top:-4px;font-size:36px}.step h3{font-size:29px;margin-bottom:10px}.step p{max-width:none}.process{text-align:left}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:42px}.faq summary{font-size:13px}.enquiry{grid-template-columns:1fr;gap:32px}.enquiry-copy{padding-top:0}.enquiry-copy h2{font-size:49px}.enquiry-copy>p{font-size:13px}.contact-lines{margin:25px 0}.enquiry form{padding:25px 21px}.form-top h3{font-size:27px}.form-grid{gap:18px 14px}input,select,textarea{font-size:16px}input::placeholder,textarea::placeholder{font-size:12px}.footer-top{display:block}.footer-links{margin-top:25px;gap:20px;flex-wrap:wrap}.site-footer{padding:40px 7% 85px}.footer-bottom{flex-direction:column;gap:7px}.mobile-enquire{position:fixed;bottom:15px;right:16px;z-index:25;display:block;background:var(--rose);color:white;border:1px solid #efc5bd;border-radius:30px;padding:11px 18px;font-size:11px;box-shadow:0 5px 20px #44363130}.legal h1{font-size:45px}.legal h2{font-size:28px}.legal p{font-size:13px}}
@media(max-width:390px){.quiet-link{display:block;margin:17px 0 0}.hero-photo{height:330px}.hero-copy{padding-top:34px}.ribbon{font-size:7px;gap:8px}.form-grid{grid-template-columns:1fr}.form-top h3{font-size:24px}.enquiry form{padding:22px 17px}.gallery-card h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

@media(min-width:761px){.gallery-grid{grid-template-columns:repeat(4,1fr)}.gallery-card h3{font-size:25px}}
@media(max-width:760px){.gallery-grid .gallery-card:first-child{grid-column:auto}.gallery-grid .gallery-card:first-child img{aspect-ratio:.8}}
