 :root{
    --bg:#0f130d;
    --bg-alt:#141a10;
    --surface:#1a2115;
    --surface-2:#202918;
    --line:rgba(203,236,138,0.14);
    --lime:#cbec8a;
    --lime-bright:#e6ffb3;
    --lime-deep:#7c934a;
    --coral:#ff8f66;
    --ink:#f6f8ef;
    --muted:#9aa88f;
    --radius:20px;
    --ease:cubic-bezier(.22,1,.36,1);
    --section-pad:120px;
    --gap-lg:60px;
  }
 
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif;font-weight:600;letter-spacing:-0.02em;line-height:1.05;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  img{max-width:100%;display:block;}
  .mono{font-family:'JetBrains Mono',monospace;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 32px;}
  section{position:relative;}
 
  ::selection{background:var(--lime);color:#0f130d;}
 
  /* background texture */
  .grain{
    position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.05;mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  .dotgrid{
    position:absolute;inset:0;
    background-image:radial-gradient(var(--line) 1px, transparent 1px);
    background-size:28px 28px;
    mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, black 40%, transparent 90%);
    pointer-events:none;
  }
 
  /* cursor glow */
  .glow{
    position:fixed;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle, rgba(203,236,138,0.10), transparent 70%);
    pointer-events:none;z-index:1;transform:translate(-50%,-50%);
    transition:opacity .3s ease;
  }
 
  /* ---------- NAV ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:50;
    padding:16px 0;
        transition:
        padding 0.3s ease,
        background 0.3s ease;

  }
  header.scrolled {
    padding: 10px 0;
}

header.scrolled .navbar {
    background: rgba(15, 19, 13, 0.92);
    border-color: rgba(203, 236, 138, 0.2);

    box-shadow:
        0 10px 35px rgba(0, 0, 0, 0.18);
}
  .navbar{
    position:relative;
    display:flex;align-items:center;justify-content:space-between;
    gap:12px;
    padding:10px 10px 10px 18px;border-radius:999px;
    background:rgba(15,19,13,0.7);
    border:1px solid var(--line);
    backdrop-filter:blur(16px);
  }
  .brand{
    display:flex;align-items:center;gap:9px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:18px;
    flex-shrink:0;white-space:nowrap;
  }
  .brand-mark{
    width:30px;height:30px;border-radius:9px;
    background:linear-gradient(135deg,var(--lime),var(--lime-deep));
    position:relative;flex-shrink:0;
    animation:spin-mark 9s linear infinite;
  }
  .brand-mark::after{
    content:"";position:absolute;inset:6px;border-radius:6px;background:var(--bg);
  }
  @keyframes spin-mark{to{transform:rotate(360deg);}}
  nav.links{display:flex;gap:30px;align-items:center;}
  nav.links a{font-size:14px;color:var(--muted);transition:color .25s;position:relative;}
  nav.links a:hover{color:var(--ink);}
  .nav-cta{
    font-size:14px;font-weight:500;padding:10px 20px;border-radius:999px;
    background:var(--lime);color:#101710;
    flex-shrink:0;white-space:nowrap;
    transition:transform .25s var(--ease), box-shadow .25s var(--ease);
  }
  .nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(203,236,138,0.28);}
  .menu-btn{
    display:none;width:44px;height:44px;position:relative;cursor:pointer;background:none;border:none;
    flex-shrink:0;
  }
  .menu-btn span{position:absolute;left:11px;right:11px;height:2px;background:var(--ink);transition:.3s;}
  .menu-btn span:nth-child(1){top:16px;} .menu-btn span:nth-child(2){top:22px;} .menu-btn span:nth-child(3){top:28px;}
  .menu-btn.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg);}
  .menu-btn.is-open span:nth-child(2){opacity:0;}
  .menu-btn.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
 
  .nav-links{
    display:none;position:absolute;top:calc(100% + 10px);left:20px;right:20px;
    flex-direction:column;gap:4px;
    background:rgba(15,19,13,0.97);border:1px solid var(--line);border-radius:20px;
    padding:14px;backdrop-filter:blur(16px);
  }
  .nav-links.is-open{display:flex;}
  .nav-links a{
    padding:13px 14px;border-radius:12px;font-size:15px;color:var(--ink);
  }
  .nav-links a:active,.nav-links a:hover{background:var(--surface-2);color:var(--lime);}
  .nav-links .nav-cta{margin-top:6px;text-align:center;}
 
  /* ---------- HERO ---------- */
  .hero{
    padding:190px 0 var(--section-pad);
    display:flex;align-items:center;min-height:92vh;
    overflow:hidden;
  }
  .blob-field{position:absolute;inset:0;overflow:hidden;z-index:0;}
  .blob{
    position:absolute;filter:blur(2px);opacity:.9;
    animation:morph 12s var(--ease) infinite, drift 22s ease-in-out infinite;
  }
  .blob.b1{width:560px;top:-140px;right:-120px;fill:var(--lime);opacity:.9;animation-duration:14s,26s;}
  .blob.b2{width:340px;bottom:-80px;right:220px;fill:var(--coral);opacity:.35;animation-duration:10s,18s;}
  .blob.b3{width:220px;top:220px;right:520px;fill:none;stroke:var(--lime);stroke-width:1.4;opacity:.5;animation-duration:16s,20s;}
 
  @keyframes morph{
    0%,100%{border-radius:42% 58% 65% 35% / 45% 40% 60% 55%;}
    33%{border-radius:65% 35% 40% 60% / 55% 65% 35% 45%;}
    66%{border-radius:35% 65% 55% 45% / 40% 55% 45% 60%;}
  }
  @keyframes drift{
    0%,100%{transform:translate(0,0) rotate(0deg);}
    50%{transform:translate(-24px,30px) rotate(8deg);}
  }
 
  .hero-grid{
    position:relative;z-index:2;
    display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:end;width:100%;
  }
  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.06em;color:var(--lime);
    border:1px solid var(--line);padding:7px 14px;border-radius:999px;margin-bottom:26px;
  }
  .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px var(--lime);}
  .hero h1{font-size:clamp(42px,6.4vw,84px);max-width:780px;}
  .hero h1 em{font-style:normal;color:var(--lime);}
  .hero p.lead{
    margin-top:26px;max-width:460px;font-size:17px;line-height:1.65;color:var(--muted);
  }
  .hero-actions{display:flex;gap:16px;margin-top:38px;flex-wrap:wrap;}
  .btn{
    display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:999px;
    font-size:14.5px;font-weight:500;transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s;
  }
  .btn-primary{background:var(--lime);color:#101710;}
  .btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(203,236,138,0.3);}
  .btn-ghost{border:1px solid var(--line);color:var(--ink);}
  .btn-ghost:hover{border-color:var(--lime);color:var(--lime);}
  .btn svg{width:16px;height:16px;transition:transform .25s var(--ease);}
  .btn:hover svg{transform:translate(3px,-3px);}
  .hero-disclaimer {
    margin-top: 18px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 11.5px;
    color: var(--muted);
    display: flex;
    align-items: center;
    gap: 8px;
}
  .hero-side{position:relative;z-index:2;}
  .hero-card{
    background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
    padding:26px;backdrop-filter:blur(10px);
  }
  .hero-card .label{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;}
  .hero-card .big{font-size:38px;font-family:'Space Grotesk',sans-serif;margin-top:8px;color:var(--lime);}
  .hero-card p{margin-top:10px;font-size:13.5px;color:var(--muted);line-height:1.5;}
 
  /* marquee strip */
  .marquee-strip{
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    background:var(--bg-alt);overflow:hidden;padding:16px 0;position:relative;z-index:2;
  }
  .marquee-track{display:flex;width:max-content;animation:scroll-left 26s linear infinite;}
  .marquee-track span{
    font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--muted);
    padding:0 34px;white-space:nowrap;display:flex;align-items:center;gap:10px;
  }
  .marquee-track span::before{content:"◆";color:var(--lime);font-size:9px;}
  @keyframes scroll-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}
 
  /* ---------- SECTION HEADERS ---------- */
  .section-pad{padding:var(--section-pad) 0;}
  .sec-head{max-width:640px;margin-bottom:64px;}
  .sec-eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--lime);letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;display:block;}
  .sec-head h2{font-size:clamp(30px,4vw,48px);}
  .sec-head p{margin-top:16px;color:var(--muted);font-size:16px;line-height:1.6;}
 
  .reveal{opacity:1;transform:translateY(28px);transition:opacity .8s var(--ease), transform .8s var(--ease);}
  .reveal.in{opacity:1;transform:translateY(0);}
 
  /* ---------- SERVICES ---------- */
  .services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
  .service-card{
    background:var(--bg);padding:38px 32px;transition:background .35s var(--ease);position:relative;min-height:260px;display:flex;flex-direction:column;
  }
  .service-card:hover{background:var(--surface);}
  .service-icon{
    width:46px;height:46px;border-radius:12px;background:var(--surface-2);
    display:flex;align-items:center;justify-content:center;margin-bottom:22px;
    transition:transform .4s var(--ease), background .3s;
  }
  .service-card:hover .service-icon{transform:rotate(-8deg) scale(1.06);background:var(--lime);}
  .service-icon svg{width:22px;height:22px;stroke:var(--lime);transition:stroke .3s;}
  .service-card:hover .service-icon svg{stroke:#101710;}
  .service-card h3{font-size:19px;margin-bottom:10px;}
  .service-card p{font-size:14.5px;color:var(--muted);line-height:1.6;flex:1;}
  .service-link{margin-top:18px;font-size:13.5px;color:var(--lime);display:inline-flex;align-items:center;gap:6px;}
  .service-link svg{width:13px;height:13px;transition:transform .25s var(--ease);}
  .service-card:hover .service-link svg{transform:translate(3px,-3px);}
 
  /* ---------- WHY ---------- */
  .why-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;}
  .why-visual{
    aspect-ratio:1/1;border-radius:28px;background:var(--surface);border:1px solid var(--line);
    position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;
  }
  .why-visual svg{width:74%;}
  .why-list{display:flex;flex-direction:column;gap:0;}
  .why-item{padding:26px 0;border-top:1px solid var(--line);display:flex;gap:22px;}
  .why-item:last-child{border-bottom:1px solid var(--line);}
  .why-item .why-ic{
    width:38px;height:38px;flex-shrink:0;border-radius:10px;background:var(--surface-2);
    display:flex;align-items:center;justify-content:center;
  }
  .why-ic svg{width:18px;height:18px;stroke:var(--lime);}
  .why-item h4{font-size:16.5px;margin-bottom:6px;}
  .why-item p{font-size:14px;color:var(--muted);line-height:1.55;}
 
  /* ---------- PROCESS ---------- */
  .process-track{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;}
  .process-track::before{
    content:"";position:absolute;top:22px;left:22px;right:22px;height:1px;
    background:repeating-linear-gradient(90deg,var(--line) 0 8px, transparent 8px 16px);
    z-index:0;
  }
  .process-step{position:relative;z-index:1;}
  .process-num{
    font-family:'JetBrains Mono',monospace;font-size:13px;color:#101710;background:var(--lime);
    width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    margin-bottom:22px;
  }
  .process-step h4{font-size:17px;margin-bottom:8px;}
  .process-step p{font-size:13.5px;color:var(--muted);line-height:1.55;}
 
  /* ---------- INDUSTRIES ---------- */
  .industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
  .industry-card{
    padding:30px 26px;border-radius:16px;border:1px solid var(--line);
    background:linear-gradient(160deg,var(--surface),var(--bg));
    transition:border-color .3s, transform .3s var(--ease);
  }
  .industry-card:hover{border-color:var(--lime);transform:translateY(-4px);}
  .industry-card h4{font-size:16.5px;margin-bottom:10px;}
  .industry-card p{font-size:13.5px;color:var(--muted);line-height:1.55;}
 
  /* ---------- STATS ---------- */
  .stats-strip{
    display:grid;grid-template-columns:repeat(4,1fr);
    border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  }
  .stat{padding:44px 30px;border-right:1px solid var(--line);}
  .stat:last-child{border-right:none;}
  .stat .num{font-family:'Space Grotesk',sans-serif;font-size:44px;color:var(--lime);}
  .stat .lbl{margin-top:8px;font-size:13.5px;color:var(--muted);}
 
  /* ---------- TEAM ---------- */
  .team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .team-card{text-align:left;}
  .avatar{
    aspect-ratio:1/1;border-radius:16px;background:var(--surface);border:1px solid var(--line);
    margin-bottom:16px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;
  }
  .avatar::before{
    content:"";position:absolute;width:130%;height:130%;
    background:radial-gradient(circle at 30% 30%, rgba(203,236,138,.35), transparent 60%);
    animation:drift 16s ease-in-out infinite;
  }
  .avatar span{font-family:'Space Grotesk',sans-serif;font-size:26px;color:var(--lime);position:relative;z-index:1;}
  .team-card h4{font-size:15.5px;margin-bottom:4px;}
  .team-card p{font-size:13px;color:var(--muted);}
 
  /* ---------- INSIGHTS ---------- */
  .insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .insight-card{
    border:1px solid var(--line);border-radius:16px;padding:30px;background:var(--bg-alt);
    transition:transform .3s var(--ease), border-color .3s;display:flex;flex-direction:column;height:100%;
  }
  .insight-card:hover{transform:translateY(-5px);border-color:var(--lime);}
  .insight-tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--lime);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px;}
  .insight-card h3{font-size:19px;margin-bottom:12px;}
  .insight-card p{font-size:14px;color:var(--muted);line-height:1.6;flex:1;}
  .insight-more{margin-top:20px;font-size:13.5px;color:var(--lime);display:inline-flex;align-items:center;gap:6px;}
 
  /* ---------- FAQ ---------- */
  .faq-item{border-top:1px solid var(--line);}
  .faq-item:last-child{border-bottom:1px solid var(--line);}
  .faq-q{
    width:100%;text-align:left;padding:26px 0;background:none;border:none;color:var(--ink);
    display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:17px;font-family:'Space Grotesk',sans-serif;
  }
  .faq-q .plus{width:22px;height:22px;position:relative;flex-shrink:0;}
  .faq-q .plus::before,.faq-q .plus::after{
    content:"";position:absolute;background:var(--lime);top:50%;left:50%;transform:translate(-50%,-50%);
    transition:transform .3s var(--ease);
  }
  .faq-q .plus::before{width:14px;height:2px;}
  .faq-q .plus::after{width:2px;height:14px;}
  .faq-item.open .plus::after{transform:translate(-50%,-50%) rotate(90deg) scaleY(0);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease);}
  .faq-a p{padding-bottom:26px;color:var(--muted);font-size:14.5px;line-height:1.65;max-width:640px;}
 
  /* ---------- CTA ---------- */
  .cta-block{
    border-radius:32px;padding:80px 60px;position:relative;overflow:hidden;
    background:linear-gradient(150deg,var(--surface),var(--bg-alt));
    border:1px solid var(--line);text-align:center;
  }
  .cta-block h2{font-size:clamp(32px,4.6vw,56px);max-width:780px;margin:14px auto 0;}
  .cta-block p{margin:20px auto 0;max-width:520px;color:var(--muted);font-size:16px;}
  .cta-block .hero-actions{justify-content:center;margin-top:36px;}
  .cta-blob{position:absolute;width:420px;bottom:-160px;left:-100px;fill:var(--lime);opacity:.14;animation:morph 12s var(--ease) infinite, drift 20s ease-in-out infinite;}
  .process-cta, .section-action{    display: flex;
    justify-content: center;
    margin-top: 48px;}
 
  /* ---------- FOOTER ---------- */
  footer{padding:80px 0 40px;border-top:1px solid var(--line);margin-top:60px;}
  .footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:60px;}
  .footer-brand p{margin-top:16px;color:var(--muted);font-size:14px;max-width:280px;line-height:1.6;}
  .footer-col h5{font-family:'JetBrains Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:18px;}
  .footer-col a{display:block;font-size:14px;color:var(--ink);opacity:.85;margin-bottom:12px;transition:opacity .2s,color .2s;}
  .footer-col a:hover{opacity:1;color:var(--lime);}
  .newsletter-row{display:flex;gap:0;margin-top:16px;border:1px solid var(--line);border-radius:999px;padding:5px;}
  .newsletter-row input{
    flex:1;background:none;border:none;outline:none;color:var(--ink);padding:10px 16px;font-size:13.5px;font-family:'Inter',sans-serif;
  }
  .newsletter-row button{
    background:var(--lime);color:#101710;border:none;border-radius:999px;padding:10px 20px;font-size:13px;font-weight:500;cursor:pointer;
  }
  .footer-bottom{
    padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;
    font-size:13px;color:var(--muted);flex-wrap:wrap;gap:12px;
  }
  
  /* =========================================
   NEWSLETTER SECTION
========================================= */

.newsletter-section {
    padding: var(--section-pad) 0;
}

.newsletter-panel {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;

    padding: 56px 60px;
    border: 1px solid var(--line);
    border-radius: 28px;

    background:
        radial-gradient(
            circle at 90% 20%,
            rgba(203, 236, 138, 0.08),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            var(--surface),
            var(--bg-alt)
        );

    overflow: hidden;
}

/* Subtle decorative glow */
.newsletter-panel::after {
    content: "";
    position: absolute;

    width: 260px;
    height: 260px;

    right: -120px;
    bottom: -150px;

    border-radius: 50%;

    background: var(--lime);
    opacity: 0.07;

    filter: blur(30px);

    pointer-events: none;
}


/* ---------- COPY ---------- */

.newsletter-copy {
    position: relative;
    z-index: 1;
    max-width: 700px;
}

.newsletter-copy .sec-eyebrow {
    margin-bottom: 14px;
}

.newsletter-copy h2 {
    margin: 0;

    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.08;
    max-width: 700px;
}

.newsletter-copy p {
    margin-top: 16px;

    max-width: 620px;

    color: var(--muted);
    font-size: 15px;
    line-height: 1.65;
}


/* ---------- FORM ---------- */

.home-newsletter-form {
    position: relative;
    z-index: 1;

    display: flex;
    align-items: center;

    width: 100%;
    max-width: 430px;

    padding: 5px;

    border: 1px solid var(--line);
    border-radius: 999px;

    background: rgba(15, 19, 13, 0.65);

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.home-newsletter-form:focus-within {
    border-color: var(--lime);

    box-shadow:
        0 0 0 3px rgba(203, 236, 138, 0.08);
}


/* Email input */

.home-newsletter-form input {
    flex: 1;

    min-width: 0;

    padding: 12px 16px;

    border: none;
    outline: none;

    background: transparent;

    color: var(--ink);

    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
}

.home-newsletter-form input::placeholder {
    color: var(--muted);
    opacity: 0.8;
}


/* Subscribe button */

.home-newsletter-form button {
    flex-shrink: 0;

    padding: 11px 22px;

    border: none;
    border-radius: 999px;

    background: var(--lime);
    color: #101710;

    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    font-weight: 600;

    cursor: pointer;

    transition:
        transform 0.25s var(--ease),
        box-shadow 0.25s var(--ease),
        background 0.25s ease;
}

.home-newsletter-form button:hover {
    transform: translateY(-2px);

    background: var(--lime-bright);

    box-shadow:
        0 10px 24px rgba(203, 236, 138, 0.22);
}

.home-newsletter-form button:active {
    transform: translateY(0);
}

/* =====================================
   SINGLE BLOG POST
===================================== */

.single-blog-page {
    overflow: hidden;
}


/* ===============================
   BLOG HERO
================================ */

.blog-hero {
    position: relative;
    padding: 145px 0 75px;
    overflow: hidden;
    border-bottom: 1px solid var(--line);

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(190, 255, 90, 0.06),
            transparent 42%
        );
}

.blog-hero-wrap {
    max-width: 1180px;
}

.blog-hero-content {
    max-width: 920px;
    margin: 0 auto;
    text-align: center;
}

.blog-hero .sec-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(255,255,255,0.025);
}

