/*
 * ArtsByPraveen — Global Site CSS
 * Shared styles for header/navigation, mobile menu, hero sections, buttons,
 * glass UI, shared sections, cards, CTA, floating WhatsApp and common layout.
 * Page-specific CSS remains inside each page only when the page needs unique styling.
 */

body{
font-family:Inter;
background:#0B0F19;
color:white;
overflow-x:hidden;
-webkit-overflow-scrolling: touch;
}

html{
scroll-behavior:smooth;
overflow-x:hidden;
}

/* glass */

.glass{
background:rgba(255,255,255,0.05);
backdrop-filter:blur(14px);
-webkit-backdrop-filter:blur(14px);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 8px 32px rgba(0,0,0,0.3);
border-radius:28px;
}

/* The navbar is intentionally 35px; 28px is reserved for regular glass sections/cards. */
.site-nav-panel{border-radius:35px !important;}
@media(max-width:1023px){.glass{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}}

/* gradient text */

.gradient{
/* background:linear-gradient(135deg,#8B5CF6,#22D3EE); */
background:linear-gradient(135deg,#8B5CF6,#ee4622);
-webkit-background-clip:text;
color:transparent;
}

/* big section background title */

.section-title{
position:relative;
text-align:center;
margin-bottom:80px;
}

.section-bg{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
font-size:clamp(40px,10vw,120px);
font-weight:800;
white-space:nowrap;
pointer-events:none;
line-height:1;
padding:0.2em 0;
background:linear-gradient(to top,transparent 0%,rgba(255,255,255,0.03) 40%,rgba(255,255,255,0.08) 100%);
-webkit-background-clip:text;
background-clip:text;
color:transparent;
}

.section-main{
position:relative;
font-size:40px;
font-weight:700;
}

/* floating blobs */

.blob{
position:absolute;
border-radius:50%;
filter:blur(120px);
opacity:.35;
z-index:-1;
}
@media(max-width:1023px){.blob{filter:blur(60px);opacity:.2;will-change:auto;}}

.blob1{
width:400px;
height:400px;
background:#8B5CF6;
top:-100px;
left:0;
}

.blob2{
width:350px;
height:350px;
background:#22D3EE;
bottom:-100px;
right:0;
}

/* hero */

.hero{
min-height:90vh;
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:60px;
padding:140px 20px;
max-width:1200px;
margin:auto;
}

.main-logo{height:40px; width:auto;}

@media(max-width:768px){

.hero{
grid-template-columns:1fr;
gap:30px;
padding:100px 16px 40px;
}

@media (max-width: 600px) {
    .home-hero {
        text-align: left;
    }

    .home-hero-content {
        align-items: flex-start !important;
        text-align: left;
    }
    .home-hero-btn{margin-top:10px !important;}
}    

.blob1,.blob2{
width:200px;
height:200px;
}
.main-logo{height:36px; width:auto;}

}

/* typing animation */

.typing-wrap{
font-size:clamp(1rem,3vw,1.4rem);
font-weight:500;
color:rgba(255,255,255,0.7);
margin-bottom:16px;
min-height:2em;
display:flex;
align-items:center;
gap:8px;
}

.typed-text{
background:linear-gradient(135deg,#8B5CF6,#22D3EE);
-webkit-background-clip:text;
color:transparent;
font-weight:700;
}

.cursor-blink{
display:inline-block;
width:2px;
height:1.1em;
background:linear-gradient(135deg,#8B5CF6,#22D3EE);
margin-left:2px;
vertical-align:middle;
animation:blink .7s step-end infinite;
}

#about .grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

@keyframes blink{
0%,100%{opacity:1}50%{opacity:0}
}

/* logo marquee */

.marquee-outer{
overflow:hidden;
position:relative;
}

.marquee-outer::before,
.marquee-outer::after{
content:'';
position:absolute;
top:0;
bottom:0;
width:80px;
z-index:2;
}

.marquee-outer::before{left:0;background:linear-gradient(to right,#0B0F19,transparent);}
.marquee-outer::after{right:0;background:linear-gradient(to left,#0B0F19,transparent);}

.marquee-track{
display:flex;
gap:32px;
width:max-content;
animation:marquee 30s linear infinite;
will-change:transform;
}

.marquee-track.reverse{
animation:marquee-rev 30s linear infinite;
will-change:transform;
}

@keyframes marquee{
0%{transform:translateX(0)}100%{transform:translateX(-50%)}
}

@keyframes marquee-rev{
0%{transform:translateX(-50%)}100%{transform:translateX(0)}
}

.logo-card{
flex-shrink:0;
width:130px;
height:60px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(255,255,255,0.05);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.07);
border-radius:14px;
padding:8px 14px;
overflow:hidden;
}

.logo-card img{
width:100%;
height:100%;
object-fit:contain;
filter:grayscale(1) brightness(1.4);
opacity:0.6;
transition:.3s;
}

.logo-card:hover img{
filter:grayscale(0) brightness(1);
opacity:1;
}

/* whatsapp float */
.wa-btn{
position:fixed;
bottom:28px;
right:28px;
z-index:999;
width:58px;
height:58px;
border-radius:50%;
background:#25D366;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 4px 24px rgba(37,211,102,.5);
transition:.3s;
}

.wa-btn:hover{
transform:scale(1.12);
box-shadow:0 6px 32px rgba(37,211,102,.8);
}
.profile-image-card{padding:32px;}

/* proj nav */
.proj-nav{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:28px;
}
.proj-nav-btns{display:flex;gap:10px;}
.proj-nav button{
width:42px;height:42px;
border-radius:50%;
background:rgba(255,255,255,0.06);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.1);
display:flex;align-items:center;justify-content:center;
cursor:pointer;transition:.2s;
}
.proj-nav button:hover{background:rgba(139,92,246,0.35);box-shadow:inset 0 0 0 1px rgba(139,92,246,0.5),0 0 16px rgba(139,92,246,0.3);}

/* infinite carousel */
.proj-carousel{overflow:hidden;position:relative;}
.proj-track{
display:flex;
gap:24px;
will-change:transform;
}

/* project cards */
.proj-card{
flex-shrink:0;
width:350px;
border-radius:24px;
background:rgba(255,255,255,0.06);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 4px 24px rgba(0,0,0,0.3);
overflow:hidden;
transition:transform .35s,box-shadow .35s;
}
@media(min-width:1024px){.proj-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}}
.proj-card:hover{
transform:translateY(-8px);
box-shadow:inset 0 0 0 1px rgba(139,92,246,0.3),0 20px 50px rgba(139,92,246,0.2),0 8px 20px rgba(0,0,0,0.4);
}
.proj-img{
position:relative;
overflow:hidden;
/* height:200px; */
}
.proj-img img{
width:100%;height:100%;object-fit:cover;object-position: top;height:180px;
transition:transform .35s;
}
.proj-card:hover .proj-img img{transform:scale(1.08);}
.proj-overlay{
position:absolute;inset:0;
background:linear-gradient(to top,rgba(11,15,25,0.9) 0%,rgba(11,15,25,0.2) 60%,transparent 100%);
display:flex;align-items:flex-end;justify-content:center;
padding-bottom:18px;gap:10px;
opacity:0;transition:.3s;
}
.proj-card:hover .proj-overlay{opacity:1;}
.proj-link{
display:inline-flex;align-items:center;gap:5px;
background:linear-gradient(135deg,#8B5CF6,#22D3EE);
color:#000;font-weight:700;padding:9px 20px;
border-radius:50px;font-size:12px;
}
.proj-link-ghost{
display:inline-flex;align-items:center;gap:5px;
background:rgba(255,255,255,0.13);backdrop-filter:blur(8px);
color:#fff;font-weight:600;padding:9px 16px;
border-radius:50px;font-size:12px;
}
.proj-body{padding:20px 22px 22px;}

/* tag in body */
.proj-tag{
display:inline-flex;align-items:center;gap:5px;
font-size:10px;font-weight:700;
padding:4px 10px 4px 8px;border-radius:50px;
margin-bottom:10px;letter-spacing:.5px;text-transform:uppercase;
}
.proj-tag-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}

.proj-title{font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.4;}
.proj-desc{font-size:12px;color:rgba(255,255,255,0.45);line-height:1.65;margin-bottom:14px;}
.proj-stack{display:flex;flex-wrap:wrap;gap:6px;}
.proj-stack span{
font-size:10px;padding:3px 10px;border-radius:50px;
background:rgba(255,255,255,0.06);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.09);
color:rgba(255,255,255,0.5);transition:.2s;
}
.proj-card:hover .proj-stack span{color:rgba(255,255,255,0.8);background:rgba(255,255,255,0.1);}

/* skill pills */
.skill-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;}
.skill-pill{
display:flex;align-items:center;gap:8px;
padding:8px 16px;border-radius:50px;
background:rgba(255,255,255,0.05);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);
font-size:13px;font-weight:500;color:rgba(255,255,255,0.8);
transition:.25s;
}
.skill-pill:hover{background:rgba(255,255,255,0.09);transform:translateY(-2px);}
.skill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}

