/* Flowerstoday visual identity: sage, warm ivory and terracotta. */
:root{--brand-sage:#466750;--brand-coral:#c68c75}
html[data-theme=light]{--accent:#466750;--accent-text:#fff;--page:#faf7f1;--surface:#fffdf9;--input:#f5f1e8}
html[data-theme=dark]{--accent:#e3cfab;--accent-text:#17291f;--page:#111c16;--surface:#1a2b21;--input:#132219}
.brand-logo{object-fit:contain}.hero-eyebrow{letter-spacing:.12em}
html[data-theme=light] .subscription-cta,html[data-theme=light] .subscription-frequency-options input:checked+span{background:#466750}
html[data-theme=light] .tracking-brand img{filter:none}
.tracking-brand img{object-fit:contain}
.site-header::before{background-image:none!important;background-color:var(--surface,#183025)!important}
.site-header .brand img.brand-logo{width:100%!important;max-width:100%!important;object-fit:contain!important}
html[data-theme=light] .hero-title{color:#264a36!important;text-shadow:0 1px 12px #ffffff99!important}
html[data-theme=dark] .hero-title{color:#f1e6d4!important}
.site-footer img{content:url('/flowerstoday-logo-dark.svg');width:190px;height:auto;object-fit:contain}
html[data-theme=light] .site-footer img{content:url('/flowerstoday-logo-light.svg')}
.hero-content{z-index:3!important}.hero-content .hero-eyebrow{color:var(--brand-sage)}
.hero-content .hero-title{font-family:Georgia,"Times New Roman",serif!important;font-weight:400!important;font-size:clamp(42px,4.7vw,68px);line-height:1.12;letter-spacing:-.035em}
html[data-theme=light] .hero-title{text-shadow:none!important;color:#173a29!important}
@media(max-width:760px){.hero-content .hero-title{font-size:30px!important;line-height:1.22!important}}
.hero{isolation:isolate}.hero-media{z-index:0!important}.hero-content{z-index:10!important}

/* One palette across the storefront, checkout, subscriptions and receipts. */
html[data-theme=light]{
  --brand-sage:#46634c;--brand-coral:#b77e68;
  --page:#f3ecdf;--page-bg:var(--page);--page-bg-secondary:#eae1d1;
  --surface:#fcf7ee;--surface-secondary:#eee6d8;--surface-soft:var(--surface-secondary);--surface-hover:#e5dccb;
  --text:#293b30;--text-primary:var(--text);--text-secondary:#596153;--text-muted:#6f7163;--muted:var(--text-secondary);
  --accent:#46634c;--accent-hover:#36523c;--accent-active:#2c4432;--accent-text:#fffaf1;
  --accent-soft:#e4e6d7;--accent-soft-hover:#d9deca;--accent-line:#9ca58c;
  --border:#d6cbb8;--border-strong:#b4ad94;--line:var(--border);
  --input:#f8f2e7;--input-bg:var(--input);--input-bg-focus:#fffaf2;--input-text:var(--text);
  --placeholder:#727365;--placeholder-color:var(--placeholder);
  --ink:var(--text);--ivory:var(--text);--forest:var(--accent);--forest-2:var(--surface-secondary);--moss:var(--muted);--stone:var(--accent);--wine:#965b54;
  --header-bg:#f3ecdf;--overlay:#242d256b;--theme-shadow:0 12px 35px #56432c0c;--focus-ring:0 0 0 3px #46634c25;
}
html[data-theme=dark]{
  --brand-sage:#b9c7a4;--brand-coral:#d49b80;
  --page:#142019;--page-bg:var(--page);--page-bg-secondary:#1b2a20;
  --surface:#203025;--surface-secondary:#19261d;--surface-soft:var(--surface-secondary);--surface-hover:#2c3d2e;
  --text:#f3ead9;--text-primary:var(--text);--text-secondary:#c2c6b4;--text-muted:#a9b09c;--muted:var(--text-secondary);
  --accent:#dbc39b;--accent-hover:#ead6b4;--accent-active:#cdb184;--accent-text:#203025;
  --accent-soft:#dbc39b16;--accent-soft-hover:#dbc39b25;--accent-line:#a29473;
  --border:#3d4c3c;--border-strong:#69745a;--line:var(--border);
  --input:#19261d;--input-bg:var(--input);--input-bg-focus:#24362a;--input-text:var(--text);
  --placeholder:#a4ad98;--placeholder-color:var(--placeholder);
  --ink:#142019;--ivory:var(--text);--forest:#304c39;--forest-2:var(--surface-secondary);--moss:var(--muted);--stone:#dbc39b;--wine:#d69d92;
  --header-bg:#1b2a20;--overlay:#080f0bd4;--theme-shadow:0 16px 44px #00000025;--focus-ring:0 0 0 3px #dbc39b30;
}
html[data-theme]{
  --button-accent:var(--accent);--button-accent-hover:var(--accent-hover);
  --label:var(--text-secondary);--label-strong:var(--text-primary);--label-color:var(--label);--label-color-strong:var(--label-strong);
  --promo-light-title:var(--text-primary);--promo-light-copy:var(--text-secondary);--gold-light-theme:var(--accent);
}
html[data-theme] body{color:var(--text);background:var(--page)}
html[data-theme] .site-header{background:var(--header-bg);border-color:var(--border)}
html[data-theme] :is(.site-header .main-nav,.site-search,.theme-menu,.custom-select-menu,.cookie-banner){background:var(--surface);border-color:var(--border);color:var(--text)}
html[data-theme] :is(.product-card,.order-form,.cart-card,.category-tile,.service article,.about-fact,.about-link-card,.promo-card,.legal-content,.legal-hero,.payment-card){background:var(--surface);border-color:var(--border);box-shadow:var(--theme-shadow)}
html[data-theme] :is(.product-card,.about-link-card,.about-fact):hover{background:var(--surface);border-color:var(--border-strong);box-shadow:var(--theme-shadow)}
html[data-theme] :is(.site-footer,.tracking-footer){background:var(--page);border-color:var(--border);color:var(--muted)}
html[data-theme] :is(.eyebrow,.hero-eyebrow,.pickup-info span,.checkout-eyebrow,.back){color:var(--accent)}
html[data-theme] .hero-content .hero-title{color:var(--text)!important}
html[data-theme] .hero-media{background:var(--surface);border-color:var(--border);box-shadow:var(--theme-shadow)}
html[data-theme=light] .hero-media::before{background:radial-gradient(circle at 78% 22%,#b9a47730,transparent 28rem)}
html[data-theme=light] .hero-media::after{background:linear-gradient(90deg,#f3ecdfad,#f3ecdf61 48%,#f3ecdf14),linear-gradient(0deg,#f3ecdf75,#f3ecdf0a 60%),linear-gradient(180deg,#f3ecdf29,transparent 32%)}
html[data-theme=dark] .hero-media::after{background:linear-gradient(90deg,#142019d6,#14201975 48%,#14201914),linear-gradient(0deg,#142019ad,transparent 65%)}
html[data-theme] :is(.product-gallery,.subscription-plan-image){background:radial-gradient(ellipse at 50% 45%,var(--accent-soft),transparent 75%),var(--input)}
html[data-theme] :is(.button,.filters button,.product-bottom button,.subscription-retry){background:var(--surface-secondary);color:var(--text);border-color:var(--border)}
html[data-theme] :is(.button.primary,.product-bottom button.has-items,.product-bottom button.added,.filters .active,.promo-cart-button:not(:disabled),.subscription-cta,.tracking-primary){background:var(--accent);border-color:var(--accent);color:var(--accent-text);box-shadow:none}
html[data-theme] :is(.button.primary,.product-bottom button.has-items,.filters .active,.subscription-cta,.tracking-primary):hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-text)}
html[data-theme] .section-heading .button.ghost[href*="tag=all"]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
html[data-theme] :is(.about-icon,.about-link-logo,.card-suggestions button,.cart-addon-card,.cart-addons,.pickup-info,.checkout-bottom){background:var(--surface-secondary);color:var(--text-secondary);border-color:var(--border)}
html[data-theme] :is(.cart-addon-card.is-selected,.card-suggestions button:hover){background:var(--accent-soft);border-color:var(--accent-line)}
html[data-theme] :is(.order-form,.cart-order-form,.site-search,.checkout-wizard) :is(input:not([type=checkbox]):not([type=radio]),textarea,select,.custom-select-button){background:var(--input-bg);color:var(--input-text);border-color:var(--border)}
html[data-theme] :is(input,textarea)::placeholder{color:var(--placeholder-color)}
html[data-theme] :is(.order-form,.cart-order-form,.site-search) :is(label,label span,legend),html[data-theme] #custom .order-form :is(label,label span,legend),html[data-theme] #order .order-form :is(label,label span,legend){color:var(--text-secondary)}
html[data-theme] #promotions .promo-card :is(h3,p,span){color:var(--text-primary)}
html[data-theme] :is(.custom-select-menu button:hover,.custom-select-menu .selected){background:var(--accent-soft);color:var(--text)}
html[data-theme] :is(.fulfillment-switch,.cart-fulfillment-switch){--segmented-active-bg:var(--accent);--segmented-active-fg:var(--accent-text);background:var(--input);border-color:var(--border)}
html[data-theme] .fulfillment-switch label:has(input:checked){background:var(--accent);color:var(--accent-text)}
html[data-theme] .fulfillment-switch::before{background:var(--accent)}
html[data-theme] .cart-drawer.open{background:var(--overlay)}
html[data-theme] :is(.checkout-progress button,.checkout-step-count,.checkout-step-intro,.review-detail dt,.checkout-total-note,.cart-item-note){color:var(--muted)}
html[data-theme] :is(.review-detail dd,.checkout-flow .building-choice>span,.checkout-more-gifts summary,.checkout-basket summary){color:var(--text)}
html[data-theme] :is(.checkout-progress button[aria-current=step],.checkout-inline-link,.review-section header button,.card-suggestions button span,.building-choice svg){color:var(--accent)}
html[data-theme] .checkout-progress button[aria-current=step]>span,html[data-theme] .checkout-progress button.is-complete>span{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}
html[data-theme] .checkout-flow :is(.building-choice,.noon-options) input:checked+span{background:var(--accent-soft);border-color:var(--accent-line)}
html[data-theme] .subscription-frequency-options input:checked+span{background:var(--accent);color:var(--accent-text)}
html[data-theme] .membership-consent input{accent-color:var(--accent)}
html[data-theme] .order-receipt{background:var(--accent-soft);border-color:var(--accent)}
html[data-theme] .payment-card .button:not(.secondary){background:var(--accent);color:var(--accent-text);border-color:var(--accent)}
html[data-theme] .payment-card .button.secondary{background:var(--surface-secondary);color:var(--text);border-color:var(--border)}
html[data-theme=dark] .payment-card .logo{content:url('/flowerstoday-logo-dark.svg')}
html[data-theme] .support-chat{--chat-bg:var(--surface);--chat-text:var(--text);--chat-muted:var(--muted);--chat-line:var(--border);--chat-accent:var(--accent)}
/* Legacy drawers use important backgrounds; keep them on the same surface. */
html[data-theme] .cart-card{background:var(--surface)!important}
html[data-theme] #custom .custom-checkout{background:var(--surface);border-color:var(--border)}
html[data-theme] .cart-item-note textarea{background:var(--input);color:var(--text);border-color:var(--border)}
html[data-theme] .checkout-wizard .checkout-message select{background:var(--input);color:var(--text);border-color:var(--border)}
html[data-theme] .header-subscription-link svg{color:var(--accent)}

/* The horizontal wordmark already contains the store name. */
.site-footer>div:first-child{min-width:0}
.site-footer>div:first-child>p{display:none}
.site-footer>div:first-child>img{display:block;flex:none;width:190px;max-width:100%;height:auto;aspect-ratio:1000/320;border-radius:0;object-fit:contain}
.site-footer .footer-contacts{min-width:0}

/* Theme-specific botanical header artwork, below all interactive controls. */
html[data-theme=light]{--flowerstoday-header-art:url('/flowerstoday-header-light-v2.webp');--flowerstoday-header-tint:linear-gradient(#fcf7ee40,#fcf7ee40)}
html[data-theme=dark]{--flowerstoday-header-art:url('/flowerstoday-header-dark.webp');--flowerstoday-header-tint:linear-gradient(#14201930,#14201930)}
html[data-theme] .site-header::before{background-image:var(--flowerstoday-header-tint),var(--flowerstoday-header-art)!important;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:1!important}
