Files
2026-10-23 13:34:39 +00:00

856 lines
21 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* =========================================================
Elif Demirsoy — Portfolyo
Tasarım kararı: sıcak kırık beyaz · mürdüm + hardal · bol boşluk
Renkler yalnızca değişkenlerden gelir; karanlık mod tek blok.
========================================================= */
:root {
/* açık tema */
--zemin: #f4efe6;
--zemin-alt: #ece4d7;
--kart: #fffdf9;
--murekkep: #211a1f;
--murekkep-soluk: #6a5f66;
--cizgi: rgba(33, 26, 31, 0.14);
--vurgu: #7d2b4e;
--vurgu-metin: #fff7f2;
--ikincil: #d9a441;
--koyu-blok: #211a1f;
--koyu-blok-metin: #f4efe6;
--golge: 0 1px 2px rgba(33, 26, 31, .06), 0 12px 32px -18px rgba(33, 26, 31, .45);
--sarmal: 1180px;
--yaricap: 18px;
--gecis: 220ms cubic-bezier(.2, .7, .3, 1);
--yazi-baslik: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
--yazi-govde: "Inter", "Segoe UI", system-ui, sans-serif;
}
html[data-tema="karanlik"] {
--zemin: #151114;
--zemin-alt: #1d181b;
--kart: #221c20;
--murekkep: #f2ece6;
--murekkep-soluk: #a89ea6;
--cizgi: rgba(242, 236, 230, 0.16);
--vurgu: #e58bab;
--vurgu-metin: #2a0f1c;
--ikincil: #e8bd6b;
--koyu-blok: #0d0a0c;
--koyu-blok-metin: #f2ece6;
--golge: 0 1px 2px rgba(0, 0, 0, .4), 0 18px 40px -22px rgba(0, 0, 0, .85);
}
/* ---------- temel ---------- */
* { box-sizing: border-box; }
html {
scroll-behavior: smooth;
scroll-padding-top: 92px;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
background: var(--zemin);
color: var(--murekkep);
font-family: var(--yazi-govde);
font-size: clamp(15px, 1.6vw, 17px);
line-height: 1.65;
overflow-x: hidden;
overflow-y: auto;
transition: background-color var(--gecis), color var(--gecis);
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; }
.sarmal {
width: min(100% - 2.5rem, var(--sarmal));
margin-inline: auto;
}
.atla {
position: absolute;
left: -9999px;
top: 0;
padding: .75rem 1rem;
background: var(--vurgu);
color: var(--vurgu-metin);
z-index: 100;
}
.atla:focus { left: 1rem; top: 1rem; }
:focus-visible {
outline: 3px solid var(--vurgu);
outline-offset: 3px;
border-radius: 6px;
}
/* ---------- tipografi ---------- */
.baslik-buyuk,
.baslik-orta {
font-family: var(--yazi-baslik);
font-weight: 800;
letter-spacing: -0.035em;
line-height: 0.94;
margin: 0;
}
.baslik-buyuk { font-size: clamp(3.4rem, 12vw, 8.5rem); }
.baslik-orta { font-size: clamp(2rem, 5.4vw, 3.5rem); line-height: 1; }
.satir { display: block; }
.satir--vurgu { color: var(--vurgu); }
.satir--vurgu i {
color: var(--ikincil);
font-style: normal;
font-size: .45em;
vertical-align: super;
margin-left: .08em;
}
.ust-yazi {
display: inline-flex;
align-items: center;
gap: .5rem;
font-size: .78rem;
letter-spacing: .14em;
text-transform: uppercase;
font-weight: 600;
color: var(--murekkep-soluk);
margin: 0 0 1.4rem;
}
.nokta-parlak {
width: 8px; height: 8px;
border-radius: 50%;
background: #3fbf7f;
box-shadow: 0 0 0 4px rgba(63, 191, 127, .18);
flex: none;
}
.etiket {
display: block;
font-size: .7rem;
letter-spacing: .14em;
text-transform: uppercase;
font-weight: 600;
color: var(--murekkep-soluk);
}
/* ---------- üst bar ---------- */
.ust-bar {
position: sticky;
top: 0;
z-index: 50;
backdrop-filter: blur(14px);
background: color-mix(in srgb, var(--zemin) 82%, transparent);
border-bottom: 1px solid transparent;
transition: border-color var(--gecis), background-color var(--gecis);
}
.ust-bar.kaydirildi { border-bottom-color: var(--cizgi); }
.ust-bar__ic {
display: flex;
align-items: center;
gap: 1rem;
min-height: 72px;
}
.imza {
display: inline-flex;
align-items: center;
gap: .6rem;
font-family: var(--yazi-baslik);
font-weight: 600;
letter-spacing: -.02em;
margin-right: auto;
}
.imza__isaret {
display: grid;
place-items: center;
width: 34px; height: 34px;
border-radius: 50%;
background: var(--vurgu);
color: var(--vurgu-metin);
font-size: .78rem;
font-weight: 800;
letter-spacing: .02em;
}
.imza__metin { font-size: .95rem; }
.imza__nokta { color: var(--ikincil); }
.menu { display: flex; gap: .35rem; }
.menu a {
padding: .55rem .85rem;
border-radius: 999px;
font-size: .92rem;
font-weight: 500;
transition: background-color var(--gecis), color var(--gecis);
min-height: 44px;
display: inline-flex;
align-items: center;
}
.menu a:hover { background: var(--zemin-alt); }
.ust-bar__eylem { display: flex; align-items: center; gap: .5rem; }
.tema-dugme {
display: inline-flex;
align-items: center;
gap: .5rem;
min-height: 44px;
padding: .4rem .9rem;
border: 1px solid var(--cizgi);
border-radius: 999px;
background: var(--kart);
cursor: pointer;
font-size: .88rem;
font-weight: 500;
transition: background-color var(--gecis), border-color var(--gecis);
}
.tema-dugme:hover { background: var(--zemin-alt); }
.tema-dugme__ikon {
width: 18px; height: 18px;
flex: none;
fill: none;
stroke: currentColor;
stroke-width: 1.7;
stroke-linecap: round;
stroke-linejoin: round;
}
.tema-dugme__ikon--ay { display: none; }
html[data-tema="karanlik"] .tema-dugme__ikon--gunes { display: none; }
html[data-tema="karanlik"] .tema-dugme__ikon--ay { display: block; }
.menu-dugme {
display: none;
width: 44px; height: 44px;
border: 1px solid var(--cizgi);
border-radius: 12px;
background: var(--kart);
cursor: pointer;
padding: 0;
place-items: center;
}
.menu-dugme span {
display: block;
width: 18px; height: 2px;
background: currentColor;
border-radius: 2px;
margin: 3px auto;
transition: transform var(--gecis), opacity var(--gecis);
}
.menu-dugme[aria-expanded="true"] span:nth-child(1) { transform: translateY(5px) rotate(45deg); }
.menu-dugme[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-dugme[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }
/* ---------- kahraman ---------- */
.kahraman { padding: clamp(2rem, 6vw, 4.5rem) 0 0; }
.kahraman__ic {
display: grid;
grid-template-columns: minmax(0, 1.35fr) minmax(0, .82fr);
gap: clamp(1.5rem, 5vw, 4rem);
align-items: end;
padding-bottom: clamp(2rem, 5vw, 3.5rem);
}
.tanitim {
max-width: 46ch;
margin: 1.6rem 0 0;
color: var(--murekkep-soluk);
font-size: clamp(.98rem, 1.3vw, 1.08rem);
}
.tanitim strong { color: var(--murekkep); }
.kahraman__eylem {
display: flex;
flex-wrap: wrap;
gap: .7rem;
margin-top: 2rem;
}
.dugme {
display: inline-flex;
align-items: center;
justify-content: center;
gap: .5rem;
min-height: 48px;
padding: .8rem 1.5rem;
border-radius: 999px;
font-weight: 600;
font-size: .95rem;
border: 1px solid transparent;
cursor: pointer;
transition: transform var(--gecis), background-color var(--gecis), border-color var(--gecis), color var(--gecis);
}
.dugme--dolu { background: var(--vurgu); color: var(--vurgu-metin); }
.dugme--dolu:hover { transform: translateY(-2px); }
.dugme--bos { border-color: var(--cizgi); background: transparent; }
.dugme--bos:hover { background: var(--zemin-alt); }
.dugme--tam { width: 100%; margin-top: .4rem; }
.kart-vizit {
border: 1px solid var(--cizgi);
border-radius: var(--yaricap);
background: var(--kart);
padding: 1.4rem;
display: grid;
gap: 1rem;
box-shadow: var(--golge);
}
.kart-vizit__kutu p { margin: .35rem 0 0; font-size: .92rem; }
.kart-vizit__kutu + .kart-vizit__kutu {
border-top: 1px solid var(--cizgi);
padding-top: 1rem;
}
.kart-vizit__kutu--vurgu p { color: var(--vurgu); font-weight: 500; }
/* kayan şerit — sol/sağ kenarı yumuşak kırp, ilk kelime eksik görünmesin */
.kahraman > .sarmal { overflow: hidden; }
.serit {
overflow: hidden;
position: relative;
border-block: 1px solid var(--cizgi);
padding: .85rem 0;
mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
/* Şerit bilerek taşır (kayan yazı) — üst sarmalın dışına çıkmasın diye kırp */
.kahraman > .sarmal { overflow: hidden; }
.serit__ic {
display: flex;
gap: 1.4rem;
width: max-content;
animation: kaydir 32s linear infinite;
font-family: var(--yazi-baslik);
font-weight: 600;
letter-spacing: -.01em;
font-size: clamp(.95rem, 2vw, 1.15rem);
color: var(--murekkep-soluk);
white-space: nowrap;
}
.serit__ic span[aria-hidden] { color: var(--ikincil); }
@keyframes kaydir {
from { transform: translateX(0); }
to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
.serit__ic { animation: none; }
* { transition-duration: 1ms !important; }
}
/* ---------- bölümler ---------- */
.bolum { padding: clamp(3.5rem, 9vw, 7rem) 0; }
.bolum--koyu {
background: var(--koyu-blok);
color: var(--koyu-blok-metin);
--murekkep: var(--koyu-blok-metin);
--murekkep-soluk: color-mix(in srgb, var(--koyu-blok-metin) 62%, transparent);
--cizgi: color-mix(in srgb, var(--koyu-blok-metin) 20%, transparent);
}
.bolum-basi {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 30ch);
gap: 1.5rem;
align-items: end;
margin-bottom: clamp(2rem, 5vw, 3.2rem);
}
.bolum-basi__not {
margin: 0;
color: var(--murekkep-soluk);
font-size: .95rem;
}
/* ---------- proje kartları ---------- */
.projeler {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(1rem, 2.5vw, 1.6rem);
}
.kart {
border: 1px solid var(--cizgi);
border-radius: var(--yaricap);
background: var(--kart);
overflow: hidden;
transition: transform var(--gecis), box-shadow var(--gecis), border-color var(--gecis);
}
.kart:hover { transform: translateY(-4px); box-shadow: var(--golge); }
.kart__tikla {
display: block;
width: 100%;
padding: 0;
border: 0;
background: none;
text-align: left;
cursor: pointer;
min-height: 44px;
}
.kart__kapak {
display: block;
position: relative;
aspect-ratio: 4 / 3;
background: var(--zemin-alt);
overflow: hidden;
}
.kart__kapak img {
width: 100%; height: 100%;
object-fit: contain; /* kapaklar 4:3 üretildi — kırpmak yerine tamamı görünsün */
transition: transform 420ms cubic-bezier(.2, .7, .3, 1);
}
.kart:hover .kart__kapak img { transform: scale(1.045); }
.kart__rozet {
position: absolute;
left: .8rem;
top: .8rem;
padding: .3rem .7rem;
border-radius: 999px;
background: color-mix(in srgb, var(--kart) 88%, transparent);
border: 1px solid var(--cizgi);
font-size: .68rem;
letter-spacing: .1em;
text-transform: uppercase;
font-weight: 600;
backdrop-filter: blur(6px);
}
.kart__alt {
display: grid;
grid-template-columns: 1fr auto;
gap: .15rem .5rem;
padding: 1rem 1.1rem 1.15rem;
align-items: start;
}
.kart__ad {
font-family: var(--yazi-baslik);
font-weight: 600;
font-size: 1.06rem;
letter-spacing: -.015em;
line-height: 1.25;
}
.kart__meta {
grid-column: 1 / 2;
font-size: .82rem;
color: var(--murekkep-soluk);
}
.kart__ok {
grid-row: 1 / 3;
grid-column: 2 / 3;
align-self: center;
width: 28px; height: 28px;
display: grid;
place-items: center;
border-radius: 50%;
border: 1px solid var(--cizgi);
font-size: 1rem;
line-height: 1;
transition: transform var(--gecis), background-color var(--gecis), color var(--gecis);
}
.kart__tikla[aria-expanded="true"] .kart__ok {
transform: rotate(45deg);
background: var(--vurgu);
color: var(--vurgu-metin);
border-color: transparent;
}
.kart__detay {
padding: 0 1.1rem 1.2rem;
border-top: 1px solid var(--cizgi);
margin-top: 0;
padding-top: 1rem;
animation: acil 220ms ease-out;
}
.kart__detay p {
margin: 0 0 .8rem;
font-size: .9rem;
color: var(--murekkep-soluk);
}
@keyframes acil {
from { opacity: 0; transform: translateY(-6px); }
to { opacity: 1; transform: none; }
}
.etiket-liste {
display: flex;
flex-wrap: wrap;
gap: .4rem;
list-style: none;
padding: 0;
margin: 0;
}
.etiket-liste li {
font-size: .74rem;
padding: .25rem .6rem;
border-radius: 999px;
background: var(--zemin-alt);
color: var(--murekkep-soluk);
border: 1px solid var(--cizgi);
}
/* ---------- hakkımda ---------- */
.hakkinda {
display: grid;
grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
gap: clamp(1.5rem, 5vw, 4rem);
}
.hakkinda__sag p { margin: 0 0 1rem; color: var(--murekkep-soluk); }
.hakkinda__sag p:first-child { color: var(--murekkep); }
.rakamlar {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1rem;
margin: 2rem 0 0;
padding-top: 1.5rem;
border-top: 1px solid var(--cizgi);
}
.rakamlar dt { font-size: .76rem; letter-spacing: .06em; text-transform: uppercase; color: var(--murekkep-soluk); }
.rakamlar dd {
margin: .25rem 0 0;
font-family: var(--yazi-baslik);
font-size: clamp(1.5rem, 3.5vw, 2.1rem);
font-weight: 600;
letter-spacing: -.03em;
}
/* ---------- iletişim ---------- */
.iletisim {
display: grid;
grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
gap: clamp(1.5rem, 5vw, 4rem);
align-items: start;
}
.iletisim__metin { color: var(--murekkep-soluk); max-width: 38ch; margin: 1.4rem 0 2rem; }
.iletisim__bilgi { list-style: none; padding: 0; margin: 0; display: grid; gap: 1rem; }
.iletisim__bilgi li { display: grid; gap: .15rem; }
.iletisim__bilgi a { font-family: var(--yazi-baslik); font-weight: 600; font-size: 1.05rem; letter-spacing: -.01em; }
.iletisim__bilgi a:hover { color: var(--vurgu); }
.form-kap {
border: 1px solid var(--cizgi);
border-radius: var(--yaricap);
background: var(--kart);
padding: clamp(1.2rem, 3vw, 2rem);
box-shadow: var(--golge);
}
.form { display: grid; gap: 1rem; }
/* hidden özelliği display:grid tarafından ezilmesin */
.form[hidden], .tesekkur[hidden] { display: none !important; }
.alan { display: grid; gap: .35rem; }
.alan label { font-size: .82rem; font-weight: 600; letter-spacing: .02em; }
.alan input,
.alan select,
.alan textarea {
width: 100%;
font: inherit;
font-size: .95rem;
color: var(--murekkep);
background: var(--zemin);
border: 1px solid var(--cizgi);
border-radius: 12px;
padding: .75rem .85rem;
min-height: 48px;
transition: border-color var(--gecis), box-shadow var(--gecis);
}
.alan textarea { resize: vertical; min-height: 120px; }
.alan input::placeholder,
.alan textarea::placeholder { color: var(--murekkep-soluk); opacity: .8; }
.alan input:focus,
.alan select:focus,
.alan textarea:focus {
outline: none;
border-color: var(--vurgu);
box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 22%, transparent);
}
.alan.hatali input,
.alan.hatali select,
.alan.hatali textarea { border-color: #cf445f; }
.alan__hata {
font-size: .78rem;
color: #cf445f;
min-height: 0;
}
html[data-tema="karanlik"] .alan__hata { color: #ff94a6; }
.form__dipnot { margin: .2rem 0 0; font-size: .76rem; color: var(--murekkep-soluk); }
.tesekkur { text-align: center; padding: 1.5rem .5rem; }
.tesekkur:focus { outline: none; }
.tesekkur__isaret {
display: grid;
place-items: center;
width: 56px; height: 56px;
margin: 0 auto 1rem;
border-radius: 50%;
background: color-mix(in srgb, #3fbf7f 18%, transparent);
color: #2e8f5f;
font-size: 1.5rem;
font-weight: 700;
}
html[data-tema="karanlik"] .tesekkur__isaret { color: #6adb9d; }
.tesekkur h3 {
font-family: var(--yazi-baslik);
font-size: clamp(1.2rem, 3vw, 1.5rem);
letter-spacing: -.02em;
margin: 0 0 .5rem;
}
.tesekkur p { margin: 0 0 1.4rem; color: var(--murekkep-soluk); font-size: .95rem; }
/* ---------- büyük görünüm (lightbox) ---------- */
body.kilitli { overflow: hidden; }
.buyuk {
position: fixed;
inset: 0;
z-index: 90;
display: grid;
place-items: center;
padding: clamp(.6rem, 3vw, 2rem);
}
.buyuk[hidden] { display: none !important; }
.buyuk__perde {
position: absolute;
inset: 0;
background: rgba(12, 9, 11, .72);
backdrop-filter: blur(6px);
animation: perdeGir 200ms ease-out;
}
@keyframes perdeGir { from { opacity: 0; } to { opacity: 1; } }
.buyuk__govde {
position: relative;
z-index: 1;
width: min(100%, 1040px);
max-height: 100%;
overflow: auto;
display: grid;
grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
background: var(--kart);
color: var(--murekkep);
border: 1px solid var(--cizgi);
border-radius: 22px;
box-shadow: 0 40px 90px -30px rgba(0, 0, 0, .7);
animation: buyukGir 240ms cubic-bezier(.2, .7, .3, 1);
}
@keyframes buyukGir {
from { opacity: 0; transform: translateY(14px) scale(.985); }
to { opacity: 1; transform: none; }
}
.buyuk__medya {
background: var(--zemin-alt);
display: grid;
place-items: center;
min-height: 240px;
}
.buyuk__medya img {
width: 100%;
height: auto;
max-height: 78vh;
object-fit: contain;
display: block;
}
.buyuk__bilgi {
padding: clamp(1.2rem, 3vw, 2rem);
display: flex;
flex-direction: column;
gap: .6rem;
}
.buyuk__rozet {
align-self: flex-start;
font-size: .68rem;
letter-spacing: .1em;
text-transform: uppercase;
font-weight: 600;
padding: .3rem .7rem;
border-radius: 999px;
background: var(--zemin-alt);
border: 1px solid var(--cizgi);
color: var(--murekkep-soluk);
}
.buyuk__ad {
font-family: var(--yazi-baslik);
font-weight: 800;
font-size: clamp(1.4rem, 3vw, 2rem);
letter-spacing: -.025em;
line-height: 1.1;
margin: .2rem 0 0;
}
.buyuk__meta { margin: 0; font-size: .85rem; color: var(--murekkep-soluk); }
.buyuk__aciklama { margin: .4rem 0 0; font-size: .95rem; color: var(--murekkep-soluk); }
.buyuk__gezinme {
grid-column: 1 / -1;
display: flex;
align-items: center;
justify-content: center;
gap: 1rem;
padding: .8rem;
border-top: 1px solid var(--cizgi);
}
.buyuk__ok {
width: 44px; height: 44px;
border-radius: 50%;
border: 1px solid var(--cizgi);
background: var(--zemin);
cursor: pointer;
font-size: 1.1rem;
line-height: 1;
transition: background-color var(--gecis);
}
.buyuk__ok:hover { background: var(--zemin-alt); }
.buyuk__sayac { font-size: .82rem; color: var(--murekkep-soluk); letter-spacing: .06em; }
.buyuk__kapat {
position: absolute;
top: .7rem;
right: .7rem;
z-index: 2;
width: 44px; height: 44px;
border-radius: 50%;
border: 1px solid var(--cizgi);
background: color-mix(in srgb, var(--kart) 86%, transparent);
backdrop-filter: blur(6px);
display: grid;
place-items: center;
cursor: pointer;
}
.buyuk__kapat svg {
width: 18px; height: 18px;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
}
.buyuk__kapat:hover { background: var(--zemin-alt); }
@media (max-width: 820px) {
.buyuk__govde {
grid-template-columns: 1fr;
max-height: 92vh;
}
.buyuk__medya img { max-height: 46vh; }
.buyuk__gezinme { padding: .7rem; }
}
/* ---------- alt bilgi ---------- */
.alt-bilgi {
border-top: 1px solid var(--cizgi);
padding: 1.6rem 0 2.2rem;
font-size: .85rem;
color: var(--murekkep-soluk);
}
.alt-bilgi__ic {
display: flex;
flex-wrap: wrap;
gap: 1rem;
justify-content: space-between;
align-items: center;
}
.alt-bilgi p { margin: 0; }
.alt-bilgi nav { display: flex; gap: 1.2rem; }
.alt-bilgi nav a { min-height: 44px; display: inline-flex; align-items: center; }
.alt-bilgi nav a:hover { color: var(--vurgu); }
/* ---------- yukarı çık ---------- */
.yukari {
position: fixed;
right: 1rem;
bottom: 1rem;
width: 48px; height: 48px;
border-radius: 50%;
border: 1px solid var(--cizgi);
background: var(--kart);
box-shadow: var(--golge);
display: grid;
place-items: center;
cursor: pointer;
z-index: 40;
}
.yukari svg {
width: 20px; height: 20px;
fill: none;
stroke: currentColor;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
}
.yukari:hover { background: var(--zemin-alt); }
/* =========================================================
RESPONSIVE
========================================================= */
@media (max-width: 1024px) {
.projeler { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kahraman__ic { grid-template-columns: 1fr; align-items: start; }
.kart-vizit { max-width: 560px; }
.hakkinda { grid-template-columns: 1fr; }
.iletisim { grid-template-columns: 1fr; }
.bolum-basi { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
.sarmal { width: min(100% - 1.6rem, var(--sarmal)); }
html { scroll-padding-top: 78px; }
.ust-bar__ic { min-height: 64px; }
.menu-dugme { display: grid; }
.tema-dugme__etiket { display: none; }
.tema-dugme { padding: 0; width: 44px; justify-content: center; }
.menu {
position: absolute;
top: calc(100% + 8px);
left: .8rem;
right: .8rem;
flex-direction: column;
gap: .2rem;
background: var(--kart);
border: 1px solid var(--cizgi);
border-radius: var(--yaricap);
box-shadow: var(--golge);
padding: .5rem;
display: none;
}
.menu.acik { display: flex; }
.menu a { justify-content: flex-start; width: 100%; }
.baslik-buyuk { font-size: clamp(3rem, 17vw, 4.6rem); }
.projeler { grid-template-columns: 1fr; }
.rakamlar { grid-template-columns: 1fr; gap: .8rem; }
.rakamlar div { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.rakamlar dd { margin: 0; }
.kahraman__eylem .dugme { flex: 1 1 100%; }
.kart-vizit { padding: 1.1rem; }
.alt-bilgi__ic { flex-direction: column; align-items: flex-start; }
.yukari { width: 44px; height: 44px; right: .8rem; bottom: .8rem; }
}
@media (max-width: 400px) {
.imza__metin { font-size: .88rem; }
.kart__alt { padding: .85rem .9rem 1rem; }
.kart__detay { padding: 0 .9rem 1rem; padding-top: .9rem; }
}
/* yazdırma */
@media print {
.ust-bar, .yukari, .serit, .tema-dugme, .menu-dugme { display: none !important; }
body { background: #fff; color: #000; }
}