/* Güven 2026 – ana sayfa (pastane cephesi)
 * Cephe ölçüleri em cinsindendir; .gv-sahne font boyutu ekran genişliğiyle ölçeklenir.
 */

.home,
.gv-ana {
    --g-yesil: oklch(0.78 0.07 135);
    --g-yesil-acik: oklch(0.8 0.065 135);
    --g-yesil-parlak: oklch(0.83 0.06 135);
    --g-cizgi: oklch(0.66 0.07 138);
    --g-cizgi-koyu: oklch(0.62 0.07 138);
    --g-sus: oklch(0.64 0.07 138);
    --g-golge: oklch(0.25 0.05 40 / 0.45);
    --g-demir: oklch(0.28 0.02 60);
    --g-panjur: repeating-linear-gradient(180deg, oklch(0.83 0.06 135) 0 0.35em, oklch(0.77 0.07 135) 0.35em 0.6em, oklch(0.66 0.07 138) 0.6em 0.7em);
    --g-cam: linear-gradient(165deg, oklch(0.44 0.025 210), oklch(0.3 0.02 225) 60%, oklch(0.34 0.02 215));

    background: oklch(0.8 0.006 80);
}

.gv-ana {
    min-height: 100vh;
    min-height: 100dvh;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

.gv-tugla {
    background: var(--gv-tugla);
    background-size: 4.6em 2.3em;
}

/* Sahne & bina ---------------------------------------------------------- */

.gv-sahne {
    position: relative;
    flex: 1;
    display: flex;
    justify-content: center;
    font-size: min(2.5vw, 15px);
    padding-top: clamp(0px, 4vh, 40px);
    background: linear-gradient(180deg, oklch(0.6 0.035 240) 0%, oklch(0.74 0.025 225) 60%, oklch(0.8 0.015 210) 100%);
}

.gv-bina {
    position: relative;
    z-index: 2;
    width: min(100%, 40em);
    display: flex;
    flex-direction: column;
    box-shadow: 0 0 2.5em var(--g-golge);
}

/* Üst korniz */
.gv-korniz {
    position: relative;
    z-index: 2;
    height: 4.6em;
    display: flex;
    gap: 1em;
    padding: 0.8em 1.4em;
    background: var(--g-yesil);
    border-top: 0.5em solid var(--g-cizgi);
    border-bottom: 0.6em solid oklch(0.58 0.07 140);
    box-shadow: 0 0.6em 0.9em -0.3em oklch(0.25 0.04 40 / 0.5);
}

.gv-korniz-pano {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0.15em solid var(--g-cizgi);
    box-shadow: inset 0 0 0 0.3em var(--g-yesil), inset 0 0 0 0.42em var(--g-cizgi);
}

.gv-korniz-pano--orta {
    flex: 1.4;
}

.gv-elmas {
    width: 0.7em;
    height: 0.7em;
    transform: rotate(45deg);
    border: 0.15em solid var(--g-cizgi-koyu);
}

/* Üst kat panjurları */
.gv-ust-kat {
    height: 15.6em;
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    padding: 1.3em 1.6em 0;
}

.gv-panjur {
    width: 8.4em;
    height: 11.4em;
    display: flex;
    gap: 0.3em;
    padding: 0.45em;
    background: var(--g-yesil);
    border: 0.2em solid var(--g-cizgi);
    border-top: 0.9em solid var(--g-yesil-acik);
    box-shadow: 0.3em 0.5em 0.7em -0.2em var(--g-golge);
}

.gv-panjur-kanat {
    flex: 1;
    border: 0.15em solid var(--g-cizgi);
    background: var(--g-panjur);
}

/* Balkon */
.gv-balkon {
    position: relative;
    z-index: 1;
    margin-top: -6em;
}

.gv-balkon-ust {
    height: 0.9em;
    background: oklch(0.82 0.065 135);
    border-bottom: 0.2em solid var(--g-cizgi-koyu);
    box-shadow: 0 0.3em 0.5em -0.2em oklch(0.25 0.05 40 / 0.4);
}

.gv-korkuluk {
    height: 4.8em;
    display: flex;
}

.gv-dikme {
    width: 1.3em;
    background: var(--g-yesil-acik);
    border-left: 0.12em solid var(--g-cizgi);
    border-right: 0.12em solid var(--g-cizgi);
}

.gv-capraz {
    flex: 1;
    background:
        linear-gradient(to top right, transparent calc(50% - 0.22em), oklch(0.79 0.07 135) calc(50% - 0.22em), oklch(0.79 0.07 135) calc(50% + 0.22em), transparent calc(50% + 0.22em)),
        linear-gradient(to bottom right, transparent calc(50% - 0.22em), oklch(0.74 0.07 136) calc(50% - 0.22em), oklch(0.74 0.07 136) calc(50% + 0.22em), transparent calc(50% + 0.22em));
}

/* Fenerler */
.gv-fener {
    position: absolute;
    top: 0.9em;
    z-index: 3;
    width: 2.6em;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gv-fener--sol {
    left: -0.3em;
}

.gv-fener--sag {
    right: -0.3em;
}

.gv-fener-cubuk {
    width: 0.25em;
    height: 1em;
    background: var(--g-demir);
}

.gv-fener-sapka {
    width: 2.6em;
    height: 1em;
    background: var(--g-demir);
    clip-path: polygon(30% 0, 70% 0, 100% 100%, 0 100%);
}

.gv-fener-govde {
    position: relative;
    width: 2em;
    height: 2.6em;
    border: 0.2em solid var(--g-demir);
    border-top: none;
    background: oklch(0.45 0.02 70);
}

.gv-fener-isik {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 45%, oklch(0.98 0.07 95), oklch(0.86 0.14 82) 45%, oklch(0.7 0.13 65));
    box-shadow: 0 0 1.6em 0.6em oklch(0.88 0.13 85 / 0.55);
}

.gv-fener-cita {
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 0.07em);
    width: 0.14em;
    background: var(--g-demir);
}

