:root{--topbarH: 86px;--radius: 18px;--containerW: 1040px;--containerPad: 32px;--bg:#120406;--itG:#1f8f4a;--itW:#fff6ef;--itR:#d62828;--surface0: rgba(10,3,4,.7);--surface1: rgba(33,10,13,.76);--surface2: rgba(22,7,9,.94);--surface3: rgba(255,255,255,.06);--fg: #fff6ef;--muted: rgba(255,246,239,.7);--muted2: rgba(255,246,239,.56);--border: rgba(255,246,239,.12);--border2: rgba(255,246,239,.18);--card: var(--surface1);--card2: var(--surface2);--glass: rgba(18,6,8,.58);--shadow: 0 18px 55px rgba(0,0,0,.55);--shadowSoft: 0 12px 28px rgba(0,0,0,.35);--accent: var(--itR);--accent2: var(--itG);--ok: var(--itG);--btnBg: rgba(255,246,239,.94);--btnFg: #1a0608;--ghostBg: rgba(255,255,255,.04);--ghostBgHover: rgba(255,255,255,.07);--add: var(--itG);--addBorder: rgba(31,143,74,.35);--addFg: #06110a;--ease: cubic-bezier(.2,.8,.2,1);--tFast: .12s;--tMed: .18s;--focus: rgba(214,40,40,.38);--focusAdd: rgba(31,143,74,.4);--ring: 4px;--wmOpacity: .055;--wmSize: min(520px, 74vw);--wmY: center;--sigOpacity: .4;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px)}html{scroll-padding-top:var(--topbarH);-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark;scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}:where(button,input,textarea,select){font:inherit;color:inherit}button{touch-action:manipulation}:focus{outline:none}:focus-visible{box-shadow:0 0 0 var(--ring) var(--focus)}.srOnly{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}body{min-height:100vh;overflow-x:hidden;position:relative;background:radial-gradient(900px 520px at 16% 8%,rgba(31,143,74,.2),transparent 62%),radial-gradient(720px 420px at 86% 0%,rgba(214,40,40,.2),transparent 62%),radial-gradient(900px 520px at 55% 30%,rgba(255,246,239,.06),transparent 62%),radial-gradient(900px 520px at 60% 112%,rgba(80,18,24,.28),transparent 62%),linear-gradient(180deg,#0000,#00000057),var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}@supports (min-height: 100dvh){body{min-height:100dvh}}#root{position:relative;z-index:1}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:url(/roma-logo.png);background-repeat:no-repeat;background-position:center var(--wmY);background-size:var(--wmSize);opacity:var(--wmOpacity);filter:saturate(.95) contrast(1.05)}body:after{content:"";position:fixed;left:0;right:0;bottom:0;height:3px;pointer-events:none;z-index:0;background:linear-gradient(90deg,var(--itG) 0%,var(--itW) 50%,var(--itR) 100%);opacity:var(--sigOpacity)}@media(max-width:520px){:root{--wmOpacity: .035;--wmSize: min(420px, 86vw);--wmY: 22%;--sigOpacity: .28}}.container{width:min(var(--containerW),calc(100% - var(--containerPad)));margin:0 auto}:where(section[id]){scroll-margin-top:calc(var(--topbarH) + 12px)}.scrollMt{scroll-margin-top:calc(var(--topbarH) + 12px)}.topbar{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(to bottom,#0a0304c7,#0a03048a);border-bottom:1px solid var(--border)}.topbar:before{content:"";display:block;height:2px;background:linear-gradient(90deg,var(--itG) 0%,var(--itW) 48%,var(--itW) 52%,var(--itR) 100%);opacity:.75}.topbarInner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:14px;flex-wrap:wrap}.card{background:var(--surface1);border:1px solid var(--border);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.card.isHoverable{transition:transform var(--tFast) var(--ease),filter var(--tFast) var(--ease)}@media(hover:hover){.card.isHoverable:hover{filter:brightness(1.03)}}.badge{font-size:12px;color:var(--muted2);border:1px solid var(--border);padding:6px 10px;border-radius:999px;background:#ffffff0a}.tag{font-size:12px;background:var(--accent);color:var(--itW);padding:4px 10px;border-radius:999px;font-weight:900}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;min-height:44px;border-radius:14px;background:var(--btnBg);color:var(--btnFg);font-weight:850;text-decoration:none;border:1px solid rgba(255,255,255,.12);cursor:pointer;transition:transform var(--tFast) var(--ease),filter var(--tFast) var(--ease),opacity var(--tFast) var(--ease),background var(--tFast) var(--ease)}@media(hover:hover){.btn:hover{filter:brightness(1.03)}}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.ghost{background:var(--ghostBg);color:var(--fg);border-color:var(--border)}@media(hover:hover){.btn.ghost:hover{background:var(--ghostBgHover);filter:none}}.btn.add{background:linear-gradient(180deg,#1f8f4afa,#18763deb);color:var(--addFg);border-color:var(--addBorder)}@media(hover:hover){.btn.add:hover{filter:brightness(1.05) saturate(1.05)}}.btn.add:active{transform:translateY(1px)}.btn.add:focus-visible{box-shadow:0 0 0 var(--ring) var(--focusAdd)}:where(.hero){padding:56px 0 18px}.heroActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}:where(.kicker){display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff08;color:var(--muted);font-weight:900;font-size:12px}:where(.h1){font-size:clamp(34px,5vw,54px);font-weight:950;line-height:1.02;margin:8px 0 0}:where(.sub){font-size:15px;color:var(--muted);margin-top:10px}:where(.grid3){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}:where(.cardTitle){font-weight:950;margin:0 0 6px}:where(.cardDesc){margin:0;color:var(--muted);line-height:1.35}.floatCart{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));z-index:60;padding:12px 14px;border-radius:999px;background:#160709c7;color:var(--fg);font-weight:900;border:1px solid var(--border);box-shadow:0 18px 45px #0000008c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;gap:10px;align-items:center;will-change:transform;transition:filter var(--tFast) var(--ease),transform var(--tFast) var(--ease)}@media(hover:hover){.floatCart:hover{filter:brightness(1.03)}}.floatCart:active{transform:translateY(1px)}.floatCart:focus-visible{box-shadow:0 0 0 var(--ring) var(--focus)}.cartIconWrap{position:relative;width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid var(--border);box-shadow:var(--shadowSoft)}.cartBubble{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--itW);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:950;border:1px solid rgba(0,0,0,.25)}.floatCartPrice{font-weight:950;letter-spacing:-.2px;white-space:nowrap}.floatCartMeta{display:flex;flex-direction:column;min-width:0;line-height:1.1}.floatCartTitle{font-weight:950;font-size:13px;letter-spacing:-.2px}.floatCartSub{margin-top:2px;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floatCartRight{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.floatCartCta{display:none;padding:8px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;font-weight:950}@media(max-width:520px){.floatCart{bottom:auto;right:calc(12px + var(--safe-r));top:calc(var(--topbarH) + 12px + var(--safe-t));border-radius:999px;padding:10px;gap:10px}.floatCartMeta,.floatCartPrice,.floatCartRight,.floatCartCta{display:none!important}.cartIconWrap{width:42px;height:42px}.heroActions .btn{width:100%}}@media(max-width:360px){.floatCart{padding:10px}}.drawerOverlay{position:fixed;inset:0;background:#00000094;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100}.drawer{position:fixed;top:0;right:0;height:100vh;width:min(420px,92vw);background:var(--surface2);border-left:1px solid var(--border);z-index:101;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain}@supports (height: 100dvh){.drawer{height:100dvh}}.drawerTop{display:flex;justify-content:space-between;gap:10px;align-items:center;position:sticky;top:0;z-index:1;padding-top:var(--safe-t);background:#160709f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.drawerTop:before{content:"";display:block;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--itG) 0%,var(--itW) 50%,var(--itR) 100%);opacity:.55;margin-bottom:10px}.drawerBody{flex:1;overflow:auto;padding-bottom:calc(12px + var(--safe-b));-webkit-overflow-scrolling:touch}.drawerFooter{border-top:1px solid var(--border);padding-top:12px;padding-bottom:calc(10px + var(--safe-b));background:#160709f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:520px){.drawer{inset:auto 0 0;width:100vw;height:min(92vh,820px);border-left:none;border-top:1px solid var(--border);border-radius:18px 18px 0 0}}@media(max-width:900px){.grid3,.split{grid-template-columns:1fr}.hero{padding:44px 0 18px}.section{padding:18px 0 44px}}@media(min-width:900px){.topbar .container.topbarInner{padding:16px 0;gap:16px}.topbar .topRow{gap:18px}.topbar .brandRow{gap:16px}.topbar .brandText{gap:10px}.topbar .brandLogo{width:112px;height:112px;border-radius:20px}.topbar .brandMeta{gap:12px}.topbar .servicePill,.topbar .cityPill{padding:9px 14px;font-size:13.5px;letter-spacing:-.12px}.topbar .iconBtn{min-height:46px;border-radius:16px}.topbar .menuBtn{min-width:46px;padding:12px}.topbar .menuPopover{width:min(380px,calc(100vw - 24px));border-radius:20px;padding:12px;max-height:min(70vh,560px)}.topbar .menuTitle{font-size:14px}.topbar .menuSectionTitle{font-size:11.5px;padding:10px 8px 8px}.topbar .menuList{gap:8px}.topbar .menuItem{min-height:50px;padding:12px 14px;border-radius:16px;font-size:14px;letter-spacing:-.18px}.topbar .menuItemHint{font-size:13px}.topbar .menuCloseBtn{min-height:40px;min-width:40px;border-radius:14px}.card{padding:16px}}@media(min-width:1200px){.topbar .container.topbarInner{padding:18px 0}.topbar .brandLogo{width:120px;height:120px}.topbar .servicePill,.topbar .cityPill{font-size:14px;padding:10px 15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html.noScroll,body.noScroll{overflow:hidden}
