:root{--forest:#263d34;--deep:#192d27;--sage:#74877a;--ivory:#f8f6f0;--sand:#e9e3d7;--line:#d7d9d0;--ink:#293630;--sub:#596760;--rose:#d9b9aa;--white:#fff;--pad:clamp(1.25rem,5vw,5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font:400 1rem/1.65 system-ui,-apple-system,'Segoe UI',sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.13}h1{font-size:clamp(3.2rem,6vw,6.4rem);letter-spacing:-.047em}h2{font-size:clamp(2.5rem,4.3vw,4.5rem);letter-spacing:-.043em}h3{font-size:clamp(1.55rem,2.1vw,2.1rem);letter-spacing:-.025em}.container{width:min(calc(100% - 2*var(--pad)),1440px);margin-inline:auto}.skip{position:absolute;top:-100px;left:1rem;background:#fff;padding:.75rem;z-index:100}.skip:focus{top:1rem}.eyebrow{display:block;font-size:.78rem;line-height:1.4;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.site-header{position:relative;z-index:20;background:var(--ivory);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.logo{display:inline-flex;align-items:center;gap:.55rem;flex-shrink:0;font:400 1.75rem Georgia,serif;line-height:1;letter-spacing:-.05em;color:var(--forest)}.logo-symbol{font:400 1.7rem Georgia,serif;color:#a87665;line-height:1}.logo .ellipsis{color:#a87665}.logo small{display:block;margin-top:.5rem;font:700 .53rem system-ui,sans-serif;letter-spacing:.21em;color:var(--sage)}.site-nav{display:flex;align-items:center;gap:clamp(.45rem,1.1vw,1.2rem);font-size:.81rem;font-weight:600}.site-nav>a:not(.nav-cta){padding:.4rem .1rem}.site-nav a:hover,.site-nav a[aria-current]{color:#a16e5e}.nav-cta{background:var(--forest);color:#fff;padding:.7rem .9rem;margin-left:.25rem;white-space:nowrap}.nav-cta span{margin-left:.5rem}.menu-button{display:none}.hero{position:relative;min-height:630px;color:#fff;display:flex;align-items:center;overflow:hidden;background:#1e3028}.hero-media,.hero-media:after{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-media:after{content:'';background:linear-gradient(90deg,rgba(14,32,25,.88) 0%,rgba(14,32,25,.68) 37%,rgba(14,32,25,.1) 83%)}.hero-inner{position:relative;z-index:1;padding-block:6rem}.hero-text{max-width:760px}.hero h1{margin:1.25rem 0 1.5rem}.hero p{max-width:535px;font-size:1.13rem;line-height:1.65;color:#f3f2ec}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.75rem;min-height:48px;padding:.78rem 1.2rem;background:#e4c5b0;color:var(--deep);font-size:.91rem;font-weight:700;border:1px solid transparent}.button span{font-size:1.15rem;font-weight:400}.button:hover{background:#f0d4c2}.button.ghost{background:transparent;color:#fff;border-color:#e3e6dc}.button.ghost:hover{background:#ffffff23}.button.dark{background:var(--forest);color:#fff}.button.outline-dark,.button.ghost-dark{border-color:var(--forest);background:transparent;color:var(--forest)}.image-caption{padding-block:.7rem;font-size:.77rem;color:var(--sub);text-align:right}.section{padding-block:clamp(4.5rem,8vw,8.5rem)}.section-heading{max-width:780px;margin-bottom:2.5rem}.section-heading h2{margin:.8rem 0}.section-heading p{font-size:1.1rem;color:var(--sub);max-width:610px}.intro-grid,.prose-grid{display:grid;grid-template-columns:1fr 2fr;gap:3rem}.intro h2,.prose-grid h2{max-width:820px}.intro p,.prose-grid p{max-width:760px;color:var(--sub);font-size:1.1rem}.inline-link{display:inline-flex;gap:1.5rem;align-items:center;border-bottom:1px solid currentColor;padding-bottom:.15rem;font-size:.9rem;font-weight:700;color:var(--forest);margin-top:.75rem}.inline-link span{font-size:1.2rem;font-weight:400}.services-section{background:#eaece5}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.3rem}.service-card{background:var(--ivory);display:grid;grid-template-columns:47% 53%;min-height:300px}.service-image{overflow:hidden}.service-image img{width:100%;height:100%;min-height:300px;object-fit:cover;transition:transform .35s}.service-image:hover img{transform:scale(1.035)}.service-card>div{padding:clamp(1.2rem,2.5vw,2.4rem);display:flex;align-items:flex-start;flex-direction:column}.service-card h3{margin:.3rem 0 .7rem}.service-card p{color:var(--sub);margin-bottom:1rem}.service-card .inline-link{margin-top:auto}.delivery-band{background:var(--forest);color:#fff}.delivery-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.delivery-layout>div:first-child{padding-block:5.5rem}.delivery-layout h2{max-width:680px;margin:1rem 0}.delivery-layout p{max-width:510px;color:#dbe2da;font-size:1.1rem}.delivery-photo{height:520px;align-self:stretch}.delivery-photo img{width:100%;height:100%;object-fit:cover}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.gallery-grid.two{grid-template-columns:1fr 1fr}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;height:350px;object-fit:cover}.gallery-grid figcaption{padding-top:.7rem;color:var(--sub);font-size:.86rem}.contact-strip{background:var(--sand);padding:3.6rem 0}.contact-strip .container{display:flex;align-items:end;justify-content:space-between;gap:2rem}.contact-strip h2{margin:.55rem 0}.contact-strip p{margin:0;color:var(--sub)}.page-heading{background:#eaece5}.page-heading-grid{display:grid;grid-template-columns:1fr .9fr;min-height:490px;gap:5%;align-items:center}.page-heading-grid>div:first-child{padding-block:5rem}.page-heading h1{font-size:clamp(3.1rem,5.4vw,5.6rem);margin:1.2rem 0}.page-heading p{max-width:600px;font-size:1.13rem;color:var(--sub)}.page-heading-image{height:100%;max-height:490px;overflow:hidden}.page-heading-image img{width:100%;height:100%;object-fit:cover}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.values>div{padding:2rem;background:var(--ivory)}.values span{font-size:.75rem;letter-spacing:.15em;color:#a16e5e;font-weight:700}.values h3{margin:1.3rem 0 .6rem}.values p{color:var(--sub);margin:0}.form-section{background:#eaece5}.delivery-form{max-width:980px;margin:auto;background:#fff;padding:clamp(1.5rem,5vw,4rem)}.form-intro{max-width:650px;margin-bottom:2rem}.form-intro h2{margin:.5rem 0}.form-intro p{color:var(--sub)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.form-grid label{display:flex;flex-direction:column;gap:.4rem;font-weight:600;font-size:.92rem}.form-grid label span,.privacy-check b{color:#8b443a}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:49px;background:#fff;border:1px solid #acb6ae;border-radius:0;padding:.65rem .8rem;color:var(--ink);font-weight:400}.form-grid textarea{resize:vertical}.privacy-check{display:flex;gap:.7rem;margin:1.8rem 0;font-size:.86rem;color:var(--sub);align-items:flex-start}.privacy-check input{margin-top:.33rem;width:18px;height:18px;flex-shrink:0}.privacy-check a{text-decoration:underline}.form-feedback{margin:.8rem 0 0;color:var(--forest);font-weight:600}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:7rem}.contact-grid h2{margin:.7rem 0}.contact-grid address,.footer address{font-style:normal}.contact-grid address{font-size:1.2rem}.contact-links{display:flex;flex-direction:column;margin-top:2rem;border-top:1px solid var(--line)}.contact-links a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:.8rem 0;font-weight:700}.hours>div{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.hours>div:first-of-type{margin-top:1.2rem;border-top:1px solid var(--line)}.hours p{color:var(--sub);margin-top:1.5rem}.footer{background:var(--deep);color:#fff;padding-top:4.5rem}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.footer .logo{color:#fff}.footer .logo small{color:#b6c6b9}.footer p{color:#c6d1c8;max-width:330px}.footer h2{font:700 .77rem system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.3rem}.footer-main>div:not(:first-child){display:flex;flex-direction:column;gap:.5rem}.footer-main a:hover,.footer-bottom a:hover{color:#e4c5b0}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #5e7068;margin-top:4rem;padding-block:1.2rem;color:#b7c6bc;font-size:.81rem}.footer-bottom>span:last-child{display:flex;gap:1.5rem}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b6735a;outline-offset:3px}@media(max-width:1120px){.site-nav{gap:.45rem;font-size:.73rem}.nav-cta{padding:.65rem}.service-grid{gap:1rem}.service-card{grid-template-columns:1fr}.service-image img{height:240px;min-height:240px}.service-card>div{min-height:225px}}@media(max-width:850px){.header-inner{min-height:75px}.menu-button{display:flex;flex-direction:column;gap:5px;background:transparent;border:0;padding:.8rem}.menu-button span{width:25px;height:2px;background:var(--forest)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:1.25rem var(--pad) 2rem;box-shadow:0 15px 25px #0002;flex-direction:column;align-items:stretch;font-size:1rem;gap:.6rem}.site-nav.open{display:flex}.site-nav .nav-cta{margin:0;text-align:center}.hero{min-height:620px}.hero-media:after{background:linear-gradient(90deg,#15261dd9,#15261d44)}.page-heading-grid{grid-template-columns:1fr}.page-heading-grid>div:first-child{padding:4rem 0}.page-heading-image{height:310px;margin:0 calc(-1*var(--pad))}.intro-grid,.prose-grid{grid-template-columns:1fr;gap:1rem}.delivery-layout{grid-template-columns:1fr;gap:0}.delivery-photo{height:320px;margin:0 calc(-1*var(--pad))}.delivery-layout>div:first-child{padding-block:4rem}.contact-strip .container{align-items:flex-start;flex-direction:column}.contact-grid{gap:3rem}.footer-main{grid-template-columns:1fr 1fr}.footer-intro{grid-column:1/-1}}@media(max-width:620px){.hero{min-height:680px;align-items:end}.hero-inner{padding-block:5rem}.hero-media img{object-position:66% center}.hero-media:after{background:linear-gradient(0deg,#15261df0 0%,#15261d8a 70%,#15261d34)}.hero h1{font-size:clamp(3.1rem,12vw,4.4rem)}.hero .actions,.contact-strip .actions{flex-direction:column;align-items:stretch}.section{padding-block:4.2rem}.service-grid,.gallery-grid,.gallery-grid.two,.values,.contact-grid,.form-grid,.footer-main{grid-template-columns:1fr}.service-card{grid-template-columns:42% 58%;min-height:210px}.service-image img{height:100%;min-height:210px}.service-card>div{min-height:210px;padding:1rem}.service-card h3{font-size:1.4rem}.service-card p{font-size:.9rem;line-height:1.45}.service-card .inline-link{font-size:.8rem}.gallery-grid img{height:300px}.values>div{padding:1.6rem}.form-grid .wide{grid-column:auto}.contact-grid{gap:2rem}.footer-intro{grid-column:auto}.footer-bottom{flex-direction:column}}@media(max-width:390px){.service-card{grid-template-columns:1fr}.service-image img{height:220px;min-height:220px}.service-card>div{min-height:180px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-image img{transition:none}}
/* Editorial sections requested for weddings and the client's funeral examples. */
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}.editorial-grid.reverse>div:first-child{order:2}.editorial-grid img{width:100%;height:clamp(300px,35vw,540px);object-fit:cover}.editorial-grid h3{font-size:clamp(2rem,3vw,3rem)}.editorial-grid p,.prose-narrow p{color:var(--sub);font-size:1.1rem}.prose-narrow{max-width:760px}.catalog-callout{background:var(--forest);color:#fff;padding:4rem 0}.catalog-callout .container{display:flex;justify-content:space-between;align-items:end;gap:2rem}.catalog-callout h2{margin:.5rem 0}.catalog-callout p{margin:0;color:#dbe2da}.funeral-gallery img{height:500px;object-fit:contain;background:#e9e9e4}.delivery-cost-note{grid-column:1/-1;color:var(--sub);background:#f0f2ed;padding:.85rem 1rem;margin:0;font-size:.9rem}@media(max-width:760px){.editorial-grid{grid-template-columns:1fr}.editorial-grid.reverse>div:first-child{order:0}.catalog-callout .container{flex-direction:column;align-items:flex-start}.funeral-gallery img{height:420px}}@media(max-width:620px){.delivery-cost-note{grid-column:auto}}
.long-copy p{color:var(--sub);font-size:1.075rem;line-height:1.75;margin-bottom:1.2rem}.editorial-grid:has(.long-copy){align-items:start}.editorial-grid:has(.long-copy) img{position:sticky;top:2rem}.color-table-wrap{overflow-x:auto;border:1px solid var(--line)}.color-table{width:100%;min-width:970px;border-collapse:collapse;background:#fff}.color-table th,.color-table td{text-align:left;vertical-align:top;padding:1rem;border-bottom:1px solid var(--line)}.color-table th{background:var(--forest);color:#fff;font-size:.84rem}.color-table td:first-child{font-weight:700;color:var(--forest)}.color-table td:nth-child(2){white-space:nowrap}.municipality-feedback{grid-column:1/-1;background:#f7e8df;border-left:4px solid #8b443a;color:#622b23;padding:.8rem 1rem;margin:0;font-weight:600}.municipality-feedback[hidden]{display:none}@media(max-width:760px){.editorial-grid:has(.long-copy) img{position:static}}@media(max-width:620px){.municipality-feedback{grid-column:auto}}
.faq-list{max-width:970px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:1.25rem 0}.faq-list summary{cursor:pointer;font:400 clamp(1.25rem,2vw,1.7rem)/1.35 Georgia,serif;list-style:none;padding-right:2rem;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:.25rem;top:0;color:var(--forest)}.faq-list details[open] summary:after{content:'−'}.faq-list p{max-width:780px;color:var(--sub);font-size:1.05rem;margin:1rem 0 0}.catalog-placeholder{background:#fff;min-height:70vh;display:grid;place-items:center;text-align:center;padding:5rem var(--pad)}.catalog-placeholder .container{max-width:850px}.catalog-placeholder h1{font-size:clamp(2.7rem,5.5vw,5rem);margin:0 0 1rem}.catalog-placeholder p{font-size:clamp(1.2rem,2vw,1.55rem);color:var(--sub);margin:0}
.catalog-only{background:#fff}.catalog-only .site-header,.catalog-only .footer{display:none}.catalog-only .catalog-placeholder{min-height:100vh}

/* Steps, flower language, colours and care use the site's editorial type and palette. */
.values{gap:1.25rem;background:transparent;border:0}
.values>div{position:relative;min-height:245px;padding:2.1rem;background:#fff;border:1px solid var(--line);border-top:3px solid var(--rose)}
.values span{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--ivory);color:var(--forest);font:600 .82rem/1 system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:.04em}
.values h3{font:400 1.25rem/1.35 Georgia,serif;margin:1.25rem 0 .6rem;color:var(--forest)}
.values p{font-size:1rem;line-height:1.6;max-width:28ch}
.language-section{padding-block:1rem 5rem}
.language-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(2rem,4vw,3.75rem);background:var(--forest);color:#fff}
.language-panel .eyebrow{color:#d5bba9}
.language-panel h2{margin:.55rem 0 0;font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.12}
.language-panel .button{flex:none;background:var(--ivory);color:var(--forest);margin:0}
.language-panel .button:hover{background:#e9e3d7}
.colors-section{background:#eeeee8}
.colors-section .section-heading{margin-bottom:1.5rem}
.color-intro{max-width:780px;margin-bottom:2rem}
.color-intro h3{font:400 1.25rem/1.35 Georgia,serif;color:var(--forest);margin:0 0 .8rem}
.color-intro p{margin:0;color:var(--sub);font-size:1.03rem;line-height:1.65}
.color-table-wrap{border:1px solid var(--line);overflow-x:auto;background:#fff}
.color-table{min-width:900px;table-layout:fixed;font-size:.94rem;line-height:1.5}
.color-table th,.color-table td{padding:1.1rem 1rem;border-bottom:1px solid #e4e5df;font-family:system-ui,-apple-system,'Segoe UI',sans-serif}
.color-table th{background:var(--forest);color:#fff;font-size:.7rem;font-weight:700;line-height:1.35;letter-spacing:.11em;text-transform:uppercase}
.color-table th:nth-child(1){width:18%}.color-table th:nth-child(2){width:12%}.color-table th:nth-child(3){width:22%}.color-table th:nth-child(4){width:21%}.color-table th:nth-child(5){width:27%}
.color-table td:first-child{font-size:.83rem;line-height:1.45;font-weight:650}
.color-table td:nth-child(2){font-weight:650;color:var(--forest)}
.color-table tbody tr:last-child td{border-bottom:0}
.color-table tbody tr:nth-child(even){background:#fbfaf7}
.care-section{background:var(--ivory)}
.care-section .section-heading{margin-bottom:2rem}
.faq-list{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;border:0;align-items:start}
.faq-list details{padding:0;background:#fff;border:1px solid var(--line)}
.faq-list summary{min-height:84px;padding:1.2rem 3.5rem 1.2rem 1.5rem;display:flex;align-items:center;font:400 1.25rem/1.35 Georgia,serif;color:var(--forest)}
.faq-list summary:hover{background:#f8f7f2}
.faq-list summary:after{content:'+';right:1.4rem;top:50%;transform:translateY(-50%);width:1.55rem;height:1.55rem;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font:400 1.25rem/1 system-ui,sans-serif}
.faq-list details[open] summary:after{content:'−'}
.faq-list p{margin:0;padding:0 1.5rem 1.5rem;color:var(--sub);font-size:1rem;line-height:1.65}
@media(max-width:850px){.language-panel{align-items:flex-start;flex-direction:column}.color-table{min-width:0}.color-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.color-table,.color-table tbody,.color-table tr,.color-table td{display:block;width:100%}.color-table tbody{padding:1rem}.color-table tr{padding:1.15rem;margin-bottom:1rem;border:1px solid var(--line);background:#fff!important}.color-table tr:last-child{margin-bottom:0}.color-table td{display:grid;grid-template-columns:minmax(105px,34%) 1fr;gap:.75rem;border:0!important;padding:.4rem 0;white-space:normal!important;font-size:.94rem}.color-table td:before{content:attr(data-label);color:var(--sub);font-size:.71rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding-top:.2rem}.color-table td:first-child{font-size:.88rem}.color-table td:nth-child(2){font-size:1rem}.faq-list{grid-template-columns:1fr}}
@media(max-width:620px){.values>div{min-height:0;padding:1.75rem}.language-section{padding-block:0 4rem}.language-panel .button{width:100%;justify-content:space-between}.faq-list summary{min-height:0;padding:1.3rem 3.4rem 1.3rem 1.25rem}.faq-list p{padding:0 1.25rem 1.3rem}.color-table tbody{padding:.75rem}.color-table tr{padding:1rem}}

/* Official floristry mark in the header and footer. */
.brand-logo{display:block;width:clamp(205px,20vw,255px);height:auto;max-height:82px;object-fit:contain}
.footer .brand-logo{width:245px;max-height:none;filter:brightness(0) invert(1)}
@media(max-width:1050px){.menu-button{display:flex;flex-direction:column;gap:5px;background:transparent;border:0;padding:.8rem}.menu-button span{width:25px;height:2px;background:var(--forest)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:1.25rem var(--pad) 2rem;box-shadow:0 15px 25px #0002;flex-direction:column;align-items:stretch;font-size:1rem;gap:.6rem}.site-nav.open{display:flex}.site-nav .nav-cta{margin:0;text-align:center}}
@media(max-width:620px){.brand-logo{width:205px}.footer .brand-logo{width:225px}}

.page-heading-grid.text-only{grid-template-columns:1fr;min-height:330px}
.page-heading-grid.text-only>div:first-child{max-width:850px;padding-block:4rem}

.footer-social{display:flex;flex-direction:row;gap:.7rem;margin-top:.8rem}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid #83978a;border-radius:50%;color:#fff;transition:background-color .2s,color .2s,border-color .2s}
.footer-social a:hover{background:var(--ivory);border-color:var(--ivory);color:var(--forest)}
.footer-social svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.legal-section{background:var(--ivory)}
.legal-prose{max-width:900px}
.legal-updated{color:var(--sub);font-size:.9rem;letter-spacing:.02em;margin:0 0 2.5rem}
.legal-prose h2{font:400 clamp(1.75rem,2.7vw,2.25rem)/1.2 Georgia,serif;color:var(--forest);border-top:1px solid var(--line);padding-top:1.7rem;margin:2.6rem 0 1rem}
.legal-prose h3{font:400 1.3rem/1.3 Georgia,serif;color:var(--forest);margin:1.7rem 0 .65rem}
.legal-prose p{font-size:1.04rem;line-height:1.75;color:var(--sub);margin:0 0 1.15rem}
.legal-prose a{text-decoration:underline;text-underline-offset:.2em;color:var(--forest)}
.legal-prose a:hover{color:#8b5b4d}

.footer-copyright{display:inline-block;white-space:nowrap;flex:0 0 auto}
@media(max-width:620px){.footer-copyright{font-size:.75rem;letter-spacing:-.01em}}
