
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--black:#000;--white:#fff;--yellow:#f5e000;--purple:#9b30ff;--gray:#aaa;--dark-gray:#1a1a1a;}
html{scroll-behavior:smooth;}
body{background:var(--black);color:var(--white);font-family:'Inter',sans-serif;overflow-x:hidden;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.1rem 3rem;background:rgba(0,0,0,0.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,0.07);}
.nav-logo{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;letter-spacing:0.12em;color:var(--white);text-decoration:none;}
.nav-right{display:flex;align-items:center;gap:2rem;}
.nav-links{display:flex;gap:2rem;list-style:none;}
.nav-links a{font-size:0.8rem;font-weight:400;color:var(--white);text-decoration:none;transition:color .2s;}
.nav-links a.active{border-bottom:1px solid var(--white);padding-bottom:2px;}
.nav-links a:hover{color:var(--yellow);}
.btn-appt{font-size:0.75rem;font-weight:500;border:1.5px solid var(--purple);color:var(--white);background:transparent;padding:0.55rem 1.25rem;border-radius:999px;cursor:pointer;text-decoration:none;transition:background .2s,color .2s;}
.btn-appt:hover{background:var(--purple);}

.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:0 3rem;padding-top:80px;gap:2rem;}
.hero-left{padding:3rem 0;}
.hero-num{display:flex;align-items:center;gap:0.75rem;margin-bottom:2rem;}
.hero-num-line{width:40px;height:1px;background:var(--yellow);}
.hero-num span{font-size:0.75rem;color:var(--gray);letter-spacing:0.1em;}
.hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(5rem,10vw,9rem);line-height:0.9;letter-spacing:0.02em;margin-bottom:1.5rem;}
.hero-title .yellow{color:var(--yellow);}
.hero-desc{font-size:0.85rem;line-height:1.8;color:var(--gray);max-width:440px;margin-bottom:3rem;}
.hero-btns{display:flex;align-items:center;gap:2.5rem;}
.btn-book{background:var(--yellow);color:var(--black);font-size:0.85rem;font-weight:600;padding:1rem 2rem;border:none;border-radius:6px;cursor:pointer;text-decoration:none;transition:opacity .2s;}
.btn-book:hover{opacity:0.85;}
.btn-step{font-size:0.8rem;color:var(--white);text-decoration:none;border-bottom:1px solid var(--white);padding-bottom:2px;transition:color .2s,border-color .2s;}
.btn-step:hover{color:var(--yellow);border-color:var(--yellow);}
.hero-right{display:flex;align-items:center;justify-content:center;height:calc(100vh - 80px);}
.hero-img-wrap{width:100%;max-width:820px;height:72vh;overflow:hidden;border: radius 5px;background:#111;display:flex;align-items:center;justify-content:center;}


.marquee-wrap{background:var(--black);border-top:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(255,255,255,0.1);padding:1.1rem 0;overflow:hidden;white-space:nowrap;}
.marquee-track{display:inline-flex;gap:3rem;animation:marquee 18s linear infinite;}
.marquee-track span{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:0.12em;color:rgba(255,255,255,0.9);}
.marquee-track .sep{color:var(--yellow);font-size:1rem;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.services{padding:8rem 3rem;background:var(--black);}
.services-header{display:flex;align-items:flex-start;gap:6rem;margin-bottom:5rem;}
.svc-num-row{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.5rem;}
.svc-num-row .line{width:40px;height:1px;background:var(--yellow);}
.svc-num-row span{font-size:0.75rem;color:var(--gray);letter-spacing:0.1em;}
.services-headline{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1;letter-spacing:0.04em;}
.services-headline .purple{color:var(--purple);}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-left:1px solid rgba(255,255,255,0.1);}
.service-item{padding:2.5rem;border-right:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(255,255,255,0.1);}
.service-name{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:0.08em;margin-bottom:1rem;}
.service-desc{font-size:0.8rem;line-height:1.85;color:var(--gray);margin-bottom:2rem;}
.service-link{font-size:0.75rem;color:var(--white);text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.3);padding-bottom:3px;transition:color .2s,border-color .2s;}
.service-link:hover{color:var(--yellow);border-color:var(--yellow);}

