:root{--paper:#f5f0e9;--ink:#29241f;--muted:#6c625a;--rose:#e9dcd5;--wine:#5d182d;--line:#d5c9bd;--serif:'The Seasons',Georgia,'Times New Roman',serif;--script:'Brittany','Brush Script MT',cursive}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.8 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}figure{margin:0}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:6px}.skip{position:absolute;top:-100px;padding:10px;background:white;z-index:20}.skip:focus{top:0}.header{display:flex;align-items:center;justify-content:space-between;padding:29px 5.5%;border-bottom:1px solid var(--line);gap:35px}.logo{width:255px;height:auto}.header nav{display:flex;gap:32px;font-size:12px;align-items:center}.nav-enquire{border-bottom:1px solid var(--ink);padding:8px 0}.nav-enquire span{padding-left:20px}.hero{min-height:730px;display:grid;grid-template-columns:1.12fr 1fr;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero-copy{padding:78px 6% 45px 10%;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:2.3px;font-weight:500;margin:0 0 25px}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.07;margin:0;letter-spacing:-1.6px}h1{font-size:clamp(48px,5.3vw,82px);z-index:1}em{font-weight:400;font-style:italic}h1 em{display:block;font-size:.85em;color:var(--wine);margin-top:8px}.hero-sub{margin:28px 0 30px;font-size:15px}.button{display:inline-flex;gap:55px;align-items:center;background:var(--ink);color:var(--paper);padding:16px 23px;font-size:12px}.button:hover{background:var(--wine)}.hero-foot{margin-top:65px;font-size:8px;letter-spacing:1.7px}.hero-image{position:relative;margin:28px 28px 28px 0;min-height:660px}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 55%}.hero-image figcaption{position:absolute;bottom:22px;left:24px;color:white;font-size:9px;letter-spacing:2px}.hero-mark{position:absolute;right:0;top:0;line-height:.8;font:italic 170px var(--serif);color:#fff5;pointer-events:none;opacity:.4}.section{padding:100px 8%}h2{font-size:clamp(36px,4vw,58px)}.intro{max-width:1450px;margin:auto}.intro h2{max-width:900px}.intro-bottom{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;margin-top:45px}.intro-bottom p:first-child{margin-top:0}.intro-bottom p{color:var(--muted);max-width:590px}.small-script{font:italic 35px var(--serif);color:var(--wine);padding-top:35px}.offering{background:#eee6dd}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:flex-end;margin-bottom:52px}.section-heading>p{font-size:12px;color:var(--muted);line-height:1.9}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.services article{border-top:1px solid #afa094;padding-top:20px;display:flex;flex-direction:column;align-items:flex-start}.number{font:italic 21px var(--serif);color:var(--wine);margin-bottom:28px}h3{font-size:31px;letter-spacing:-.6px}.services p{font-size:13px;color:#635950}.services .details{font-size:11px;line-height:1.9;color:#78675a;margin:10px 0 25px}.text-link{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:6px;margin-top:auto;padding-top:18px}.text-link span{margin-left:12px}details{font-size:12px;margin-bottom:20px;width:100%}summary{cursor:pointer}details p{padding:5px 10px}.portfolio{padding-bottom:80px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.gallery figure:nth-child(even){padding-top:65px}.photo{border:0;padding:0;display:block;width:100%;cursor:zoom-in;overflow:hidden;background:#e6dcd3}.photo img{width:100%;height:390px;object-fit:cover;object-position:center 65%;transition:transform .5s}.photo:hover img{transform:scale(1.035)}figcaption{font-size:10px;line-height:1.6}.gallery figcaption{display:flex;justify-content:space-between;gap:8px;margin-top:14px}.more-work{margin:40px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.more-work>summary{list-style:none;display:flex;justify-content:space-between}.more-work>summary::-webkit-details-marker{display:none}.extra-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:650px;margin:30px auto}.extra-gallery figcaption{padding-top:10px}.testimonial{text-align:center;padding:80px max(10%,24px);background:var(--rose);position:relative}.quote-mark{display:block;font:70px/.8 var(--serif);color:var(--wine);margin-top:45px}.testimonial blockquote{max-width:780px;margin:15px auto 35px;font:24px/1.55 var(--serif)}.testimonial blockquote p{margin:0 0 15px}.founder{display:grid;grid-template-columns:.8fr 1fr;gap:11%;align-items:center}.founder figure{max-width:450px;position:relative}.founder img{width:100%;max-height:620px;object-fit:cover;object-position:top}.founder h2{margin-bottom:30px}.founder p:not(.eyebrow):not(.signature){font-size:13px;color:var(--muted);max-width:570px}.signature{font:italic 34px var(--serif);margin-bottom:8px}.enquire{background:var(--wine);color:var(--paper);text-align:center}.enquire h2{font-size:clamp(45px,5vw,75px)}.enquire>p:not(.eyebrow){font-size:13px;line-height:2;color:#e9d8d9;margin:25px 0}.light{background:var(--paper);color:var(--wine);margin:10px auto 15px}.light:hover{background:#e9d8d9}.email{display:block;font-size:13px;text-decoration:underline;text-underline-offset:5px}.enquire .location{font-size:10px!important;letter-spacing:.7px;margin-bottom:0!important}.solidarity{display:flex;align-items:center;gap:45px;padding-top:55px;padding-bottom:55px;max-width:1150px;margin:auto}.solidarity img{width:130px;height:130px;object-fit:cover;flex-shrink:0}.solidarity h2{font-size:31px;letter-spacing:-.5px}.solidarity .eyebrow{margin-bottom:12px}.solidarity p:last-child{font-size:12px;color:var(--muted);max-width:650px}.solidarity h2 em{white-space:nowrap}footer{padding:30px 5.5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:9px;color:var(--muted)}footer img{width:190px;height:auto}footer a:last-child span{margin-left:20px}dialog{border:0;padding:45px 16px 16px;background:#171412;color:white;max-width:95vw;max-height:95dvh}dialog::backdrop{background:#171412ed}dialog img{max-width:90vw;max-height:82dvh;object-fit:contain;margin:auto}#close-photo{position:absolute;right:16px;top:8px;border:0;background:none;color:white;cursor:pointer;font-size:12px}#close-photo span{font-size:20px;padding-left:15px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:850px}}@media(max-width:1000px){.header{padding:23px 5%;gap:20px}.logo{width:210px}.header nav{gap:20px}.hero{min-height:650px}.hero-image{min-height:590px}.hero-copy{padding-left:9%}.hero-foot{letter-spacing:1px;max-width:220px}.section{padding:75px 6%}.gallery{grid-template-columns:repeat(2,1fr);gap:28px}.gallery figure:nth-child(even){padding-top:45px}.photo img{height:450px}.services{gap:22px}h3{font-size:26px}.founder{gap:7%}.solidarity{padding-top:45px;padding-bottom:45px}footer>a:last-child{max-width:180px}}
@media(max-width:640px){body{font-size:14px}.header{flex-direction:column;gap:20px;padding:23px 20px 17px}.logo{width:235px}.header nav{width:100%;justify-content:space-between;gap:10px;font-size:10px}.nav-enquire{padding:0}.nav-enquire span{padding-left:6px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:52px 7% 28px}h1{font-size:clamp(43px,10.5vw,65px)}.hero-sub{font-size:13px;margin:22px 0}.hero-foot{margin:32px 0 0;font-size:8px;max-width:none}.hero-image{margin:0 6% 24px;min-height:400px;height:116vw;max-height:580px}.hero-image img{object-position:center 59%}.hero-mark{display:none}.eyebrow{font-size:9px;letter-spacing:1.8px}.section{padding:58px 7%}h2{font-size:38px;letter-spacing:-1px}.intro-bottom{grid-template-columns:1fr;gap:20px;margin-top:25px}.small-script{padding-top:0;font-size:28px}.intro-bottom>span{order:2}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin:20px 0 0;font-size:12px}.services{grid-template-columns:1fr;gap:37px}.services article{padding-top:14px}.number{margin-bottom:15px}.services p{max-width:500px}.services .details{margin-bottom:12px}h3{font-size:32px}.services details{margin-bottom:5px}.gallery{gap:20px 14px}.gallery figure:nth-child(even){padding-top:32px}.photo img{height:65vw;max-height:330px}.gallery figcaption{font-size:9px;display:block}.gallery figcaption>span:last-child{display:none}.extra-gallery{gap:15px}.extra-gallery .photo img{height:65vw}.testimonial{padding:55px 8%}.testimonial blockquote{font-size:21px;line-height:1.5}.founder{grid-template-columns:1fr;gap:35px}.founder figure{max-width:320px;margin:0 auto;width:100%}.founder img{max-height:440px;object-fit:cover;object-position:top}.founder .eyebrow{margin-bottom:20px}.enquire h2{font-size:50px}.enquire p br{display:none}.solidarity{gap:23px;align-items:flex-start}.solidarity img{width:70px;height:70px}.solidarity h2{font-size:26px}.solidarity h2 em{display:block;margin-top:4px}.solidarity p:last-child{font-size:11px}footer{flex-wrap:wrap;padding:25px 7%;gap:20px}footer img{width:160px}footer>a:last-child{max-width:none;width:100%}.button{min-height:48px}dialog{width:95vw}#close-photo{min-height:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:65px;max-width:920px;margin:50px auto 35px;text-align:left}.contact-options article{border-top:1px solid #ab7d88;padding-top:28px;display:flex;flex-direction:column;align-items:flex-start}.contact-options h3{font-size:32px}.contact-options article>p:not(.eyebrow){font-size:13px;color:#e9d8d9;margin:18px 0 24px;line-height:1.9}.contact-options .eyebrow{margin-bottom:18px;color:#ead6d9}.contact-options .button{margin: auto 0 15px;gap:30px}.contact-address{font-size:12px;text-decoration:underline;text-underline-offset:5px}.enquire .contact-options+p.location{margin-top:45px}@media(max-width:640px){.contact-options{grid-template-columns:1fr;gap:38px;margin-top:35px}.contact-options h3{font-size:31px}.contact-options .button{margin-top:0}}

/* Editorial refinements */
.intro-bottom{align-items:center;grid-template-columns:.85fr 1.15fr;gap:10%;margin-top:50px}.house-photo{max-width:430px}.house-photo img{width:100%;height:390px;object-fit:cover}.house-photo figcaption{font-size:8px;letter-spacing:1.5px;margin-top:12px}.house-copy{max-width:540px}.bloom-script{width:230px;height:auto;margin-top:38px}.testimonial{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:7%;text-align:left;padding:75px 8%}.client-photo{max-width:370px;margin:auto}.client-photo img{width:100%;height:auto}.testimonial blockquote{font-size:22px;margin-top:0}.testimonial .quote-mark{margin-top:20px}.client-note>.eyebrow:last-child{margin-bottom:0}.founder img{max-height:none;height:auto;aspect-ratio:800/670;object-fit:contain}.gallery{grid-template-columns:repeat(3,1fr)}.gallery figure:nth-child(even){padding-top:0}.gallery figure:nth-child(3n+2){padding-top:45px}.gallery .photo img{height:420px}.gallery figure:nth-child(4),.gallery figure:nth-child(5){margin-top:15px}@media(max-width:1000px){.gallery{grid-template-columns:repeat(2,1fr)}.gallery figure:nth-child(3n+2){padding-top:0}.gallery figure:nth-child(even){padding-top:35px}.gallery .photo img{height:420px}.testimonial{gap:5%;padding:60px 6%}.testimonial blockquote{font-size:21px}.house-photo img{height:360px}}@media(max-width:640px){.intro-bottom{grid-template-columns:1fr;gap:30px}.house-photo{max-width:none}.house-photo img{height:100vw;max-height:440px}.bloom-script{width:210px;margin-top:27px}.testimonial{grid-template-columns:1fr;padding:55px 8%;gap:32px}.client-photo{max-width:290px;width:100%}.testimonial blockquote{font-size:21px}.gallery .photo img{height:65vw;max-height:330px}.gallery figure:nth-child(4),.gallery figure:nth-child(5){margin-top:0}.founder img{max-height:none;width:100%;aspect-ratio:800/670}.founder figure{max-width:none}}

/* Preserve the client-supplied gallery crops in full. */
.gallery .photo img[src$="-crop.webp"]{height:auto;max-height:none;object-fit:contain;object-position:center}.gallery .photo:has(img[src$="-crop.webp"]):hover img{transform:none}

.gallery .photo img[src$="sympathy-basket-isolated.webp"]{height:auto;max-height:none;object-fit:contain;padding:12px;background:var(--paper)}.gallery .photo:has(img[src$="sympathy-basket-isolated.webp"]):hover img{transform:none}.gallery .photo img[src$="ivory-rose-bouquet.webp"]{height:auto;max-height:none;object-fit:contain}.extra-gallery .photo img[src$="red-rose-bouquet.webp"],.extra-gallery .photo img[src$="rose-brand-detail.webp"]{height:auto;max-height:none;object-fit:contain}#lightbox:has(img[src$="sympathy-basket-isolated.webp"]){background:var(--paper)}#lightbox:has(img[src$="sympathy-basket-isolated.webp"]) #close-photo{color:var(--ink)}

/* Selected photographs retain the supplied framing. */
.house-photo img[src$="house-trolley-selected.webp"]{height:auto;max-height:none;object-fit:contain}.gallery .photo img[src$="sympathy-basket-selected.webp"],.gallery .photo img[src$="white-roses-front.webp"],.extra-gallery .photo img[src$="white-roses-slanted.webp"]{height:auto;max-height:none;object-fit:contain;padding:0}.gallery .photo:has(img[src$="sympathy-basket-selected.webp"]):hover img,.gallery .photo:has(img[src$="white-roses-front.webp"]):hover img,.extra-gallery .photo:has(img[src$="white-roses-slanted.webp"]):hover img{transform:none}

.gallery .photo img[src$="white-roses-slanted-final.webp"],.extra-gallery .photo img[src$="white-roses-front-final.webp"],.extra-gallery .photo img[src$="ivory-rose-bouquet-final.webp"]{height:auto;max-height:none;object-fit:contain}.photo:has(img[src$="-final.webp"]):hover img{transform:none}

/* Centre the opening rose photograph at every screen size. */
.hero-image img{object-position:center center}

/* Keep more of the hand visible beneath the opening rose. */
.hero-image img{object-position:center 82%}
