[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #087c74; outline-offset: 4px; }
dialog :focus-visible, form[data-romoss-lead] :focus-visible { outline-color: #2ed3c6; }
html[data-page="contact"] .romoss-floating-contact { display: none !important; }
.romoss-mobile-contactbar { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
form[data-romoss-lead] input, form[data-romoss-lead] textarea { box-sizing: border-box; }
/* White product-photo canvas, including whitespace around contained images. */
.romoss-product-photo-surface, .romoss-hero-media { background-color: #fff !important; }
.romoss-product-photo-surface { background-blend-mode: normal !important; }
/* Reserve the empty left portion of the photo for live copy. At narrow widths
   text leaves the image entirely, rather than covering the station or artwork. */
.romoss-home-banner { min-height: 440px !important; height: clamp(440px,34vw,560px); align-items: center !important; }
.romoss-home-banner > img { object-fit: cover !important; object-position: center !important; }
.romoss-home-banner::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg,rgba(20,14,12,.72),rgba(20,14,12,.4) 30%,transparent 58%); }
.romoss-home-banner-copy { width: 36% !important; max-width: 500px !important; padding: 32px !important; background: none !important; z-index: 2; }
.romoss-home-banner-copy > b { font-size: clamp(24px,2.1vw,30px) !important; line-height: 1.2 !important; text-wrap: balance; }
.romoss-home-banner-description { margin: 0; color: #fff; font-size: 18px; line-height: 1.5; text-wrap: pretty; }
.romoss-home-banner-copy > a { min-height: 48px; height: auto !important; padding: 12px 22px !important; flex-shrink: 0; }
/* The supplied artwork already has rounded white corners. Match its aspect-
   scaled radius instead of placing a smaller, competing radius over it. */
.romoss-home-about { border-radius: 4% / 9.4% !important; background: #ecebe6 !important; isolation: isolate; }
.romoss-home-about > img { display: block; width: 100%; }
.romoss-catalog-filters { gap: 8px !important; flex-wrap: wrap !important; overflow: visible !important; margin: 0 !important; padding: 16px 0 0 !important; }
.romoss-catalog-filters > button { height: 44px; min-width: 76px; padding: 0 16px !important; gap: 8px !important; align-items: center !important; justify-content: center; line-height: 1 !important; }
.romoss-catalog-filters > button > span { display: inline-flex; align-items: center; line-height: 1; }
.romoss-catalog-filters > button > span:last-child { min-width: 20px; height: 20px; justify-content: center; border-radius: 50%; background: #1414140d; opacity: 1 !important; font-size: 11px !important; }
.romoss-catalog-filters > button[aria-pressed="true"] > span:last-child { background: #ffffff26; }
@media (max-width: 1079px) {
  .romoss-home-banner { height: auto !important; min-height: 0 !important; display: flex !important; flex-direction: column; align-items: stretch !important; }
  .romoss-home-banner::before { display: none; }
  .romoss-home-banner > img { position: static !important; height: auto !important; aspect-ratio: 1920 / 767; object-fit: contain !important; }
  .romoss-home-banner-copy { width: 100% !important; max-width: none !important; padding: 24px !important; gap: 20px !important; }
  .romoss-home-banner-copy > b { font-size: clamp(23px,4vw,30px) !important; }
}
/* Sticky columns are useful only while their grid actually has two columns.
   In the stacked layout they otherwise paint over the next grid item. */
@media (max-width: 1079px) {
  .romoss-feature-intro, .romoss-generic-product-copy { position: static !important; top: auto !important; }
  .romoss-product-features { gap: 28px !important; }
}
@media (max-width: 640px) {
  .romoss-compare-head { display: none !important; }
  .romoss-compare-row { grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 12px 16px !important; }
  .romoss-compare-row > b { grid-column: 1; grid-row: 1; align-self: center; }
  .romoss-compare-row [data-compare-field="price"] { grid-column: 2; grid-row: 1; text-align: right; align-self: center; white-space: nowrap; }
  .romoss-compare-row [data-compare-field="power"] { grid-column: 1; grid-row: 2; }
  .romoss-compare-row [data-compare-field="capacity"] { grid-column: 2; grid-row: 2; }
  .romoss-compare-row [data-compare-field="power"]::before,
  .romoss-compare-row [data-compare-field="capacity"]::before { display: block; margin-bottom: 4px; color: #5a5a56; font-size: 12px; }
  .romoss-compare-row [data-compare-field="power"]::before { content: "Мощность"; }
  .romoss-compare-row [data-compare-field="capacity"]::before { content: "Ёмкость"; }
}
@media (max-width: 359px) {
  .romoss-home-hero-facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .romoss-home-hero-facts > div:last-child { grid-column: 1 / -1; }
  .romoss-home-product-cta { font-size: 14px !important; padding: 0 16px !important; max-width: 100%; }
  .romoss-product-stats > div { padding: 24px 12px !important; }
  .romoss-product-stats b { font-size: 24px !important; }
}
@media (max-width: 819px) {
  body { padding-bottom: calc(80px + env(safe-area-inset-bottom)) !important; }
  .romoss-product-hero { padding: 16px 16px 0 !important; gap: 16px !important; }
  .romoss-hero-media { min-height: 230px !important; padding: 18px !important; }
  .romoss-hero-media span { font-size: 11px !important; padding: 5px 8px !important; }
  .romoss-hero-copy { padding: 0 4px !important; gap: 16px !important; }
  .romoss-hero-copy > div { gap: 12px !important; }
  .romoss-hero-copy h1 { font-size: 60px !important; line-height: 1 !important; }
  .romoss-hero-copy p { font-size: 16px !important; line-height: 1.45 !important; }
  .romoss-hero-copy > div:first-child > span { font-size: 12px !important; }
  .romoss-hero-copy > div:nth-child(2) > div:first-child > span:first-child { font-size: 32px !important; }
  .romoss-hero-copy > div:nth-child(2) > div:first-child { gap: 8px !important; }
  .romoss-hero-copy button[data-romoss-model] { min-height: 48px; }
}
.romoss-breadcrumbs{max-width:1320px;width:100%;margin:0 auto;padding:20px 24px 0;font:14px/1.5 Onest,sans-serif;color:#5a5a56}
.romoss-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.romoss-seo-content{max-width:1320px;width:100%;margin:0 auto;padding:32px 24px 56px;font:16px/1.6 Onest,sans-serif;color:#5a5a56}
.romoss-seo-content h2{font-size:clamp(24px,3vw,32px);line-height:1.2;font-weight:500;color:#141414}
.romoss-seo-content p{max-width:900px}
.romoss-seo-content a{text-decoration:underline;text-underline-offset:3px;color:#141414}
.romoss-nojs{padding:20px 24px;font:16px/1.5 Onest,sans-serif;background:#ecebe6}
/* Shared cart and unobtrusive storage notice; no customer data in localStorage. */
.romoss-cart-dialog{width:min(560px,calc(100vw - 24px));max-height:90dvh;overflow:auto;border:0;border-radius:20px;padding:24px;background:#ecebe6;color:#141414;font-family:Onest,Helvetica,sans-serif;box-sizing:border-box}
.romoss-cart-dialog::backdrop{background:rgba(20,20,20,.55)}
.romoss-cart-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.romoss-cart-dialog h2{margin:0;font-size:28px}
.romoss-cart-dialog button{font:inherit;min-height:44px;min-width:44px;border:1px solid #bcbcb5;border-radius:10px;cursor:pointer;background:transparent;color:inherit}
.romoss-cart-dialog button:disabled{opacity:.45;cursor:default}
.romoss-cart-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid #bcbcb5}
.romoss-cart-row img{width:72px;height:72px;object-fit:contain;mix-blend-mode:multiply}
.romoss-cart-row p{margin:8px 0}
.romoss-cart-quantity{display:flex;align-items:center;gap:12px}
.romoss-cart-note{font-size:14px;line-height:1.5;color:#42423d}
.romoss-cart-dialog [data-cart-checkout]{display:block;width:100%;background:#141414;color:#fff;border:0;min-height:52px;padding:12px;margin-bottom:14px;font-weight:600}
.romoss-cart-dialog [data-cart-total]{font-weight:600}
.romoss-cookie-notice{position:fixed;z-index:35;left:16px;bottom:16px;max-width:450px;display:flex;align-items:center;gap:16px;padding:16px;background:#141414;color:#fff;border-radius:14px;box-shadow:0 6px 24px #0003;font-family:Onest,Helvetica,sans-serif}
.romoss-cookie-notice p{font-size:13px;line-height:1.5;margin:0}
.romoss-cookie-notice button{min-width:85px;min-height:44px;border:0;border-radius:10px;background:#2ed3c6;color:#141414;font:inherit;cursor:pointer}
.romoss-cookie-settings{margin:0 24px 16px;min-height:44px;background:transparent;border:0;text-decoration:underline;font:inherit;cursor:pointer;color:#141414}
.romoss-cookie-choice{display:block;max-width:520px;max-height:calc(100dvh - 120px);overflow:auto}
.romoss-cookie-choice a{color:inherit;text-decoration:underline}
.romoss-cookie-choice [data-cookie-choice-status]{margin-top:8px}
.romoss-cookie-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.romoss-cookie-actions button{padding:10px 14px;flex:1 1 180px}
.romoss-cookie-actions [data-deny]{background:#fff}
.romoss-cookie-actions [data-close]{background:transparent;color:#fff;flex:0 1 auto;border:1px solid #777}
@media(max-width:819px){.romoss-cookie-notice{left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));max-width:none;padding:12px;gap:10px}.romoss-cart-dialog{padding:20px 16px}.romoss-cart-row{grid-template-columns:52px minmax(0,1fr);gap:10px}.romoss-cart-row img{width:52px;height:52px}.romoss-cart-row>button{grid-column:2;justify-self:start;padding:0 12px}}
