@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

/* ===== Ezüst nyaklánc — redesign design-system (handoff alapján) ===== */
:root{
  --rd-accent:#2BBFB7; --rd-accent-light:#EAF8F7; --rd-accent-dark:#1E837C;
  --rd-accent-30:#BFECE9; --rd-accent-20:#D5F2F0; --rd-accent-22:#D0F0EE; --rd-accent-35:#B5E8E5;
  --rd-cta:#F5901E; --rd-cta-top:#F69F3D; --rd-cta-dark:#D97D18;
  --rd-ink:#16323A; --rd-ink2:#3A4F53; --rd-mut:#5A6F73; --rd-mut2:#7B8E91; --rd-mut3:#8A9B9E; --rd-mut4:#9AAFB1;
  --rd-star:#E5A52B; --rd-star-empty:#D9DEDE; --rd-green:#1B9E5A; --rd-cream:#F3EEE6;
  --rd-bd:#ECF1F1; --rd-bd2:#E7EDED; --rd-bd3:#E4EAEA; --rd-bd4:#DCE4E4;
  --rd-serif:'Cormorant Garamond',Georgia,serif; --rd-sans:'Manrope',system-ui,sans-serif;
}

/* ===== SITE-WIDE tipográfia (redesign mindenhol) ===== */
body, body input, body select, body textarea, body button{ font-family:var(--rd-sans) !important; -webkit-font-smoothing:antialiased; }
body h1, body h2, body h3, body .h1, body .h2, body .h3{ font-family:var(--rd-serif) !important; }
::selection{ background:rgba(43,191,183,.25); }

