*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Arial,Helvetica,sans-serif;color:#f7fbff;background:#06101d;line-height:1.6}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 12% 8%,rgba(0,134,255,.20),transparent 28%),radial-gradient(circle at 90% 5%,rgba(255,255,255,.08),transparent 24%),linear-gradient(135deg,#03070d,#071526 55%,#09111e)}a{color:inherit}header{position:sticky;top:0;z-index:80;background:rgba(3,7,13,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.1)}nav{max-width:1480px;margin:auto;padding:18px 22px;display:flex;align-items:center;justify-content:space-between}.logo{text-decoration:none;font-size:25px;font-weight:1000;letter-spacing:-1px}.logo span{color:#38d7ff}#navLinks{display:flex;gap:20px;align-items:center}#navLinks a{text-decoration:none;color:#c8d6e5;font-weight:850;font-size:14px}#navLinks a:hover,#navLinks a.active{color:#38d7ff}#menuBtn{display:none;background:#12233a;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:8px 12px;font-size:20px}.hero,.page-hero,.section,.showcase,.stats,.split-cta,.contact-panel,footer{max-width:1480px;margin:auto;padding-left:22px;padding-right:22px}.hero{min-height:78vh;padding-top:92px;padding-bottom:70px;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.tag,.project-type{color:#38d7ff;text-transform:uppercase;font-size:12px;font-weight:1000;letter-spacing:2px;margin-bottom:12px}.hero h1,.page-hero h1{font-size:clamp(46px,7vw,96px);line-height:.9;letter-spacing:-4px;max-width:900px}.hero p,.page-hero p{color:#b8c7d9;max-width:760px;font-size:20px;margin-top:22px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;margin-top:24px;background:linear-gradient(135deg,#008cff,#38d7ff);color:#fff;text-decoration:none;padding:14px 22px;border-radius:999px;font-weight:1000;border:0;cursor:pointer;box-shadow:0 15px 35px rgba(0,140,255,.28)}.btn-soft{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);box-shadow:none}.hero-stack{position:relative;min-height:520px}.hero-stack img{position:absolute;width:72%;border-radius:26px;border:1px solid rgba(255,255,255,.14);box-shadow:0 35px 95px rgba(0,0,0,.38);object-fit:cover}.hero-stack img:nth-child(1){right:0;top:0;height:320px}.hero-stack img:nth-child(2){left:0;top:115px;height:300px}.hero-stack img:nth-child(3){right:10%;bottom:0;height:270px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-top:10px;padding-bottom:35px}.stats div,.project-card,.price-card,.service-grid article,.split-cta,.contact-panel,.viewer{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.26)}.stats div{border-radius:22px;padding:22px}.stats strong{display:block;font-size:34px;letter-spacing:-1px}.stats span{color:#b8c7d9;font-weight:800}.section{padding-top:60px;padding-bottom:55px}.section.compact{padding-top:35px}.section-title{margin-bottom:30px}.section-title h2,.showcase h2,.split-cta h2,.contact-panel h2,.contact h2{font-size:clamp(34px,5vw,62px);line-height:1;letter-spacing:-2px}.section-title p{color:#b8c7d9;margin-top:10px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project-card{cursor:pointer;border-radius:28px;overflow:hidden;position:relative;transition:transform .25s ease,border-color .25s ease}.project-card:hover{transform:translateY(-8px);border-color:rgba(56,215,255,.45)}.project-card img{width:100%;height:250px;object-fit:cover;display:block}.project-card-body{padding:22px}.project-card h3{font-size:28px;line-height:1.05;margin-bottom:10px}.project-card p,.showcase-head p,.split-cta p,.contact-panel p,footer p{color:#b8c7d9}.mini-tags,.features{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.mini-tags span,.features span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 11px;color:#dcecff;font-size:12px;font-weight:900}.card-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.card-actions a,.card-actions span,.private-demo{color:#d9eeff;text-decoration:none;font-weight:900;font-size:13px;border-bottom:1px solid rgba(56,215,255,.45)}.page-hero{padding-top:95px;padding-bottom:40px}.showcase{padding-top:82px;padding-bottom:72px;border-top:1px solid rgba(255,255,255,.08)}.showcase-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:28px}.showcase-head>div:first-child{max-width:900px}.showcase-head p{font-size:18px;margin-top:16px}.viewer{border-radius:30px;overflow:hidden}.viewer-top{height:50px;padding:0 18px;display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.45);border-bottom:1px solid rgba(255,255,255,.1)}.viewer-top span{width:12px;height:12px;background:rgba(255,255,255,.35);border-radius:50%}.viewer-top strong{margin-left:auto;color:#b8c7d9}.image-wrap{background:#02060c;padding:0;overflow-x:auto}.image-wrap img{width:100%;height:auto;max-height:none;object-fit:unset;display:block;cursor:zoom-in}.image-wrap img.flip{animation:flipPage .42s ease}@keyframes flipPage{0%{opacity:.25;transform:rotateY(-14deg)}100%{opacity:1;transform:rotateY(0)}}.controls{margin-top:16px;display:flex;justify-content:center;gap:18px}.controls button{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:12px 18px;font-weight:1000;cursor:pointer}.thumbs{margin-top:16px;display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.thumbs button{border:1px solid rgba(255,255,255,.14);background:transparent;border-radius:12px;overflow:hidden;cursor:pointer;opacity:.75}.thumbs img{width:100%;height:78px;object-fit:cover;display:block}.lightbox{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.92);display:none;overflow:auto;padding:30px}.lightbox.open{display:block}.lightbox img{width:100%;height:auto;display:block;cursor:zoom-out}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.price-card,.service-grid article{border-radius:28px;padding:26px}.price-card h3,.service-grid h3{font-size:27px;line-height:1.05;margin-bottom:12px}.price-card p{color:#b8c7d9}.price-card strong{display:block;margin-top:18px;color:#fff;background:rgba(56,215,255,.13);border:1px solid rgba(56,215,255,.25);border-radius:16px;padding:12px}.price-card ul,.service-grid ul{margin-top:18px;list-style:none}.price-card li,.service-grid li{padding:8px 0;color:#dcecff;border-bottom:1px solid rgba(255,255,255,.08)}.price-card li:before,.service-grid li:before{content:"✓ ";color:#38d7ff;font-weight:1000}.split-cta{margin-top:45px;margin-bottom:60px;border-radius:30px;padding-top:42px;padding-bottom:42px;display:flex;align-items:center;justify-content:space-between;gap:28px}.split-cta>div{max-width:850px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.contact-panel{margin-top:40px;margin-bottom:65px;border-radius:30px;padding-top:40px;padding-bottom:40px;display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.contact-panel form{display:grid;gap:14px}.contact-panel label{display:grid;gap:7px;color:#dcecff;font-weight:900}.contact-panel input,.contact-panel select,.contact-panel textarea{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:14px;color:#fff}.contact-panel textarea{min-height:130px}footer{padding-top:35px;padding-bottom:45px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:20px}footer a{color:#38d7ff;text-decoration:none;font-weight:1000}@media(max-width:1180px){.hero{grid-template-columns:1fr}.hero-stack{min-height:420px}.pricing-grid,.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(2,1fr)}.thumbs{grid-template-columns:repeat(4,1fr)}}@media(max-width:800px){#menuBtn{display:block}#navLinks{display:none;position:absolute;top:72px;left:16px;right:16px;flex-direction:column;background:#0b1728;border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:18px}#navLinks.open{display:flex}.hero{padding-top:70px}.hero h1,.page-hero h1{letter-spacing:-2px}.hero-stack{display:none}.stats,.project-grid,.pricing-grid,.service-grid,.contact-panel{grid-template-columns:1fr}.showcase-head,.split-cta,footer{display:block}.project-card img{height:220px}.thumbs{grid-template-columns:repeat(3,1fr)}}

