@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&display=swap");
:root { --ink: #273b32; --black: #30473b; --paper: #f8f7f2; --cream: #f3f2ec; --muted: #647168; --line: #e3e5dd; --gold: #b69b6c; --gold-dark: #876d43; --gold-gradient: linear-gradient(115deg,#a78b59,#dfd0ac 48%,#ad8f5b); color-scheme: light; color: rgb(39, 59, 50); }
body { background: rgb(248, 247, 242); color: rgb(39, 59, 50); font-family: "DM Sans", sans-serif; }
p { color: rgb(89, 103, 94); }
h1, h2, h3, h4 { color: rgb(39, 59, 50); }
h1, h2 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 500; letter-spacing: -0.028em; }
h3 { font-family: "DM Sans", sans-serif; letter-spacing: -0.025em; }
.eyebrow { font-family: "DM Sans", sans-serif; color: rgb(140, 118, 85); font-weight: 700; letter-spacing: 0.16em; }
.btn, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button { background: rgb(48, 71, 59); color: rgb(255, 255, 255); border-color: rgb(48, 71, 59); border-radius: 3px; }
.btn:hover, .woocommerce button.button:hover, .woocommerce a.button:hover { background: rgb(31, 51, 40); color: rgb(255, 255, 255); }
.btn-outline { background: transparent; color: rgb(48, 71, 59); border-color: rgb(48, 71, 59); }
.btn-outline:hover { background: rgb(232, 238, 230); color: rgb(48, 71, 59); }
.text-link { color: rgb(48, 71, 59); border-color: rgb(182, 155, 108); }
.contact-strip { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(220, 229, 217); }
.contact-strip-note { color: rgb(48, 71, 59); }
.contact-strip-note span { color: rgb(182, 155, 108); }
.contact-social a, .contact-social span { color: rgb(48, 71, 59); border-color: rgb(198, 208, 195); }
.contact-social a:hover { background: rgb(48, 71, 59); color: white; }
.contact-strip-contact a:hover { color: rgb(141, 116, 75); }
.site-header { background: rgb(255, 254, 250); border-color: rgb(227, 229, 221); box-shadow: rgba(39, 59, 50, 0.035) 0px 3px 22px; }
.brand, .nav a, .header-actions { color: rgb(48, 71, 59); }
.brand { letter-spacing: 0.075em; }
.header-actions .account-link { color: rgb(48, 71, 59); border-color: rgb(203, 215, 205); }
.header-actions .account-link:hover { background: rgb(232, 238, 230); border-color: rgb(48, 71, 59); }
.header-actions .cart-link, .header-actions a:last-child { border-color: rgb(203, 215, 205); color: rgb(48, 71, 59); }
.nav-dropdown summary, .nav-submenu a { color: rgb(48, 71, 59); }
.nav-submenu { background: rgb(255, 254, 250); border-color: rgb(227, 229, 221); }
.nav .mobile-account-link { color: rgb(48, 71, 59); }
.hero, .hero-inner { min-height: 620px; }
.hero { background: rgb(243, 242, 236); }
.hero-inner { display: grid; grid-template-columns: 45% 55%; align-items: center; }
.hero-copy { width: auto; min-height: 0px; padding: 70px 6% 70px 0px; color: rgb(39, 59, 50); }
.hero h1 { font-size: clamp(3.8rem, 6.1vw, 6.7rem); line-height: 0.92; color: rgb(39, 59, 50); max-width: 560px; }
.hero h1 em { font-style: italic; color: rgb(120, 146, 125); }
.hero p { color: rgb(82, 99, 90); max-width: 460px; font-size: 1.03rem; }
.hero .eyebrow { color: rgb(148, 126, 85); }
.hero-art { position: relative; inset: auto; width: auto; height: 620px; margin-right: calc(0.5 * (-100vw + min(1280px, -48px + 100vw))); background: url("https://roleto.pl/wp-content/uploads/2026/09/ROLETO-—-hero-Swiatlo-i-forma.webp") center center / cover no-repeat rgb(232, 229, 220); }
.hero-art::before { background: none; }
.hero-actions .btn { background: rgb(48, 71, 59); border-color: rgb(48, 71, 59); color: white; }
.hero-actions .btn:hover { background: rgb(32, 55, 43); }
.hero-actions .btn-outline { background: transparent; color: rgb(48, 71, 59); border-color: rgb(157, 174, 160); }
.hero-actions .btn-outline:hover { background: rgb(232, 238, 230); }
.showcase { height: clamp(500px, 45vw, 650px); background: rgb(243, 242, 236); border-color: rgb(227, 229, 221); }
.showcase-slide::before { background: linear-gradient(90deg, rgba(255, 254, 250, 0.96) 0%, rgba(255, 254, 250, 0.9) 26%, rgba(255, 254, 250, 0.28) 52%, transparent 70%); }
.showcase-content h2 { color: rgb(39, 59, 50); font-size: clamp(3.7rem, 6vw, 6.2rem); line-height: 0.91; }
.showcase-content p { color: rgb(82, 99, 90); }
.showcase-content .btn { background: rgb(48, 71, 59); color: white; border-color: rgb(48, 71, 59); }
.showcase-arrow, .showcase-dots button { background: rgb(255, 254, 250); border-color: rgb(190, 203, 191); color: rgb(48, 71, 59); }
.showcase-dots button { background: rgb(203, 213, 202); }
.showcase-dots button[aria-current="true"] { background: rgb(48, 71, 59); }
.trust { background: rgb(232, 238, 230); border-color: rgb(217, 227, 216); }
.trust-item { color: rgb(48, 71, 59); }
.trust-item svg { color: rgb(156, 128, 83); }
.section, .section:nth-of-type(2n+1) { background: rgb(248, 247, 242); }
.section h2, .section h3, .section-head h2 { color: rgb(39, 59, 50); }
.section p { color: rgb(90, 104, 94); }
.collection-section { background: rgb(248, 247, 242); }
.category-icon-grid { border-color: rgb(217, 223, 213); }
.category-icon-link { color: rgb(48, 71, 59); }
.category-icon-link svg { color: rgb(163, 133, 89); }
.category-card, .category-card:nth-child(n) { background: rgb(232, 238, 230); }
.category-card::before, .category-card::after { opacity: 0.45; }
.category-product-icon { color: rgb(140, 118, 85); }
.category-title { background: rgb(255, 254, 250); color: rgb(48, 71, 59); border-color: rgb(214, 223, 212); }
.category-title span { color: rgb(141, 116, 75); }
.category-card:has(.category-media)::before, .category-card:has(.category-media)::after { display: none; }
.diego-teaser { background: rgb(232, 238, 230); color: rgb(39, 59, 50); border-color: rgb(216, 226, 216); }
.diego-teaser h2 { color: rgb(39, 59, 50); }
.diego-teaser p { color: rgb(83, 102, 90); }
.diego-teaser .btn { background: rgb(48, 71, 59); color: white; border-color: rgb(48, 71, 59); }
.editorial, .editorial.section { background: rgb(243, 242, 236) !important; }
.editorial-art { background: url("https://roleto.pl/wp-content/uploads/2026/09/ROLETO-—-aranzacja-plisy.webp") center center / cover no-repeat rgb(232, 229, 220); filter: none; }
.editorial-art::before, .editorial-art::after { display: none; }
.step { border-color: rgb(182, 155, 108); }
.step b { color: rgb(138, 113, 74); }
.step h3 { color: rgb(39, 59, 50); }
.product-card { background: rgb(255, 254, 250); border-color: rgb(224, 228, 219); }
.product-card h3 { color: rgb(39, 59, 50); }
.product-card p { color: rgb(89, 103, 94); }
.product-thumb { background: rgb(243, 242, 236); }
.product-thumb:empty::after { color: rgb(102, 118, 106); }
.callout { background: rgb(232, 238, 230); color: rgb(39, 59, 50); }
.callout h2 { color: rgb(39, 59, 50); }
.callout p { color: rgb(89, 103, 94); }
.callout .eyebrow { color: rgb(144, 116, 76); }
.callout .btn { background: rgb(48, 71, 59); border-color: rgb(48, 71, 59); color: white; }
.site-footer { background: rgb(48, 71, 59); color: rgb(255, 254, 250); }
.site-footer h2, .site-footer h3 { color: rgb(255, 254, 250); }
.site-footer .eyebrow, .footer-grid h3 { color: rgb(223, 199, 151); }
.site-footer p, .site-footer a { color: rgb(220, 231, 220); }
.site-footer .footer-cta { background: rgb(248, 247, 242); border-color: rgb(248, 247, 242); color: rgb(48, 71, 59); }
.footer-intro, .footer-bottom { border-color: rgb(102, 128, 108); }
.footer-bottom { color: rgb(209, 224, 209); }
.site-footer .brand, .site-footer .footer-grid .brand { color: rgb(255, 254, 250); }
.site-footer .footer-grid a:hover { color: rgb(244, 220, 169); }
.content-area, .account-page, .commerce-page, .diego-page { background: rgb(248, 247, 242); color: rgb(39, 59, 50); }
.content-area h1, .account-heading h1, .commerce-heading h1, .diego-header h1 { color: rgb(39, 59, 50); }
.content-area article, .info-main article { color: rgb(39, 59, 50); }
.content-area article h1, .content-area article h2, .content-area article h3, .content-area article h4, .content-area article a { color: rgb(48, 71, 59); }
.content-area article a { text-decoration-color: rgb(182, 155, 108); }
.content-area article p, .info-main > p, .info-main article p, .account-heading p, .commerce-heading p, .diego-header p { color: rgb(83, 99, 90); }
.info-section { border-color: rgb(224, 228, 220); }
.info-section h2 { color: rgb(48, 71, 59); }
.info-pending { border-color: rgb(182, 155, 108); color: rgb(116, 98, 62); }
.help-sidebar, .blog-card { background: rgb(255, 254, 250); border-color: rgb(220, 227, 217); }
.help-sidebar h2, .blog-card h2 { color: rgb(39, 59, 50); }
.help-sidebar nav a { border-color: rgb(224, 229, 223); color: rgb(48, 71, 59); }
.help-sidebar nav a span, .blog-read { color: rgb(140, 112, 72); }
.help-sidebar > p, .blog-meta { color: rgb(101, 115, 105); }
.account-preview-card, .account-woocommerce { background: rgb(255, 254, 250); border-color: rgb(220, 227, 217); }
.account-preview-benefits { background: rgb(232, 238, 230); }
.account-preview-main h2, .account-preview-benefits h3 { color: rgb(39, 59, 50); }
.account-preview-main p, .account-preview-benefits p, .account-preview-main small { color: rgb(89, 103, 94); }
.account-preview-benefits > div { border-color: rgb(211, 223, 210); }
.account-demo-button, .account-woocommerce .woocommerce button.button, .account-woocommerce .woocommerce a.button { background: rgb(48, 71, 59); color: white; }
.account-demo-button.outline { background: transparent; color: rgb(48, 71, 59); border-color: rgb(48, 71, 59); }
.account-woocommerce .woocommerce { color: rgb(39, 59, 50); }
.account-woocommerce .woocommerce-MyAccount-navigation a { color: rgb(48, 71, 59); border-color: rgb(220, 227, 217); }
.account-woocommerce .woocommerce-MyAccount-navigation .is-active a { background: rgb(232, 238, 230); color: rgb(48, 71, 59); }
.account-woocommerce .woocommerce input.input-text, .account-woocommerce .woocommerce select, .account-woocommerce .woocommerce textarea { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(185, 201, 185); }
.account-woocommerce .woocommerce a { color: rgb(48, 71, 59); }
.account-welcome, .account-notice { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(182, 155, 108); }
.account-welcome strong { color: rgb(48, 71, 59); }
.commerce-assurance, .commerce-summary, .commerce-demo-item, .checkout-demo-section { background: rgb(255, 254, 250); border-color: rgb(220, 227, 217); }
.commerce-assurance h2, .commerce-summary h2, .commerce-product-info h2, .checkout-demo-section h2 { color: rgb(39, 59, 50); }
.commerce-assurance p, .commerce-summary p, .commerce-product-info p, .checkout-demo-section p { color: rgb(89, 103, 94); }
.commerce-assurance a { color: rgb(48, 71, 59); border-color: rgb(182, 155, 108); }
.commerce-product-info dt, .commerce-summary-row small { color: rgb(103, 119, 106); }
.commerce-product-info dd, .commerce-demo-item > strong, .commerce-summary-row strong, .commerce-summary-row.grand strong { color: rgb(48, 71, 59); }
.commerce-summary-row { border-color: rgb(224, 229, 221); color: rgb(39, 59, 50); }
.commerce-summary-row.grand { border-color: rgb(182, 155, 108); }
.commerce-summary > small { color: rgb(100, 114, 104); }
.commerce-next, .commerce-page .woocommerce button.button, .commerce-page .woocommerce a.checkout-button, .commerce-page .woocommerce #payment #place_order, .commerce-page .wc-block-components-button { background: rgb(48, 71, 59); color: rgb(255, 255, 255); border-radius: 3px; }
.commerce-page .woocommerce table.shop_table, .commerce-page .woocommerce-cart-form, .commerce-page .woocommerce .cart-collaterals .cart_totals, .commerce-page .wc-block-cart-items, .commerce-page .wc-block-components-sidebar, .commerce-page .wc-block-checkout__main { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(220, 227, 217); }
.commerce-page .woocommerce table.shop_table th, .commerce-page .woocommerce table.shop_table td { border-color: rgb(224, 229, 221); }
.commerce-page .woocommerce table.shop_table a, .commerce-page .wc-block-components-product-name { color: rgb(48, 71, 59); }
.commerce-page .woocommerce form .input-text, .commerce-page .woocommerce form select, .commerce-page .wc-block-components-text-input input, .commerce-page .wc-block-components-select select { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(185, 201, 185); }
.commerce-page .woocommerce #payment, .commerce-page .woocommerce .woocommerce-checkout-review-order-table { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(220, 227, 217); }
.commerce-page .woocommerce #payment .payment_box { background: rgb(232, 238, 230); color: rgb(39, 59, 50); }
.commerce-page .woocommerce #payment .payment_box::before { border-bottom-color: rgb(232, 238, 230); }
.commerce-page .woocommerce-message, .commerce-page .woocommerce-info { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(182, 155, 108); }
.commerce-page .woocommerce .woocommerce-privacy-policy-text p { color: rgb(83, 99, 90); }
.commerce-promo-note { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(169, 189, 171); }
.commerce-promo-note strong { color: rgb(48, 71, 59); }
.commerce-qty input { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(185, 201, 185); }
.commerce-qty button { color: rgb(48, 71, 59); }
.woocommerce div.product .price, .woocommerce ul.products li.product .price { color: rgb(48, 71, 59); }
.woocommerce div.product .product_title, .woocommerce div.product .woocommerce-tabs h2 { color: rgb(39, 59, 50); }
.woocommerce-message, .woocommerce-info { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(182, 155, 108); }
.woocommerce a { color: rgb(48, 71, 59); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: rgb(232, 238, 230); border-color: rgb(220, 227, 217); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: rgb(255, 254, 250); }
.diego-breadcrumb, .diego-breadcrumb a { color: rgb(82, 102, 90); }
.diego-header p, .diego-specs > p { color: rgb(89, 103, 94); }
.diego-view, .diego-color-details, .diego-specs dl > div { background: rgb(255, 254, 250); border-color: rgb(220, 227, 217); }
.diego-view-modes, .diego-view-caption { background: rgb(243, 242, 236); }
.diego-view-modes button { background: rgb(255, 254, 250); color: rgb(48, 71, 59); border-color: rgb(185, 201, 185); }
.diego-view-modes button[aria-pressed="true"] { background: rgb(48, 71, 59); color: rgb(255, 255, 255); border-color: rgb(48, 71, 59); }
.diego-view-caption small, .diego-dimensions small, .diego-fabric-choice small { color: rgb(89, 103, 94); }
.diego-options, .diego-specs { border-color: rgb(220, 227, 217); }
.diego-fabric-choice label, .diego-color-details summary, .diego-color-details summary strong, .diego-specs dd { color: rgb(39, 59, 50); }
.diego-fabric-choice select { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(185, 201, 185); }
.diego-color-details > p, .diego-specs dt, .diego-specs .diego-specs-note { color: rgb(89, 103, 94); }
.roleto-promo { background: rgb(255, 254, 250); color: rgb(39, 59, 50); border-color: rgb(182, 155, 108); box-shadow: rgba(39, 59, 50, 0.2) 0px 20px 55px; }
.roleto-promo > strong { color: rgb(39, 59, 50); }
.roleto-promo p, .roleto-promo small { color: rgb(89, 103, 94); }
.roleto-promo > a { background: rgb(48, 71, 59); color: white; }
.roleto-promo-close { background: rgb(232, 238, 230); color: rgb(48, 71, 59); border-color: rgb(199, 211, 199); }
@media (max-width: 980px) {
  .menu-toggle { color: rgb(48, 71, 59); }
  .nav { background: rgb(255, 254, 250); box-shadow: rgba(39, 59, 50, 0.125) 0px 12px 22px; }
  .nav .mobile-account-link { border-color: rgb(220, 227, 217); }
  .hero-inner { grid-template-columns: 47% 53%; }
  .hero h1 { font-size: clamp(3.7rem, 6vw, 5.2rem); }
}
@media (max-width: 700px) {
  .hero, .hero-inner { min-height: 0px; }
  .hero-inner { display: flex; flex-direction: column; }
  .hero-copy { width: 100%; min-height: 0px; padding: 60px 0px 38px; }
  .hero h1 { font-size: clamp(3.6rem, 12vw, 5.2rem); }
  .hero-art { position: relative; inset: auto; width: calc(100% + 32px); height: 390px; margin: 0px -16px; opacity: 1; background-size: cover; background-position: center center; }
  .hero-art::before { background: none; }
  .showcase { height: 570px; }
  .showcase-slide { background-position: 62% center; }
  .showcase-slide::before { background: linear-gradient(0deg, rgba(255, 254, 250, 0.98) 0%, rgba(255, 254, 250, 0.93) 29%, rgba(255, 254, 250, 0.1) 72%); }
  .showcase-content { justify-content: flex-end; padding-bottom: 92px; }
  .showcase-content h2 { font-size: clamp(3.2rem, 11vw, 4.6rem); }
  .showcase-controls { bottom: 20px; }
  .trust-inner { grid-template-columns: repeat(2, 1fr); }
  .category-icon-grid { grid-template-columns: repeat(5, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 420px) {
  .contact-strip-note { display: none; }
  .contact-strip-contact:nth-child(2) { display: none; }
  .hero-art { height: 310px; }
  .trust-inner { gap: 17px; }
  .trust-item { font-size: 0.7rem; }
  .category-icon-grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
}
.roleto-config { background: rgb(255, 254, 250); border-color: rgb(220, 227, 217); color: rgb(39, 59, 50); }
.roleto-config h3, .roleto-config label { color: rgb(39, 59, 50); }
.roleto-config p, .roleto-config small { color: rgb(89, 103, 94); }
.roleto-config input, .roleto-config select { background: rgb(255, 254, 250); border-color: rgb(185, 201, 185); color: rgb(39, 59, 50); }
.roleto-config input:focus, .roleto-config select:focus { outline-color: rgb(48, 71, 59); }
.roleto-summary { border-color: rgb(220, 227, 217); }
.roleto-summary strong { background: none; color: rgb(48, 71, 59); }
.roleto-product-preview { border-color: rgb(220, 227, 217); }
.roleto-product-preview figcaption { background: rgb(232, 238, 230); color: rgb(48, 71, 59); }
.roleto-variant-photo { border-color: rgb(220, 227, 217); background: rgb(255, 254, 250); }
.collection-section .category-icon-link { color: rgb(48, 71, 59); }
.collection-section .category-icon-link:hover { color: rgb(48, 71, 59); }
.collection-section .category-icon-link svg g, .collection-section .category-icon-link svg path, .collection-section .category-icon-link svg rect, .collection-section .category-icon-link svg line { stroke: rgb(82, 112, 91); }
.collection-section .category-card { background: rgb(255, 254, 250); border: 1px solid rgb(217, 226, 216); border-radius: 3px; box-shadow: rgba(48, 71, 59, 0.04) 0px 8px 24px; }
.collection-section .category-card:hover { border-color: rgb(139, 165, 144); box-shadow: rgba(48, 71, 59, 0.11) 0px 15px 34px; }
.collection-section .category-product-icon { background: radial-gradient(circle at 48% 40%, rgb(245, 245, 238) 0%, rgb(232, 238, 230) 74%, rgb(225, 233, 223) 100%); color: rgb(82, 112, 91); }
.collection-section .category-product-icon::before { border-color: rgb(200, 213, 199); }
.collection-section .category-product-icon svg { filter: none; }
.collection-section .category-product-icon svg g, .collection-section .category-product-icon svg path, .collection-section .category-product-icon svg rect, .collection-section .category-product-icon svg line { stroke: rgb(82, 112, 91); }
.collection-section .category-title { background: rgb(255, 254, 250); color: rgb(48, 71, 59); border-top: 1px solid rgb(217, 226, 216); font-weight: 600; }
.contact-strip .contact-social a, .contact-strip .contact-social .social-placeholder { border-color: rgb(120, 147, 126); color: rgb(48, 71, 59); opacity: 1; background: rgb(247, 250, 245); }
.contact-strip .contact-social svg, .contact-strip .contact-social svg * { stroke: currentcolor; }
.contact-strip .contact-social a:hover { background: rgb(48, 71, 59); color: rgb(255, 254, 250); }
.contact-page { background: rgb(248, 247, 242); padding: clamp(50px, 7vw, 100px) 0px 110px; min-height: 62vh; }
.contact-heading { max-width: 730px; margin-bottom: 48px; }
.contact-heading h1 { font-size: clamp(4rem, 7vw, 7rem); line-height: 0.95; margin: 0px 0px 20px; }
.contact-heading p { font-size: 1.08rem; line-height: 1.65; max-width: 670px; }
.contact-layout { display: grid; grid-template-columns: minmax(300px, 0.86fr) minmax(360px, 1.14fr); gap: clamp(18px, 3vw, 45px); align-items: start; }
.contact-detail-card, .contact-form-card { background: rgb(255, 254, 250); border: 1px solid rgb(219, 228, 219); padding: clamp(27px, 3.5vw, 48px); border-radius: 3px; box-shadow: rgba(48, 71, 59, 0.04) 0px 12px 36px; }
.contact-detail-card { background: rgb(232, 238, 230); }
.contact-detail-card h2, .contact-form-card h2 { font-size: clamp(2.5rem, 3vw, 3.5rem); line-height: 1; letter-spacing: -0.02em; margin: 0px 0px 16px; }
.contact-detail-card p, .contact-form-card p { color: rgb(82, 100, 89); line-height: 1.7; }
.contact-detail-list { margin: 28px 0px 34px; }
.contact-detail-list > div { padding: 17px 0px; border-top: 1px solid rgb(204, 218, 203); }
.contact-detail-list dt { color: rgb(107, 128, 110); font-size: 0.72rem; letter-spacing: 0.13em; text-transform: uppercase; font-weight: 700; margin-bottom: 7px; }
.contact-detail-list dd { margin: 0px; color: rgb(39, 59, 50); font-size: 1.03rem; line-height: 1.55; }
.contact-detail-list dd a { color: rgb(48, 71, 59); text-decoration: underline rgb(182, 155, 108); text-underline-offset: 4px; }
.contact-shortcuts { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 30px; }
.contact-shortcuts a { border: 1px solid rgb(169, 190, 168); padding: 10px 14px; color: rgb(48, 71, 59); font-size: 0.8rem; font-weight: 700; }
.contact-shortcuts a:hover { background: rgb(48, 71, 59); color: rgb(255, 255, 255); }
.contact-form-card .wpforms-container { margin: 25px 0px 0px; }
.contact-form-card .wpforms-field-label { color: rgb(48, 71, 59); font-weight: 600; font-size: 0.85rem; }
.contact-form-card .wpforms-form input:not([type="hidden"]), .contact-form-card .wpforms-form textarea { background: rgb(255, 254, 250) !important; color: rgb(39, 59, 50) !important; border: 1px solid rgb(190, 207, 192) !important; border-radius: 2px !important; max-width: 100% !important; }
.contact-form-card .wpforms-form textarea { min-height: 160px; }
.contact-form-card .wpforms-submit { background: rgb(48, 71, 59) !important; border: 1px solid rgb(48, 71, 59) !important; color: rgb(255, 255, 255) !important; padding: 13px 26px !important; border-radius: 3px !important; font-family: "DM Sans", sans-serif !important; font-weight: 700 !important; }
.contact-form-card .wpforms-submit:hover { background: rgb(32, 55, 43) !important; }
.site-footer .seller-identity { font-size: 0.79rem; line-height: 1.65; color: rgb(207, 224, 207); border-left: 2px solid rgb(182, 155, 108); padding-left: 13px; margin-top: 20px; }
.checkout-seller { background: rgb(232, 238, 230); border-left: 3px solid rgb(182, 155, 108); padding: 13px 18px; font-size: 0.79rem; line-height: 1.55; max-width: 760px; color: rgb(48, 71, 59) !important; }
.checkout-seller a { color: rgb(48, 71, 59); text-decoration: underline; text-underline-offset: 3px; }
.contact-strip-contact:empty { display: none; }
@media (max-width: 830px) {
  .contact-layout { grid-template-columns: 1fr; }
  .contact-heading { margin-bottom: 30px; }
}

/* Powitalny rabat — prawa strona. */
.welcome-offer { left: auto; right: 24px; }
@media (max-width: 700px) {
  .welcome-offer { left: 16px; right: 16px; width: auto; }
}

/* Pełny produkt w każdej miniaturze — bez kadrowania. */
.product-thumb img,
.featured .product-card img,
.woocommerce ul.products li.product a img {
  object-fit: contain !important;
  object-position: center !important;
  background: #f7f5ef;
}
.product-thumb img,
.featured .product-card img {
  padding: 18px;
}

/* Galeria produktów rzymskich — konfigurator ukrywa ją globalnie dla plis. */
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery {
  display: block !important;
  float: none !important;
  width: min(100%, 1020px) !important;
  margin: 20px auto 40px !important;
  padding: 18px;
  background: #fffefa;
  border: 1px solid #e3e5dd;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery__image:first-child {
  text-align: center;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery__image:first-child img {
  width: 100%;
  max-height: 680px;
  object-fit: contain;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery__image:not(:first-child) {
  margin-top: 12px;
  padding: 4px;
  border: 1px solid #e3e5dd;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery__image:not(:first-child) img {
  width: 100%;
  height: 115px;
  object-fit: contain;
}
@media (max-width: 650px) {
  body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery { padding: 10px; }
  body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .woocommerce-product-gallery__image:not(:first-child) img { height: 70px; }
}

/* Rolety rzymskie: galeria i konfigurator jak na kartach plis. */
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie.roleto-roman-ready > .woocommerce-product-gallery {
  display: none !important;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-intro {
  margin-bottom: 28px;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-intro .product_title {
  margin-bottom: 18px;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-intro .price {
  margin-bottom: 20px;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-intro .woocommerce-product-details__short-description {
  margin-bottom: 12px;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-shell {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 32px;
  align-items: start;
  margin-bottom: 38px;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-shell .summary {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  margin: 0 !important;
  min-width: 0;
}
body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-viewer {
  background: #fffefa;
  border: 1px solid #e3e5dd;
  min-width: 0;
  overflow: hidden;
}
.roleto-roman-tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  padding: 11px;
  background: #f3f2ec;
  border-bottom: 1px solid #e3e5dd;
}
.roleto-roman-tabs button {
  background: #fffefa;
  border: 1px solid #d3d9d0;
  padding: 10px 13px;
  color: #30473b;
  font-size: .78rem;
  font-weight: 700;
  border-radius: 2px;
}
.roleto-roman-tabs button[aria-pressed="true"] {
  background: #edf3ef;
  border-color: #b69b6c;
  box-shadow: inset 0 -2px #b69b6c;
}
.roleto-roman-tabs button[hidden] { display: none; }
.roleto-roman-tabs button:focus-visible, .roleto-roman-thumb:focus-visible {
  outline: 2px solid #30473b;
  outline-offset: 2px;
}
.roleto-roman-stage {
  height: clamp(320px, 40vw, 580px);
  background: #f7f5ef;
}
.roleto-roman-stage a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.roleto-roman-stage img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.roleto-roman-caption {
  padding: 15px 17px;
  border-top: 1px solid #e3e5dd;
  color: #30473b;
  background: #fffefa;
}
.roleto-roman-caption small {
  display: block;
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: #748277;
  margin-bottom: 5px;
}
.roleto-roman-caption strong { font-size: .88rem; font-weight: 600; }
.roleto-roman-thumbs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 10px 12px 14px;
  border-top: 1px solid #e3e5dd;
  scrollbar-width: thin;
}
.roleto-roman-thumb {
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  padding: 3px;
  background: #fffefa;
  border: 1px solid #d3d9d0;
  border-radius: 2px;
}
.roleto-roman-thumb[aria-pressed="true"] { border-color: #b69b6c; box-shadow: 0 0 0 1px #b69b6c; }
.roleto-roman-thumb img { display: block; width: 100%; height: 100%; object-fit: contain; }
@media (max-width: 900px) {
  body.single-product.woocommerce div.product.product_cat-rolety-rzymskie .roleto-roman-shell { grid-template-columns: 1fr; gap: 22px; }
  .roleto-roman-stage { height: min(74vw, 580px); }
}
@media (max-width: 600px) {
  .roleto-roman-tabs { padding: 8px; gap: 5px; }
  .roleto-roman-tabs button { font-size: .7rem; padding: 9px 8px; }
  .roleto-roman-stage { height: 76vw; min-height: 280px; }
  .roleto-roman-thumb { flex-basis: 62px; width: 62px; height: 62px; }
}
