@font-face{font-family:ShipleyRegular;src:local("ShipleyRegular");font-display:swap}
@font-face{font-family:ShipleyItalic;src:local("ShipleyItalic");font-style:italic;font-display:swap}
@font-face{font-family:SabonNext;src:local("SabonNext LT");font-display:swap}

:root{
  --color-brand:#111111;
  --color-ink:#000000;
  --color-stone:#625E54;
  --color-mist:#A0A095;
  --color-charcoal:#464340;
  --font-display:ShipleyRegular, SabonNext, serif;
  --font-italic:ShipleyItalic, SabonNext, serif;
  --font-body:SabonNext, ShipleyRegular, serif;
  --radius-none:0;
  --radius-round:50%;
  --viewport-height:100vh;
}
@supports (height:100dvh){:root{--viewport-height:100dvh}}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-snap-type:y proximity}
body{margin:0;background:var(--color-stone);color:var(--color-ink);font-family:var(--font-body);font-size:16px;line-height:1.2}
.custom-cursor{position:fixed;top:0;left:0;z-index:9999;width:28px;height:28px;border:1px solid var(--color-brand);border-radius:50%;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.7);transition:opacity .2s,transform .2s,background .2s;width:28px;height:28px}.custom-cursor span{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:50%;background:#c88a43;transform:translate(-50%,-50%)}.custom-cursor.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.custom-cursor.is-hovering{transform:translate(-50%,-50%) scale(1.55);background:rgba(200,138,67,.12)}
@media(pointer:fine){body,a,button{cursor:none}}@media(pointer:coarse){.custom-cursor{display:none}}
button,a{font:inherit;color:inherit}
a{text-decoration:none}
button{border:0;background:none;cursor:pointer}
.site-shell{min-height:100vh;overflow:hidden}
.age-gate{position:relative;min-height:var(--viewport-height);background:#f8f3e9;display:grid;grid-template-rows:auto 1fr auto;padding:clamp(34px,7vw,92px) clamp(24px,5vw,64px) 24px;isolation:isolate;transition:opacity .8s ease,transform .8s ease}
.paper-texture,.hero__texture{position:absolute;inset:0;pointer-events:none;opacity:.32;background:radial-gradient(ellipse at 18% 36%,transparent 0 18%,var(--color-mist) 18.3% 18.8%,transparent 19.1%),radial-gradient(ellipse at 75% 54%,transparent 0 21%,var(--color-mist) 21.2% 21.7%,transparent 22%),repeating-linear-gradient(162deg,transparent 0 88px,rgba(160,160,149,.26) 89px 91px,transparent 92px 165px),linear-gradient(100deg,transparent 0 24%,rgba(160,160,149,.27) 24.3% 47%,transparent 47.4% 100%);z-index:-1}
.paper-texture{opacity:.72;background-image:linear-gradient(110deg,rgba(248,243,233,.12),rgba(248,243,233,.28)),url("background.png");background-size:cover,cover;background-position:center,center;background-repeat:no-repeat;filter:contrast(1.04) saturate(.72);animation:paperReveal .9s ease both,paperIntro 1.8s .15s cubic-bezier(.22,.7,.2,1) both,paperDrift 30s 2s ease-in-out infinite alternate;transform:scale(1.03)}
.masthead{display:flex;align-items:center;flex-direction:column;gap:7px;text-align:center;color:var(--color-charcoal)}
.masthead-kicker{text-transform:uppercase;letter-spacing:.42em;font-size:17px;color:var(--color-mist)}
.wordmark{font-family:var(--font-display);font-size:clamp(27px,3vw,42px);line-height:1;text-transform:uppercase;letter-spacing:.02em}
.front-logo{display:block;width:126px;height:126px;border-radius:50%;background:url("onetap-logo.png") center/210% no-repeat;filter:saturate(.78);animation:logoFloat 7s 1.8s ease-in-out infinite;will-change:transform}
.masthead-signature{font-size:20px;letter-spacing:.22em;color:var(--color-ink);text-transform:none}
.masthead-signature i{font-family:var(--font-italic);font-size:16px;color:var(--color-brand);letter-spacing:0}
.age-gate__content .masthead{transform:scale(1.4)}
.age-gate__content .masthead{opacity:0;animation:appear .8s ease .95s forwards}
.age-gate__content{align-self:center;text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(68px,10vh,116px);padding:6vh 0}
.age-gate__content p{max-width:920px;margin:0;text-transform:uppercase;letter-spacing:.35em;font-size:clamp(18px,2vw,25px);line-height:1.55}.age-gate__content p strong{font-family:var(--font-display);font-weight:400;font-size:clamp(34px,5vw,64px);letter-spacing:.04em}.coming-label{display:inline-block;font-family:var(--font-italic);font-size:clamp(70px,13vw,180px);font-weight:400;line-height:.72;letter-spacing:-.04em;text-transform:none;color:var(--color-brand);margin-bottom:18px}
.enter-button{display:flex;flex-direction:column;align-items:center;gap:18px;color:var(--color-brand);font-size:21px;letter-spacing:.42em;padding-left:.42em;transition:transform .25s ease}
.enter-button{opacity:0;animation:appear .8s ease 1.85s forwards}
.enter-button:hover{transform:translateY(5px)}
.enter-line{width:1px;height:28px;background:var(--color-brand);position:relative;animation:enterBounce 1.7s ease-in-out infinite}.enter-line:after{content:"";position:absolute;bottom:0;left:-3px;width:7px;height:1px;background:var(--color-brand)}
.site-footer{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:36px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.site-footer p{margin:0;text-transform:none;letter-spacing:0;font-size:12px;justify-self:center}.site-footer>a{white-space:nowrap}.languages{display:flex;gap:10px}.languages a{color:var(--color-stone)}.languages .active{color:var(--color-brand);border-bottom:1px solid var(--color-brand)}.cookie-button{padding:15px 32px;color:var(--color-brand);border:1px solid var(--color-brand);text-transform:uppercase;font-size:11px;letter-spacing:.1em;transition:background .25s,color .25s}.cookie-button:hover{background:var(--color-brand);color:#f8f3e9}
.network-label{justify-self:end;color:var(--color-stone);font-size:11px;letter-spacing:.12em;white-space:nowrap}
.home{display:none;background:#f8f3e9;min-height:100vh;color:var(--color-charcoal)}.home-nav{display:flex;align-items:center;justify-content:space-between;padding:20px clamp(24px,5vw,68px);border-bottom:1px solid rgba(98,94,84,.35);font-size:13px;text-transform:uppercase;letter-spacing:.12em}.nav-wordmark{display:block;width:52px;height:52px;border-radius:50%;background:url("onetap-logo.png") center/210% no-repeat;filter:saturate(.78);transition:transform .25s ease}.nav-wordmark:hover{transform:translateY(-3px)}.home-nav__links{display:flex;gap:38px}.menu-button{display:flex;flex-direction:column;gap:6px}.menu-button span{width:28px;height:1px;background:var(--color-charcoal)}
.hero{min-height:calc(var(--viewport-height) - 85px);position:relative;display:flex;flex-direction:column;justify-content:center;padding:12vw clamp(24px,12vw,170px);overflow:hidden;background:linear-gradient(115deg,#ece4d1,#f8f3e9 62%)}.hero__texture{opacity:.2}.hero .eyebrow,.intro .eyebrow{position:relative;color:var(--color-brand);text-transform:uppercase;letter-spacing:.25em;font-size:12px}.hero-mark{position:absolute;right:12vw;top:24%;width:180px;height:180px;border-radius:50%;background:url("onetap-logo.png") center/210% no-repeat;opacity:.78;filter:saturate(.78);animation:logoFloat 7s ease-in-out infinite}.hero h1{position:relative;font-family:var(--font-display);font-weight:400;font-size:clamp(66px,10vw,150px);line-height:.9;letter-spacing:-.03em;margin:24px 0 48px}.hero h1 em,.intro h2 em{font-family:var(--font-italic);color:var(--color-brand);font-weight:400}.hero-actions{position:relative;display:flex;align-items:center;gap:32px}.buy-button{display:inline-flex;align-items:center;gap:28px;padding:14px 22px;border:1px solid var(--color-brand);text-transform:uppercase;letter-spacing:.15em;font-size:12px;color:var(--color-brand);transition:background .25s,color .25s,transform .25s}.buy-button:hover{background:var(--color-brand);color:#f8f3e9;transform:translateY(-3px)}.buy-button span{font-size:17px}.text-link{position:relative;text-transform:uppercase;letter-spacing:.18em;font-size:12px;border-bottom:1px solid var(--color-brand);padding-bottom:10px;width:max-content;color:var(--color-brand)}.text-link span{margin-left:32px;font-size:17px}.intro{padding:clamp(92px,13vw,190px) clamp(24px,19vw,280px);display:grid;grid-template-columns:1fr 2fr;gap:30px}.intro h2{font-family:var(--font-display);font-size:clamp(46px,7vw,100px);font-weight:400;line-height:.92;margin:0}.intro-copy{max-width:370px;align-self:end;font-size:21px;line-height:1.45;color:var(--color-stone)}.home-footer{display:flex;justify-content:space-between;padding:27px clamp(24px,5vw,68px);border-top:1px solid rgba(98,94,84,.35);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.home-footer a{color:var(--color-brand)}
.ca-section{padding:clamp(80px,12vw,170px) clamp(24px,12vw,170px);border-top:1px solid rgba(98,94,84,.35);background:#f1eadb}.ca-line{display:flex;align-items:baseline;gap:20px;margin:28px 0 0;font-family:var(--font-display);font-size:clamp(40px,7vw,92px);letter-spacing:.02em}.ca-line span{font-family:var(--font-body);font-size:12px;text-transform:uppercase;letter-spacing:.25em;color:var(--color-brand)}.ca-line strong{font-weight:400;color:var(--color-charcoal)}
.is-entered .age-gate{display:none}.is-entered .home{display:block;animation:reveal .8s ease both}.age-gate[aria-hidden="true"]{display:none}@keyframes reveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes paperDrift{from{background-position:center center,48% 52%;transform:scale(1.03)}to{background-position:center center,52% 48%;transform:scale(1.07)}}
@keyframes paperIntro{0%{background-position:center center,58% 50%;transform:scale(1.12)}100%{background-position:center center,48% 52%;transform:scale(1.03)}}
@keyframes logoFloat{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(0,-12px,0) rotate(2deg)}}
@keyframes enterBounce{0%,100%{transform:translateY(0);opacity:.72}50%{transform:translateY(8px);opacity:1}}
@keyframes paperReveal{from{opacity:0}to{opacity:.72}}
@keyframes appear{from{opacity:0}to{opacity:1}}
@media(max-width:760px){.age-gate{padding-top:48px}.masthead-kicker{font-size:13px}.masthead-signature{font-size:15px;letter-spacing:.16em}.age-gate__content .masthead{transform:scale(1.25)}.age-gate__content{gap:72px}.age-gate__content p{font-size:15px;letter-spacing:.22em;line-height:1.8}.desktop-only{display:none}.site-footer{grid-template-columns:1fr auto;gap:18px}.site-footer p{grid-column:1/-1;grid-row:2;justify-self:start;max-width:280px}.site-footer>a{grid-column:1/-1;grid-row:3;font-size:10px}.network-label{grid-column:1/-1;grid-row:4;justify-self:end;font-size:9px}.cookie-button{padding:12px 18px}.home-nav__links{display:none}.hero{padding:24vw 24px}.hero-mark{right:8vw;top:14%;width:120px;height:120px;opacity:.5}.hero h1{font-size:clamp(58px,17vw,100px);margin-top:34px}.hero-actions{gap:24px;flex-wrap:wrap}.buy-button{padding:12px 16px}.intro{display:block;padding:100px 24px}.intro .eyebrow{margin-bottom:34px}.intro-copy{margin-top:52px;font-size:18px}.ca-section{padding:90px 24px}.ca-line{display:block;font-size:44px}.ca-line span{display:block;margin-bottom:18px}.home-footer{gap:14px;flex-wrap:wrap}.home-footer span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){.paper-texture{animation:none}}

/* Intro layout refinements */
.intro h2{font-size:clamp(42px,5.5vw,82px);line-height:1;white-space:nowrap}
.intro-copy{max-width:420px;min-height:7.2em;font-size:clamp(18px,1.5vw,21px);line-height:1.5;text-wrap:balance}
@media(max-width:760px){.intro h2{white-space:normal;font-size:clamp(42px,13vw,68px)}.intro-copy{min-height:0;font-size:18px}}

/* How it works content */
.intro{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:clamp(60px,10vw,160px)}
.intro-heading{grid-column:1/-1;margin-bottom:clamp(8px,2vw,28px)}.intro-heading .eyebrow{margin:0 0 18px}.intro-heading h2{margin:0;font-family:var(--font-display);font-size:clamp(50px,8vw,116px);font-weight:400;line-height:.82;letter-spacing:-.04em;color:var(--color-ink)}
.intro-copy{max-width:580px;min-height:0;align-self:start;font-size:clamp(17px,1.35vw,20px);line-height:1.55;text-wrap:pretty}
.intro-copy p{margin:0 0 24px}.intro-copy p:last-child{margin-bottom:0}.intro-copy strong{font-family:var(--font-display);font-weight:400;color:var(--color-ink)}
.steps{align-self:start;border-top:1px solid rgba(98,94,84,.5)}.step{padding:22px 0 26px;border-bottom:1px solid rgba(98,94,84,.5)}.step h3{margin:0 0 10px;font-family:var(--font-display);font-size:clamp(18px,1.5vw,23px);font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--color-brand)}.step p{margin:0;color:var(--color-stone);font-size:17px;line-height:1.45}
.rwa-assets{grid-column:1/-1;margin-top:clamp(70px,9vw,130px);padding:24px 0;border-top:1px solid rgba(98,94,84,.5);border-bottom:1px solid rgba(98,94,84,.5);display:flex;align-items:center;gap:clamp(28px,5vw,80px);overflow:hidden}.rwa-assets__label{margin:0;flex:0 0 auto;color:var(--color-brand);font-size:11px;text-transform:uppercase;letter-spacing:.2em}.rwa-assets__list{display:flex;align-items:center;justify-content:space-between;gap:clamp(24px,4vw,64px);min-width:0;width:100%;white-space:nowrap}.asset-logo{display:inline-flex;align-items:center;gap:9px;color:var(--color-stone);font-family:var(--font-body);font-size:clamp(14px,1.25vw,18px);font-weight:600;letter-spacing:.08em}.asset-logo img{width:27px;height:27px;object-fit:contain;border-radius:50%;mix-blend-mode:multiply}.asset-logo--nvidia img{border-radius:4px}.asset-logo--gamestop img{border-radius:4px}.asset-logo--tesla img{border-radius:4px}.asset-logo b{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid currentColor;border-radius:50%;font-size:11px;font-weight:600;letter-spacing:0}.asset-logo--amazon b{font-family:Georgia,serif;font-size:22px;border:0}
@media(max-width:760px){.intro{display:block;padding:100px 24px}.intro-heading h2{font-size:clamp(52px,16vw,95px)}.intro-copy{margin-top:48px;font-size:18px}.steps{margin-top:72px}.step h3{font-size:18px}}
@media(max-width:760px){.rwa-assets{display:block;margin-top:84px}.rwa-assets__label{margin-bottom:24px}.rwa-assets__list{width:max-content;gap:30px}}
.ca-section .buy-button{margin-top:28px}

@media(max-width:760px){
  body{overflow-x:hidden}
  .home-nav{padding:16px 24px}
  .hero{width:100%;min-height:calc(var(--viewport-height) - 78px);justify-content:flex-start;overflow:hidden;padding:clamp(120px,18vh,180px) 24px 96px}
  .hero-heading{width:100%;max-width:100%}
  .hero-heading{gap:24px}
  .hero h1{max-width:100%;font-size:clamp(54px,15vw,76px);line-height:.9}
  .hero-heading .hero-mark{margin-top:0}
  .hero-actions{width:100%;align-items:flex-start}
  .buy-button{max-width:100%}
  .ca-section{overflow:hidden}
  .ca-line{width:100%;max-width:100%}
  .home-footer{font-size:10px;line-height:1.4}
}

/* Gentle section-by-section scrolling */
.home > .hero,.home > .intro,.home > .ca-section{scroll-snap-align:start;scroll-snap-stop:normal}

/* Rounded app-icon outline around the main homepage logo */
.hero-mark{border:1px solid rgba(70,67,64,.5);border-radius:24%;box-shadow:0 0 0 8px rgba(70,67,64,.08),0 12px 24px rgba(70,67,64,.12)}
.text-link{display:inline-flex;align-items:center;gap:28px;padding:14px 22px;border:1px solid var(--color-brand);border-bottom:1px solid var(--color-brand);width:auto}
.text-link span{margin-left:0}
.ca-section .buy-button{margin-top:28px}
.ca-line{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px;padding:18px 22px;border:1px solid var(--color-mist);background:rgba(248,243,233,.72);font-family:var(--font-body);font-size:clamp(13px,1.35vw,18px);line-height:1.45}.ca-line span{font-size:inherit;letter-spacing:.16em;flex:0 0 auto}.ca-line strong{font-size:inherit;line-height:inherit;font-weight:400;letter-spacing:.035em;word-break:break-all;color:var(--color-charcoal)}
@media(max-width:760px){.ca-line{display:block;padding:16px 18px}.ca-line span{display:block;margin-bottom:10px}.ca-line strong{font-size:13px}}

/* Hero title and logo alignment */
.hero-heading{position:relative;z-index:1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:clamp(28px,7vw,120px)}
.hero-heading h1{margin:24px 0 48px}
.hero-heading .hero-mark{position:relative;top:auto;right:auto;flex:0 0 clamp(130px,15vw,210px);width:clamp(130px,15vw,210px);height:clamp(130px,15vw,210px);margin-top:-4vw}
@media(max-width:760px){.hero-heading{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.hero-heading .hero-mark{align-self:flex-end;flex-basis:120px;width:120px;height:120px;margin-top:-16px;margin-right:4vw}.hero-heading h1{margin-bottom:28px}}