.blog-hero h1 {
    margin: 22px auto 0;
    max-width: 900px;

    font-size: clamp(38px, 5vw, 62px);
    line-height: 1.08;
    letter-spacing: -0.035em;

    color: var(--ink);
    text-wrap: balance;
}

.blog-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 9px;

    margin-top: 25px;

    font-size: 14px;
    color: var(--muted);
}

.meta-dot {
    color: var(--lime);
}


/* ===============================
   ARTICLE SECTION
================================ */

.blog-article-section {
    padding: 65px 0 110px;
}

.blog-article-section > .wrap {
    max-width: 1180px;
}

.single-post {
    max-width: 960px;
    margin: 0 auto;
}


/* ===============================
   FEATURED IMAGE
================================ */

.blog-featured-image {
    position: relative;
    margin-bottom: 55px;

    overflow: hidden;

    border: 1px solid var(--line);
    border-radius: 22px;

    background: rgba(255,255,255,0.025);

    box-shadow:
        0 24px 70px rgba(0,0,0,0.22);
}

.featured-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;

    transition: transform 0.5s ease;
}

.blog-featured-image:hover .featured-image {
    transform: scale(1.015);
}


/* ===============================
   BLOG CONTENT
================================ */

.post-content {
    max-width: 820px;
    margin: 0 auto;

    font-size: 18px;
    line-height: 1.82;
    color: var(--muted);
}