.graphic-hero{
  max-width:1480px;
  margin:auto;
  padding:95px 22px 55px;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:34px;
  align-items:center;
}

.graphic-hero h1{
  font-size:clamp(44px,7vw,88px);
  line-height:.9;
  letter-spacing:-4px;
  max-width:900px;
}

.graphic-hero p{
  color:#b8c7d9;
  max-width:760px;
  font-size:20px;
  margin-top:22px;
}

.printer-video{
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  padding:14px;
  box-shadow:0 30px 95px rgba(0,0,0,.32);
}

.printer-video video{
  width:100%;
  display:block;
  border-radius:22px;
  background:#02060c;
}

.video-label{
  display:inline-block;
  margin-bottom:12px;
  background:rgba(56,215,255,.13);
  border:1px solid rgba(56,215,255,.25);
  color:#dcecff;
  border-radius:999px;
  padding:9px 13px;
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:1px;
}

@media(max-width:900px){
  .graphic-hero{
    grid-template-columns:1fr;
    padding-top:70px;
  }

  .graphic-hero h1{
    letter-spacing:-2px;
  }
}


/* Contact-only page update */
.contact-only-page{
    max-width:1480px;
    margin:auto;
    padding:40px 22px 70px;
}

.contact-banner-big{
    margin-bottom:34px;
    padding:90px 40px;
    border-radius:34px;
    background:linear-gradient(135deg,#041525,#082949,#0b3b66);
    text-align:center;
    overflow:hidden;
    position:relative;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 30px 95px rgba(0,0,0,.32);
}

.contact-banner-big::before{
    content:'';
    position:absolute;
    inset:0;
    background:
    radial-gradient(circle at 20% 50%,rgba(0,200,255,.18),transparent 40%),
    radial-gradient(circle at 80% 50%,rgba(0,120,255,.18),transparent 40%);
    animation:contactGlow 8s infinite alternate ease-in-out;
}

.contact-banner-content{
    position:relative;
    z-index:2;
}

.contact-badge{
    display:inline-block;
    padding:12px 24px;
    border-radius:999px;
    border:1px solid rgba(0,200,255,.4);
    color:#4ddfff;
    font-weight:900;
    letter-spacing:2px;
    margin-bottom:25px;
    text-transform:uppercase;
}

.contact-banner-big h2{
    font-size:clamp(42px,6vw,86px);
    line-height:.95;
    margin-bottom:22px;
    letter-spacing:-3px;
}

.contact-banner-big p{
    max-width:900px;
    margin:auto;
    color:#c6d8e8;
    font-size:20px;
    line-height:1.7;
}

.contact-methods{
    display:flex;
    justify-content:center;
    gap:25px;
    flex-wrap:wrap;
    margin-top:44px;
}

.contact-card{
    display:flex;
    align-items:center;
    gap:20px;
    min-width:320px;
    padding:25px;
    border-radius:22px;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.12);
    text-decoration:none;
    color:white;
    transition:.3s;
    text-align:left;
}

