/* ========================================================= PAYDOS Onepager Styles – Mobile first – Minimalistic luxury (black + metallic) – Replace placeholder images in :root or per section classes ========================================================= */ /* ———- CSS Variables ———- */ :root{ –bg: #000000; –surface: rgba(255,255,255,0.04); –surface-2: rgba(255,255,255,0.06); –text: rgba(255,255,255,0.92); –muted: rgba(255,255,255,0.68); –line: rgba(255,255,255,0.12); –silver: #c7c7c7; –silver-2: #9f9f9f; –shadow: 0 12px 40px rgba(0,0,0,0.55); –radius: 16px; –container: 1120px; –font: „Montserrat“, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; /* Image placeholders (easy swap later) */ –img-hero: url(„https://images.unsplash.com/photo-1521017432531-fbd92d768814?auto=format&fit=crop&w=2400&q=70“); –img-lounge: url(„https://images.unsplash.com/photo-1414235077428-338989a2e8c0?auto=format&fit=crop&w=2000&q=70“); –img-shisha: url(„https://images.unsplash.com/photo-1564325724739-bae0bd08762c?auto=format&fit=crop&w=1400&q=70“); –img-okey: url(„https://images.unsplash.com/photo-1604881991720-f91add269bed?auto=format&fit=crop&w=1400&q=70“); –img-mocktails: url(„https://images.unsplash.com/photo-1544145945-f90425340c7e?auto=format&fit=crop&w=1400&q=70“); } /* ———- Base Reset ———- */ * { box-sizing: border-box; } html { scroll-behavior: smooth; } body{ margin: 0; font-family: var(–font); background: var(–bg); color: var(–text); line-height: 1.55; letter-spacing: 0.2px; } img { max-width: 100%; height: auto; display: block; } a { color: inherit; text-decoration: none; } strong { font-weight: 700; } /* Avoid layout shift when mobile nav opens */ body.nav-open { overflow: hidden; } /* ———- Layout ———- */ .container{ width: min(var(–container), calc(100% – 40px)); margin: 0 auto; } .section{ padding: 72px 0; } .section-alt{ background: radial-gradient(1200px 500px at 20% 0%, rgba(199,199,199,0.08), transparent 60%), radial-gradient(800px 400px at 80% 40%, rgba(255,255,255,0.05), transparent 60%), rgba(255,255,255,0.02); border-top: 1px solid var(–line); border-bottom: 1px solid var(–line); } /* ———- Typography ———- */ .eyebrow{ margin: 0 0 10px; font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(–silver); } .h2{ margin: 0 0 14px; font-size: 28px; line-height: 1.18; letter-spacing: -0.02em; font-weight: 700; } .h3{ margin: 0 0 8px; font-size: 16px; font-weight: 700; letter-spacing: -0.01em; } .lead{ margin: 0; color: var(–muted); font-size: 15px; max-width: 70ch; } .text{ margin: 0; color: var(–muted); font-size: 14px; } /* ———- Header / Nav ———- */ .header{ position: sticky; top: 0; z-index: 50; backdrop-filter: blur(10px); background: rgba(0,0,0,0.55); border-bottom: 1px solid rgba(255,255,255,0.08); } .nav{ display: flex; align-items: center; justify-content: space-between; padding: 14px 0; gap: 14px; } .brand{ display: inline-flex; align-items: center; gap: 10px; min-width: 140px; } .brand-mark{ width: 18px; height: 18px; border-radius: 6px; background: linear-gradient(135deg, rgba(255,255,255,0.18), rgba(199,199,199,0.08)); border: 1px solid rgba(255,255,255,0.14); box-shadow: 0 8px 20px rgba(0,0,0,0.35); } .brand-text{ font-weight: 700; letter-spacing: 0.1em; font-size: 13px; } /* Mobile nav toggle */ .nav-toggle{ appearance: none; border: 1px solid rgba(255,255,255,0.14); background: rgba(255,255,255,0.04); border-radius: 12px; padding: 10px 10px; display: inline-flex; flex-direction: column; gap: 6px; cursor: pointer; } .nav-toggle-bar{ width: 18px; height: 2px; background: rgba(255,255,255,0.78); border-radius: 999px; } /* Links container */ .nav-links{ position: fixed; inset: 60px 0 auto 0; background: rgba(0,0,0,0.92); border-bottom: 1px solid rgba(255,255,255,0.08); padding: 18px 20px 22px; display: grid; gap: 10px; transform: translateY(-12px); opacity: 0; pointer-events: none; transition: opacity 220ms ease, transform 220ms ease; } .nav-links.is-open{ opacity: 1; transform: translateY(0); pointer-events: auto; } .nav-link{ padding: 10px 12px; border-radius: 12px; color: rgba(255,255,255,0.84); background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); } .nav-cta{ margin-top: 6px; padding: 12px 14px; border-radius: 12px; border: 1px solid rgba(199,199,199,0.38); color: var(–silver); text-align: center; font-weight: 500; background: rgba(199,199,199,0.06); } /* Desktop nav */ @media (min-width: 920px){ .nav-toggle{ display: none; } .nav-links{ position: static; inset: auto; padding: 0; background: transparent; border: 0; display: flex; align-items: center; gap: 10px; transform: none; opacity: 1; pointer-events: auto; } .nav-link{ background: transparent; border: 0; color: rgba(255,255,255,0.78); padding: 10px 10px; } .nav-link:hover{ color: rgba(255,255,255,0.98); } .nav-cta{ margin-top: 0; padding: 10px 14px; background: rgba(199,199,199,0.05); } } /* ———- Buttons ———- */ .btn{ display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 12px 16px; border-radius: 999px; font-weight: 500; letter-spacing: 0.02em; border: 1px solid transparent; transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease; user-select: none; } .btn:active{ transform: translateY(1px); } .btn-primary{ color: #0b0b0b; background: linear-gradient(135deg, rgba(255,255,255,0.90), rgba(199,199,199,0.70)); border-color: rgba(255,255,255,0.12); box-shadow: 0 10px 30px rgba(0,0,0,0.45); } .btn-primary:hover{ transform: translateY(-1px); background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(199,199,199,0.76)); } .btn-outline{ color: var(–silver); background: rgba(255,255,255,0.03); border-color: rgba(199,199,199,0.45); } .btn-outline:hover{ transform: translateY(-1px); background: rgba(199,199,199,0.08); } /* ———- Hero ———- */ .hero{ position: relative; min-height: 92vh; display: grid; align-items: center; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,0.08); } .hero-bg{ position: absolute; inset: 0; background-image: var(–img-hero); background-size: cover; background-position: center; filter: saturate(0.9) contrast(1.05); transform: scale(1.03); } .hero-bg::after{ content: „“; position: absolute; inset: 0; background: radial-gradient(900px 520px at 50% 40%, rgba(0,0,0,0.32), rgba(0,0,0,0.75) 70%), linear-gradient(to bottom, rgba(0,0,0,0.65), rgba(0,0,0,0.88)); } .hero-content{ position: relative; z-index: 1; padding: 86px 0 72px; text-align: center; } .hero-logo{ display: inline-flex; align-items: center; justify-content: center; width: 74px; height: 74px; border-radius: 22px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.14); box-shadow: var(–shadow); margin: 0 auto 18px; } .hero-logo-mark{ width: 34px; height: 34px; border-radius: 12px; background: linear-gradient(135deg, rgba(255,255,255,0.22), rgba(199,199,199,0.08)); border: 1px solid rgba(255,255,255,0.14); } .hero-title{ margin: 0; font-size: 44px; line-height: 1.04; letter-spacing: 0.16em; font-weight: 700; } .hero-claim{ margin: 10px 0 22px; color: rgba(255,255,255,0.78); font-size: 14px; letter-spacing: 0.12em; text-transform: uppercase; } .hero-actions{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 10px; } .hero-meta{ margin-top: 26px; display: grid; gap: 8px; } .hero-meta-line{ margin: 0; color: rgba(255,255,255,0.74); font-size: 13px; } .dot{ display: inline-block; width: 6px; height: 6px; border-radius: 99px; background: rgba(199,199,199,0.85); margin-right: 10px; transform: translateY(-1px); } /* Scroll indicator */ .scroll-indicator{ position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); width: 44px; height: 44px; border-radius: 999px; border: 1px solid rgba(199,199,199,0.28); background: rgba(0,0,0,0.35); display: grid; place-items: center; } .scroll-indicator-line{ width: 2px; height: 14px; background: rgba(199,199,199,0.72); border-radius: 999px; animation: pulse 1.4s ease-in-out infinite; } @keyframes pulse{ 0%, 100% { transform: translateY(-2px); opacity: 0.55; } 50% { transform: translateY(3px); opacity: 1; } } @media (min-width: 920px){ .hero-title{ font-size: 64px; } .hero-claim{ font-size: 15px; } } /* ———- About ———- */ .section-head{ margin-bottom: 22px; } .about-grid{ display: grid; gap: 14px; margin-top: 18px; } .card{ background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.10); border-radius: var(–radius); padding: 18px; box-shadow: 0 10px 26px rgba(0,0,0,0.35); } @media (min-width: 920px){ .about-grid{ grid-template-columns: repeat(3, 1fr); gap: 16px; } } /* ———- Experience ———- */ .experience-grid{ display: grid; gap: 14px; margin-top: 18px; } .feature{ overflow: hidden; border-radius: var(–radius); border: 1px solid rgba(255,255,255,0.10); background: rgba(255,255,255,0.03); box-shadow: 0 12px 34px rgba(0,0,0,0.42); } .feature-media{ height: 180px; background-size: cover; background-position: center; filter: saturate(0.95) contrast(1.05); } .feature-media[data-img=“shisha“]{ background-image: var(–img-shisha); } .feature-media[data-img=“okey“]{ background-image: var(–img-okey); } .feature-media[data-img=“mocktails“]{ background-image: var(–img-mocktails); } .feature-body{ padding: 16px 16px 18px; display: grid; gap: 8px; } .icon{ width: 38px; height: 38px; border-radius: 14px; display: grid; place-items: center; background: rgba(199,199,199,0.08); border: 1px solid rgba(199,199,199,0.18); color: rgba(255,255,255,0.88); } .icon svg{ width: 20px; height: 20px; } @media (min-width: 920px){ .experience-grid{ grid-template-columns: repeat(3, 1fr); gap: 16px; } .feature-media{ height: 210px; } } /* ———- Menu Split ———- */ .menu-split{ display: grid; gap: 16px; align-items: stretch; } .menu-copy .actions{ margin-top: 16px; } .fineprint{ margin: 14px 0 0; font-size: 12px; color: rgba(255,255,255,0.56); } .menu-visual{ min-height: 260px; border-radius: var(–radius); border: 1px solid rgba(255,255,255,0.10); background-image: var(–img-lounge); background-size: cover; background-position: center; box-shadow: var(–shadow); position: relative; overflow: hidden; } .menu-visual::after{ content: „“; position: absolute; inset: 0; background: radial-gradient(600px 240px at 60% 30%, rgba(0,0,0,0.25), rgba(0,0,0,0.70)); } @media (min-width: 920px){ .menu-split{ grid-template-columns: 1.05fr 0.95fr; gap: 18px; } .menu-visual{ min-height: 320px; } } /* ———- Hours ———- */ .hours-card{ margin-top: 14px; border-radius: var(–radius); border: 1px solid rgba(255,255,255,0.10); background: rgba(255,255,255,0.03); padding: 16px; box-shadow: 0 12px 30px rgba(0,0,0,0.40); } .hours{ margin: 0; display: grid; gap: 12px; } .hours-row{ display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding-bottom: 12px; border-bottom: 1px solid rgba(255,255,255,0.08); } .hours-row:last-child{ border-bottom: 0; padding-bottom: 0; } dt{ color: rgba(255,255,255,0.84); font-weight: 500; } dd{ margin: 0; color: var(–silver); font-weight: 700; letter-spacing: 0.02em; } /* ———- Reservation Banner ———- */ .reservation-banner{ border-radius: calc(var(–radius) + 4px); border: 1px solid rgba(199,199,199,0.20); background: radial-gradient(900px 300px at 20% 0%, rgba(199,199,199,0.10), transparent 60%), rgba(255,255,255,0.03); padding: 18px; display: grid; gap: 14px; box-shadow: var(–shadow); } .reservation-banner .actions{ display: flex; align-items: center; } @media (min-width: 920px){ .reservation-banner{ grid-template-columns: 1fr auto; align-items: center; padding: 22px; } } /* ———- Contact ———- */ .contact-grid{ display: grid; gap: 14px; margin-top: 14px; } .contact-card{ border-radius: var(–radius); border: 1px solid rgba(255,255,255,0.10); background: rgba(255,255,255,0.03); padding: 16px; box-shadow: 0 10px 26px rgba(0,0,0,0.35); } .link{ color: rgba(255,255,255,0.90); border-bottom: 1px solid rgba(199,199,199,0.35); padding-bottom: 2px; } .link:hover{ color: #ffffff; border-bottom-color: rgba(255,255,255,0.60); } @media (min-width: 920px){ .contact-grid{ grid-template-columns: repeat(3, 1fr); gap: 16px; } } /* ———- Footer ———- */ .footer{ margin-top: 26px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.08); text-align: center; } .footer-line{ margin: 0; color: rgba(255,255,255,0.80); font-size: 13px; } .footer-brand{ font-weight: 700; letter-spacing: 0.12em; } .footer-sep{ margin: 0 10px; color: rgba(199,199,199,0.70); } .footer-sub{ margin: 8px 0 0; color: rgba(255,255,255,0.55); font-size: 12px; } /* ———- Reveal Animation ———- */ .reveal{ opacity: 0; transform: translateY(14px); transition: opacity 520ms ease, transform 520ms ease; will-change: opacity, transform; } .reveal.is-visible{ opacity: 1; transform: translateY(0); } /* Respect reduced motion */ @media (prefers-reduced-motion: reduce){ html{ scroll-behavior: auto; } .reveal{ opacity: 1; transform: none; transition: none; } .scroll-indicator-line{ animation: none; } }