/* contact */
.contact-wrap{
border-radius:35px;overflow:hidden;
background:rgba(255,255,255,0.06);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);
display:grid;grid-template-columns:1fr 1fr;
}
@media(min-width:1024px){.contact-wrap{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}}
@media(max-width:768px){.contact-wrap{grid-template-columns:1fr;}}
@media(max-width:360px){.profile-image-card{padding:32px 14px;}.hero-btn-primary {padding:10px !important;}}
.contact-info{
padding:48px 40px;
background:linear-gradient(135deg,rgba(139,92,246,0.12),rgba(34,211,238,0.05));
}
.contact-form-side{padding:48px 40px;}
@media(max-width:768px){.contact-info,.contact-form-side{padding:32px 24px;}}
.form-field{position:relative;margin-bottom:18px;}
.form-field svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);pointer-events:none;opacity:.5;}
.form-field.textarea-field svg{top:16px;transform:none;}
.form-input{
width:100%;background:rgba(255,255,255,0.05);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);
border-radius:12px;padding:13px 14px 13px 42px;
color:white;font-size:14px;font-family:Inter;outline:none;transition:.2s;
}
.form-input::placeholder{color:rgba(255,255,255,0.3);}
.form-input:focus{
box-shadow:inset 0 0 0 1px rgba(139,92,246,0.7),0 0 0 3px rgba(139,92,246,0.1);
background:rgba(139,92,246,0.06);
}
textarea.form-input{padding-top:13px;resize:none;}