.works{padding:6rem 3rem;background:var(--black);}
.works-label{font-family:'Bebas Neue',sans-serif;font-size:1rem;letter-spacing:0.25em;color:var(--white);margin-bottom:2rem;display:block;}
.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;}
.work-item{overflow:hidden;background:#111;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;}
.work-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.work-item:hover img{transform:scale(1.04);}
.work-ph{width:100%;height:100%;background:#111;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.75rem;color:rgba(255,255,255,0.12);font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;}

.cta-strip{margin:2rem 3rem 6rem;border-radius:12px;background:linear-gradient(135deg,#0d1a00 0%,#000 40%,#1a003a 100%);border:1px solid rgba(255,255,255,0.08);padding:5rem;display:flex;align-items:center;justify-content:space-between;gap:3rem;}
.cta-text h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,5vw,4rem);line-height:1;letter-spacing:0.04em;margin-bottom:0.5rem;}
.cta-text h2 .yellow{color:var(--yellow);}
.cta-text p{font-size:0.8rem;color:var(--gray);}
.btn-cta{flex-shrink:0;background:var(--yellow);color:var(--black);font-size:0.9rem;font-weight:600;padding:1.1rem 2.5rem;border:none;border-radius:8px;cursor:pointer;text-decoration:none;white-space:nowrap;transition:opacity .2s;}
.btn-cta:hover{opacity:0.88;}

footer{background:var(--black);border-top:1px solid rgba(255,255,255,0.1);padding:5rem 3rem 2rem;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;}
.footer-logo-text{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;letter-spacing:0.06em;line-height:1;margin-bottom:1rem;display:block;}
.footer-tagline{font-size:0.75rem;color:var(--gray);line-height:1.7;max-width:220px;margin-bottom:1.5rem;}
.footer-socials{display:flex;gap:1rem;}
.social-btn{width:38px;height:38px;border:1px solid rgba(255,255,255,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:border-color .2s,background .2s;}
.social-btn:hover{border-color:var(--yellow);background:rgba(245,224,0,0.08);}
.social-btn svg{width:16px;height:16px;fill:var(--white);}
.footer-col h4{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gray);margin-bottom:1.25rem;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:0.6rem;}
.footer-col a{font-size:0.8rem;color:rgba(255,255,255,0.7);text-decoration:none;transition:color .2s;}
.footer-col a:hover{color:var(--yellow);}
.footer-col p{font-size:0.8rem;color:rgba(255,255,255,0.6);line-height:2;}
.map-link{display:inline-block;margin-top:0.75rem;font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--yellow);text-decoration:none;border-bottom:1px solid rgba(245,224,0,0.3);padding-bottom:2px;}
.footer-bottom{background:var(--black);border-top:1px solid rgba(255,255,255,0.07);padding:1.5rem 3rem;display:flex;justify-content:space-between;align-items:center;}
.footer-bottom p{font-size:0.7rem;color:rgba(255,255,255,0.3);}

@media(max-width:900px){
  nav{padding:1rem 1.25rem;}
  .nav-links{display:none;}
  .hero{grid-template-columns:1fr;padding:1.5rem;padding-top:80px;}
  .hero-right{height:75vw;margin-top:1rem;}
  .hero-img-wrap{height:75vw;max-width:100%;}
  .services{padding:5rem 1.25rem;}
  .services-header{flex-direction:column;gap:2rem;}
  .services-grid{grid-template-columns:1fr;}
  .works{padding:5rem 1.25rem;}
  .works-grid{grid-template-columns:1fr;}
  .cta-strip{margin:0 1.25rem 4rem;padding:3rem 2rem;flex-direction:column;align-items:flex-start;}
  footer{grid-template-columns:1fr 1fr;padding:4rem 1.25rem 2rem;gap:2rem;}
  .footer-bottom{padding:1.25rem;flex-direction:column;gap:0.5rem;text-align:center;}
}
