body.ros-site-shell { margin: 0; background: #f5f6f8; color: #131722; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.ros-site-shell .ros-site-hero { position: relative; min-height: clamp(360px,42vw,520px); overflow: hidden; background: #18222f center/cover no-repeat; color: #fff; }
.ros-site-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(5,12,22,.58),rgba(5,12,22,.30) 45%,rgba(5,12,22,.68)); }
.ros-site-hero:not(.has-banner) .ros-site-hero-shade { background: linear-gradient(135deg,#111827,#263449); }
.ros-hero-topbar,
.ros-compact-inner { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr); align-items: center; gap: 18px; width: min(1300px,calc(100% - 48px)); margin-inline: auto; }
.ros-hero-topbar { position: relative; z-index: 2; min-height: 78px; padding-top: 10px; }
.ros-header-area { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ros-header-top-left { justify-content: flex-start; }
.ros-header-top-center { justify-content: center; }
.ros-header-top-right { justify-content: flex-end; }
.ros-header-compact-left { justify-content: flex-start; }
.ros-header-compact-center { justify-content: center; }
.ros-header-compact-right { justify-content: flex-end; }
.ros-chrome-pill { display: inline-flex; min-height: 40px; max-width: 100%; align-items: center; gap: 12px; padding: 8px 18px; border: 1px solid rgba(255,255,255,.75); border-radius: 999px; background: rgba(255,255,255,.92); color: #171717; font-size: 14px; line-height: 1.25; box-shadow: 0 2px 9px rgba(0,0,0,.12); }
.ros-chrome-address > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ros-chrome-order-type select { max-width: 180px; padding: 0 24px 0 0; border: 0; background-color: transparent; color: inherit; font: 650 14px/1.2 inherit; cursor: pointer; box-shadow: none; }
.ros-chrome-order-type select:focus { outline: 2px solid currentColor; outline-offset: 4px; }
.ros-location-icon { position: relative; width: 14px; height: 18px; flex: 0 0 14px; border: 2px solid currentColor; border-radius: 10px 10px 12px 12px; }
.ros-location-icon::after { position: absolute; top: 4px; left: 4px; width: 3px; height: 3px; border-radius: 50%; background: currentColor; content: ""; }
.ros-chrome-cart { position: relative; display: inline-grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: inherit; text-decoration: none; }
.ros-chrome-cart:hover { background: rgba(255,255,255,.15); color: inherit; }
.ros-cart-icon { position: relative; width: 20px; height: 13px; border: 2px solid currentColor; border-top: 0; transform: skew(-8deg); }
.ros-cart-icon::before { position: absolute; top: -6px; left: -5px; width: 7px; height: 7px; border-top: 2px solid currentColor; content: ""; }
.ros-cart-icon::after { position: absolute; top: 15px; left: 2px; width: 4px; height: 4px; border-radius: 50%; background: currentColor; box-shadow: 12px 0 currentColor; content: ""; }
.ros-chrome-cart-count { position: absolute; top: -2px; right: -3px; min-width: 18px; padding: 2px 5px; border-radius: 99px; background: #e32614; color: #fff; font-size: 10px; font-weight: 750; line-height: 14px; text-align: center; }
.ros-hero-content { position: relative; z-index: 1; display: grid; min-height: clamp(275px,34vw,420px); place-items: center; padding: 38px 20px 70px; text-align: center; }
.ros-header-hero-center { display: flex; max-width: 850px; flex-direction: column; align-items: center; gap: 14px; }
.ros-hero-title { margin: 0; color: #fff; font-size: clamp(38px,6vw,76px); font-weight: 800; letter-spacing: -.025em; line-height: 1.02; text-shadow: 0 3px 18px rgba(0,0,0,.45); }
.ros-hero-subtitle { margin: 0; color: #fff; font-size: clamp(18px,2.2vw,28px); font-weight: 500; text-shadow: 0 2px 10px rgba(0,0,0,.5); }
.ros-opening-block { display: inline-flex; min-height: 42px; align-items: center; gap: 9px; padding: 9px 17px; border: 1px solid rgba(255,255,255,.82); border-radius: 999px; background: rgba(12,18,28,.55); color: #fff; font: 650 13px/1.2 inherit; cursor: pointer; backdrop-filter: blur(7px); }
.ros-opening-block i { width: 9px; height: 9px; border-radius: 50%; background: #9ca3af; }
.ros-opening-block.is-open i { background: #2fd66d; box-shadow: 0 0 0 0 rgba(47,214,109,.72); animation: ros-site-pulse 1.8s ease-out infinite; }
.ros-chrome-logo { display: block; width: 86px; height: 86px; object-fit: contain; }
.ros-chrome-image { display: block; width: min(240px,100%); max-height: 150px; object-fit: contain; }
.ros-chrome-block-link,
.ros-chrome-media-link { color: inherit; text-decoration: none; }
.ros-chrome-media-link { display: inline-block; max-width: 100%; }
.ros-chrome-block-link:hover,
.ros-chrome-media-link:hover,
.ros-chrome-block-link:focus-visible,
.ros-chrome-media-link:focus-visible { background: transparent !important; color: inherit !important; text-decoration: none; opacity: .88; }
.ros-chrome-link { color: inherit; text-decoration: none; }
.ros-chrome-text { display: grid; gap: 4px; }
.ros-chrome-text > span { white-space: normal; }
.ros-site-compact-header { position: fixed; z-index: 100; top: 0; right: 0; left: 0; min-height: 64px; border-bottom: 1px solid #e4e6e8; background: rgba(255,255,255,.97); color: #111; box-shadow: 0 2px 8px rgba(15,23,42,.06); opacity: 0; pointer-events: none; transform: translateY(-110%); transition: opacity .2s ease,transform .2s ease; backdrop-filter: blur(12px); }
.ros-site-compact-header.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.admin-bar .ros-site-compact-header { top: 32px; }
.ros-compact-inner { min-height: 64px; }
.ros-site-compact-header .ros-chrome-pill { min-height: 38px; border-color: #e5e7eb; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.ros-site-compact-header .ros-chrome-cart { color: #111; }
.ros-site-compact-header .ros-chrome-logo { width: 42px; height: 42px; }
.ros-compact-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ros-site-main { width: min(1500px,100%); min-height: 58vh; margin: 0 auto; padding: 0 18px 54px; box-sizing: border-box; }
.ros-site-main > .woocommerce { width: min(1020px,100%); margin: 32px auto 0; }
.ros-site-footer { padding: 58px 24px; background: #1b1b1b; color: #f5f5f5; font-size: 14px; line-height: 1.55; }
.ros-footer-inner { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); width: min(1300px,100%); margin-inline: auto; gap: 42px; align-items: center; }
.ros-footer-column { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 18px; }
.ros-footer-column-1 { flex-direction: column; align-items: flex-start; }
.ros-footer-column-2 { justify-content: center; }
.ros-footer-column-3 { justify-content: center; }
.ros-footer-column-4 { flex-direction: column; align-items: flex-start; }
.ros-footer-text,
.ros-footer-provider { display: grid; gap: 8px; }
.ros-footer-text strong { font-size: 15px; }
.ros-footer-text span { color: #ededed; }
.ros-footer-logo { display: block; width: min(190px,100%); max-height: 115px; object-fit: contain; }
.ros-footer-image { display: block; width: min(240px,100%); max-height: 150px; object-fit: contain; }
.ros-footer-media-link { display: inline-block; max-width: 100%; }
.ros-footer-media-link,
.ros-footer-block-link { color: inherit; text-decoration: none; }
.ros-footer-media-link:hover,
.ros-footer-block-link:hover,
.ros-footer-media-link:focus-visible,
.ros-footer-block-link:focus-visible { background: transparent !important; color: inherit !important; text-decoration: none; opacity: .88; }
.ros-footer-language select { min-width: 160px; min-height: 40px; padding: 7px 32px 7px 12px; border: 0; border-radius: 9px; background: #303030; color: #fff; }
.ros-footer-social { display: inline-grid; width: 28px; height: 28px; place-items: center; border-radius: 7px; color: #fff; text-decoration: none; }
.ros-social-icon { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 3px; background: #fff; color: #1b1b1b; font-weight: 900; line-height: 1; }
.ros-social-instagram { background: transparent; color: #fff; font-size: 28px; font-weight: 500; }
.ros-footer-link,
.ros-footer-provider a { color: #fff; text-decoration: none; }
.ros-footer-provider span { color: #d1d5db; }
.ros-footer-provider strong,
.ros-footer-provider a { font-size: 16px; }

@keyframes ros-site-pulse { 70% { box-shadow: 0 0 0 8px rgba(47,214,109,0); } 100% { box-shadow: 0 0 0 0 rgba(47,214,109,0); } }
@media (max-width:782px) {
    .ros-hero-topbar,
    .ros-compact-inner { width: calc(100% - 24px); grid-template-columns: minmax(0,1.15fr) minmax(0,1fr) auto; gap: 7px; }
    .ros-hero-topbar { width: calc(100% - 24px); grid-template-columns: 1fr auto; gap: 8px; }
    .ros-header-top-center { display: none; }
    .ros-header-top-right { grid-column: 2; }
    .ros-site-shell .ros-site-hero { min-height: 350px; }
    .ros-hero-content { min-height: 270px; padding-bottom: 50px; }
    .ros-site-main { padding-inline: 0; }
    .admin-bar .ros-site-compact-header { top: 46px; }
    .ros-site-compact-header .ros-chrome-logo { width: 34px; height: 34px; }
    .ros-site-compact-header .ros-chrome-pill { min-width: 0; padding-inline: 10px; }
    .ros-site-compact-header .ros-chrome-order-type select { max-width: 112px; font-size: 12px; }
    .ros-footer-inner { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ros-footer-column { justify-content: flex-start; align-items: flex-start; }
    .ros-site-shell .ros-menu-toolbar { top: 64px; margin-inline: -14px; padding-inline: 14px; }
}
@media (max-width:520px) {
    .ros-chrome-pill { padding-inline: 13px; font-size: 12px; }
    .ros-hero-title { font-size: 37px; }
    .ros-footer-inner { grid-template-columns: 1fr; gap: 34px; }
    .ros-footer-column-2,
    .ros-footer-column-3 { justify-content: flex-start; }
}
@media (prefers-reduced-motion:reduce) {
    .ros-opening-block.is-open i { animation: none; }
}
