/* ==========================================================================
   GEMMY – téma podľa šablóny „Sofa“ (gemmy-sablona)
   Načítava sa po css šablóny (templates/theme/css) a po main.css.
   Farby: #0a662d (primárna), #f07d00 (hover), #151515 (text nadpisov)
   ========================================================================== */
body { color: #777; font-family: var(--font); background: #fff; overflow-x: clip; }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-head); }

/* rozloženie stránky */
#content_container { max-width: 1200px; padding: 40px 15px 70px; min-height: 50vh; }
body.is-home #content_container { max-width: none; padding: 0; }
body.is-home .breadcrumbs-strip { display: none !important; }
.breadcrumbs-strip { margin: -40px calc(50% - 50vw) 30px; background: #f5f5f5; border-bottom: 1px solid #e1e1e1; }
.breadcrumbs-strip #navigator { max-width: 1200px; margin: 0 auto; padding: 14px 15px; font-family: var(--font-head); font-size: 14px; letter-spacing: .04em; text-transform: uppercase; color: #151515; }
.breadcrumbs-strip #navigator a { color: #707475; }
.breadcrumbs-strip #navigator a:hover { color: #151515; }
.breadcrumbs-strip .arrow { color: #0a662d; }
#content h1, #content h2, #content h3 { margin: 0 0 20px; }
#content h1 { font-size: 34px; line-height: 1.15; }
#content h2 { font-size: 28px; }
#content h3 { font-size: 22px; margin-top: 28px; }
#content h4 { font-size: 18px; margin: 20px 0 10px; }
#article-container a, .pd-text a, .acard-meta a { color: var(--accent-ink); }
#article-container a:hover, .pd-text a:hover { color: #151515; }
body.is-home #content > section h2, body.is-home #content > section h1 { margin-bottom: 20px; }

/* hlavička (RD navbar) – košík, účet, vyhľadávanie */
.rd-navbar-main-element { display: flex; align-items: center; gap: 4px; }
details.account { position: relative; }
details.account > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; font-size: 26px; color: #151515; border: 0; background: none; box-shadow: none; border-radius: 0; padding: 0; }
details.account > summary::-webkit-details-marker { display: none; }
details.account > summary:hover { color: #f07d00; }
.account-menu { position: absolute; right: 0; top: 100%; z-index: 1100; width: 280px; background: #fff; border: 1px solid #e1e1e1; box-shadow: 0 10px 30px rgba(0, 0, 0, .12); padding: 18px 20px; text-align: left; }
#cart { position: relative; }
#cart a.cart-btn { display: flex; align-items: center; gap: 6px; height: 44px; padding: 0 8px; border: 0; background: none; box-shadow: none; border-radius: 0; color: #151515; font-family: var(--font-head); font-size: 14px; }
#cart a.cart-btn:hover { color: #f07d00; box-shadow: none; border: 0; }
#cart svg { width: 24px; height: 24px; }
#cart .cart-label { display: none; }
#cart .cart-count { background: #0a662d; color: #fff; min-width: 20px; height: 20px; line-height: 20px; border-radius: 50%; font-size: 12px; text-align: center; padding: 0 4px; }
#cart .cart-sum { display: none; }
@media (min-width: 992px) { #cart .cart-sum { display: inline; } }
.site-search .form-wrap { position: relative; }
.rd-navbar-nav .rd-nav-item { white-space: nowrap; }

/* pätička */
#footer_container { background: transparent; color: inherit; margin-top: 0; }
#footer_container .small-note { font-size: 14px; opacity: .8; }
#footer_container a { color: inherit; }
#footer_container a:hover { color: #f07d00; }

/* tlačidlá a formuláre */
.button, input[type=submit], input[type=button], button:not([class]) {
  border-radius: 0; box-shadow: none; text-transform: uppercase; letter-spacing: .06em; font-family: var(--font-head);
  font-weight: 700; font-size: 15px; padding: 13px 30px; color: #fff !important; background: #0a662d; border: 2px solid #0a662d;
  transition: background .2s, color .2s, border-color .2s;
}
.button:hover, input[type=submit]:hover, input[type=button]:hover, button:not([class]):hover {
  background: #f07d00; border-color: #f07d00; color: #151515 !important; box-shadow: none;
}
input[type=button][value*="Späť"], input[type=button][value*="Pokračovať"], .button.secondary { background: #fff; color: #151515 !important; border: 2px solid #151515; }
input[type=button][value*="Späť"]:hover, input[type=button][value*="Pokračovať"]:hover, .button.secondary:hover { background: #151515; color: #fff !important; border-color: #151515; }
input[type=text], input[type=password], input[type=email], input[type=search], input[type=tel], input[type=number], input:not([type]), select, textarea { border-color: #e1e1e1; }
fieldset { border-radius: 0; }
legend { font-family: var(--font-head); text-transform: uppercase; letter-spacing: .04em; }

/* karty tovaru (výpis, domovská stránka, súvisiace) – vzhľad ako .product v šablóne */
.pc { border: 1px solid #e1e1e1; border-radius: 0; background: #fff; }
.pc:hover { transform: none; box-shadow: 0 8px 25px rgba(0, 0, 0, .12); border-color: #e1e1e1; }
.pc-media { background: #fff; aspect-ratio: 1 / 1; }
.pc-media img { object-fit: contain; padding: 14px; }
.pc:hover .pc-media img { transform: scale(1.04); }
.pc-badge { border-radius: 0; background: #f96666; top: 15px; left: 15px; font-family: var(--font-head); font-size: 14px; text-transform: uppercase; padding: 5px 12px; letter-spacing: .02em; }
.pc-body { text-align: center; align-items: center; }
.pc-title { font-family: var(--font-head); font-size: 17px; font-weight: 400; text-transform: uppercase; letter-spacing: .03em; color: #151515; }
.pc-title:hover { color: #f07d00; }
.pc-price { justify-content: center; }
.price_used { font-family: var(--font-head); font-size: 18px; font-weight: 700; color: #0a662d; letter-spacing: 0; }
.price_default { font-size: 15px; color: rgba(21, 21, 21, .5); }
.pc-actions a.add2cart, .pd-buy a.add2cart {
  border-radius: 0; box-shadow: none; text-transform: uppercase; letter-spacing: .06em; font-family: var(--font-head); font-weight: 700; background: #0a662d; color: #fff;
}
.pc-actions a.add2cart:hover, .pd-buy a.add2cart:hover { background: #f07d00; color: #151515; transform: none; }

/* dlaždice kategórií, karty článkov */
.category-button, .acard, .pd-gallery, .step { border-radius: 0; }
.category-button-title, .acard-title { font-family: var(--font-head); text-transform: uppercase; letter-spacing: .03em; }
.acard { border: 1px solid #e1e1e1; box-shadow: none; }
.acard:hover { box-shadow: 0 8px 25px rgba(0, 0, 0, .12); transform: none; }
.acard-more, .section-head a { font-family: var(--font-head); text-transform: uppercase; letter-spacing: .04em; color: var(--accent-ink); }
.section-head h2 { font-family: var(--font-head); text-transform: uppercase; }

/* text článku (rovnaký vzhľad vidí aj editor – sauron/templates/styles/editor_content.css) */
#article-container, .pd-text { font-size: 16px; line-height: 1.75; color: #777; }
#article-container img, .pd-text img { border-radius: 0; }
#article-container blockquote, .pd-text blockquote { border-left: 4px solid #0a662d; }
#article-container table td, #article-container table th { border: 1px solid #e1e1e1; }

/* jQuery UI dialóg */
.ui-dialog { border-radius: 0 !important; }
.ui-dialog .ui-dialog-titlebar { font-family: var(--font-head); text-transform: uppercase; }

/* domovská stránka */
.section .product-grid, .section .article-list { margin-top: 10px; }

@media (max-width: 767px) {
  #content_container { padding: 24px 15px 50px; }
  .breadcrumbs-strip { margin: -24px calc(50% - 50vw) 20px; }
  #content h1 { font-size: 28px; }
  .account-menu { position: fixed; left: 15px; right: 15px; top: 70px; width: auto; }
}

#article-container { border: 0; padding: 0; max-width: 100%; margin: 0 0 30px; }
#article-container h2 { font-size: 34px; margin-bottom: 24px; }
.article-hl { display: block; margin-top: 8px; font-family: var(--font); font-size: 16px; text-transform: none; letter-spacing: 0; color: #0a662d; }
.article-hl:empty { display: none; }
.download-list { list-style: none; padding: 0; }
.download-list li { padding: 10px 0; border-bottom: 1px solid #e1e1e1; }
.download-list li::before { content: "\f1c1"; font-family: "Font Awesome 6 Free"; font-weight: 900; color: #0a662d; margin-right: 12px; }
.row h3:first-child { margin-top: 0; }

/* mobil: účet a košík v hornej lište (pozície ako rd-navbar-fixed-element-1..3) */
.rd-navbar-fixed .rd-navbar-fixed-element-4 { right: 118px; }
.rd-navbar-fixed #cart a.cart-btn { padding: 0; justify-content: center; width: 42px; }
.rd-navbar-fixed #cart .cart-count { position: absolute; top: 4px; right: 2px; }
.rd-navbar-fixed details.account > summary { width: 42px; }
.rd-navbar-fixed #cart, .rd-navbar-fixed details.account { position: fixed; top: 4px; z-index: 1082; }
.rd-navbar-fixed #cart { right: 42px; }
.rd-navbar-fixed details.account .account-menu { top: 46px; }

@media (max-width: 767px) {
  table.cart { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

.footer-classic-brand .brand img { background: #fff; padding: 6px 12px; height: 56px; width: auto; }
.rd-navbar-brand .brand img { height: 44px; width: auto; }
.brand-logo-light { display: none; }
.footer-classic .brand-logo-dark { display: none; }
.footer-classic .brand-logo-light { display: inline-block; }

.cart-row .ci-name, .cart-head .ci-name { text-align: left; }
#footer_container .small-note { font-size: 14px; line-height: 1.5; margin-top: 10px; }
