/* Shared visual scale for the portfolio introduction and the coin page. */
:root {
  --coin-content-width: min(1296px, calc(100% - 44px));
  --coin-title-size: clamp(36px, 4vw, 58px);
  --coin-copy-size: 18px;
  --coin-label-size: 12px;
  --coin-column-gap: 56px;
}
.coin-intro-grid,
body.coin-page main > section.wrap {width:var(--coin-content-width);max-width:1296px;margin-inline:auto;padding-inline:0}
.coin-intro-grid,
body.coin-page .hero > .section-content {grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--coin-column-gap)}
.coin-intro-copy h2,
body.coin-page .hero h1 {font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:var(--coin-title-size);font-weight:950;line-height:1.1;letter-spacing:0;margin:18px 0 26px}
.coin-intro-copy > p:not(.coin-intro-label),
body.coin-page .lead,
body.coin-page .intro,
body.coin-page .token-explainer p,
body.coin-page .project-grid p,
body.coin-page #uniswap .section-content > p:not(.eyebrow),
body.coin-page .market-panel p,
body.coin-page #contrato .panel > p:not(.eyebrow):not(#copy-status) {font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono',monospace;font-size:var(--coin-copy-size);line-height:1.7;color:var(--muted)}
.coin-intro-label,
body.coin-page .eyebrow {font-size:var(--coin-label-size);font-weight:700;letter-spacing:2px;line-height:1.5;margin:0 0 22px}
body.coin-page .hero h1 span {font-size:22px;line-height:1.5;letter-spacing:0;margin-top:18px;font-weight:500}
body.coin-page .section-content {padding-right:0}
body.coin-page .coin {width:100%;max-width:none;margin:0}
.coin-intro-visual img,
body.coin-page .coin img {width:100%;height:auto;display:block;clip-path:circle(44.5% at 50% 50%)}
body.coin-page .hero .button {min-height:52px;padding-inline:28px;font-size:15px;font-weight:950;line-height:1.2}
body.coin-page .metrics span {font-size:12px;line-height:1.5}
body.coin-page .token-supply {font-size:18px;line-height:1.7}
@media(max-width:780px){
 .coin-intro-grid,body.coin-page .hero>.section-content{grid-template-columns:minmax(0,1fr);gap:20px}
 .coin-intro-visual,body.coin-page .coin{max-width:320px;width:100%;margin-inline:auto}
}
@media(max-width:460px){
 :root{--coin-content-width:calc(100% - 30px)}
 body.coin-page .brand{gap:8px}
 body.coin-page .brand strong{font-size:16px}
}
body.coin-page .button,body.coin-page button:not(.nav-toggle){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono',monospace}
/* Keep the opening sections at the same scale and the header geometry stable. */
body.coin-page{--header-height:76px}
body.coin-page .hero{overflow:visible!important}
body.coin-page .hero>.section-content{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;overflow:visible!important;max-height:none!important;padding-right:0!important;scrollbar-width:none!important}
body.coin-page .hero>.section-content::-webkit-scrollbar{display:none!important}
body.coin-page .hero h1{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(36px,4vw,58px);font-weight:950;line-height:1.1;letter-spacing:0;margin:18px 0 26px}
body.coin-page .hero .lead{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono',monospace;font-size:18px;line-height:1.7;color:var(--muted);margin:0;max-width:700px}
body.coin-page .hero .eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--red);line-height:1.5;margin:0 0 22px}
body.coin-page .hero .button{min-height:52px;padding:12px 28px;font-size:15px;line-height:1.2}
body.coin-page .coin{width:100%;max-width:none;margin:0;cursor:default!important}
body.coin-page .coin img{width:100%;max-width:100%;height:auto;margin:0;clip-path:circle(44.5% at 50% 50%);filter:none!important;-webkit-filter:none!important;cursor:default!important}
@media(max-width:780px){
 body.coin-page{--header-height:70px}
 body.coin-page .hero>.section-content{grid-template-columns:minmax(0,1fr);gap:20px}
 body.coin-page .hero h1{font-size:38px}
 body.coin-page .hero .eyebrow{font-size:12px}
 body.coin-page .coin{width:min(320px,100%);margin-inline:auto}
}
@media(max-width:460px){body.coin-page .hero .lead{font-size:18px}}
@media(max-width:780px){body.coin-page .hero .lead{font-size:18px}}
@media(min-width:461px) and (max-width:780px){body.coin-page .hero h1{font-size:clamp(46px,5.25vw,76px)}body.coin-page h2{font-size:clamp(34px,4vw,56px)}}
/* Align navigation labels and use the same active, hover and focus indicator. */
.site-header>.nav a,body.coin-page .header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:20px;line-height:20px;white-space:nowrap;text-decoration:none}
body.coin-page .header nav a::after{position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--red);content:'';opacity:0;transform:scaleX(.45);transform-origin:center;transition:opacity 180ms ease,transform 180ms ease}
body.coin-page .header nav a:hover,body.coin-page .header nav a:focus-visible,body.coin-page .header nav a.is-active{color:var(--red)}
body.coin-page .header nav a:hover::after,body.coin-page .header nav a:focus-visible::after,body.coin-page .header nav a.is-active::after{opacity:1;transform:scaleX(1)}
body.coin-page .header nav a:focus-visible{outline:2px solid var(--red);outline-offset:6px}
.button,body.coin-page .button,body.coin-page button:not(.nav-toggle){display:inline-flex;align-items:center;justify-content:center;text-align:center;vertical-align:middle;line-height:1.2;box-sizing:border-box}
body.coin-page .actions{align-items:center}
@media(prefers-reduced-motion:reduce){body.coin-page .header nav a::after{transition:none}}
/* One entrance flip, with the layout footprint kept fixed. */
body.coin-page .coin.coin-entering{animation:coin-entrance-flip 1100ms cubic-bezier(.22,.7,.2,1) both;transform-origin:center;will-change:transform}
@keyframes coin-entrance-flip{from{transform:perspective(1200px) rotateY(-180deg)}to{transform:perspective(1200px) rotateY(0deg)}}
@media(prefers-reduced-motion:reduce){body.coin-page .coin.coin-entering{animation:none;transform:none;will-change:auto}}
body.coin-page .brand img{clip-path:circle(44.5% at 50% 50%)!important;filter:drop-shadow(0 0 18px rgba(239,32,32,.42))}
/* Mobile sections flow with the content instead of trapping it in a desktop frame. */
@media(max-width:780px){
 body.coin-page main>section{height:auto;min-height:calc(100svh - 70px);padding-top:24px;padding-bottom:24px;overflow:visible}
 body.coin-page .section-content{max-height:none;overflow:visible;min-width:0}
 body.coin-page .hero>.section-content{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 body.coin-page .hero>.section-content>div:first-child{display:contents}
 body.coin-page .hero .eyebrow{margin:0;font-size:12px}
 body.coin-page .hero h1{margin:0;font-size:38px;line-height:1.1}
 body.coin-page .hero h1 span{font-size:18px;line-height:1.4;margin-top:8px}
 body.coin-page .hero .lead{margin:0;font-size:18px;line-height:1.5}
 body.coin-page .hero .coin{order:1;width:min(52vw,210px);align-self:center;margin:0}
 body.coin-page .hero .actions{order:2;display:grid;grid-template-columns:1fr;gap:10px;margin-top:0}
 body.coin-page .hero .button{width:100%;min-height:48px;padding:12px 18px}
 body.coin-page .actions{gap:12px;margin-top:20px}
 body.coin-page .actions>a{max-width:100%;overflow-wrap:anywhere}
 body.coin-page .project-grid,body.coin-page .token-explainer{grid-template-columns:minmax(0,1fr);gap:16px}
 body.coin-page .metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}
 body.coin-page .metrics>div{min-width:0;padding:16px}
 body.coin-page .panel{padding:20px;min-width:0}
 body.coin-page .contract{flex-direction:column;align-items:stretch;padding:16px;gap:16px}
 body.coin-page code{overflow-wrap:anywhere}
 body.coin-page .button,body.coin-page button:not(.nav-toggle){max-width:100%;padding-inline:18px;min-height:48px}
 body.coin-page footer{padding-inline:15px;gap:16px}
}
@media(max-width:380px){body.coin-page .hero h1{font-size:34px}body.coin-page .hero .lead{font-size:16px}body.coin-page .hero .coin{width:min(46vw,160px)}}
@media(max-width:780px) and (max-height:700px){body.coin-page .hero .coin{width:min(44vw,150px)}body.coin-page .hero>.section-content{gap:10px}}
@media(max-width:780px){
 body:not(.coin-page) main>section{height:auto;min-height:calc(100svh - 70px);scroll-margin-top:70px}
 body:not(.coin-page) .hero-grid{min-height:0;padding-top:28px;padding-bottom:28px;gap:24px}
 body:not(.coin-page) .hero-copy{min-width:0}
 body:not(.coin-page) .hero-actions{gap:10px;margin-top:24px}
 body:not(.coin-page) .hero-actions .button{width:100%;min-height:48px;padding:12px 18px}
 body:not(.coin-page) .hero-art{min-height:0}
 body:not(.coin-page) .hero-art img{max-height:330px;max-width:100%;height:auto}
 body:not(.coin-page) .coin-intro-grid{gap:24px}
 body:not(.coin-page) .coin-intro-copy .about-actions{display:grid;grid-template-columns:1fr;gap:12px}
 body:not(.coin-page) .coin-intro-copy .button{margin-top:0;min-height:48px;padding:12px 18px}
 body:not(.coin-page) .coin-intro-visual{width:min(60vw,260px)}
}