/* first paragraph slightly highlighted */

.post-content > p:first-child {
    font-size: 20px;
    line-height: 1.75;
    color: rgba(255,255,255,0.82);
}


/* ===============================
   PARAGRAPHS
================================ */

.post-content p {
    margin: 0 0 24px;
}


/* ===============================
   HEADINGS
================================ */

.post-content h2,
.post-content h3,
.post-content h4 {
    color: var(--ink);
    font-weight: 600;
}

.post-content h2 {
    position: relative;

    margin: 70px 0 24px;

    font-size: clamp(29px, 3.4vw, 38px);
    line-height: 1.2;
    letter-spacing: -0.025em;
}

.post-content h2::before {
    content: "";
    display: block;

    width: 42px;
    height: 3px;

    margin-bottom: 17px;

    border-radius: 20px;
    background: var(--lime);
}

.post-content h3 {
    margin: 46px 0 18px;

    font-size: 25px;
    line-height: 1.3;
    letter-spacing: -0.015em;
}

.post-content h4 {
    margin: 34px 0 14px;

    font-size: 20px;
    line-height: 1.4;
}


/* ===============================
   TEXT ELEMENTS
================================ */

.post-content strong {
    color: var(--ink);
    font-weight: 600;
}

.post-content a {
    color: var(--lime);

    text-decoration: underline;
    text-decoration-color: rgba(190,255,90,0.45);
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;

    transition: 0.2s ease;
}