.gv-fener-taban {
    width: 2.4em;
    height: 0.5em;
    background: var(--g-demir);
    clip-path: polygon(0 0, 100% 0, 80% 100%, 20% 100%);
}

.gv-fener-top {
    width: 0.5em;
    height: 0.5em;
    border-radius: 50%;
    background: var(--g-demir);
}

/* Tabela kuşağı */
.gv-tabela-kusak {
    position: relative;
    z-index: 2;
    height: 10em;
    display: flex;
    gap: 1em;
    padding: 1.1em 1.4em;
    background: var(--g-yesil);
    border-top: 0.7em solid oklch(0.84 0.06 135);
    border-bottom: 0.9em solid oklch(0.6 0.07 140);
    box-shadow: 0 0.7em 1em -0.3em oklch(0.25 0.05 40 / 0.5);
}

.gv-pano {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0.18em solid var(--g-cizgi);
    box-shadow:
        inset 0 0 0 0.35em var(--g-yesil),
        inset 0 0 0 0.5em var(--g-cizgi),
        inset 0 0 0 0.62em var(--g-yesil-parlak);
}

.gv-pano--orta {
    flex: 2.6;
}

.gv-ana-baslik {
    margin: 0;
    font-size: 3.4em;
    filter: drop-shadow(0 0.04em 0 var(--gv-altin-golge)) drop-shadow(0 0.12em 0.15em oklch(0.25 0.05 40 / 0.35));
}

.gv-sus {
    width: 60%;
    display: flex;
    align-items: center;
    gap: 0.35em;
}

.gv-sus--dar {
    width: 55%;
}

.gv-sus span {
    flex: 1;
    height: 0.15em;
    background: var(--g-sus);
}

.gv-sus i {
    width: 0.6em;
    height: 0.6em;
    transform: rotate(45deg);
    border: 0.15em solid var(--g-sus);
}

/* Zemin kat */
.gv-zemin-kat {
    display: flex;
    flex: 1;
    min-height: 31em;
}

.gv-yan-panjur {
    width: 3.6em;
    border-top: 1em solid oklch(0.82 0.065 135);
    border-left: 0.2em solid var(--g-cizgi);
    border-right: 0.2em solid var(--g-cizgi);
    background: var(--g-panjur);
}

