/* YourFlowers brand layer, loaded after zyra.css. 20 Oct 2026 makeover: product cards, category page, product page,
   homepage sections, readable buttons everywhere. */

@media (max-width:600px){.zy-wordmark b{font-size:16px}.zy-wordmark small{font-size:7px}}

/* ── Buttons: every button sets its own text colour, so nothing ends up dark-on-dark ── */
.zy-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 24px;font-family:var(--zy-sans);font-size:14px;font-weight:600;letter-spacing:.01em;border-radius:3px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
html body .zy-btn-dark,html body a.zy-btn-dark{background:var(--zy-ink);color:#FFFDFA;border-color:var(--zy-ink)}
html body .zy-btn-dark:hover{background:#46413B;color:#FFFDFA}
html body .zy-btn-light,html body a.zy-btn-light{background:#FFFDFA;color:var(--zy-ink);border-color:#FFFDFA}
html body .zy-btn-light:hover{background:var(--zy-ink);color:#FFFDFA;border-color:var(--zy-ink)}
html body .zy-btn-outline,html body a.zy-btn-outline{background:transparent;color:var(--zy-ink);border-color:var(--zy-ink)}
html body .zy-btn-outline:hover{background:var(--zy-ink);color:#FFFDFA}
html body .zy-btn-glass,html body a.zy-btn-glass{background:rgba(255,253,250,.14);color:#FFFDFA;border-color:rgba(255,253,250,.7);backdrop-filter:blur(4px)}
html body .zy-btn-glass:hover{background:#FFFDFA;color:var(--zy-ink)}
.zy-linkbtn{background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--zy-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* Template buttons on the product page and bag. */
html body .pd-buy{background:var(--zy-ink);color:#FFFDFA;border:1px solid var(--zy-ink);border-radius:3px;font-weight:600;min-height:50px}
html body .pd-buy:hover{background:#46413B;color:#FFFDFA}
html body .pd-buy.pd-buynow,html body a.pd-buy.pd-buynow{background:transparent;color:var(--zy-ink);border:1px solid var(--zy-ink)}
html body .pd-buy.pd-buynow:hover{background:var(--zy-ink);color:#FFFDFA}
html body .pd-buy.is-added{background:var(--zy-green);border-color:var(--zy-green);color:#FFFDFA}
html body .gn-bagbtn{color:#FFFDFA}

/* ── Shared ── */
.zy-h1{font-family:var(--zy-serif);font-weight:500;font-size:clamp(38px,4.4vw,56px);line-height:1.04;color:var(--zy-ink)}
.zy-lede{margin-top:6px;font-size:14.5px;line-height:1.55;color:var(--zy-muted)}
.zy-sechead{align-items:flex-end}
.zy-checks{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.zy-checks li{display:flex;align-items:center;gap:10px;font-size:14.5px}
.zy-checks .zy-ico{width:18px;height:18px;stroke-width:1.8;flex:none}

/* ── Product cards (like a proper shop grid: photo, badges, name, price, then colour dots below the price) ── */
.zy-pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,28px) clamp(12px,1.6vw,22px)}
.zy-pgrid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.zy-pcard{display:flex;flex-direction:column;color:var(--zy-ink);text-decoration:none}
.zy-pcard[hidden]{display:none}
.zy-pcard-img{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:3px;background:#EFE8DF}
.zy-pcard-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .45s ease,transform .8s cubic-bezier(.2,.6,.2,1)}
.zy-pcard-img img.alt{opacity:0}
.zy-pcard:hover .zy-pcard-img img.alt{opacity:1}
.zy-pcard:hover .zy-pcard-img img{transform:scale(1.03)}
.zy-badge{position:absolute;top:10px;left:10px;z-index:2;padding:4px 9px;border-radius:2px;background:#FFFDFA;color:var(--zy-ink);font-size:11.5px;font-weight:600;letter-spacing:.02em}
.zy-badge.is-premium{background:var(--zy-green);color:#F2EEE6}
.zy-len{position:absolute;top:10px;right:10px;z-index:2;padding:4px 8px;border-radius:2px;background:rgba(255,253,250,.9);color:var(--zy-ink);font-size:11.5px;font-weight:500}
.zy-pcard-body{padding-top:12px}
.zy-pcard-body h3{font-family:var(--zy-sans);font-size:14.5px;font-weight:500;line-height:1.35;color:var(--zy-ink)}
.zy-pcard-price{margin-top:4px;font-size:14.5px;font-weight:600;color:var(--zy-ink)}
.zy-pcard-sw{display:flex;align-items:center;gap:5px;margin-top:8px}
.zy-pcard-sw i{display:block;width:13px;height:13px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(43,40,36,.22)}
.zy-pcard-sw span{margin-left:4px;font-size:12px;color:var(--zy-muted)}
.zy-sw{display:none}

/* ── Category page ── */
.zy-catpage{padding-bottom:20px}
.zy-crumbwrap{padding-top:18px}
html body .zy-crumbwrap .rs-crumb{padding:0;margin:0;max-width:none;font-size:12.5px}
html body .zy-crumbwrap .rs-crumb a{color:var(--zy-muted)}
.zy-cathead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,64px);align-items:center;padding-top:18px}
.zy-cathead-text p{margin-top:12px;font-size:16px;line-height:1.6;color:#5E554C;max-width:52ch}
.zy-cathead-usp{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}
.zy-cathead-usp li{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--zy-ink)}
.zy-cathead-usp a{color:inherit}
.zy-cathead-usp .zy-ico{width:16px;height:16px;stroke-width:2}
.zy-cathead-img{aspect-ratio:16/10;border-radius:3px;overflow:hidden;background:#EFE8DF}
.zy-cathead-img img{width:100%;height:100%;object-fit:cover}
.zy-tiles{display:flex;gap:12px;overflow-x:auto;padding-top:28px;padding-bottom:6px;scrollbar-width:none}
.zy-tiles::-webkit-scrollbar{display:none}
.zy-tile{flex:0 0 auto;width:132px;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--zy-ink);text-decoration:none}
.zy-tile img,.zy-tile-all{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid transparent;transition:border-color .2s}
.zy-tile-all{display:flex;align-items:center;justify-content:center;background:var(--zy-blush);font-size:13px;font-weight:600}
.zy-tile:hover img,.zy-tile.on img,.zy-tile.on .zy-tile-all{border-color:var(--zy-ink)}
.zy-tile b{margin-top:8px;font-size:13.5px;font-weight:600;line-height:1.25}
.zy-tile small{font-size:12px;color:var(--zy-muted)}
.zy-shop{display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(24px,3vw,44px);padding-top:28px;align-items:start}
.zy-filters{position:sticky;top:70px}
.zy-filters-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--zy-line)}
.zy-filters-head b{font-size:15px}
.zy-filters-close,.zy-filters-apply,.zy-filters-open{display:none}
.zy-filters fieldset{border:0;margin:0;padding:16px 0;border-bottom:1px solid var(--zy-line)}
.zy-filters legend{padding:0;margin-bottom:10px;font-size:13.5px;font-weight:600;color:var(--zy-ink)}
.zy-fopt{display:flex;align-items:center;gap:9px;padding:5px 0;font-size:14px;color:var(--zy-ink);cursor:pointer}
.zy-fopt input{width:16px;height:16px;accent-color:var(--zy-ink);margin:0}
.zy-fopt i{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(43,40,36,.22)}
.zy-fopt small{margin-left:auto;font-size:12px;color:var(--zy-muted)}
.zy-fhelp{display:inline-block;margin-top:6px;font-size:12.5px;color:var(--zy-muted);text-decoration:underline;text-underline-offset:3px}
.zy-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--zy-line)}
.zy-toolbar p{font-size:14px;color:var(--zy-muted)}
.zy-toolbar-right{display:flex;align-items:center;gap:10px}
.zy-sort{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--zy-muted)}
.zy-sort select{font:inherit;font-size:14px;color:var(--zy-ink);padding:9px 12px;border:1px solid var(--zy-line);border-radius:3px;background:#FFFDFA}
.zy-noresults{padding:36px 0;font-size:15px;color:var(--zy-muted)}
.zy-noresults .zy-btn{margin-top:14px}
.zy-empty-page{padding:80px var(--zy-gutter)}
.zy-empty-page p{margin-top:20px}

/* ── Category guide block ── */
.zy-catseo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:center;padding-top:clamp(56px,7vw,96px)}
.zy-catseo .zy-frame{aspect-ratio:4/3}
.zy-catseo h2{font-family:var(--zy-serif);font-weight:500;font-size:clamp(24px,2.3vw,30px);line-height:1.15;color:var(--zy-ink)}
.zy-catseo h2 + p{margin-top:8px}
.zy-catseo p{font-size:15.5px;line-height:1.7;color:#5E554C;max-width:58ch}
.zy-catseo p + h2{margin-top:26px}
.zy-catseo a{color:var(--zy-ink);text-decoration:underline;text-underline-offset:3px}

/* ── Product page ── */
html body .pd{gap:clamp(28px,4vw,64px)}
.zy-gallery{background:transparent!important}
.zy-gmain{position:relative;aspect-ratio:4/5;border-radius:3px;overflow:hidden;background:#EFE8DF}
.zy-gmain img{width:100%;height:100%;object-fit:cover}
.zy-gthumbs{display:flex;gap:10px;margin-top:10px}
.zy-gthumbs button{width:76px;aspect-ratio:4/5;padding:0;border:1px solid var(--zy-line);border-radius:2px;overflow:hidden;background:none;cursor:pointer}
.zy-gthumbs button.on{border-color:var(--zy-ink);box-shadow:0 0 0 1px var(--zy-ink)}
.zy-gthumbs img{width:100%;height:100%;object-fit:cover;display:block}
.zy-gnote{margin-top:8px;font-size:12px;color:var(--zy-muted)}
html body .pd-price{font-family:var(--zy-sans);font-size:22px;font-weight:600;color:var(--zy-ink)}
.zy-has-swatches select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.zy-has-swatches{position:relative}
.zy-swname{font-size:14px;color:var(--zy-ink);margin:2px 0 10px}
.zy-swpick{display:flex;flex-wrap:wrap;gap:10px}
.zy-swpick button{width:34px;height:34px;border-radius:50%;border:2px solid #FFFDFA;box-shadow:0 0 0 1px var(--zy-line);cursor:pointer;padding:0}
.zy-swpick button[aria-checked="true"]{box-shadow:0 0 0 2px var(--zy-ink)}
.zy-pdp-trust{list-style:none;margin:22px 0 0;padding:16px 0 0;border-top:1px solid var(--zy-line);display:grid;gap:9px}
.zy-pdp-trust li{display:flex;align-items:center;gap:10px;font-size:14px;color:#5E554C}
.zy-pdp-trust .zy-ico{width:20px;height:20px;color:var(--zy-ink)}
.zy-upsell{display:flex;align-items:center;gap:14px;margin-top:18px;padding:10px 14px 10px 10px;border:1px solid var(--zy-line);border-radius:3px;background:#FFFDFA;color:var(--zy-ink);text-decoration:none}
.zy-upsell:hover{border-color:var(--zy-ink)}
.zy-upsell img{width:60px;height:60px;object-fit:cover;border-radius:2px;flex:none}
.zy-upsell span{display:flex;flex-direction:column;gap:2px;font-size:14px;flex:1}
.zy-upsell small{font-size:12px;color:var(--zy-muted)}
.zy-upsell em{font-style:normal;font-weight:600}
.zy-upsell i{font-style:normal}
.zy-acc{margin-top:20px;border-top:1px solid var(--zy-line)}
.zy-acc details{border-bottom:1px solid var(--zy-line)}
.zy-acc summary{list-style:none;cursor:pointer;position:relative;padding:15px 30px 15px 0;font-size:14.5px;font-weight:600;color:var(--zy-ink)}
.zy-acc summary::-webkit-details-marker{display:none}
.zy-acc summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:20px;font-weight:300}
.zy-acc details[open] summary::after{content:"–"}
.zy-acc details p{padding:0 0 16px;font-size:14px;line-height:1.65;color:#5E554C}
.zy-acc details a{color:var(--zy-ink);text-decoration:underline;text-underline-offset:3px}
.zy-spec{margin:0 0 16px;display:grid;gap:0}
.zy-spec div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:7px 0;font-size:14px;border-top:1px dashed var(--zy-line)}
.zy-spec div:first-child{border-top:0}
.zy-spec dt{color:var(--zy-muted)}
.zy-spec dd{margin:0;color:var(--zy-ink)}
html body .pd-specs{display:none}
.zy-rails{padding-top:clamp(48px,6vw,80px)}
.zy-rail + .zy-rail{margin-top:clamp(44px,5vw,72px)}

/* ── Homepage ── */
.zy-hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.zy-hero-ctas .zy-btn{margin:0}
.zy-catgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.zy-catcard{position:relative;display:block;border-radius:3px;overflow:hidden;color:#FFFDFA;text-decoration:none}
.zy-catcard .zy-frame{aspect-ratio:1/1.05;border-radius:0}
.zy-catcard .zy-frame img{transition:transform .8s cubic-bezier(.2,.6,.2,1)}
.zy-catcard:hover .zy-frame img{transform:scale(1.04)}
.zy-catcard::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,24,20,.62) 0%,rgba(28,24,20,0) 52%);pointer-events:none}
.zy-catcard-body{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;display:flex;flex-direction:column}
.zy-catcard-body b{font-family:var(--zy-serif);font-weight:500;font-size:clamp(22px,2vw,28px);line-height:1.1}
.zy-catcard-body small{margin-top:4px;font-size:13px;opacity:.9}
.zy-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:1440px;margin:0 auto;min-height:520px}
.zy-split .zy-split-img{border-radius:0;min-height:420px}
.zy-split-text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(36px,6vw,96px)}
.zy-split-text p{margin-top:14px;font-size:16px;line-height:1.7;max-width:46ch;color:#5E554C}
.zy-split-text .zy-btn{margin-top:26px}
.zy-split-dark{background:var(--zy-green-2)}
.zy-split-dark .zy-h2,.zy-split-dark p,.zy-split-dark .zy-checks li{color:#F2EEE6}
.zy-split-rev{background:var(--zy-blush)}
.zy-split-rev .zy-split-img{order:2}
.zy-mini{display:grid;gap:10px;margin-top:22px;width:100%;max-width:420px}
.zy-mini a{display:flex;align-items:center;gap:12px;color:#F2EEE6;text-decoration:none;padding:6px;border-radius:3px;background:rgba(255,255,255,.05)}
.zy-mini a:hover{background:rgba(255,255,255,.1)}
.zy-mini img{width:46px;height:56px;object-fit:cover;border-radius:2px}
.zy-mini span{display:flex;flex-direction:column;font-size:14px}
.zy-mini em{font-style:normal;font-size:13px;opacity:.8}
.zy-routes{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,64px);align-items:center;background:#FFFDFA;border:1px solid var(--zy-line);border-radius:3px;padding:clamp(16px,2vw,24px)}
.zy-routes .zy-routes-img{aspect-ratio:4/4.4}
.zy-routes-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px);margin-top:22px}
.zy-routes-cols > div + div{border-left:1px solid var(--zy-line);padding-left:clamp(20px,3vw,40px)}
.zy-routes-cols h3{font-family:var(--zy-serif);font-weight:500;font-size:22px}
.zy-routes-cols .zy-link{display:inline-block;margin-top:16px}
.zy-faq .zy-acc{max-width:760px;margin-top:18px}
.zy-faq-more{margin-top:16px}
.zy-maat .zy-btn{margin-top:22px}

/* ── Clickable USPs, chips, footer ── */
.zy-usp a{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}
.zy-usp a:hover b{text-decoration:underline;text-underline-offset:3px}
.zy-uspband{background:#FFFDFA;border-top:1px solid var(--zy-line);margin-top:clamp(48px,6vw,80px)}
.zy-uspband .zy-usp{border-bottom:0}
.zy-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.zy-chips a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--zy-line);border-radius:40px;background:#FFFDFA;font-size:14px;color:var(--zy-ink);text-decoration:none;transition:border-color .2s}
.zy-chips a:hover{border-color:var(--zy-ink)}
.zy-chips span{font-size:12px;color:var(--zy-muted)}
.zy-fcols{max-width:1280px;margin:0 auto;padding:40px var(--zy-gutter) 28px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.zy-fcol h3{font-family:var(--zy-sans);font-size:12.5px;font-weight:600;color:#F2EEE6;margin:0 0 10px}
.zy-fcol ul{list-style:none;margin:0;padding:0}
.zy-fcol li{font-size:13.5px;line-height:1.5;padding:4px 0;color:#BDB9AB}
html body footer.zy-footer .zy-fcol a{color:#BDB9AB;text-decoration:none}
html body footer.zy-footer .zy-fcol a:hover{color:#F2EEE6}
.zy-fbottom{max-width:1280px;margin:0 auto;padding:18px var(--zy-gutter) 30px;border-top:1px solid rgba(255,255,255,.09);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12.5px;color:#9C9A8C}
.zy-fbottom nav{display:flex;flex-wrap:wrap;gap:18px}
html body footer.zy-footer .zy-fbottom a{color:#BDB9AB;text-decoration:none}
html body footer.zy-footer .zy-fbottom a:hover{color:#F2EEE6}

/* ── Information pages ── */
html body .ip{max-width:720px;padding-top:clamp(48px,6vw,88px)}
html body :is(.ip h1,.ip h2,.ip h3){font-family:var(--zy-serif);font-weight:500;letter-spacing:0;color:var(--zy-ink)}
html body .ip h1{font-size:clamp(40px,4.6vw,58px);line-height:1.05}
html body .ip h2{font-size:clamp(26px,2.4vw,32px);margin-top:48px}
html body .ip h3{font-size:21px;margin:26px 0 6px}
html body :is(.ip p,.ip ul,.ip ol){font-size:16.5px;line-height:1.7;color:#5E554C}
html body .ip p + p{margin-top:12px}
html body .ip li + li{margin-top:6px}
html body .ip-lede{color:var(--zy-muted)}
html body .ip a{color:var(--zy-ink);text-decoration:underline;text-underline-offset:4px}
html body .ip-toc{background:var(--zy-cream);border-bottom-color:var(--zy-line)}
html body .ip-toc a{border-color:var(--zy-line);color:var(--zy-ink);text-decoration:none}
html body .ip-toc a:hover{border-color:var(--zy-ink)}
html body .ip-updated{color:var(--zy-muted)}
html body .ip figure{margin:28px 0}
html body .ip figure img{display:block;width:100%;height:auto;max-height:440px;object-fit:cover;border-radius:3px}
html body .ip figcaption{margin-top:8px;font-size:13px;color:var(--zy-muted)}
html body .ip blockquote{margin:18px 0;padding:18px 22px;background:#FFFDFA;border-left:3px solid var(--zy-blush-2);border-radius:2px}
html body .ip blockquote p{font-size:15px}
html body .pd h1{font-size:clamp(32px,3.2vw,44px);line-height:1.08}

/* ── Responsive ── */
@media (max-width:1100px){.zy-pgrid-4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .zy-cathead{grid-template-columns:1fr}
  .zy-cathead-img{order:-1;aspect-ratio:16/8}
  .zy-shop{grid-template-columns:1fr}
  .zy-filters{position:fixed;inset:0 0 0 auto;z-index:1000;width:min(360px,88vw);background:var(--zy-cream);padding:20px;overflow-y:auto;transform:translateX(100%);transition:transform .3s ease;box-shadow:-20px 0 40px rgba(0,0,0,.15)}
  .zy-filters.is-open{transform:none}
  .zy-filters-close{display:block;background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:var(--zy-ink)}
  .zy-filters-apply{display:flex;width:100%;margin-top:20px}
  .zy-filters-open{display:inline-flex;min-height:40px;padding:8px 16px}
  body.zy-noscroll{overflow:hidden}
  .zy-pgrid,.zy-pgrid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zy-catgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zy-split{grid-template-columns:1fr}
  .zy-split-rev .zy-split-img{order:0}
  .zy-routes{grid-template-columns:1fr}
  .zy-catseo{grid-template-columns:1fr}
  .zy-fcols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .zy-sort span{display:none}
  .zy-routes-cols{grid-template-columns:1fr}
  .zy-routes-cols > div + div{border-left:0;padding-left:0;border-top:1px solid var(--zy-line);padding-top:20px}
  .zy-fcols{grid-template-columns:1fr}
  .zy-hero-ctas .zy-btn{width:100%}
}
