:root{
      --bg:#07080A;
      --ink:#EAF2FF;
      --muted:#9FB3D3;
      --brand:#6CC5FF;
      --brand-2:#A58AFF;
      --accent:#FFD166;
      --glass:rgba(255,255,255,.06);
      --stroke:rgba(255,255,255,.12);
      --shadow:0 10px 30px rgba(0,0,0,.35), inset 0 0 40px rgba(255,255,255,.04);
      --radius:20px;
      --radius-lg:28px;
      --maxw:1200px;
}

    body {
      margin: 0;
      font-family: 'Inter', sans-serif;
      background: linear-gradient(to bottom, #0b0f1e, #151b30);
      color: #e0e0e0;
    }

    .bg-white {
        background-color: #151b30 !important;
    }
    
    h1, h2 {
      font-family: 'Cinzel Decorative', serif;
      color: #ffd700;
      font-weight: unset !important;
    }
    h1.hero-section-title{
      font-size: 3.5rem;
    }

    .new-section h2{
      font-size: calc(1.325rem + .9vw);
    }
    
    .new-section p.lead {
      max-width: 600px;
      /***margin: 0 auto 2rem;****/
      font-size: 1.2rem;
      color: #ccc;

    }
    .hero-section-small-text{
      margin-top:22px;
      color:var(--muted);
      font-size:14px
    }
    .cta-buttons button, .cta-buttons a, button.primary {
      margin: 0.5rem;
      padding: 0.75rem 1.5rem;
      font-size: 1rem;
      border-radius: 8px;
      border: none;
      cursor: pointer;
      text-decoration:none;
    }
    .primary {
      background-color: #ffd700;
      color: #0b0f1e;
    }
    .secondary {
      background: none;
      border: 1px solid #ffd700;
      color: #ffd700;
    }
    .secondary {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 12px 16px;
        border-radius: 14px;
        border: 1px solid var(--stroke);
        background: linear-gradient(180deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .06));
        font-weight: 600;
    }
    .cta-buttons button{
      display:inline-block
    }
    section.hero-section{
      padding: 4rem 2rem;
      margin-top: 50px;
    }
    section.new-section {
      padding: 4rem 2rem;
      text-align: center;
    }
    .features, .gallery {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 2rem;
    }
    .grid.four {
        grid-template-columns: repeat(4, 1fr);
    }
    .grid {
        display: grid
    ;
        gap: 22px;
    }
    .core-features .card {
        border: 1px solid var(--stroke);
        border-radius: var(--radius);
        background: var(--glass);
        box-shadow: var(--shadow);
        padding: 18px;
        color:#ffff;
        text-align:left;
    }
    .core-features .card .icon {
        font-size: 22px;
    }
    .core-features .card h3 {
        margin: 6px 0 8px;
        font-size: 20px;
    }
    .gallery .card, .social-feed .card{
        background: #1d2438;
        padding: 1rem;
        border-radius: 12px;
        width: 250px;
    }
    .gallery .card img, .social-feed .card img {
        width: 100%;
        border-radius: 10px;
        margin-bottom: 1rem;
        transition: transform 0.3s ease;
    }
    .gallery .card:hover{
      transform:translateY(-4px);
      transition: opacity .25s ease;         
      background: radial-gradient(400px 200px at 30% 20%, rgba(255, 255, 255, .35), transparent);
    }
    .hero-section{
        text-align:left;
    }
    .code-section {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
      text-align: left;
      gap: 2rem;
      padding: 2rem;
      background: #1d2438;
      border-radius: 10px;
    }
    .terminal {
      background: #0f111a;
      color: #00ff88;
      padding: 1rem;
      border-radius: 8px;
      font-family: monospace;
      width: 45%;
    }
    .code-features {
      width: 45%;
    }
    .footer {
      background: #0b0f1e;
      padding: 2rem;
      font-size: 0.9rem;
      text-align: center;
      color: #888;
    }

    /*** How it works - section ****/
    .how-it-works{
      color:#e9d9a6;
    }

    .how-it-works .flex-container{
      display:flex;
      gap:60px;
      align-items:flex-start;
      flex-wrap:wrap;
    }

    .how-it-works .flex-container .how-steps{
      flex:1;
      min-width:300px;
      text-align: left;
    }

    .how-it-works .flex-container .how-steps h2{
      margin:0 0 18px;
    }

    .how-it-works .flex-container .how-steps p{
      margin:0 0 28px;
      color:#ffff;
      max-width:520px;
    }

    .how-it-works .flex-container .grid{
      display:grid;gap:30px;
    }

    .how-it-works .flex-container .grid .step{
      display:flex;
      gap:14px;
      align-items:flex-start;
      cursor:pointer;
      opacity:.6;
      transition:all .28s;
    }

    .how-it-works .flex-container .grid .step-bubble{
      min-width:44px;
      height:44px;
      border-radius:50%;
      background:linear-gradient(180deg,#ffd700,#ad9a22);
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      color:#0b0b0b;
      box-shadow:0 6px 18px rgba(0,0,0,.6);
    }

    .how-it-works .flex-container .grid .step h3{
      margin:0 0 6px;
      color:#fff;
      font-size:18px;
    }

    .how-it-works .flex-container .grid .step p{
      margin:0;
      color:#ffd700;
    }

    .preview-coin-outer{
      margin-top:auto;
      display:flex;
      justify-content:center;
      align-items:center;
      padding-bottom:18px;
    }

    .preview-coin-outer .preview-coin{
      width:120px;
      height:120px;
      border-radius:999px;
      background: conic-gradient(#ffd805, #a8a24a);
      box-shadow:inset 0 -6px 18px rgba(0,0,0,.35),0 12px 30px rgba(0,0,0,.6);
    }

    .phone-mockup{
      width:320px;
      flex-shrink:0;
      min-width:260px;
    }

    .phone-mockup .inner-div{
      border-radius:34px;
      border:6px solid rgba(255,240,0,.30);
      background:#080808;
      padding:18px;
      box-shadow:0 30px 80px rgba(0,0,0,.7);
      position:relative;
      overflow:hidden;
    }

    .phone-mockup .inner-div .notch{
      width:120px;
      height:8px;
      background:linear-gradient(90deg,#111,#222);
      border-radius:18px;
      margin:6px auto 10px;
    }

    .phone-mockup .inner-div .screen{
      height:480px;
      border-radius:18px;
      background:linear-gradient(180deg,#090909,#0f0f0f);
      position:relative;
      overflow:hidden;
      padding:18px;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
      align-items:stretch;
    }

    .phone-mockup .inner-div .notification{
      position:absolute;
      left:18px;
      right:18px;
      top:-140px;
      padding:14px;
      border-radius:14px;
      background:linear-gradient(135deg,#e9d29a,#ffd805);
      color:#041015;
      font-weight:600;
      box-shadow:0 18px 40px rgba(199,155,53,.25);
      transform:translateY(0);
      opacity:1;
      transition:transform .55s cubic-bezier(.2,.9,.3,1),opacity .45s;
    }

    .phone-mockup .inner-div .notification .inner-div1{
      display:flex;
      gap:12px;
      align-items:center;
    }
    .phone-mockup .inner-div .notification .sub-inner-div1{
      width:46px;
      height:46px;
      border-radius:10px;
      background:#fff7e1;
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      color:#4b2e00;
    }

    .phone-mockup .inner-div .notification .noti-title{
      font-size:14px;
      margin-bottom:6px;
      color:#0b0b0b;
    }

    .phone-mockup .inner-div .notification .noti-text{
      font-size:12px;
      color:#2b1b09;
      opacity:0.9;
    }
    /*** END ****/

    .code-features h3{
      line-height: 1.05;
      margin: 0 0 16px;
      color:#fff;
    }

    .code-features ul{
      padding-left: 1rem;
    }

    .code-features .devband ul {
        margin: 0;
        padding-left: 18px;
        color: var(--muted);
    }

    .gallery .card{
      color:#fff;
    }

    .social-feed p.lead {
        color: var(--muted);
        max-width: 100%;
        font-size:16px;
    }

    /* Social preview */
    .social-feed .mock{border:1px solid var(--stroke);border-radius:var(--radius-lg);padding:14px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));box-shadow:var(--shadow)}
    .social-feed .feedrow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
    .social-feed .story{height:86px;border-radius:999px;border:1px solid var(--stroke);display:flex;align-items:center;gap:10px;padding:6px 10px}
    .social-feed .ring{width:64px;height:64px;border-radius:50%;position:relative}
    .social-feed .ring::before{
      content:'';position:absolute;
      inset:-2px;
      border-radius:inherit;
      background:conic-gradient(#ffd700,#00ff88,#e9d29a,#ffd700)
    }
    .social-feed .ring::after{
      content:'';position:absolute;
      inset:4px;
      border-radius:inherit;
      background:#10131C;
    }
    .social-feed .swipe{color:var(--muted);font-size:14px;text-align: left;}
    .social-feed .feed{padding-top:10px;text-align: left;}
    .social-feed .mini-coin{width:44px;height:44px;border-radius:50%;position:relative;flex:0 0 auto}
    .social-feed .mini-coin::before{
      content:'';
      position:absolute;
      inset:0;
      border-radius:50%;
      background:conic-gradient(#ffd700,#00ff88,#e9d29a,#ffd700);box-shadow:inset 0 0 28px rgba(255,255,255,.16)}
    .social-feed .decrypt{color:var(--muted);font-size:14px;}
    .social-feed .coin-card{display:flex;gap:12px;align-items:center;padding:12px;border-radius:16px;border:1px solid var(--stroke);background:rgba(255,255,255,.03)}
    
    /* Testimonials */
    .testimonial-wrapper .quotes{margin-top:16px; text-align: left;}
    .testimonial-wrapper blockquote{margin:0;padding:18px;border:1px solid var(--stroke);border-radius:16px;background:var(--glass)}
    .testimonial-wrapper blockquote p{margin:0}
    .testimonial-wrapper blockquote footer{margin-top:10px;color:var(--muted);border-top: 1px solid var(--stroke);padding: 40px 0;}
    .testimonial-wrapper .slick-slide {
      display: flex !important;
      height: auto !important;
    }

    .testimonial-wrapper .slick-slide > blockquote {
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .use-case-section{
      margin-top:30px;
    }

    .use-case-section h4{
      margin-bottom: 15px;
    }

    .use-case-section .card {
        border: 1px solid var(--stroke);
        border-radius: var(--radius);
        background: var(--glass);
        box-shadow: var(--shadow);
        padding: 18px;
        color:#fff;
        text-align: left;
    }

    .use-case-section .card .icon {
        font-size: 22px;
    }

    .use-case-section .card h3 {
        margin: 6px 0 8px;
        font-size: 20px;
    }

    /* PHONE MOCKUP Hero */
    .phone-mockup-hero {
        position: absolute;
        right: 0;
        /***bottom: 50px;***/
        width: 250px;
        height: 500px;
        background: #111;
        border-radius: 30px;
        border: 3px solid #FFD700;
        overflow: hidden;
        box-shadow: 0 0 40px #FFD700;
    }
    .phone-mockup-hero .inbox {
        position: absolute;
        bottom: 20px;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        padding: 20px;
    }

    /* COINS */
    .coin {
        position: absolute;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background: conic-gradient(#FFD700 0deg 90deg, #FFA500 90deg 180deg, #FFD700 180deg 270deg, #FFA500 270deg 360deg);
        box-shadow: 0 0 25px #FFD700, 0 0 60px rgba(255,215,0,0.4);
        pointer-events: none;
        transform-style: preserve-3d;
        animation: spin 1s linear infinite;
    }
    @keyframes spin {
        0% { transform: rotateY(0deg); }
        100% { transform: rotateY(360deg); }
    }

    /* SPARKS */
    .spark {
        position: absolute;
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background: #FFD700;
        box-shadow: 0 0 20px #FFD700, 0 0 40px rgba(255,215,0,0.6);
        pointer-events: none;
    }

    /* INBOX COINS */
    .phone-mockup-hero .inbox .coin {
        width: 40px; height: 40px;
        margin-bottom: 10px;
        opacity: 1;
        transition: transform 0.5s, box-shadow 0.5s;
    }
    .phone-mockup-hero .inbox .coin:hover {
        transform: rotateY(360deg) scale(1.2);
        box-shadow: 0 0 30px #FFD700, 0 0 50px #fff;
    }

    /* RESPONSIVE */
    @media (max-width: 768px) {
        /***.phone-mockup-hero{ width: 180px; height: 360px; right: 20px; bottom: 20px; }***/
        .phone-mockup-hero .coin { width: 40px; height: 40px; }
        .phone-mockup-hero .inbox .coin { width: 30px; height: 30px; }
        .phone-mockup-hero .phone-message { font-size: 0.9rem; }
    }

    @media (max-width: 991px) {
        .phone-mockup-hero {
          position: relative;
          right: 0px;
          display:block;
          margin-right:auto;
          margin-left:auto;
          text-align:center;
          margin-top: 40px;
        }
    }

    .phone-mockup-hero .phone-message {
        position: absolute;
        top: 20%;
        width: 90%;
        left: 5%;
        color: #FFD700;
        font-size: 1rem;
        text-align: center;
        line-height: 1.5;
        opacity: 0;
        pointer-events: none;
        transition: all 0.5s ease;
    }

    .phone-mockup-hero .phone-message.show {
        opacity: 0.9;
        transform: translateY(0);
    }

    .phone-mockup-hero .phone-message.hide {
        opacity: 0;
        transform: translateY(-20px);
    }

    #mintBtn{
      box-shadow: 0 0 40px #FFD700;
      animation: shadowBlink 1s infinite alternate;
    }

    @keyframes shadowBlink {
      0% {
        box-shadow: 0 0 40px #FFD700;
      }
      50% {
        box-shadow: 0 0 20px #FFD700; /* dim shadow */
      }
      100% {
        box-shadow: 0 0 40px #FFD700;
      }
    }

    .pre-text{
      margin-top: 20px;
      padding:5px;
      text-align: center;
    }

    .hero-section .col-lg-5 {
      position: relative; /* makes .phone-mockup-hero stay inside */
    }

    .hide{
      display:none;
    }

    .text-left{
      text-align: left;
    }
    
    .mt-10{
      margin-top:10px;
    }

    .mt-50{
      margin-top:50px;
    }

    .btn-primary, .btn-primary:focus, .btn-primary:hover{
      color:#000 !important;
    }

    footer ul{
      margin-top: 10px;
    }

    footer ul li{
      margin-bottom: 10px;
    }

    .card-body .input-group-text {
      border: 1px solid #cad1d7 !important;
      background-color: #312f2f !important;
    }

    .card-body .input-group-prepend {
        margin-right: 0px;
    }

    .card-body .input-group .form-control:not(:first-child) {
        padding-left: 10px !important;
    }

    .card-body .form-control {
        border: 1px solid #b9b8b8;
    }

    @media (min-width: 1400px) {
        .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
            max-width: 1320px;
        }
    }

    @media (min-width: 1200px) {
        h2.new-section {
            font-size: 2rem;
        }
    }

    @media (max-width:991px){
      .grid.four{grid-template-columns:repeat(2,1fr)}
      .grid.three{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width:640px){
      .grid.four,.grid.three,.grid.two{grid-template-columns:1fr;}
      .code-section{padding: 0.8rem;}
    }
    @media (max-width:766px){
      .phone-mockup {
          display: block;
          margin-left: auto;
          margin-right: auto;
          text-align: center;
      }

      .terminal {
        white-space: normal;   /* allow wrapping */
        word-wrap: break-word; /* break long words */
        overflow-wrap: break-word;
        width: 100%;
      }

      .code-features {
          width: 100%;
      }

      h1.hero-section-title{
        font-size: 2rem;
      }

      .footer-item-mobile{
        margin-top: 30px;
        margin-left: 20px;
      }
    }

    @media (max-width:400px){

        .phone-mockup {
            width: 280px;
            flex-shrink: 0;
            min-width: 220px;
        }

    }


/*** Post Card related changes ***/

/* 🪙 Coin Info Section above footer */
    .card-updates .coin-info {
      text-align: center;
      padding: 10px;
      background: #ffd700;
      margin: 20px;
      border-radius: 10px;
    }
    .card-updates .coin-info img {
      /***
      width: 48px;
      height: 48px;
      border-radius: 50%;
      ***/
    }
    .card-updates .coin-info h6 {
      margin: 0;
      font-size: 16px;
      font-weight: 600;
      color: #000;
      /***margin-top: 36px;***/
    }
    .card-updates .coin-info small {
      display: block;
      color: #000;
      font-size: 12px;
    }
    .card-updates .rounded-large {
        border-radius: unset !important;
    }

/*** END ***/