.post-content a:hover {
    text-decoration-color: var(--lime);
}


/* ===============================
   LISTS
================================ */

.post-content ul,
.post-content ol {
    margin: 25px 0 32px;
    padding-left: 26px;
}

.post-content li {
    margin-bottom: 12px;
    padding-left: 4px;

    line-height: 1.75;
}

.post-content li::marker {
    color: var(--lime);
}


/* ===============================
   BLOG IMAGES
================================ */

.post-content img {
    display: block;

    max-width: 100%;
    height: auto;

    margin: 48px auto;

    border: 1px solid var(--line);
    border-radius: 18px;

    box-shadow:
        0 20px 50px rgba(0,0,0,0.22);
}


/* Gutenberg image blocks */

.post-content figure {
    margin: 45px auto;
}

.post-content figcaption {
    margin-top: 12px;

    text-align: center;

    font-size: 13px;
    line-height: 1.5;
    color: var(--muted);
}


/* ===============================
   TABLES
================================ */

.post-content table {
    width: 100%;

    margin: 40px 0;

    border-collapse: separate;
    border-spacing: 0;

    overflow: hidden;

    border: 1px solid var(--line);
    border-radius: 16px;

    background: rgba(255,255,255,0.018);

    font-size: 15px;
}

.post-content th,
.post-content td {
    padding: 16px 18px;

    text-align: left;

    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.post-content th:last-child,
.post-content td:last-child {
    border-right: none;
}

.post-content tr:last-child td {
    border-bottom: none;
}

.post-content th {
    color: var(--ink);

    background: rgba(190,255,90,0.055);

    font-weight: 600;
}

.post-content td {
    color: var(--muted);
}

.post-content tbody tr {
    transition: background 0.2s ease;
}

.post-content tbody tr:hover {
    background: rgba(255,255,255,0.025);
}


/* ===============================
   BLOCKQUOTE
================================ */

.post-content blockquote {
    position: relative;

    margin: 45px 0;

    padding: 30px 32px;

    border: 1px solid var(--line);
    border-left: 3px solid var(--lime);
    border-radius: 0 16px 16px 0;

    background:
        linear-gradient(
            90deg,
            rgba(190,255,90,0.05),
            rgba(255,255,255,0.02)
        );
}

.post-content blockquote p {
    margin: 0;

    color: var(--ink);

    font-size: 20px;
    line-height: 1.65;
}


/* ===============================
   HR
================================ */

.post-content hr {
    height: 1px;

    margin: 60px 0;

    border: none;

    background: var(--line);
}


/* ===============================
   ARTICLE CTA
================================ */

.post-footer {
    max-width: 900px;

    margin: 90px auto 0;
    padding-top: 55px;

    border-top: 1px solid var(--line);
}

.post-footer-content {
    position: relative;
    overflow: hidden;

    padding: 52px;

    border: 1px solid var(--line);
    border-radius: 24px;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(190, 255, 90, 0.12),
            transparent 38%
        ),
        rgba(255,255,255,0.025);
}

