/* Comfortable at 100% zoom: broad screens, readable labels, generous controls. */
:root { --muted:#566457; --gutter:clamp(20px,3.3vw,84px); --page-width:2360px; }
body { font-size:18px; background-color:#f6f1e7; background-image:radial-gradient(ellipse at 92% 14%,#dbe8e4 0,transparent 45%),radial-gradient(ellipse at 2% 37%,#f1dac4 0,transparent 40%),linear-gradient(90deg,#b89e7d12 1px,transparent 1px),linear-gradient(#b89e7d12 1px,transparent 1px); background-size:auto,auto,52px 52px,52px 52px; }
.container,.header-inner,.main-nav,.hero { max-width:var(--page-width); padding-inline:var(--gutter); }
.footer-top,.footer-bottom { max-width:calc(var(--page-width) - 2 * var(--gutter)); }
.site-header { background:#fffdf7f5; }
.header-inner { gap:28px; padding-block:22px; }
.brand small { display:none; }
.brand img { width:48px; height:48px; }
.brand>span { font-size:30px; }
.brand-store { font-size:19px; }
.search-form { max-width:860px; border-color:#a5b2a5; border-radius:12px; }
.search-form input { font-size:18px; padding:16px 20px; }
.search-form button { width:58px; min-height:56px; }
.header-actions { gap:16px; }
.header-actions svg { width:27px; height:27px; }
.cart-trigger { padding:0 16px; background:#e8eee3; border:1px solid #b6c4af; border-radius:12px; font-size:18px; }
.cart-trigger b { width:28px; height:28px; }
.main-nav { gap:16px; padding-bottom:14px; }
.main-nav>div { gap:8px; min-width:0; scrollbar-width:thin; padding-bottom:4px; }
.main-nav a { min-height:50px; padding:10px 15px; border:1px solid #bdc6b5; border-radius:9px; background:#fffefa; font-size:16px; }
.main-nav a:hover { background:#f5dfca; border-color:#bc7653; }
.main-nav .all-products { background:var(--ink); color:white; gap:12px; }
.main-nav .track-link { flex:none; background:transparent; }
.announcement { padding:4px var(--gutter); letter-spacing:.07em; font-size:16px; }
.announcement a { min-height:40px; display:flex; align-items:center; }
button,.button,.pill,.round-button,.icon-button,.wish-button,.view-product,.close-button,
.quantity-control button,.cart-item .quantity-control button { min-width:48px; min-height:48px; }
.button { font-size:17px; padding:15px 23px; border-radius:9px; gap:16px; }
.text-link { min-height:48px; font-size:16px; align-items:center; }
.pill { font-size:16px; padding:11px 19px; background:#fffdf4; }
.round-button,.wish-button,.view-product { width:48px; height:48px; font-size:22px; }
.wish-button svg { width:23px; height:23px; }
.small-label,.eyebrow { font-size:16px; letter-spacing:.12em; }
.hero { padding-top:34px; overflow:visible; }
.hero-layout { grid-template-columns:1fr 1.06fr; min-height:560px; gap:36px; }
.hero h1 { font-size:clamp(52px,4.6vw,100px); max-width:940px; letter-spacing:-.055em; }
.hero-copy { padding:28px 0 36px; }
.hero-copy>p { font-size:20px; max-width:600px; color:#4d5c4c; line-height:1.7; margin-block:24px; }
.hero-meta { font-size:16px; letter-spacing:.03em; }
.hero-actions { gap:24px; flex-wrap:wrap; }
.hero-bottom { font-size:16px; padding:20px 0; flex-wrap:wrap; color:#425442; }
.hero-bottom svg { width:24px; height:24px; }
.showcase { height:520px; margin:0; }
.orbit-back { background:#d8e4d7; width:420px; height:420px; }
.object-card[data-position="0"] { width:clamp(245px,16vw,390px); top:24px; }
.object-card[data-position="1"],.object-card[data-position="2"] { width:clamp(180px,12.7vw,300px); top:112px; }
.object-card[data-position="1"] { right:0; }
.object-card[data-position="2"] { left:0; }
.object-info strong,.object-card[data-position="0"] .object-info strong { font-size:17px!important; line-height:1.45; }
.object-info small { font-size:16px; letter-spacing:.05em; }
.object-info span { font-size:20px; }
.object-card .object-info { padding:14px!important; }
.showcase-tag { display:none; }
.showcase-controls { bottom:-2px; gap:12px; }
.showcase-controls span { font-size:16px; }
.ticker { background:#ebcfae; border-block:1px solid #d1b18f; padding:14px 20px; gap:36px; font-size:16px; }
.section { padding:42px 0; }
.section-heading h2 { font-size:clamp(32px,2.6vw,54px); }
.section-heading p { font-size:18px; }
.category-grid { gap:20px; }
.category-tile { padding:12px; background:#fffdf3eb; border:1px solid #d5d2bd; border-radius:16px; transition:transform .2s,box-shadow .2s; }
.category-tile:hover { transform:translateY(-4px); box-shadow:0 12px 24px #33432b15; }
.category-picture { border-radius:10px; aspect-ratio:1.5; }
.category-caption strong { font-size:18px; }
.category-caption small { font-size:16px; color:#57624f; }
.category-caption>span { font-size:24px; }
.section-tabs { margin-bottom:24px; }
.product-grid { gap:26px; }
.product-card { background:#fffefa; border:1px solid #d6d9ce; border-radius:14px; padding:12px; }
.product-media { border-radius:8px; }
.product-content { padding:16px 6px 6px; }
.product-card h3 { font-size:18px; min-height:54px; }
.product-card h3 a { display:block; min-height:48px; }
.product-category,.product-footnote,.price small { font-size:16px; letter-spacing:0; }
.price,.cart-item .price { font-size:23px; }
.price small { display:block; }
.product-badge { max-width:calc(100% - 80px); font-size:16px; }
.product-card-bottom { align-items:center; }
.catalog-layout { grid-template-columns:260px minmax(0,1fr); gap:36px; }
.filters { top:200px; background:#fffdf4; border:1px solid #c8d0be; border-radius:14px; padding:20px; }
.filters a { min-height:48px; padding:12px 0; gap:8px; }
.catalog-toolbar select { min-height:50px; max-width:260px; background:#fffdf7; }
.filter-toggle,.active-filter,.pagination a,.pagination span { min-height:48px; min-width:48px; }
.active-filter { align-items:center; }
.pagination { flex-wrap:wrap; }
.page-heading p { font-size:18px; max-width:850px; }
.product-detail { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.product-info { background:#fffdf6ed; border:1px solid #dadcca; border-radius:16px; padding:28px; }
.product-info h1 { font-size:clamp(30px,2.8vw,50px); }
.main-product-image { max-height:800px; border:1px solid #dcded2; border-radius:16px; }
.main-product-image img { max-height:760px; }
.product-price-large { font-size:38px; }
.product-description,.product-shipping,.product-details-list p { font-size:18px; color:#53624d; }
.form-field input,.form-field select,.shipping-estimator input,.shipping-estimator select { min-height:52px; font-size:18px; }
.form-field textarea { font-size:18px; }
.shipping-estimator { grid-template-columns:1fr 140px; }
.product-details-list summary,.content-page summary { min-height:48px; align-items:center; font-size:18px; }
.product-specifications>div { font-size:17px; }
.quantity-control input { font-size:18px; max-width:44px; }
.product-info a { display:inline-flex; align-items:center; min-height:48px; }
.quantity-control input { min-height:48px; }
.purchase-row { flex-wrap:wrap; }
.purchase-row .quantity-control { height:auto; }
.drawer { width:min(600px,100%); }
.cart-item { grid-template-columns:100px minmax(0,1fr); }
.cart-item img { width:100px; height:116px; }
.cart-item h3 { font-size:18px; }
.cart-item .cart-row { flex-wrap:wrap; }
.remove-item { min-height:48px; font-size:16px; }
.checkout-modal { width:min(1220px,96vw); }
.checkout-summary { top:112px; max-height:calc(92dvh - 120px); }
.checkout-line { grid-template-columns:80px minmax(0,1fr) auto; }
.checkout-line img { width:80px; height:88px; }
.checkout-line h4,.checkout-line strong { font-size:17px; }
.checkout-summary h3 { font-size:20px; }
.terms-check { padding-block:10px; }
.terms-check input { width:24px; height:24px; }
.field-help { font-size:16px!important; }
.editorial { background:#f0ddc2; color:var(--ink); border:1px solid #d9be96; border-radius:18px; }
.editorial h2 { font-size:clamp(36px,3vw,60px); }
.editorial p { color:#4c5b44; font-size:18px; max-width:600px; }
.editorial-objects { background:#e3ddc8; }
.editorial-product { width:250px; }
.editorial-product:nth-child(2) { width:215px; }
.editorial-product span { font-size:16px; }
.how-item h3 { font-size:22px; }
.how-item p { font-size:18px; max-width:none; }
.mission-strip { padding-inline:var(--gutter); background:#e7ede5; }
.mission-strip a { min-height:48px; display:inline-flex; align-items:center; }
.site-footer { background:#eee5d6; padding-inline:var(--gutter); padding-bottom:70px; }
.footer-top h2 { font-size:20px; }
.footer-top>div>a:not(.footer-brand),.footer-bottom a { font-size:16px; min-height:44px; display:flex; align-items:center; margin:0; }
.footer-top p,.footer-note p { font-size:17px; max-width:400px; }
.footer-bottom { flex-wrap:wrap; }
.footer-bottom>div { flex-wrap:wrap; }
.content-page { max-width:1120px; background:#fffdf5ed; border-inline:1px solid #dcded2; }
.content-page p,.content-page li { font-size:18px; color:#465442; }

/* A lightweight illustrated garden: behind the shop, never above a control. */
body { isolation:isolate; overflow-x:clip; }
.brand { min-height:48px; }
.breadcrumb a { min-height:44px; display:inline-flex; align-items:center; }
.botanical-scene { position:fixed; inset:0; z-index:-1; overflow:hidden; pointer-events:none; }
.botanical-plant { position:absolute; left:-115px; bottom:-28px; width:360px; height:min(820px,85vh); opacity:.48; }
.plant-sway { transform-origin:175px 735px; animation:plant-breeze 9s ease-in-out infinite alternate; }
.decor-sun { position:absolute; right:-110px; top:120px; width:430px; height:430px; border-radius:50%; background:radial-gradient(circle at 30% 30%,#e9bf9090,#dc997c30 68%,transparent 70%); }
.decor-orbit { position:absolute; right:-130px; bottom:-110px; width:700px; height:700px; border:1px solid #61867435; border-radius:45% 55% 58% 42%; box-shadow:0 0 0 35px #7190790c,0 0 0 70px #7190790b; animation:decor-drift 24s ease-in-out infinite alternate; }
.motion-toggle { position:fixed; z-index:45; bottom:14px; left:18px; border:1px solid #8a9a83; border-radius:30px; background:#fffdf7f5; box-shadow:0 4px 18px #283d3020; padding:10px 18px; font-size:16px; }
body.locked .motion-toggle { visibility:hidden; }
html[data-motion="paused"] .plant-sway,html[data-motion="paused"] .decor-orbit { animation-play-state:paused; }
@keyframes plant-breeze { from { transform:rotate(-3deg); } to { transform:rotate(4deg); } }
@keyframes decor-drift { to { transform:rotate(18deg) translateY(-30px); } }
@media(min-width:1800px) { .hero-layout { min-height:660px; }.showcase { height:620px; }.orbit-back { width:560px; height:560px; }.hero-copy>p { font-size:23px; }.main-nav a { font-size:18px; padding-inline:22px; }.category-picture { aspect-ratio:1.55; } }
@media(max-width:1200px) { .header-inner { gap:20px; }.main-nav .track-link { display:none; }.hero-layout { gap:20px; }.hero h1 { font-size:54px; }.object-card[data-position="0"] { width:230px; }.object-card[data-position="1"],.object-card[data-position="2"] { width:170px; }.hero-layout { min-height:530px; }.showcase { height:470px; }.orbit-back { width:300px; height:300px; }.category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.category-picture { aspect-ratio:1.9; }.catalog-layout { grid-template-columns:220px minmax(0,1fr); gap:22px; }.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.product-grid { gap:16px; }.footer-top { gap:24px; } }
@media(max-width:900px) { .hero-layout { grid-template-columns:1fr; }.hero-copy { padding-bottom:10px; }.hero h1 { max-width:720px; font-size:64px; }.hero-copy>p { max-width:650px; }.hero-actions { flex-direction:row; align-items:center; }.showcase { width:100%; max-width:640px; margin:auto; height:480px; }.showcase-controls span { display:inline; }.object-card[data-position="0"] { width:275px; }.object-card[data-position="1"],.object-card[data-position="2"] { width:195px; }.hero-bottom { display:flex; gap:16px; }.catalog-layout { grid-template-columns:1fr; }.filters { position:static; display:none; }.filters.mobile-open { display:grid; }.filter-toggle { display:inline-flex; align-items:center; }.product-detail { gap:22px; }.product-info { padding:20px; }.checkout-line { grid-template-columns:64px minmax(0,1fr); }.checkout-line img { width:64px; height:72px; }.checkout-line>strong { grid-column:2; }.footer-top { grid-template-columns:1fr 1fr; }.footer-note { display:block; }.editorial-text { padding:32px; }.editorial-product { width:175px; }.editorial-product:nth-child(2) { width:155px; } }
@media(max-width:600px) {
  :root { --gutter:18px; } html { scroll-padding-top:205px; }
  .announcement>span { font-size:16px; letter-spacing:.03em; }.announcement a { display:none; }
  .header-inner { display:grid; grid-template-columns:1fr auto; gap:12px; padding-block:12px; }
  .brand img { width:40px; height:40px; }.brand>span { font-size:25px; }.brand-store { font-size:16px; }
  .search-form { grid-row:2; grid-column:1/-1; width:100%; margin:0; }.search-form input { font-size:16px; padding:12px; }.search-form button { min-height:48px; }
  .header-actions { gap:6px; }.cart-trigger { padding-inline:8px; }.cart-trigger>span { display:none; }
  .main-nav { padding-bottom:8px; }.main-nav>div { justify-content:start; gap:8px; }.main-nav a { font-size:16px; min-height:48px; padding:9px 13px; }
  .hero { padding-top:24px; }.hero-topline { font-size:16px; letter-spacing:.06em; }.hero-layout { gap:10px; }
  .hero h1 { font-size:46px; max-width:100%; }.hero-copy>p { font-size:18px; }.hero-actions { gap:10px; margin-block:20px; }.hero-actions .button { font-size:16px; width:100%; }.hero-actions .text-link { font-size:16px; }.hero-meta { display:block; }
  .showcase { height:410px; max-width:100%; left:auto; transform:none; }.object-card[data-position="0"] { width:235px; top:0; left:50%; transform:translateX(-50%) rotate(-3deg); }.object-card[data-position="1"],.object-card[data-position="2"] { display:none; }.object-card .object-info { min-height:95px; }.object-info strong,.object-card[data-position="0"] .object-info strong { font-size:17px!important; }.object-info small { font-size:16px; }.showcase-controls { bottom:0; right:0; left:0; justify-content:center; }.showcase-controls span { font-size:16px; letter-spacing:.04em; }.showcase-controls .round-button { width:48px; height:48px; }.orbit-back { width:270px; height:270px; }.orbit-back:after { inset:-15px; }
  .hero-bottom { font-size:16px; }.hero-bottom>span:nth-child(3) { display:none; }.ticker { justify-content:flex-start; font-size:16px; gap:22px; }
  .section { padding-block:30px; }.section-heading { flex-wrap:wrap; gap:12px; }.section-heading h2 { font-size:34px; }.section-heading .small-label { font-size:16px; }.section-heading .text-link { font-size:16px; }
  .category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.category-tile { padding:9px; }.category-picture { aspect-ratio:1.15; }.category-caption strong { font-size:16px; }.category-caption small { font-size:16px; }.category-caption>span { display:none; }
  .product-grid,.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.product-card { padding:8px; }.product-content { padding:10px 0 0; }.product-card h3 { font-size:16px; min-height:72px; -webkit-line-clamp:3; }.product-category,.product-footnote,.price small { font-size:16px; }.price { font-size:22px; }.product-card-bottom { gap:4px; }.product-media img { padding:10px; }.product-badge { position:static; display:block; max-width:none; font-size:16px; }.wish-button { top:5px; right:5px; }.view-product { width:44px; min-width:44px; }.pill { font-size:16px; }.section-tabs { gap:8px; }
  .catalog-toolbar select { max-width:100%; font-size:16px; }.filters.mobile-open { grid-template-columns:1fr; }.page-heading h1 { font-size:38px; }.pagination { gap:6px; }
  .product-detail { grid-template-columns:1fr; }.product-info { padding:20px 16px; }.product-info h1 { font-size:32px; }.purchase-row { flex-wrap:wrap; }.purchase-row>.button { width:100%; flex:auto; font-size:17px; }.shipping-estimator { grid-template-columns:1fr; }.product-specifications>div { grid-template-columns:100px minmax(0,1fr); }
  .cart-item { grid-template-columns:76px minmax(0,1fr); gap:12px; }.cart-item img { width:76px; height:92px; }.cart-item h3 { font-size:17px; }.cart-item .quantity-control button { min-width:44px; }.cart-body { padding-inline:16px; }.drawer-heading { padding:16px; }.drawer-heading h2 { font-size:28px; }
  .checkout-modal { width:100%; max-height:100dvh; top:0; left:0; transform:none; border-radius:0; }.checkout-layout { grid-template-columns:1fr; }.checkout-summary { position:relative; top:auto; max-height:none; }.checkout-line { grid-template-columns:64px minmax(0,1fr); }.checkout-line>strong { grid-column:2; }.checkout-form { padding:22px 18px; }.address-row { grid-template-columns:1fr; }
  .editorial { grid-template-columns:1fr; }.editorial h2 { font-size:38px; }.editorial-objects { min-height:290px; }.how-grid { grid-template-columns:1fr; }.how-item p { font-size:18px; }.footer-top { grid-template-columns:1fr 1fr; }.footer-top>div:first-child,.footer-note { grid-column:1/-1; }.footer-top { gap:28px 16px; }.footer-top h2 { font-size:18px; }.footer-bottom { font-size:16px; }.content-page { padding-inline:20px; }
  .botanical-plant { width:250px; left:-150px; opacity:.25; }.decor-sun { width:260px; height:260px; right:-140px; }.motion-toggle { font-size:16px; padding:8px 14px; bottom:10px; left:10px; }
}
@media(max-width:360px) { .product-grid,.catalog-grid { grid-template-columns:1fr; }.hero h1 { font-size:40px; }.header-actions { gap:0; }.brand>span { font-size:22px; } }
@media(prefers-reduced-motion:reduce) { html:not([data-motion="running"]) .plant-sway,html:not([data-motion="running"]) .decor-orbit { animation:none; }.category-tile { transition:none; } }