/* a .rd-* komponensek a redesign konkrét blokkjaihoz */
.rd-page{ font-family:var(--rd-sans); color:var(--rd-ink); background:#fff; -webkit-font-smoothing:antialiased; }
.rd-page *{ box-sizing:border-box; }
.rd-page img{ display:block; max-width:100%; }
.rd-page a{ text-decoration:none; color:inherit; }
.rd-page button{ font-family:inherit; cursor:pointer; color:inherit; }
.rd-wrap{ max-width:1240px; margin:0 auto; padding:0 28px; }

/* ===== Felső utility sáv ===== */
.rd-topbar{ width:100%; background:linear-gradient(90deg,var(--rd-accent) 0%,#28B3AB 100%); color:#fff; }
.rd-topbar .rd-wrap{ height:40px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.rd-topbar-links{ display:flex; align-items:center; gap:20px; font-size:12.5px; font-weight:600; opacity:.96; flex-wrap:wrap; }
.rd-topbar-links a{ color:#fff; }
.rd-topbar-right{ display:flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; opacity:.96; }

/* ===== Fejléc (sticky) ===== */
.rd-header{ position:sticky; top:0; z-index:50; background:rgba(255,255,255,.92); backdrop-filter:blur(10px); border-bottom:1px solid #EDF1F1; }
.rd-header .rd-wrap{ padding:14px 28px; display:flex; align-items:center; gap:22px; }
.rd-logo{ display:flex; align-items:center; gap:10px; flex-shrink:0; }
.rd-logo img.rd-logo-img{ height:54px; width:auto; border-radius:10px; }
.rd-logo img.rd-badge{ height:50px; width:auto; }
.rd-ekszer-btn{ display:flex; align-items:center; gap:8px; flex-shrink:0; padding:11px 16px; border-radius:12px; border:1.5px solid var(--rd-accent-30); background:var(--rd-accent-light); color:var(--rd-accent-dark); font-weight:800; font-size:14px; }
.rd-search{ flex:1; display:flex; align-items:center; gap:10px; background:#F4F8F8; border:1px solid #E7EFEF; border-radius:13px; padding:12px 16px; }
.rd-search input{ border:none; outline:none; background:transparent; font-size:14.5px; font-family:inherit; color:var(--rd-ink); width:100%; }
.rd-header-actions{ display:flex; align-items:center; gap:18px; flex-shrink:0; }
.rd-header-actions a.rd-link{ display:flex; align-items:center; gap:7px; font-size:13.5px; font-weight:700; color:var(--rd-ink2); }
.rd-cart{ display:flex; align-items:center; gap:8px; flex-shrink:0; padding:11px 18px; border-radius:12px; border:none; background:var(--rd-accent); color:#fff; font-weight:800; font-size:14px; box-shadow:0 10px 22px -10px var(--rd-accent); }
.rd-cart .rd-cart-badge{ background:rgba(255,255,255,.28); border-radius:999px; padding:1px 8px; font-size:12.5px; font-weight:800; }

/* ===== Morzsamenü ===== */
.rd-breadcrumb{ padding:22px 2px 6px; font-size:13px; color:var(--rd-mut3); font-weight:600; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.rd-breadcrumb .sep{ opacity:.5; }
.rd-breadcrumb .cur{ color:var(--rd-accent-dark); font-weight:700; }

/* ===== Termék fő egység ===== */
.rd-product-main{ display:grid; grid-template-columns:1.05fr 1fr; gap:54px; padding:24px 0 8px; align-items:start; }
.rd-gallery{ display:flex; gap:16px; position:sticky; top:104px; }
.rd-thumbs{ display:flex; flex-direction:column; gap:12px; flex-shrink:0; }
.rd-thumb{ width:74px; height:74px; border-radius:13px; overflow:hidden; border:2px solid var(--rd-bd3); background:#fff; padding:4px; transition:all .18s; }
.rd-thumb.active{ border-color:var(--rd-accent); box-shadow:0 8px 18px -10px var(--rd-accent); }
.rd-thumb img{ width:100%; height:100%; object-fit:cover; }
.rd-main-image{ flex:1; position:relative; background:linear-gradient(165deg,#FBFCFC 0%,#F2F7F6 100%); border:1px solid #EBF1F0; border-radius:22px; padding:30px; min-height:430px; display:flex; align-items:center; justify-content:center; }
.rd-main-image img{ width:100%; height:auto; filter:drop-shadow(0 18px 24px rgba(20,50,58,.12)); }
.rd-mat-badge{ position:absolute; top:18px; left:18px; padding:6px 12px; border-radius:999px; background:#fff; border:1px solid var(--rd-bd2); font-size:11.5px; font-weight:800; color:var(--rd-accent-dark); letter-spacing:.02em; box-shadow:0 6px 14px -10px rgba(20,50,58,.5); }
.rd-wish{ position:absolute; top:18px; right:18px; width:42px; height:42px; border-radius:50%; border:1px solid var(--rd-bd2); background:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 16px -10px rgba(20,50,58,.5); }

/* ===== Vásárlási panel ===== */
.rd-buy{ padding-top:4px; }
.rd-title{ font-family:var(--rd-serif); font-size:44px; font-weight:700; line-height:1.05; color:var(--rd-ink); letter-spacing:-.5px; margin:0; }
.rd-rating-row{ display:flex; align-items:center; gap:12px; margin-top:12px; flex-wrap:wrap; }
.rd-stars{ display:flex; gap:2px; }
.rd-rating-num{ font-weight:800; font-size:15px; color:var(--rd-ink); }
.rd-rating-link{ font-size:13.5px; font-weight:700; color:var(--rd-accent-dark); border-bottom:1px solid var(--rd-accent-35); cursor:pointer; }
.rd-lead{ margin-top:14px; font-size:15.5px; line-height:1.6; color:var(--rd-mut); max-width:46ch; }
.rd-divider{ height:1px; background:#EDF1F1; margin:24px 0; }
.rd-label{ font-size:12.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--rd-ink); margin-bottom:12px; }

/* Típus kártyák (Variáns A) */
.rd-chips{ display:flex; gap:12px; flex-wrap:wrap; }
.rd-chip{ flex:1; min-width:140px; text-align:left; padding:15px 16px; border-radius:15px; border:2px solid var(--rd-bd3); background:#fff; transition:all .18s ease; position:relative; }
.rd-chip.active{ border-color:var(--rd-accent); background:var(--rd-accent-light); box-shadow:0 12px 24px -12px var(--rd-accent); }
.rd-chip .rd-chip-check{ position:absolute; top:-9px; right:-9px; width:23px; height:23px; border-radius:50%; background:var(--rd-accent); color:#fff; display:none; align-items:center; justify-content:center; box-shadow:0 3px 7px rgba(0,0,0,.2); }
.rd-chip.active .rd-chip-check{ display:flex; }
.rd-chip .rd-chip-len{ font-family:var(--rd-serif); font-size:24px; font-weight:700; color:var(--rd-ink); line-height:1; }
.rd-chip.active .rd-chip-len{ color:var(--rd-accent-dark); }
.rd-chip .rd-chip-sub{ font-size:12.5px; color:var(--rd-mut2); margin-top:5px; font-weight:600; }
.rd-chip .rd-chip-stock{ font-size:11.5px; font-weight:800; color:var(--rd-green); margin-top:6px; }

/* Ár */
.rd-price-row{ display:flex; align-items:baseline; gap:12px; margin-top:24px; flex-wrap:wrap; }
.rd-price{ font-size:40px; font-weight:800; letter-spacing:-.5px; color:var(--rd-ink); }
.rd-price-note{ font-size:13px; color:var(--rd-mut3); font-weight:600; }
.rd-meta{ margin-top:6px; font-size:13.5px; color:var(--rd-mut2); font-weight:600; }
.rd-gift{ margin-top:14px; display:flex; align-items:center; gap:9px; font-size:14px; font-weight:600; color:var(--rd-ink2); }

/* Készlet/szállítás doboz */
.rd-stockbox{ margin-top:20px; border:1px solid var(--rd-bd2); border-radius:16px; overflow:hidden; }
.rd-stockbox-head{ display:flex; align-items:center; gap:9px; padding:14px 18px; background:#F4FAF9; font-size:14px; color:var(--rd-ink); }
.rd-stockdot{ width:9px; height:9px; border-radius:50%; background:var(--rd-green); box-shadow:0 0 0 4px rgba(27,158,90,.16); }
.rd-stockbox-body{ padding:13px 18px; display:grid; gap:9px; border-top:1px solid #EEF3F3; font-size:13.5px; color:var(--rd-ink2); }
.rd-stockbox-body .ln{ display:flex; gap:9px; align-items:flex-start; }
.rd-stockbox-body .ln svg{ margin-top:1px; flex-shrink:0; }

/* Akció: stepper + CTA */
.rd-action{ margin-top:20px; display:flex; gap:14px; align-items:stretch; }
.rd-stepper{ display:flex; align-items:center; border:1px solid var(--rd-bd4); border-radius:14px; height:60px; overflow:hidden; flex-shrink:0; }
.rd-stepper button{ width:48px; height:100%; border:none; background:#fff; font-size:24px; color:var(--rd-ink2); }
.rd-stepper input,.rd-stepper .val{ width:48px; text-align:center; font-weight:800; font-size:17px; border:none; background:#fff; outline:none; -moz-appearance:textfield; }
.rd-stepper input::-webkit-outer-spin-button,.rd-stepper input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.rd-cta{ flex:1; height:60px; padding:0 24px; display:flex; align-items:center; justify-content:center; gap:10px; border:none; border-radius:15px; color:#fff !important; font-size:16px; font-weight:800; letter-spacing:.01em; background:linear-gradient(180deg,var(--rd-cta-top) 0%,var(--rd-cta) 52%,var(--rd-cta-dark) 100%); box-shadow:0 16px 28px -10px var(--rd-cta),0 5px 10px -5px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.4); transition:transform .15s ease,box-shadow .15s ease; }
.rd-cta:hover{ transform:translateY(-2px); }
.rd-cta:active{ transform:translateY(0); }

/* Trust chipek */
.rd-trust{ margin-top:24px; display:flex; gap:10px; flex-wrap:wrap; }
.rd-trust .chip{ display:flex; align-items:center; gap:8px; padding:9px 14px; border:1px solid #EAF0F0; border-radius:12px; font-size:12.5px; font-weight:700; color:var(--rd-ink2); }

/* ===== Info kártyák (3 oszlop) ===== */
.rd-cards3{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:60px 0 8px; }
.rd-card{ border:1px solid var(--rd-bd); border-radius:18px; padding:28px; background:#fff; box-shadow:0 24px 50px -42px rgba(20,50,58,.5); }
.rd-card-title{ font-family:var(--rd-serif); font-size:23px; font-weight:700; color:var(--rd-ink); line-height:1.2; margin:0; }
.rd-spec-row{ display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-bottom:1px solid #F1F5F5; }
.rd-spec-row .k{ font-size:13.5px; color:var(--rd-mut3); font-weight:600; }
.rd-spec-row .v{ font-size:13.5px; color:var(--rd-ink); font-weight:700; text-align:right; }
.rd-aud{ display:grid; gap:11px; margin-top:16px; }
.rd-aud .it{ display:flex; align-items:center; gap:10px; font-size:14.5px; color:var(--rd-ink2); font-weight:600; }
.rd-bullet{ width:21px; height:21px; border-radius:50%; flex-shrink:0; background:var(--rd-accent); display:flex; align-items:center; justify-content:center; }
.rd-guar{ margin-top:20px; background:var(--rd-accent-light); border:1px solid var(--rd-accent-22); border-radius:14px; padding:18px; }
.rd-guar-head{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.rd-guar-icon{ width:30px; height:30px; border-radius:9px; flex-shrink:0; background:var(--rd-accent); display:flex; align-items:center; justify-content:center; }
.rd-guar-title{ font-family:var(--rd-serif); font-size:21px; font-weight:700; color:var(--rd-ink); }

/* ===== Szállítás/Fizetés/Garancia ===== */
.rd-section{ padding:60px 0 8px; }
.rd-section-title{ font-family:var(--rd-serif); font-size:34px; font-weight:700; color:var(--rd-ink); letter-spacing:-.3px; margin:0; }
.rd-feat-icon{ width:40px; height:40px; border-radius:12px; flex-shrink:0; background:linear-gradient(145deg,var(--rd-accent),#25ABA4); display:flex; align-items:center; justify-content:center; box-shadow:0 10px 20px -12px var(--rd-accent); }
.rd-feat-head{ display:flex; align-items:center; gap:11px; margin-bottom:16px; }
.rd-feat-head h3{ font-size:17px; font-weight:800; color:var(--rd-ink); margin:0; }
.rd-freeship{ margin-top:16px; padding:12px 14px; border-radius:12px; background:var(--rd-accent-light); border:1px solid var(--rd-accent-20); font-size:13.5px; color:var(--rd-accent-dark); font-weight:600; }
.rd-paychip{ border:1px solid var(--rd-bd2); border-radius:8px; padding:5px 10px; font-size:11.5px; font-weight:800; color:var(--rd-mut); background:#FBFCFC; }

/* ===== Értékelések ===== */
.rd-reviews{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:32px; margin-top:26px; align-items:start; }
.rd-avgcard{ background:var(--rd-cream); border-radius:20px; padding:34px; display:flex; flex-direction:column; align-items:flex-start; }
.rd-avg-num{ font-family:var(--rd-serif); font-size:64px; font-weight:700; color:var(--rd-ink); line-height:1; }
.rd-avg-note{ margin-top:14px; font-size:15px; color:#7B6F5E; font-weight:600; }
.rd-review{ display:flex; align-items:center; gap:14px; padding:15px 0; border-bottom:1px solid #F1F5F5; }
.rd-avatar{ width:42px; height:42px; border-radius:50%; flex-shrink:0; background:var(--rd-accent-light); color:var(--rd-accent-dark); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:16px; font-family:var(--rd-serif); border:1px solid var(--rd-accent-20); }
.rd-review .nm{ font-size:15px; font-weight:800; color:var(--rd-ink); }
.rd-review .vf{ font-size:12px; color:var(--rd-mut4); font-weight:600; }
.rd-morelink{ display:inline-flex; align-items:center; gap:7px; margin-top:18px; font-size:14px; font-weight:800; color:var(--rd-accent-dark); }

/* ===== Lábléc ===== */
.rd-footer{ margin-top:64px; border-top:1px solid #EDF1F1; background:#FBFCFC; }
.rd-footer .rd-wrap{ padding:34px 28px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }

/* ===== Reszponzív ===== */
@media (max-width:900px){
  .rd-product-main{ grid-template-columns:1fr; gap:30px; }
  .rd-gallery{ position:static; }
  .rd-cards3{ grid-template-columns:1fr; }
  .rd-section .rd-cards3{ grid-template-columns:1fr; }
  .rd-reviews{ grid-template-columns:1fr; }
  .rd-title{ font-size:34px; }
}
@media (max-width:680px){
  .rd-wrap{ padding:0 16px; }
  .rd-topbar-links{ display:none; }
  .rd-search{ display:none; }
}

/* === Dinamikus menü a felső utility-sávban (fehér, vízszintes) === */
.rd-topbar .rd-topbar-links.menuBox{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.rd-topbar .menuitem{ color:#fff !important; font-size:12.5px; font-weight:600; white-space:nowrap; opacity:.96; padding:0; border:none; background:none; }
.rd-topbar .menuitem:hover{ opacity:.78; color:#fff !important; }
/* kereső overlay input (a kattintható trigger) tölti ki a mezőt */
.rd-search .searchDesktopInputOverlay, .rd-search .searchDesktopInput{ border:none; outline:none; background:transparent; font-size:14.5px; font-family:inherit; color:var(--rd-ink); width:100%; cursor:text; }

/* === Kereső input: látható szöveg + balra, nincs eltolás (bundle felülírás) === */
.rd-search .searchOverlayInput{ flex:1; display:flex; align-items:center; }
.rd-search .searchDesktopInput, .rd-search .searchDesktopInputOverlay{
  width:100% !important; color:var(--rd-ink) !important; text-align:left !important;
  padding:0 !important; margin:0 !important; position:static !important; height:auto !important;
  background:transparent !important; border:none !important; font-size:14.5px !important; opacity:1 !important; box-shadow:none !important;
}
.rd-search .searchDesktopInput::placeholder, .rd-search .searchDesktopInputOverlay::placeholder{ color:var(--rd-mut3) !important; }
/* === Kosár: tömör türkiz + fehér szöveg (jó kontraszt) === */
.rd-cart, .rd-cart *{ color:#fff !important; }
.rd-cart{ background:var(--rd-accent) !important; }
/* utility-sáv jobb (telefon) */
.rd-topbar-right a{ color:#fff !important; }

/* ===== Header fix: a bundle .topHead{height:90px} a regi headerhez volt — az uj magasabb, ezert alacsuszott a tartalom. Auto-magassag + az egesz fejlec sticky. ===== */
.topHead, .topHead.topHeadFix{ height:auto !important; background:transparent !important; position:sticky !important; top:0 !important; left:auto !important; right:auto !important; z-index:60 !important; box-shadow:none !important; }
.rd-header{ position:static !important; }

/* ===== Mobil hamburger + menü gombok finomítás (#134/#135) ===== */
.mobileTopHeadOpener .mobileTopHeadOpenerBtn{ background:var(--rd-accent) !important; color:#fff !important; border-radius:0 0 16px 0 !important; display:flex; align-items:center; justify-content:center; }
.mobileTopHeadOpener .mobileTopHeadOpenerBtn .fa{ color:#fff !important; font-size:20px; }
/* mobil menü Bejelentkezés/Regisztráció gombok — finomított türkiz */
.mobileMenu .row .btn{ background:var(--rd-accent) !important; color:#fff !important; border:none !important; border-radius:12px !important; font-weight:700 !important; padding:12px 8px !important; box-shadow:0 8px 18px -10px var(--rd-accent); }
.mobileMenu .row .btn:hover, .mobileMenu .row .btn:active{ background:var(--rd-accent-dark) !important; color:#fff !important; }
.mobileMenu .row .btn .fa{ color:#fff !important; }

/* ===== Desktop fejléc-kereső: egyszerű inline dropdown (nincs takeover/animáció/fehér spinner) #145 ===== */
.rd-search.searchBox{ position:relative !important; }
.rd-search .searchContent.desktop{ position:absolute !important; top:calc(100% + 8px) !important; left:0 !important; right:0 !important; width:auto !important; height:auto !important; max-height:70vh !important; overflow-y:auto !important; background:#fff !important; border:1px solid var(--rd-bd) !important; border-radius:14px !important; box-shadow:0 24px 50px -28px rgba(20,50,58,.45) !important; padding:8px !important; z-index:80 !important; display:none; margin:0 !important; }
.rd-search .searchContent.desktop .search-result-list{ list-style:none; margin:0; padding:0; }
