/* Denaro Pay — Design System v2 */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Serif:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Inter+Tight:wght@300;400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --ink:#0a0a0a;
  --paper:#f4f1ea;
  --paper-2:#ebe8e0;
  --paper-3:#e0dcd2;
  --fg-2:#55524b;
  --fg-3:#8a8780;
  --fg-4:#b8b5ad;
  --line:rgba(10,10,10,0.14);
  --line-soft:rgba(10,10,10,0.08);
  --line-d:rgba(244,241,234,0.12);
  --line-d-soft:rgba(244,241,234,0.06);
  --accent:#1e3a8a;
  --accent-2:#6b9dff;
  --sans:'Inter Tight',sans-serif;
  --mono:'IBM Plex Mono',monospace;
  --serif:'IBM Plex Serif',serif;
}

html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none}
img{display:block;max-width:100%}

.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;max-width:1480px;margin:0 auto;padding:0 48px}

.serif{font-family:var(--serif);font-weight:400}
.mono{font-family:var(--mono);font-feature-settings:"tnum","ss01";letter-spacing:-0.01em}
.caps{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:0.16em;color:var(--fg-2)}
.tnum{font-variant-numeric:tabular-nums}
.chap{font-family:var(--serif);font-style:italic;font-weight:300;font-size:13px;color:var(--fg-3)}

.hairline{height:1px;background:var(--line)}
.hairline-d{height:1px;background:var(--line-d)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 22px;border-radius:999px;font-size:13px;font-weight:500;font-family:var(--sans);cursor:pointer;transition:opacity .2s,transform .15s;letter-spacing:0.01em;white-space:nowrap;border:none}
.btn-lg{height:56px;padding:0 32px;font-size:14px}
.btn-primary{background:var(--paper);color:var(--ink)}
.btn-ghost{background:transparent;color:var(--paper);border:1px solid var(--line-d)}
.btn-ghost-light{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn:hover{opacity:.78}
.btn .arrow{display:inline-block;transition:transform .2s}
.btn:hover .arrow{transform:translateX(5px)}

/* Live dot */
.live-dot{display:inline-block;width:6px;height:6px;background:var(--accent-2);border-radius:50%;animation:dp-pulse 2s infinite;flex-shrink:0}
@keyframes dp-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.4)}}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:rgba(10,10,10,0.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line-d);color:var(--paper)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;max-width:1480px;margin:0 auto;padding:0 48px;gap:24px}
.nav-brand{display:flex;flex-direction:column;gap:2px;flex-shrink:0;text-decoration:none}
.nav-brand-name{font-family:var(--serif);font-style:italic;font-size:22px;font-weight:400;line-height:1;color:var(--paper)}
.nav-brand-name .dot{color:var(--accent-2)}
.nav-brand-est{font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:0.18em;color:var(--fg-4)}
.nav-links{display:flex;align-items:center;gap:2px;flex:1;justify-content:center}
.nav-links a{font-size:13px;font-weight:400;color:rgba(244,241,234,0.65);padding:6px 13px;border-radius:999px;transition:color .15s,background .15s}
.nav-links a:hover{color:var(--paper);background:rgba(244,241,234,0.09)}
.nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-hamburger{display:none;flex-direction:column;gap:5px;padding:8px;cursor:pointer;background:none;border:none}
.nav-hamburger span{display:block;width:22px;height:1.5px;background:var(--paper);transition:all .2s;border-radius:2px}

@media(max-width:900px){
  .nav-inner{padding:0 24px}
  .nav-links{display:none}
  .nav-hamburger{display:flex}
  .nav-right .btn{display:none}
}

.nav-overlay{display:none;position:fixed;inset:0;background:rgba(10,10,10,0.97);z-index:200;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.nav-overlay.open{display:flex}
.nav-overlay a{font-family:var(--serif);font-size:28px;font-weight:300;color:rgba(244,241,234,0.75);transition:color .15s}
.nav-overlay a:hover{color:var(--paper)}
.nav-overlay-close{position:absolute;top:24px;right:24px;font-family:var(--mono);font-size:12px;color:var(--fg-4);cursor:pointer;letter-spacing:0.1em;padding:8px;background:none;border:none;color:var(--paper)}

/* FOOTER */
.footer{background:var(--ink);color:var(--paper)}
.footer-top{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;max-width:1480px;margin:0 auto;padding:72px 48px 48px;border-bottom:1px solid var(--line-d)}
.footer-brand-col{grid-column:span 3}
.footer-brand-name{font-family:var(--serif);font-style:italic;font-size:48px;font-weight:300;line-height:1;color:var(--paper)}
.footer-brand-name .dot{color:var(--accent-2)}
.footer-brand-copy{font-family:var(--mono);font-size:10px;color:var(--fg-4);margin-top:20px;text-transform:uppercase;letter-spacing:0.12em;line-height:1.8}
.footer-links-grid{grid-column:span 9;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.footer-col-title{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:0.18em;color:var(--fg-4);margin-bottom:18px}
.footer-col a{display:block;font-size:13px;color:rgba(244,241,234,0.55);margin-bottom:9px;transition:color .15s}
.footer-col a:hover{color:var(--paper)}
.footer-col .tag-soon{font-size:9px;font-family:var(--mono);color:var(--fg-4);margin-left:5px;text-transform:uppercase;letter-spacing:0.1em;vertical-align:middle}
.footer-legal{max-width:1480px;margin:0 auto;padding:28px 48px 20px;border-bottom:1px solid var(--line-d)}
.footer-legal p{font-family:var(--mono);font-size:10px;line-height:1.9;color:var(--fg-4);letter-spacing:0.02em}
.footer-bar{max-width:1480px;margin:0 auto;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.footer-bar-left{font-family:var(--mono);font-size:10px;color:var(--fg-4);letter-spacing:0.06em}
.footer-bar-right{font-family:var(--mono);font-size:10px;color:var(--fg-4);letter-spacing:0.04em}

@media(max-width:900px){
  .footer-top{grid-template-columns:1fr;padding:48px 24px 32px}
  .footer-brand-col{grid-column:span 1}
  .footer-links-grid{grid-column:span 1;grid-template-columns:repeat(2,1fr)}
  .footer-legal{padding:20px 24px}
  .footer-bar{padding:14px 24px;flex-direction:column;gap:6px;text-align:center}
}

@media(max-width:900px){
  .grid{grid-template-columns:repeat(6,1fr);gap:16px;padding:0 24px}
}
