:root {
    --c-wht: #ffffff;
    --c-blk: #111111;
    --c-pur: #8a2be2;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Bliss Pro', Courier, monospace;
    font-weight: 400; 
    background-color: var(--c-wht);
    color: var(--c-blk);
    overflow: hidden;
}

.bg-black { background-color: var(--c-blk); }

.page-transition-overlay {
    position: fixed;
    top: 0; left: 0;
    width: 100vw; height: 100vh;
    z-index: 9999;
    transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
    pointer-events: none;
}

.origin-left { transform-origin: left; }
.origin-right { transform-origin: right; }
.origin-top { transform-origin: top; }
.origin-bottom { transform-origin: bottom; }

.reveal-x { transform: scaleX(0); }
.reveal-y { transform: scaleY(0); }
.cover-x { transform: scaleX(1); }
.cover-y { transform: scaleY(1); }

.wireframe-nav {
    position: fixed;
    top: 0;
    width: 100%;
    height: 60px;
    display: flex;
    justify-content: space-between;
    border-bottom: 2px solid var(--c-blk);
    background-color: var(--c-wht);
    z-index: 1000;
}

.logo-link {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-logo { height: 30px; width: auto; }

.nav-item {
    display: flex;
    align-items: center;
    padding: 0 30px;
    text-decoration: none;
    color: var(--c-blk);
    border-left: 2px solid var(--c-blk);
    font-size: 0.9rem;
    font-weight: 500; 
    text-transform: uppercase;
    transition: background-color 0.2s, color 0.2s;
}

.nav-group { display: flex; }
.nav-group .nav-item:first-child { border-left: 2px solid var(--c-blk); }
.brand { border-left: none; border-right: 2px solid var(--c-blk); font-weight: 700; gap: 10px; } 

.brand:hover { background-color: var(--c-blk); color: var(--c-wht); }
.nav-arch:hover, .nav-arch.active { background-color: var(--c-blk); color: var(--c-wht); }
.nav-media:hover, .nav-media.active { background-color: var(--c-blk); color: var(--c-wht); }
.nav-articles:hover, .nav-articles.active { background-color: var(--c-blk); color: var(--c-wht); }

.composition-canvas {
    position: relative;
    width: 100vw;
    height: calc(100vh - 60px);
    margin-top: 60px;
}

.ornament {
    position: absolute;
    z-index: 1;
    opacity: 0.9;
}

.tri-1 {
    top: 15%; left: 40%;
    width: 0; height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 50px solid transparent;
    border-bottom-color: var(--c-blk);
    background-color: transparent !important;
    transform: rotate(25deg);
}

.tri-2 {
    bottom: 20%; left: 15%;
    width: 0; height: 0;
    border-left: 40px solid transparent;
    border-bottom: 40px solid var(--c-pur);
    background-color: transparent !important;
    transform: rotate(-15deg);
}

.tri-3 {
    top: 10%; right: 20%;
    width: 0; height: 0;
    border-top: 60px solid var(--c-blk);
    border-right: 60px solid transparent;
    background-color: transparent !important;
}

.project-block {
    position: absolute;
    display: flex;
    text-decoration: none;
    color: var(--c-wht);
    transition: top 0.4s ease, left 0.4s ease, width 0.4s ease, height 0.4s ease, box-shadow 0.4s ease;
    border: 2px solid var(--c-blk);
    overflow: hidden; 
}

.project-block:hover {
    z-index: 100 !important; 
    box-shadow: 0 15px 30px rgba(0,0,0,0.3);
}

/* Yeni 7 Proje Koordinatları */
.p1 { top: 15%; left: 8%; width: 10%; height: 70%; z-index: 10; }
.p2 { top: 50%; left: 5%; width: 35%; height: 16%; z-index: 20; }
.p3 { top: 5%; left: 30%; width: 10%; height: 55%; z-index: 15; }
.p4 { top: 25%; left: 35%; width: 35%; height: 16%; z-index: 25; }
.p5 { top: 40%; left: 55%; width: 10%; height: 50%; z-index: 5; }
.p6 { top: 70%; left: 50%; width: 40%; height: 16%; z-index: 30; }
.p7 { top: 10%; left: 80%; width: 10%; height: 75%; z-index: 35; }

/* Hover Expansion Logic */
.p1:hover { top: 0 !important; height: 100% !important; left: 6% !important; width: 14% !important; }
.p3:hover { top: 0 !important; height: 100% !important; left: 28% !important; width: 14% !important; }
.p5:hover { top: 0 !important; height: 100% !important; left: 53% !important; width: 14% !important; }
.p7:hover { top: 0 !important; height: 100% !important; left: 78% !important; width: 14% !important; }

.p2:hover { left: 0 !important; width: 100% !important; top: 48% !important; height: 20% !important; }
.p4:hover { left: 0 !important; width: 100% !important; top: 23% !important; height: 20% !important; }
.p6:hover { left: 0 !important; width: 100% !important; top: 68% !important; height: 20% !important; }

.bg-white { background-color: var(--c-wht); }
.bg-purple { background-color: var(--c-pur); }
.bg-black { background-color: var(--c-blk); }

.text-black { color: var(--c-blk); }
.text-white { color: var(--c-wht); }
.border-black { border-color: var(--c-blk) !important; }

.p-num {
    position: absolute;
    top: 10px; left: 10px;
    font-size: 0.8rem;
    font-weight: 700; 
    padding: 3px 6px;
    border: 1px solid currentColor;
    z-index: 50;
    background-color: transparent;
}

.p-name {
    position: absolute;
    bottom: 10px; right: 10px;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 700; 
    letter-spacing: 1px;
    z-index: 50;
    padding: 3px 6px;
    border: 1px solid transparent;
}

.project-img {
    position: absolute;
    top: 0; left: 0; 
    width: 100%; height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.5s ease, transform 0.5s ease;
    mix-blend-mode: multiply;
}

.project-block:hover .project-img { 
    opacity: 0.5; 
    transform: scale(1.1);
}

@media (max-width: 900px) {
    .composition-canvas {
        display: flex;
        flex-direction: column;
        overflow-y: auto;
        height: auto;
    }

    .logo-link, .ornament { display: none; }

    .project-block {
        position: relative;
        top: auto !important; left: auto !important;
        width: 100% !important; height: 15vh !important;
        border-bottom: 2px solid var(--c-blk);
    }
}

.project-block.expanding {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 9999 !important;
    border: none;
    transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1) !important; 
    border-radius: 0;
}

.project-block.expanding .p-num,
.project-block.expanding .p-name,
.project-block.expanding .project-img {
    opacity: 0;
    transition: opacity 0.2s ease;
}