/* Das Pflanzenarchiv · V20 · Mobile-first commerce layer */
:root{
  --mobile-dock-h: 66px;
  --mobile-edge: 14px;
  --mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
}
.mobile-commerce-dock,.mobile-product-buybar,.mobile-cart-bar,.mobile-checkout-summary-toggle{display:none}

@media (hover:none) and (pointer:coarse){
  button,a,input,select,summary{touch-action:manipulation}
}

@media (max-width:760px){
  html{scroll-padding-top:72px}
  body{font-size:16px;text-rendering:optimizeLegibility}
  body.has-mobile-commerce-dock{padding-bottom:calc(var(--mobile-dock-h) + var(--mobile-safe-bottom))}
  body.has-mobile-product-buybar{padding-bottom:calc(var(--mobile-dock-h) + 72px + var(--mobile-safe-bottom))}
  body.has-mobile-cart-bar{padding-bottom:calc(var(--mobile-dock-h) + 78px + var(--mobile-safe-bottom))}

  /* Header: compact, stable, thumb-friendly */
  .announcement{height:25px;min-height:25px;white-space:nowrap;overflow:hidden;padding:0 12px}
  .site-header,.inner-page .site-header{height:59px!important;padding:0 10px 0 14px!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .site-header.scrolled{height:57px!important}
  .brand-main{font-size:11px!important;letter-spacing:.105em}
  .brand-sub{font-size:5px!important;letter-spacing:.18em}
  .header-actions{gap:0}
  .header-actions .icon-btn,.menu-btn{width:44px;height:44px;min-width:44px}
  .header-actions .icon-btn:nth-child(2){display:none}
  .cart-btn span{right:2px;top:2px;min-width:16px;height:16px;border-radius:99px;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:7px;padding:0 4px}

  /* Persistent mobile commerce navigation */
  .mobile-commerce-dock{position:fixed;z-index:105;left:8px;right:8px;bottom:calc(8px + var(--mobile-safe-bottom));height:var(--mobile-dock-h);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(250,249,245,.95);border:1px solid rgba(19,32,24,.09);border-radius:20px;box-shadow:0 15px 46px rgba(13,23,16,.17);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);overflow:hidden}
  .mobile-commerce-dock a,.mobile-commerce-dock button{appearance:none;border:0;background:transparent;color:#747c76;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:relative;min-width:0;font-size:7px;font-weight:500;padding:5px 1px;text-decoration:none}
  .mobile-commerce-dock svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
  .mobile-commerce-dock .active{color:#17251b;background:rgba(33,56,42,.055)}
  .mobile-commerce-dock .active:before{content:"";position:absolute;top:4px;left:50%;transform:translateX(-50%);width:16px;height:2px;border-radius:99px;background:#274232}
  .mobile-dock-cart b{position:absolute;right:calc(50% - 19px);top:7px;min-width:15px;height:15px;border-radius:99px;background:#17251b;color:#fff;display:grid;place-items:center;font-size:6.5px;padding:0 3px;font-weight:500}

  /* Mobile menu becomes a premium full-screen drawer */
  .mobile-menu{padding:18px 18px calc(95px + var(--mobile-safe-bottom));overflow-y:auto;background:rgba(250,249,245,.985)}
  .mobile-menu-top{margin-bottom:34px;min-height:44px}
  .mobile-menu>a{font-family:Armata,sans-serif;font-size:clamp(23px,7vw,34px);line-height:1.05;padding:15px 2px;border-bottom:1px solid rgba(23,26,23,.1)}

  /* Search */
  .search-layer{padding:16px}
  .search-layer form{width:100%!important;max-width:none}
  .search-layer form>label{font-size:8px}
  .search-layer form>div{height:60px}
  .search-layer input{font-size:16px!important;min-width:0}
  .search-close{width:48px;height:48px;right:12px;top:12px}

  /* Home: mobile-first hero and thumb-scrolling merchandising */
  .hero{height:calc(100svh - 25px);min-height:610px}
  .hero-content{left:18px!important;right:18px!important;bottom:92px!important;max-width:520px}
  .hero h1{font-size:clamp(41px,12.4vw,58px)!important;line-height:.96;letter-spacing:-.052em}
  .hero-copy{font-size:13px!important;line-height:1.62;max-width:345px;margin:18px 0 23px!important}
  .hero-cta{flex-direction:row!important;align-items:center!important;gap:17px!important;flex-wrap:wrap}
  .hero-cta .btn{min-height:50px;padding:0 19px}
  .hero-meta{bottom:18px!important;left:18px!important;right:18px!important}
  .section{padding:66px 16px!important}
  .section-head{margin-bottom:24px!important;gap:16px!important}
  .section-head h2{font-size:clamp(31px,9vw,44px)!important}
  .media-planning-note{font-size:11px!important;margin:0 0 20px!important;line-height:1.55}
  #homeFeaturedGrid{display:flex!important;gap:11px!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;padding:4px 4px 18px 0;margin-right:-16px;scrollbar-width:none}
  #homeFeaturedGrid::-webkit-scrollbar,.related .product-grid::-webkit-scrollbar,.product-gallery-thumbs::-webkit-scrollbar{display:none}
  #homeFeaturedGrid .product-card{flex:0 0 min(72vw,300px);scroll-snap-align:start}
  .product-card{padding:8px!important;border-radius:18px!important;box-shadow:0 10px 27px rgba(17,24,19,.07)!important}
  .product-image{border-radius:14px!important}
  .product-info{padding-top:11px!important}
  .product-info h3{font-size:11px!important;line-height:1.35;margin:4px 0!important}
  .product-info>div>span{font-size:6.5px!important}
  .product-info strong{font-size:11px!important;padding-top:4px!important}
  .product-media-note{display:none!important}
  .image-authenticity{left:8px!important;bottom:8px!important;padding:6px 8px!important;font-size:6px!important}
  .card-arrow{display:none}
  .badge{top:8px!important;left:8px!important;font-size:6px!important;padding:6px 7px!important}

  .collection-grid{gap:10px!important}
  .collection-card,.collection-card.large,.collection-card.wide{height:58svh!important;min-height:390px!important;border-radius:18px!important}
  .collection-card:nth-child(2),.collection-card:nth-child(3){height:44svh!important;min-height:320px!important}
  .collection-overlay h3{font-size:31px!important}
  .dark-section{padding:68px 16px!important}
  .process-copy h2{font-size:42px!important}
  .process-visual img{height:60svh!important;min-height:430px}
  .knowledge-image{padding-left:0!important}
  .about-photo img{height:60svh!important;min-height:430px!important}
  .about-copy{padding:58px 18px!important}
  .newsletter{padding:66px 16px!important}
  .newsletter h2{font-size:39px!important}
  footer{padding-bottom:calc(55px + var(--mobile-safe-bottom))}

  /* Catalog / collection */
  .catalog-hero{padding:48px 16px 27px!important}
  .catalog-hero h1{font-size:clamp(43px,12vw,64px)!important}
  .catalog-hero>p:not(.eyebrow){font-size:12px!important;line-height:1.62;margin-top:18px!important}
  .catalog-meta{margin-top:27px!important;padding-top:12px!important}
  .catalog-shell{padding:0 12px 75px!important}
  .catalog-results{padding-top:14px!important}
  .catalog-toolbar{position:sticky;top:58px;z-index:25;background:rgba(251,250,246,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);margin:0 -12px 12px;padding:9px 12px;border-bottom:1px solid rgba(23,26,23,.08)}
  .mobile-filter{min-height:43px;border-radius:999px!important;padding:0 13px!important;background:#fff!important}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px 8px!important}
  .catalog-grid .product-card{min-width:0}
  .catalog-grid .product-image{aspect-ratio:4/5.2}
  .active-filter-bar{margin:0 0 13px}
  .active-filter-chips{gap:6px}
  .active-filter-chips button{min-height:35px;border-radius:999px;padding:0 10px}
  .filters{padding:18px 16px calc(92px + var(--mobile-safe-bottom))!important}
  .filters .filter-head{top:-18px!important;padding:17px 0 13px!important}
  .filter-search-field{height:50px;border-radius:14px}
  .filter-search-field input{font-size:16px}
  .facet-option{min-height:44px!important}
  .mobile-filter-actions{padding:10px 14px calc(10px + var(--mobile-safe-bottom))!important}
  .mobile-filter-actions button{height:52px!important;border-radius:14px}

  /* Product detail: image first, then concise buying panel */
  .product-breadcrumb{padding:13px 16px!important;min-height:42px;align-items:center}
  .product-gallery{padding:0 10px 14px!important}
  .product-main-image{height:auto!important;min-height:0!important;aspect-ratio:4/5;border-radius:18px!important}
  .gallery-caption{padding:9px 5px 0!important;gap:8px;flex-wrap:wrap;line-height:1.4}
  .product-gallery-thumbs{display:flex!important;gap:8px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;padding:10px 1px 2px!important}
  .product-gallery-thumbs button{flex:0 0 66px!important;width:66px!important;height:82px!important;border-radius:11px!important;scroll-snap-align:start}
  .product-buy{padding:31px 16px 38px!important;border-left:0!important}
  .product-buy h1{font-size:clamp(34px,10vw,49px)!important;margin-bottom:18px!important}
  .product-price-row{padding:13px 0!important}
  .product-price-row strong{font-size:18px!important}
  .product-description{font-size:12px!important;line-height:1.68!important;margin:20px 0!important}
  .exact-specimen{margin:20px 0!important;border-radius:15px;padding:15px!important}
  .variant-block{margin:21px 0!important}
  .variant-options{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .variant-option{min-height:54px!important;border-radius:13px!important;font-size:11px!important}
  .add-cart{min-height:56px!important;border-radius:14px;font-size:11px!important}
  .purchase-note{margin:10px 0 19px!important}
  .purchase-accordions details{padding:17px 0!important}
  .purchase-accordions summary{min-height:30px;align-items:center;font-size:11px!important}
  .product-facts{padding:60px 16px!important;gap:25px!important}
  .facts-title h2{font-size:39px!important}
  .facts-grid{grid-template-columns:1fr 1fr!important;border:0!important;gap:8px}
  .facts-grid article{min-height:125px!important;border:1px solid var(--line)!important;border-radius:15px;padding:14px!important;background:rgba(255,255,255,.55)}
  .quality-section{padding:62px 16px!important;gap:30px!important}
  .quality-section h2{font-size:39px!important}
  .quality-points article{padding:19px 0!important}
  .related{padding-right:0!important}
  .related .section-head{padding-right:16px}
  .related .product-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px!important;padding:4px 16px 17px 0;margin-right:0}
  .related .product-card{flex:0 0 min(68vw,280px);scroll-snap-align:start}

  /* Smart mobile purchase bar – shown by JS only when original CTA leaves viewport */
  .mobile-product-buybar{position:fixed;z-index:104;left:8px;right:8px;bottom:calc(var(--mobile-dock-h) + 14px + var(--mobile-safe-bottom));height:64px;display:grid;grid-template-columns:minmax(0,.75fr) minmax(150px,1.25fr);gap:9px;padding:7px;background:rgba(250,249,245,.97);border:1px solid rgba(19,32,24,.1);border-radius:18px;box-shadow:0 15px 44px rgba(13,23,16,.2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform:translateY(150%);opacity:0;pointer-events:none;transition:.24s cubic-bezier(.2,.75,.15,1)}
  .mobile-product-buybar.visible{transform:none;opacity:1;pointer-events:auto}
  .mobile-product-buybar>div{min-width:0;display:grid;grid-template-columns:1fr auto;align-content:center;padding:0 4px 0 7px}
  .mobile-product-buybar small{grid-column:1/-1;font-size:6.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-product-buybar strong{font-size:13px;font-weight:500}
  .mobile-product-buybar>div span{font-size:7px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;max-width:70px}
  .mobile-product-buybar button{border:0;border-radius:13px;background:#17251b;color:#fff;font-size:9.5px;font-weight:500;display:flex;align-items:center;justify-content:space-between;padding:0 13px;min-width:0}
  .mobile-product-buybar button:disabled{opacity:.45}
  .mobile-product-buybar button.added{background:#31573f}
  .mobile-product-buybar button b{font-size:12px;font-weight:400}

  /* Cart: compact line items and persistent checkout CTA */
  .simple-page-head{padding:42px 16px 25px!important}
  .simple-page-head h1{font-size:46px!important}
  .cart-layout{padding:17px 12px 72px!important;gap:18px!important}
  .cart-items{border-top:0!important}
  .cart-item{grid-template-columns:82px minmax(0,1fr) auto!important;gap:10px!important;padding:11px 0!important}
  .cart-item>a{align-self:start}
  .cart-item img{height:104px!important;border-radius:13px;object-fit:cover}
  .cart-item-info h3{font-size:12px!important;line-height:1.3;margin:4px 0!important}
  .cart-item-info span{font-size:6.5px!important}
  .cart-item-info small{font-size:8px!important}
  .cart-item-info button{min-height:34px;padding:8px 0 0!important}
  .cart-item .qty{grid-column:2!important;justify-self:start;border-radius:11px;overflow:hidden}
  .qty button{width:37px!important;height:38px!important;font-size:16px}
  .qty span{min-width:28px!important;font-size:11px!important}
  .cart-item>strong{grid-column:3!important;grid-row:1!important;font-size:11px!important;padding-top:4px}
  .cart-summary{padding:18px!important;border-radius:17px!important}
  .cart-summary .checkout-demo{display:none}
  .summary-benefits{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}
  .mobile-cart-bar{position:fixed;z-index:104;left:8px;right:8px;bottom:calc(var(--mobile-dock-h) + 14px + var(--mobile-safe-bottom));height:68px;display:grid;grid-template-columns:.65fr 1.35fr;gap:9px;padding:7px;background:rgba(250,249,245,.97);border:1px solid rgba(19,32,24,.1);border-radius:18px;box-shadow:0 15px 44px rgba(13,23,16,.2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .mobile-cart-bar>div{display:flex;flex-direction:column;justify-content:center;padding-left:8px;gap:2px}
  .mobile-cart-bar small{font-size:7px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
  .mobile-cart-bar strong{font-family:Armata,sans-serif;font-size:14px;font-weight:400}
  .mobile-cart-bar button{border:0;border-radius:13px;background:#17251b;color:#fff;font-size:10px;font-weight:500;display:flex;justify-content:space-between;align-items:center;padding:0 14px}
  .mobile-cart-bar button:disabled{opacity:.45}

  /* Checkout: summary first, fewer distractions, 16px fields prevents iOS zoom */
  .checkout-body{padding-bottom:0!important}
  .checkout-body .announcement{display:none}
  .checkout-body .site-header{top:0!important}
  .checkout-body .site-header .brand-sub{display:none}
  .checkout-page{padding:0!important}
  .checkout-head{padding:30px 16px 20px!important}
  .checkout-head h1{font-size:39px!important;line-height:1.02}
  .checkout-head>p:last-child{font-size:10px!important;line-height:1.5;margin-bottom:0}
  .checkout-layout{display:flex!important;flex-direction:column;padding:0 12px calc(36px + var(--mobile-safe-bottom))!important;gap:9px!important}
  .mobile-checkout-summary-toggle{order:-3;width:100%;min-height:54px;border:1px solid rgba(19,32,24,.1);background:#e9ebe5;border-radius:15px;padding:0 14px;align-items:center;grid-template-columns:1fr auto 22px;gap:8px;text-align:left}
  .mobile-checkout-summary-toggle{display:grid}
  .mobile-checkout-summary-toggle span{font-size:9px;font-weight:500}
  .mobile-checkout-summary-toggle strong{font-size:12px;font-weight:500}
  .mobile-checkout-summary-toggle i{font-size:18px;font-style:normal;font-weight:300;text-align:center}
  .checkout-summary.mobile-collapsible{order:-2;display:none!important;position:static!important;padding:16px!important;border-radius:15px!important;box-shadow:none!important;margin:0}
  .checkout-summary.mobile-collapsible.mobile-open{display:block!important}
  .checkout-summary .eyebrow{margin-bottom:8px}
  .checkout-items{margin:8px 0!important}
  .checkout-line{grid-template-columns:47px 1fr auto!important;padding:9px 0!important;gap:9px!important}
  .checkout-line img{width:47px!important;height:56px!important;border-radius:9px}
  .automation-preview{display:none}
  .checkout-form{order:1;gap:9px!important;width:100%}
  .checkout-card{padding:17px 15px!important;border-radius:17px!important;box-shadow:none!important}
  .checkout-card-title{padding-bottom:14px!important;margin-bottom:15px!important;gap:11px!important}
  .checkout-card-title h2{font-size:17px!important}
  .checkout-card-title p{font-size:9px!important}
  .field-grid{gap:11px!important}
  .field{gap:6px!important}
  .field span{font-size:7px!important}
  .field input{height:52px!important;border-radius:12px;font-size:16px!important;padding:0 12px!important}
  .payment-demo label{min-height:58px;border-radius:13px!important;padding:12px!important}
  .checkout-submit{min-height:58px!important;margin-top:3px!important}
  .demo-disclaimer{font-size:8px!important;line-height:1.5;padding:0 8px}
  .order-success{align-items:end!important;padding:0!important}
  .order-success-card{border-radius:24px 24px 0 0!important;padding:28px 18px calc(24px + var(--mobile-safe-bottom))!important;max-height:92svh;overflow:auto}

  /* Account + content pages */
  .account-visual{min-height:56svh!important}
  .account-panel{padding:48px 14px!important}
  .auth-card,.account-future{padding:20px!important;border-radius:18px!important}
  .auth-card input{font-size:16px}
  .about-portrait img{height:58svh!important;min-height:420px}
  .about-story{padding:52px 18px!important}
  .editorial-hero img{height:55svh!important;min-height:400px}
  .editorial-hero>div{padding:54px 18px!important}

  /* Staff scanner / packing: larger touch targets and safe-area spacing */
  .scan-mobile-header,.pack-mobile-header{height:62px;padding:0 14px}
  .scan-mobile-header button,.pack-mobile-header button{min-height:40px;padding:0 13px}
  .scan-mobile-home,.scan-record,.scan-error,.scan-loading,.pack-mobile-shell{padding-left:14px!important;padding-right:14px!important;padding-bottom:calc(28px + var(--mobile-safe-bottom))!important}
  .scan-camera-card,.pack-scan-control{border-radius:18px!important}
  .scan-primary,.scan-manual button,.scan-quick-actions button,.scan-location-fields button,.scan-field button,.scan-next,.pack-scan-button,.pack-finish-button,.pack-secondary-button,.pack-manual-form button{min-height:52px!important}
  .scan-manual input,.scan-field select,.scan-field textarea,.scan-location-fields select,.scan-location-fields input,.pack-manual-form input{font-size:16px!important;min-height:52px!important}
  .pack-camera-viewport{aspect-ratio:4/3!important;max-height:42svh!important}

  /* Accessibility / focus */
  :focus-visible{outline:2px solid #31533e!important;outline-offset:3px!important}
}

@media (max-width:390px){
  .catalog-grid{gap:9px 6px!important}
  .product-card{padding:6px!important}
  .product-info h3{font-size:10px!important}
  .mobile-commerce-dock{left:5px;right:5px;bottom:calc(5px + var(--mobile-safe-bottom))}
  .mobile-commerce-dock a,.mobile-commerce-dock button{font-size:6.5px}
  .mobile-product-buybar,.mobile-cart-bar{left:5px;right:5px}
  .hero h1{font-size:39px!important}
}

/* Mobile engagement layer */
@media(max-width:760px){
  .personal-return,.recently-viewed-v22{padding-top:62px;padding-bottom:68px}
  .personal-return .section-head,.recently-viewed-v22 .section-head{margin-bottom:22px}
  .personal-return .section-head h2,.recently-viewed-v22 .section-head h2{font-size:30px}
  .product-price-row .product-favorite-main{margin-left:auto}
  .customer-account-root{margin-top:-8px}
}
@media(max-width:760px){
  .mobile-commerce-dock a[href="account.html"]{position:relative}
  .mobile-favorite-count{position:absolute;top:4px;right:calc(50% - 22px);min-width:15px;height:15px;border-radius:999px;background:#18251c;color:#fff;display:grid;place-items:center;font-size:7px;font-weight:500;line-height:1;padding:0 4px;border:2px solid #f7f6f2}
  .mobile-favorite-count[hidden]{display:none}
}
@media(max-width:760px){
  .product-price-row{flex-wrap:wrap}
  .product-price-row .stock-alert-main{margin-left:0}
  .customer-mini-nav{scrollbar-width:none}
  .customer-mini-nav::-webkit-scrollbar{display:none}
}
