/* ===========================================================================
   HYS Mobil İmha — Modern tema
   Kurumsal, savunma sanayii odaklı mavi tasarım.
   Bağımsız stil dosyasıdır; klasik temanın CSS'i bu temada yüklenmez.
   =========================================================================== */

:root {
    --hys-lacivert:      #0f2846;
    --hys-lacivert-acik: #1b3a5f;
    --hys-mavi:          #1668d6;
    --hys-mavi-koyu:     #0f4fa8;
    --hys-mavi-acik:     #e8f1fd;
    --hys-yesil:         #3d8b5f;
    --hys-yesil-acik:    #eaf6ee;

    --hys-metin:         #17212f;
    --hys-metin-soluk:   #5b6b80;
    --hys-cizgi:         #e3e9f2;
    --hys-zemin:         #ffffff;
    --hys-zemin-alt:     #f5f8fc;

    --hys-radius:        14px;
    --hys-radius-sm:     10px;
    --hys-golge:         0 1px 2px rgba(15, 40, 70, .04), 0 8px 24px rgba(15, 40, 70, .06);
    --hys-golge-sm:      0 1px 3px rgba(15, 40, 70, .08);
    --hys-gecis:         .22s cubic-bezier(.4, 0, .2, 1);

    --hys-kapsayici:     1180px;
}

/* --- temel ------------------------------------------------------------- */

*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body.hys-modern {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 "Helvetica Neue", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.65;
    color: var(--hys-metin);
    background: var(--hys-zemin);
    -webkit-font-smoothing: antialiased;
}

.hys-modern img { max-width: 100%; height: auto; display: block; }

.hys-modern a { color: var(--hys-mavi); text-decoration: none; transition: color var(--hys-gecis); }
.hys-modern a:hover,
.hys-modern a:focus-visible { color: var(--hys-mavi-koyu); }

.hys-modern h1,
.hys-modern h2,
.hys-modern h3,
.hys-modern h4 {
    margin: 0 0 .5em;
    line-height: 1.22;
    color: var(--hys-lacivert);
    font-weight: 700;
    letter-spacing: -.01em;
}

.hys-modern h1 { font-size: clamp(2rem, 4.2vw, 3.05rem); }
.hys-modern h2 { font-size: clamp(1.55rem, 2.9vw, 2.2rem); }
.hys-modern h3 { font-size: 1.16rem; }
.hys-modern p  { margin: 0 0 1rem; }

.hys-modern :focus-visible {
    outline: 3px solid var(--hys-mavi);
    outline-offset: 2px;
    border-radius: 4px;
}

/* İçeriğe atla bağlantısı (klavye kullanıcıları için) */
.hys-atla {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 200;
    background: var(--hys-lacivert);
    color: #fff;
    padding: 12px 20px;
    border-radius: 0 0 var(--hys-radius-sm) 0;
}
.hys-atla:focus {
    left: 0;
    color: #fff;
}

/* --- düzen ------------------------------------------------------------- */

.hys-kapsayici {
    width: 100%;
    max-width: var(--hys-kapsayici);
    margin-inline: auto;
    padding-inline: 20px;
}

.hys-bolum { padding: clamp(56px, 7vw, 92px) 0; }
.hys-bolum--alt { background: var(--hys-zemin-alt); }

.hys-bolum-etiket {
    display: block;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--hys-mavi);
    margin-bottom: .6rem;
}

.hys-bolum-aciklama {
    max-width: 62ch;
    color: var(--hys-metin-soluk);
}

.hys-izgara {
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr));
}

/* --- düğmeler ---------------------------------------------------------- */

.hys-dugme {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 26px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .95rem;
    font-weight: 600;
    cursor: pointer;
    transition: transform var(--hys-gecis), background var(--hys-gecis),
                border-color var(--hys-gecis), box-shadow var(--hys-gecis);
}

.hys-modern .hys-dugme--birincil,
.hys-dugme--birincil {
    background: var(--hys-mavi);
    color: #fff;
    box-shadow: 0 6px 18px rgba(22, 104, 214, .25);
}
.hys-modern .hys-dugme--birincil:hover,
.hys-modern .hys-dugme--birincil:focus-visible,
.hys-dugme--birincil:hover,
.hys-dugme--birincil:focus-visible {
    background: var(--hys-mavi-koyu);
    color: #fff;
    transform: translateY(-1px);
}

