:root {
  --ink: #123c2b;
  --ink-soft: #50665c;
  --green: #123c2b;
  --cream: #e8dcc8;
  --paper: #fcfbf7;
  --sand: #e5d9c5;
  --line: #d8d4cb;
  --terracotta: #ed4d91;
  --sun: #e9bd55;
  --serif: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --brand-script: "Allura", cursive;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 16px; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
.announcement { padding: 9px 24px; background: var(--green); color: #f9f5eb; text-align: center; font: 500 11px/1 var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.announcement span { padding: 0 8px; color: #ccb984; }
.site-header { width: min(1410px, calc(100% - 64px)); height: 88px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.wordmark { color: var(--ink); font: 600 29px/1 var(--serif); letter-spacing: -.06em; }
.wordmark span { color: var(--terracotta); }
.main-nav { display: flex; gap: 36px; margin-left: 13%; }
.main-nav a, .footer-links a { font-size: 13px; transition: color .2s; }
.main-nav a:hover, .footer-links a:hover { color: var(--terracotta); }
.cart-trigger { display: flex; align-items: center; gap: 8px; padding: 9px 0; border: 0; background: transparent; color: var(--ink); font: 500 13px var(--sans); }
.cart-trigger svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; }
.cart-trigger b, .drawer-head h2 span { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; background: var(--terracotta); color: white; font: 500 10px var(--mono); }
.hero { min-height: 665px; display: grid; grid-template-columns: minmax(360px, .89fr) minmax(420px, 1.11fr); background: var(--cream); overflow: hidden; }
.hero-copy { align-self: center; width: min(530px, calc(100% - 64px)); margin-left: max(32px, calc((100vw - 1410px) / 2)); padding: 60px 0; }
.eyebrow { margin: 0 0 18px; color: var(--terracotta); font: 500 11px/1.4 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--serif); font-weight: 500; letter-spacing: -.052em; }
h1 { margin-bottom: 24px; font-size: clamp(57px, 5.5vw, 84px); line-height: .98; }
h1 em, h2 em { color: var(--terracotta); font-weight: 500; }
.hero-text { max-width: 390px; margin-bottom: 31px; color: var(--ink-soft); font-size: 17px; line-height: 1.6; }
.button { display: inline-flex; justify-content: center; align-items: center; gap: 25px; min-height: 51px; padding: 0 22px; border: 1px solid var(--ink); background: transparent; color: var(--ink); font-size: 13px; font-weight: 600; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-dark { border-color: var(--ink); background: var(--ink); color: #fff; }
.button-dark:hover { background: var(--terracotta); border-color: var(--terracotta); }
.hero-note { display: flex; align-items: center; gap: 9px; margin-top: 32px; color: var(--ink-soft); font-size: 12px; }
.leaf-mark { color: var(--terracotta); }
.hero-image-wrap { position: relative; min-height: 665px; }
.hero-image { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; filter: saturate(.78) contrast(.94); }
.floating-card { position: absolute; right: 7.5%; bottom: 8%; padding: 19px 25px 22px; background: rgba(252, 251, 247, .92); backdrop-filter: blur(8px); }
.floating-card span { display: block; margin-bottom: 7px; color: var(--terracotta); font: 500 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.floating-card strong { font: 500 19px/1.22 var(--serif); }
.hero-stamp { position: absolute; top: 8%; left: -44px; display: grid; width: 109px; height: 109px; place-content: center; border-radius: 50%; background: var(--sun); color: var(--ink); text-align: center; transform: rotate(-13deg); }
.hero-stamp span { font: 600 11px/1.2 var(--mono); text-transform: uppercase; }
.hero-stamp b { padding-top: 4px; font-size: 16px; }
.values { display: grid; grid-template-columns: repeat(3, 1fr); width: min(1280px, calc(100% - 64px)); margin: 0 auto; padding: 38px 0; }
.values article { display: flex; gap: 18px; padding: 10px 42px; border-right: 1px solid var(--line); }
.values article:last-child { border-right: 0; }
.values article > span { padding-top: 3px; color: var(--terracotta); font: 500 10px var(--mono); }
.values h2 { margin: 0 0 5px; font-size: 21px; letter-spacing: -.03em; }
.values p { margin: 0; color: var(--ink-soft); font-size: 13px; }
.shop-section { width: min(1280px, calc(100% - 64px)); margin: 86px auto 120px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 42px; }
.section-heading h2, .story-copy h2, .care-intro h2, .newsletter h2 { margin: 0; font-size: clamp(40px, 4.2vw, 58px); line-height: 1; }
.filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.filter { padding: 8px 13px; border: 1px solid var(--line); background: transparent; color: var(--ink-soft); font-size: 12px; }
.filter:hover, .filter.active { border-color: var(--ink); background: var(--ink); color: white; }
.product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.loading-message { grid-column: 1 / -1; padding: 40px 0; color: var(--ink-soft); }
.product-card { min-width: 0; }
.product-image { position: relative; aspect-ratio: .83; overflow: hidden; background: var(--sand); }
.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.product-card:hover .product-image img { transform: scale(1.045); }
.tag { position: absolute; top: 13px; left: 13px; padding: 6px 8px; background: var(--paper); color: var(--green); font: 500 9px var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.sold-out { color: var(--terracotta); }
.add-mini { position: absolute; right: 12px; bottom: 12px; display: grid; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 50%; background: white; color: var(--ink); font-size: 22px; opacity: 0; transform: translateY(8px); transition: .25s; }
.product-card:hover .add-mini { opacity: 1; transform: translateY(0); }
.add-mini:disabled { cursor: not-allowed; color: #999; }
.product-info { display: grid; grid-template-columns: 1fr auto; gap: 3px 10px; padding: 14px 1px; }
.product-info h3 { margin: 0; font: 500 18px var(--serif); letter-spacing: -.025em; }
.product-info p { grid-column: 1 / -1; margin: 1px 0 0; color: var(--ink-soft); font-size: 11px; }
.price { color: var(--green); font: 500 12px var(--mono); }
.story-section { display: grid; grid-template-columns: 1.04fr .96fr; min-height: 590px; background: #e5ded0; }
.story-photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.7); }
.story-copy { align-self: center; width: min(440px, calc(100% - 80px)); margin: auto; padding: 50px 0; }
.story-copy h2 { margin-bottom: 27px; }
.story-copy > p:not(.eyebrow) { color: var(--ink-soft); font-size: 15px; line-height: 1.7; }
.text-link { display: inline-flex; gap: 20px; margin-top: 17px; padding-bottom: 7px; border-bottom: 1px solid var(--ink); font-size: 13px; font-weight: 600; }
.care-section { width: min(1280px, calc(100% - 64px)); margin: 126px auto; display: grid; grid-template-columns: .86fr 1.14fr; gap: 100px; }
.care-intro p:not(.eyebrow) { max-width: 350px; margin: 25px 0 0; color: var(--ink-soft); font-size: 15px; line-height: 1.65; }
.care-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-content: start; }
.care-cards article { min-height: 247px; padding: 26px 24px; background: var(--cream); }
.care-cards article:nth-child(2) { margin-top: 39px; background: #d4dfd5; }
.care-cards article:nth-child(3) { background: #efd6bc; }
.care-number { display: block; margin-bottom: 61px; color: var(--terracotta); font: 500 10px var(--mono); }
.care-cards h3 { margin-bottom: 11px; font: 500 21px var(--serif); letter-spacing: -.025em; }
.care-cards p { color: var(--ink-soft); font-size: 12px; line-height: 1.55; }
.newsletter { display: flex; align-items: center; justify-content: space-between; gap: 50px; padding: 82px max(32px, calc((100vw - 1120px) / 2)); background: var(--green); color: #f9f4e8; }
.newsletter .eyebrow { color: #dfb15f; }
.newsletter-form { position: relative; width: min(440px, 100%); display: flex; border-bottom: 1px solid #d3d8cd; }
.newsletter-form input { width: 100%; padding: 13px 0; border: 0; outline: none; background: transparent; color: white; font-size: 15px; }
.newsletter-form input::placeholder { color: #d3d8cd; }
.newsletter-form button { border: 0; background: transparent; color: white; font-size: 25px; }
.form-message { position: absolute; top: calc(100% + 12px); left: 0; margin: 0; color: inherit; font-size: 12px; }
.site-footer { width: min(1280px, calc(100% - 64px)); min-height: 150px; margin: auto; display: grid; grid-template-columns: 1fr 1.5fr 1fr auto; gap: 30px; align-items: center; }
.site-footer > p, .site-footer small { color: var(--ink-soft); font-size: 12px; }
.footer-links { display: flex; gap: 19px; }
.site-footer small { text-align: right; }
.cart-drawer { position: fixed; z-index: 20; top: 0; right: 0; display: grid; grid-template-rows: auto 1fr auto; width: min(430px, 100%); height: 100dvh; padding: 25px 24px 24px; background: var(--paper); box-shadow: -10px 0 30px rgba(28, 45, 37, .13); transform: translateX(105%); transition: transform .3s ease; }
.cart-drawer.open { transform: translateX(0); }
.drawer-backdrop { position: fixed; z-index: 19; inset: 0; border: 0; background: rgba(17, 31, 23, .34); }
.drawer-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.drawer-head h2 { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 27px; }
.icon-button { display: grid; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 50%; background: transparent; color: var(--ink); font-size: 28px; line-height: 1; }
.icon-button:hover { background: var(--cream); }
.cart-items { overflow: auto; padding: 8px 0; }
.cart-empty { margin-top: 50px; color: var(--ink-soft); text-align: center; }
.cart-line { display: grid; grid-template-columns: 70px 1fr auto; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.cart-line img { width: 70px; height: 80px; object-fit: cover; background: var(--sand); }
.cart-line h3 { margin: 0 0 5px; font: 500 17px var(--serif); }
.cart-line p { margin: 0; color: var(--green); font: 500 11px var(--mono); }
.quantity { display: flex; align-items: center; gap: 9px; margin-top: 10px; }
.quantity button { width: 21px; height: 21px; border: 1px solid var(--line); background: transparent; color: var(--ink); line-height: 1; }
.quantity span { min-width: 13px; text-align: center; font-size: 12px; }
.remove { align-self: start; border: 0; background: none; color: var(--ink-soft); font-size: 17px; }
.cart-footer { padding-top: 18px; border-top: 1px solid var(--line); }
.cart-footer > p { display: flex; justify-content: space-between; margin: 0 0 7px; font-size: 14px; }
.cart-footer > p strong { font: 500 14px var(--mono); }
.cart-footer small { display: block; margin-bottom: 15px; color: var(--ink-soft); font-size: 10px; line-height: 1.5; }
.button-full { width: 100%; }
.checkout-dialog { position: relative; width: min(500px, calc(100% - 30px)); border: 0; padding: 34px; background: var(--paper); color: var(--ink); box-shadow: 0 15px 70px rgba(0,0,0,.28); }
.checkout-dialog::backdrop { background: rgba(20, 35, 26, .48); backdrop-filter: blur(3px); }
.checkout-dialog h2 { margin-bottom: 24px; font-size: 37px; }
.dialog-close { position: absolute; top: 16px; right: 16px; }
.checkout-summary { margin-bottom: 21px; padding: 15px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.checkout-summary p { display: flex; justify-content: space-between; gap: 15px; margin: 6px 0; font-size: 13px; }
.checkout-summary strong { margin-top: 12px; font: 500 15px var(--mono); }
.paypal-container { min-height: 44px; }
.checkout-note { margin: 14px 0 0; color: var(--ink-soft); font-size: 11px; text-align: center; }
.toast { position: fixed; z-index: 30; right: 20px; bottom: 20px; max-width: min(370px, calc(100% - 40px)); padding: 13px 17px; border-radius: 2px; background: var(--ink); color: white; font-size: 13px; opacity: 0; pointer-events: none; transform: translateY(15px); transition: .25s; }
.toast.show { opacity: 1; transform: translateY(0); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 900px) {
  .site-header, .shop-section, .care-section, .site-footer, .values { width: min(100% - 40px, 700px); }
  .main-nav { display: none; }
  .hero { min-height: auto; grid-template-columns: 1fr; }
  .hero-copy { width: min(100% - 40px, 700px); margin: 0 auto; padding: 80px 0 65px; }
  .hero-image-wrap { min-height: 500px; }
  .hero-stamp { left: 20px; }
  .values { grid-template-columns: 1fr; padding: 25px 0; }
  .values article { padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .values article:last-child { border-bottom: 0; }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .story-section { grid-template-columns: 1fr; }
  .story-photo { min-height: 420px; }
  .story-copy { width: min(100% - 40px, 600px); padding: 75px 0; }
  .care-section { grid-template-columns: 1fr; gap: 45px; }
  .newsletter { padding: 60px 20px; align-items: start; flex-direction: column; }
  .site-footer { grid-template-columns: 1fr 1fr; padding: 32px 0; }
  .site-footer small { text-align: left; }
}
@media (max-width: 530px) {
  .site-header { width: calc(100% - 32px); height: 74px; }
  .cart-trigger span { display: none; }
  .wordmark { font-size: 27px; }
  .hero-copy { padding-top: 57px; }
  h1 { font-size: 53px; }
  .hero-image-wrap { min-height: 410px; }
  .floating-card { right: 16px; bottom: 16px; padding: 15px 18px; }
  .shop-section, .care-section { width: calc(100% - 32px); margin-top: 70px; margin-bottom: 80px; }
  .section-heading { align-items: start; flex-direction: column; }
  .filters { justify-content: start; }
  .product-grid { gap: 10px; }
  .product-info h3 { font-size: 16px; }
  .add-mini { opacity: 1; transform: none; width: 34px; height: 34px; }
  .care-cards { grid-template-columns: 1fr; }
  .care-cards article, .care-cards article:nth-child(2) { min-height: 0; margin-top: 0; }
  .care-number { margin-bottom: 30px; }
  .site-footer { width: calc(100% - 32px); gap: 22px; }
  .site-footer > p { display: none; }
  .footer-links { grid-column: 1 / -1; }
}

/* Verwaltung */
.admin-body { min-height: 100vh; background: #f1eee6; }
.admin-topbar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; width: min(1380px, calc(100% - 64px)); min-height: 83px; margin: auto; }
.admin-topbar > span { color: var(--ink-soft); font: 500 10px var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.admin-topbar > div { display: flex; justify-content: end; gap: 17px; }
.top-link { padding: 5px 0; border: 0; background: transparent; color: var(--ink); font: 500 12px var(--sans); }
.admin-main { width: min(1280px, calc(100% - 64px)); margin: 0 auto; padding: 42px 0 100px; }
.login-panel { width: min(500px, 100%); margin: 56px auto 0; padding: 54px; background: var(--paper); box-shadow: 0 16px 40px rgba(39, 58, 47, .06); }
.login-panel h1, .dashboard-intro h1 { margin: 0 0 20px; font-size: clamp(45px, 5vw, 64px); line-height: .96; }
.login-panel > p:not(.eyebrow) { color: var(--ink-soft); line-height: 1.6; }
.login-form { display: grid; gap: 10px; margin-top: 31px; }
.login-form label, .product-form > label, .form-row label { display: grid; gap: 7px; color: var(--ink); font-size: 12px; font-weight: 600; }
.login-form input, .product-form input:not([type="checkbox"]), .product-form textarea { width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 0; outline-color: var(--green); background: white; color: var(--ink); font-size: 14px; }
.login-form .button { margin-top: 8px; }
.admin-message { min-height: 18px; margin: 2px 0 0; color: #a64636; font-size: 12px; }
.dashboard-intro { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 35px; }
.stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 25px; }
.stats article { padding: 24px; background: #dce4db; }
.stats article:nth-child(2) { background: #eddfcc; }.stats article:nth-child(3) { background: #d8d4c8; }
.stats span { display: block; margin-bottom: 12px; color: var(--ink-soft); font: 500 10px var(--mono); letter-spacing: .08em; text-transform: uppercase; }.stats strong { font: 500 38px/1 var(--serif); }
.management-grid { display: grid; grid-template-columns: 1.22fr .78fr; align-items: start; gap: 25px; }.admin-card { background: var(--paper); padding: 29px; }.card-head { display: flex; justify-content: space-between; gap: 18px; align-items: start; padding-bottom: 20px; border-bottom: 1px solid var(--line); }.card-head .eyebrow { margin-bottom: 8px; }.card-head h2 { margin: 0; font-size: 30px; }.card-head h2 span { color: var(--ink-soft); font: 400 12px var(--mono); vertical-align: middle; }.text-button { padding: 0; border: 0; background: transparent; color: var(--ink-soft); font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.product-list { max-height: 690px; overflow: auto; }.admin-product { display: grid; grid-template-columns: 65px 1fr auto; gap: 14px; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--line); }.admin-product:last-child { border-bottom: 0; }.admin-product.is-hidden { opacity: .6; }.admin-product img { width: 65px; height: 70px; object-fit: cover; background: var(--sand); }.item-title { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }.item-title h3 { margin: 0; font: 500 18px var(--serif); }.admin-product p { margin: 4px 0; color: var(--ink-soft); font-size: 11px; }.admin-product strong { color: var(--green); font: 500 11px var(--mono); }.admin-badge, .paid-badge { padding: 3px 5px; background: var(--sand); color: var(--ink-soft); font: 500 8px var(--mono); text-transform: uppercase; }.admin-product-actions { display: grid; gap: 5px; }.mini-action { padding: 0; border: 0; background: transparent; color: var(--green); font-size: 10px; text-align: right; text-decoration: underline; text-underline-offset: 2px; }.mini-action.delete { color: var(--terracotta); }.admin-empty { padding: 32px 0; color: var(--ink-soft); font-size: 13px; line-height: 1.55; }
.product-form { display: grid; gap: 16px; padding-top: 21px; }.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.product-form textarea { min-height: 115px; resize: vertical; line-height: 1.5; }.image-input { display: grid; grid-template-columns: 1fr auto; gap: 7px; }.image-input #image-file { grid-column: 1 / 2; padding: 7px !important; font-size: 10px !important; }.image-input .button { grid-column: 2 / 3; grid-row: 2; min-height: auto; padding: 0 10px; }.button-small { font-size: 10px; }.product-form small { margin-top: -2px; color: var(--ink-soft); font-size: 10px; }.toggle-row { display: grid; gap: 9px; }.toggle { display: flex !important; align-items: center; gap: 8px; cursor: pointer; font-size: 11px !important; font-weight: 400 !important; }.toggle input { position: absolute; opacity: 0; }.toggle span { position: relative; width: 28px; height: 16px; border-radius: 10px; background: #c9c8c0; transition: .2s; }.toggle span::after { position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; border-radius: 50%; background: white; content: ""; transition: .2s; }.toggle input:checked + span { background: var(--green); }.toggle input:checked + span::after { transform: translateX(12px); }
.orders-card { margin-top: 25px; }.order-row { display: grid; grid-template-columns: 1.2fr 1fr auto auto; gap: 25px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--line); }.order-row:last-child { border-bottom: 0; }.order-number { font: 500 12px var(--mono); }.order-row p, .order-items, .order-row time { margin: 4px 0 0; color: var(--ink-soft); font-size: 10px; line-height: 1.5; }.order-row > div:nth-child(3) { display: grid; justify-items: end; gap: 7px; }.order-row strong { font: 500 12px var(--mono); }.paid-badge { background: #d7e6d6; color: var(--green); }.order-row time { text-align: right; }
@media (max-width: 900px) { .admin-topbar, .admin-main { width: min(100% - 40px, 700px); }.management-grid { grid-template-columns: 1fr; }.editor-card { order: -1; }.order-row { grid-template-columns: 1fr auto; gap: 12px; }.order-items { grid-column: 1 / 2; grid-row: 2; }.order-row > div:nth-child(3) { grid-column: 2; grid-row: 1; }.order-row time { grid-column: 2; grid-row: 2; } }
@media (max-width: 530px) { .admin-topbar, .admin-main { width: calc(100% - 32px); }.admin-topbar { grid-template-columns: 1fr auto; }.admin-topbar > span { display: none; }.login-panel { margin-top: 20px; padding: 31px 24px; }.dashboard-intro { align-items: start; flex-direction: column; }.stats { grid-template-columns: 1fr; }.stats article { padding: 18px; }.form-row { grid-template-columns: 1fr; }.admin-card { padding: 20px; }.admin-product { grid-template-columns: 54px 1fr; }.admin-product img { width: 54px; height: 60px; }.admin-product-actions { grid-column: 2; grid-row: 2; display: flex; gap: 14px; }.mini-action { text-align: left; }.order-row { grid-template-columns: 1fr; }.order-row > div:nth-child(3), .order-row time, .order-items { grid-column: auto; grid-row: auto; justify-items: start !important; text-align: left; }.image-input { grid-template-columns: 1fr; }.image-input #image-file, .image-input .button { grid-column: auto; grid-row: auto; } }

/* plantsini Markenwelt: aufgebaut aus der vorhandenen Coming-soon-Seite */
:root {
  --ink: #f3ebdc;
  --ink-soft: #d8cfbd;
  --green: #143614;
  --cream: #eadacc;
  --paper: #14220f;
  --sand: #6f7154;
  --line: rgba(245, 235, 217, .28);
  --terracotta: #fa4f9c;
  --sun: #f2529a;
}
body { background: #13220e; color: var(--ink); }
.announcement { position: relative; z-index: 5; padding: 10px 24px; border-bottom: 1px solid rgba(255,255,255,.15); background: #12240e; color: #fff5e8; }
.announcement span { color: #fa4f9c; }
.site-header { position: relative; z-index: 4; color: #fff9ed; }
.wordmark { color: inherit; font-family: var(--sans); font-weight: 700; font-style: normal; letter-spacing: -.11em; }
.wordmark span { color: #fa4f9c; }
.main-nav a, .cart-trigger { color: #fff9ed; }
.cart-trigger b, .drawer-head h2 span { background: #fa4f9c; }
.hero { position: relative; display: grid; min-height: 730px; grid-template-columns: 1fr; isolation: isolate; background: radial-gradient(ellipse at 12% 76%, #779513 0%, transparent 28%), radial-gradient(ellipse at 26% 8%, #d8006d 0%, transparent 29%), radial-gradient(ellipse at 58% 89%, #f54b9a 0%, transparent 27%), radial-gradient(ellipse at 88% 43%, #4a7221 0%, transparent 31%), linear-gradient(120deg, #1a3217, #58211c 52%, #172612); }
.hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(14, 36, 12, .2), transparent 48%, rgba(15, 31, 11, .28)); content: ""; pointer-events: none; }
.hero-copy { position: relative; z-index: 2; width: min(700px, calc(100% - 48px)); margin: auto; padding: 114px 0 112px; text-align: center; }
.hero-copy .eyebrow { color: #f8e6d5; }
h1, h2 { color: #fff4e9; }
.hero h1 { margin: 0 0 23px; font-size: clamp(72px, 9vw, 135px); line-height: .8; text-shadow: 0 6px 32px rgba(12, 28, 8, .2); }
.hero h1 em { color: #fc5ca4; }
.hero-text { max-width: 460px; margin: 0 auto 31px; color: #fff2e2; font-size: 16px; }
.hero .button { border-color: rgba(255, 242, 225, .52); border-radius: 999px; background: rgba(255, 248, 237, .15); backdrop-filter: blur(9px); color: #fff9ed; }
.hero .button:hover { border-color: #fa4f9c; background: #fa4f9c; }
.hero-note { justify-content: center; color: #fff0de; }.leaf-mark { color: #fa4f9c; }
.hero-image-wrap { position: absolute; z-index: -2; inset: -30px; min-height: 0; opacity: .29; }
.hero-image { filter: blur(12px) saturate(1.25) contrast(.86); transform: scale(1.08); }
.floating-card { right: auto; bottom: 9%; left: max(25px, calc((100vw - 1360px) / 2)); width: 220px; border: 1px solid rgba(255,255,255,.42); border-radius: 23px; background: rgba(16, 37, 12, .65); box-shadow: 0 12px 46px rgba(0, 0, 0, .18); color: #fff9ed; }
.floating-card span { color: #ff83bb; }.floating-card strong { color: #fff9ed; }
.hero-stamp { top: auto; right: max(27px, calc((100vw - 1360px) / 2)); bottom: 8%; left: auto; width: 118px; height: 118px; border: 1px solid rgba(255,255,255,.35); background: #fa4f9c; box-shadow: 0 8px 30px rgba(0,0,0,.2); color: #1f4519; }
.values { position: relative; z-index: 1; width: 100%; margin: 0; padding: 32px max(32px, calc((100vw - 1280px) / 2)); background: #10270e; color: #fff8ed; }
.values article { border-color: rgba(255,255,255,.17); }.values h2 { color: #fff5e8; }.values p { color: #d8e1cc; }.values article > span { color: #fa5ba3; }
.shop-section { position: relative; width: 100%; margin: 0; padding: 104px max(32px, calc((100vw - 1280px) / 2)) 120px; overflow: hidden; background: radial-gradient(ellipse at 85% 4%, rgba(231, 48, 134, .43), transparent 31%), radial-gradient(ellipse at 3% 65%, rgba(126, 155, 31, .34), transparent 26%), #13240f; }
.shop-section::before { position: absolute; top: -18%; left: 28%; width: 480px; height: 360px; border-radius: 50%; background: rgba(172, 17, 88, .22); filter: blur(100px); content: ""; }
.section-heading, .product-grid { position: relative; z-index: 1; }.section-heading h2 { font-size: clamp(49px, 5vw, 76px); }.eyebrow { color: #ff79b4; }
.filter { border-color: rgba(255,255,255,.37); border-radius: 999px; background: rgba(24, 49, 17, .32); color: #fff5e9; }.filter:hover, .filter.active { border-color: #ff65aa; background: #fa4f9c; color: #173415; }
.product-image { border-radius: 21px; background: #29401e; box-shadow: 0 18px 30px rgba(0,0,0,.14); }.product-image::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, rgba(16, 31, 10, .35)); content: ""; pointer-events: none; }.product-image img { filter: saturate(.95) contrast(1.02); }.tag { z-index: 1; border-radius: 999px; background: #fa4f9c; color: #163617; }.add-mini { z-index: 1; background: #f9eade; color: #26431b; }.product-info h3 { color: #fff5e8; }.product-info p { color: #cad6bd; }.price { color: #ff94c6; }
.story-section { position: relative; grid-template-columns: 1.04fr .96fr; min-height: 630px; overflow: hidden; background: radial-gradient(ellipse at 16% 65%, rgba(238, 54, 147, .6), transparent 42%), radial-gradient(ellipse at 90% 16%, rgba(102, 141, 35, .56), transparent 45%), #26381a; }.story-section::after { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(9,26,7,.12), transparent); content: ""; pointer-events: none; }.story-photo { position: relative; z-index: 1; margin: 54px 0 54px max(32px, calc((100vw - 1280px) / 2)); overflow: hidden; border: 1px solid rgba(255,255,255,.35); border-radius: 25px; box-shadow: 0 16px 50px rgba(0,0,0,.2); }.story-photo img { filter: saturate(.82) contrast(.92); }.story-copy { position: relative; z-index: 1; }.story-copy > p:not(.eyebrow), .care-intro p:not(.eyebrow) { color: #f0e4d4; }.text-link { border-color: #f4eadf; color: #fff5e9; }
.care-section { width: 100%; margin: 0; padding: 124px max(32px, calc((100vw - 1280px) / 2)); background: #10240e; }.care-cards article { border: 1px solid rgba(255,255,255,.22); border-radius: 20px; background: rgba(248, 96, 166, .13); color: #fff5e8; }.care-cards article:nth-child(2) { background: rgba(163, 196, 91, .26); }.care-cards article:nth-child(3) { background: rgba(250, 221, 198, .16); }.care-cards p { color: #eff0df; }.care-number { color: #ff80ba; }.care-cards h3 { color: #fff7ee; }
.newsletter { background: radial-gradient(circle at 6% 40%, #7f9e24, transparent 27%), radial-gradient(circle at 78% 12%, #f04798, transparent 42%), #41311b; }.newsletter .eyebrow { color: #ffc2dc; }.newsletter h2 { color: #fff6ea; }.newsletter-form { border-color: rgba(255,255,255,.62); }.newsletter-form input::placeholder { color: #f0dfe1; }
.site-footer { color: #e9d9ca; }.site-footer > p, .site-footer small { color: #b7c8a8; }.footer-links a { color: #e9d9ca; }.footer-links a:hover { color: #ff72b4; }
.cart-drawer, .checkout-dialog { background: #14240e; color: #fff5e8; }.drawer-head, .cart-line, .cart-footer, .checkout-summary { border-color: rgba(255,255,255,.22); }.icon-button { color: #fff5e8; }.icon-button:hover { background: rgba(255,255,255,.11); }.cart-line h3 { color: #fff5e8; }.cart-line p, .cart-footer small { color: #d8e1ca; }.quantity button { border-color: rgba(255,255,255,.35); color: #fff5e8; }.remove { color: #ff89be; }.checkout-dialog h2 { color: #fff5e8; }.toast { background: #fa4f9c; color: #143614; }

/* Die Verwaltung bleibt ruhig und kontrastreich, gehört aber klar zur gleichen Marke. */
.admin-body { background: radial-gradient(ellipse at 13% 10%, rgba(238,52,141,.48), transparent 30%), radial-gradient(ellipse at 88% 75%, rgba(118,151,38,.43), transparent 35%), #12220e; }.admin-topbar { color: #fff5e8; }.top-link { color: #fff5e8; }.login-panel, .admin-card { border: 1px solid rgba(255,255,255,.22); background: rgba(18, 38, 14, .72); box-shadow: 0 18px 50px rgba(0,0,0,.16); backdrop-filter: blur(13px); }.login-panel > p:not(.eyebrow) { color: #e9ddcf; }.login-form input, .product-form input:not([type="checkbox"]), .product-form textarea { border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.92); color: #193017; }.stats article { border-radius: 16px; background: rgba(244, 78, 157, .23); }.stats article:nth-child(2) { background: rgba(145, 182, 62, .29); }.stats article:nth-child(3) { background: rgba(248, 226, 200, .19); }.stats span { color: #e6e8d6; }.stats strong, .card-head h2, .item-title h3 { color: #fff5e8; }.card-head, .admin-product, .order-row { border-color: rgba(255,255,255,.18); }.admin-product p, .order-row p, .order-items, .order-row time { color: #dae3ce; }.admin-product strong, .order-row strong, .order-number { color: #ff92c6; }.mini-action, .text-button { color: #f7e6da; }.mini-action.delete { color: #ff80b8; }.admin-empty { color: #dde3d4; }.admin-badge { background: rgba(255,255,255,.15); color: #fff4e9; }.paid-badge { background: #b4dc83; color: #173615; }
@media (max-width: 900px) { .hero { min-height: 660px; }.hero-copy { padding-top: 92px; }.story-section { grid-template-columns: 1fr; }.story-photo { min-height: 420px; margin: 42px 20px 0; }.story-copy { width: min(100% - 64px, 600px); }.care-section, .shop-section { padding-right: 32px; padding-left: 32px; } }
@media (max-width: 530px) { .hero { min-height: 640px; }.hero-copy { width: calc(100% - 34px); padding: 73px 0 196px; }.hero h1 { font-size: 71px; }.hero-text { font-size: 14px; }.floating-card { bottom: 24px; left: 16px; width: 196px; }.hero-stamp { right: 16px; bottom: 42px; width: 89px; height: 89px; }.hero-stamp span { font-size: 8px; }.shop-section, .care-section { padding: 74px 16px; }.story-photo { min-height: 330px; margin: 24px 16px 0; }.story-copy { width: calc(100% - 32px); }.section-heading h2 { font-size: 49px; }.product-image { border-radius: 15px; }.newsletter { padding: 62px 20px; }.admin-main { padding-top: 18px; } }

/* Ruhige, nahtlose Farbtiefe statt einzelner sichtbarer Farbflächen. */
.hero { background: #162b12; }
.hero::before { position: absolute; z-index: -1; inset: -38%; background: radial-gradient(ellipse at 28% 32%, rgba(232, 28, 126, .86) 0 10%, transparent 39%), radial-gradient(ellipse at 76% 60%, rgba(74, 126, 31, .9) 0 12%, transparent 43%), radial-gradient(ellipse at 38% 84%, rgba(248, 61, 146, .72) 0 7%, transparent 33%), radial-gradient(ellipse at 8% 72%, rgba(126, 159, 22, .65) 0 9%, transparent 36%), linear-gradient(128deg, #1b3215 0%, #2f3015 42%, #183312 100%); filter: blur(68px) saturate(1.08); content: ""; transform: scale(1.05); }
.hero::after { z-index: -1; background: linear-gradient(110deg, rgba(12, 34, 10, .2), rgba(19, 46, 16, .02) 48%, rgba(7, 28, 10, .27)); }
.hero-image-wrap { display: none; }
.hero-copy { text-shadow: 0 2px 22px rgba(6, 23, 6, .18); }
.shop-section { background: linear-gradient(135deg, #11230e 0%, #172e12 52%, #12230f 100%); }
.shop-section::before { top: -26%; left: 17%; width: 640px; height: 600px; background: radial-gradient(circle, rgba(216, 28, 118, .35), transparent 67%); filter: blur(50px); }
.story-section { background: linear-gradient(123deg, #233618 0%, #463721 48%, #263d19 100%); }
.story-section::before { position: absolute; inset: -28%; background: radial-gradient(ellipse at 18% 58%, rgba(230, 44, 132, .48), transparent 42%), radial-gradient(ellipse at 86% 32%, rgba(105, 142, 35, .44), transparent 45%); filter: blur(65px); content: ""; }
.story-section::after { background: linear-gradient(100deg, rgba(9,26,7,.21), rgba(9,26,7,.03)); }
.live-chat-section { display: grid; grid-template-columns: .95fr 1.05fr; gap: 10vw; align-items: center; padding: 122px max(32px, calc((100vw - 1120px) / 2)); overflow: hidden; background: linear-gradient(120deg, #481d32 0%, #62213e 46%, #163212 100%); }
.live-chat-section h2 { margin: 0 0 24px; font-size: clamp(42px, 4.7vw, 70px); line-height: .96; }.live-chat-copy > p:not(.eyebrow) { max-width: 425px; color: #f4e4d8; font-size: 15px; line-height: 1.7; }
.chat-preview { width: min(420px, 100%); justify-self: end; padding: 22px; border: 1px solid rgba(255,255,255,.36); border-radius: 25px; background: rgba(11, 39, 12, .58); box-shadow: 0 22px 50px rgba(16, 11, 9, .21); backdrop-filter: blur(16px); }.chat-preview-head { display: flex; align-items: center; gap: 10px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.23); }.online-dot { width: 9px; height: 9px; border-radius: 50%; background: #a4dc75; box-shadow: 0 0 0 4px rgba(164,220,117,.14); }.chat-preview-head strong { display: block; color: #fff5e8; font-size: 13px; }.chat-preview-head small { color: #dbe4d0; font-size: 10px; }.chat-leaf { margin-left: auto; color: #ff72b2; }.chat-bubble { width: fit-content; max-width: 280px; margin: 22px 0; padding: 13px 16px; border-radius: 3px 15px 15px 15px; background: #f8e9dc; color: #223a1a; font-size: 13px; line-height: 1.45; }.chat-button { width: 100%; border-color: rgba(255,255,255,.46); border-radius: 999px; background: #fa4f9c; color: #193818; }.chat-preview > p { margin: 13px 0 0; color: #dce4d2; font-size: 10px; text-align: center; }
@media (max-width: 900px) { .main-nav { gap: 19px; margin-left: 0; }.live-chat-section { grid-template-columns: 1fr; gap: 37px; padding: 84px 32px; }.chat-preview { justify-self: start; } }
@media (max-width: 530px) { .main-nav { display: none; }.hero { min-height: 620px; }.live-chat-section { padding: 74px 20px; }.live-chat-section h2 { font-size: 46px; }.chat-preview { padding: 19px; } }

/* Original-Assets von plantsini */
.brand-lockup { display: inline-flex; align-items: center; gap: 8px; color: #fff6ea; font: 700 25px/1 var(--sans); letter-spacing: -.105em; }
.brand-lockup:hover { color: #ff8cc2; }
.brand-mark { display: grid; width: 33px; height: 33px; place-items: center; overflow: hidden; border-radius: 50%; background: #071006; }
.brand-mark img { width: 100px; max-width: none; height: 100px; object-fit: cover; mix-blend-mode: screen; transform: scale(2.15); }
.footer-brand { font-size: 27px; }.footer-brand .brand-mark { width: 35px; height: 35px; }
.hero::before { inset: 0; background: url("/assets/plantsini-bg.png") center / cover no-repeat; filter: none; transform: none; }
.hero::after { background: linear-gradient(107deg, rgba(9, 30, 8, .19), rgba(16, 49, 13, .04) 48%, rgba(8, 26, 8, .3)); }
.story-photo img { object-position: center; }.story-photo::after { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.13); border-radius: inherit; content: ""; pointer-events: none; }
.whatsapp-icon { width: 25px; height: 25px; object-fit: contain; }.chat-button { gap: 10px; }.chat-button img { width: 18px; height: 18px; object-fit: contain; filter: brightness(.32) saturate(1.5); }
.chat-button.is-disabled { cursor: not-allowed; opacity: .62; pointer-events: none; }
@media (max-width: 530px) { .brand-lockup { font-size: 23px; }.brand-mark { width: 29px; height: 29px; }.brand-mark img { width: 88px; height: 88px; }.footer-brand { font-size: 24px; } }

/* Kompakte, reiterbasierte Shop-Ansicht */
html:has(.compact-site) { height: 100%; overflow: hidden; }
.compact-site { display: grid; grid-template-rows: 30px 78px minmax(0, 1fr) 39px; height: 100dvh; min-height: 580px; overflow: hidden; background: #10220d; }
.compact-site .announcement { display: flex; align-items: center; justify-content: center; height: 30px; padding: 0 16px; font-size: 9px; }
.compact-header { width: min(1280px, calc(100% - 56px)); height: 78px; }
.compact-nav { gap: clamp(18px, 2.6vw, 39px); margin-left: 0; }.compact-nav a { position: relative; padding: 8px 0; color: #e8e7d8; font-size: 12px; }.compact-nav a::after { position: absolute; right: 0; bottom: 1px; left: 0; height: 1px; background: #fa4f9c; content: ""; opacity: 0; transform: scaleX(.5); transition: .2s; }.compact-nav a.active::after, .compact-nav a:hover::after { opacity: 1; transform: scaleX(1); }
.site-stage { position: relative; min-height: 0; overflow: hidden; }.page-panel { position: absolute; inset: 0; isolation: isolate; }.page-panel[hidden] { display: none !important; }.page-panel.active { display: grid; animation: panel-in .34s ease both; }@keyframes panel-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
.panel-home { grid-template-rows: 1fr auto; justify-items: center; overflow: hidden; padding: clamp(42px, 7vh, 80px) max(28px, calc((100vw - 1280px) / 2)) 28px; background: #183212; }.panel-home::before { position: absolute; z-index: -2; inset: 0; background: url("/assets/plantsini-bg.png") center / cover no-repeat; content: ""; }.panel-home::after { position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 50% 43%, transparent 7%, rgba(11, 36, 9, .16) 66%, rgba(8, 27, 9, .44) 100%); content: ""; }.home-copy { align-self: center; max-width: 690px; color: #fff5e8; text-align: center; }.home-copy h1 { margin: 0 0 21px; color: #fff4e8; font-size: clamp(72px, 8.8vw, 132px); line-height: .82; text-shadow: 0 5px 28px rgba(18,22,10,.15); }.home-copy h1 em { color: #fb62a7; }.home-copy > p:not(.eyebrow) { max-width: 465px; margin: 0 auto 27px; color: #fff4eb; font-size: 15px; line-height: 1.55; }.home-copy .eyebrow { color: #ffe9df; }.hero-cta { border-color: rgba(255,255,255,.52); border-radius: 999px; background: rgba(255,249,239,.16); color: #fff9ed; backdrop-filter: blur(8px); }.hero-cta:hover { border-color: #f9539e; background: #f9539e; color: #15320e; }.home-proof { display: flex; justify-content: center; width: min(700px, 100%); border-top: 1px solid rgba(255,255,255,.32); color: #fff6ed; }.home-proof span { flex: 1; padding: 15px 13px 0; color: #f7ecdf; font-size: 11px; text-align: center; }.home-proof b { padding-right: 7px; color: #ff65aa; font: 500 9px var(--mono); }
.panel-about { grid-template-columns: minmax(270px, .86fr) minmax(330px, .72fr); place-content: center; gap: clamp(42px, 8vw, 126px); padding: 40px max(32px, calc((100vw - 1040px) / 2)); overflow: hidden; background: linear-gradient(118deg, #19350f, #40301e 49%, #742343); }.panel-about::before { position: absolute; z-index: -1; inset: -25%; background: radial-gradient(ellipse at 16% 72%, rgba(117,152,23,.52), transparent 38%), radial-gradient(ellipse at 84% 28%, rgba(241,54,148,.42), transparent 43%); filter: blur(65px); content: ""; }.about-photo { width: min(100%, 360px); justify-self: end; align-self: center; overflow: hidden; border: 1px solid rgba(255,255,255,.38); border-radius: 28px; box-shadow: 0 23px 54px rgba(0,0,0,.24); aspect-ratio: .85; }.about-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }.about-copy { max-width: 470px; align-self: center; color: #fff5e9; }.about-copy h2, .panel-title h2, .chat-copy h2 { margin: 0 0 23px; color: #fff5e9; font-size: clamp(48px, 5.2vw, 76px); line-height: .94; }.about-copy h2 em, .panel-title h2 em, .chat-copy h2 em { color: #fa62a9; }.about-copy > p:not(.eyebrow), .chat-copy > p:not(.eyebrow) { margin-bottom: 14px; color: #f3e6d9; font-size: 14px; line-height: 1.65; }.about-copy .text-link { margin-top: 12px; border-color: #f8eee5; color: #fff7ed; }
.panel-shop { align-content: center; padding: clamp(30px, 5vh, 58px) max(32px, calc((100vw - 1280px) / 2)); overflow-y: auto; overflow-x: hidden; background: linear-gradient(122deg, #10250e 0%, #203d18 52%, #143013 100%); }.panel-shop::before { position: absolute; z-index: -1; inset: 0; background: radial-gradient(ellipse at 45% 5%, rgba(240,47,140,.34), transparent 33%), radial-gradient(ellipse at 86% 82%, rgba(143,179,28,.35), transparent 37%); filter: blur(60px); content: ""; }.panel-title { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: clamp(20px, 3.5vh, 37px); }.panel-title h2 { max-width: 430px; margin: 0; font-size: clamp(38px, 4vw, 58px); }.panel-title .eyebrow { margin-bottom: 10px; }.panel-shop .filters { max-width: 500px; }.compact-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 1.5vw, 20px); }.compact-product-grid .product-image { aspect-ratio: 1 / .88; }.compact-product-grid .product-info { padding-top: 10px; }.compact-product-grid .product-info h3 { font-size: clamp(15px, 1.45vw, 18px); }.compact-product-grid .product-info p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.compact-product-grid .add-mini { opacity: 1; transform: none; }.compact-product-grid .loading-message { color: #f6e8dd; }
.panel-chat { grid-template-columns: minmax(300px, .9fr) minmax(320px, .65fr); place-content: center; gap: clamp(45px, 9vw, 140px); padding: 40px max(32px, calc((100vw - 1050px) / 2)); overflow: hidden; background: linear-gradient(117deg, #52203c 0%, #663047 42%, #173813 100%); }.panel-chat::before { position: absolute; z-index: -1; inset: -22%; background: radial-gradient(ellipse at 14% 40%, rgba(227, 48, 139, .54), transparent 36%), radial-gradient(ellipse at 85% 57%, rgba(113,153,24,.47), transparent 43%); filter: blur(60px); content: ""; }.chat-copy { max-width: 490px; align-self: center; }.chat-copy h2 { font-size: clamp(47px, 5vw, 73px); }.panel-chat .chat-preview { justify-self: start; }.compact-footer { display: flex; align-items: center; justify-content: center; gap: 19px; min-width: 0; padding: 0 20px; border-top: 1px solid rgba(255,255,255,.12); background: #10230d; color: #bdc9b2; font-size: 10px; }.compact-footer a { color: #d7dfcf; }.compact-footer a:hover { color: #fa6eae; }
@media (max-width: 900px) { .compact-site { min-height: 630px; }.compact-header { width: calc(100% - 36px); }.compact-nav { gap: 16px; }.panel-about, .panel-chat { gap: 38px; padding-right: 48px; padding-left: 48px; }.compact-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.panel-shop { overflow: auto; }.panel-title { align-items: start; flex-direction: column; }.panel-shop .filters { justify-content: start; max-width: none; } }
@media (max-width: 620px) { html:has(.compact-site) { height: auto; overflow: auto; }.compact-site { grid-template-rows: 29px 67px minmax(540px, 1fr) 55px; min-height: 100dvh; height: 100dvh; }.compact-header { width: calc(100% - 28px); height: 67px; }.compact-header .brand-lockup { font-size: 21px; }.compact-nav { display: flex; max-width: 190px; gap: 13px; overflow-x: auto; }.compact-nav a { flex: 0 0 auto; font-size: 10px; }.cart-trigger span { display: none; }.page-panel { overflow-y: auto; }.panel-home { min-height: 540px; padding: 43px 20px 20px; }.home-copy h1 { font-size: 64px; }.home-proof span { padding-right: 5px; padding-left: 5px; font-size: 9px; }.home-proof b { display: block; padding: 0 0 4px; }.panel-about, .panel-chat { grid-template-columns: 1fr; align-content: center; gap: 26px; padding: 38px 25px; }.about-photo { width: min(250px, 100%); justify-self: center; max-height: 260px; }.about-copy { text-align: center; }.about-copy .text-link { justify-content: center; }.panel-shop { padding: 32px 18px; }.compact-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.compact-product-grid .product-image { aspect-ratio: .84; }.compact-product-grid .product-info h3 { font-size: 15px; }.compact-product-grid .price { font-size: 10px; }.compact-product-grid .product-info p { font-size: 9px; }.panel-title h2, .chat-copy h2 { font-size: 45px; }.panel-chat .chat-preview { justify-self: center; }.compact-footer { flex-wrap: wrap; column-gap: 13px; row-gap: 3px; padding: 8px 13px; font-size: 9px; } }

/* Checkout und Rechtstexte bleiben bewusst klar und innerhalb eines Dialogs. */
.legal-link { margin: 0; padding: 0; border: 0; background: transparent; color: #d7dfcf; font: inherit; cursor: pointer; }.legal-link:hover { color: #fa6eae; }
.checkout-dialog, .legal-dialog { max-height: min(780px, calc(100dvh - 30px)); overflow: auto; border: 1px solid rgba(255,255,255,.22); border-radius: 22px; background: #14240e; color: #fff5e8; }.checkout-dialog { width: min(520px, calc(100% - 30px)); }.legal-dialog { width: min(720px, calc(100% - 30px)); padding: 38px; }.legal-dialog h2 { margin: 0 0 24px; color: #fff5e8; font-size: clamp(38px, 5vw, 58px); }.legal-content { color: #ebeadf; font-size: 14px; line-height: 1.65; }.legal-content section { margin: 0 0 24px; }.legal-content h3 { margin: 0 0 8px; color: #ff83bc; font-size: 16px; }.legal-content p { margin: 0 0 10px; }.legal-content a { color: #ff8fc4; text-decoration: underline; text-underline-offset: 3px; }
.payment-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 19px 0 15px; }.payment-method { padding: 11px 12px; border: 1px solid rgba(255,255,255,.3); border-radius: 12px; background: transparent; color: #fff5e8; font: 600 12px var(--sans); cursor: pointer; }.payment-method:hover, .payment-method.active { border-color: #fa5ba3; background: rgba(250,79,156,.19); }.payment-method:disabled { opacity: .42; cursor: not-allowed; }.payment-panel[hidden] { display: none; }.payment-intro { margin: 0 0 15px; color: #dae3ce; font-size: 12px; line-height: 1.5; }.checkout-form { display: grid; gap: 11px; }.checkout-form label { display: grid; gap: 5px; color: #dce4d2; font-size: 11px; }.checkout-form input { width: 100%; padding: 11px 12px; border: 1px solid rgba(255,255,255,.28); border-radius: 10px; outline: none; background: rgba(255,255,255,.96); color: #183116; font: 14px var(--sans); }.checkout-form input:focus { border-color: #fa5ba3; box-shadow: 0 0 0 3px rgba(250,91,163,.16); }.form-row { display: grid; grid-template-columns: .48fr 1fr; gap: 10px; }.checkout-form .button { margin-top: 6px; }.transfer-details { margin-top: 10px; padding: 17px; border: 1px solid rgba(255,255,255,.25); border-radius: 14px; background: rgba(255,255,255,.08); color: #f6efe6; font-size: 13px; line-height: 1.55; }.transfer-details h3 { margin: 0 0 8px; color: #fff5e8; font-size: 23px; }.transfer-details p { margin: 7px 0; }.checkout-dialog .form-message { position: static; min-height: 18px; margin: 12px 0 0; color: #ffacd0; line-height: 1.4; }
@media (max-width: 620px) { .legal-dialog, .checkout-dialog { width: min(100% - 20px, 720px); padding: 28px 22px; }.legal-content { font-size: 13px; }.form-row { grid-template-columns: 1fr; } }

/* Marken-Typografie der aktuellen plantsini Coming-soon-Seite: Inter + Allura. */
.compact-site { font-family: var(--sans); }.announcement, .eyebrow, .home-proof b { font-family: var(--sans); font-weight: 600; letter-spacing: .13em; }.home-copy h1, .about-copy h2, .panel-title h2, .chat-copy h2, .product-info h3 { font-family: var(--sans); font-weight: 700; letter-spacing: -.065em; }.home-copy h1 em, .about-copy h2 em, .panel-title h2 em, .chat-copy h2 em { font-family: var(--sans); font-style: italic; font-weight: 700; }.compact-nav a, .cart-trigger, .compact-footer, .button { font-family: var(--sans); font-weight: 600; }
.brand-lockup { gap: 7px; color: #f4e9da; font-family: var(--sans); font-weight: 400; letter-spacing: 0; }.brand-lockup:hover { color: #f4e9da; }.brand-mark { position: relative; width: 45px; height: 34px; overflow: hidden; border-radius: 0; background: transparent; }.brand-mark img { position: absolute; top: -1px; left: -12px; width: 70px; max-width: none; height: 70px; object-fit: contain; mix-blend-mode: screen; transform: none; clip-path: inset(0 0 49% 0); }.brand-type { display: inline-flex; align-items: baseline; white-space: nowrap; font-size: 28px; line-height: .8; letter-spacing: -.08em; }.brand-type .plants { color: #f3eadc; font-family: var(--sans); font-weight: 700; }.brand-type .ini { margin-left: -2px; color: #ff79b6; font-family: var(--brand-script); font-size: 1.42em; font-weight: 400; letter-spacing: -.04em; }
@media (max-width: 620px) { .brand-mark { width: 35px; height: 30px; }.brand-mark img { width: 55px; height: 55px; left: -9px; }.brand-type { font-size: 24px; } }

/* Final Plantsini brand tuning: complete emblem, warm eggshell type, leafy green hero. */
.brand-mark { width:55px; height:55px; overflow:visible; background:transparent; }
.brand-mark img { display:block; position:static; width:55px; height:55px; object-fit:contain; mix-blend-mode:screen; clip-path:none; }
.brand-type .plants, .announcement, .site-header, .main-nav a, .cart-trigger, .account-trigger { color:#e8dcc8; }
.panel-home { background:#245601; }
.panel-home::after { background:linear-gradient(115deg, rgba(18,60,43,.42), rgba(36,86,1,.14)), radial-gradient(circle at 50% 43%, transparent 7%, rgba(18,60,43,.16) 66%, rgba(8,36,9,.42) 100%); }
.home-copy, .home-copy h1, .home-copy > p:not(.eyebrow), .home-copy .eyebrow, .hero-cta, .home-proof, .home-proof span { color:#e8dcc8; }
.hero-cta { border-color:rgba(232,220,200,.55); background:rgba(232,220,200,.13); }
.header-actions { display:flex; align-items:center; gap:12px; }
.account-trigger { border:1px solid rgba(232,220,200,.38); border-radius:999px; background:rgba(18,60,43,.17); padding:7px 11px; font:600 11px var(--sans); cursor:pointer; }
.account-trigger:hover { border-color:#ff79b6; color:#ffb4d5; }
.account-intro { margin:0 0 18px; color:#e8dcc8; font-size:13px; line-height:1.55; }
@media (max-width:620px) { .brand-mark, .brand-mark img { width:42px; height:42px; }.header-actions { gap:7px; }.account-trigger { padding:6px 8px; font-size:10px; } }

/* Wiederkehrende Schreibweise der Wortmarke wie in der aktuellen plantsini-Seite. */
.brand-inline { display:inline-flex; align-items:baseline; color:#e8dcc8; font-family:var(--sans); font-weight:700; letter-spacing:-.065em; }
.brand-inline i { margin-left:-1px; color:#ff79b6; font-family:var(--brand-script); font-size:1.42em; font-style:normal; font-weight:400; letter-spacing:-.04em; }
.compact-footer { color:#c8cfbd; }.compact-footer .legal-link, .compact-footer a { color:#e8dcc8; }
.contact-dialog h2 { margin:0 0 18px; color:#e8dcc8; }

/* Original-Farbton und Schrift der Live-Wortmarke. */
.home-copy h1 { color:#245601; font-family:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.home-copy h1 em { font-family:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.brand-inline { vertical-align:baseline; white-space:nowrap; }
.account-orders { margin:24px 0 18px; padding-top:20px; border-top:1px solid rgba(232,220,200,.22); }
.account-orders h3 { margin:0 0 12px; color:#e8dcc8; font-size:19px; }
.account-order { display:grid; grid-template-columns:1fr auto; gap:5px 12px; padding:13px 0; border-top:1px solid rgba(232,220,200,.16); color:#e8dcc8; font-size:12px; }
.account-order:first-child { border-top:0; }.account-order strong { color:#ff8fc4; }.account-order span { color:#bfe180; text-align:right; }.account-order small, .account-order p { grid-column:1 / -1; margin:0; color:#dce4d2; line-height:1.5; }.password-panel { margin:18px 0; color:#e8dcc8; font-size:13px; }.password-panel summary { cursor:pointer; }.password-panel form { margin-top:14px; }.account-logout { border-color:rgba(232,220,200,.35); background:transparent; color:#e8dcc8; }

/* Ruhigeres, hochwertigeres Finish. */
.compact-header { border-bottom:1px solid rgba(232,220,200,.12); background:linear-gradient(180deg, rgba(18,60,43,.44), rgba(18,60,43,.12)); backdrop-filter:blur(18px); }
.panel-home::after { background:linear-gradient(120deg, rgba(11,47,25,.54), rgba(36,86,1,.10) 53%, rgba(11,47,25,.38)), radial-gradient(ellipse at 50% 42%, transparent 18%, rgba(8,34,18,.30) 100%); }
.home-copy { padding:34px 42px; border:1px solid rgba(232,220,200,.14); border-radius:34px; background:rgba(15,57,30,.12); box-shadow:0 24px 80px rgba(4,28,14,.18); backdrop-filter:blur(10px); }
.home-copy h1 { color:inherit; text-shadow:0 8px 34px rgba(4,30,13,.18); }
.hero-green { color:#245601; }.hero-is { color:#e8dcc8; }
.home-copy h1 em { color:#ff7ab7; }
.hero-cta, .account-trigger { transition:transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease; }
.hero-cta:hover, .account-trigger:hover { transform:translateY(-2px); box-shadow:0 12px 25px rgba(5,31,15,.20); }
.panel-shop::before, .panel-about::before, .panel-chat::before { filter:blur(85px); opacity:.82; }
.product-card, .chat-preview, .about-photo { transition:transform .28s ease, box-shadow .28s ease; }
.product-card:hover { transform:translateY(-4px); }.chat-preview, .about-photo { box-shadow:0 28px 70px rgba(4,22,11,.24); }
.account-trigger { min-width:84px; border-color:rgba(232,220,200,.48); background:rgba(232,220,200,.09); color:#e8dcc8; }
@media (max-width:620px) { .home-copy { padding:27px 21px; border-radius:25px; }.account-trigger { min-width:auto; } }
.announcement, .eyebrow { text-transform:none; }

/* Final shop system — one restrained visual language for header, checkout and cards. */
:root { --forest:#123c2b; --leaf:#245601; --eggshell:#e8dcc8; --pink:#ed4d91; --surface:rgba(18,60,43,.84); --soft-line:rgba(232,220,200,.16); }
.compact-site { background:var(--forest); }
.announcement { border:0; background:linear-gradient(90deg, #0e3324, var(--forest) 46%, #153d26); color:var(--eggshell); letter-spacing:.08em; }
.compact-header { width:min(1340px, calc(100% - 64px)); height:86px; border:0; background:rgba(18,60,43,.80); box-shadow:0 12px 34px rgba(5,25,16,.10); backdrop-filter:blur(20px); }
.brand-lockup { width:174px; height:48px; overflow:hidden; gap:0; }
.brand-lockup .brand-mark { position:relative; display:block; width:174px; height:48px; overflow:hidden; background:transparent; }
.brand-lockup .brand-mark img { position:absolute; top:-51px; left:0; display:block; width:174px; max-width:none; height:auto; mix-blend-mode:normal; clip-path:none; filter:none; }
.brand-lockup .brand-type { display:none; }
.compact-nav { gap:clamp(20px, 2.5vw, 38px); }.compact-nav a { color:rgba(232,220,200,.84); font-weight:500; }.compact-nav a:hover, .compact-nav a.active { color:var(--eggshell); }
.header-actions { gap:10px; }.account-trigger { min-width:0; padding:9px 14px; border:1px solid rgba(232,220,200,.28); border-radius:999px; background:rgba(232,220,200,.08); color:var(--eggshell); font-weight:600; }.account-trigger:hover { border-color:var(--pink); background:rgba(237,77,145,.16); color:var(--eggshell); }
.cart-trigger { border:1px solid rgba(232,220,200,.15); border-radius:999px; background:rgba(18,60,43,.38); }.cart-trigger b { background:var(--pink); color:var(--forest); }
.panel-home { background:radial-gradient(ellipse at 18% 16%, rgba(237,77,145,.32), transparent 42%), radial-gradient(ellipse at 86% 68%, rgba(36,86,1,.38), transparent 45%), var(--forest); }
.panel-home::before { opacity:.20; mix-blend-mode:screen; filter:saturate(.82) contrast(.96); }.panel-home::after { background:linear-gradient(116deg, rgba(9,40,25,.68), rgba(18,60,43,.22) 48%, rgba(9,40,25,.50)); }
.home-copy { width:min(670px, 100%); padding:44px 48px; border:1px solid var(--soft-line); border-radius:32px; background:rgba(10,42,26,.34); box-shadow:0 26px 80px rgba(4,24,14,.22); backdrop-filter:blur(16px); }.home-copy .eyebrow { color:var(--eggshell); }
.home-copy h1 { margin-bottom:24px; font-size:clamp(66px, 8vw, 122px); line-height:.85; }.hero-green { padding:0 .10em .05em; border-radius:.14em; background:transparent; color:var(--leaf); box-decoration-break:clone; }.hero-is { color:var(--eggshell); }.home-copy h1 em { color:#ff8fc4; }.home-copy > p:not(.eyebrow) { color:rgba(232,220,200,.88); }
.hero-cta { border-color:rgba(232,220,200,.38); background:rgba(232,220,200,.12); color:var(--eggshell); }.hero-cta:hover { border-color:var(--pink); background:var(--pink); color:var(--forest); }.home-proof { border-top-color:var(--soft-line); }.home-proof span { color:rgba(232,220,200,.90); }
.panel-about, .panel-shop, .panel-chat { background-color:var(--forest); }.panel-about { background-image:radial-gradient(ellipse at 12% 80%, rgba(36,86,1,.38), transparent 44%), radial-gradient(ellipse at 88% 24%, rgba(237,77,145,.30), transparent 42%); }.panel-shop { background-image:radial-gradient(ellipse at 14% 4%, rgba(237,77,145,.24), transparent 39%), radial-gradient(ellipse at 84% 86%, rgba(36,86,1,.35), transparent 42%); }.panel-chat { background-image:radial-gradient(ellipse at 16% 42%, rgba(237,77,145,.28), transparent 41%), radial-gradient(ellipse at 84% 55%, rgba(36,86,1,.36), transparent 44%); }
.about-photo, .chat-preview, .product-image { border-color:var(--soft-line); box-shadow:0 24px 60px rgba(4,24,14,.20); }.product-card:hover .product-image { box-shadow:0 28px 70px rgba(4,24,14,.35); }.product-info h3, .panel-title h2, .about-copy h2, .chat-copy h2 { color:var(--eggshell); }.price, .about-copy h2 em, .panel-title h2 em, .chat-copy h2 em { color:#ff8fc4; }
.checkout-dialog, .legal-dialog { border:1px solid var(--soft-line); border-radius:28px; background:linear-gradient(145deg, #173f2d, #0e3222); box-shadow:0 32px 90px rgba(4,22,13,.40); }.checkout-dialog h2, .legal-dialog h2 { color:var(--eggshell); }.payment-method { border-color:var(--soft-line); color:var(--eggshell); }.payment-method.active { border-color:var(--pink); background:rgba(237,77,145,.14); }.checkout-identity { display:flex; gap:9px; align-items:flex-start; margin:0 0 15px; padding:11px 13px; border:1px solid var(--soft-line); border-radius:13px; background:rgba(232,220,200,.06); color:rgba(232,220,200,.88); font-size:11px; line-height:1.45; }.identity-dot { color:#bde382; font-size:15px; line-height:.9; }.consent { display:flex !important; align-items:flex-start; gap:9px; margin-top:14px; color:rgba(232,220,200,.82) !important; font-size:11px !important; line-height:1.45; }.consent input { width:auto !important; margin:2px 0 0; accent-color:var(--pink); }.inline-link { padding:0; border:0; background:none; color:#ff9dcc; font:inherit; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
.checkout-form small { color:rgba(232,220,200,.62); font-size:10px; }.compact-footer { border-top:1px solid var(--soft-line); background:#0e3222; color:rgba(232,220,200,.68); }.compact-footer a, .compact-footer .legal-link { color:rgba(232,220,200,.88); }
@media (max-width:720px) { .compact-header { width:calc(100% - 28px); height:70px; }.brand-lockup { width:125px; height:35px; }.brand-lockup .brand-mark { width:125px; height:35px; }.brand-lockup .brand-mark img { top:-37px; width:125px; }.compact-nav { display:none; }.home-copy { padding:32px 23px; border-radius:26px; }.home-copy h1 { font-size:clamp(56px, 16vw, 78px); }.cart-trigger span { display:none; } }
.order-status { display:grid; justify-items:end; gap:7px; }.order-status select { max-width:145px; padding:6px 8px; border:1px solid rgba(232,220,200,.24); border-radius:8px; background:#173f2d; color:#e8dcc8; font:11px var(--sans); }


/* PLANTSini Header-Logo */
.compact-header .brand-lockup {
    width: 190px !important;
    height: 65px !important;
    flex-shrink: 0;
}

.compact-header .brand-lockup .brand-mark {
    position: relative !important;
    width: 190px !important;
    height: 65px !important;
    overflow: hidden !important;
}

.compact-header .brand-lockup .brand-mark img {
    position: absolute !important;
    top: -56px !important;
    left: 0 !important;
    width: 190px !important;
    height: auto !important;
    max-width: none !important;
    transform: none !important;
    clip-path: none !important;
    mix-blend-mode: normal !important;
}

/* Grün ohne Hintergrund */
.home-copy h1 .hero-green {
    background: transparent !important;
    background-color: transparent !important;
    color: #245601 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 720px) {
    .compact-header .brand-lockup,
    .compact-header .brand-lockup .brand-mark {
        width: 145px !important;
        height: 50px !important;
    }

    .compact-header .brand-lockup .brand-mark img {
        width: 145px !important;
        top: -43px !important;
    }
}


/* PLANTSini Logo – vollständig und zentriert */
.compact-header .brand-lockup,
.compact-header .brand-lockup .brand-mark {
    width: 190px !important;
    height: 70px !important;
    overflow: visible !important;
}

.compact-header .brand-lockup .brand-mark img {
    position: static !important;
    display: block !important;
    width: 190px !important;
    height: 70px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
    clip-path: none !important;
    mix-blend-mode: normal !important;
}

@media (max-width: 720px) {
    .compact-header .brand-lockup,
    .compact-header .brand-lockup .brand-mark {
        width: 145px !important;
        height: 55px !important;
    }

    .compact-header .brand-lockup .brand-mark img {
        width: 145px !important;
        height: 55px !important;
    }
}


/* === PLANTSini HEADER REPARATUR === */

.compact-site .compact-header {
    width: min(1340px, calc(100% - 48px)) !important;
    height: 76px !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    backdrop-filter: none !important;
    display: flex !important;
    align-items: center !important;
}

.compact-header .brand-lockup {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    min-width: 175px !important;
    height: auto !important;
    overflow: visible !important;
    text-decoration: none !important;
    flex-shrink: 0 !important;
}

.plantsini-wordmark {
    display: inline-flex;
    align-items: baseline;
    white-space: nowrap;
    line-height: 1;
}

.plantsini-wordmark .word-plants {
    font-family: Inter, sans-serif;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: -1.5px;
    color: #e8dcc8;
}

.plantsini-wordmark .word-ini {
    font-family: Allura, cursive;
    font-size: 39px;
    font-weight: 400;
    color: #ff79b6;
    margin-left: 1px;
}

@media (max-width: 720px) {
    .compact-site .compact-header {
        width: calc(100% - 28px) !important;
        height: 65px !important;
    }

    .compact-header .brand-lockup {
        min-width: 115px !important;
    }

    .plantsini-wordmark .word-plants {
        font-size: 19px;
    }

    .plantsini-wordmark .word-ini {
        font-size: 30px;
    }
}


/* PLANTSini: Bildmarke links, Wortmarke rechts */

.compact-header .brand-lockup {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 230px !important;
    min-width: 230px !important;
    height: 65px !important;
    overflow: visible !important;
    text-decoration: none !important;
}

.compact-header .plantsini-icon {
    position: relative;
    display: block;
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    overflow: hidden;
    border-radius: 50%;
}

.compact-header .plantsini-icon img {
    position: absolute;
    display: block;
    width: 104px;
    height: 104px;
    max-width: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.compact-header .plantsini-wordmark {
    display: inline-flex;
    align-items: baseline;
    white-space: nowrap;
}

.compact-header .word-plants {
    font-family: Inter, sans-serif;
    font-size: 25px;
    font-weight: 700;
    letter-spacing: -1px;
    color: #e8dcc8;
}

.compact-header .word-ini {
    font-family: Allura, cursive;
    font-size: 39px;
    font-weight: 400;
    color: #ff79b6;
    margin-left: 1px;
}

@media (max-width: 720px) {
    .compact-header .brand-lockup {
        width: 155px !important;
        min-width: 155px !important;
        gap: 5px !important;
    }

    .compact-header .plantsini-icon {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .compact-header .plantsini-icon img {
        width: 72px;
        height: 72px;
    }

    .compact-header .word-plants {
        font-size: 18px;
    }

    .compact-header .word-ini {
        font-size: 29px;
    }
}


/* PLANTSini – vollständiges Logo anzeigen */

.compact-header .plantsini-icon {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 65px !important;
    height: 65px !important;
    flex: 0 0 65px !important;
    overflow: visible !important;
    border-radius: 0 !important;
}

.compact-header .plantsini-icon img {
    position: static !important;
    display: block !important;
    width: 65px !important;
    height: 65px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    transform: none !important;
    clip-path: none !important;
}

.compact-header .brand-lockup {
    gap: 12px !important;
}

@media (max-width: 720px) {
    .compact-header .plantsini-icon {
        width: 45px !important;
        height: 45px !important;
        flex-basis: 45px !important;
    }

    .compact-header .plantsini-icon img {
        width: 45px !important;
        height: 45px !important;
    }
}

/* PLANTSini: redesigned customer account */
.account-experience { width:min(740px, calc(100vw - 28px)); max-height:min(92vh, 900px); overflow:auto; border-radius:24px; }
.account-experience .account-shell { padding:clamp(18px, 4vw, 35px); }
.account-heading { text-align:center; margin-bottom:22px; }
.account-heading .eyebrow { margin:6px 0; }
.account-heading h2 { font-size:clamp(26px, 4vw, 38px); line-height:1.15; margin:8px 0; }
.account-leaf { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:50%; background:#d8e8bb; color:#214f35; font-size:25px; }
.account-subtitle { font-size:13px; line-height:1.6; max-width:390px; margin:8px auto; opacity:.82; }
.account-switch { display:grid; grid-template-columns:1fr 1fr; padding:5px; gap:5px; border-radius:14px; background:rgba(230,220,195,.14); margin-bottom:20px; }
.account-switch button { border:0; background:transparent; color:inherit; border-radius:10px; padding:12px; cursor:pointer; font:600 13px var(--sans); }
.account-switch button.active { background:#e8dcc8; color:#17432e; box-shadow:0 2px 9px rgba(0,0,0,.12); }
.account-experience [hidden] { display:none !important; }
.account-form { max-width:510px; margin:auto; }
.account-form label { margin-bottom:12px; }
.account-form small { display:block; margin-top:5px; font-size:11px; opacity:.8; }
.account-footnote { text-align:center; font-size:12px; opacity:.78; margin:16px 0 5px; }
.account-welcome { display:flex; gap:12px; align-items:center; margin:8px 0 20px; padding:15px; border-radius:16px; background:rgba(232,220,200,.10); }
.account-avatar { display:grid; place-items:center; width:50px; height:50px; flex-shrink:0; border-radius:50%; background:#e8dcc8; color:#25533b; font-size:26px; }
.account-welcome strong { font-size:18px; }.account-welcome p { margin:4px 0 0; font-size:12px; overflow-wrap:anywhere; opacity:.85; }
.account-menu { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin:0 0 23px; padding:5px; border-radius:14px; background:rgba(232,220,200,.11); }
.account-menu button { min-width:0; padding:12px 5px; border:0; border-radius:10px; background:transparent; color:inherit; cursor:pointer; font:600 12px var(--sans); }
.account-menu button.active { background:#e8dcc8; color:#17432e; }
.account-section { min-height:160px; }.account-section h3 { font-size:23px; margin:0 0 9px; }.account-section h4 { margin:19px 0 9px; }.account-section > p { font-size:13px; line-height:1.6; opacity:.85; }
.account-quicklinks { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
.account-quicklinks button { text-align:left; padding:18px; border:1px solid rgba(232,220,200,.25); border-radius:14px; background:rgba(232,220,200,.08); color:inherit; cursor:pointer; }
.account-quicklinks strong,.account-quicklinks span { display:block; }.account-quicklinks strong { font-size:15px; margin-bottom:8px; }.account-quicklinks span { font-size:12px; opacity:.8; }
.account-privacy-note { font-size:12px !important; }.account-logout { margin-top:20px; }
.account-experience input[readonly] { opacity:.7; cursor:not-allowed; }
@media(max-width:520px) { .account-experience .account-shell { padding:20px 14px; }.account-menu { grid-template-columns:repeat(2,1fr); }.account-quicklinks { grid-template-columns:1fr; }.account-welcome strong { font-size:16px; } }


/* PLANTSINI_NINA_PHOTO_START */

/* Über mich: großzügiges Layout */
.panel-about {
    grid-template-columns:
        minmax(320px, 0.95fr)
        minmax(340px, 1.05fr);
    gap: clamp(35px, 5vw, 85px);
    padding: 65px clamp(28px, 5vw, 100px);
    align-items: start;
    align-content: start;
    overflow-x: hidden;
    overflow-y: auto;
}

/* Nina: großes Portrait */
.panel-about .about-photo {
    width: 100%;
    max-width: 510px;
    max-height: none;
    aspect-ratio: 4 / 5;
    justify-self: center;
    align-self: start;
    position: relative;
    overflow: hidden;
    border: 5px solid #E8DCC8;
    border-radius: 32px;
    background: #E8DCC8;
    box-shadow:
        0 0 0 1px rgba(36,86,1,.35),
        0 25px 65px rgba(0,0,0,.35),
        0 0 65px rgba(232,220,200,.12);
    transform: none;
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.panel-about .about-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 25%;
    transition: transform .5s ease;
}

/* Dezenter Hover-Effekt */
@media (hover: hover) {
    .panel-about .about-photo:hover {
        transform: translateY(-5px);
        box-shadow:
            0 0 0 1px rgba(36,86,1,.5),
            0 35px 85px rgba(0,0,0,.42);
    }

    .panel-about .about-photo:hover img {
        transform: scale(1.035);
    }
}

/* Mehr Platz für Ninas Geschichte */
.panel-about .about-copy {
    width: 100%;
    max-width: 650px;
    align-self: start;
}

.panel-about .about-copy > p {
    margin-bottom: 18px;
    line-height: 1.8;
}

/* Besonderheiten */
.panel-about .about-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
    margin-top: 25px;
}

.panel-about .about-feature {
    padding: 20px;
    border: 1px solid rgba(232,220,200,.25);
    border-radius: 18px;
    background: rgba(232,220,200,.08);
}

.panel-about .about-feature h4 {
    margin: 0 0 10px;
    color: #E8DCC8;
}

.panel-about .about-feature p {
    margin: 0;
    line-height: 1.6;
}

/* Tablet */
@media (max-width: 900px) {
    .panel-about {
        grid-template-columns: 1fr;
        gap: 35px;
        padding: 45px 30px;
    }

    .panel-about .about-photo {
        width: min(100%, 440px);
        max-height: none;
        aspect-ratio: 4 / 5;
        justify-self: center;
    }
}

/* Smartphone */
@media (max-width: 620px) {
    .panel-about {
        grid-template-columns: minmax(0, 1fr);
        align-content: start;
        gap: 32px;
        padding: 30px 20px 55px;
        overflow-y: auto;
    }

    .panel-about .about-photo {
        width: min(100%, 370px);
        max-height: none;
        aspect-ratio: 4 / 5;
        border-width: 4px;
        border-radius: 26px;
    }

    .panel-about .about-copy {
        max-width: 100%;
        text-align: left;
    }

    .panel-about .about-copy h2 {
        font-size: clamp(36px, 9vw, 52px);
        line-height: 1.1;
    }

    .panel-about .about-features {
        grid-template-columns: 1fr;
    }
}

/* PLANTSINI_NINA_PHOTO_END */


/* PLANTSINI_CENTERED_ABOUT_START */

@media (min-width: 1100px) {

  .panel-about {
    display: block;
    padding: 24px clamp(24px, 3vw, 65px);
    overflow-x: hidden;
    overflow-y: auto;
  }

  .panel-about[hidden] {
    display: none;
  }

  .about-centered-layout {
    display: grid;
    grid-template-columns:
      minmax(0, 1fr)
      minmax(360px, 1.25fr)
      minmax(0, 1fr);
    gap: clamp(20px, 2.2vw, 42px);
    align-items: start;
    width: 100%;
    max-width: 1800px;
    margin: 0 auto;
  }

  .about-side {
    min-width: 0;
    padding-top: 34px;
    color: #f3e6d9;
  }

  .about-side p {
    margin: 0 0 13px;
    font-size: clamp(12px, .78vw, 14px);
    line-height: 1.6;
  }

  .about-side strong {
    color: #E8DCC8;
  }

  .about-left {
    text-align: right;
  }

  .about-right {
    text-align: left;
  }

  .about-center {
    min-width: 0;
    text-align: center;
  }

  .about-center h2 {
    margin: 0 0 18px;
    color: #E8DCC8;
    font-size: clamp(35px, 3vw, 54px);
    line-height: 1.1;
  }

  .panel-about .about-center .about-photo {
    width: 100%;
    max-width: 490px;
    max-height: none;
    aspect-ratio: 4 / 4.7;
    margin: 0 auto 18px;
    overflow: hidden;
    border: 4px solid #E8DCC8;
    border-radius: 38px 38px 110px 110px;
    box-shadow:
      0 25px 75px rgba(0,0,0,.38),
      0 0 55px rgba(232,220,200,.12);
  }

  .panel-about .about-center .about-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 25%;
  }

  .about-center > p {
    margin: 0;
    color: #E8DCC8;
    font-size: 17px;
    line-height: 1.5;
  }

  .about-right hr {
    margin: 15px 0;
    border: 0;
    border-top: 1px solid rgba(232,220,200,.3);
  }

  .about-right h3 {
    margin: 0 0 12px;
    color: #E8DCC8;
    font-size: 19px;
  }

  .panel-about .about-right .about-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 0;
  }

  .panel-about .about-right .about-feature {
    padding: 11px;
    border: 1px solid rgba(232,220,200,.22);
    border-radius: 14px;
    background: rgba(232,220,200,.08);
    text-align: left;
  }

  .panel-about .about-right .about-feature h4 {
    margin: 0 0 6px;
    color: #E8DCC8;
    font-size: 13px;
  }

  .panel-about .about-right .about-feature p {
    margin: 0;
    font-size: 11px;
    line-height: 1.45;
  }
}

/* PLANTSINI_CENTERED_ABOUT_END */


/* PLANTSINI_CENTER_FIX_START */

@media (min-width: 1100px) {

  /* Gesamte Über-mich-Seite */
  .page-panel.panel-about {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: none;
    padding: 28px 32px;
    overflow-x: hidden;
    overflow-y: auto;
    box-sizing: border-box;
  }

  .page-panel.panel-about[hidden] {
    display: none;
  }

  /* Inhalt wirklich mittig ausrichten */
  .panel-about .about-centered-layout {
    display: grid;
    grid-template-columns:
      minmax(0, 1fr)
      minmax(380px, 460px)
      minmax(0, 1fr);
    align-items: center;
    justify-content: center;
    gap: clamp(24px, 2.5vw, 48px);
    width: 100%;
    max-width: 1540px;
    margin: auto;
    padding: 10px 0;
    box-sizing: border-box;
  }

  /* Nina zentral */
  .panel-about .about-center {
    width: 100%;
    min-width: 0;
    text-align: center;
    justify-self: center;
  }

  .panel-about .about-center h2 {
    margin: 0 0 16px;
    color: #E8DCC8;
    font-size: clamp(36px, 2.7vw, 50px);
    line-height: 1.1;
  }

  .panel-about .about-center .about-photo {
    display: block;
    width: 100%;
    max-width: 460px;
    max-height: none;
    aspect-ratio: 4 / 4.5;
    margin: 0 auto 16px;
    border: 4px solid #E8DCC8;
    border-radius: 36px 36px 100px 100px;
    overflow: hidden;
    box-shadow:
      0 24px 70px rgba(0,0,0,.4),
      0 0 50px rgba(232,220,200,.12);
  }

  .panel-about .about-center .about-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 25%;
  }

  /* Textbereiche symmetrisch */
  .panel-about .about-side {
    width: 100%;
    min-width: 0;
    padding: 0;
    align-self: center;
  }

  .panel-about .about-left {
    text-align: right;
  }

  .panel-about .about-right {
    text-align: left;
  }

  .panel-about .about-side p {
    margin: 0 0 12px;
    font-size: clamp(12px, .75vw, 14px);
    line-height: 1.5;
  }

  .panel-about .about-side strong {
    color: #E8DCC8;
  }

  /* Besonderheiten */
  .panel-about .about-right .about-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .panel-about .about-right .about-feature {
    padding: 10px;
    border-radius: 12px;
    background: rgba(232,220,200,.08);
    border: 1px solid rgba(232,220,200,.2);
  }

  .panel-about .about-right .about-feature h4 {
    margin: 0 0 5px;
    font-size: 12px;
  }

  .panel-about .about-right .about-feature p {
    margin: 0;
    font-size: 11px;
    line-height: 1.4;
  }
}

/* PLANTSINI_CENTER_FIX_END */


/* PLANTSINI_BRANDING_START */

.plantsini-wordmark {
    display: inline;
    white-space: nowrap;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: normal;
}

.plantsini-wordmark .plantsini-plants {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-style: normal;
    letter-spacing: inherit;
}

.plantsini-wordmark .plantsini-ini {
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 1.16em;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
    display: inline;
    color: inherit;
}

/* PLANTSINI_BRANDING_END */



/* PLANTSINI REGISTER GLASS START */

/* Glasoptik für das Konto-Dialogfenster */
dialog#account-dialog {
    background: rgba(245, 242, 232, 0.16) !important;
    color: #203b1b !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    border-radius: 24px !important;
    box-shadow:
        0 24px 75px rgba(15, 30, 15, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
    backdrop-filter: blur(26px) saturate(145%) !important;
    -webkit-backdrop-filter: blur(26px) saturate(145%) !important;
}

dialog#account-dialog::backdrop {
    background: rgba(12, 25, 12, 0.34) !important;
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
}

/* Formulareingaben */
#account-register-form input,
#account-login-form input {
    background: rgba(255, 255, 255, 0.72) !important;
    color: #203b1b !important;
    border: 1px solid rgba(36, 86, 1, 0.22) !important;
    border-radius: 12px !important;
}

#account-register-form input::placeholder,
#account-login-form input::placeholder {
    color: #687367 !important;
    opacity: 1;
}

#account-register-form input:focus,
#account-login-form input:focus {
    outline: 2px solid rgba(36, 86, 1, 0.45);
    outline-offset: 2px;
}

/* Heller Button mit dunkler Schrift */
#account-register-form button[type="submit"] {
    background: #e8dcc8 !important;
    color: #203b1b !important;
    border: 1px solid rgba(36, 86, 1, 0.18) !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    box-shadow: 0 5px 18px rgba(20, 40, 15, 0.12);
    transition: background 0.2s ease, transform 0.2s ease;
}

#account-register-form button[type="submit"]:hover {
    background: #f5ead7 !important;
    color: #203b1b !important;
    transform: translateY(-1px);
}

/* PLANTSINI REGISTER GLASS END */



/* PLANTSINI ACCOUNT TEXT COLOR */
#account-dialog p,
#account-dialog .account-intro,
#account-dialog .account-hint,
#account-dialog .account-description {
    color: #E8DCC8 !important;
}


/* PLANTSINI SEPARATE ACCOUNT ACCESS */
.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.header-actions .account-register-trigger {
  background: #E8DCC8;
  color: #245601;
  border: 1px solid rgba(36, 86, 1, .2);
  border-radius: 999px;
  font-weight: 700;
}

.header-actions .account-login-trigger {
  border-radius: 999px;
  font-weight: 600;
}

.header-actions .account-register-trigger[hidden] {
  display: none !important;
}

#account-register-form[hidden],
#account-login-form[hidden] {
  display: none !important;
}

@media (max-width: 600px) {
  .header-actions {
    gap: 6px;
  }

  .header-actions .account-trigger {
    font-size: 12px;
    padding: 8px 10px;
  }
}

/* PLANTSINI LOGIN BUTTON FIX */
#account-login-form button[type="submit"],
#account-register-form button[type="submit"] {
    background: #E8DCC8 !important;
    color: #245601 !important;
    border: 1px solid rgba(36, 86, 1, 0.2) !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
}

#account-login-form button[type="submit"]:hover,
#account-register-form button[type="submit"]:hover {
    background: #F5EAD7 !important;
    color: #245601 !important;
}

/* PLANTSINI WARENKORB CHECKOUT BUTTON */
#checkout-button,
#checkout-button:hover,
#checkout-button:focus-visible {
    background: #E8DCC8 !important;
    color: #245601 !important;
    border: 1px solid rgba(36, 86, 1, 0.2) !important;
    font-weight: 700 !important;
}

#checkout-button:hover {
    background: #F5EAD7 !important;
}

/* PLANTSINI ANNOUNCEMENT BAR FIX */
.compact-site .announcement {
    color: #E8DCC8 !important;
    font-family: var(--sans);
    font-weight: 500;
    letter-spacing: 0.02em;
    text-transform: none;
    gap: 0;
}

.compact-site .announcement .plantsini-wordmark {
    display: inline-flex;
    align-items: baseline;
    white-space: nowrap;
    padding: 0 !important;
    margin: 0 0.35em 0 0 !important;
    color: #E8DCC8 !important;
    letter-spacing: 0 !important;
}

.compact-site .announcement .plantsini-plants {
    padding: 0 !important;
    margin: 0 !important;
    color: #E8DCC8 !important;
    letter-spacing: -0.05em !important;
}

.compact-site .announcement .plantsini-ini {
    padding: 0 !important;
    margin: 0 !important;
    color: #E8DCC8 !important;
    letter-spacing: 0 !important;
}

.compact-site .announcement > span[aria-hidden="true"] {
    padding: 0 10px !important;
    color: #E8DCC8 !important;
}

@media (max-width: 620px) {
    .compact-site .announcement {
        font-size: 9px;
        letter-spacing: 0;
        white-space: nowrap;
    }

    .compact-site .announcement > span[aria-hidden="true"] {
        padding: 0 5px !important;
    }
}


/* PLANTSINI WITHDRAWAL DOCUMENT */
.withdrawal-document {
    color: #E8DCC8;
    line-height: 1.75;
}

.withdrawal-document > h3 {
    font-size: 23px;
    margin-bottom: 25px;
}

.withdrawal-section {
    margin: 28px 0;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(232,220,200,.2);
}

.withdrawal-section h3 {
    color: #E8DCC8;
    margin-bottom: 12px;
    font-size: 17px;
}

.withdrawal-section p {
    margin: 12px 0;
    overflow-wrap: anywhere;
}

.withdrawal-section ul {
    padding-left: 22px;
}

.withdrawal-section li {
    margin: 7px 0;
}


/* PLANTSINI ONLINE WIDERRUF */
.withdrawal-form-section {
    margin-top: 34px;
}

.withdrawal-form {
    display: grid;
    gap: 17px;
    margin-top: 22px;
}

.withdrawal-form label {
    display: grid;
    gap: 7px;
    color: #E8DCC8;
    font-size: 13px;
    font-weight: 600;
}

.withdrawal-form input,
.withdrawal-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 15px;
    border: 1px solid rgba(232,220,200,.3);
    border-radius: 12px;
    background: rgba(255,255,255,.10);
    color: #E8DCC8;
    font: inherit;
}

.withdrawal-form input:focus,
.withdrawal-form textarea:focus {
    outline: 2px solid #E8DCC8;
    outline-offset: 2px;
}

.withdrawal-date-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
}

.withdrawal-notice {
    font-size: 12px;
    line-height: 1.7;
}

.withdrawal-submit {
    width: 100%;
    padding: 15px 20px;
    border: 0;
    border-radius: 12px;
    background: #E8DCC8 !important;
    color: #245601 !important;
    font-weight: 700;
}

.withdrawal-submit:disabled {
    opacity: .65;
    cursor: wait;
}

.withdrawal-message {
    overflow-wrap: anywhere;
    font-size: 13px;
}

.withdrawal-message.success {
    color: #D4F0BD;
}

.withdrawal-honeypot {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

@media (max-width: 480px) {
    .withdrawal-date-grid {
        grid-template-columns: 1fr;
    }
}
