/* E-bukiety.pl — Restored CSS (based on Veera/WooCommerce theme)
   Colors: #ffbec2 (pink accent), #262626 (dark), #232324 (charcoal)
   Fonts: Playfair Display (headings), Montserrat (body), Roboto (utility)
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Roboto:wght@400&display=swap');

/* ========== RESET & BASE ========== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
    margin: 0; padding: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px; line-height: 1.6;
    color: #333; background: #fff;
}
a { color: #333; text-decoration: none; transition: color .2s; }
a:hover { color: #ffbec2; }
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, h4, h5, h6 { font-family: 'Playfair Display', serif; font-weight: 700; line-height: 1.3; margin: 0 0 15px; }
h1 { font-size: 32px; } h2 { font-size: 26px; } h3 { font-size: 22px; } h4 { font-size: 18px; }
ul { list-style: none; margin: 0; padding: 0; }
p { margin: 0 0 15px; }
figure { margin: 0; }

/* ========== BOOTSTRAP 3 GRID ========== */
.container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 15px; }
.row { display: flex; flex-wrap: wrap; margin: 0 -15px; }
.row::after { content: ''; display: table; clear: both; }
[class*="col-"] { padding: 0 15px; position: relative; min-height: 1px; }
.col-xs-1 { width: 8.333%; } .col-xs-2 { width: 16.666%; } .col-xs-3 { width: 25%; }
.col-xs-4 { width: 33.333%; } .col-xs-5 { width: 41.666%; } .col-xs-6 { width: 50%; }
.col-xs-7 { width: 58.333%; } .col-xs-8 { width: 66.666%; } .col-xs-9 { width: 75%; }
.col-xs-10 { width: 83.333%; } .col-xs-11 { width: 91.666%; } .col-xs-12 { width: 100%; }

@media (min-width: 768px) {
    .col-sm-1 { width: 8.333%; } .col-sm-2 { width: 16.666%; } .col-sm-3 { width: 25%; }
    .col-sm-4 { width: 33.333%; } .col-sm-5 { width: 41.666%; } .col-sm-6 { width: 50%; }
    .col-sm-7 { width: 58.333%; } .col-sm-8 { width: 66.666%; } .col-sm-9 { width: 75%; }
    .col-sm-10 { width: 83.333%; } .col-sm-11 { width: 91.666%; } .col-sm-12 { width: 100%; }
}
@media (min-width: 992px) {
    .col-md-1 { width: 8.333%; } .col-md-2 { width: 16.666%; } .col-md-3 { width: 25%; }
    .col-md-4 { width: 33.333%; } .col-md-5 { width: 41.666%; } .col-md-6 { width: 50%; }
    .col-md-7 { width: 58.333%; } .col-md-8 { width: 66.666%; } .col-md-9 { width: 75%; }
    .col-md-10 { width: 83.333%; } .col-md-11 { width: 91.666%; } .col-md-12 { width: 100%; }
}
@media (min-width: 1200px) {
    .col-lg-1 { width: 8.333%; } .col-lg-2 { width: 16.666%; } .col-lg-3 { width: 25%; }
    .col-lg-4 { width: 33.333%; } .col-lg-5 { width: 41.666%; } .col-lg-6 { width: 50%; }
    .col-lg-7 { width: 58.333%; } .col-lg-8 { width: 66.666%; } .col-lg-9 { width: 75%; }
    .col-lg-10 { width: 83.333%; } .col-lg-11 { width: 91.666%; } .col-lg-12 { width: 100%; }
}
.clearfix::after { content: ''; display: table; clear: both; }
.hidden, .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