.hys-modern .hys-dugme--ikincil,
.hys-dugme--ikincil {
    background: #fff;
    color: var(--hys-lacivert);
    border-color: var(--hys-cizgi);
}
.hys-modern .hys-dugme--ikincil:hover,
.hys-modern .hys-dugme--ikincil:focus-visible,
.hys-dugme--ikincil:hover,
.hys-dugme--ikincil:focus-visible {
    border-color: var(--hys-mavi);
    color: var(--hys-mavi);
}

.hys-modern .hys-dugme--acik,
.hys-dugme--acik {
    background: rgba(255, 255, 255, .14);
    color: #fff;
    border-color: rgba(255, 255, 255, .34);
}
.hys-modern .hys-dugme--acik:hover,
.hys-modern .hys-dugme--acik:focus-visible,
.hys-dugme--acik:hover,
.hys-dugme--acik:focus-visible {
    background: rgba(255, 255, 255, .24);
    color: #fff;
}

.hys-modern .hys-bag-ok,
.hys-bag-ok {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-weight: 600;
    font-size: .92rem;
}
.hys-bag-ok::after {
    content: "→";
    transition: transform var(--hys-gecis);
}
.hys-bag-ok:hover::after { transform: translateX(3px); }

/* --- üst bar ve menü --------------------------------------------------- */

.hys-ustbar {
    background: var(--hys-lacivert);
    color: rgba(255, 255, 255, .88);
    font-size: .86rem;
}
.hys-ustbar .hys-kapsayici {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    align-items: center;
    justify-content: space-between;
    min-height: 40px;
}
.hys-ustbar a { color: #fff; }
.hys-ustbar-iletisim {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    align-items: center;
}

.hys-baslik {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: saturate(180%) blur(10px);
    border-bottom: 1px solid var(--hys-cizgi);
}
.hys-baslik .hys-kapsayici {
    display: flex;
    align-items: center;
    gap: 20px;
    min-height: 74px;
}

.hys-logo { flex: 0 0 auto; }
.hys-logo img { height: 46px; width: auto; }

.hys-menu {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
    list-style: none;
    padding: 0;
}
.hys-menu > li { position: relative; }
.hys-menu > li > a {
    display: block;
    padding: 10px 14px;
    border-radius: var(--hys-radius-sm);
    color: var(--hys-metin);
    font-size: .95rem;
    font-weight: 500;
}
.hys-menu > li > a:hover,
.hys-menu > li > a:focus-visible,
.hys-menu > li.aktif > a {
    background: var(--hys-mavi-acik);
    color: var(--hys-mavi-koyu);
}

/* alt menü */
.hys-menu .hys-altmenu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 248px;
    margin: 0;
    padding: 8px;
    list-style: none;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    box-shadow: var(--hys-golge);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity var(--hys-gecis), transform var(--hys-gecis), visibility var(--hys-gecis);
}
.hys-menu > li:hover > .hys-altmenu,
.hys-menu > li:focus-within > .hys-altmenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.hys-altmenu a {
    display: block;
    padding: 9px 12px;
    border-radius: 8px;
    color: var(--hys-metin);
    font-size: .92rem;
}
.hys-altmenu a:hover,
.hys-altmenu a:focus-visible {
    background: var(--hys-zemin-alt);
    color: var(--hys-mavi-koyu);
}

.hys-baslik-cta { flex: 0 0 auto; }

.hys-menu-dugme {
    display: none;
    margin-left: auto;
    width: 44px;
    height: 44px;
    padding: 0;
    background: var(--hys-zemin-alt);
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius-sm);
    cursor: pointer;
}
.hys-menu-dugme span,
.hys-menu-dugme span::before,
.hys-menu-dugme span::after {
    display: block;
    width: 18px;
    height: 2px;
    margin-inline: auto;
    background: var(--hys-lacivert);
    border-radius: 2px;
    transition: transform var(--hys-gecis), opacity var(--hys-gecis);
}
.hys-menu-dugme span { position: relative; }
.hys-menu-dugme span::before { content: ""; position: absolute; top: -6px; }
.hys-menu-dugme span::after  { content: ""; position: absolute; top: 6px; }
.hys-menu-dugme[aria-expanded="true"] span { background: transparent; }
.hys-menu-dugme[aria-expanded="true"] span::before { transform: translateY(6px) rotate(45deg); }
.hys-menu-dugme[aria-expanded="true"] span::after  { transform: translateY(-6px) rotate(-45deg); }

/* --- hero -------------------------------------------------------------- */