.gv-cephe {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.gv-alinlik {
    height: 5em;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.gv-alinlik-ucgen {
    position: relative;
    width: 13em;
    height: 3.6em;
    background: var(--g-sus);
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.gv-alinlik-ucgen > div {
    position: absolute;
    inset: 0.35em 0.7em 0 0.7em;
    background: var(--g-yesil-acik);
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.gv-alinlik-kiris {
    width: 14em;
    height: 0.7em;
    background: oklch(0.84 0.06 135);
    border-bottom: 0.15em solid var(--g-cizgi-koyu);
}

.gv-vitrinler {
    flex: 1;
    display: flex;
    gap: 0.6em;
    padding: 0.6em;
    background: var(--g-yesil);
    box-shadow: inset 0 0.2em 0 var(--g-cizgi);
}

.gv-vitrin-kolon {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.6em;
}

/* Camlar */
.gv-cam {
    flex: 1;
    position: relative;
    overflow: hidden;
    background: var(--g-cam);
}

.gv-cam > div {
    position: absolute;
}

.gv-cam--vitrin {
    border: 0.35em solid var(--g-cizgi);
}

.gv-cam--vitrin .gv-cam-parilti {
    inset: 0;
    background: radial-gradient(ellipse 90% 60% at 50% 105%, oklch(0.78 0.1 75 / 0.4), transparent 70%);
}

.gv-cam--vitrin .gv-cam-kafes {
    left: 0;
    right: 0;
    top: 0;
    height: 36%;
    border-bottom: 0.45em solid var(--g-yesil);
    background-image:
        linear-gradient(90deg, var(--g-yesil) 0.3em, transparent 0.3em),
        linear-gradient(180deg, var(--g-yesil) 0.3em, transparent 0.3em);
    background-size: 25% 50%;
}

.gv-cam-yansima {
    inset: 0;
    background: linear-gradient(115deg, transparent 20%, oklch(1 0 0 / 0.08) 28%, transparent 40%);
    pointer-events: none;
}

.gv-vitrin-alt {
    height: 5.6em;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0.18em solid var(--g-cizgi);
    box-shadow: inset 0 0 0 0.35em var(--g-yesil), inset 0 0 0 0.5em var(--g-cizgi);
}

/* Kapı – Hakkımızda bağlantısı */
.gv-kapi {
    width: 9em;
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    padding: 0.45em;
    background: var(--g-yesil-acik);
    border: 0.2em solid var(--g-sus);
    box-shadow: 0 0 0 0.25em oklch(0.74 0.07 136);
    color: var(--gv-metin);
    transition: filter 0.2s;
}

.gv-kapi:hover,
.gv-kapi:focus-visible {
    filter: brightness(1.07);
    color: var(--gv-metin);
}

.gv-cam--kapi {
    border: 0.25em solid var(--g-cizgi);
}

.gv-cam--kapi .gv-cam-parilti {
    inset: 0;
    background: radial-gradient(ellipse 90% 60% at 50% 100%, oklch(0.78 0.1 75 / 0.45), transparent 70%);
}

.gv-cam--kapi .gv-cam-kafes {
    inset: 0;
    background-image:
        linear-gradient(90deg, var(--g-yesil-acik) 0.28em, transparent 0.28em),
        linear-gradient(180deg, var(--g-yesil-acik) 0.28em, transparent 0.28em);
    background-size: 50% 25%;
}

.gv-cam .gv-kapi-levha {
    left: 50%;
    top: 30%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    transform-origin: 50% 0;
}

.gv-kapi-ip {
    width: 3em;
    height: 1.1em;
    border-left: 0.1em solid oklch(0.7 0.1 75);
    border-right: 0.1em solid oklch(0.7 0.1 75);
}

.gv-kapi-yazi {
    padding: 0.45em 0.55em;
    background: oklch(0.96 0.02 90);
    border: 0.15em solid oklch(0.68 0.11 78);
    font-size: max(11px, 1.05em);
    font-weight: 600;
    white-space: nowrap;
    color: var(--gv-metin);
    box-shadow: 0 0.2em 0.4em oklch(0 0 0 / 0.3);
}

.gv-cam .gv-kapi-tokmak {
    right: 0.5em;
    top: 62%;
    width: 0.8em;
    height: 0.8em;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, oklch(0.93 0.1 90), oklch(0.66 0.12 72));
}

.gv-kapi-alt {
    height: 5.4em;
    border: 0.18em solid var(--g-cizgi);
    box-shadow: inset 0 0 0 0.35em var(--g-yesil-acik), inset 0 0 0 0.5em var(--g-cizgi);
}

@media (prefers-reduced-motion: no-preference) {
    .gv-kapi:hover .gv-kapi-levha {
        animation: gv-sallan 1.2s ease-in-out;
    }
}

@keyframes gv-sallan {
    0%, 100% { transform: translateX(-50%) rotate(0); }
    25% { transform: translateX(-50%) rotate(4deg); }
    60% { transform: translateX(-50%) rotate(-3deg); }
    85% { transform: translateX(-50%) rotate(1deg); }
}

/* Kaide ve eşik */
.gv-kaide {
    height: 1.2em;
    background: oklch(0.6 0.07 140);
}

.gv-esik {
    position: absolute;
    left: 50%;
    bottom: -0.8em;
    transform: translateX(-50%);
    width: 11em;
    height: 0.8em;
    background: oklch(0.88 0.005 80);
    box-shadow: 0 0.2em 0.3em oklch(0 0 0 / 0.2);
}

/* Kaldırım & kara tahta -------------------------------------------------- */

.gv-kaldirim {
    position: relative;
    display: flex;
    justify-content: center;
    padding: 44px 20px 80px;
    background-color: oklch(0.8 0.006 80);
    background-image:
        linear-gradient(90deg, oklch(0.76 0.006 80) 1px, transparent 1px),
        linear-gradient(180deg, oklch(0.76 0.006 80) 1px, transparent 1px);
    background-size: 64px 64px;
    border-top: 6px solid oklch(0.87 0.006 80);
}

.gv-kaldirim-serit {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 26px;
    height: 14px;
    background: repeating-linear-gradient(90deg, oklch(0.84 0.14 92) 0 10px, oklch(0.8 0.14 90) 10px 12px);
}

.gv-kara-tahta-ayak {
    position: relative;
    z-index: 1;
    width: min(100%, 320px);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gv-kara-tahta {
    width: 100%;
    padding: 22px 20px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: oklch(0.95 0.01 95);
    background: oklch(0.27 0.02 160);
    border: 10px solid oklch(0.5 0.07 55);
    box-shadow: 0 12px 20px -8px oklch(0 0 0 / 0.35);
}

.gv-kara-tahta-baslik {
    margin: 0 0 6px;
    text-align: center;
    font-family: var(--gv-serif);
    font-size: 24px;
    font-weight: 400;
}

.gv-kanal {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 0 14px;
    border: 1.5px dashed oklch(0.95 0.01 95 / 0.55);
    border-radius: 10px;
    color: oklch(0.95 0.01 95);
    font-size: 16px;
    font-weight: 500;
    transition: background 0.15s;
}

a.gv-kanal:hover,
a.gv-kanal:focus-visible {
    color: oklch(0.95 0.01 95);
    background: oklch(1 0 0 / 0.07);
}

.gv-kanal svg {
    flex: none;
}

.gv-kanal--adres {
    padding: 10px 14px;
    line-height: 1.35;
}

.gv-ayaklar {
    width: 78%;
    display: flex;
    justify-content: space-between;
}

.gv-ayaklar span {
    width: 10px;
    height: 34px;
    background: oklch(0.45 0.07 55);
    transform: skewX(12deg);
}

.gv-ayaklar span:last-child {
    transform: skewX(-12deg);
}

/* Yol */
.gv-yol {
    height: 110px;
    display: flex;
    align-items: center;
    background: oklch(0.34 0.008 250);
    border-top: 8px solid oklch(0.62 0.006 80);
}

.gv-yol > div {
    flex: 1;
    height: 6px;
    background: repeating-linear-gradient(90deg, oklch(0.95 0.01 95) 0 48px, transparent 48px 96px);
}

/* Alt bilgi: yolun devamı olarak asfalt zeminde */
.home .gv-alt {
    margin-top: -1px;
    padding-top: 0;
    background: oklch(0.34 0.008 250);
    border-top: 0;
}

.home .gv-alt a {
    color: oklch(0.95 0.01 95 / 0.6);
}

.home .gv-alt a:hover {
    color: oklch(0.95 0.01 95);
}
