/*
 * Tema: GRID — İsviçre / brütalist ızgara.
 * Kalın çizgiler, blok renkler, büyük harfli teknik başlıklar, kaydırılmış gölgeler.
 */

.theme-grid {
    --line-w: 2px;
    --hard-shadow: 5px 5px 0 var(--c-text);
}

.theme-grid h1,
.theme-grid h2,
.theme-grid h3,
.theme-grid h4,
.theme-grid .h1,
.theme-grid .h2,
.theme-grid .h3,
.theme-grid .h4 {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -0.01em;
    line-height: 1;
}

.theme-grid .section-title em,
.theme-grid .page-title em,
.theme-grid .hero-title em,
.theme-grid .footer-cta-title em {
    color: var(--c-primary-ink);
    background: var(--c-primary);
    padding: 0 .12em;
    font-style: normal;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.theme-grid .eyebrow {
    font-family: var(--f-heading);
    color: var(--c-text);
    letter-spacing: .08em;
    font-size: .85rem;
}

.theme-grid .eyebrow-index {
    color: var(--c-primary);
}

.theme-grid .section {
    border-top: var(--line-w) solid var(--c-text);
}

.theme-grid .section-head {
    align-items: stretch;
}

.theme-grid .section-link {
    font-family: var(--f-heading);
    text-transform: uppercase;
    border: var(--line-w) solid var(--c-text);
    padding: 10px 16px;
    box-shadow: var(--hard-shadow);
    align-self: flex-end;
    transition: transform .15s, box-shadow .15s;
}

.theme-grid .section-link:hover {
    transform: translate(-2px, -2px);
    box-shadow: 7px 7px 0 var(--c-text);
    color: var(--c-text);
}

/* Düğmeler: kare, kalın çerçeve, kaydırılmış gölge */
.theme-grid .btn {
    border-radius: 0;
    border-width: var(--line-w);
    font-family: var(--f-heading);
    text-transform: uppercase;
    letter-spacing: .04em;
    box-shadow: var(--hard-shadow);
}

.theme-grid .btn:hover {
    transform: translate(-2px, -2px);
    box-shadow: 7px 7px 0 var(--c-text);
}

.theme-grid .btn:active {
    transform: translate(3px, 3px);
    box-shadow: 2px 2px 0 var(--c-text);
}

.theme-grid .btn-primary {
    --bs-btn-border-color: var(--c-text);
    --bs-btn-hover-border-color: var(--c-text);
    --bs-btn-active-border-color: var(--c-text);
}

.theme-grid .btn-ghost,
.theme-grid .btn-outline-primary,
.theme-grid .btn-light {
    --bs-btn-border-color: var(--c-text);
    background: var(--c-bg);
}

.theme-grid .btn-cookie {
    box-shadow: none;
}

/* ------------------------------------------------------------------ üst bilgi */

.theme-grid .site-header {
    background: var(--c-bg);
    border-bottom: var(--line-w) solid var(--c-text);
}

.theme-grid .site-header .navbar {
    padding: 0;
}

.theme-grid .header-shell {
    display: flex;
    align-items: stretch;
    width: 100%;
    gap: 0;
    min-height: 68px;
}

.theme-grid .site-logo {
    padding: 0 clamp(16px, 2vw, 28px);
    border-inline-end: var(--line-w) solid var(--c-text);
    background: var(--c-text);
    color: var(--c-bg);
    margin: 0;
}

.theme-grid .site-logo-text {
    text-transform: uppercase;
    font-size: 1.25rem;
}

.theme-grid .site-logo-text span {
    color: var(--c-primary);
}

.theme-grid .site-logo-img {
    filter: invert(1);
}

.theme-grid .navbar-collapse {
    align-self: stretch;
}

.theme-grid .main-nav {
    gap: 0;
    height: 100%;
}

.theme-grid .main-nav .nav-item {
    display: flex;
}

.theme-grid .main-nav .nav-link {
    display: flex;
    align-items: center;
    border-radius: 0;
    padding: 0 20px !important;
    border-inline-end: var(--line-w) solid var(--c-text);
    font-family: var(--f-heading);
    text-transform: uppercase;
    font-size: .9rem;
    letter-spacing: .04em;
}

.theme-grid .main-nav .nav-link:hover,
.theme-grid .main-nav .nav-link.active {
    background: var(--c-primary);
    color: var(--c-primary-ink);
}

.theme-grid .header-actions {
    gap: 0;
    align-items: stretch;
}

.theme-grid .lang-switch {
    display: flex;
}

.theme-grid .btn-lang {
    border: 0;
    border-inline-start: var(--line-w) solid var(--c-text);
    border-radius: 0;
    padding: 0 18px;
    font-family: var(--f-heading);
}

.theme-grid .header-cta {
    align-items: center;
    gap: 10px;
    padding: 0 26px;
    background: var(--c-primary);
    color: var(--c-primary-ink);
    border-inline-start: var(--line-w) solid var(--c-text);
    font-family: var(--f-heading);
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: none;
    transition: background-color .2s;
}

.theme-grid .header-cta:hover {
    background: var(--c-text);
    color: var(--c-bg);
}

.theme-grid .menu-toggle {
    height: auto;
    width: 64px;
    border: 0;
    border-inline-start: var(--line-w) solid var(--c-text);
    border-radius: 0;
    padding: 0 20px;
}

.theme-grid .dropdown-menu {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    box-shadow: var(--hard-shadow);
}

.theme-grid .dropdown-item,
.theme-grid .mega-item,
.theme-grid .mega-icon {
    border-radius: 0;
}

/* ------------------------------------------------------------------ hero: kutu ızgarası */

.hero-grid {
    border-bottom: var(--line-w) solid var(--c-text);
}

.grid-board {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-template-areas:
        "t t t t t t t t s s s s"
        "t t t t t t t t i i i i"
        "x x x x x c c c i i i i"
        "x x x x x c c c k k k k";
}

.g-box {
    position: relative;
    border-inline-end: var(--line-w) solid var(--c-text);
    border-bottom: var(--line-w) solid var(--c-text);
    padding: clamp(20px, 2.6vw, 40px);
    min-width: 0;
}

.g-title {
    grid-area: t;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 420px;
}

.g-stat {
    grid-area: s;
    background: var(--c-primary);
    color: var(--c-primary-ink);
    border-inline-end: 0;
}

.g-image {
    grid-area: i;
    padding: 0;
    overflow: hidden;
    border-inline-end: 0;
}

.g-image img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    filter: grayscale(1) contrast(1.1);
    transition: filter .5s;
}