.contact-card:hover{
    transform:translateY(-7px);
    box-shadow:0 0 44px rgba(0,200,255,.28);
    border-color:#4ddfff;
}

.contact-icon{
    font-size:2.2rem;
}

.contact-card strong{
    display:block;
    font-size:1.25rem;
}

.contact-card span{
    display:block;
}

.contact-services{
    margin-top:44px;
    display:flex;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap;
}

.contact-services span{
    padding:11px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    color:#fff;
    font-weight:800;
    font-size:14px;
}

.contact-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.contact-info-card{
    padding:28px;
    border-radius:26px;
    background:rgba(255,255,255,.075);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 24px 70px rgba(0,0,0,.24);
}

.contact-info-card h3{
    font-size:26px;
    margin-bottom:10px;
}

.contact-info-card p{
    color:#b8c7d9;
}

@keyframes contactGlow{
    from{transform:translateY(0) scale(1)}
    to{transform:translateY(-18px) scale(1.03)}
}

@media(max-width:850px){
    .contact-banner-big{
        padding:60px 22px;
    }

    .contact-card{
        min-width:100%;
    }

    .contact-info-grid{
        grid-template-columns:1fr;
    }
}

/* Animated 35% Off Promo Banner */
.promo-banner{
  position:sticky;
  top:69px;
  z-index:75;
  width:100%;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.16);
  background:linear-gradient(90deg,#006dff,#38d7ff,#00aaff,#006dff);
  background-size:300% 100%;
  box-shadow:0 16px 45px rgba(0,140,255,.35);
  animation:promoBgMove 4s linear infinite,promoPulse 2.2s ease-in-out infinite alternate;
}
.promo-track{
  display:flex;
  width:max-content;
  gap:34px;
  padding:13px 0;
  color:#fff;
  font-weight:1000;
  letter-spacing:1px;
  text-transform:uppercase;
  white-space:nowrap;
  animation:promoScroll 22s linear infinite;
}

.hours-section{
    padding:80px 20px;
    display:flex;
    justify-content:center;
}

.hours-card{
    width:100%;
    max-width:900px;
    background:rgba(15,15,15,.85);
    border:1px solid rgba(255,255,255,.08);
    border-radius:20px;
    padding:40px;
    backdrop-filter:blur(15px);
}

.hours-card h2{
    text-align:center;
    margin-bottom:30px;
    font-size:2rem;
}

.hour-row{
    display:flex;
    justify-content:space-between;
    padding:15px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.hours-note{
    margin-top:25px;
    text-align:center;
}

.hours-contact{
    margin-top:20px;
    text-align:center;
}
.promo-track span{display:inline-flex;align-items:center;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.promo-banner:hover .promo-track{animation-play-state:paused}
@keyframes promoScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes promoBgMove{from{background-position:0% 50%}to{background-position:300% 50%}}
@keyframes promoPulse{from{filter:brightness(1)}to{filter:brightness(1.18)}}
