.f-main { padding-bottom: 0; }
:root {
  --f-bg:#fffbf4;
  --f-paper:#ffffff;
  --f-ink:#2d2340;
  --f-muted:#6b5e7a;
  --f-line:#f0d9e2;
  --f-soft:#fde8ef;
  --f-accent:#e8638a;
  --f-green:#3d9142;
  --f-green-soft:#e8f5e9;
  --f-yellow:#ffd166;
  --f-navy:#1a1f3a;
  --f-shadow:0 12px 36px rgba(45,35,64,.12);
}
* { box-sizing:border-box; }
html { overflow-x:hidden; }
body { margin:0; background:var(--f-bg); color:var(--f-ink); font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
a:hover { text-decoration:underline; }
.f-container { width:min(1180px,calc(100% - 32px)); margin-inline:auto; }
.skip-link { position:absolute; left:-9999px; }
.skip-link:focus { left:12px; top:12px; z-index:40; padding:8px 12px; background:#fff; }
.f-header { position:sticky; top:0; z-index:30; border-bottom:2px solid #f7aac1; background:rgba(255,251,244,.95); backdrop-filter:blur(14px); }
.f-header__inner { display:flex; align-items:center; min-height:68px; gap:28px; }
.f-logo { color:var(--f-accent); font-family:Georgia,"Songti SC",serif; font-size:1.28rem; font-weight:800; letter-spacing:.12em; white-space:nowrap; }
.f-nav { display:flex; flex:1; align-items:center; gap:22px; }
.f-nav a { color:var(--f-muted); font-size:.88rem; }
.f-header__actions { display:flex; align-items:center; gap:12px; color:var(--f-muted); font-size:.82rem; }
.f-menu { display:none; padding:8px; border:0; background:transparent; }
.f-menu span { display:block; width:22px; height:2px; margin:4px; background: #b44d6a; }

/* flower-shop-2: pastel split opening with a soft copy field and tiled floral art. */
.f-pastel-opening { position:relative; display:grid; grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr); grid-template-areas:"copy visual"; min-height:650px; overflow:hidden; background:linear-gradient(135deg,#fde8ef 0,#fff8e1 54%,#e8f5e9 100%); }
.f-pastel-opening::before,.f-pastel-opening::after { content:""; position:absolute; border-radius:50%; pointer-events:none; }
.f-pastel-opening::before { left:-140px; bottom:-210px; width:430px; height:430px; background:rgba(123,198,126,.16); }
.f-pastel-opening::after { right:-120px; top:-180px; width:470px; height:470px; background:rgba(249,168,192,.2); }
.f-pastel-opening .f-front-carousel { position:relative; z-index:2; grid-area:visual; align-self:center; width:calc(100% - 64px); margin:42px 42px 42px 22px; background:transparent; }
.f-front-carousel__viewport { position:relative; min-height:480px; overflow:hidden; border-radius:28px; box-shadow:var(--f-shadow); }
.f-front-carousel__slide { position:absolute; inset:0; display:block; }
.f-front-carousel__slide[hidden] { display:none; }
.f-front-carousel__slide img { display:block; width:100%; height:100%; object-fit:cover; }
.f-front-carousel__control { position:absolute; z-index:5; top:50%; width:38px; height:38px; border:2px solid #fff; border-radius:50%; background: rgba(180,77,106,.62); color:#fff; font-size:1.35rem; transform:translateY(-50%); cursor:pointer; }
.f-front-carousel__control--prev { left:18px; }
.f-front-carousel__control--next { right:18px; }
.f-front-carousel__dots { position:absolute; z-index:5; bottom:20px; left:50%; display:flex; gap:8px; transform:translateX(-50%); }
.f-front-carousel__dots button { width:24px; height:5px; padding:0; border:0; border-radius:10px; background:rgba(255,255,255,.65); cursor:pointer; }
.f-front-carousel__dots button.is-active { background:var(--f-accent); }
.f-pastel-opening .f-hero,.f-pastel-opening .f-region-hero { position:relative; z-index:3; grid-area:copy; display:flex; align-items:center; padding:72px 0; }
.f-pastel-opening .f-hero .f-container,.f-pastel-opening .f-region-hero .f-container { width:min(520px,calc(100% - 72px)); }
.f-eyebrow { display:inline-flex; margin:0 0 20px; padding:7px 13px; border-radius:999px; background:var(--f-yellow); color:var(--f-ink); font-size:.75rem; font-weight:800; letter-spacing:.14em; }
.f-hero h1,.f-region-hero h1 { max-width:530px; margin:0; font-family:Georgia,"Songti SC",serif; font-size:clamp(3rem,5vw,5.6rem); font-weight:700; line-height:1.03; letter-spacing:-.04em; }
.f-hero h1::first-letter,.f-region-hero h1::first-letter { color:var(--f-accent); }
.f-hero .f-container>p:last-child { max-width:480px; margin:24px 0 0; color:var(--f-muted); font-size:1rem; }

.f-section { padding:58px 0; }
.f-section--alt { background:#fef4e8; }
.f-shortcuts { position:relative; z-index:6; margin-top:-34px; padding:0 0 26px; }
.f-home-category-shortcuts__content { padding:20px 24px; border:0; border-radius:18px; background:#fff; box-shadow:var(--f-shadow); }
.f-home-category-shortcuts__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:13px; }
.f-home-category-shortcuts__head h2 { margin:0; font-family:Georgia,"Songti SC",serif; color:var(--f-accent); font-size:1.28rem; }
.f-home-category-shortcuts__head a { color:var(--f-green); font-size:.84rem; font-weight:700; }
.f-category-shortcuts-list { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:9px; }
.f-category-shortcut { display:block; padding:11px 8px; border:1px solid transparent; border-radius:999px; background:var(--f-soft); text-align:center; }
.f-category-shortcut:nth-child(3n+2) { background:var(--f-green-soft); }
.f-category-shortcut:nth-child(3n) { background:#fff8e1; }
.f-category-shortcut:hover { border-color:var(--f-accent); text-decoration:none; }
.f-section-title { display:flex; align-items:center; justify-content:center; gap:13px; margin:0 0 25px; font-family:Georgia,"Songti SC",serif; font-size:1.75rem; }
.f-section-title::before,.f-section-title::after { content:""; width:38px; height:6px; border-radius:999px; background:linear-gradient(90deg,var(--f-accent),var(--f-yellow),var(--f-green)); }
.f-original-product-section:nth-of-type(4n+1) { background:#fff; }
.f-original-product-section:nth-of-type(4n+2) { background:#fef4e8; }
.f-original-product-section:nth-of-type(4n+3) { background:#e8f5e9; }
.f-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.f-product-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:0; border-radius:18px; background:#fff; box-shadow:0 8px 26px rgba(45,35,64,.1); transition:transform .2s ease,box-shadow .2s ease; }
.f-product-card:hover { transform:translateY(-5px); box-shadow:0 15px 34px rgba(45,35,64,.15); }
.f-product-card__image { display:block; aspect-ratio:1/1; overflow:hidden; background:#fde8ef; }
.f-product-card:nth-child(3n+2) .f-product-card__image { background:#e8f5e9; }
.f-product-card:nth-child(3n) .f-product-card__image { background:#fff8e1; }
.f-product-card__image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.f-product-card:hover .f-product-card__image img { transform:scale(1.035); }
.f-product-card__body { display:flex; min-width:0; flex:1; flex-direction:column; padding:15px 16px 18px; }
.f-product-card h3 { margin:0 0 5px; font-size:1rem; line-height:1.4; }
.f-product-card__summary,.f-product-card__selling { display:-webkit-box; overflow:hidden; margin:0 0 6px; color:var(--f-muted); font-size:.83rem; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.f-product-card__selling { color:var(--f-accent); }
.f-product-card__price-row { display:flex; align-items:baseline; gap:8px; margin-top:auto; padding-top:5px; }
.f-price { color:var(--f-accent); font-size:1.14rem; font-weight:800; }
.f-market-price { color:#a897b8; font-size:.8rem; }

.f-three-columns,.f-experience,.f-region-summary { display:grid; gap:20px; }
.f-three-columns { grid-template-columns:repeat(3,minmax(0,1fr)); }
.f-experience,.f-region-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
.f-panel { min-width:0; padding:23px; border:1px solid var(--f-line); border-radius:18px; background:#fff; }
.f-panel h2,.f-panel h3 { margin:0 0 14px; font-family:Georgia,"Songti SC",serif; color:var(--f-ink); }
.f-panel h3 { margin-top:21px; font-size:1rem; }
.f-link-list,.f-order-list,.f-review-list { display:grid; gap:8px; max-height:285px; overflow:auto; }
.f-link-list a,.f-order,.f-review { padding-bottom:8px; border-bottom:1px solid var(--f-line); font-size:.9rem; }
.f-link-list a { display:flex; justify-content:space-between; gap:10px; }
.f-link-list time,.f-order time { color:var(--f-muted); font-size:.76rem; }
.f-review strong { margin-right:8px; }
.f-review span { color:var(--f-yellow); font-size:.8rem; }
.f-review p { margin:4px 0 0; color:var(--f-muted); font-size:.88rem; }
.f-shop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.f-shop-card { position:relative; min-height:150px; padding:25px 22px 20px; border:0; border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(45,35,64,.09); }
.f-shop-card::before { content:""; display:block; width:34px; height:34px; margin-bottom:16px; border-radius:50% 50% 50% 6px; background:var(--f-accent); transform:rotate(-35deg); }
.f-shop-card:nth-child(3n+2)::before { background:var(--f-green); }
.f-shop-card:nth-child(3n)::before { background:var(--f-yellow); }
.f-shop-card p { margin:.35rem 0 0; color:var(--f-muted); font-size:.88rem; }
.f-region-tags { display:flex; flex-wrap:wrap; gap:10px; }
.f-region-tags a { padding:8px 13px; border:1px solid #f7c4d3; border-radius:999px; background:#fff; font-size:.86rem; }
.f-seo-section { padding-top:22px; }
.f-seo-disclosure { padding:25px; border:0; border-radius:20px; background:#fff; }
.f-seo-disclosure summary { color:var(--f-accent); font-weight:800; cursor:pointer; }
.f-richtext { margin-top:14px; color:var(--f-muted); }

/* Full-page flower-shop-2 mapping: numbered ranking, navy voices, pastel store facts and delivery matrix. */
.f-pastel-interlude::before { content:""; display:block; width:min(1180px,calc(100% - 32px)); height:10px; margin:0 auto 34px; border-radius:999px; background:linear-gradient(90deg,transparent,var(--f-accent),var(--f-yellow),var(--f-green),transparent); opacity:.34; }
.f-pastel-rank { background:#fef4e8; }
.f-pastel-rank .f-three-columns { grid-template-columns:1.2fr .9fr .9fr; align-items:start; }
.f-pastel-rank .f-panel { border:0; box-shadow:none; }
.f-pastel-rank .f-link-list { counter-reset:pastel-rank; max-height:none; overflow:visible; }
.f-pastel-rank .f-link-list a { position:relative; min-height:52px; padding:14px 18px 14px 62px; border:0; border-radius:13px; background:#fff; }
.f-pastel-rank .f-link-list a::before { counter-increment:pastel-rank; content:counter(pastel-rank,decimal-leading-zero); position:absolute; left:14px; top:50%; display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:var(--f-soft); color: #4b2f39; font-family:Georgia,serif; font-weight:800; transform:translateY(-50%); }
.f-pastel-rank .f-panel:nth-child(2) .f-link-list a::before { background:var(--f-green-soft); color: #4b2f39; }
.f-pastel-rank .f-panel:nth-child(3) .f-link-list a::before { background:#fff8e1; color: #b44d6a; }
.f-pastel-rank .f-order-list { max-height:230px; }
.f-pastel-voices { background: #b44d6a; color:#fff; }
.f-pastel-voices .f-experience { grid-template-columns:1.35fr .65fr; }
.f-pastel-voices .f-panel { border:1px solid rgba(255,255,255,.12); background:#2d3461; }
.f-pastel-voices .f-panel h2,.f-pastel-voices .f-panel h3 { color:#fff; }
.f-pastel-voices .f-review-list { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none; overflow:visible; }
.f-pastel-voices .f-review { min-height:135px; padding:18px; border:0; border-radius:15px; background:#fff; color:var(--f-ink); }
.f-pastel-voices .f-order { border-color:rgba(255,255,255,.18); }
.f-pastel-voices .f-order time { color:#f9c9d7; }
.f-pastel-delivery { background:#e8f5e9; }
.f-pastel-delivery:not(:has(.f-order)) { display:none; }
.f-pastel-delivery .f-panel { border:0; border-top:6px solid var(--f-green); box-shadow:0 9px 28px rgba(61,145,66,.1); }
.f-pastel-locations { background:#fff; }
.f-pastel-locations:not(:has(.f-shop-card)) { display:none; }
.f-pastel-intro { background:#fde8ef; }
.f-pastel-intro .f-seo-disclosure { display:grid; grid-template-columns:minmax(220px,.36fr) minmax(0,.64fr); gap:36px; align-items:center; padding:44px; }
.f-pastel-intro .f-seo-disclosure::before { content:""; display:block; min-height:210px; border-radius:32px; background:radial-gradient(circle at 30% 28%,#fff 0 9%,transparent 10%),radial-gradient(circle at 68% 62%,#fff8e1 0 16%,transparent 17%),linear-gradient(145deg,#f9a8c0,#7bc67e); box-shadow:inset 0 0 0 12px rgba(255,255,255,.35); }
.f-pastel-regions { background:#fff; }
.f-pastel-regions .f-panel { padding:35px; border:0; background:#fef4e8; }
.f-pastel-regions .f-panel h2 { text-align:center; }
.f-pastel-regions .f-region-tags { justify-content:center; }

.f-footer { padding:38px 0 0; background: #b44d6a; color: #ffffff; }
.f-footer h3 { margin:0 0 8px; font-size:.95rem; }
.f-footer__faq { padding-top:0; }
.f-footer__faq-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; font-size:.84rem; }
.f-footer__faq-list h4 { margin:0 0 8px; color:#f9a8c0; }
.f-footer__faq-list ul { display:grid; gap:5px; margin:0; padding:0; list-style:none; }
.f-footer__faq-list a { color:#fff; }
.f-friends { display:flex; flex-wrap:wrap; gap:12px; padding-top:22px; font-size:.84rem; }
.f-copyright { margin-top:24px; padding:18px 0; border-top:1px solid rgba(255,255,255,.15); color:#c9bdd1; font-size:.8rem; }
.f-mobile-dock { position:fixed; z-index:35; right:0; bottom:0; left:0; display:none; justify-content:space-around; padding:0 4px calc(6px + env(safe-area-inset-bottom)); border-top:1px solid var(--f-line); background:#fff; font-size:.76rem; }
.f-mobile-dock a { display: flex; flex: 1; justify-content:center; align-items:center; min-height:42px; }

@media (max-width:900px) {
  .f-main {  --f-mobile-text-budget:620px; }
  .f-container { width:min(100% - 24px,680px); }
  .f-header__inner { min-height:60px; gap:12px; }
  .f-nav { position:absolute; top:60px; right:12px; left:12px; display:none; flex-direction:column; align-items:stretch; padding:12px; border:1px solid var(--f-line); border-radius:14px; background:#fff; box-shadow:var(--f-shadow); }
  .f-nav.is-open { display:flex; }
  .f-nav a { padding:8px 4px; }
  .f-header__actions>a { display:none; }
  .f-menu { display:block; }
  .f-pastel-opening { display:flex; min-height:0; flex-direction:column; }
  .f-pastel-opening .f-hero,.f-pastel-opening .f-region-hero { order:1; min-height:205px; padding:24px 0 18px; }
  .f-pastel-opening .f-hero .f-container,.f-pastel-opening .f-region-hero .f-container { width:calc(100% - 34px); }
  .f-hero h1,.f-region-hero h1 { font-size:clamp(2rem,10vw,2.9rem); }
  .f-hero .f-container>p:last-child { margin-top:14px; font-size:.88rem; }
  .f-pastel-opening .f-front-carousel { order:2; align-self:stretch; width:auto; margin:0 12px 14px; }
  .f-front-carousel__viewport { min-height:130px; max-height:145px; border-radius:18px; }
  .f-front-carousel__control { width:31px; height:31px; }
  .f-shortcuts { margin-top:0; padding-top:14px; }
  .f-home-category-shortcuts__content { padding:15px; }
  .f-category-shortcuts-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
  .f-category-shortcut { padding:9px 5px; font-size:.82rem; }
  .f-section { padding:38px 0; }
  .f-section-title { margin-bottom:18px; font-size:1.4rem; }
  .f-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .f-product-card { border-radius:14px; }
  .f-product-card__body { padding:10px; }
  .f-product-card h3 { font-size:.91rem; }
  .f-product-card__summary { font-size:.76rem; }
  .f-three-columns,.f-experience,.f-region-summary,.f-shop-grid { grid-template-columns:1fr; }
  .f-pastel-intro .f-seo-disclosure { display:block; padding:22px; }
  .f-pastel-intro .f-seo-disclosure::before { min-height:130px; margin-bottom:18px; }
  .f-footer { padding-bottom:76px; }
  .f-footer__faq-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .f-mobile-dock { display:flex; }
  .f-seo-disclosure:not([open]) .f-richtext { display:none; }

  .f-pastel-rank .f-three-columns,
  .f-pastel-voices .f-experience,
  .f-pastel-delivery .f-region-summary { display:flex; max-height:var(--f-mobile-text-budget); gap:14px; overflow-x:auto; overflow-y:hidden; padding:0 1px 12px; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:thin; }
  .f-pastel-rank .f-panel,
  .f-pastel-voices .f-panel,
  .f-pastel-delivery .f-panel { flex:0 0 min(84vw,330px); max-height:590px; overflow:hidden; scroll-snap-align:start; }
  .f-pastel-rank .f-link-list,
  .f-pastel-rank .f-order-list { max-height:360px; overflow-y:auto; overscroll-behavior:contain; }
  .f-pastel-voices .f-review-list { display:grid; grid-template-columns:1fr; max-height:390px; overflow-y:auto; overscroll-behavior:contain; }
  .f-pastel-voices .f-order-list,
  .f-pastel-delivery .f-order-list { max-height:320px; overflow-y:auto; overscroll-behavior:contain; }
  .f-pastel-regions .f-region-tags { max-height:178px; overflow-y:auto; overscroll-behavior:contain; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
  .f-front-carousel__slide { transition:none!important; }
}
.f-nav__links,.f-nav__primary,.f-nav__secondary,.f-nav__home,.f-nav__catalog,.f-nav__group,.f-nav__inner,.f-nav__pair,.f-nav__collections,.f-nav__list,.f-nav__list li,.f-nav__menu,.f-nav__menu li{display:contents}.f-nav__list,.f-nav__menu{margin:0;padding:0;list-style:none}.f-nav--compact{gap:18px}.f-nav--roomy{gap:34px}.f-nav--framed{gap:18px;padding:6px 12px;border:1px solid var(--f-line);border-radius:999px}.f-nav--underlined a{padding-block:7px;border-bottom:2px solid transparent}.f-nav--underlined a:hover{border-bottom-color:var(--f-accent)}.f-nav--centered{margin-inline:auto}.f-nav--separated{gap:0}.f-nav--separated a{padding-inline:13px}.f-nav--separated a+a{border-left:1px solid var(--f-line)}.f-nav--soft{gap:8px}.f-nav--soft a{padding:6px 11px;border-radius:12px}.f-nav--soft a:hover{background:color-mix(in srgb,var(--f-accent) 12%,transparent)}.f-nav--offset{transform:translateY(4px)}
@media(max-width:900px){.f-nav--compact,.f-nav--roomy,.f-nav--framed,.f-nav--underlined,.f-nav--centered,.f-nav--separated,.f-nav--soft,.f-nav--offset{gap:0;margin:0;padding:15px 24px;border:0;border-radius:0;transform:none}.f-nav--separated a{padding-inline:0}.f-nav--separated a+a{border-left:0}.f-nav--soft a{padding-inline:0;background:transparent}}/* Storefront-owned price labels and phone footer. */.price-current{white-space:nowrap}.price-module{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.price-module>.price-normal,.price-module>.price-holiday{display:inline-flex;align-items:baseline;gap:3px;margin:0;color:inherit;font-size:1em;font-weight:700;line-height:1.25;white-space:nowrap}.price-module>.price-normal>span,.price-module>.price-holiday>span{font-size:.72em;font-weight:600}html.js .price-module{visibility:hidden}html.js .price-module.js-ready{visibility:visible}.price-market{margin-left:8px;text-decoration:line-through;white-space:nowrap}@media(max-width:767px){body>footer{display:none!important}}@media(max-width:520px){.price-module{display:inline-grid;gap:2px}.price-module>.price-normal,.price-module>.price-holiday{display:flex}}
/* 2026-09-22 mobile home/region rhythm normalization. */
@media (max-width:900px) {
  body:has(.f-main > .f-original-product-section) .f-main > .f-section { padding-block:30px; }
  body:has(.f-main > .f-original-product-section) .f-main > .f-shortcuts { margin-top:0; padding-block:16px 20px; }
  body:has(.f-main > .f-original-product-section) .f-original-product-section .f-section-title { margin-bottom:18px; }
  body:has(.f-main > .f-original-product-section) .f-original-product-section .f-product-grid { column-gap:10px; row-gap:12px; }
  body:has(.f-main > .f-original-product-section) .f-main > .f-supporting-content { padding-block:28px; }
  body:has(.f-main > .f-original-product-section) .f-neon-interlude::before { margin-bottom:18px; }
}

/* Regional product-section summary. */
.f-original-product-section .f-section-desc{max-width:760px;margin:-10px 0 24px;color:inherit;opacity:.74;font-size:13px;line-height:1.8;}
@media(max-width:900px){.f-original-product-section .f-section-desc{margin:-7px 0 16px;font-size:11px;line-height:1.7;}}
/* mobile-long-copy-last:22tpl93mm */
@media (max-width:900px) {
  .f-main.f-page-home,
  .f-main.f-page-region {
    display:flex!important;
    flex-direction:column!important;
  }
  .f-main.f-page-home > .f-seo-section,
  .f-main.f-page-region > .f-seo-section {
    order:9999!important;
  }
}
/* mobile-supporting-content-after-products:22tpl93mm */
@media (max-width:900px) {
  .f-main.f-page-home > .f-supporting-content,
  .f-main.f-page-region > .f-supporting-content {
    order:1000!important;
  }

  .f-main.f-page-home > .f-seo-section,
  .f-main.f-page-region > .f-seo-section {
    order:9999!important;
  }
}

/* 2026-09-30 site inspection repairs */
.f-main .f-seo-section{background:#f8f3f5;background-image:none;color:#2d2340;}
.f-main .f-seo-disclosure{background:#fdfcfc;color:#2d2340;border-color:#e2cdd3;text-shadow:none;}
.f-main .f-seo-disclosure summary,.f-main .f-richtext,.f-main .f-richtext p,.f-main .f-richtext a{color:#2d2340;opacity:1;text-shadow:none;}
.f-main .f-richtext{columns:1;column-count:1;}
.f-main .f-trust-content,.f-main .f-panel{background:#f8f3f5;color:#2d2340;}

/* legacy-browser-compat:22tpl93mm:remaining-v1 */
/* Color-mix / modern translucent colors are unsupported in older Chromium. */
@supports not (color: color-mix(in srgb, red 50%, blue)) {
 .f-header{background:#fffbf4!important;background-image:none!important;color:#2d2340!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
 .f-header .f-nav,.f-header .f-nav a,.f-header .f-logo{color:#2d2340!important}
 .f-main .f-seo-section{background:#fffbf4!important;background-image:none!important;color:#2d2340!important}
 .f-main .f-seo-section .f-seo-disclosure{background:#ffffff!important;background-image:none!important;color:#2d2340!important;text-shadow:none!important}
 .f-main .f-seo-section .f-seo-disclosure summary,.f-main .f-seo-section .f-richtext,.f-main .f-seo-section .f-richtext *{color:#2d2340!important;text-shadow:none!important;opacity:1!important}
 .f-footer{background:#b44d6a!important;background-image:none!important;color:#ffffff!important}
 .f-footer h3,.f-footer h4,.f-footer a,.f-footer .f-friends,.f-footer .f-copyright{color:#ffffff!important;opacity:1!important}
}
/* CSS min() arrived later than Grid and Flexbox; keep the page centered. */
@supports not (width: min(100px, 200px)) {
 .f-container{width:calc(100% - 40px)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
 .f-front-carousel{max-width:1180px;margin-left:auto;margin-right:auto}
}
/* Older Chromium ignores inset; pin slides to the entire viewport. */
@supports not (inset: 0) { .f-front-carousel__slide{top:0;right:0;bottom:0;left:0} }
/* CSS variables are unsupported in very old Chromium engines. */
@supports not (--legacy-color: 1) {
 body{background:#fffbf4!important;color:#2d2340!important}
 .f-header{background:#fffbf4!important;color:#2d2340!important}
 .f-main .f-seo-section,.f-main .f-seo-disclosure{background:#ffffff!important;color:#2d2340!important}
 .f-main .f-richtext,.f-main .f-richtext *{color:#2d2340!important}
 .f-footer{background:#b44d6a!important;color:#ffffff!important}
 .f-footer a,.f-footer h3,.f-footer h4,.f-footer .f-copyright{color:#ffffff!important}
}

/* legacy-browser-layout:22tpl93mm:v2 */
/* Keep existing brand-specific width; do not force all themes to 1180px. */
@supports not (width: min(100px, 200px)) {
 .f-container{width:calc(100% - 40px)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
 .f-front-carousel{max-width:1180px!important}
}
@supports not (margin-inline: auto) { .f-container,.f-front-carousel{margin-left:auto!important;margin-right:auto!important} }
@supports not (inset: 0) {
 .f-front-carousel__slide{top:0;right:0;bottom:0;left:0}
}
/* A readable column layout if even CSS Grid is unavailable. */
@supports not (display: grid) {
 .f-product-grid{display:flex;flex-wrap:wrap}
 .f-product-grid > *{width:calc(25% - 20px);flex:none}
 .f-footer__faq-list{display:flex;flex-wrap:wrap}
 .f-footer__faq-list > *{width:calc(25% - 20px)}
 .f-three-columns,.f-experience,.f-region-summary{display:flex;flex-wrap:wrap}
 .f-three-columns > *{width:30%}
 .f-experience > *,.f-region-summary > *{width:47%}
}
@media(max-width:900px){@supports not (display:grid){
 .f-product-grid > *{width:calc(50% - 10px)}
 .f-footer__faq-list > *,.f-three-columns > *,.f-experience > *,.f-region-summary > *{width:100%}
}}
@supports not (font-size: clamp(14px, 2vw, 20px)) {
 .f-hero h1,.f-region-hero h1{font-size:40px}
}

/* homepage-region-pc-headings-banner-gap:20261012-v1 */
/* Product category headings/descriptions align with the product cards, not editorial modules. */
@media screen and (min-width:901px) {
  .f-main .f-original-product-section .f-section-title,
  .f-main .f-original-product-section .f-section-desc {
    text-align:left !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  /* Keep the top carousel/hero group off the header without altering image proportions. */
  .f-main > [class*="-opening"]:first-child,
  .f-main > .f-stage:first-child,
  .f-main > .f-front-carousel:first-child {
    margin-top:14px;
  }
}
@media screen and (max-width:900px) {
  .f-main > [class*="-opening"]:first-child,
  .f-main > .f-stage:first-child,
  .f-main > .f-front-carousel:first-child {
    margin-top:8px;
  }
}