.post-footer-content::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -70px;
    bottom: -100px;

    border: 1px solid rgba(190,255,90,0.13);
    border-radius: 50%;
}

.post-footer-content h3 {
    position: relative;
    z-index: 2;

    max-width: 650px;

    margin: 15px 0;

    font-size: clamp(28px, 4vw, 36px);
    line-height: 1.2;
    letter-spacing: -0.02em;

    color: var(--ink);
}

.post-footer-content p {
    position: relative;
    z-index: 2;

    max-width: 650px;

    margin-bottom: 28px;

    color: var(--muted);
    line-height: 1.75;
}

.post-footer-content .btn {
    position: relative;
    z-index: 2;
}


/* ===============================
   WORDPRESS ALIGNMENTS
================================ */

.post-content .alignwide {
    width: calc(100% + 120px);
    max-width: calc(100% + 120px);

    margin-left: -60px;
}

.post-content .alignfull {
    width: 100vw;
    max-width: 100vw;

    margin-left: calc(50% - 50vw);
}

/* =========================================
   CONTACT PAGE
========================================= */

.contact-hero {
    min-height: 100vh;
    align-items: center;
}

.contact-hero-grid {
    align-items: center;
}

.contact-intro {
    margin-top: 50px;
    max-width: 520px;
}

.contact-intro .sec-eyebrow {
    margin-bottom: 12px;
}

.contact-intro h3 {
    font-size: 24px;
    margin-bottom: 10px;
}

.contact-intro p {
    color: var(--muted);
    font-size: 14.5px;
    line-height: 1.65;
}


/* =========================================
   CONTACT FORM CARD
========================================= */

.contact-form-card {
    padding: 34px;
}

.contact-form-card .big {
    font-size: 28px;
    line-height: 1.15;
    color: var(--ink);
    margin-bottom: 28px;
}


/* =========================================
   FORM
========================================= */

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-field {
    position: relative;
}

