.cn-product-page .cn-pricing-plan-selector {
	display: grid;
	gap: 6px;
	margin-block: 12px;
	font-size: 13px;
}
.cn-product-page .cn-pricing-plan-selector label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.cn-product-page .cn-pricing-plan-selector select {
	min-height: 36px;
	max-width: 100%;
	border: 1px solid var(--line);
	border-radius: 6px;
}
.cn-product-page .cn-pricing-plan-selector small {
	overflow-wrap: anywhere;
}
.cn-product-page [data-pricing-preview-status][hidden],
.cn-product-page [data-pricing-preview-message][hidden] {
	display: none;
}
/* Ported from input/templates/shop/cannectra-produktseite.html (SHA-256 73673a148216c679d6ef59bb272a1f9294d11c82e30c4d38685df69232fc5e90). */

.cn-product-page{
      --brand:#578b9b;
      --brand-dark:#365f6b;
      --brand-accessible:#477887;
      --brand-soft:#eaf4f6;
      --ink:#1e2a2f;
      --muted:#5c7078;
      --line:#d1e1e5;
      --surface:#fff;
      --canvas:#f4fafb;
      --accent:#ff8a2a;
      --accent-dark:#d66f1d;
      --good:#5f9272;
      --good-soft:#edf7f0;
      --warning:#b97225;
      --shadow:0 18px 48px rgba(30,42,47,.08);
      --shadow-soft:0 9px 26px rgba(30,42,47,.055);
      --radius-xl:22px;
      --radius-lg:16px;
      --radius-md:12px;
      --max:1540px;
      --ease:cubic-bezier(.2,.78,.2,1);
    }

    .cn-product-page,.cn-product-page *{box-sizing:border-box}
    .cn-product-page{scroll-behavior:smooth}
    .cn-product-page{
      margin:0;
      min-height:100vh;
      background:
        radial-gradient(circle at 5% 8%,rgba(94,143,158,.055),transparent 28rem),
        radial-gradient(circle at 95% 42%,rgba(242,140,53,.025),transparent 26rem),
        var(--canvas);
      color:var(--ink);
      font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      line-height:1.55;
      -webkit-font-smoothing:antialiased;
    }
    .cn-product-page button,.cn-product-page input{font:inherit;color:inherit}
    .cn-product-page button,.cn-product-page input{appearance:none;-webkit-appearance:none}
    .cn-product-page a{color:inherit}
    .cn-product-page .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

    .cn-product-page{
      width:min(var(--max),calc(100% - 2rem));
      margin-inline:auto;
      padding:clamp(18px,3vw,38px) 0 clamp(56px,7vw,96px);
    }

    .cn-product-shell{
      display:grid;
      grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
      gap:18px;
      align-items:start;
    }
    .cn-product-media{display:grid;gap:10px;min-width:0}
    .cn-product-title-panel{width:100%;margin-bottom:18px}
    .cn-product-title-panel .cannectra-page-title__copy{display:grid;gap:9px;min-width:0}
    .cn-breadcrumbs{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:6px;
      margin:0;
      color:rgba(255,255,255,.78);
      font-size:9px;
      font-weight:820;
    }
    .cn-breadcrumbs a,.cn-breadcrumbs span[aria-current="page"]{
      display:inline-flex;
      align-items:center;
      min-height:28px;
      padding:0 10px;
      border:1px solid rgba(255,255,255,.18);
      border-radius:999px;
      background:rgba(255,255,255,.08);
      color:#fff;
      text-decoration:none;
      transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease;
    }
    .cn-breadcrumbs a:hover,.cn-breadcrumbs a:focus-visible{
      border-color:rgba(255,255,255,.4);
      background:rgba(255,255,255,.16);
      color:#fff;
      transform:translateY(-1px);
    }
    .cn-breadcrumbs span[aria-current="page"]{
      border-color:rgba(255,255,255,.2);
      background:rgba(30,42,47,.2);
      color:#fff;
    }
    .cn-breadcrumbs svg{width:10px;height:10px;fill:none;stroke:rgba(255,255,255,.58);stroke-width:2.1}

    .cn-gallery,.cn-buybox,.cn-tabs-shell{
      border:1px solid var(--line);
      background:rgba(255,255,255,.97);
      box-shadow:var(--shadow-soft);
    }

    .cn-gallery{
      display:grid;
      grid-template-columns:minmax(0,1fr) 90px;
      gap:14px;
      align-items:start;
      min-height:0;
      padding:16px;
      border-radius:var(--radius-xl);
    }
    .cn-thumbs{display:grid;align-content:start;gap:10px}
    .cn-thumb{
      display:grid;
      width:100%;
      aspect-ratio:1;
      place-items:center;
      padding:7px;
      border:1px solid var(--line);
      border-radius:13px;
      background:#fbfdfd;
      cursor:pointer;
      transition:border-color .18s ease,background .18s ease,transform .18s ease;
    }
    .cn-thumb:hover,.cn-thumb[aria-pressed="true"]{border-color:var(--brand);background:var(--brand-soft);transform:translateY(-1px)}
    .cn-thumb svg{width:68%;height:68%;fill:none;stroke:#5f8894;stroke-width:1.5}

    .cn-product-visual{
      position:relative;
      display:grid;
      width:100%;
      min-height:0;
      aspect-ratio:1 / 1;
      align-self:start;
      place-items:center;
      overflow:hidden;
      border-radius:17px;
      background:
        radial-gradient(circle at 72% 18%,rgba(255,138,42,.11),transparent 19rem),
        linear-gradient(145deg,#fafdfe,#e9f3f5 76%,#dbecef);
    }
    .cn-product-visual::before{
      position:absolute;
      inset:8% 10% auto auto;
      width:160px;
      height:160px;
      border:1px solid rgba(87,139,155,.13);
      border-radius:38px;
      content:"";
      transform:rotate(18deg);
    }
    .cn-product-visual::after{
      position:absolute;
      bottom:9%;
      left:11%;
      width:210px;
      height:70px;
      border-radius:50%;
      background:rgba(54,95,107,.12);
      filter:blur(21px);
      content:"";
    }
    .cn-packshot{
      position:relative;
      z-index:1;
      width:min(62%,390px);
      aspect-ratio:.72;
      border-radius:26px 26px 34px 34px;
      background:linear-gradient(165deg,#496f7a,#233f47);
      box-shadow:0 34px 58px rgba(39,74,85,.24),inset 0 1px 0 rgba(255,255,255,.23);
      transform:rotate(-4deg);
    }
    .cn-packshot::before{
      position:absolute;
      inset:8% 9% 47%;
      border:1px solid rgba(255,255,255,.22);
      border-radius:18px;
      background:linear-gradient(140deg,rgba(255,255,255,.09),rgba(255,255,255,.01));
      content:"";
    }
    .cn-packshot::after{
      position:absolute;
      right:8%;
      bottom:7%;
      left:8%;
      padding:14px 12px;
      border-radius:14px;
      background:#f4fafb;
      color:#365f6b;
      content:"CANNectra · DEMO";
      font-size:clamp(9px,1.1vw,13px);
      font-weight:950;
      letter-spacing:.14em;
      text-align:center;
    }
    .cn-visual-badge{
      position:absolute;
      top:16px;
      left:16px;
      z-index:2;
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:32px;
      padding:0 10px;
      border:1px solid rgba(76,120,134,.13);
      border-radius:999px;
      background:rgba(255,255,255,.88);
      box-shadow:0 8px 20px rgba(30,42,47,.06);
      color:var(--brand-dark);
      font-size:10px;
      font-weight:900;
      letter-spacing:.05em;
      text-transform:uppercase;
      backdrop-filter:blur(12px);
    }
    .cn-visual-badge::before{width:7px;height:7px;border-radius:50%;background:var(--accent);content:""}

    .cn-buybox{
      position:sticky;
      top:18px;
      border-radius:var(--radius-xl);
      overflow:hidden;
    }
    .cn-buybox-top{
      padding:clamp(20px,2.6vw,32px);
      background:
        radial-gradient(circle at 100% 0,rgba(255,138,42,.12),transparent 230px),
        linear-gradient(145deg,#fff,#fbfdfd);
    }
    .cn-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}
    .cn-kicker span{
      display:inline-flex;
      align-items:center;
      min-height:26px;
      padding:0 9px;
      border-radius:999px;
      background:var(--brand-soft);
      color:var(--brand-dark);
      font-size:9px;
      font-weight:900;
      letter-spacing:.1em;
      text-transform:uppercase;
    }
    .cn-kicker .is-neutral{background:#f1f5f6;color:#63767d}
    .cn-product-title-panel .cn-product-title{margin:0;color:#fff;font-size:clamp(24px,2.5vw,34px);line-height:1.05;letter-spacing:-.035em}
    .cn-product-subtitle{max-width:720px;margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.7}

    .cn-product-overview{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:12px;align-items:start;margin-top:18px}
    .cn-product-overview.is-unavailable{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .cn-product-details-inline{min-width:0;max-width:100%;padding:14px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#fff,#f7fbfc);overflow-wrap:anywhere}
    .cn-product-details-inline__head span{display:block;color:var(--brand-dark);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
    .cn-product-details-inline__head h2{margin:3px 0 0;font-size:15px;letter-spacing:-.025em}
    .cn-product-details-inline__content{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px;align-items:start}
    .cn-product-details-inline__attributes{min-width:0}
    .cn-product-details-inline__attributes .woocommerce-product-attributes{width:100%;table-layout:fixed;margin:0;border-collapse:collapse}
    .cn-product-details-inline__attributes .woocommerce-product-attributes th,
    .cn-product-details-inline__attributes .woocommerce-product-attributes td{padding:7px 8px;border-bottom:1px solid var(--line);font-size:9px;text-align:left;vertical-align:top}
    .cn-product-details-inline__attributes .woocommerce-product-attributes th{width:38%;color:#72848b;font-weight:800}
    .cn-product-details-inline__attributes .woocommerce-product-attributes p{margin:0}
    .cn-product-details-inline__data{display:grid;gap:7px;margin:0}
    .cn-product-details-inline__data>div{display:grid;grid-template-columns:minmax(82px,.45fr) minmax(0,1fr);gap:8px;padding-bottom:7px;border-bottom:1px solid var(--line)}
    .cn-product-details-inline__data dt{color:#72848b;font-size:8px;font-weight:800}
    .cn-product-details-inline__data dd{min-width:0;margin:0;font-size:9px;font-weight:760;overflow-wrap:anywhere}
    .cn-product-commerce-details{display:grid;grid-template-columns:1fr;gap:9px;min-width:0}
    .cn-product-details-inline__content:empty{display:none}

    .cn-availability-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:9px;
      margin-top:20px;
    }
    .cn-info-tile{
      display:flex;
      align-items:center;
      gap:10px;
      min-height:58px;
      padding:10px 12px;
      border:1px solid rgba(76,120,134,.14);
      border-radius:13px;
      background:#fbfdfd;
    }
    .cn-info-tile__icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:10px;background:var(--brand-soft);color:var(--brand-dark)}
    .cn-info-tile__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
    .cn-info-tile>span:last-child,.cn-info-tile>div{min-width:0;overflow-wrap:anywhere}
    .cn-info-tile strong,.cn-info-tile small{display:block}
    .cn-info-tile strong{font-size:11px}
    .cn-info-tile small{margin-top:1px;color:var(--muted);font-size:9px;line-height:1.35}
    .cn-info-tile.is-stock .cn-info-tile__icon{background:var(--good-soft);color:var(--good)}
    .cn-info-tile.is-price{align-items:flex-start;background:linear-gradient(145deg,#fff,#f4fafb)}
    .cn-info-tile.is-price .cn-info-tile__icon{background:var(--brand-soft);color:var(--brand-dark)}
    .cn-detail-price{margin-top:4px!important;color:var(--brand-dark)!important;font-size:clamp(1.25rem,2vw,1.5rem)!important;font-weight:950!important;line-height:1.3!important;letter-spacing:-.035em}
    .cn-detail-price .price{display:block}
    .cn-detail-price del{margin-right:6px;color:#7b8c92;font-size:.58em;font-weight:750;opacity:.75}
    .cn-detail-price ins{text-decoration:none}
    .cn-detail-price .price-per-unit{display:block;margin-top:4px;color:var(--muted);font-size:.875rem;font-weight:500;line-height:1.35;letter-spacing:normal}
    .cn-info-tile.is-price .cn-tax-note{max-width:none;margin-top:4px;text-align:left}
    .cn-stock-dot{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px rgba(95,146,114,.12)}

    .cn-price-block{
      margin-top:18px;
      padding-top:18px;
      border-top:1px solid #e5eef0;
    }
    .cn-price-head{display:flex;align-items:end;justify-content:space-between;gap:18px}
    .cn-price-label{display:block;margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
    .cn-price{display:flex;align-items:baseline;gap:8px}
    .cn-price strong{font-size:clamp(28px,3vw,38px);line-height:1;color:var(--brand-dark);letter-spacing:-.04em}
    .cn-price span{color:var(--muted);font-size:10px;font-weight:700}
    .cn-tax-note{max-width:200px;color:#75878e;font-size:9px;line-height:1.4;text-align:right}

    .cn-tier-panel{
      margin-top:16px;
      padding:14px;
      border:1px solid #dce8eb;
      border-radius:15px;
      background:linear-gradient(145deg,#fbfdfd,#f2f8f9);
    }
    .cn-tier-table{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
    .cn-tier-table:empty{display:none}
    .cn-tier{
      position:relative;
      min-width:0;
      min-height:52px;
      padding:10px 8px;
      border:1px solid #dce8eb;
      border-radius:10px;
      background:#fff;
      text-align:center;
      transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;
    }
    .cn-tier span,.cn-tier strong{display:block;white-space:nowrap}
    .cn-tier span{color:#6f8188;font-size:8px;font-weight:760}
    .cn-tier strong{margin-top:2px;color:var(--brand-dark);font-size:11px}
    .cn-tier strong{white-space:normal}
    .cn-tier.is-active{border-color:var(--brand);background:linear-gradient(145deg,#fff,var(--brand-soft));box-shadow:0 0 0 2px rgba(87,139,155,.11);transform:translateY(-1px)}
    .cn-tier.is-active::after{position:absolute;top:-6px;right:8px;padding:1px 5px;border-radius:999px;background:var(--brand-dark);color:#fff;content:"aktiv";font-size:6px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
    .cn-tier-selection-card{margin-top:10px;padding:16px;border:1px solid #dce8eb;border-radius:11px;background:#fff;color:#5d7178;font-size:10px;font-weight:760;line-height:1.55;text-align:center}
    .cn-tier-selection-card[hidden],.cn-tier-progress[hidden],.cn-tier-note[hidden]{display:none!important}

    .cn-tier-progress{display:block;margin-top:12px;padding:11px;border:1px solid rgba(87,139,155,.16);border-radius:11px;background:#fff;box-shadow:0 6px 16px rgba(30,42,47,.04)}
    .cn-tier-progress-copy{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:9px;font-weight:790}
    .cn-tier-progress-copy span{min-width:0}
    .cn-tier-progress-copy span:last-child{color:var(--brand-dark)}
    .cn-progress-track{height:9px;overflow:hidden;border:1px solid rgba(87,139,155,.08);border-radius:999px;background:#e3edef;box-shadow:inset 0 1px 2px rgba(30,42,47,.08)}
    .cn-progress-bar{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand-dark));box-shadow:0 0 10px rgba(54,95,107,.2);transition:width .3s var(--ease)}
    .cn-tier-note{margin:9px 0 0;color:#6a7d84;font-size:8px;line-height:1.5}

    .cn-combine-hint{
      display:grid;
      grid-template-columns:34px minmax(0,1fr) auto;
      gap:10px;
      align-items:center;
      margin-top:9px;
      padding:10px;
      border:1px solid rgba(255,138,42,.2);
      border-radius:11px;
      background:#fff9f3;
    }
    .cn-combine-hint__icon{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:#fff;color:var(--accent-dark);box-shadow:0 4px 12px rgba(214,111,29,.09)}
    .cn-combine-hint__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .cn-combine-hint strong,.cn-combine-hint small{display:block}
    .cn-combine-hint strong{font-size:10px}
    .cn-combine-hint small{margin-top:2px;color:#80654f;font-size:8.5px;line-height:1.35}
    .cn-link-button{
      min-height:34px;
      padding:0 10px;
      border:1px solid rgba(214,111,29,.22);
      border-radius:9px;
      background:#fff;
      color:#a65314;
      font-size:8.5px;
      font-weight:900;
      cursor:pointer;
      white-space:nowrap;
    }
    .cn-link-button:hover{border-color:var(--accent);background:#fff4e9}

    .cn-order-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:16px}
    .cn-qty-control{display:grid;grid-template-columns:36px 58px 36px;height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
    .cn-qty-control button{border:0;background:transparent;color:var(--brand-dark);font-size:20px;font-weight:700;cursor:pointer}
    .cn-qty-control button:hover{background:var(--brand-soft)}
    .cn-qty-control input{width:100%;border:0;border-inline:1px solid var(--line);border-radius:0;outline:0;background:#fff;text-align:center;font-size:12px;font-weight:850;caret-color:var(--brand)}
    .cn-qty-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(87,139,155,.12)}
    .cn-cart-button{
      min-height:48px;
      border:0;
      border-radius:12px;
      background:linear-gradient(135deg,var(--brand-dark),var(--brand-accessible));
      box-shadow:0 10px 22px rgba(54,95,107,.2);
      color:#fff;
      font-size:11px;
      font-weight:900;
      letter-spacing:.025em;
      cursor:pointer;
      transition:transform .18s ease,box-shadow .18s ease;
    }
    .cn-cart-button:hover{transform:translateY(-1px);box-shadow:0 13px 25px rgba(54,95,107,.24)}
    .cn-buy-meta{display:flex;flex-wrap:wrap;gap:7px 14px;margin:11px 0 0;color:#6f8188;font-size:8.5px;font-weight:700}
    .cn-buy-meta span{display:inline-flex;align-items:center;gap:5px}
    .cn-buy-meta svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.9}

    .cn-tabs-shell{margin-top:18px;border-radius:var(--radius-xl);overflow:hidden}
    .cn-tabs{
      display:flex;
      gap:4px;
      padding:8px;
      overflow-x:auto;
      border-bottom:1px solid var(--line);
      background:#f7fbfc;
      scrollbar-width:none;
    }
    .cn-tabs::-webkit-scrollbar{display:none}
    .cn-product-page .cn-tab{
      position:relative;
      flex:0 0 auto;
      min-height:42px;
      padding:0 14px;
      border:0;
      border-radius:10px;
      background:transparent;
      color:#6b7d84;
      font-size:10px;
      font-weight:850;
      cursor:pointer;
      white-space:nowrap;
      transition:background .18s ease,color .18s ease,box-shadow .18s ease;
    }
    .cn-product-page .cn-tab:hover{background:#edf5f6;color:var(--brand-dark)}
    .cn-product-page .cn-tab[aria-selected="true"]{background:#fff;color:var(--brand-dark);box-shadow:0 4px 14px rgba(30,42,47,.08)}
    .cn-tab-badge{display:inline-grid;min-width:18px;height:18px;margin-left:5px;place-items:center;border-radius:99px;background:var(--brand-soft);color:var(--brand-dark);font-size:7px}
    .cn-product-page .cn-tab[aria-selected="true"] .cn-tab-badge{background:var(--brand-dark);color:#fff}
    .cn-tab-panel{padding:clamp(18px,3vw,32px)}
    .cn-tab-panel[hidden]{display:none}

    .cn-content-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:24px;align-items:start}
    .cn-prose h2,.cn-info-card h2{margin:0 0 9px;font-size:18px;letter-spacing:-.025em}
    .cn-prose h3{margin:22px 0 7px;font-size:13px}
    .cn-prose p,.cn-prose li{color:#5d7178;font-size:11px;line-height:1.75}
    .cn-prose p{margin:0 0 10px}
    .cn-prose ul{display:grid;gap:6px;margin:8px 0 0;padding-left:18px}
    .cn-info-card{padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#fff,#f7fbfc)}
    .cn-info-card dl{display:grid;grid-template-columns:minmax(105px,.45fr) 1fr;gap:9px 12px;margin:0}
    .cn-info-card dt{color:#75878e;font-size:9px;font-weight:780}
    .cn-info-card dd{margin:0;color:var(--ink);font-size:10px;font-weight:760}

    .cn-manufacturer-grid,.cn-legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .cn-data-card{padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff}
    .cn-data-card .cn-card-kicker{display:block;margin-bottom:5px;color:var(--brand-dark);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
    .cn-data-card h2{margin:0 0 12px;font-size:16px;letter-spacing:-.025em}
    .cn-data-list{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 14px;margin:0}
    .cn-data-list dt{color:#72848b;font-size:9px;font-weight:760}
    .cn-data-list dd{margin:0;font-size:10px;font-weight:760;overflow-wrap:anywhere}
    .cn-legal-note{margin:14px 0 0;padding:11px 12px;border:1px solid #f0dcc8;border-radius:11px;background:#fff9f3;color:#765d49;font-size:9px;line-height:1.55}

    .cn-related-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}
    .cn-related-head h2{margin:0;font-size:19px;letter-spacing:-.03em}

    .cn-related-grid{--related-columns:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
    .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > .cn-related-card{display:none}
    .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="0"],
    .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="1"],
    .cn-product-page .cn-related-grid:not(.is-related-ready):not(:has([data-related-priority="true"])) > [data-related-index="2"],
    .cn-product-page .cn-related-grid:not(.is-related-ready):not(:has([data-related-priority="true"])) > [data-related-index="3"]{display:flex}
    .cn-product-page .cn-related-grid[data-related-grid] > .cn-related-card[hidden],.cn-related-pool-status[hidden]{display:none}
    .cn-related-pool-status{position:relative;z-index:5;flex:0 0 auto;padding:10px 12px;border-bottom:1px solid #f2c99e;background:#fff3e6;color:#91410e;font-size:10px;font-weight:850;line-height:1.4}
    .cn-product-page .cn-related-card.is-pool-relevant{border-color:#f2c99e}
    .cn-related-actions{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:7px;align-items:stretch}
    .cn-combine-button{min-height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--brand-dark);font-size:8.5px;font-weight:900;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}
    .cn-combine-button:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}
    .cn-combine-button:disabled{border-color:#e1e9eb;background:#f5f8f9;color:#98a6ab;cursor:not-allowed}
    .cn-related-card.is-selected .cn-combine-button{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff}
    .cn-mini-qty-control{
      display:grid;
      grid-template-columns:34px minmax(0,1fr) 34px;
      min-width:0;
      min-height:38px;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:10px;
      background:#fff;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
    }
    .cn-mini-qty-control button{
      display:grid;
      place-items:center;
      min-width:0;
      padding:0;
      border:0;
      background:#f7fbfc;
      color:var(--brand-dark);
      font-size:16px;
      font-weight:850;
      line-height:1;
      cursor:pointer;
      transition:background .16s ease,color .16s ease;
    }
    .cn-mini-qty-control button:hover:not(:disabled){background:var(--brand-soft);color:#294a53}
    .cn-mini-qty-control input{
      width:100%;
      min-width:0;
      padding:0 3px;
      border:0;
      border-inline:1px solid var(--line);
      border-radius:0;
      outline:0;
      background:#fff;
      color:var(--ink);
      text-align:center;
      font-size:9px;
      font-weight:900;
      caret-color:var(--brand);
    }
    .cn-mini-qty-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(87,139,155,.12)}
    .cn-mini-qty-control.is-disabled{border-color:#e1e9eb;background:#f5f8f9;opacity:.72}
    .cn-mini-qty-control.is-disabled button,.cn-mini-qty-control.is-disabled input{background:#f5f8f9;color:#9aa8ad;cursor:not-allowed}
    .cn-product-page :focus-visible{outline:3px solid var(--accent);outline-offset:3px}

    @media(max-width:1180px){
      .cn-product-shell{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}
      .cn-gallery{grid-template-columns:minmax(0,1fr) 72px;min-height:0}
      .cn-product-visual{min-height:0}
      .cn-tier-table{grid-template-columns:1fr 1fr}
    }
    @media(max-width:900px){
      .cn-related-grid{--related-columns:2;grid-template-columns:repeat(2,minmax(0,1fr))}
      .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="1"],
      .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="2"],
      .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="3"]{display:none}
      .cn-product-page .cn-related-grid:not(.is-related-ready):not(:has([data-related-priority="true"])) > [data-related-index="1"]{display:flex}
      .cn-product-shell{grid-template-columns:1fr}
      .cn-buybox{position:static}
      .cn-gallery{min-height:0}
      .cn-product-visual{min-height:0}
      .cn-content-grid,.cn-manufacturer-grid,.cn-legal-grid{grid-template-columns:1fr}
    }
    @media(max-width:680px){
      .cn-product-page{width:calc(100% - 1rem);padding-top:12px}
      .cn-gallery{grid-template-columns:1fr;min-height:0;padding:10px}
      .cn-thumbs{grid-template-columns:repeat(4,1fr);grid-row:2}
      .cn-product-visual{min-height:0}
      .cn-packshot{width:min(58%,240px)}
      .cn-buybox-top{padding:18px}
      .cn-availability-grid{grid-template-columns:1fr}
      .cn-price-head{align-items:start;flex-direction:column;gap:7px}
      .cn-tax-note{text-align:left}
      .cn-combine-hint{grid-template-columns:34px minmax(0,1fr)}
      .cn-combine-hint .cn-link-button{grid-column:1/-1}
      .cn-order-row{grid-template-columns:1fr}
      .cn-qty-control{grid-template-columns:44px minmax(0,1fr) 44px}
      .cn-related-head{align-items:stretch;flex-direction:column}
      .cn-related-grid{--related-columns:1;grid-template-columns:1fr}
      .cn-product-page .cn-related-grid[data-related-grid]:not(.is-related-ready) > [data-related-index="1"],
      .cn-product-page .cn-related-grid:not(.is-related-ready):has([data-related-priority="true"]) > [data-related-priority="false"]{display:none}
      .cn-related-actions{grid-template-columns:minmax(0,1fr) 124px}
      .cn-data-list{grid-template-columns:1fr;gap:3px}
      .cn-data-list dd{margin-bottom:7px}
    }
    @media(max-width:420px){
      .cn-product-visual{min-height:330px}
      .cn-tier-table{grid-template-columns:1fr 1fr}
      .cn-product-page .cn-tab{padding-inline:10px}
      .cn-tab-panel{padding:16px}
      .cn-info-card dl{grid-template-columns:1fr;gap:3px}
      .cn-info-card dd{margin-bottom:6px}
    }
    @media(prefers-reduced-motion:reduce){
      .cn-product-page{scroll-behavior:auto}
      .cn-product-page *,.cn-product-page *::before,.cn-product-page *::after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}
    }


    /* Product detail refinement: aligned media/detail bottoms, thumbnails below image, FAQ, review and related grouping. */
    .cn-product-shell{align-items:stretch}
    .cn-product-media{height:100%;align-self:stretch}
    .cn-gallery{
      grid-template-columns:1fr;
      grid-template-rows:auto auto;
      height:100%;
      min-height:0;
      align-self:stretch;
    }
    .cn-product-visual{min-height:0}
    .cn-thumbs{
      display:flex;
      flex-wrap:nowrap;
      align-items:center;
      justify-content:center;
      gap:8px;
      max-width:100%;
      padding:2px 0;
      overflow-x:auto;
      overflow-y:hidden;
      overscroll-behavior-inline:contain;
      scrollbar-gutter:stable;
      scrollbar-width:thin;
    }
    .cn-thumb{width:78px;min-width:78px;flex:0 0 78px;aspect-ratio:1.15/1;border-radius:11px}
    .cn-thumb svg{width:58%;height:58%}
    .cn-buybox{height:100%;align-self:stretch}

    .cn-faq{
      display:grid;
      gap:8px;
      margin-top:24px;
      padding-top:20px;
      border-top:1px solid #e5eef0;
    }
    .cn-faq-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:2px}
    .cn-faq-head h3{margin:0;font-size:15px;letter-spacing:-.025em}
    .cn-faq-head p{max-width:520px;margin:0;color:var(--muted);font-size:9px;line-height:1.5;text-align:right}
    .cn-faq-item{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}
    .cn-faq-question{
      display:grid;
      grid-template-columns:minmax(0,1fr) 26px;
      align-items:center;
      gap:12px;
      width:100%;
      min-height:46px;
      padding:9px 11px 9px 14px;
      border:0;
      background:#fbfdfd;
      color:var(--ink);
      font-size:10px;
      font-weight:850;
      text-align:left;
      cursor:pointer;
    }
    .cn-faq-question:hover{background:var(--brand-soft)}
    .cn-faq-toggle{display:grid;width:26px;height:26px;place-items:center;border-radius:8px;background:#fff;color:var(--brand-dark);box-shadow:0 3px 10px rgba(30,42,47,.07)}
    .cn-faq-toggle::before,.cn-faq-toggle::after{grid-area:1/1;width:10px;height:1.5px;border-radius:99px;background:currentColor;content:"";transition:transform .2s var(--ease)}
    .cn-faq-toggle::after{transform:rotate(90deg)}
    .cn-faq-question[aria-expanded="true"] .cn-faq-toggle::after{transform:rotate(0deg)}
    .cn-faq-answer{padding:0 14px 13px;color:#5d7178;font-size:9.5px;line-height:1.65}
    .cn-faq-answer[hidden]{display:none}

    .cn-general-cart-button{min-height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--brand-dark);font-size:8.5px;font-weight:900;cursor:pointer;transition:border-color .18s ease,background .18s ease}
    .cn-general-cart-button:hover{border-color:var(--brand);background:var(--brand-soft)}

    @media(max-width:900px){
      .cn-product-media,.cn-gallery,.cn-buybox{height:auto}
      .cn-gallery{grid-template-rows:auto auto}
      .cn-product-visual{min-height:0}
      .cn-product-overview,.cn-product-overview.is-unavailable{grid-template-columns:1fr}
      .cn-product-details-inline__content{grid-template-columns:1fr}
    }
    @media(max-width:680px){
      .cn-gallery{grid-template-columns:1fr;grid-template-rows:auto auto}
      .cn-thumbs{grid-row:2;padding-top:0}
      .cn-product-visual{min-height:0}
      .cn-faq-head{align-items:start;flex-direction:column}
      .cn-faq-head p{text-align:left}
    }

/* WooCommerce integration: real product media, classic purchase forms and tabs. */
.cn-product-page .cn-related-products{margin-top:24px;scroll-margin-top:calc(var(--cannectra-service-height) + var(--cannectra-header-height) + var(--cannectra-category-height) + 16px)}
.cn-product-page .cn-product-subtitle{max-width:none;margin-block:24px}
body.single-product .wp-site-blocks > .cannectra-global-header + .content-area:has(.cn-product-title-panel){margin-block-start:5px}
.cn-product-page .cn-product{min-width:0}
.cn-product-page .cn-product-image{
  position:relative;
  z-index:1;
  display:grid;
  width:88%;
  height:88%;
  aspect-ratio:1 / 1;
  place-items:center;
  text-decoration:none;
}
.cn-product-page .cn-product-image img{
  position:absolute;
  inset:0;
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 28px 28px rgba(39,74,85,.18));
}
.cn-product-page .cn-thumb{overflow:hidden}
.cn-product-page .cn-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.cn-product-page .cn-product-subtitle p{margin:0}
.cn-product-page .cn-product-subtitle p+p{margin-top:8px}
.cn-product-page .cn-info-tile.is-unavailable .cn-info-tile__icon{background:#f8eceb;color:#a94e48}
.cn-product-page .cn-info-tile.is-unavailable .cn-stock-dot{background:#a94e48;box-shadow:0 0 0 3px rgba(169,78,72,.12)}
.cn-product-page .cn-price .price,
.cn-product-page .cn-price>strong{display:block;margin:0;color:var(--brand-dark);font-size:clamp(24px,3vw,34px);font-weight:950;line-height:1.05}
.cn-product-page .cn-price del{margin-right:7px;color:#7b8c92;font-size:.58em;font-weight:750;opacity:.75}
.cn-product-page .cn-price ins{text-decoration:none}
.cn-product-page .cn-order-row{display:block}
.cn-product-page .cn-order-row form.cart{display:grid!important;gap:12px;margin:0}
.cn-product-page .cn-order-row form.cart:not(.variations_form){grid-template-columns:auto minmax(0,1fr);align-items:end}
.cn-product-page .cn-order-row form.cart:not(.variations_form) > .quantity,
.cn-product-page .cn-order-row .woocommerce-variation-add-to-cart > .quantity{grid-column:1;grid-row:1;margin:0!important}
.cn-product-page .cn-order-row form.cart:not(.variations_form) > .single_add_to_cart_button,
.cn-product-page .cn-order-row .woocommerce-variation-add-to-cart > .single_add_to_cart_button{grid-column:2;grid-row:1;float:none!important;width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}
.cn-product-page .cn-order-row form.cart:not(.variations_form) > :not(.quantity):not(.single_add_to_cart_button):not(input){grid-column:1/-1}
.cn-product-page .cn-order-row .quantity{
  display:grid!important;
  grid-template-columns:36px 58px 36px;
  width:132px!important;
  min-width:132px;
  height:48px;
  float:none!important;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.cn-product-page .cn-order-row .quantity:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(87,139,155,.12)}
.cn-product-page .cn-order-row .quantity .cn-qty-step{border:0;background:transparent;color:var(--brand-dark);font-size:20px;font-weight:700;cursor:pointer}
.cn-product-page .cn-order-row .quantity .cn-qty-step:hover{background:var(--brand-soft)}
.cn-product-page .cn-order-row .quantity input.qty{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:100%;
  margin:0!important;
  padding:0 4px;
  float:none!important;
  border:0;
  border-inline:1px solid var(--line);
  border-radius:0;
  outline:0;
  background:#fff;
  box-shadow:none;
  font-size:12px;
  font-weight:850;
  text-align:center;
  appearance:textfield;
}
.cn-product-page .cn-order-row .quantity input.qty::-webkit-inner-spin-button,
.cn-product-page .cn-order-row .quantity input.qty::-webkit-outer-spin-button{margin:0;appearance:none}
.cn-product-page .cn-order-row .single_add_to_cart_button,
.cn-product-page .cn-order-row .button.alt{
  min-height:48px;
  margin:0;
  padding:0 18px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,var(--brand-dark),var(--brand-accessible));
  box-shadow:0 10px 22px rgba(54,95,107,.2);
  color:#fff;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.025em;
  cursor:pointer;
}
.cn-product-page .cn-order-row .single_add_to_cart_button:hover,
.cn-product-page .cn-order-row .button.alt:hover{background:linear-gradient(135deg,#294e59,var(--brand-dark));transform:translateY(-1px)}
.cn-product-page .cn-order-row .single_add_to_cart_button:disabled,
.cn-product-page .cn-order-row .single_add_to_cart_button.disabled{cursor:not-allowed;opacity:.55;transform:none}
.cn-product-page .cn-order-row .stock{margin:0;color:var(--muted);font-size:10px;font-weight:800}
.cn-product-page .cn-order-row .stock.in-stock{color:var(--good)}
.cn-product-page .cn-order-row .stock.out-of-stock{color:#a94e48}
.cn-product-page .cn-order-row table.variations{width:100%;margin:0;border:0;border-collapse:separate;border-spacing:0 10px}
.cn-product-page .cn-order-row table.variations tr{display:grid;grid-template-columns:minmax(100px,.28fr) minmax(0,1fr);gap:12px;align-items:center}
.cn-product-page .cn-order-row table.variations th,
.cn-product-page .cn-order-row table.variations td{display:block;padding:0;border:0;background:transparent;text-align:left}
.cn-product-page .cn-order-row table.variations label{color:var(--ink);font-size:9px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.cn-product-page .cn-order-row table.variations select.cn-variation-native{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:0!important;opacity:0!important}
.cn-product-page .cn-variation-pills{display:flex;flex-wrap:wrap;gap:8px}
.cn-product-page .cn-variation-pill{min-height:42px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:10px;font-weight:850;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.cn-product-page .cn-variation-pill:hover,.cn-product-page .cn-variation-pill:focus-visible{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark);outline:0;box-shadow:0 0 0 3px rgba(87,139,155,.12)}
.cn-product-page .cn-variation-pill.is-selected{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff;box-shadow:0 6px 15px rgba(54,95,107,.18);transform:translateY(-1px)}
.cn-product-page .cn-variation-pill:disabled{cursor:not-allowed;opacity:.45;transform:none}
.cn-product-page .cn-order-row .reset_variations{display:none!important}
.cn-product-page .cn-order-row .single_variation_wrap{display:grid;gap:10px}
.cn-product-page .cn-order-row .woocommerce-variation-description{color:var(--muted);font-size:10px;line-height:1.55}
.cn-product-page .cn-order-row .woocommerce-variation-description p{margin:0 0 8px}
.cn-product-page .cn-order-row .woocommerce-variation-price{display:none!important}
.cn-product-page .cn-order-row .woocommerce-variation-add-to-cart{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:end}
.cn-product-page .cn-commerce-gate{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,138,42,.2);border-radius:12px;background:#fff9f3}
.cn-product-page .cn-commerce-gate strong,.cn-product-page .cn-commerce-gate small{display:block}
.cn-product-page .cn-commerce-gate strong{font-size:10px}
.cn-product-page .cn-commerce-gate small{margin-top:3px;color:#80654f;font-size:8.5px;line-height:1.45}
.cn-product-page .cn-commerce-gate .cn-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.cn-product-page .cn-tab-panel>h2:first-child,
.cn-product-page .cn-prose>h2:first-child{margin-top:0}
.cn-product-page .cn-tab-panel .woocommerce-product-attributes{width:100%;border-collapse:collapse}
.cn-product-page .cn-tab-panel .woocommerce-product-attributes th,
.cn-product-page .cn-tab-panel .woocommerce-product-attributes td{padding:10px 12px;border-bottom:1px solid var(--line);font-size:10px;text-align:left;vertical-align:top}
.cn-product-page .cn-tab-panel .woocommerce-product-attributes th{width:32%;color:#72848b;font-weight:800}
.cn-product-page .cn-tab-panel .woocommerce-product-attributes p{margin:0}
.cn-product-page .cn-data-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.65}
.cn-product-page .cn-related-cart{display:grid;grid-template-columns:1fr;gap:7px;align-items:stretch;margin:0}
.cn-product-page .cn-related-cart .quantity{display:grid!important;grid-template-columns:34px minmax(0,1fr) 34px;width:118px!important;min-width:0;min-height:38px;float:none!important;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}
.cn-product-page .cn-related-cart .quantity:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(87,139,155,.12)}
.cn-product-page .cn-related-cart .quantity .cn-qty-step{display:grid;place-items:center;min-width:0;padding:0;border:0;background:#f7fbfc;color:var(--brand-dark);font-size:16px;font-weight:850;cursor:pointer}
.cn-product-page .cn-related-cart .quantity .cn-qty-step:hover{background:var(--brand-soft)}
.cn-product-page .cn-related-cart .quantity input.qty{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%;margin:0!important;padding:0 3px;float:none!important;border:0;border-inline:1px solid var(--line);border-radius:0;outline:0;background:#fff;box-shadow:none;font-size:9px;font-weight:900;text-align:center;appearance:textfield}
.cn-product-page .cn-related-cart .quantity input.qty::-webkit-inner-spin-button,
.cn-product-page .cn-related-cart .quantity input.qty::-webkit-outer-spin-button{margin:0;appearance:none}
.cn-product-page .cn-related-cart .cn-general-cart-button{width:100%;min-width:0;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;padding:8px 10px;line-height:1.4}
.cn-product-page .woocommerce-notices-wrapper:empty{display:none}

@media(max-width:680px){
	.cn-product-page .cn-tier-progress-copy{flex-direction:column;gap:3px}
  .cn-product-page .cn-product-image{width:92%;height:92%}
  .cn-product-page .cn-order-row .quantity{grid-template-columns:32px 40px 32px;width:104px!important;min-width:0}
  .cn-product-page .cn-order-row .single_add_to_cart_button{padding:8px;font-size:10px}
  .cn-product-page .cn-order-row table.variations tr{grid-template-columns:1fr;gap:5px}
  .cn-product-page .cn-commerce-gate{grid-template-columns:34px minmax(0,1fr)}
  .cn-product-page .cn-commerce-gate .cn-link-button{grid-column:1/-1}
  .cn-product-page .cn-related-cart{grid-template-columns:1fr}
  .cn-product-page .cn-related-cart .quantity{grid-template-columns:44px minmax(0,1fr) 44px;width:100%!important}
}


@media(prefers-reduced-motion:reduce){
	.cn-product-page .cn-progress-bar{transition-duration:1ms}
}
