/* ===================================================================
   EANYS BİLİŞİM — Tema Stilleri
   =================================================================== */

:root{
  --ink:          #070B18;
  --ink-2:        #0D1326;
  --ink-3:        #141B35;
  --ink-4:        #1C2543;
  --surface:      #FFFFFF;
  --surface-soft: #F5F7FC;
  --surface-alt:  #EEF1FA;
  --border:       #E3E7F3;
  --border-dark:  rgba(255,255,255,.09);
  --text:         #121633;
  --text-muted:   #636B8C;
  --text-light:   #AEB6D6;

  --primary:      #4F46E5;
  --primary-600:  #4338CA;
  --primary-700:  #3730A3;
  --primary-light:#7C74F5;
  --accent:       #06B6D4;
  --accent-2:     #22D3EE;
  --success:      #16C784;
  --warn:         #F59E0B;

  --gradient-brand: linear-gradient(135deg, #4F46E5 0%, #7C3AED 52%, #06B6D4 100%);
  --gradient-brand-2: linear-gradient(120deg, #06B6D4 0%, #4F46E5 100%);
  --gradient-dark: linear-gradient(180deg, #0A0F22 0%, #070B18 100%);

  --radius-sm: 10px;
  --radius: 18px;
  --radius-lg: 28px;
  --shadow-sm: 0 2px 10px rgba(18,22,51,.06);
  --shadow: 0 10px 30px rgba(18,22,51,.08);
  --shadow-lg: 0 25px 60px -10px rgba(18,22,51,.18);
  --shadow-glow: 0 0 0 1px rgba(79,70,229,.12), 0 20px 45px -15px rgba(79,70,229,.35);

  --container-pad: 1.25rem;
}

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter', system-ui, -apple-system, sans-serif;
  color:var(--text);
  background:var(--surface);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3,h4,h5,h6{
  font-family:'Space Grotesk', 'Inter', sans-serif;
  font-weight:700;
  color:var(--text);
  letter-spacing:-.01em;
}

a{text-decoration:none; color:inherit;}
img{max-width:100%;}
.text-muted{color:var(--text-muted) !important;}
.text-light-muted{color:var(--text-light) !important;}

.container{max-width:1240px;}

/* ===== Scrollbar ===== */
::-webkit-scrollbar{width:10px;}
::-webkit-scrollbar-track{background:var(--surface-soft);}
::-webkit-scrollbar-thumb{background:var(--primary-light); border-radius:10px;}

/* ===== Buttons ===== */
.btn{font-weight:600; border-radius:var(--radius-sm); padding:.7rem 1.4rem; font-size:.95rem; border:0; transition:.25s ease;}
.btn-lg{padding:.9rem 1.9rem; font-size:1.02rem;}

.btn-brand{
  background:var(--gradient-brand);
  color:#fff;
  box-shadow:0 10px 25px -8px rgba(79,70,229,.55);
}
.btn-brand:hover{color:#fff; transform:translateY(-2px); box-shadow:0 16px 32px -8px rgba(79,70,229,.6);}

.btn-outline-brand{
  background:transparent;
  color:var(--text);
  border:1.5px solid var(--border);
}
.btn-outline-brand:hover{border-color:var(--primary); color:var(--primary); background:rgba(79,70,229,.05);}

.btn-outline-light-brand{
  background:transparent;
  color:#fff;
  border:1.5px solid rgba(255,255,255,.28);
}
.btn-outline-light-brand:hover{border-color:#fff; background:rgba(255,255,255,.08); color:#fff;}

.btn-white-soft{
  background:#fff;
  color:var(--primary-700);
}
.btn-white-soft:hover{color:var(--primary-700); transform:translateY(-2px); box-shadow:0 14px 30px -10px rgba(0,0,0,.25);}

/* ===== Top utility bar ===== */
.topbar{
  background:var(--ink);
  color:var(--text-light);
  font-size:.84rem;
  padding:.5rem 0;
  border-bottom:1px solid var(--border-dark);
}
.topbar a{color:var(--text-light); transition:.2s;}
.topbar a:hover{color:#fff;}
.topbar i{color:var(--accent-2); margin-right:.3rem;}
.topbar .social-links a{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%;
  background:rgba(255,255,255,.06); margin-left:.3rem; font-size:.78rem;
}
.topbar .social-links a:hover{background:var(--gradient-brand); color:#fff;}
.topbar .lang-switch a.active{color:var(--accent-2); font-weight:700;}

/* ===== Navbar ===== */
#mainNav{
  background:rgba(7,11,24);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:.65rem 0;
  transition:.3s;
  border-bottom:1px solid var(--border-dark);
}
#mainNav.scrolled{
  background:rgba(7,11,24,.94);
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.navbar-brand{display:flex; align-items:center; gap:.55rem; font-family:'Space Grotesk',sans-serif;}
.navbar-logo-img{height:34px; width:auto; display:block;}
.brand-mark{
  display:inline-flex; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:12px;
  background:var(--gradient-brand);
  color:#fff; font-weight:800; font-size:1.05rem; letter-spacing:-.02em;
  box-shadow:0 8px 20px -6px rgba(79,70,229,.6);
}
.brand-text{display:flex; flex-direction:column; line-height:1.05;}
.brand-text .brand-name{color:#fff; font-weight:800; font-size:1.2rem; letter-spacing:-.01em;}
.brand-text .brand-sub{color:var(--text-light); font-size:.66rem; letter-spacing:.06em; text-transform:uppercase; font-weight:600;}

.navbar .nav-link{
  color:#DDE1F2 !important;
  font-weight:500;
  font-size:.95rem;
  padding:.55rem 1rem !important;
  border-radius:8px;
  transition:.2s;
}
.navbar .nav-link:hover, .navbar .nav-link.active{color:#fff !important; background:rgba(255,255,255,.07);}
.navbar-toggler{border:0; box-shadow:none !important;}
.navbar-toggler-icon{filter:invert(1) brightness(2);}

.dropdown-menu{
  background:var(--ink-3);
  border:1px solid var(--border-dark);
  border-radius:var(--radius-sm);
  padding:.5rem;
  box-shadow:var(--shadow-lg);
}
.dropdown-item{color:#DDE1F2; border-radius:8px; padding:.55rem .8rem; font-size:.92rem;}
.dropdown-item:hover, .dropdown-item:focus{background:var(--gradient-brand); color:#fff;}

/* ===== Hero ===== */
.hero{
  position:relative;
  background:var(--gradient-dark);
  padding:9.5rem 0 5rem;
  overflow:hidden;
  isolation:isolate;
}
.hero-glow{
  position:absolute; border-radius:50%; filter:blur(70px); z-index:-1; opacity:.55;
}
.hero-glow-1{width:460px; height:460px; background:#4F46E5; top:-140px; left:-120px;}
.hero-glow-2{width:420px; height:420px; background:#06B6D4; bottom:-160px; right:-100px;}
.hero-grid{
  position:absolute; inset:0; z-index:-1;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 20%, #000 40%, transparent 100%);
}
.min-vh-hero{min-height:56vh;}
.eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  color:var(--accent-2); font-weight:600; font-size:.85rem;
  background:rgba(6,182,212,.1); border:1px solid rgba(6,182,212,.25);
  padding:.45rem 1rem; border-radius:50px; margin-bottom:1.4rem;
}
.hero-title{
  color:#fff; font-size:clamp(2.4rem,4.6vw,3.8rem); font-weight:800;
  line-height:1.08; letter-spacing:-.02em; margin-bottom:1.3rem;
}
.hero-title .grad{
  background:var(--gradient-brand-2);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero-text{color:var(--text-light); font-size:1.08rem; max-width:560px; line-height:1.75;}

.hero-visual{position:relative; height:420px;}
.hero-card{
  position:absolute; background:var(--ink-3); border:1px solid var(--border-dark);
  border-radius:var(--radius); padding:1.3rem 1.4rem; box-shadow:var(--shadow-lg);
  backdrop-filter:blur(6px);
}
.hero-card i{font-size:1.5rem; color:var(--accent-2);}
.hero-card .hc-title{color:#fff; font-weight:700; font-size:.95rem; margin:.5rem 0 .15rem;}
.hero-card .hc-text{color:var(--text-light); font-size:.8rem; margin:0;}
.hero-card-main{
  inset:10% 8% 10% 8%;
  background:var(--gradient-brand);
  border:0; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center;
}
.hero-card-main .hc-big{font-size:3.4rem; font-weight:800; color:#fff; line-height:1;}
.hero-card-main .hc-cap{color:rgba(255,255,255,.85); font-weight:600; letter-spacing:.04em; text-transform:uppercase; font-size:.78rem; margin-top:.4rem;}
.hero-card-float-1{top:0; left:0; width:190px; animation:float1 6s ease-in-out infinite;}
.hero-card-float-2{bottom:4%; right:0; width:200px; animation:float2 7s ease-in-out infinite;}
@keyframes float1{0%,100%{transform:translateY(0);} 50%{transform:translateY(-14px);}}
@keyframes float2{0%,100%{transform:translateY(0);} 50%{transform:translateY(14px);}}

.stats-strip{
  position:relative; margin-top:4.5rem; background:rgba(255,255,255,.04);
  border:1px solid var(--border-dark); border-radius:var(--radius);
  padding:2rem; backdrop-filter:blur(10px);
}
.stat-number{font-size:2.3rem; font-weight:800; color:#fff; font-family:'Space Grotesk',sans-serif;}
.stat-number .grad{background:var(--gradient-brand-2); -webkit-background-clip:text; background-clip:text; color:transparent;}
.stat-label{color:var(--text-light); font-size:.86rem; font-weight:500; margin-top:.25rem;}

/* small inner hero (sub pages) */
.page-hero{
  position:relative; background:var(--gradient-dark); padding:8.5rem 0 4rem; overflow:hidden; isolation:isolate;
}
.page-hero .hero-glow-1{top:-120px; left:-100px;}
.page-hero .hero-glow-2{bottom:-150px; right:-80px;}
.breadcrumb-ghost{color:var(--text-light); font-size:.9rem;}
.breadcrumb-ghost a{color:var(--text-light);}
.breadcrumb-ghost a:hover{color:#fff;}
.breadcrumb-ghost .sep{margin:0 .5rem; opacity:.5;}
.page-hero h1{color:#fff; font-size:clamp(2rem,3.4vw,2.8rem); margin-top:.6rem;}
.page-hero p{color:var(--text-light); max-width:620px; margin-top:.8rem;}

/* ===== Sections ===== */
.section{padding:5.5rem 0;}
.section-soft{background:var(--surface-soft);}
.section-dark{background:var(--gradient-dark); position:relative; isolation:isolate; overflow:hidden;}
.section-dark h2, .section-dark h3{color:#fff;}

.section-tag{
  display:inline-flex; align-items:center; gap:.4rem;
  color:var(--primary); font-weight:700; font-size:.8rem; letter-spacing:.06em; text-transform:uppercase;
  background:rgba(79,70,229,.08); padding:.4rem .9rem; border-radius:50px; margin-bottom:1rem;
}
.section-tag-light{color:var(--accent-2); background:rgba(6,182,212,.12);}
.section-heading{max-width:680px; margin-inline:auto;}
.section-heading h2{font-size:clamp(1.7rem,2.6vw,2.3rem); margin-bottom:.8rem;}
.section-heading p{color:var(--text-muted); font-size:1.05rem;}

/* ===== Service / Product Cards ===== */
.feature-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  padding:2rem 1.8rem; height:100%; transition:.3s ease; position:relative; overflow:hidden;
}
.feature-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent;}
.feature-icon{
  width:58px; height:58px; border-radius:16px; display:flex; align-items:center; justify-content:center;
  background:rgba(79,70,229,.08); color:var(--primary); font-size:1.5rem; margin-bottom:1.2rem;
  transition:.3s;
}
.feature-card:hover .feature-icon{background:var(--gradient-brand); color:#fff;}
.feature-card h3{font-size:1.15rem; margin-bottom:.6rem;}
.feature-card p{color:var(--text-muted); font-size:.93rem; margin-bottom:0; line-height:1.65;}
.feature-link{display:inline-flex; align-items:center; gap:.4rem; color:var(--primary); font-weight:600; font-size:.9rem; margin-top:1rem;}
.feature-link i{transition:.2s;}
.feature-card:hover .feature-link i{transform:translateX(3px);}

.card-cta{
  background:var(--gradient-brand); color:#fff; border:0;
  display:flex; flex-direction:column; justify-content:center;
}
.card-cta .feature-icon{background:rgba(255,255,255,.18); color:#fff;}
.card-cta p{color:rgba(255,255,255,.85);}
.card-cta .feature-link{color:#fff;}

/* Product card (grid, image/icon top) */
.product-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  overflow:hidden; height:100%; transition:.3s; display:flex; flex-direction:column;
}
.product-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-lg);}
.product-media{
  height:170px; display:flex; align-items:center; justify-content:center;
  background:var(--gradient-brand); position:relative; overflow:hidden;
}
.product-media::before{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(circle at 30% 30%, rgba(255,255,255,.25), transparent 55%);
}
.product-media i{font-size:3rem; color:#fff; position:relative; z-index:1;}
.product-body{padding:1.6rem; display:flex; flex-direction:column; flex:1;}
.product-badge{
  align-self:flex-start; background:rgba(79,70,229,.08); color:var(--primary);
  font-size:.72rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  padding:.3rem .7rem; border-radius:50px; margin-bottom:.7rem;
}
.product-body h3{font-size:1.1rem; margin-bottom:.5rem;}
.product-body p{color:var(--text-muted); font-size:.9rem; flex:1; line-height:1.6;}
.product-footer{display:flex; justify-content:space-between; align-items:center; margin-top:1.1rem; padding-top:1.1rem; border-top:1px solid var(--border);}
.product-footer .price{font-weight:700; color:var(--text); font-size:.95rem;}
.product-footer a{color:var(--primary); font-weight:600; font-size:.88rem; display:inline-flex; align-items:center; gap:.3rem;}

/* ===== Filter pills ===== */
.filter-row{display:flex; flex-wrap:wrap; gap:.6rem; justify-content:center; margin-bottom:3rem;}
.filter-pill{
  border:1px solid var(--border); background:var(--surface); color:var(--text-muted);
  font-weight:600; font-size:.88rem; padding:.55rem 1.2rem; border-radius:50px; cursor:pointer; transition:.2s;
}
.filter-pill:hover{border-color:var(--primary); color:var(--primary);}
.filter-pill.active{background:var(--gradient-brand); color:#fff; border-color:transparent; box-shadow:0 8px 20px -8px rgba(79,70,229,.55);}

/* ===== Process steps ===== */
.process-step{position:relative; text-align:center; padding:0 1rem;}
.process-num{
  width:62px; height:62px; border-radius:50%; margin:0 auto 1.2rem;
  display:flex; align-items:center; justify-content:center;
  background:var(--ink-3); color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.25rem;
  border:2px solid var(--primary-light);
}
.process-step h4{color:#fff; font-size:1.05rem; margin-bottom:.5rem;}
.process-step p{color:var(--text-light); font-size:.88rem;}
.process-line{position:absolute; top:31px; left:100%; width:100%; height:2px; background:linear-gradient(90deg, var(--primary-light), transparent); z-index:-1;}

/* ===== Check list ===== */
.check-list{list-style:none; padding:0; margin:0;}
.check-list li{display:flex; align-items:flex-start; gap:.7rem; margin-bottom:.8rem; color:var(--text); font-size:.97rem;}
.check-list i{color:var(--success); font-size:1.1rem; margin-top:.1rem;}

/* ===== About visual stack ===== */
.about-visual{position:relative; min-height:420px;}
.about-tile{
  position:absolute; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  box-shadow:var(--shadow); padding:1.4rem 1.5rem; width:230px;
}
.about-tile i{font-size:1.5rem; color:var(--primary); margin-bottom:.5rem;}
.about-tile h5{font-size:.95rem; margin-bottom:.3rem;}
.about-tile p{font-size:.8rem; color:var(--text-muted); margin:0;}
.about-tile-1{top:0; left:5%; z-index:2;}
.about-tile-2{top:18%; right:0; z-index:3; background:var(--gradient-brand); border:0;}
.about-tile-2 i, .about-tile-2 h5{color:#fff;}
.about-tile-2 p{color:rgba(255,255,255,.85);}
.about-tile-3{bottom:0; left:18%; z-index:1;}
.about-blob{
  position:absolute; width:340px; height:340px; border-radius:40% 60% 55% 45% / 50% 45% 55% 50%;
  background:linear-gradient(140deg, rgba(79,70,229,.12), rgba(6,182,212,.12));
  top:12%; left:22%; z-index:0;
}

/* ===== Stat band ===== */
.stat-band{background:var(--surface-soft); border-top:1px solid var(--border); border-bottom:1px solid var(--border);}
.stat-band .stat-number{color:var(--primary);}
.stat-band .stat-label{color:var(--text-muted);}

/* ===== Timeline (about) ===== */
.timeline{position:relative; padding-left:2rem; border-left:2px solid var(--border);}
.timeline-item{position:relative; padding-bottom:2.2rem;}
.timeline-item:last-child{padding-bottom:0;}
.timeline-item::before{
  content:""; position:absolute; left:-2.42rem; top:2px; width:14px; height:14px; border-radius:50%;
  background:var(--gradient-brand); box-shadow:0 0 0 4px rgba(79,70,229,.15);
}
.timeline-year{color:var(--primary); font-weight:800; font-family:'Space Grotesk',sans-serif; font-size:1.1rem;}
.timeline-item h4{font-size:1.02rem; margin:.3rem 0 .4rem;}
.timeline-item p{color:var(--text-muted); font-size:.92rem; margin:0;}

/* ===== Team ===== */
.team-card{text-align:center;}
.team-avatar{
  width:120px; height:120px; border-radius:50%; margin:0 auto 1.1rem;
  background:var(--gradient-brand); display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:2.4rem; font-weight:800; font-family:'Space Grotesk',sans-serif;
  box-shadow:0 14px 30px -10px rgba(79,70,229,.5);
}
.team-card h4{font-size:1.05rem; margin-bottom:.15rem;}
.team-card .team-role{color:var(--primary); font-size:.84rem; font-weight:600; margin-bottom:.6rem;}
.team-card .social-links a{
  display:inline-flex; width:32px; height:32px; border-radius:50%; align-items:center; justify-content:center;
  background:var(--surface-soft); color:var(--text-muted); margin:0 .2rem; font-size:.85rem; transition:.2s;
}
.team-card .social-links a:hover{background:var(--gradient-brand); color:#fff;}

/* ===== Logos / clients strip ===== */
.logo-strip{display:flex; align-items:center; justify-content:center; gap:3rem; flex-wrap:wrap; opacity:.6;}
.logo-strip span{font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.3rem; color:var(--text-muted);}

/* ===== Testimonials ===== */
.testi-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  padding:2rem; height:100%;
}
.testi-stars{color:var(--warn); font-size:.95rem; margin-bottom:1rem;}
.testi-card p{color:var(--text); font-size:.98rem; line-height:1.7; font-style:italic;}
.testi-person{display:flex; align-items:center; gap:.8rem; margin-top:1.3rem;}
.testi-avatar{
  width:46px; height:46px; border-radius:50%; background:var(--gradient-brand); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:700; font-family:'Space Grotesk',sans-serif;
}
.testi-person strong{font-size:.9rem; display:block;}
.testi-person span{font-size:.78rem; color:var(--text-muted);}

/* ===== CTA band ===== */
.cta-band{
  background:var(--gradient-brand); border-radius:var(--radius-lg); padding:3.2rem; position:relative; overflow:hidden; isolation:isolate;
}
.cta-band::before{
  content:""; position:absolute; width:300px; height:300px; border-radius:50%;
  background:rgba(255,255,255,.1); top:-100px; right:-60px;
}
.cta-band h2{color:#fff; margin-bottom:.6rem;}
.cta-band p{color:rgba(255,255,255,.85); margin-bottom:0;}

/* ===== FAQ ===== */
.accordion-item{border:1px solid var(--border); border-radius:var(--radius-sm) !important; margin-bottom:.9rem; overflow:hidden;}
.accordion-button{font-weight:600; font-size:.98rem; padding:1.1rem 1.3rem; background:var(--surface); color:var(--text);}
.accordion-button:not(.collapsed){color:var(--primary); background:rgba(79,70,229,.05); box-shadow:none;}
.accordion-button:focus{box-shadow:none; border-color:var(--border);}
.accordion-button::after{filter:none;}
.accordion-body{padding:0 1.3rem 1.2rem; color:var(--text-muted); font-size:.92rem; line-height:1.7;}

/* ===== Detail pages ===== */
.detail-media{
  border-radius:var(--radius-lg); background:var(--gradient-brand); min-height:360px;
  display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; isolation:isolate;
}
.detail-media::before{content:""; position:absolute; inset:0; background-image:radial-gradient(circle at 25% 20%, rgba(255,255,255,.3), transparent 55%);}
.detail-media i{font-size:6rem; color:#fff; position:relative; z-index:1;}
.detail-spec{
  background:var(--surface-soft); border-radius:var(--radius); padding:1.6rem;
}
.detail-spec dt{color:var(--text-muted); font-size:.82rem; font-weight:600; text-transform:uppercase; letter-spacing:.03em;}
.detail-spec dd{color:var(--text); font-weight:600; margin-bottom:.9rem;}
.tag-pill{
  display:inline-block; background:rgba(79,70,229,.08); color:var(--primary);
  font-size:.78rem; font-weight:700; padding:.35rem .8rem; border-radius:50px; margin:0 .3rem .3rem 0;
}
.related-sidebar .list-group-item{
  border:1px solid var(--border); border-radius:var(--radius-sm) !important; margin-bottom:.7rem;
  display:flex; align-items:center; gap:.8rem; padding:.8rem 1rem; transition:.2s;
}
.related-sidebar .list-group-item:hover{border-color:var(--primary); background:rgba(79,70,229,.04);}
.related-sidebar .ri-icon{
  width:40px; height:40px; border-radius:10px; background:rgba(79,70,229,.08); color:var(--primary);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.sidebar-box{background:var(--surface-soft); border-radius:var(--radius); padding:1.6rem;}
.sidebar-box h5{font-size:1rem; margin-bottom:1rem;}

/* ===== Contact ===== */
.contact-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  padding:1.8rem; height:100%; text-align:center; transition:.3s;
}
.contact-card:hover{transform:translateY(-5px); box-shadow:var(--shadow-lg);}
.contact-card .ci-icon{
  width:56px; height:56px; border-radius:16px; margin:0 auto 1rem; display:flex; align-items:center; justify-content:center;
  background:var(--gradient-brand); color:#fff; font-size:1.4rem;
}
.contact-card h4{font-size:1.02rem; margin-bottom:.5rem;}
.contact-card p{color:var(--text-muted); font-size:.9rem; margin:0;}
.contact-card a{color:var(--text-muted);}
.contact-card a:hover{color:var(--primary);}

.form-box{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:2.4rem; box-shadow:var(--shadow);}
.form-control, .form-select{
  border:1.5px solid var(--border); border-radius:var(--radius-sm); padding:.75rem 1rem; font-size:.95rem;
}
.form-control:focus, .form-select:focus{border-color:var(--primary); box-shadow:0 0 0 4px rgba(79,70,229,.1);}
.form-label{font-weight:600; font-size:.88rem; margin-bottom:.45rem;}

.map-frame{border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--border); min-height:340px;}
.map-frame iframe{width:100%; height:100%; min-height:340px; border:0; display:block;}

/* ===== Footer ===== */
.footer{background:var(--ink); color:var(--text-light); padding:4.5rem 0 0; position:relative; overflow:hidden;}
.footer h5{color:#fff; font-size:.95rem; font-weight:700; margin-bottom:1.2rem;}
.footer-links{list-style:none; padding:0; margin:0;}
.footer-links li{margin-bottom:.7rem; font-size:.9rem;}
.footer-links a{color:var(--text-light); transition:.2s;}
.footer-links a:hover{color:var(--accent-2); padding-left:3px;}
.footer-brand{display:flex; align-items:center; gap:.6rem;}
.footer-logo-img{height:100px; width:auto; display:block;}
.footer p.footer-desc{font-size:.9rem; line-height:1.7; max-width:320px;}
.social-links-footer a{
  display:inline-flex; width:36px; height:36px; border-radius:10px; align-items:center; justify-content:center;
  background:rgba(255,255,255,.06); color:var(--text-light); margin-right:.5rem; transition:.2s;
}
.social-links-footer a:hover{background:var(--gradient-brand); color:#fff;}
.footer hr{border-color:var(--border-dark); margin-top:3rem;}
.footer-bottom{padding:1.5rem 0; font-size:.84rem; color:var(--text-light);}
.footer-bottom a{color:var(--accent-2);}
.newsletter-input{
  background:rgba(255,255,255,.06); border:1px solid var(--border-dark); border-radius:var(--radius-sm) 0 0 var(--radius-sm);
  color:#fff; padding:.75rem 1rem; font-size:.9rem;
}
.newsletter-input::placeholder{color:var(--text-light);}
.newsletter-input:focus{outline:none; background:rgba(255,255,255,.1);}

/* ===== Misc widgets ===== */
.whatsapp-float{
  position:fixed; bottom:24px; left:24px; z-index:999;
  width:58px; height:58px; border-radius:50%; background:#25D366; color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:1.6rem;
  box-shadow:0 10px 25px rgba(37,211,102,.45); transition:.2s;
}
.whatsapp-float:hover{transform:scale(1.08); color:#fff;}

#backToTop{
  position:fixed; bottom:24px; right:24px; z-index:999;
  width:48px; height:48px; border-radius:50%; background:var(--gradient-brand); color:#fff; border:0;
  display:none; align-items:center; justify-content:center; font-size:1.1rem;
  box-shadow:0 10px 25px -6px rgba(79,70,229,.55); transition:.2s;
}
#backToTop.show{display:flex;}
#backToTop:hover{transform:translateY(-3px);}

[data-aos]{opacity:0; transform:translateY(22px); transition:opacity .6s ease, transform .6s ease;}
[data-aos].aos-in{opacity:1; transform:translateY(0);}

@media (max-width: 991.98px){
  .hero{padding:7.5rem 0 3rem;}
  .about-visual, .hero-visual{display:none;}
  .process-line{display:none;}
  .cta-band{padding:2.2rem 1.6rem; text-align:center;}
  .cta-band .text-lg-end{text-align:center !important; margin-top:1.2rem;}
}