.contact-field label {
    display: flex;
    align-items: center;
    gap: 5px;

    margin-bottom: 8px;

    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;

    color: var(--ink);
}

.contact-field label > span:not(.optional) {
    color: var(--coral);
}

.contact-field .optional {
    margin-left: auto;

    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    font-weight: 400;

    text-transform: uppercase;
    letter-spacing: .04em;

    color: var(--muted);
}


/* Inputs */

.contact-field input,
.contact-field textarea {
    display: block;

    width: 100%;

    border: 1px solid var(--line);
    border-radius: 13px;

    outline: none;

    background: rgba(15, 19, 13, 0.72);
    color: var(--ink);

    font-family: 'Inter', sans-serif;
    font-size: 14px;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.contact-field input {
    height: 50px;
    padding: 0 15px;
}

.contact-field textarea {
    min-height: 145px;

    padding: 14px 15px;

    resize: vertical;
    line-height: 1.6;
}

.contact-field input:focus,
.contact-field textarea:focus {
    border-color: var(--lime);

    background: rgba(15, 19, 13, .92);

    box-shadow:
        0 0 0 3px rgba(203, 236, 138, .07);
}


/* Error state */

.contact-field input[aria-invalid="true"],
.contact-field textarea[aria-invalid="true"] {
    border-color: var(--coral);

    box-shadow:
        0 0 0 3px rgba(255, 143, 102, .07);
}

.field-error {
    display: block;

    min-height: 16px;

    margin-top: 6px;

    font-size: 11.5px;
    line-height: 1.4;

    color: var(--coral);
}


/* =========================================
   GLOBAL ERROR MESSAGE
========================================= */

.contact-alert {
    margin: 0 0 24px;

    padding: 14px 16px;

    border-radius: 12px;

    font-size: 13px;
    line-height: 1.55;
}

.contact-alert-error {
    border: 1px solid rgba(255, 143, 102, .28);

    background: rgba(255, 143, 102, .08);

    color: #ffb49a;
}


/* =========================================
   SUBMIT
========================================= */

.contact-submit {
    justify-content: center;

    width: 100%;

    border: none;

    cursor: pointer;

    font-family: 'Inter', sans-serif;
}

.contact-form-note {
    margin: -4px 0 0 !important;

    text-align: center;

    font-family: 'JetBrains Mono', monospace;
    font-size: 10.5px !important;

    color: var(--muted) !important;
}


/* =========================================
   HONEYPOT
========================================= */

.contact-honeypot {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    overflow: hidden !important;

    clip: rect(1px, 1px, 1px, 1px) !important;

    white-space: nowrap !important;

    pointer-events: none !important;

    opacity: 0 !important;

    left: -9999px !important;
}

/* =========================================
   BLOGS PAGE
========================================= */

.blogs-hero {
    min-height: 72vh;
}

.blogs-hero .hero-main {
    max-width: 900px;
}

.blogs-hero .lead {
    max-width: 650px;
}


/* =========================================
   BLOG FILTER
========================================= */

.blog-filter-bar {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 24px;

    padding: 14px;

    border: 1px solid var(--line);
    border-radius: var(--radius);

    background: var(--surface);
}

.blog-search {
    flex: 1;
}

.blog-search input,
.blog-category-filter select {
    width: 100%;
    height: 48px;

    padding: 0 15px;

    border: 1px solid var(--line);
    border-radius: 12px;

    outline: none;

    background: var(--bg);
    color: var(--ink);

    font-family: 'Inter', sans-serif;
    font-size: 14px;

    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

.blog-search input:focus,
.blog-category-filter select:focus {
    border-color: var(--lime);

    box-shadow:
        0 0 0 3px rgba(203, 236, 138, .07);
}

.blog-search input::placeholder {
    color: var(--muted);
}

.blog-category-filter {
    width: 230px;
}

.blog-category-filter select {
    cursor: pointer;
}

.blog-filter-submit,
.blog-filter-reset {
    flex-shrink: 0;
}


/* =========================================
   RESULT COUNT
========================================= */

.blog-results-meta {
    display: flex;
    justify-content: flex-end;

    margin-bottom: 24px;

    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    letter-spacing: .04em;

    color: var(--muted);
}


/* =========================================
   BLOG GRID
========================================= */

.blogs-grid {
    align-items: stretch;
}

.blog-card {
    overflow: hidden;

    min-height: 100%;

    padding: 0 !important;
}

.blog-card-image {
    position: relative;

    display: block;

    overflow: hidden;

    aspect-ratio: 16 / 10;

    background: var(--surface-2);
}

.blog-card-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform .6s var(--ease),
        opacity .3s ease;
}

.blog-card:hover .blog-card-image img {
    transform: scale(1.045);
}


/* =========================================
   IMAGE FALLBACK
========================================= */

.blog-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    background:
        radial-gradient(
            circle at 30% 30%,
            rgba(203,236,138,.12),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            var(--surface),
            var(--surface-2)
        );
}

.blog-image-placeholder span {
    font-family: 'Space Grotesk', sans-serif;

    font-size: 20px;
    font-weight: 700;

    color: var(--lime);
}


/* =========================================
   BLOG CARD CONTENT
========================================= */

.blog-card-content {
    display: flex;
    flex-direction: column;

    flex: 1;

    padding: 26px;
}

.blog-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px;

    margin-bottom: 16px;
}

.blog-category {
    display: inline-flex;

    padding: 5px 9px;

    border: 1px solid var(--line);
    border-radius: 999px;

    background: rgba(203,236,138,.06);

    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    line-height: 1;

    text-transform: uppercase;
    letter-spacing: .05em;

    color: var(--lime);

    transition:
        background .25s ease,
        border-color .25s ease;
}

