/*
Theme Name: Slovorez One Page
Description: Jednostavna WooCommerce tema za konfigurator vinilnih natpisa.
Version: 1.1.1
Requires at least: 7.0
Requires PHP: 8.1
Text Domain: slovorez-onepage
*/

:root {
    --sl-bg: #f4f6f8;
    --sl-ink: #111827;
    --sl-muted: #596273;
    --sl-accent: #2563eb;
    --sl-border: #d9dee7;
    --sl-page: 1320px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--sl-bg);
    color: var(--sl-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 17px;
    line-height: 1.55;
}
a { color: var(--sl-accent); }
img { max-width: 100%; height: auto; }
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.sl-site-header { padding: 1.15rem clamp(1rem, 4vw, 3rem); background: #fff; border-bottom: 1px solid var(--sl-border); }
.sl-site-header-inner,
.sl-site-footer-inner,
.sl-main { width: min(100%, var(--sl-page)); margin-inline: auto; }
.sl-site-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.sl-brand { display: inline-flex; align-items: center; gap: .8rem; color: var(--sl-ink); text-decoration: none; }
.sl-brand-mark { display: grid; place-items: center; width: 2.7rem; height: 2.7rem; border-radius: 9px; background: var(--sl-ink); color: #fff; font-weight: 850; letter-spacing: -.05em; }
.sl-brand-copy { display: grid; line-height: 1.1; }
.sl-brand-copy strong { font-size: 1.25rem; letter-spacing: .06em; text-transform: uppercase; }
.sl-brand-copy small { margin-top: .25rem; color: var(--sl-muted); font-size: .75rem; }
.sl-cart-slot { min-width: 0; }
.sl-cart-link {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    min-height: 2.7rem;
    padding: .45rem .75rem;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1e3a8a;
    font-size: .9rem;
    font-weight: 750;
    text-decoration: none;
}
.sl-cart-link:hover { border-color: #60a5fa; background: #dbeafe; color: #1e3a8a; }
.sl-cart-count { display: grid; place-items: center; min-width: 1.65rem; height: 1.65rem; padding: 0 .35rem; border-radius: 999px; background: var(--sl-accent); color: #fff; font-size: .78rem; }
.sl-cart-total { padding-left: .55rem; border-left: 1px solid #bfdbfe; white-space: nowrap; }

.sl-main { padding: clamp(2rem, 5vw, 5rem) clamp(1rem, 4vw, 3rem); }
.sl-hero { max-width: 930px; margin-bottom: clamp(2rem, 5vw, 4rem); }
.sl-eyebrow { margin: 0 0 .6rem; color: var(--sl-accent); font-size: .83rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.sl-hero h1 { max-width: 850px; margin: 0; font-size: clamp(2.6rem, 7vw, 5.6rem); line-height: .98; letter-spacing: -.055em; }
.sl-hero p:last-child { max-width: 720px; margin: 1.4rem 0 0; color: var(--sl-muted); font-size: clamp(1.05rem, 2vw, 1.3rem); }
.sl-page-title { margin-top: 0; font-size: clamp(2rem, 5vw, 3.8rem); line-height: 1.05; }

.sl-site-footer { padding: 2rem clamp(1rem, 4vw, 3rem); background: #fff; border-top: 1px solid var(--sl-border); color: var(--sl-muted); }
.sl-site-footer-inner { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.sl-site-footer p { margin: 0; }

.home .woocommerce div.product {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(390px, .92fr);
    gap: clamp(2rem, 5vw, 5rem);
    align-items: start;
}
.home .woocommerce div.product .woocommerce-product-gallery,
.home .woocommerce div.product .summary {
    float: none;
    width: auto;
    margin: 0;
}
.home .woocommerce div.product .woocommerce-product-gallery { min-width: 0; }
.home .woocommerce div.product .summary { min-width: 0; }
.home .woocommerce div.product .product_title,
.home .woocommerce div.product .price,
.home .woocommerce div.product .woocommerce-product-details__short-description,
.home .woocommerce div.product .product_meta,
.home .woocommerce div.product .woocommerce-tabs,
.home .woocommerce div.product .related,
.home .woocommerce div.product .up-sells { display: none !important; }
.home .woocommerce div.product form.cart { margin: 1rem 0 0; }
.home .woocommerce div.product form.cart::after { content: ""; display: table; clear: both; }
.home .woocommerce div.product form.cart .quantity { float: left; margin-right: .65rem; }
.home .woocommerce div.product form.cart input.qty { min-height: 50px; border: 1px solid #9ca3af; border-radius: 7px; }

.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce a.button.alt {
    min-height: 50px;
    padding: .8rem 1.25rem;
    border-radius: 7px;
    background: var(--sl-ink);
    color: #fff;
    font-weight: 750;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover { background: var(--sl-accent); color: #fff; }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { border-radius: 8px; background: #fff; }
.woocommerce table.shop_table,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register { background: #fff; }
.woocommerce-cart .wc-block-components-totals-shipping { display: none !important; }

.home .vlc { margin-top: 0; box-shadow: 0 16px 45px rgba(15, 23, 42, .08); }
.home .vlc-gallery-host { top: 1.5rem; }
.home .vlc-gallery-host .woocommerce-product-gallery__wrapper { display: none; }
.home .vlc-gallery-host .vlc-preview { min-height: 600px; }
.home .vlc-contact { grid-column: 1 / -1; }

@media (max-width: 900px) {
    .home .woocommerce div.product { grid-template-columns: 1fr; }
    .home .vlc-gallery-host { position: static; }
    .home .vlc-gallery-host .vlc-preview { min-height: 360px; }
}

@media (max-width: 600px) {
    body { font-size: 16px; }
    .sl-brand-copy small { display: none; }
    .sl-cart-link { gap: .4rem; padding: .4rem .55rem; }
    .sl-cart-total { display: none; }
    .sl-main { padding-top: 2rem; }
    .sl-hero h1 { font-size: clamp(2.35rem, 13vw, 3.5rem); }
    .sl-site-footer-inner { display: grid; }
}
