/* ============================================================
   I&T WebDesign - Stage 11 visual polish
   SVG icons, portfolio filters, final UI details
   ============================================================ */

.itwd-svg-icon {
    width: 1em;
    height: 1em;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 3.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.big-icon {
    font-size: 57px;
    color: var(--blue-900);
}

.big-icon .itwd-svg-icon {
    filter: drop-shadow(0 9px 12px rgba(7, 59, 130, .16));
}

.icon-card,
.mini-card {
    position: relative;
    overflow: hidden;
}

.icon-card::before,
.mini-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: linear-gradient(90deg, var(--blue-900), var(--blue-500));
    opacity: 0;
    transition: .2s ease;
}

.icon-card:hover::before,
.mini-card:hover::before {
    opacity: 1;
}

.icon-card:hover .big-icon,
.mini-card:hover .big-icon {
    color: var(--orange-600);
}

.feature-circle {
    color: #ffffff;
}

.feature-circle .itwd-svg-icon {
    width: 31px;
    height: 31px;
}

.portfolio-grid .project-card {
    transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease;
}

.portfolio-grid .project-card.is-hidden {
    display: none;
}

.filter-pills button {
    transition: .18s ease;
}

.filter-pills button:hover {
    border-color: var(--blue-800);
    color: var(--blue-800);
}

.filter-pills button.active:hover {
    color: #fff;
}

.project-img {
    position: relative;
}

.project-img::after {
    content: "I&T WebDesign";
    position: absolute;
    left: 16px;
    top: 14px;
    color: #fff;
    background: rgba(3, 27, 61, .78);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 11px;
    font-weight: 950;
}

.pricing-card {
    transition: transform .18s ease, box-shadow .18s ease;
}

.pricing-card:hover {
    transform: translateY(-4px);
}

.pricing-card.featured:hover {
    transform: translateY(-10px);
}

.contact-form input:focus,
.contact-form textarea:focus {
    outline: none;
    border-color: var(--blue-700);
    box-shadow: 0 0 0 4px rgba(27, 140, 255, .13);
}

.language-switch {
    box-shadow: 0 8px 18px rgba(5, 31, 72, .08);
}

.admin-sidebar nav a[href="/admin/pages/system_tools.php"] {
    margin-top: 14px;
    background: rgba(255, 106, 0, .15);
    color: #fff2e7;
}

@media (max-width: 680px) {
    .big-icon {
        font-size: 50px;
    }

    .pricing-card:hover,
    .pricing-card.featured:hover {
        transform: none;
    }
}