.g-image:hover img {
    filter: none;
}

.g-text {
    grid-area: x;
    border-bottom: 0;
}

.g-cta {
    grid-area: c;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    background: var(--c-accent);
    color: var(--c-accent-ink);
    font-family: var(--f-heading);
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-bottom: 0;
    transition: background-color .2s;
}

.g-cta:hover {
    background: var(--c-text);
    color: var(--c-bg);
}

.g-arrow {
    align-self: flex-end;
    font-size: clamp(3rem, 6vw, 5.5rem);
    line-height: 1;
    transition: transform .3s;
}

.g-cta:hover .g-arrow {
    transform: translate(6px, -6px);
}

.g-stat2 {
    grid-area: k;
    border-inline-end: 0;
    border-bottom: 0;
    background: var(--c-surface);
}

.g-num {
    display: block;
    font-family: var(--f-heading);
    font-size: clamp(3rem, 7vw, 6.4rem);
    font-weight: 700;
    line-height: .9;
    letter-spacing: -0.03em;
}

.g-label {
    display: block;
    margin-top: 12px;
    font-family: var(--f-heading);
    text-transform: uppercase;
    font-size: .95rem;
}

.hero-grid .hero-title {
    font-size: clamp(2.4rem, 5.6vw, 5.6rem);
    line-height: .95;
    letter-spacing: -0.02em;
}

.hero-grid .hero-text {
    color: var(--c-text);
    font-size: 1.1rem;
}

.grid-ticker {
    background: var(--c-text);
    color: var(--c-bg);
    padding: 14px 0;
    -webkit-mask-image: none;
    mask-image: none;
}

.grid-ticker .marquee-track {
    gap: 56px;
    font-family: var(--f-heading);
    text-transform: uppercase;
    font-size: 1.15rem;
    font-weight: 600;
    white-space: nowrap;
}

.grid-ticker b {
    color: var(--c-primary);
}

