/*
Theme Name: Language of Flowers
Theme URI: https://languageofflowers.com
Author: Language of Flowers
Description: Store theme for languageofflowers.com, styled as a flower colour index: every collection and product is pressed with a public-domain botanical plate and its colour. WooCommerce ready, with Shopify-style store URLs (/collections, /products, /pages, /policies, /blogs).
Version: 3.2.0
Requires at least: 6.3
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: languageofflowers
*/

@font-face{font-family:"Libre Caslon Display";src:url(fonts/LibreCaslonDisplay.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Caslon Text";src:url(fonts/LibreCaslonText.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Caslon Text";src:url(fonts/LibreCaslonText-Italic.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Libre Franklin";src:url(fonts/LibreFranklin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

/* Type: Libre Caslon, the face of the Victorian flower dictionaries the plates come from.
   Display cut for headings, Text cut for names, meanings and small serif; Libre Franklin for the shop's working text.
   Colour: warm paper and brown ink; every other colour comes from a flower. */
:root{
  color-scheme:light only;
  --ink:#2B231E;--ink-2:#5E544C;--muted:#8A7F74;--line:#E4DCCD;--paper:#F8F4EC;--soft:#F0E9DD;--card:#FFFDF8;
  --leaf:#46573C;--wine:#8A4A3A;
  --display:"Libre Caslon Display","Libre Caslon Text",Georgia,serif;--serif:"Libre Caslon Text",Georgia,serif;
  --sans:"Libre Franklin",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--sans);
  --wrap:1240px;--text:700px;--r:2px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.68 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:4px}
a:hover{color:var(--leaf)}
:focus-visible{outline:2px solid var(--leaf);outline-offset:3px}
h1,h2{font-family:var(--display);font-weight:400;color:var(--ink);line-height:1.06;letter-spacing:-.01em;margin:1.5em 0 .5em}
h3,h4{font-family:var(--serif);font-weight:400;color:var(--ink);line-height:1.2;letter-spacing:0;margin:1.5em 0 .5em}
h1{font-size:clamp(40px,5.8vw,72px);margin-top:0}
h2{font-size:clamp(30px,3.6vw,46px)}
h3{font-size:22px}
p{margin:0 0 1.1em}
strong,b{font-weight:600}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:var(--card);padding:8px 12px;z-index:99}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
@media (max-width:620px){.wrap{padding:0 18px}}
.kicker{display:inline-block;font:italic 400 17px/1.4 var(--serif);color:var(--wine);text-decoration:none;letter-spacing:0}
.lof-btn,.button,button.button,a.button,input[type=submit],.wc-block-components-button:not(.is-link){
  display:inline-block;font:500 14.5px/1 var(--sans)!important;letter-spacing:.04em;background:var(--ink)!important;color:var(--paper)!important;border:0!important;
  border-radius:var(--r)!important;padding:17px 26px!important;text-decoration:none!important;cursor:pointer;transition:background .2s}
.lof-btn:hover,.button:hover,input[type=submit]:hover{background:var(--leaf)!important;color:var(--paper)!important}
.lof-btn.ghost{background:transparent!important;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--ink)}
.lof-btn.ghost:hover{background:var(--ink)!important;color:var(--paper)!important}
.lof-link{font:500 15px/1.4 var(--sans);color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.lof-link:hover{color:var(--leaf)}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=number],textarea,select{
  font:400 15px/1.4 var(--sans);border:1px solid #D8CFBF;border-radius:var(--r);padding:12px 14px;background:var(--card);color:var(--ink);max-width:100%}

/* header */
.topbar{background:var(--soft);color:var(--ink-2);text-align:center;font:400 13px/1.4 var(--sans);padding:9px 16px}
.site-header{background:rgba(248,244,236,.94);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;align-items:center;gap:34px;min-height:76px}
.brand{font:400 17px/1 var(--serif);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand:hover{color:var(--ink)}
.nav{flex:1;display:flex;justify-content:flex-end}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:28px;flex-wrap:wrap}
.nav a{font:500 14.5px/1 var(--sans);letter-spacing:.01em;color:var(--ink);text-decoration:none;padding:7px 0;border-bottom:1px solid transparent}
.nav a:hover,.nav .current-menu-item>a{border-color:var(--ink);color:var(--ink)}
.nav li{position:relative}
.nav .sub-menu{display:none}
.hdr-cart{font:500 15px/1 var(--sans);color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:8px}
.hdr-cart .count{background:var(--ink);color:var(--paper);border-radius:999px;font:600 11px/1 var(--sans);min-width:21px;height:21px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.menu-toggle{display:none;background:none;border:0;font:500 15px var(--sans);color:var(--ink);cursor:pointer;padding:8px 0}
@media (max-width:960px){
  .site-header .wrap{flex-wrap:wrap;gap:14px;padding-top:14px;padding-bottom:14px;min-height:0}
  .brand{font-size:13px;letter-spacing:.14em;flex:1}
  .menu-toggle{display:block;order:3}
  .hdr-cart{order:2}
  .nav{order:4;flex-basis:100%;display:none}
  .nav.open{display:block}
  .nav ul{flex-direction:column;gap:0;padding:4px 0 10px}
  .nav a{display:block;padding:12px 0;font-size:17px;border-bottom:1px solid var(--line)}
}

/* the colour index (home hero): one plate on its own colour */
.index{background:var(--c);transition:background-color .7s ease;overflow:hidden}
.index-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:stretch;min-height:min(780px,calc(100vh - 77px))}
.index-text{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,7vh,72px) 0 clamp(36px,6vh,64px)}
.index h1{font-size:clamp(52px,min(6.6vw,12.5vh),96px);line-height:.98;letter-spacing:-.015em;margin:0 0 clamp(22px,4vh,44px);max-width:none}
.index-now{min-height:clamp(150px,22vh,178px)}
.index-colour{font:italic 400 24px/1 var(--serif);color:var(--wine);margin:0 0 14px}
.index-means{font:400 clamp(26px,2.5vw,34px)/1.18 var(--display);letter-spacing:-.005em;margin:0 0 12px;max-width:22ch}
.index-line{font-size:16px;line-height:1.55;color:var(--ink-2);margin:0;max-width:44ch}
.swatches{display:flex;flex-wrap:wrap;gap:6px 4px;margin:clamp(18px,3.4vh,30px) 0 clamp(22px,4vh,38px)}
.sw{appearance:none;background:none;border:0;padding:4px 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:7px;font:500 12.5px/1 var(--sans);color:var(--ink-2)}
.sw i{display:block;width:38px;height:38px;border-radius:50%;background:var(--h);box-shadow:inset 0 0 0 1px rgba(43,35,30,.14);transition:box-shadow .2s,transform .2s}
.sw:hover i{transform:translateY(-2px)}
.sw[aria-pressed=true]{color:var(--ink)}
.sw[aria-pressed=true] i{box-shadow:inset 0 0 0 1px rgba(43,35,30,.14),0 0 0 3px var(--c),0 0 0 4.5px var(--ink)}
.index .ctas{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.index-plate{position:relative;margin:0;min-height:520px}
.index-plate img{position:absolute;left:0;right:0;bottom:-2%;margin:auto;width:100%;height:96%;object-fit:contain;object-position:50% 100%;
  filter:drop-shadow(0 18px 28px rgba(40,34,24,.16));transition:opacity .6s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.index-plate img.in{opacity:0;transform:translateY(18px) scale(.985)}
.index-plate img.out{opacity:0;transform:translateY(-6px)}
.index-plate figcaption{position:absolute;right:0;bottom:22px;font:italic 400 14px/1.3 var(--serif);color:var(--ink-2);background:var(--c);padding:3px 0 3px 10px;transition:background-color .7s ease}
@media (max-width:900px){
  .index-in{grid-template-columns:1fr;gap:0;min-height:0}
  .index-text{padding:44px 0 8px;display:contents}
  .index h1{grid-row:1;margin:44px 0 18px;max-width:none;font-size:clamp(46px,12.5vw,72px)}
  .index-plate{grid-row:2;min-height:0;height:min(92vw,460px)}
  .index-now{grid-row:3;min-height:0;padding-top:18px}
  .swatches{grid-row:4;margin:22px 0 26px}
  .index .ctas{grid-row:5;margin-bottom:44px}
  .index-plate img{bottom:0;height:100%}
  .index-plate figcaption{bottom:6px}
  .index-colour{font-size:21px}
}
@media (max-width:420px){.swatches{flex-wrap:nowrap;gap:0;justify-content:space-between}.sw i{width:31px;height:31px}.sw{padding:4px 0;font-size:11px;gap:6px;flex:1;min-width:0}}

/* sections */
.section{padding:104px 0}
.section+.section{padding-top:24px}
.section.bundles+.section,.section+.section.bundles{padding-top:104px}
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px 30px;margin:0 0 36px;flex-wrap:wrap}
.section-head h2{margin:0}
.section-head p{margin:0;color:var(--ink-2);max-width:46ch}
@media (max-width:620px){.section{padding:68px 0}.section-head{margin-bottom:24px}}
.cols{display:grid;gap:22px}
.cols.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cols.c3{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 26px}
@media (max-width:980px){.cols.c4{grid-template-columns:repeat(2,minmax(0,1fr))}.cols.c3{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.cols.c3{grid-template-columns:1fr}}

/* collections, set like the contents page of a flower book */
.contents{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.contents li{border-bottom:1px solid var(--line)}
.contents a{display:grid;grid-template-columns:132px minmax(0,1.25fr) minmax(0,1fr) 110px;align-items:center;gap:30px;padding:14px 18px 14px 6px;text-decoration:none;color:var(--ink);transition:background-color .35s}
.contents a:hover{background:var(--c);color:var(--ink)}
.contents .pl{display:block;height:124px}
.contents .pl img{width:100%;height:100%;object-fit:contain;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.contents a:hover .pl img{transform:scale(1.06) rotate(-2deg)}
.contents .nm{font:400 clamp(26px,2.8vw,38px)/1.05 var(--display);letter-spacing:-.01em}
.contents .mn{font:400 17px/1.4 var(--serif);color:var(--ink-2)}
.contents .ct{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:right}
@media (max-width:760px){
  .contents a{grid-template-columns:84px minmax(0,1fr);gap:4px 18px;padding:12px 4px}
  .contents .pl{grid-row:span 2;height:96px}
  .contents .nm{align-self:end}
  .contents .mn{align-self:start;font-size:15px}
  .contents .ct{display:none}
}

/* product tiles */
.tile{display:block;text-decoration:none;color:var(--ink);min-width:0}
.tile .im{display:block;overflow:hidden;border-radius:var(--r);background:var(--soft)}
.tile img{display:block;width:100%;aspect-ratio:1;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.tile:hover img{transform:scale(1.03)}
.tile .t{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0 4px}
.tile .t b{font:400 20px/1.25 var(--serif);letter-spacing:0}
.tile .pr{font-size:15px;white-space:nowrap}
.tile .pr del{color:var(--muted);margin-right:6px}
.tile .pr ins{text-decoration:none}
.tile:hover{color:var(--ink)}
.lof-tag{display:inline-flex;align-items:center;gap:8px;font:400 14.5px/1.3 var(--serif);color:var(--ink-2)}
.lof-tag i{display:block;width:9px;height:9px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(43,35,30,.2)}
.promise{list-style:none;margin:72px 0 0;padding:26px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:30px;font-size:15px;color:var(--ink-2)}
.promise b{color:var(--ink);font-weight:600}
@media (max-width:760px){.promise{grid-template-columns:1fr;gap:12px;margin-top:48px}}

/* bundles */
.bundles{background:var(--c)}
.bundle-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.bundle-img img{display:block;width:100%;border-radius:var(--r);box-shadow:0 30px 60px -30px rgba(40,34,24,.35)}
.bundles h2{margin:0 0 10px}
.bundle-sub{color:var(--ink-2);max-width:40ch;margin:0 0 30px}
.bundle-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(43,35,30,.35)}
.bundle-list a{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid rgba(43,35,30,.18);text-decoration:none;color:var(--ink)}
.bundle-list .nm{font:400 21px/1.25 var(--serif)}
.bundle-list a:hover .nm{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.bundle-list .pr{font-size:15px;white-space:nowrap}
.bundle-list .pr del{opacity:.6;margin-right:6px}
.bundle-list .pr ins{text-decoration:none;font-weight:600}
@media (max-width:860px){.bundle-in{grid-template-columns:1fr;gap:36px}}

/* guides */
.guides{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.guides a{display:block;padding:24px 0 28px;border-top:1px solid var(--ink);text-decoration:none;color:var(--ink)}
.guides b{display:block;font:400 23px/1.25 var(--serif);letter-spacing:0;font-weight:400;margin:0 0 8px}
.guides span{font-size:15px;color:var(--ink-2)}
.guides a:hover b{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
@media (max-width:760px){.guides{grid-template-columns:1fr}}
.post-card{display:block;text-decoration:none;color:var(--ink);padding:24px 0 28px;border-top:1px solid var(--ink);height:100%}
.post-card b{display:block;font:400 22px/1.25 var(--serif);margin:0 0 10px}
.post-card span{color:var(--ink-2);font-size:15px}
.post-card:hover b{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}

/* plate chips (collection heads, small uses) */
.chip{--c:#EDE6DA;position:relative;display:flex;flex-direction:column;gap:2px;background:var(--c);color:var(--ink);text-decoration:none;padding:16px;border-radius:var(--r);min-width:0}
.chip .pl{display:block;position:relative;aspect-ratio:1/1.1;margin:0 0 10px}
.chip .pl img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.chip .nm{font:400 19px/1.2 var(--serif)}
.chip .lt,.chip .mn{font:italic 400 14px/1.35 var(--serif);color:var(--ink-2)}
.chip .ct{font-size:13px;margin-top:8px;color:var(--ink-2)}
.strip{display:flex;height:10px}.strip span{flex:1}

/* small hero (404) */
.hero.small{padding:110px 0 120px;text-align:center}
.hero.small h1{font-size:clamp(44px,6vw,80px)}
.hero.small .sub{color:var(--ink-2);font-size:18px;max-width:40ch}
.hero.small .ctas{display:flex;gap:12px;flex-wrap:wrap}

/* content */
.page-head{padding:76px 0 14px;text-align:center}
.page-head .kicker{display:block;margin-bottom:16px}
.page-head h1{max-width:18ch;margin-left:auto;margin-right:auto}
.page-head p.lede{font:400 20px/1.5 var(--serif);color:var(--ink-2);max-width:620px;margin:14px auto 0}
.entry{padding:28px 0 90px;font-size:17px;line-height:1.72}
.entry>*{max-width:var(--text);margin-left:auto;margin-right:auto}
.entry>.alignwide,.entry>.wp-block-html,.entry>div,.entry>iframe,.entry>figure.alignwide,.entry>.wp-block-group.alignfull{max-width:none}
.entry>.alignfull{max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.entry h2{font-size:clamp(28px,3vw,38px);margin-top:1.7em}
.entry h3{font-size:23px}
.entry ul,.entry ol{padding-left:1.3em}
.entry li{margin:0 0 .45em}
.entry table{width:100%;border-collapse:collapse;font-size:15px;margin:0 auto 1.6em;background:var(--card)}
.entry th{font:600 13px/1.4 var(--sans);color:var(--ink);background:var(--soft);text-align:left;padding:12px 14px;border-bottom:1px solid var(--ink)}
.entry td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.entry blockquote{font:italic 400 22px/1.55 var(--serif);border-left:2px solid var(--ink);margin:1.6em auto;padding:0 0 0 22px;color:var(--ink-2)}
.meta-line{font-size:13px;color:var(--muted);text-align:center;margin-top:14px}
.lof-cta{background:var(--soft);border-radius:var(--r);padding:30px 32px;margin:2.4em auto!important;border-left:3px solid var(--leaf)}
.lof-cta p{margin:0 0 .7em}
.lof-cta .lof-cta-k{font:italic 400 16px/1.3 var(--serif);color:var(--ink-2)}
.lof-cta .lof-cta-t{font:400 24px/1.25 var(--serif);color:var(--ink)}
.lof-cta p:last-child{margin:1em 0 0}
.related{border-top:1px solid var(--line);padding:64px 0}
.pagination{display:flex;gap:8px;justify-content:center;margin:30px 0}
.pagination .page-numbers{padding:9px 14px;border-radius:var(--r);text-decoration:none;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);font-size:14px}
.pagination .current{background:var(--ink);color:var(--paper)}

/* ang bao calculator */
.abc,.entry>.abc{background:var(--soft);border-radius:var(--r);padding:28px 30px 26px;margin:2em auto!important;max-width:var(--text)}
.abc-h{font:italic 400 20px/1.2 var(--serif);margin:0 0 18px}
.abc fieldset{border:0;margin:0 0 16px;padding:0}
.abc legend{font:600 14px/1.3 var(--sans);color:var(--ink);margin:0 0 8px;padding:0}
.abc-pills{display:flex;flex-wrap:wrap;gap:8px}
.abc-pills label{cursor:pointer}
.abc-pills input{position:absolute;opacity:0;width:1px;height:1px}
.abc-pills span{display:inline-block;font:500 14px/1 var(--sans);padding:10px 14px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px rgba(43,35,30,.18);transition:background .15s,color .15s}
.abc-pills input:checked+span{background:var(--ink);color:var(--paper);box-shadow:none}
.abc-pills input:focus-visible+span{outline:2px solid var(--leaf);outline-offset:2px}
.abc-out{border-top:1px solid rgba(43,35,30,.18);margin-top:8px;padding-top:18px;display:flex;flex-direction:column;gap:6px}
.abc-k{font:italic 400 17px/1.2 var(--serif);color:var(--ink-2)}
.abc-amt{font:400 clamp(44px,6vw,64px)/1 var(--display);letter-spacing:-.01em}
.abc-note{font-size:14px;line-height:1.5;color:var(--ink-2)}
@media (max-width:520px){.abc,.entry>.abc{padding:22px 18px}}
.entry .sources{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:2.4em}
.entry .sources a{color:var(--muted)}
.sg-hub,.entry>.sg-hub{max-width:var(--text);display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin:1.6em auto 2em!important}
.sg-hub a{display:block;padding:18px 0 20px;border-top:1px solid var(--ink);text-decoration:none;color:var(--ink)}
.sg-hub b{display:block;font:400 21px/1.25 var(--serif);margin:0 0 6px}
.sg-hub span{font-size:15px;color:var(--ink-2)}
.sg-hub a:hover b{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
@media (max-width:620px){.sg-hub{grid-template-columns:1fr}}
.entry td small{color:var(--muted);font-size:13px}
.entry td [lang|=zh]{white-space:nowrap}
.entry [lang|=zh]{font-family:"PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",sans-serif}

/* footer */
.site-footer{background:var(--soft);color:var(--ink-2);padding:80px 0 34px;font-size:15px;margin-top:0}
.site-footer a{color:var(--ink);text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .9fr;gap:40px;align-items:start}
.foot-brand .brand{font-size:19px}
.foot-brand .brand-tag{display:block;font:italic 400 15px/1.3 var(--serif);color:var(--muted);margin-top:10px}
.foot-brand p{margin:18px 0 0;max-width:34ch}
.foot-grid h4{font:600 12.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:8px 0 18px}
.foot-grid ul{list-style:none;margin:0;padding:0}
.foot-grid li{margin:0 0 10px}
.foot-plate{align-self:end;justify-self:end}
.foot-plate img{display:block;max-height:240px;width:auto;opacity:.9}
.copy{border-top:1px solid var(--line);margin-top:56px;padding-top:22px;color:var(--muted);font-size:13px;line-height:1.6}
.copy p{margin:0 0 4px}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}.foot-plate{display:none}}

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb{font:400 13px/1.4 var(--sans);color:var(--muted);margin:26px 0 0}
.woocommerce .woocommerce-breadcrumb a{color:var(--muted);text-decoration:none}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--ink)}
.shop-head{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:end;padding:64px 0 0;margin-bottom:48px;border-bottom:1px solid var(--line)}
.shop-head[style]{background:var(--c);box-shadow:0 0 0 100vmax var(--c);clip-path:inset(0 -100vmax);border-bottom:0;padding-top:56px}
.shop-head>div{padding-bottom:44px}
.shop-head.plain{grid-template-columns:1fr}
.shop-flower{font:italic 400 18px/1.3 var(--serif);color:var(--wine);margin:0 0 14px}
.shop-head h1{margin:0 0 16px;font-size:clamp(42px,5.4vw,76px);line-height:1;letter-spacing:-.015em}
.shop-head .term-description,.shop-head .term-description p{font-size:17px;line-height:1.6;color:var(--ink-2);max-width:56ch;margin:0}
.shop-plate{align-self:end;height:300px}
.shop-plate img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 14px 22px rgba(40,34,24,.14))}
@media (max-width:760px){.shop-head{grid-template-columns:1fr 110px;gap:16px;padding-top:36px}.shop-head>div{padding-bottom:28px}.shop-plate{height:150px;align-self:center}}
.coll-nav{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 0}
.coll-nav a{display:inline-flex;align-items:center;gap:8px;font:500 14px/1 var(--sans);color:var(--ink);text-decoration:none;padding:10px 15px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(43,35,30,.22);background:rgba(255,253,248,.6)}
.coll-nav a i{display:block;width:9px;height:9px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(43,35,30,.2)}
.coll-nav a.on,.coll-nav a:hover{background:var(--ink);color:var(--paper);box-shadow:none}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-size:14px;color:var(--muted);margin-bottom:26px}
.woocommerce .woocommerce-ordering select{font-size:14px;padding:9px 12px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 26px;margin:0 0 60px!important;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;text-align:left;background:transparent;position:relative}
@media (max-width:980px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 18px}}
@media (max-width:520px){.woocommerce ul.products{grid-template-columns:1fr}}
.woocommerce ul.products li.product a img{border-radius:var(--r);margin:0 0 16px!important;aspect-ratio:1;object-fit:cover;background:var(--soft);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;text-decoration:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:400 20px/1.25 var(--serif)!important;letter-spacing:0;color:var(--ink);padding:0!important;margin:6px 0 6px!important}
.woocommerce ul.products li.product .price{font:400 15px/1 var(--sans)!important;color:var(--ink)!important;margin:6px 0 0!important;display:block}
.woocommerce ul.products li.product .price del{color:var(--muted);opacity:1;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none;font-weight:600}
.woocommerce ul.products li.product .button{display:none!important}
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{background:var(--paper)!important;color:var(--ink)!important;font:600 12px/1 var(--sans)!important;letter-spacing:0;border-radius:999px!important;min-width:0!important;min-height:0!important;padding:8px 12px!important;top:12px!important;left:12px!important;right:auto!important;margin:0!important;line-height:1!important}
.lof-fmt{display:block;font:400 14px/1.4 var(--sans);color:var(--muted);margin-top:4px}
/* single product */
.woocommerce div.product{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;padding:22px 0 30px;align-items:start}
.woocommerce div.product::before,.woocommerce div.product::after{display:none}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.summary{position:sticky;top:100px}
.woocommerce div.product div.images img{border-radius:var(--r);background:var(--soft)}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;margin-top:12px!important}
.woocommerce div.product div.images .flex-control-thumbs li{width:84px!important;float:none!important}
.woocommerce div.product div.images .flex-control-thumbs li img{border-radius:var(--r)}
.woocommerce div.product .product_title{font-size:clamp(36px,4vw,56px);line-height:1.04;letter-spacing:-.015em;margin:4px 0 20px}
.woocommerce div.product p.price{font:400 24px/1 var(--sans)!important;color:var(--ink)!important;margin:0 0 22px}
.woocommerce div.product p.price del{color:var(--muted)}
.woocommerce div.product p.price ins{text-decoration:none;font-weight:600}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:16.5px;color:var(--ink-2)}
.woocommerce div.product .woocommerce-product-details__short-description ul{padding-left:1.2em}
.woocommerce div.product form.cart{margin:28px 0 16px!important}
.woocommerce div.product form.cart .button{width:100%;padding:20px 24px!important;font-size:16px!important}
.woocommerce div.product .quantity{display:none!important}
.lof-pressed{display:flex;align-items:center;gap:16px;background:var(--c,#EDE6DA);border-radius:var(--r);padding:12px 20px 12px 12px;margin:0 0 22px}
.lof-pressed img{width:64px;height:64px;object-fit:contain;flex:none}
.lof-pressed .nm{display:block;font:400 18px/1.25 var(--serif)}
.lof-pressed .mn{display:block;font:400 15px/1.35 var(--serif);color:var(--ink-2)}
.lof-assure{list-style:none;padding:18px 0 0!important;margin:0;border-top:1px solid var(--line);font-size:15px;color:var(--ink-2)}
.lof-assure li{padding-left:24px;position:relative;margin:0 0 8px}
.lof-assure li::before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:6px;border-left:1.5px solid var(--leaf);border-bottom:1.5px solid var(--leaf);transform:rotate(-45deg)}
.woocommerce div.product .product_meta{font-size:13px;color:var(--muted);margin-top:18px}
.woocommerce div.product .product_meta a{color:var(--muted)}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:36px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 30px!important;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;border-radius:0!important;margin:0 26px 0 0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font:500 15px var(--sans)!important;color:var(--muted)!important;padding:14px 0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important;box-shadow:inset 0 -2px 0 var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:var(--text);font-size:16.5px}
.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{display:none}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:30px}
.woocommerce .related.products,.woocommerce .upsells.products{grid-column:1/-1;margin-top:56px}
.woocommerce .related.products>h2,.woocommerce .upsells.products>h2{font-size:36px;margin:0 0 30px}
@media (max-width:860px){.woocommerce div.product{grid-template-columns:1fr;gap:28px}.woocommerce div.product div.summary{position:static}}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--leaf)!important;background:var(--card)!important;border-radius:var(--r);font-size:15px}
.woocommerce-message::before,.woocommerce-info::before{color:var(--leaf)!important}
.woocommerce table.shop_table{border-radius:var(--r)!important;background:var(--card)}
.wc-block-components-product-name{font-family:var(--serif);font-size:17px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:8px 0;text-decoration:none;color:var(--ink)}
.store-main{padding-bottom:70px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