.hys-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #eaf2fd 0%, #f6f9fd 55%, #ffffff 100%);
}
.hys-hero-ic {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
    gap: clamp(28px, 5vw, 60px);
    align-items: center;
    padding: clamp(46px, 6vw, 84px) 0 clamp(36px, 5vw, 60px);
}
.hys-hero h1 { margin-bottom: 1rem; }
.hys-hero h1 .vurgu { color: var(--hys-mavi); display: block; }
.hys-hero-metin {
    max-width: 56ch;
    font-size: 1.04rem;
    color: var(--hys-metin-soluk);
}
.hys-hero-dugmeler {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 1.6rem;
}
.hys-hero-gorsel {
    position: relative;
    border-radius: var(--hys-radius);
    overflow: hidden;
    box-shadow: var(--hys-golge);
}
.hys-hero-gorsel img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.hys-hero-rozet {
    position: absolute;
    right: 16px;
    top: 16px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 15px;
    background: rgba(255, 255, 255, .96);
    border-radius: var(--hys-radius-sm);
    box-shadow: var(--hys-golge-sm);
    font-size: .84rem;
    font-weight: 600;
    color: var(--hys-lacivert);
}

/* hero altı güven şeridi */
.hys-guven {
    border-top: 1px solid rgba(15, 40, 70, .08);
    background: rgba(255, 255, 255, .62);
}
.hys-guven-liste {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
    gap: 4px 26px;
    margin: 0;
    padding: 18px 0;
    list-style: none;
}
.hys-guven-liste li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    font-size: .9rem;
    font-weight: 600;
    color: var(--hys-lacivert);
}
.hys-guven-liste svg { flex: 0 0 auto; color: var(--hys-mavi); }

/* --- kartlar ----------------------------------------------------------- */

.hys-kart {
    display: flex;
    flex-direction: column;
    padding: 26px;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    transition: transform var(--hys-gecis), box-shadow var(--hys-gecis),
                border-color var(--hys-gecis);
}
.hys-kart:hover {
    transform: translateY(-3px);
    border-color: #cfe0f7;
    box-shadow: var(--hys-golge);
}
.hys-kart h3 { margin-bottom: .45rem; }
.hys-kart p {
    flex: 1 1 auto;
    margin-bottom: 1.1rem;
    font-size: .94rem;
    color: var(--hys-metin-soluk);
}

.hys-ikon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin-bottom: 16px;
    border-radius: 12px;
    background: var(--hys-mavi-acik);
    color: var(--hys-mavi);
}
.hys-ikon--yesil { background: var(--hys-yesil-acik); color: var(--hys-yesil); }

/* istatistik kutuları */
.hys-istatistik {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 148px), 1fr));
    gap: 0;
    margin: 26px 0;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    overflow: hidden;
    background: #fff;
}
.hys-istatistik > div {
    padding: 20px 18px;
    border-right: 1px solid var(--hys-cizgi);
}
.hys-istatistik > div:last-child { border-right: 0; }
.hys-istatistik .deger {
    display: block;
    font-size: 1.22rem;
    font-weight: 700;
    color: var(--hys-lacivert);
}
.hys-istatistik .etiket {
    font-size: .84rem;
    color: var(--hys-metin-soluk);
}

/* --- iki sütunlu bölüm ------------------------------------------------- */

.hys-ikili > * { min-width: 0; }

.hys-ikili {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
    /* izgara ogelerinin tasmasini onler (min-width:auto varsayilanini ezer) */
    gap: clamp(26px, 4vw, 52px);
    align-items: center;
}

.hys-panel {
    padding: 26px;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    box-shadow: var(--hys-golge-sm);
}

/* --- karşılaştırma tablosu --------------------------------------------- */

.hys-tablo-sarmal {
    overflow-x: auto;
    min-width: 0;
    max-width: 100%;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    background: #fff;
}
.hys-tablo {
    width: 100%;
    min-width: 640px;
    border-collapse: collapse;
    font-size: .92rem;
}
.hys-tablo th,
.hys-tablo td {
    padding: 15px 18px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--hys-cizgi);
}
.hys-tablo thead th {
    background: var(--hys-zemin-alt);
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: var(--hys-metin-soluk);
}
.hys-tablo tbody tr:last-child th,
.hys-tablo tbody tr:last-child td { border-bottom: 0; }
.hys-tablo .kriter {
    font-weight: 600;
    color: var(--hys-lacivert);
    white-space: nowrap;
}
.hys-tablo .hys-vurgu {
    background: var(--hys-mavi-acik);
    color: var(--hys-lacivert);
}