/* ------------------------------------------------------------------ hizmetler: birleşik kutular */

.theme-grid .services-grid {
    gap: 0;
    border-top: var(--line-w) solid var(--c-text);
    border-inline-start: var(--line-w) solid var(--c-text);
}

.theme-grid .service-card {
    border: 0;
    border-inline-end: var(--line-w) solid var(--c-text);
    border-bottom: var(--line-w) solid var(--c-text);
    border-radius: 0;
    background: var(--c-bg);
    transform: none;
    min-height: 360px;
}

.theme-grid .service-card:hover {
    background: var(--c-primary);
    color: var(--c-primary-ink);
    transform: none;
}

.theme-grid .service-num {
    font-family: var(--f-heading);
    font-size: 2.6rem;
    font-weight: 700;
    color: inherit;
    line-height: 1;
}

.theme-grid .service-icon {
    border-radius: 0;
    background: var(--c-text);
    color: var(--c-bg);
}

.theme-grid .service-title {
    text-transform: uppercase;
}

.theme-grid .service-card:hover .service-summary {
    color: inherit;
}

.theme-grid .service-tags span {
    border-radius: 0;
    border-color: currentColor;
    background: transparent;
}

.theme-grid .service-go {
    border-radius: 0;
    border: var(--line-w) solid currentColor;
}

.theme-grid .service-card:hover .service-go {
    background: var(--c-text);
    color: var(--c-bg);
    border-color: var(--c-text);
    transform: none;
}

/* ------------------------------------------------------------------ kartlar */

.theme-grid .project-media,
.theme-grid .post-media,
.theme-grid .team-media,
.theme-grid .about-figure,
.theme-grid .detail-cover,
.theme-grid .member-photo {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    box-shadow: var(--hard-shadow);
}

.theme-grid .project-view {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    background: var(--c-primary);
    color: var(--c-primary-ink);
    font-family: var(--f-heading);
    text-transform: uppercase;
}

.theme-grid .project-title,
.theme-grid .post-title,
.theme-grid .team-name {
    text-transform: uppercase;
}

.theme-grid .project-meta {
    font-family: var(--f-heading);
}

.theme-grid .testimonial-card,
.theme-grid .pricing-card,
.theme-grid .form-card,
.theme-grid .side-card,
.theme-grid .value-card,
.theme-grid .join-card,
.theme-grid .contact-card,
.theme-grid .feature-grid li,
.theme-grid .newsletter-band,
.theme-grid .case-nav-item,
.theme-grid .search-result {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    box-shadow: var(--hard-shadow);
}

.theme-grid .stats-grid,
.theme-grid .metrics-row {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    background: var(--c-text);
    gap: var(--line-w);
}

.theme-grid .stat:nth-child(1) {
    background: var(--c-primary);
}

.theme-grid .stat:nth-child(1) .stat-value,
.theme-grid .stat:nth-child(1) .stat-label {
    color: var(--c-primary-ink);
}

.theme-grid .process-step {
    border: var(--line-w) solid var(--c-text);
    margin: 0 0 0 calc(var(--line-w) * -1);
}

.theme-grid .process-list {
    gap: 0;
}

.theme-grid .process-step:hover {
    background: var(--c-accent);
    color: var(--c-accent-ink);
}

.theme-grid .process-step:hover .process-num,
.theme-grid .process-step:hover .process-text,
.theme-grid .process-step:hover .process-title {
    color: inherit;
}

.theme-grid .process-num {
    color: var(--c-primary);
    font-size: 4rem;
}

.theme-grid .pricing-card.is-featured {
    background: var(--c-primary);
    color: var(--c-primary-ink);
    box-shadow: 8px 8px 0 var(--c-text);
}

.theme-grid .pricing-card.is-featured .pricing-desc,
.theme-grid .pricing-card.is-featured .pricing-price span,
.theme-grid .pricing-card.is-featured .pricing-features .bi-check2,
.theme-grid .pricing-card.is-featured .pricing-name,
.theme-grid .pricing-card.is-featured .pricing-price strong {
    color: inherit;
}

.theme-grid .pricing-card.is-featured .btn-primary {
    --bs-btn-bg: var(--c-text);
    --bs-btn-color: var(--c-bg);
    --bs-btn-hover-bg: var(--c-text);
    --bs-btn-hover-color: var(--c-bg);
}