/* ========== HEADER ========== */
.site-header {
    position: sticky; top: 0; z-index: 1000;
    background: #fff;
    border-bottom: 1px solid #eee;
    transition: background .3s;
}
.site-header-inner { padding: 0; }
.header-main { display: flex; align-items: center; justify-content: space-between; padding: 12px 0; }
.site-branding { flex-shrink: 0; }
.site-branding a { display: block; }
.site-branding img, .site-branding figure img { max-height: 60px; width: auto; }
.site-branding h1 { margin: 0; font-size: 24px; }
.site-branding h1 a { color: #262626; font-family: 'Playfair Display', serif; }
.logo--transparency { display: none; }

/* Navigation */
.site-main-nav { flex-grow: 1; }
.main-menu, .mega-menu { display: flex; align-items: center; justify-content: center; gap: 0; }
.main-menu > li { position: relative; }
.main-menu > li > a {
    display: block; padding: 15px 18px;
    font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 1px;
    color: #262626; transition: color .2s;
}
.main-menu > li > a:hover,
.main-menu > li.current-menu-item > a,
.main-menu > li.current_page_item > a { color: #ffbec2; }

/* Dropdown */
.sub-menu, .dropdown-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff; box-shadow: 0 5px 20px rgba(0,0,0,.1); z-index: 1001; padding: 10px 0; }
.main-menu > li:hover > .sub-menu { display: block; }
.sub-menu li a { display: block; padding: 8px 20px; font-size: 13px; color: #333; }
.sub-menu li a:hover { color: #ffbec2; background: #fafafa; }

/* Header components (search, cart icons) */
.header-component-outer { display: flex; align-items: center; gap: 15px; }
.header_component { display: inline-flex; align-items: center; }
.header_component a { color: #262626; font-size: 18px; padding: 5px; }
.header_component a:hover { color: #ffbec2; }

/* Mobile nav */
.site-header-mobile, .dl-menuwrapper { display: none; }
.la-burger-menu { display: none; cursor: pointer; font-size: 24px; padding: 10px; }

@media (max-width: 991px) {
    .site-main-nav, .header-component-outer_1 { display: none; }
    .la-burger-menu, .site-header-mobile { display: block; }
    .dl-menuwrapper { position: fixed; top: 0; left: -280px; width: 280px; height: 100vh; background: #fff; z-index: 10000; overflow-y: auto; transition: left .3s; box-shadow: 2px 0 10px rgba(0,0,0,.1); }
    .dl-menuwrapper.dl-menuopen { left: 0; }
}

/* ========== PAGE LAYOUT ========== */
.site-inner { padding: 0; }
.site-content-inner { display: flex; flex-wrap: wrap; }
.page-content { width: 100%; }
#content, .site-content { padding: 30px 0; }

/* ========== REVOLUTION SLIDER (static fallback) ========== */
rs-module-wrap, rs-module { display: block; position: relative; overflow: hidden; }
rs-module { min-height: 300px; background: #f5f5f5; }
rs-slides, rs-slide { position: relative; }
rs-slide { display: none; }
rs-slide:first-child { display: block; visibility: visible; }
rs-slide img { width: 100%; height: auto; object-fit: cover; }
rs-layer, .rs-layer { position: relative; opacity: 1 !important; visibility: visible !important; }
rs-static-layers { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; }

/* ========== WOOCOMMERCE PRODUCTS ========== */
.woocommerce .products,
.products.grid-items { display: grid; gap: 20px; padding: 20px 0; }
.products.grid-items { grid-template-columns: repeat(4, 1fr); }

@media (max-width: 991px) { .products.grid-items { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .products.grid-items { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .products.grid-items { grid-template-columns: 1fr; } }

/* Product card */
.product_item, .product.grid-item {
    background: #fff; border: 1px solid #f0f0f0;
    transition: box-shadow .3s, transform .2s;
    overflow: hidden;
}
.product_item:hover { box-shadow: 0 5px 25px rgba(0,0,0,.08); transform: translateY(-3px); }
.product_item--inner { display: flex; flex-direction: column; height: 100%; }
.product_item--thumbnail-holder { position: relative; overflow: hidden; }
.product_item--thumbnail { display: block; }
.product_item--thumbnail img { width: 100%; height: auto; transition: transform .3s; }
.product_item:hover .product_item--thumbnail img { transform: scale(1.05); }
.product_item--info-inner { padding: 15px; text-align: center; flex-grow: 1; display: flex; flex-direction: column; justify-content: space-between; }
.product_item--info { }
.product_item--title, .woocommerce-loop-product__title {
    font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 500;
    margin: 0 0 8px; line-height: 1.4;
}
.product_item--title a { color: #333; }
.product_item--title a:hover { color: #ffbec2; }

/* Price */
.price, .woocommerce-Price-amount { font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 16px; color: #262626; }
.price del { color: #999; font-size: 13px; font-weight: 400; text-decoration: line-through; margin-right: 5px; }
.price ins { text-decoration: none; color: #ffbec2; font-weight: 700; }
.woocommerce-Price-currencySymbol { font-size: 0.85em; }

/* Product action/overlay (hidden on static) */
.product_item--action, .item--overlay { display: none; }

/* Category cards */
.product-category .product_item--thumbnail img { border-radius: 0; }
.product-category .product_item--info h2 { font-size: 16px; font-weight: 600; }

/* ========== SINGLE PRODUCT ========== */
.la-p-single-wrap { padding: 30px 0; }
.la-single-product-page { display: flex; flex-wrap: wrap; }
.product-main-image { }
.product--large-image img { width: 100%; border-radius: 2px; }
.woocommerce-product-gallery { margin-bottom: 20px; opacity: 1 !important; }
.woocommerce-product-gallery__image img { width: 100%; }
.product--summary, .summary.entry-summary { padding-left: 30px; }
.product_title.entry-title { font-size: 28px; margin-bottom: 15px; color: #262626; }
.summary .price { font-size: 22px; margin-bottom: 20px; display: block; }
.woocommerce-product-details__short-description { margin-bottom: 20px; line-height: 1.7; color: #555; }
.woocommerce-product-details__short-description p { margin-bottom: 10px; }

/* Variations */
.variations_form .variations { width: 100%; margin-bottom: 20px; }
.variations_form .variations td { padding: 8px 0; }
.variations_form .variations .label { font-weight: 600; padding-right: 15px; }
.variations_form select { width: 100%; padding: 10px; border: 1px solid #ddd; font-family: 'Montserrat', sans-serif; }
.single_add_to_cart_button { display: none; }

/* Related products */
.custom-product-wrap.related { margin-top: 50px; padding-top: 30px; border-top: 1px solid #eee; }
.custom-product-wrap.related > h2 { text-align: center; margin-bottom: 30px; font-size: 24px; }

/* ========== BLOG ========== */
.hentry, .post { margin-bottom: 30px; }
.entry-header { margin-bottom: 15px; }
.entry-title { font-size: 24px; }
.entry-title a { color: #262626; }
.entry-title a:hover { color: #ffbec2; }
.entry-content { line-height: 1.8; color: #444; }
.entry-content p { margin-bottom: 15px; }
.entry-meta { font-size: 12px; color: #999; margin-bottom: 10px; }

/* ========== FOOTER ========== */
.site-footer {
    background: #262626; color: #aaa;
    padding: 50px 0 0; margin-top: 40px;
    font-size: 13px;
}
.footer-top { padding-bottom: 30px; }
.footer-column { margin-bottom: 30px; }
.footer-column-inner h4, .footer-column-inner .widget-title {
    color: #fff; font-family: 'Playfair Display', serif;
    font-size: 18px; margin-bottom: 20px;
    padding-bottom: 10px; border-bottom: 1px solid #3a3a3a;
}
.footer-column-inner ul li { padding: 5px 0; }
.footer-column-inner ul li a { color: #aaa; transition: color .2s; }
.footer-column-inner ul li a:hover { color: #ffbec2; }
.footer-column-inner p { color: #aaa; line-height: 1.7; }

.footer-bottom {
    border-top: 1px solid #3a3a3a;
    padding: 20px 0; text-align: center;
    font-size: 12px; color: #777;
}
.footer-bottom a { color: #aaa; }
.footer-bottom a:hover { color: #ffbec2; }

/* ========== WOOCOMMERCE MISC ========== */
.woocommerce-result-count { float: left; font-size: 13px; color: #999; margin: 10px 0; }
.woocommerce-ordering { float: right; margin: 10px 0; }
.woocommerce-ordering select { padding: 8px 12px; border: 1px solid #ddd; font-family: 'Montserrat', sans-serif; font-size: 13px; }
.woocommerce-pagination { text-align: center; padding: 30px 0; }
.woocommerce-pagination .page-numbers { display: inline-flex; gap: 5px; }
.woocommerce-pagination .page-numbers li { list-style: none; }
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
    display: inline-block; padding: 8px 14px;
    border: 1px solid #ddd; color: #333; font-size: 13px;
    transition: all .2s;
}
.woocommerce-pagination .page-numbers .current,
.woocommerce-pagination .page-numbers a:hover { background: #ffbec2; color: #fff; border-color: #ffbec2; }

/* Breadcrumbs */
.woocommerce-breadcrumb { font-size: 12px; color: #999; padding: 15px 0; margin-bottom: 20px; }
.woocommerce-breadcrumb a { color: #666; }
.woocommerce-breadcrumb a:hover { color: #ffbec2; }

/* Notices */
.woocommerce-info, .woocommerce-message { padding: 15px 20px; border-left: 3px solid #ffbec2; background: #fdf0f1; margin-bottom: 20px; font-size: 13px; }
.woocommerce-error { padding: 15px 20px; border-left: 3px solid #e74c3c; background: #fdf0f0; margin-bottom: 20px; }

/* Star rating */
.star-rating { display: inline-block; overflow: hidden; position: relative; height: 1em; font-size: 14px; width: 5.4em; font-family: star; }
.star-rating::before { content: 'SSSSS'; color: #ddd; float: left; top: 0; left: 0; position: absolute; }
.star-rating span { overflow: hidden; float: left; top: 0; left: 0; position: absolute; padding-top: 1.5em; }
.star-rating span::before { content: 'SSSSS'; color: #ffbec2; top: 0; position: absolute; left: 0; }

/* ========== WIDGETS ========== */
.widget { margin-bottom: 30px; }
.widget-title { font-size: 16px; font-weight: 700; margin-bottom: 15px; font-family: 'Playfair Display', serif; }
.widget ul li { padding: 6px 0; border-bottom: 1px solid #f0f0f0; }
.widget ul li:last-child { border-bottom: none; }
.widget ul li a { color: #555; font-size: 13px; }
.widget ul li a:hover { color: #ffbec2; }

/* ========== BUTTONS ========== */
.button, .btn, input[type="submit"], button[type="submit"] {
    display: inline-block; padding: 12px 30px;
    background: #ffbec2; color: #fff; border: none;
    font-family: 'Montserrat', sans-serif; font-size: 13px;
    font-weight: 600; text-transform: uppercase; letter-spacing: 1px;
    cursor: pointer; transition: all .3s; border-radius: 0;
}
.button:hover, .btn:hover { background: #262626; color: #fff; }

/* ========== MISC ========== */
.la-loading-progress { display: none; }
.la-image-loading { display: none; }
#la_mobile_nav { display: none; }
.cart-flyout { display: none; }
.la-overlay-global { display: none; }
.wishlist-toggle, .yith-wcwl-add-to-wishlist { display: none; }

/* lazyload fallback */
img.lazyload, img[data-src] { opacity: 1 !important; }
img.lazyloading { opacity: .5; }
img.lazyloaded { opacity: 1; transition: opacity .3s; }

/* Force visibility — Veera JS animations disabled */
.product_item, .grid-item, li.product, .product_item--inner,
.la-isotope-container, .la-isotope-container .grid-item,
.products-grid.la-isotope-container .product_item:not(.showmenow),
.products-grid.la-isotope-container .product_item,
rs-slide, rs-slide *, rs-layer, .rs-layer,
.wpb_animate_when_almost_visible, [class*="la_animate"],
.elementor-invisible { opacity: 1 !important; visibility: visible !important; }
rs-slide { display: block !important; }
rs-slides { position: relative !important; }
.la-image-loading, .site-loading #page.site { opacity: 1 !important; }
#page.site { opacity: 1 !important; }

/* Page title */
.page-title-wrapper, .la-page-title { background: #f8f8f8; padding: 40px 0; margin-bottom: 30px; text-align: center; }
.page-title-wrapper h1, .la-page-title h1 { margin: 0; font-size: 30px; }

/* ========== WPBAKERY / VC ========== */
.wpb_row, .vc_row { margin-bottom: 0; }
.wpb_column, .vc_column_container { padding: 0; }
.wpb_animate_when_almost_visible { opacity: 1; }
.wpb_text_column { margin-bottom: 20px; }
.vc_row-fluid { display: flex; flex-wrap: wrap; }
.vc_col-sm-12 { width: 100%; }
.vc_col-sm-6 { width: 50%; }
.vc_col-sm-4 { width: 33.33%; }
.vc_col-sm-3 { width: 25%; }
@media (max-width: 767px) {
    .vc_col-sm-6, .vc_col-sm-4, .vc_col-sm-3 { width: 100%; }
}

/* ========== RESPONSIVE ========== */
@media (max-width: 767px) {
    h1 { font-size: 24px; } h2 { font-size: 20px; }
    .product--summary, .summary.entry-summary { padding-left: 0; margin-top: 20px; }
    .site-footer { padding: 30px 0 0; }
    .footer-column { text-align: center; }
    .header-main { padding: 8px 0; }
    .site-branding img { max-height: 45px; }
}

@media (max-width: 480px) {
    body { font-size: 13px; }
    .container { padding: 0 10px; }
}