/* --- sektör kartları --------------------------------------------------- */

.hys-sektorler {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
    gap: 18px;
}
.hys-sektor {
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    transition: transform var(--hys-gecis), box-shadow var(--hys-gecis);
}
.hys-sektor:hover { transform: translateY(-3px); box-shadow: var(--hys-golge); }
.hys-sektor img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}
.hys-sektor-govde { padding: 15px 17px 19px; }
.hys-sektor-govde h3 { font-size: 1rem; margin-bottom: .3rem; }
.hys-sektor-govde p {
    margin: 0;
    font-size: .86rem;
    color: var(--hys-metin-soluk);
}

/* --- süreç adımları ---------------------------------------------------- */

.hys-adimlar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
    gap: 22px;
    counter-reset: hysadim;
}
.hys-adim {
    position: relative;
    padding-top: 6px;
    counter-increment: hysadim;
}
.hys-adim::before {
    content: counter(hysadim);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-bottom: 13px;
    border-radius: 50%;
    background: var(--hys-mavi);
    color: #fff;
    font-size: .86rem;
    font-weight: 700;
}
.hys-adim h3 { font-size: 1.02rem; }
.hys-adim p {
    margin: 0;
    font-size: .9rem;
    color: var(--hys-metin-soluk);
}

/* --- sürdürülebilirlik kutusu ------------------------------------------ */

