
:root{
  --navy:#0b1830;
  --navy2:#102746;
  --blue:#294fa0;
  --cyan:#00abc1;
  --green:#91c83e;
  --green2:#79ad2d;
  --white:#fff;
  --text:#172331;
  --muted:#71808c;
  --line:#e6ebef;
  --bg:#f6f8fa;
  --radius:18px;
  --shadow:0 20px 60px rgba(9,27,48,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:#fff}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(1220px,calc(100% - 40px));margin:auto}

/* top */
.top{height:38px;background:#091426;color:#bfc9d4;font-size:12px}
.top .in{height:100%;display:flex;align-items:center;justify-content:space-between}
.top strong{color:#9dd14c}
.top-right{letter-spacing:.7px}

/* header */
.header{height:92px;background:#fff;border-bottom:1px solid #edf0f2;position:relative;z-index:50}
.header .in{height:100%;display:flex;align-items:center;justify-content:space-between}
.logo{width:300px}
.menu{display:flex;align-items:center;gap:5px}
.menu a{font-size:11px;font-weight:800;letter-spacing:1.2px;padding:12px 13px;border-radius:8px;transition:.2s}
.menu a:hover{color:var(--green2);background:#f2f8e9}
.menu .contact{background:var(--green);color:#fff;padding:13px 18px}
.menu .contact:hover{background:var(--green2)}
.menu-btn{display:none;border:0;background:var(--navy);color:#fff;border-radius:8px;padding:11px 14px;font-weight:800}

/* hero */
.hero{position:relative;min-height:650px;overflow:hidden;background:linear-gradient(115deg,#08172c 0%,#10294b 56%,#173f68 100%);color:#fff}
.hero:before{content:"";position:absolute;width:760px;height:760px;right:-300px;top:-280px;border-radius:50%;border:1px solid rgba(255,255,255,.10);box-shadow:0 0 0 70px rgba(255,255,255,.015),0 0 0 140px rgba(255,255,255,.012)}
.hero:after{content:"";position:absolute;width:500px;height:500px;left:-330px;bottom:-350px;border-radius:50%;background:rgba(0,171,193,.08)}
.hero-in{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;gap:55px;align-items:center;position:relative;z-index:2}
.kicker{font-size:11px;font-weight:900;letter-spacing:2.5px;color:var(--green);text-transform:uppercase}
.kicker:before{content:"";width:28px;height:2px;display:inline-block;background:var(--green);vertical-align:middle;margin-right:10px}
.hero h1{font-size:clamp(44px,5.2vw,76px);line-height:.98;letter-spacing:-3.2px;margin:18px 0 24px}
.hero h1 span{color:var(--cyan)}
.hero h1 em{font-style:normal;color:var(--green)}
.hero p{max-width:600px;color:#c9d4df;font-size:17px;line-height:1.8}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:9px;padding:14px 21px;font-size:11px;font-weight:900;letter-spacing:1px;border:1px solid #60748b}
.btn-green{background:var(--green);border-color:var(--green);color:#fff}
.btn-green:hover{background:var(--green2)}
.btn-outline{color:#fff}
.btn-outline:hover{background:#fff;color:var(--navy)}
.hero-note{display:flex;gap:25px;margin-top:30px;color:#9fafbe;font-size:11px}
.hero-note strong{display:block;color:#fff;font-size:14px;margin-bottom:3px}

/* VIDEO ALANI */
.visual {
    position: relative;
    height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Büyük dış daire */
.video-orb {
    width: 430px;
    height: 430px;
    border-radius: 50%;
    background: linear-gradient(145deg, #17385e, #0b1b31);
    border: 1px solid rgba(255,255,255,.18);

    box-shadow:
        0 30px 100px rgba(0,0,0,.35),
        inset 0 0 60px rgba(0,171,193,.10);

    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

/* Dış kesikli çizgi */
.video-orb:before {
    content: "";
    position: absolute;
    inset: 24px;
    border-radius: 50%;
    border: 1px dashed rgba(145,200,62,.45);
    pointer-events: none;
}

/* VIDEO */
.video-slot {
    width: 360px;
    height: 360px;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    padding: 0;
    border: 2px solid rgba(255,255,255,.35);
    background: #071525;
    display: block;
}

/* Video tamamen yuvarlak */
.video-slot video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 50%;
}

/* Video kontrolleri */
.video-slot video::-webkit-media-controls-panel {
    border-radius: 0 0 50% 50%;
}

/* intro strip */
.quick{margin-top:-35px;position:relative;z-index:5}
.quick-in{background:#fff;border-radius:17px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.quick-item{padding:25px;border-right:1px solid var(--line)}
.quick-item:last-child{border-right:0}
.quick-item span{font-size:10px;color:var(--green2);font-weight:900;letter-spacing:1.3px}
.quick-item h3{margin:7px 0 4px;font-size:15px}.quick-item p{margin:0;color:var(--muted);font-size:11px}

/* sections */
.section{padding:95px 0}
.section.gray{background:var(--bg)}
.head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:42px}
.head h2{margin:9px 0 0;font-size:40px;line-height:1.1;letter-spacing:-1.5px}
.head p{max-width:560px;color:var(--muted);font-size:14px;margin:0}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service{padding:29px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:hidden;transition:.25s}
.service:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#dce9cd}
.service:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-55px;bottom:-55px;background:#eff7e7}
.num{width:46px;height:46px;border-radius:13px;background:#eff7e6;color:var(--green2);display:grid;place-items:center;font-size:11px;font-weight:900}
.service h3{font-size:19px;margin:20px 0 8px}.service p{margin:0;color:var(--muted);font-size:13px}.service a{display:inline-block;margin-top:17px;color:var(--green2);font-size:10px;font-weight:900;letter-spacing:1px}

/* =========================
   ABOUT
========================= */

.section.gray {
    background: #f4f6f8;
    width: 100%;
    padding: 90px 0;
}

.about {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 70px;
    align-items: center;
}

/* SOL GÖRSEL */
.about-art {
    width: 100%;
    min-height: 0;
    height: auto;
    border-radius: 26px;
    overflow: hidden;
    position: relative;
    background: #0b1d35;
    box-shadow: 0 20px 50px rgba(10, 30, 55, .12);
}

.about-art img {
    width: 100%;
    height: auto;
    min-height: 0;
    display: block;
    object-fit: contain;
    object-position: center;
    border-radius: 26px;
}

/* SAĞ İÇERİK */
.about-content {
    padding: 10px 0;
}

.about h2 {
    font-size: 42px;
    line-height: 1.08;
    letter-spacing: -1.7px;
    margin: 10px 0 20px;
    color: var(--text);
}

.about p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 16px;
}

/* İSTATİSTİKLER */
.stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-top: 30px;
}

.stat {
    border-left: 3px solid var(--green);
    padding-left: 14px;
}

.stat strong {
    font-size: 27px;
    line-height: 1;
    display: block;
    color: var(--text);
    margin-bottom: 7px;
}

.stat small {
    color: var(--muted);
    font-size: 10px;
}

/* BUTON */
.about .btn {
    margin-top: 27px;
}

/* =========================
   MOBİL
========================= */

@media(max-width:560px){

    .section.gray {
        padding: 55px 0;
    }

    .about {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .about-art {
        width: 100%;
        border-radius: 20px;
    }

    .about-art img {
        width: 100%;
        height: auto;
        min-height: 0;
        border-radius: 20px;
    }

    .about-content {
        padding: 0;
    }

    .about h2 {
        font-size: 34px;
        line-height: 1.12;
    }

    .about p {
        font-size: 14px;
        line-height: 1.7;
    }

    .stats {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .stat strong {
        font-size: 24px;
    }
}
/* product band */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product{min-height:250px;border-radius:20px;padding:28px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(135deg,#0c203a,#1a4a74)}
.product:nth-child(2){background:linear-gradient(135deg,#16435a,#087f95)}
.product:nth-child(3){background:linear-gradient(135deg,#31531d,#79ad2d)}
.product:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;border:1px solid #fff2;right:-100px;bottom:-100px}
.product h3{font-size:23px;margin:55px 0 8px}.product p{color:#e1e8ed;font-size:12px;max-width:310px}.product a{font-size:10px;font-weight:900;letter-spacing:1px;color:#fff}

/* CTA */
.cta{background:linear-gradient(110deg,var(--green),#a2d450);padding:38px 0;color:#fff}
.cta-in{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{margin:0;font-size:28px}.cta p{margin:3px 0 0;font-size:13px;color:#f5ffe9}

/* footer */
.footer{background:#09111d;color:#9ba7b2;padding:48px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:35px;border-bottom:1px solid #1b2836}
.footer-logo{width:350px;background: ;border-radius:8px;padding:5px;margin-bottom:17px}
.footer h4{color:#fff;font-size:12px;letter-spacing:1px;margin:0 0 14px}.footer p,.footer a{font-size:11px;line-height:1.9}.footer a{display:block}.footer a:hover{color:var(--green)}
.copy{padding-top:18px;display:flex;justify-content:space-between;font-size:10px}

/* responsive */
@media(max-width:1050px){
 .menu a{padding:10px 8px;font-size:10px}.hero-in{gap:20px}.head h2,.about h2{font-size:34px}
}
/* TABLET / PC: keep desktop layout. Mobile rules are applied only in the 560px mobile block below. */
@media (max-width: 560px) and (hover: none) and (pointer: coarse) {

    /* =========================
       GENEL
    ========================= */

    html,
    body {
        width: 100%;
        overflow-x: hidden;
    }

    .container {
        width: calc(100% - 32px);
        max-width: 100%;
        margin: 0 auto;
    }

    .section {
        padding: 52px 0;
    }


    /* =========================
       ÜST BİLGİ / HEADER
    ========================= */

    .top {
        height: auto;
        min-height: 32px;
        padding: 7px 0;
        font-size: 10px;
    }

    .header {
        height: 68px;
    }

    .logo {
        width: 135px;
        height: auto;
    }


    /* =========================
       HERO
    ========================= */

    .hero-in {
        padding: 45px 0 35px;
    }

    .hero h1 {
        font-size: 39px;
        line-height: 1.04;
        letter-spacing: -1.4px;
        margin-bottom: 18px;
    }

    .hero p {
        font-size: 13px;
        line-height: 1.7;
        max-width: 100%;
    }

    .hero-note {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 20px;
    }


    /* =========================
       HERO VİDEO
    ========================= */

    .visual {
        width: 100%;
        height: 330px;
        margin: 0;
        padding: 0;
        transform: none;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .video-orb {
        width: 275px;
        height: 275px;
        flex-shrink: 0;
    }

    .video-slot {
        width: 238px;
        height: 238px;
        padding: 0;
        overflow: hidden;
        border-radius: 50%;
    }

    .video-slot video {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        border-radius: 50%;
    }


    /* =========================
       HIZLI MENÜ
    ========================= */

    .quick {
        margin-top: 0;
        padding: 0;
    }

    .quick-in {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .quick-item {
        min-height: 62px;
        padding: 15px 8px;
        border-right: 0 !important;
        border-bottom: 1px solid var(--line);
    }

    .quick-item:last-child {
        border-bottom: 0;
    }


    /* =========================
       BÖLÜM BAŞLIKLARI
    ========================= */

    .head {
        display: block;
        margin-bottom: 28px;
    }

    .head h2 {
        font-size: 29px;
        line-height: 1.15;
        letter-spacing: -0.8px;
    }

    .head p {
        margin-top: 12px;
        font-size: 13px;
        line-height: 1.65;
    }


    /* =========================
       HİZMETLER
    ========================= */

    .services,
    .product-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .service {
        min-height: 185px;
        padding: 24px 22px;
        border-radius: 16px;
    }

    .service h3 {
        font-size: 19px;
        line-height: 1.25;
        margin: 15px 0 8px;
    }

    .service p {
        font-size: 12px;
        line-height: 1.55;
    }

    .service a {
        font-size: 10px;
    }


    /* =========================
       ABOUT BÖLÜMÜ
    ========================= */

    .section.gray {
        width: 100%;
        padding: 50px 0;
        background: #f4f6f8;
    }

    .about {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px;
        align-items: start;
    }


    /* ABOUT GÖRSEL */

    .about-art {
        width: 100%;
        height: auto;
        min-height: 0;
        border-radius: 20px;
        overflow: hidden;
        background: #0b1d35;
    }

    .about-art img {
        width: 100%;
        height: auto;
        min-height: 0;
        display: block;
        object-fit: contain;
        object-position: center;
        border-radius: 20px;
    }


    /* ABOUT YAZI */

    .about-content {
        padding: 0;
    }

    .about h2 {
        font-size: 31px;
        line-height: 1.12;
        letter-spacing: -1px;
        margin: 9px 0 17px;
    }

    .about p {
        font-size: 13px;
        line-height: 1.7;
        margin-bottom: 14px;
    }


    /* =========================
       ABOUT İSTATİSTİKLER
    ========================= */

    .stats {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
        margin-top: 25px;
    }

    .stat {
        border-left: 2px solid var(--green);
        padding-left: 9px;
    }

    .stat strong {
        font-size: 21px;
        line-height: 1;
        margin-bottom: 5px;
    }

    .stat small {
        font-size: 9px;
        line-height: 1.3;
    }


    /* =========================
       BUTONLAR
    ========================= */

    .btn {
        min-height: 46px;
        padding: 0 19px;
        font-size: 10px;
    }

    .about .btn {
        margin-top: 19px;
    }


    /* =========================
       ÜRÜN BÖLÜMÜ
    ========================= */

    .product-grid {
        gap: 14px;
    }


    /* =========================
       CTA
    ========================= */

    .cta-in {
        display: block;
    }

    .cta h2 {
        font-size: 25px;
        line-height: 1.2;
    }

    .cta p {
        font-size: 12px;
        line-height: 1.6;
    }

    .cta .btn {
        margin-top: 17px;
    }


    /* =========================
       FOOTER
    ========================= */

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .copy {
        display: block;
        text-align: center;
        font-size: 10px;
    }

    .copy div {
        margin-top: 7px;
    }

}

@media (max-width: 560px) and (hover: none) and (pointer: coarse) {
    /* HİZMETLER */
    .services,
    .product-grid {
        grid-template-columns: 1fr;
    }

    /* ABOUT */
    .about {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .about-art {
        width: 100%;
        height: auto;
        min-height: auto;
        border-radius: 20px;
    }

    .about-art img {
        width: 100%;
        height: auto;
        min-height: auto;
        object-fit: contain;
        border-radius: 20px;
    }

    .about-content {
        padding-left: 0;
    }

    .about h2 {
        font-size: 34px;
        line-height: 1.12;
    }

    .about p {
        font-size: 14px;
        line-height: 1.7;
    }

    /* İSTATİSTİKLER */
    .stats {
        grid-template-columns: 1fr 1fr;
    }

    /* CTA */
    .cta-in {
        display: block;
    }

    .cta .btn {
        margin-top: 15px;
    }

    /* FOOTER */
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .copy {
        display: block;
        text-align: center;
    }

    .copy div {
        margin-top: 7px;
    }
}
}

.about-image {
    width: 100%;
    height: 450px;
    overflow: hidden;
    border-radius: 26px;
}

.about-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

/* =========================
   MOBİL MENÜ - SADECE MOBİL
   Masaüstü tasarımına dokunmaz.
========================= */
@media (max-width: 560px) {
    .header {
        height: 72px;
        position: relative;
        z-index: 1000;
    }

    .header .in {
        position: relative;
        min-height: 72px;
    }

    .header .logo {
        width: 255px;
        max-width: 100%;
    }

    /* Masaüstü menüsünü mobilde gizle */
    .header .menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        margin: 0;
        padding: 10px;
        background: #fff;
        border-top: 1px solid #edf0f2;
        border-bottom: 1px solid #e6ebef;
        box-shadow: 0 12px 30px rgba(9,27,48,.14);
        flex-direction: column;
        align-items: stretch;
        gap: 3px;
    }

    .header .menu a {
        display: block;
        width: 100%;
        padding: 14px 15px;
        border-radius: 7px;
        font-size: 11px;
        line-height: 1.2;
        text-align: left;
    }

    .header .menu .contact {
        text-align: center;
        margin-top: 4px;
    }

    /* Hamburger / menü butonu */
    .header .menu-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 42px;
        padding: 0;
        border: 0;
        border-radius: 8px;
        background: var(--navy);
        color: #fff;
        font-size: 0;
        cursor: pointer;
        flex-shrink: 0;
    }

    .header .menu-btn::before {
        content: "☰";
        font-size: 21px;
        line-height: 1;
    }

    /* JS gerektirmeden açılır: butona dokununca focus oluşur */
    .header .in:focus-within .menu {
        display: flex;
    }

    .header .menu-btn:focus {
        outline: 2px solid var(--green);
        outline-offset: 2px;
    }

    /* Üst bilgi mobilde taşmasın */
    .top {
        min-height: 34px;
        height: auto;
        padding: 7px 0;
    }

    .top .in {
        gap: 8px;
        align-items: center;
    }

    .top-right {
        text-align: right;
        font-size: 8px;
        line-height: 1.2;
    }
}