.blog-category:hover {
    background: rgba(203,236,138,.1);

    border-color:
        rgba(203,236,138,.25);
}

.blog-date {
    font-family: 'JetBrains Mono', monospace;

    font-size: 10.5px;

    color: var(--muted);
}


/* =========================================
   BLOG TITLE
========================================= */

.blog-card-title {
    margin: 0 0 13px;

    font-size: 23px;
    line-height: 1.2;
}

.blog-card-title a {
    color: var(--ink);

    transition: color .25s ease;
}

.blog-card-title a:hover {
    color: var(--lime);
}


/* =========================================
   BLOG EXCERPT
========================================= */

.blog-card-excerpt {
    flex: 1;

    margin: 0 0 24px;

    font-size: 14px;
    line-height: 1.7;

    color: var(--muted);
}


/* =========================================
   BLOG CARD FOOTER
========================================= */

.blog-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    padding-top: 18px;

    border-top: 1px solid var(--line);
}

.blog-author {
    display: flex;
    gap: 4px;

    font-size: 11px;

    color: var(--muted);
}

.blog-author span:last-child {
    color: var(--ink);
}


/* =========================================
   PAGINATION
========================================= */

.blog-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-top: 60px;
}

.blog-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 42px;
    height: 42px;

    padding: 0 13px;

    border: 1px solid var(--line);
    border-radius: 999px;

    background: var(--surface);

    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;

    color: var(--muted);

    transition:
        color .25s ease,
        background .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

.blog-pagination .page-numbers:hover {
    transform: translateY(-2px);

    border-color:
        rgba(203,236,138,.3);

    color: var(--lime);
}

.blog-pagination .page-numbers.current {
    border-color: var(--lime);

    background: var(--lime);

    color: var(--bg);
}


/* =========================================
   EMPTY RESULT
========================================= */

.blog-empty-state {
    max-width: 620px;

    margin: 40px auto 0;

    text-align: center;
}

.blog-empty-state .big {
    margin-bottom: 14px;
}

.blog-empty-state p {
    margin-bottom: 24px;
}


/* =========================================
   SCREEN READER
========================================= */

.screen-reader-text {
    position: absolute;

    width: 1px;
    height: 1px;

    padding: 0;
    margin: -1px;

    overflow: hidden;

    clip: rect(0, 0, 0, 0);

    white-space: nowrap;

    border: 0;
}

/* Custom Software Page - Small Enhancements */

.custom-software-page .service-kicker {
    display: inline-block;
    margin-bottom: 10px;

    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;

    color: var(--lime);
}

.custom-software-page .why-ic span {
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    font-weight: 600;

    color: var(--lime);
}

.custom-software-page .section-action {
    display: flex;
    justify-content: center;

    margin-top: 52px;
}

.custom-software-page #process > .wrap > .hero-disclaimer {
    max-width: 720px;
    margin: 18px auto 0;

    text-align: center;
}

/* =========================================
   COACH WEBSITE DEVELOPMENT PAGE
========================================= */

.coach-website-page .service-kicker {
    display: inline-block;
    margin-bottom: 10px;

    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;

    color: var(--lime);
}

.coach-website-page .why-ic span {
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    font-weight: 600;

    color: var(--lime);
}

.coach-website-page .section-action {
    display: flex;
    justify-content: center;
    margin-top: 52px;
}

/* =========================================
   SCHOOL WEBSITE DEVELOPMENT PAGE
========================================= */

.school-website-page .service-kicker {
    display: inline-block;
    margin-bottom: 10px;

    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;

    color: var(--lime);
}

.school-website-page .why-ic span {
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    font-weight: 600;

    color: var(--lime);
}