.hys-yesil-kutu {
    padding: 28px;
    background: var(--hys-yesil-acik);
    border: 1px solid #d3ead9;
    border-radius: var(--hys-radius);
}
.hys-yesil-kutu h3 { color: #2c6a47; }
.hys-yesil-kutu p { color: #40614e; margin-bottom: 0; }

/* --- SSS --------------------------------------------------------------- */

.hys-sss { display: grid; gap: 12px; }
.hys-sss details {
    padding: 4px 20px;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius-sm);
    transition: border-color var(--hys-gecis);
}
.hys-sss details[open] { border-color: #cfe0f7; }
.hys-sss summary {
    padding: 16px 30px 16px 0;
    position: relative;
    font-weight: 600;
    color: var(--hys-lacivert);
    cursor: pointer;
    list-style: none;
}
.hys-sss summary::-webkit-details-marker { display: none; }
.hys-sss summary::after {
    content: "+";
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--hys-mavi);
}
.hys-sss details[open] summary::after { content: "−"; }
.hys-sss .cevap {
    padding-bottom: 18px;
    font-size: .94rem;
    color: var(--hys-metin-soluk);
}

/* --- CTA şeridi -------------------------------------------------------- */

.hys-cta {
    position: relative;
    padding: clamp(40px, 5vw, 60px) 0;
    background: linear-gradient(120deg, var(--hys-lacivert) 0%, #17456f 100%);
    color: #fff;
}
.hys-cta .hys-kapsayici {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
}
.hys-cta h2 { color: #fff; margin-bottom: .3rem; }
.hys-cta p { margin: 0; color: rgba(255, 255, 255, .82); }
.hys-cta-iletisim {
    display: grid;
    gap: 9px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: .93rem;
}
.hys-cta-iletisim li { display: flex; align-items: center; gap: 10px; }
.hys-cta-iletisim a { color: #fff; }
.hys-cta-iletisim a:hover { text-decoration: underline; }

/* --- alt bilgi --------------------------------------------------------- */

.hys-altbilgi {
    padding: clamp(44px, 5vw, 64px) 0 0;
    background: var(--hys-zemin-alt);
    border-top: 1px solid var(--hys-cizgi);
    font-size: .92rem;
}
.hys-altbilgi-ust {
    display: grid;
    grid-template-columns: minmax(220px, 1.3fr) repeat(auto-fit, minmax(150px, 1fr));
    gap: 30px;
    padding-bottom: 36px;
}
.hys-altbilgi img { height: 52px; width: auto; margin-bottom: 14px; }
.hys-altbilgi h3 {
    font-size: .82rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--hys-metin-soluk);
    margin-bottom: 12px;
}
.hys-altbilgi ul { margin: 0; padding: 0; list-style: none; }
.hys-altbilgi li { margin-bottom: 8px; }
.hys-altbilgi a { color: var(--hys-metin); }
.hys-altbilgi a:hover { color: var(--hys-mavi); }
.hys-altbilgi-adres {
    max-width: 34ch;
    color: var(--hys-metin-soluk);
}

.hys-sosyal { display: flex; gap: 9px; margin-top: 14px; }
.hys-sosyal a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: 10px;
    color: var(--hys-lacivert);
    transition: background var(--hys-gecis), color var(--hys-gecis),
                border-color var(--hys-gecis);
}
.hys-sosyal a:hover,
.hys-sosyal a:focus-visible {
    background: var(--hys-mavi);
    border-color: var(--hys-mavi);
    color: #fff;
}

.hys-altbilgi-alt {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    align-items: center;
    justify-content: space-between;
    padding: 18px 0 22px;
    border-top: 1px solid var(--hys-cizgi);
    color: var(--hys-metin-soluk);
    font-size: .88rem;
}
.hys-altbilgi-alt a { color: var(--hys-metin-soluk); }
.hys-altbilgi-alt a:hover { color: var(--hys-mavi); }
.hys-altbilgi-alt .powered-by a { font-weight: 600; color: var(--hys-lacivert); }

/* --- içerik sayfaları -------------------------------------------------- */

.hys-sayfa-basligi {
    padding: clamp(38px, 5vw, 62px) 0;
    background: linear-gradient(135deg, #eaf2fd 0%, #f6f9fd 100%);
    border-bottom: 1px solid var(--hys-cizgi);
}
.hys-sayfa-basligi h1 { margin-bottom: .2rem; }

/* kırıntı yolu (breadcrumb) */
.hys-kirinti {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 12px;
    padding: 0;
    list-style: none;
    font-size: .86rem;
    color: var(--hys-metin-soluk);
}
.hys-kirinti li { display: flex; align-items: center; gap: 6px; }
.hys-kirinti li + li::before { content: "/"; color: #b8c4d4; }

.hys-icerik { padding: clamp(40px, 5vw, 68px) 0; }
.hys-icerik h2 { margin-top: 2rem; }
.hys-icerik h2:first-child { margin-top: 0; }
.hys-icerik ul,
.hys-icerik ol { padding-left: 1.3rem; }
.hys-icerik li { margin-bottom: .45rem; }

/* --- formlar ----------------------------------------------------------- */

.hys-form { display: grid; gap: 16px; }
.hys-form-satir {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
    gap: 16px;
}
.hys-alan { display: grid; gap: 6px; }
.hys-alan label {
    font-size: .89rem;
    font-weight: 600;
    color: var(--hys-lacivert);
}
.hys-alan .zorunlu { color: #c53030; }

.hys-modern input[type="text"],
.hys-modern input[type="email"],
.hys-modern input[type="tel"],
.hys-modern input[type="password"],
.hys-modern input[type="file"],
.hys-modern select,
.hys-modern textarea {
    width: 100%;
    padding: 11px 14px;
    font: inherit;
    font-size: .95rem;
    color: var(--hys-metin);
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius-sm);
    transition: border-color var(--hys-gecis), box-shadow var(--hys-gecis);
}
.hys-modern textarea { min-height: 128px; resize: vertical; }

.hys-modern input:focus,
.hys-modern select:focus,
.hys-modern textarea:focus {
    outline: none;
    border-color: var(--hys-mavi);
    box-shadow: 0 0 0 3px rgba(22, 104, 214, .14);
}

.hys-alan--hatali input,
.hys-alan--hatali select,
.hys-alan--hatali textarea { border-color: #e53e3e; }

.hys-hata {
    font-size: .84rem;
    color: #c53030;
}

.hys-onay {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: .9rem;
    color: var(--hys-metin-soluk);
}
.hys-onay input { margin-top: 4px; flex: 0 0 auto; }

/* bildirim kutuları */
.hys-bildirim {
    padding: 15px 18px;
    border-radius: var(--hys-radius-sm);
    border: 1px solid;
    font-size: .93rem;
}
.hys-bildirim--basarili {
    background: #edf8f1;
    border-color: #bfe3cc;
    color: #24623d;
}
.hys-bildirim--hata {
    background: #fdecec;
    border-color: #f5c2c2;
    color: #9b2626;
}
.hys-bildirim--bilgi {
    background: var(--hys-mavi-acik);
    border-color: #c6dcf8;
    color: #14508f;
}

/* bot tuzağı - ekranda görünmez, ekran okuyucuya da kapalı */
.hys-tuzak {
    position: absolute !important;
    left: -9999px !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* --- belgeler ---------------------------------------------------------- */

.hys-belgeler {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
    gap: 22px;
}
.hys-belge {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    transition: transform var(--hys-gecis), box-shadow var(--hys-gecis);
}
.hys-belge:hover { transform: translateY(-3px); box-shadow: var(--hys-golge); }
.hys-belge-gorsel {
    display: block;
    background: var(--hys-zemin-alt);
    border-bottom: 1px solid var(--hys-cizgi);
}
.hys-belge-gorsel img {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: contain;
    padding: 14px;
}
.hys-belge-pdf {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 3 / 4;
    color: var(--hys-mavi);
}
.hys-belge-govde { padding: 16px 18px 20px; }
.hys-belge-govde h3 { font-size: .98rem; margin-bottom: .3rem; }
.hys-belge-meta {
    font-size: .83rem;
    color: var(--hys-metin-soluk);
    margin-bottom: .9rem;
}
.hys-etiket {
    display: inline-block;
    padding: 3px 9px;
    border-radius: 999px;
    background: var(--hys-mavi-acik);
    color: var(--hys-mavi-koyu);
    font-size: .74rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

/* --- WhatsApp / yukarı çık --------------------------------------------- */

.hys-whatsapp {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 90;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    background: #25d366;
    color: #fff;
    border-radius: 50%;
    box-shadow: 0 6px 20px rgba(37, 211, 102, .4);
    transition: transform var(--hys-gecis);
}
.hys-whatsapp:hover { transform: scale(1.06); color: #fff; }

.hys-yukari {
    position: fixed;
    right: 22px;
    bottom: 88px;
    z-index: 90;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: #fff;
    color: var(--hys-lacivert);
    border: 1px solid var(--hys-cizgi);
    border-radius: 50%;
    box-shadow: var(--hys-golge-sm);
    opacity: 0;
    visibility: hidden;
    cursor: pointer;
    transition: opacity var(--hys-gecis), visibility var(--hys-gecis);
}
.hys-yukari.gorunur { opacity: 1; visibility: visible; }

/* --- çerez onayı ------------------------------------------------------- */

.hys-cerez {
    position: fixed;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    z-index: 120;
    width: min(680px, calc(100% - 32px));
    display: none;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
    padding: 18px 22px;
    background: #fff;
    border: 1px solid var(--hys-cizgi);
    border-radius: var(--hys-radius);
    box-shadow: 0 10px 40px rgba(15, 40, 70, .16);
    font-size: .9rem;
}
.hys-cerez.acik { display: flex; }
.hys-cerez p { flex: 1 1 260px; margin: 0; color: var(--hys-metin-soluk); }
.hys-cerez-dugmeler { display: flex; gap: 9px; flex-wrap: wrap; }
.hys-cerez .hys-dugme { padding: 9px 18px; font-size: .88rem; }

/* --- duyarlı ----------------------------------------------------------- */

@media (max-width: 991px) {
    .hys-hero-ic { grid-template-columns: 1fr; }
    .hys-hero-gorsel { order: -1; }

    .hys-menu-dugme { display: block; }

    .hys-menu {
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 2px;
        max-height: calc(100vh - 74px);
        overflow-y: auto;
        margin: 0;
        padding: 10px 16px 18px;
        background: #fff;
        border-bottom: 1px solid var(--hys-cizgi);
        box-shadow: var(--hys-golge);
    }
    .hys-menu.acik { display: flex; }

    .hys-menu .hys-altmenu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        min-width: 0;
        margin: 2px 0 6px 12px;
        padding: 0 0 0 10px;
        border: 0;
        border-left: 2px solid var(--hys-cizgi);
        border-radius: 0;
        box-shadow: none;
    }

    .hys-baslik-cta { display: none; }
}

@media (max-width: 575px) {
    .hys-ustbar { font-size: .8rem; }
    .hys-istatistik > div { border-right: 0; border-bottom: 1px solid var(--hys-cizgi); }
    .hys-istatistik > div:last-child { border-bottom: 0; }
    .hys-cta .hys-kapsayici { flex-direction: column; align-items: flex-start; }
}

/* --- yazdırma ---------------------------------------------------------- */

@media print {
    .hys-ustbar,
    .hys-baslik,
    .hys-whatsapp,
    .hys-yukari,
    .hys-cerez,
    .hys-cta { display: none !important; }
    .hys-modern { background: #fff; }
}

/* --- hareket azaltma tercihi ------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
    .hys-modern *,
    .hys-modern *::before,
    .hys-modern *::after {
        animation-duration: .001ms !important;
        transition-duration: .001ms !important;
        scroll-behavior: auto !important;
    }
}
