﻿/* Local readability and responsive refinements; original animation rules remain intact. */
body { color: #242424; }
#about .card-text.info { color: #454545; font-size: 16px; line-height: 1.8; font-weight: 400; }
.home-banner .image-holder { position: relative; }
.home-banner .image-holder::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, transparent 24%, rgba(12,18,22,.12) 43%, rgba(12,18,22,.55) 70%, rgba(12,18,22,.45)); }
.home-banner .heading-area { width: 53%; right: 0; top: 50%; transform: translateY(-50%); padding: 24px; }
.home-banner .container > .row { position: relative; }
.home-banner .heading { font-size: clamp(36px,4.5vw,68px); line-height: 1.15; font-weight: 300; }
.home-banner .text { font-weight: 400; }
.home-banner .heading, .home-banner .text { color: #fff; text-shadow: 0 2px 8px rgba(0,0,0,.35); }
.home-banner .btn-trans-white { background: rgba(12,18,22,.35); }
.portfolio-sec .heading-area.long-area { top: auto; transform: none; width: 100%; margin-top: 180px; padding: 28px 20px; background: #0061d4; }
.portfolio-sec .long-area .heading { font-size: clamp(30px,3vw,44px); line-height: 1.25; color: #fff; overflow-wrap: normal; }
.client-sec .client-sec-overlay { opacity: 1; background: rgba(210,212,0,.94); }
.client-sec .client-container .client-img-overlay .client-text,
.client-sec .client-container .client-img-overlay .client-symbol-qoute i { color: #202300; font-weight: 400; }
.client-sec .client-container .client-detail { width: max-content; max-width: calc(100% - 40px); padding: 20px 32px; border-radius: 3px; background: rgba(255,255,255,.96); color: #242424; }
.client-sec .client-container .client-detail .client-name { font-weight: 500; }
.client-sec .client-container .client-detail .client-s-media { top: auto; left: auto; margin-bottom: 0; }
.contact-sec .form-control::placeholder { color: #454545 !important; opacity: 1; }
.btn { text-transform: none; font-weight: 400; }
a:focus-visible, .form-control:focus-visible { outline: 2px solid #0054b7; outline-offset: 5px; }
@media (max-width: 991px) {
 .portfolio-sec .heading-area.long-area { margin-top: 0; padding: 20px 15px; }
 .portfolio-sec .long-area .heading { margin: 0; padding: 12px 0; }
}
@media (max-width: 767px) {
 .home-banner .heading-area { top: 50%; right: 0; width: 54%; padding: 12px; transform: translateY(-50%); }
 .home-banner .heading { font-size: 24px; }
 .home-banner .text { font-size: 15px !important; line-height: 1.6; }
 .home-banner .image-holder img { width: 100%; min-height: 310px; object-fit: cover; }
 .home-banner .btn.btn-medium { font-size: 12px; padding: 10px 14px; }
 .home-banner .image-holder::after { background: linear-gradient(90deg,transparent 20%,rgba(12,18,22,.18) 42%,rgba(12,18,22,.55) 60%,rgba(12,18,22,.5)); }
 .contact-details h2 { font-size: 38px; }
 .skills .padding-sm { padding-left: 20px; padding-right: 20px; }
 .client-sec .client-container { padding-top: 340px; padding-bottom: 340px; }
}
/* Anchor the hero copy to the full image row, not its empty Bootstrap column. */
.home-banner .container > .row > div:first-child { position: static; }