.school-website-page .section-action {
    display: flex;
    justify-content: center;
    margin-top: 52px;
}




  /* ---------- RESPONSIVE ---------- */
  @media(max-width:980px){
    :root{--section-pad:88px;--gap-lg:36px;}
    nav.links{display:none;}
    .navbar > .nav-cta{display:none;}
    .menu-btn{display:block;}
    .hero{padding-top:150px;overflow:hidden;}
    .blob.b1{width:340px;top:-90px;right:-90px;}
    .blob.b2{width:220px;bottom:-40px;right:-60px;opacity:.25;}
    .blob.b3{width:160px;top:140px;right:-40px;}
    .hero-grid{grid-template-columns:1fr;gap:var(--gap-lg);}
    .services-grid{grid-template-columns:repeat(2,1fr);}
    .why-wrap{grid-template-columns:1fr;gap:var(--gap-lg);}
    .why-visual{max-width:280px;margin:0 auto;}
    .process-track{grid-template-columns:repeat(2,1fr);row-gap:40px;}
    .process-track::before{display:none;}
    .industry-grid{grid-template-columns:repeat(2,1fr);}
    .stats-strip{grid-template-columns:repeat(2,1fr);}
    .stat:nth-child(2){border-right:none;}
    .stat{border-bottom:1px solid var(--line);}
    .team-grid{grid-template-columns:repeat(2,1fr);}
    .insight-grid{grid-template-columns:1fr;}
    .footer-top{grid-template-columns:1fr 1fr;}
     .newsletter-panel {
        gap: 36px;
        padding: 48px;
    }

    .newsletter-copy h2 {
        font-size: 36px;
    }

    .home-newsletter-form {
        max-width: 380px;
    }
        .glow {
        display: none;
    }

    .post-content {
        max-width: 760px;
    }

    .post-content .alignwide {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
    
        .contact-hero {
        min-height: 0;
    }

    .contact-intro {
        margin-top: 38px;
    }

    .contact-form-card {
        max-width: 680px;
    }
        .blog-filter-bar {
        flex-wrap: wrap;
    }

    .blog-search {
        flex: 1 1 100%;
    }

    .blog-category-filter {
        flex: 1;
        width: auto;
    }
    
  }
  
  
  
  
  @media(max-width:620px){
    :root{--section-pad:64px;}
    .wrap{padding:0 20px;}
    .hero{padding-top:130px;min-height:0;padding-bottom:56px;}
    .blob.b1{width:220px;top:-50px;right:-70px;}
    .blob.b2{width:150px;bottom:0;right:-70px;opacity:.2;}
    .blob.b3{display:none;}
    .hero-actions{gap:12px;}
    .hero-actions .btn{flex:1 1 auto;justify-content:center;}
    .hero-card{padding:22px;}
    .services-grid{grid-template-columns:1fr;}
    .service-card{padding:32px 26px;min-height:0;}
    .why-item{gap:16px;}
    .process-track{grid-template-columns:1fr;row-gap:32px;}
    .industry-grid{grid-template-columns:1fr;}
    .stats-strip{grid-template-columns:1fr;}
    .stat{border-right:none;padding:32px 24px;}
    .team-grid{grid-template-columns:1fr 1fr;gap:14px;}
    .cta-block{padding:52px 24px;}
    .cta-block .hero-actions{flex-direction:column;width:100%;}
    .cta-block .btn{width:100%;}
    .footer-top{grid-template-columns:1fr;gap:36px;padding-bottom:40px;}
    .footer-bottom{flex-direction:column;gap:8px;}
    .newsletter-row{flex-wrap:wrap;border-radius:16px;}
    .newsletter-row input{flex-basis:100%;padding:10px 12px;}
    .newsletter-row button{flex:1;margin-top:6px;}
     .newsletter-section {
        padding: var(--section-pad) 0;
    }

    .newsletter-panel {
        flex-direction: column;
        align-items: flex-start;

        gap: 30px;

        padding: 40px 26px;

        border-radius: 22px;
    }

    .newsletter-copy {
        max-width: 100%;
    }

    .newsletter-copy h2 {
        font-size: 32px;
    }

    .newsletter-copy p {
        font-size: 14px;
    }

    .home-newsletter-form {
        max-width: none;
        width: 100%;
    }

    .home-newsletter-form input {
        padding: 12px 14px;
    }

    .home-newsletter-form button {
        padding: 11px 18px;
    }
    
        .blog-hero {
        padding: 115px 0 48px;
    }

    .blog-hero h1 {
        font-size: clamp(34px, 9vw, 44px);
        line-height: 1.12;
    }

    .blog-meta {
        font-size: 13px;
    }

    .blog-article-section {
        padding: 40px 0 80px;
    }

    .single-post {
        margin-top: 0;
    }

    .blog-featured-image {
        margin-bottom: 38px;
        border-radius: 16px;
    }

    .post-content {
        font-size: 16.5px;
        line-height: 1.75;
    }

    .post-content > p:first-child {
        font-size: 18px;
    }

    .post-content h2 {
        margin-top: 52px;
        font-size: 28px;
    }

    .post-content h3 {
        margin-top: 38px;
        font-size: 22px;
    }

    .post-content h4 {
        font-size: 19px;
    }

    .post-content img {
        margin: 35px auto;
        border-radius: 14px;
    }

    .post-content table {
        display: block;
        overflow-x: auto;

        white-space: nowrap;
    }

    .post-footer {
        margin-top: 65px;
        padding-top: 40px;
    }

    .post-footer-content {
        padding: 32px 24px;
        border-radius: 18px;
    }

    .post-footer-content h3 {
        font-size: 27px;
    }

    .post-content .alignwide {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
        .contact-form-card {
        padding: 26px 22px;
    }

    .contact-form-card .big {
        font-size: 24px;
    }

    .contact-intro {
        margin-top: 34px;
    }

    .contact-intro h3 {
        font-size: 21px;
    }

    .contact-field input {
        height: 48px;
    }
    
        .custom-software-page .section-action .btn {
        width: 100%;
        justify-content: center;
    }
        .coach-website-page .section-action .btn {
        width: 100%;
        justify-content: center;
    }
        .school-website-page .section-action .btn {
        width: 100%;
        justify-content: center;
    }

  }




  
  @media(max-width:480px){
    .team-grid{
        grid-template-columns:1fr;
    }
     .newsletter-panel {
        padding: 34px 20px;
    }

    .newsletter-copy h2 {
        font-size: 29px;
    }

    .home-newsletter-form {
        flex-direction: column;

        gap: 6px;

        padding: 6px;

        border-radius: 18px;
    }

    .home-newsletter-form input {
        width: 100%;
        padding: 12px;
    }

    .home-newsletter-form button {
        width: 100%;
    }
    
        .blogs-hero {
        min-height: 0;
    }

    .blog-filter-bar {
        align-items: stretch;

        padding: 12px;
    }

    .blog-search,
    .blog-category-filter {
        width: 100%;
        flex: 1 1 100%;
    }

    .blog-filter-submit,
    .blog-filter-reset {
        width: 100%;
        justify-content: center;
    }

    .blog-card-content {
        padding: 22px;
    }

    .blog-card-title {
        font-size: 21px;
    }

    .blog-card-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .blog-results-meta {
        justify-content: flex-start;
    }

    .blog-pagination {
        margin-top: 42px;
    }
  }

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto;
    }

    .reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .blob,
    .brand-mark,
    .marquee-track,
    .avatar::before,
    .cta-blob {
        animation: none !important;
    }
}