/* service cards */

.service-card{
position:relative;
padding:40px 36px;
border-radius:28px;
background:rgba(255,255,255,0.05);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.07),0 8px 40px rgba(0,0,0,0.4);
overflow:hidden;
transition:transform .35s,box-shadow .35s;
}
@media(min-width:1024px){.service-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}}

.service-card::before{
content:'';
position:absolute;
top:0;left:0;right:0;
height:3px;
}

.service-card::after{
content:'';
position:absolute;
bottom:-80px;right:-80px;
width:200px;height:200px;
border-radius:50%;
opacity:0;
transition:opacity .4s;
pointer-events:none;
}

.service-card:nth-child(1)::before{background:linear-gradient(90deg,#8B5CF6,#22D3EE);}
.service-card:nth-child(2)::before{background:linear-gradient(90deg,#22D3EE,#8B5CF6);}
.service-card:nth-child(3)::before{background:linear-gradient(90deg,#EC4899,#8B5CF6);}

.service-card:nth-child(1)::after{background:radial-gradient(circle,rgba(139,92,246,.18),transparent 70%);}
.service-card:nth-child(2)::after{background:radial-gradient(circle,rgba(34,211,238,.15),transparent 70%);}
.service-card:nth-child(3)::after{background:radial-gradient(circle,rgba(236,72,153,.15),transparent 70%);}

.service-card:hover::after{opacity:1;}

.service-card:nth-child(1):hover{
transform:translateY(-8px);
box-shadow:inset 0 0 0 1px rgba(139,92,246,0.3),0 24px 60px rgba(139,92,246,0.25);
}
.service-card:nth-child(2):hover{
transform:translateY(-8px);
box-shadow:inset 0 0 0 1px rgba(34,211,238,0.3),0 24px 60px rgba(34,211,238,0.2);
}
.service-card:nth-child(3):hover{
transform:translateY(-8px);
box-shadow:inset 0 0 0 1px rgba(236,72,153,0.3),0 24px 60px rgba(236,72,153,0.2);
}

.service-icon{
width:64px;
height:64px;
border-radius:18px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:28px;
}

.service-num{
position:absolute;
top:32px;right:32px;
font-size:64px;
font-weight:900;
line-height:1;
opacity:0.04;
pointer-events:none;
letter-spacing:-2px;
}

/* stats */

.stat-card{
text-align:center;
padding:40px 20px;
position:relative;
}

.stat-card+.stat-card::before{
content:'';
position:absolute;
left:0;top:20%;bottom:20%;
width:1px;
background:linear-gradient(to bottom,transparent,rgba(255,255,255,0.1),transparent);
}

@media(max-width:768px){
.stat-card+.stat-card::before{
left:20%;right:20%;top:0;bottom:auto;
width:auto;height:1px;
background:linear-gradient(to right,transparent,rgba(255,255,255,0.1),transparent);
}
}

.stat-num{
font-size:clamp(2.5rem,6vw,4rem);
font-weight:800;
background:linear-gradient(135deg,#8B5CF6,#ee4622);
-webkit-background-clip:text;
color:transparent;
line-height:1;
}

/* parallax object */

.parallax{
transform:translateY(0px);
transition:transform .1s linear;
}
@media(min-width:1024px){.parallax{will-change:transform;}}

/* buttons */

.btn{
background:linear-gradient(135deg,#8B5CF6,#22D3EE);
padding:14px 28px;
border-radius:12px;
font-weight:600;
color:black;
}

/* glow button */
.btn-glow{
background:linear-gradient(135deg,#8b5cf6,#06b6d4);
box-shadow:0 0 25px rgba(139,92,246,.6);
transition:.3s;
}

.btn-glow:hover{
box-shadow:0 0 45px rgba(139,92,246,1);
transform:translateY(-3px);
}

/* hero buttons */
.hero-btn-primary{
display:inline-flex;
align-items:center;
gap:8px;
padding:10px 20px;
border-radius:12px;
font-size:13px;
font-weight:600;
color:#fff;
background:rgba(236,72,153,0.15);
box-shadow:inset 0 0 0 1px rgba(236,72,153,0.4),0 0 18px rgba(236,72,153,0.25);
transition:transform .25s,box-shadow .25s,background .25s;
}
.hero-btn-primary:hover{
transform:translateY(-2px);
background:rgba(236,72,153,0.22);
box-shadow:inset 0 0 0 1px rgba(236,72,153,0.7),0 0 32px rgba(236,72,153,0.45);
}

.hero-btn-ghost{
display:inline-flex;
align-items:center;
gap:8px;
padding:10px 20px;
border-radius:12px;
font-size:13px;
font-weight:600;
color:rgba(255,255,255,0.7);
background:rgba(255,255,255,0.04);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.1);
transition:transform .25s,box-shadow .25s,color .25s,background .25s;
}
.hero-btn-ghost:hover{
transform:translateY(-2px);
color:#fff;
background:rgba(255,255,255,0.08);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.2);
}

/* mobile menu */

.mobile-menu{
position:fixed;
top:0;right:0;
width:300px;height:100vh;
background:rgba(11,15,25,0.98);
backdrop-filter:blur(24px);
-webkit-backdrop-filter:blur(24px);
box-shadow:-4px 0 40px rgba(0,0,0,0.6);
display:flex;
flex-direction:column;
align-items:flex-start;
justify-content:flex-start;
padding:72px 20px 40px;
gap:4px;
transform:translateX(100%);
transition:transform .35s cubic-bezier(.77,0,.18,1);
z-index:9999;
}

.mobile-menu.active{
transform:translateX(0);
}

.mobile-menu a{
font-size:14px;
font-weight:500;
color:rgba(255,255,255,0.6);
padding:10px 14px;
width:100%;
border-radius:10px;
transition:.2s;
display:flex;
align-items:center;
gap:10px;
}

.mobile-menu a:hover{color:#fff;background:rgba(255,255,255,0.06);}

.mobile-menu .menu-divider{
width:100%;height:1px;
background:rgba(255,255,255,0.06);
margin:6px 0;
}

.menu-close{
position:absolute;
top:16px;right:16px;
width:36px;height:36px;
border-radius:50%;
background:rgba(255,255,255,0.08);
box-shadow:inset 0 0 0 1px rgba(255,255,255,0.2);
display:flex;align-items:center;justify-content:center;
cursor:pointer;
transition:.2s;
z-index:10000;
}
.menu-close:hover{background:rgba(139,92,246,0.5);}

/* nav active */
.nav-link{
color:rgba(255,255,255,0.6);
}
.nav-link::after{
content:'';
position:absolute;
bottom:-2px;left:50%;right:50%;
height:2px;
border-radius:2px;
background:linear-gradient(90deg,#8B5CF6,#22D3EE);
transition:left .25s,right .25s;
}
.nav-link.active{
color:#fff;
}
.nav-link.active::after{
left:12px;right:12px;
}

/* mouse glow */
.cursor-glow{
position:fixed;
width:500px;
height:500px;
border-radius:50%;
pointer-events:none;
background:radial-gradient(circle,rgba(139,92,246,.07) 0%,transparent 65%);
z-index:0;
transform:translate(-50%,-50%);
}

/* ============================== GLOBAL BLOCK ============================== */

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0B0F19;color:#fff;overflow-x:hidden}a{text-decoration:none;color:inherit}.glass{background:rgba(255,255,255,.05);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 8px 32px rgba(0,0,0,.3);border-radius:28px}.gradient{background:linear-gradient(135deg,#8B5CF6,#ee4622);-webkit-background-clip:text;background-clip:text;color:transparent}.blob{position:fixed;border-radius:50%;filter:blur(120px);opacity:.25;z-index:-1;pointer-events:none}.blob1{width:400px;height:400px;background:#8B5CF6;top:-100px;left:-80px}.blob2{width:350px;height:350px;background:#22D3EE;bottom:-100px;right:-60px}.wrap{max-width:1150px;margin:auto;padding:0 22px}.nav{position:fixed;top:8px;left:0;right:0;z-index:50;padding:0 12px}.nav-inner{max-width:1150px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:12px 20px}.logo{height:40px;width:auto}.navlinks{display:flex;gap:4px;align-items:center;color:#cbd5e1}.navlinks a{padding:9px 13px;border-radius:10px;font-size:14px}.navlinks a:hover{background:rgba(255,255,255,.06);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;font-size:14px;font-weight:700;transition:.2s;border:1px solid rgba(236,72,153,.45);background:rgba(236,72,153,.13)}.btn:hover{transform:translateY(-2px);background:rgba(236,72,153,.2)}.btn.secondary{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.05)}.eyebrow{display:inline-block;color:#a5b4fc;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;margin-bottom:16px}.hero h1{font-size:clamp(2.5rem,6vw,4.8rem);line-height:1.05;margin:0 auto 22px;max-width:950px}.hero p{max-width:780px;margin:0 auto 28px;color:#9ca3af;font-size:18px;line-height:1.75}.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.section{padding:70px 0}.section h2{text-align:center;font-size:clamp(2rem,4vw,3rem);margin:0 0 14px}.lead{text-align:center;max-width:760px;margin:0 auto 40px;color:#9ca3af;line-height:1.75}.grid{display:grid;grid-template-columns:repeat(3,1fr);}.card{padding:28px}.card h3{margin:0 0 10px;font-size:20px}.card p{margin:0;color:#9ca3af;line-height:1.7}.icon{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:rgba(139,92,246,.12);box-shadow:inset 0 0 0 1px rgba(139,92,246,.22);margin-bottom:18px}.list{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none;color:#cbd5e1}.list li:before{content:'✓';color:#a78bfa;font-weight:800;margin-right:10px}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.cta{padding:45px;text-align:center}.cta p{color:#9ca3af;max-width:680px;margin:12px auto 25px;line-height:1.7}.footer{padding:35px 0 50px;color:#64748b;text-align:center;font-size:13px}.crumb{color:#94a3b8;font-size:13px;margin-bottom:18px}.mobile-note{display:none}@media(max-width:850px){.navlinks{display:none}.grid,.split{grid-template-columns:1fr}.hero{padding-top:135px}.mobile-note{display:block}.hero p{font-size:16px}.card{padding:23px}}

/* ============================== GLOBAL BLOCK ============================== */

/* Shared ArtsByPraveen page system */
.hero h1, main .hero h1 {
  font-size:clamp(2.5rem,6vw,4.8rem);
  line-height:1.05;
  font-weight:700;
  /* text-align:center; */
  max-width:1000px;
  margin:0 auto 22px;
}
.hero-btn-primary,.btn {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 20px;border-radius:12px;font-size:13px;font-weight:600;
  color:#fff;background:rgba(236,72,153,0.15);
  box-shadow:inset 0 0 0 1px rgba(236,72,153,0.4),0 0 18px rgba(236,72,153,0.25);
  transition:transform .25s,box-shadow .25s,background .25s;
}
.hero-btn-primary:hover,.btn:hover {
  transform:translateY(-2px);background:rgba(236,72,153,0.22);
  box-shadow:inset 0 0 0 1px rgba(236,72,153,0.7),0 0 32px rgba(236,72,153,0.45);
}
.hero-btn-ghost,.btn.secondary {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 20px;border-radius:12px;font-size:13px;font-weight:600;
  color:rgba(255,255,255,0.7);background:rgba(255,255,255,0.04);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.1);
  transition:transform .25s,box-shadow .25s,color .25s,background .25s;
}
.hero-btn-ghost:hover,.btn.secondary:hover {
  transform:translateY(-2px);color:#fff;background:rgba(255,255,255,0.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.2);
}
.actions { display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap; }
.cta {
  background:rgba(255,255,255,0.05)!important;
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.04),0 8px 32px rgba(0,0,0,0.3);
  border-radius:35px;
}
.cta h2 { color:#fff; }
.cta p { color:rgba(255,255,255,0.6); }
.pcard-btn {
  background:rgba(236,72,153,0.15)!important;color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(236,72,153,0.4),0 0 18px rgba(236,72,153,0.25);
}
.pcard-btn:hover { background:rgba(236,72,153,0.22)!important;transform:translateY(-2px); }
.wa-btn { background:rgba(37,211,102,0.12)!important;color:#25D366!important; }

/* ============================== GLOBAL BLOCK ============================== */

/* === Shared inner-page system: matches homepage hero/buttons === */
.hero-btn-primary,.hero-btn-ghost{min-height:40px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:12px;font-size:13px;font-weight:600;line-height:20px;text-decoration:none;white-space:nowrap;}
.hero-btn-primary{color:#fff;background:rgba(236,72,153,.15);box-shadow:inset 0 0 0 1px rgba(236,72,153,.4),0 0 18px rgba(236,72,153,.25);transition:transform .25s,box-shadow .25s,background .25s;}
.hero-btn-primary:hover{transform:translateY(-2px);background:rgba(236,72,153,.22);box-shadow:inset 0 0 0 1px rgba(236,72,153,.7),0 0 32px rgba(236,72,153,.45);color:#fff;}
.hero-btn-ghost{color:rgba(255,255,255,.7);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:transform .25s,box-shadow .25s,color .25s,background .25s;}
.hero-btn-ghost:hover{transform:translateY(-2px);color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);}
.inner-hero{text-align:center;min-height:60vh;display:flex;align-items:center;justify-content:center;padding:150px 24px 80px;position:relative;overflow:hidden;}
.inner-hero .hero-copy{position:relative;z-index:1;max-width:820px;margin:auto;}
.inner-hero h1{font-size:clamp(2.8rem,7vw,5rem);font-weight:700;line-height:1.08;text-align:center;margin:0 0 22px;}
.inner-hero .hero-lead{color:rgba(255,255,255,.45);font-size:16px;line-height:1.7;max-width:650px;margin:0 auto 34px;}
.inner-hero .hero-actions{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;}
.inner-cta{margin:40px auto 80px;max-width:1152px;padding:0 24px;}
.inner-cta-box{position:relative;overflow:hidden;text-align:center;padding:64px 28px;border-radius:24px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 20px 60px rgba(0,0,0,.18);}
.inner-cta-box:before{content:"";position:absolute;width:420px;height:420px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(236,72,153,.12),transparent 68%);pointer-events:none;}
.inner-cta-box>*{position:relative;z-index:1;}
.inner-cta-box h2{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;margin-bottom:14px;}
.inner-cta-box p{color:rgba(255,255,255,.5);max-width:620px;margin:0 auto 28px;line-height:1.7;}
@media(max-width:767px){.inner-hero{min-height:56vh;padding:130px 20px 70px}.inner-hero h1{font-size:clamp(2.35rem,11vw,3.5rem)}.hero-btn-primary,.hero-btn-ghost{min-height:40px;padding:10px 18px}.inner-cta-box{padding:48px 20px}}

/* ============================== GLOBAL BLOCK ============================== */

.hero-actions{gap:16px!important;row-gap:14px!important}.hero-actions a{margin:0!important}@media(max-width:767px){.hero-actions{gap:12px!important;row-gap:12px!important}}

/* ============================== GLOBAL BLOCK ============================== */

/* FINAL SITE-WIDE CONSISTENCY */
.services-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:32px !important;
  align-items:stretch !important;
}
.services-grid .service-card{
  width:auto !important;
  min-width:0 !important;
  height:100% !important;
  min-height:390px;
}
.service-card > a{
  margin-top:auto !important;
  min-height:0 !important;
  width:auto !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  color:#a78bfa !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1.5 !important;
  white-space:normal !important;
  text-align:left !important;
  margin-top: 30px !important;
}
.service-card > a:hover{
  transform:none !important;
  color:#c4b5fd !important;
  background:transparent !important;
  box-shadow:none !important;
}
.hero-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  column-gap:18px !important;
  row-gap:14px !important;
}
.hero-actions > a + a,
.hero-actions > button + button{
  margin-left:0 !important;
}
.inner-cta-box .hero-actions{margin-top:30px !important;}

/* Floating WhatsApp button — same on every page */
.site-wa-float{
  position:fixed !important;
  right:28px !important;
  bottom:28px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#25D366 !important;
  color:#fff !important;
  z-index:99999 !important;
  box-shadow:0 4px 24px rgba(37,211,102,.5) !important;
  transition:transform .25s,box-shadow .25s !important;
  text-decoration:none !important;
}
.site-wa-float:hover{transform:scale(1.1) !important;box-shadow:0 6px 32px rgba(37,211,102,.8) !important;}
.site-wa-float svg{width:29px !important;height:29px !important;display:block !important;}

/* Contact form spacing and proportions */
.contact-form-side{padding:42px 38px !important;}
.contact-form-side h2{margin:0 0 8px !important;}
.contact-form-side > p{margin:0 0 24px !important;line-height:1.6 !important;}
.contact-form-side .form-field{margin-bottom:14px !important;}
.contact-form-side .form-input{min-height:58px !important;box-sizing:border-box !important;}
.contact-form-side textarea.form-input{min-height:140px !important;}
.contact-form-side #submitBtn{min-height:48px !important;margin-top:6px !important;width:100% !important;}
@media(max-width:768px){
  .services-grid{grid-template-columns:1fr !important;gap:18px !important;}
  .services-grid .service-card{min-height:0 !important;}
  .site-wa-float{right:18px !important;bottom:18px !important;width:54px !important;height:54px !important;}
  .site-wa-float svg{width:27px !important;height:27px !important;}
  .contact-form-side{padding:32px 24px !important;}
  .contact-form-side .form-field{margin-bottom:13px !important;}
  .contact-form-side .form-input{min-height:54px !important;}
  .contact-form-side textarea.form-input{min-height:130px !important;}
}

/* Homepage responsive layout refinements */
@media (max-width: 1024px) {
  .home-hero {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    gap: 34px;
  }
  .home-hero-content,
  .home-hero-image {
    width: 100%;
  }
  .home-hero-content {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .home-hero-image {
    max-width: 760px;
    margin: 0 auto;
  }
  .home-hero-image img {
    display: block;
    width: 100%;
    height: auto;
  }

  .home-about-layout {
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    gap: 42px !important;
  }
  .home-about-layout > div {
    width: 100%;
  }
}

/* Header switches to mobile navigation at 860px */
@media (max-width: 860px) {
  nav .md\:flex { display: none !important; }
  nav #menuBtn.md\:hidden,
  nav #menuBtn { display: block !important; }
}

/* Footer legal links are normal links, never list bullets */
footer a { list-style: none; }


/* SITE-WIDE COMPONENT CONSISTENCY — DO NOT MIX RADII */
.site-nav-panel{border-radius:35px !important;}
footer > .glass{border-radius:28px !important;}
/* Homepage hero keeps the original 1200px content width. */
.hero{max-width:1200px;}


/* Mobile performance refinements — preserve the visual design while reducing paint/network cost. */
@media (max-width: 768px) {
  .blob { filter: blur(40px); opacity: .16; }
  .marquee-track { animation-duration: 38s; }
}
@media (prefers-reduced-motion: reduce) {
  .marquee-track, .marquee-track.reverse, .cursor-blink { animation: none !important; }
}


/* Accessible visually-hidden labels */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