.theme-grid .pricing-badge {
    border-radius: 0;
    border: var(--line-w) solid var(--c-text);
    background: var(--c-bg);
    color: var(--c-text);
}

.theme-grid .faq-list .accordion-item,
.theme-grid .faq-list .accordion-item:first-child {
    border: var(--line-w) solid var(--c-text);
    margin-top: calc(var(--line-w) * -1);
    padding-inline: 20px;
}

.theme-grid .faq-list .accordion-button {
    text-transform: uppercase;
}

.theme-grid .filter-btn,
.theme-grid .tag,
.theme-grid .chip-radio span,
.theme-grid .choice-body,
.theme-grid .form-control,
.theme-grid .form-select,
.theme-grid .btn-lang,
.theme-grid .social-row a,
.theme-grid .job-go,
.theme-grid .wa-float,
.theme-grid .to-top,
.theme-grid .footer-cta-arrow,
.theme-grid .success-icon,
.theme-grid .alert {
    border-radius: 0;
}

.theme-grid .form-control,
.theme-grid .form-select,
.theme-grid .filter-btn,
.theme-grid .choice-body,
.theme-grid .chip-radio span {
    border: var(--line-w) solid var(--c-text);
}

.theme-grid .filter-btn {
    font-family: var(--f-heading);
    text-transform: uppercase;
}

.theme-grid .filter-btn.active {
    background: var(--c-primary);
    color: var(--c-primary-ink);
    border-color: var(--c-text);
}

.theme-grid .cta-band {
    padding: 0;
}

.theme-grid .cta-band .container {
    max-width: none;
    padding: 0;
}

.theme-grid .cta-inner {
    border-radius: 0;
    border-top: var(--line-w) solid var(--c-text);
    padding: clamp(40px, 7vw, 96px) clamp(18px, 5vw, 64px);
}

.theme-grid .cta-title {
    text-transform: uppercase;
}

.theme-grid .cta-inner .btn {
    box-shadow: 5px 5px 0 var(--c-primary-ink);
    border-color: var(--c-primary-ink);
}

/* ------------------------------------------------------------------ iç sayfalar ve alt bilgi */

.theme-grid .page-hero {
    border-bottom: var(--line-w) solid var(--c-text);
    margin-bottom: clamp(36px, 5vw, 64px);
}

.theme-grid .page-hero + .section {
    border-top: 0;
}

.theme-grid .page-title {
    text-transform: uppercase;
    font-size: clamp(2.4rem, 6vw, 5.4rem);
}

.theme-grid .site-footer {
    --c-text: var(--paper);
    --c-bg: var(--ink);
    --c-muted: var(--c-muted-inv);
    --c-line: var(--c-line-inv);
    --c-surface: var(--c-surface-inv);
    background: var(--ink);
    color: var(--paper);
    border-top: 0;
}

.theme-grid .site-footer .form-control {
    background: var(--ink);
    color: var(--paper);
    border-color: var(--paper);
}

.theme-grid .site-footer .btn {
    box-shadow: 4px 4px 0 var(--paper);
}

.theme-grid .footer-cta-title {
    text-transform: uppercase;
    font-weight: 700;
}

.theme-grid .footer-title {
    font-family: var(--f-heading);
}

@media (max-width: 991.98px) {
    .grid-board {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "t t"
            "s i"
            "x x"
            "c k";
    }

    .g-title {
        min-height: 0;
        border-inline-end: 0;
    }

    .g-stat {
        border-inline-end: var(--line-w) solid var(--c-text);
    }

    .g-text {
        border-inline-end: 0;
        border-bottom: var(--line-w) solid var(--c-text);
    }

    .theme-grid .main-nav .nav-link {
        border-inline-end: 0;
        padding: 12px 0 !important;
    }

    .theme-grid .site-logo {
        margin-inline-end: auto;
    }
}

@media (max-width: 575.98px) {
    .grid-board {
        grid-template-columns: 1fr;
        grid-template-areas: "t" "s" "i" "x" "c" "k";
    }

    .g-box {
        border-inline-end: 0;
    }

    .theme-grid .header-cta {
        display: none !important;
    }
}
