/* Basit responsive stil - yeşil/beyaz tema */
:root{
    --yesil:#0b6b35;
    --yesil-orta:#128043;
    --acik-yesil:#19a055;
    --beyaz:#ffffff;
    --metin:#333;
    --max-w:1200px;
}
*{box-sizing:border-box}
textarea{resize:none}
body{
    font-family:"Montserrat",system-ui,sans-serif;
    color:var(--metin);
    margin:0;
    line-height:1.5;
    overflow-x:hidden;
    font-size:16px;
    font-weight:400;
    letter-spacing:-0.01em;
    background:#fff;
}
h1,h2,h3,h4,
.cart-title,.contact-title,.refs-page-title,.projects-wall-title,
.ig-feed-title,.refs-marquee-title,.home-video-title,.services-title,
.home-projects-title,.home-projects-sub,.services-tile-copy h3,.services-tile-copy p{
    font-family:"Montserrat",system-ui,sans-serif;
    font-weight:700;
    letter-spacing:-0.02em;
    line-height:1.15;
}
.home-projects-sub,.services-tile-copy p{
    font-weight:500;
    letter-spacing:0.01em;
    line-height:1.5;
}
.ana-nav a{color:var(--yesil);text-decoration:none;font-weight:700;font-size:15px;white-space:nowrap;letter-spacing:0.01em}
body.no-scroll{overflow:hidden;height:100vh}
.container{width:95%;max-width:var(--max-w);margin:0 auto}
.site-header{background:var(--beyaz);border-bottom:1px solid #e6e6e6;overflow-x:clip;position:sticky;top:0;z-index:3000}
.site-header .container{width:100%;max-width:none;padding:0 10px}
.header-inner{display:flex;align-items:center;padding:14px 0}
.logo{flex:0 0 auto;min-width:140px;margin-right:20px}
.logo img{height:80px} /* büyütüldü */
.mobile-header-user{display:none}
.mobile-header-actions{display:none}
.site-header{position:sticky;top:0;z-index:3000}
.ana-nav{flex:1;min-width:0;display:flex;justify-content:center}
.ana-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:clamp(16px,2.2vw,32px);align-items:center}
.ana-nav .dropdown{position:absolute;left:0;top:100%;background:#fff;border:1px solid #eee;padding:0;min-width:220px;display:none;z-index:1200}
.ana-nav .dropdown li{padding:0;white-space:nowrap}
.ana-nav .dropdown li a{display:block;padding:6px 14px}
.ana-nav .nav-item:hover .dropdown{display:block}
.ana-nav .dropdown li:hover > a { background: rgba(25,160,85,0.12); }
.ana-nav .nav-item{position:relative}
.ana-nav .nav-item > a{padding-right:0}
.ana-nav .nav-item > a::after{content:'▾';display:inline-block;margin-left:6px;transition:transform .18s ease;font-size:12px;color:var(--yesil)}
.ana-nav .nav-item:hover > a::after{transform:rotate(180deg)}
.header-icons .icon{margin-left:0;color:var(--yesil)}
.header-icons{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-left:36px;padding-right:26px}
.user-menu{position:relative;display:flex;align-items:center;margin-right:6px}
.user-menu .user-trigger{margin-left:0;position:relative;z-index:2}
.user-name{
    position:absolute;
    top:calc(100% + 2px);
    left:50%;
    transform:translateX(-50%);
    font-size:12px;
    color:#1e73be;
    font-weight:600;
    line-height:1.15;
    width:max-content;
    max-width:140px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    text-align:center;
    pointer-events:none;
    z-index:1;
}
.user-dropdown{
    position:absolute;
    top:calc(100% + 16px);
    left:50%;
    width:max-content;
    min-width:160px;
    z-index:1300;
    padding-top:8px;
    transform:translateX(-50%);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s ease, visibility 0s linear .2s;
}
.user-dropdown::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-18px;
    height:18px;
}
.user-dropdown-inner{
    background:#fff;
    border:1px solid #e6e6e6;
    border-radius:8px;
    box-shadow:0 8px 18px rgba(0,0,0,0.08);
    overflow:hidden;
    transform:scaleY(0);
    transform-origin:top center;
    transition:transform .22s cubic-bezier(.22,1,.36,1);
}
.user-dropdown a{display:block;padding:10px 12px;color:var(--yesil);text-decoration:none;font-size:14px;font-weight:600;text-align:center}
.user-dropdown a:hover{background:#f4faf6}
.user-dropdown a.dropdown-logout{color:#b00020;font-weight:700}
.user-dropdown a.dropdown-logout:hover{background:#ffecec}
.user-menu:hover .user-dropdown,
.user-menu:focus-within .user-dropdown{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition:opacity .2s ease, visibility 0s linear 0s;
}
.user-menu:hover .user-dropdown-inner,
.user-menu:focus-within .user-dropdown-inner{
    transform:scaleY(1);
}
.user-menu-guest{margin-right:4px}
.sepet-icon-wrap{position:relative}
.sepet-sayac{
    position:absolute;
    right:-8px;
    top:-8px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:#b00020;
    color:#fff;
    font-size:11px;
    font-weight:700;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
}
.site-flash{
    position:fixed;
    left:50%;
    top:calc(var(--header-h, 80px) + 12px);
    transform:translateX(-50%);
    width:min(92vw, 560px);
    z-index:2600;
    margin:0;
    padding:10px 12px;
    border-radius:8px;
    font-weight:600;
    box-shadow:0 8px 20px rgba(0,0,0,0.14);
    transition:opacity .2s ease, transform .2s ease;
}
.site-flash.ok{background:#e7f7ec;color:#0b6b35;border:1px solid #cde8d3}
.site-flash.hata{background:#ffecec;color:#b00020;border:1px solid #f5c2c2}

/* ---- Ana sayfa ilk açılış (intro) ---- */
body.home-intro .site-header{
    transform:translateY(110%);
    opacity:0;
    pointer-events:none;
}
body.home-intro.is-intro-play .site-header{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
    transition:transform .95s cubic-bezier(.22,1,.36,1), opacity .7s ease;
}
body.home-intro .site-header .logo img{
    transform:scale(.86);
    opacity:0;
}
body.home-intro.is-intro-play .site-header .logo img{
    transform:scale(1);
    opacity:1;
    transition:transform .85s cubic-bezier(.22,1,.36,1) .18s, opacity .6s ease .18s;
}
body.home-intro .ana-nav,
body.home-intro .header-icons,
body.home-intro .mobile-header-actions{
    opacity:0;
    transform:translateY(14px);
}
body.home-intro.is-intro-play .ana-nav,
body.home-intro.is-intro-play .header-icons,
body.home-intro.is-intro-play .mobile-header-actions{
    opacity:1;
    transform:none;
    transition:opacity .55s ease .42s, transform .65s cubic-bezier(.22,1,.36,1) .42s;
}
body.home-intro .hero{
    opacity:0;
    transform:scale(.88);
    filter:saturate(.85);
}
body.home-intro.is-intro-play .hero{
    opacity:1;
    transform:scale(1);
    filter:none;
    transition:opacity .9s ease .08s, transform 1.15s cubic-bezier(.22,1,.36,1) .08s, filter 1s ease .08s;
}
body.home-intro .hero .ok,
body.home-intro .hero .nokta-grup{
    opacity:0;
    transform:translateY(18px);
}
body.home-intro.is-intro-play .hero .ok.sol{
    opacity:1;
    transform:translateY(-50%);
    transition:opacity .45s ease .75s, transform .55s cubic-bezier(.22,1,.36,1) .75s;
}
body.home-intro.is-intro-play .hero .ok.sag{
    opacity:1;
    transform:translateY(-50%);
    transition:opacity .45s ease .82s, transform .55s cubic-bezier(.22,1,.36,1) .82s;
}
body.home-intro.is-intro-play .hero .nokta-grup{
    opacity:1;
    transform:translateX(-50%);
    transition:opacity .45s ease .9s, transform .55s cubic-bezier(.22,1,.36,1) .9s;
}
body.home-intro .services-section{
    opacity:0;
    transform:translateY(36px);
}
body.home-intro.is-intro-play .services-section{
    opacity:1;
    transform:none;
    transition:opacity .7s ease .55s, transform .85s cubic-bezier(.22,1,.36,1) .55s;
}
@media (prefers-reduced-motion: reduce){
    body.home-intro .site-header,
    body.home-intro .site-header .logo img,
    body.home-intro .ana-nav,
    body.home-intro .header-icons,
    body.home-intro .mobile-header-actions,
    body.home-intro .hero,
    body.home-intro .hero .ok,
    body.home-intro .hero .nokta-grup,
    body.home-intro .services-section{
        opacity:1 !important;
        transform:none !important;
        filter:none !important;
        transition:none !important;
        pointer-events:auto !important;
    }
}

/* Hero: tam viewport yüksekliği, görsel kırpılmadan alanı doldurur */
.hero{
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    overflow:hidden;
    background-color:transparent;
    width:100%;
    height:calc(100vh - var(--header-h, 80px));
}
@supports (height:100svh){
    .hero{
        height:calc(100svh - var(--header-h, 80px));
    }
}
.hero-slide{
    position:absolute;
    inset:0;
    box-sizing:border-box;
    background-position:center;
    background-size:100% 100%;
    background-repeat:no-repeat;
    background-color:transparent;
    transform:translateX(0);
    z-index:0;
}
.hero-slide-anim{
    transition:transform .65s ease;
}
.hero-overlay{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex:1;align-self:stretch}
.hero-overlay{position:relative;z-index:1}
.hero .hero-icerik{max-width:900px;padding:30px}
.hero .ok { position:absolute; top:50%; transform:translateY(-50%); width:42px;height:42px;border-radius:50%;background:rgba(0,0,0,0.4);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer; z-index:2; border:0; }
.hero .ok.sol { left:18px; }
.hero .ok.sag { right:18px; }
.hero .nokta-grup{position:absolute;left:50%;transform:translateX(-50%);bottom:18px;display:flex;gap:8px;z-index:2}
.hero .nokta{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.6);cursor:pointer}
.hero .nokta.active{background:#fff}
.hero-icerik{text-align:center;color:var(--beyaz);background:transparent;padding:0;border-radius:0}
.hero-icerik h1{font-size:48px;margin:0 0 10px}
.hero-icerik p{font-size:18px;margin:0 0 18px}
.btn{display:inline-block;padding:12px 26px;background:var(--acik-yesil);color:#fff;border-radius:8px;text-decoration:none;font-weight:700}
/* blue action button for forms */
.btn-blue{display:inline-block;padding:8px 14px;background:#1e73be;color:#fff;border-radius:6px;border:0;cursor:pointer;font-weight:700}
.btn-sepete-ekle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    box-sizing:border-box;
    line-height:1.2;
}
.btn-sepete-ekle--inline{width:auto}
.btn-sepete-ekle-icon{width:18px;height:18px;flex:0 0 auto;display:block}
.btn-red{display:inline-block;padding:8px 14px;background:#b00020;color:#fff;border-radius:6px;border:0;cursor:pointer;font-weight:700}
.btn-green{display:inline-block;padding:8px 14px;background:#128043;color:#fff;border-radius:6px;border:0;cursor:pointer;font-weight:700}
.btn-gray{display:inline-block;padding:8px 14px;background:#7a7a7a;color:#fff;border-radius:6px;border:0;cursor:pointer;font-weight:700}
.btn-green,.btn-blue,.btn-red,.btn-gray,.auth-cta,.cart-checkout,.checkout-submit{
    font-family:inherit;
    font-weight:700;
    letter-spacing:0.02em;
}
.auth-submit{display:inline-block;padding:8px 12px;background:#1e73be;color:#fff;border-radius:6px;border:0;cursor:pointer;font-weight:700;line-height:1.2;appearance:none}

/* Giriş / üye ol — cam efektli (site yeşilleri) */
.auth-main{
    padding:30px 0 0;
    margin:0;
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    background:
        radial-gradient(ellipse 80% 60% at 20% 20%, rgba(25,160,85,0.28), transparent 55%),
        radial-gradient(ellipse 70% 50% at 85% 15%, rgba(11,107,53,0.22), transparent 50%),
        radial-gradient(ellipse 60% 55% at 70% 85%, rgba(184,160,90,0.35), transparent 55%),
        linear-gradient(165deg, #d8e8d4 0%, #c5d9c0 35%, #e8dfc8 70%, #d4c4a8 100%);
}
.auth-screen{
    flex:1 1 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px 0 48px;
    background:transparent;
    min-height:0;
}
.auth-screen--wide{padding-bottom:0}
.auth-panel{
    width:100%;
    max-width:400px;
    margin:0 auto;
    padding:0 16px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
}
.auth-screen--wide .auth-panel{max-width:560px}
.auth-avatar{
    width:92px;
    height:92px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(30,50,35,0.55);
    background:rgba(255,255,255,0.38);
    border:1px solid rgba(255,255,255,0.45);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    box-shadow:0 8px 24px rgba(11,107,53,0.12);
    margin-bottom:6px;
}
.auth-avatar svg{width:48px;height:48px}
.auth-form{width:100%;display:flex;flex-direction:column;gap:12px}
.auth-field{
    display:flex;
    align-items:stretch;
    width:100%;
    margin:0;
    border-radius:6px;
    overflow:hidden;
    background:rgba(255,255,255,0.28);
    border:1px solid rgba(255,255,255,0.4);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    box-shadow:0 2px 10px rgba(0,0,0,0.04);
}
.auth-field-icon{
    flex:0 0 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,0.42);
    color:#3a4a3e;
    border-right:1px solid rgba(255,255,255,0.25);
}
.auth-field-icon svg{width:20px;height:20px;display:block}
.auth-field input,
.auth-field select{
    flex:1;
    min-width:0;
    border:0;
    background:transparent;
    padding:13px 14px;
    font:inherit;
    font-size:15px;
    color:#2a332c;
    outline:none;
    appearance:none;
    -webkit-appearance:none;
}
.auth-field select{
    cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23556658' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    padding-right:32px;
}
.auth-field select:disabled{opacity:0.65;cursor:not-allowed}
.auth-field input::placeholder{color:#7a8a7e}
.auth-field-input-wrap{position:relative;flex:1;display:flex;min-width:0}
.auth-field-input-wrap input{width:100%;padding-right:64px}
.auth-pass-toggle{
    color:#4a5c4e !important;
    font-size:12px;
    right:10px !important;
}
.auth-row{display:flex;gap:10px;width:100%}
.auth-row .auth-field{flex:1;min-width:0}
.auth-utils{
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
    padding:2px 2px 0;
    min-height:22px;
}
.auth-forgot{
    margin-left:auto;
    font-size:13px;
    font-style:italic;
    color:rgba(42,55,45,0.72);
    text-decoration:none;
}
.auth-forgot:hover{color:var(--yesil-orta);text-decoration:underline}
.auth-cta{
    width:100%;
    margin-top:4px;
    padding:13px 16px;
    border:0;
    border-radius:6px;
    background:var(--yesil-orta);
    color:#fff;
    font:inherit;
    font-size:15px;
    font-weight:700;
    letter-spacing:0.06em;
    cursor:pointer;
    box-shadow:0 6px 16px rgba(11,107,53,0.28);
    transition:background .15s ease, transform .15s ease;
}
.auth-cta:hover{background:var(--yesil)}
.auth-cta:active{transform:translateY(1px)}
.auth-hint{
    font-size:12px;
    line-height:1.45;
    color:rgba(42,55,45,0.75);
    padding:0 2px;
}
.auth-alert{
    width:100%;
    padding:10px 12px;
    border-radius:6px;
    background:rgba(255,236,236,0.85);
    color:#b00020;
    border:1px solid rgba(245,194,194,0.8);
    font-weight:600;
    font-size:14px;
    backdrop-filter:blur(6px);
}
.auth-alert--ok{
    background:rgba(231,247,236,0.9);
    color:#0b6b35;
    border-color:rgba(205,232,211,0.9);
}
.auth-field--area{align-items:stretch}
.auth-field--area .auth-field-icon{align-items:flex-start;padding-top:12px}
.auth-field textarea{
    flex:1;
    min-width:0;
    border:0;
    background:transparent;
    padding:13px 14px;
    font:inherit;
    font-size:15px;
    color:#2a332c;
    outline:none;
    resize:vertical;
    min-height:84px;
}
.auth-field input[readonly]{opacity:0.85;cursor:default}
.auth-switch{
    margin:4px 0 0;
    text-align:center;
    font-size:14px;
    color:rgba(42,55,45,0.85);
}
.auth-switch a{color:var(--yesil);font-weight:700;text-decoration:none}
.auth-switch a:hover{text-decoration:underline}
@media (max-width:640px){
    .auth-row{flex-direction:column;gap:12px}
    .auth-avatar{width:78px;height:78px}
    .auth-avatar svg{width:40px;height:40px}
}

.kisa-hakkimizda{padding:50px 0;background:#fafafa}
.site-footer{background:#0d5c30;color:#dcecdc;padding:48px 0 0;margin-top:0;position:static}
.site-footer .footer-inner{
    display:grid;
    grid-template-columns:1.3fr 1fr 1fr 1.2fr;
    gap:36px;
    max-width:var(--max-w);
    margin:0 auto;
    padding:0 0 36px;
    align-items:flex-start;
    text-align:left;
}
.site-footer .col{min-width:0;text-align:left}
.site-footer h4{
    color:#fff;
    margin:0 0 14px;
    font-size:14px;
    letter-spacing:0.08em;
    text-transform:uppercase;
}
.site-footer a{color:#dcecdc;text-decoration:none}
.site-footer a:hover{color:#fff}
.site-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.site-footer .col ul li,
.site-footer .col ul a{text-align:left}
.footer-brand-text{margin:12px 0 16px;line-height:1.55;color:#cfe7d6;font-size:14px}
.footer-logo img{height:64px;width:auto;display:block;filter:brightness(1.05)}
.footer-contact-list{
    list-style:none;padding:0;margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px;
}
.footer-contact-list li{
    display:flex;align-items:flex-start;gap:8px;color:#dcecdc;font-size:14px;line-height:1.45;
}
.footer-contact-list a{
    color:inherit;text-decoration:none;display:flex;align-items:flex-start;gap:8px;
}
.footer-contact-icon{flex:0 0 16px;margin-top:2px;display:inline-flex}
.footer-bottom{
    background:#0a4a26;
    padding:14px 0;
    color:#b7d4c0;
    font-size:13px;
}
.footer-bottom-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.footer-bottom-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.footer-bottom a{color:#cfe7d6;text-decoration:none}
.footer-bottom a:hover{color:#fff}
.footer-bottom-sep{opacity:0.55}
.footer-bottom-copy{user-select:none;pointer-events:none;color:#b7d4c0}
.copyright{display:none}
.social-icons-only{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-start}
.social-icons-only a{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid rgba(220,236,220,0.55);border-radius:50%}
.social-icons-only a:hover{background:rgba(255,255,255,0.12)}
.social-icons-only svg{width:18px;height:18px;color:#dcecdc;display:block}
body{padding-bottom:0}

/* admin kutu ayırıcı */
.kutu-ayirici{border-top:1px solid #e1e1e1}

/* Responsive */
@media (max-width:800px){
    .ana-nav ul{display:none}
    .ana-nav{display:none}
    .header-inner{
        padding:10px 10px 18px;
        gap:10px;
        align-items:center;
    }
    .mobile-header-actions{
        display:flex;
        flex-direction:row;
        align-items:flex-start;
        justify-content:flex-end;
        gap:4px;
        flex:0 0 auto;
        order:2;
        margin-left:auto;
        min-height:28px;
        align-self:center;
    }
    .mobile-header-user{
        display:inline-flex;
        flex-direction:column;
        align-items:center;
        justify-content:flex-start;
        position:relative;
        width:44px;
        height:28px;
        flex:0 0 44px;
        color:var(--yesil);
        text-decoration:none;
        font-weight:700;
        font-size:11px;
        line-height:1.15;
        padding:0;
    }
    .mobile-header-user-icon{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:28px;
        height:28px;
        color:var(--yesil);
        line-height:0;
    }
    .mobile-header-user-icon svg{display:block;width:20px;height:20px}
    .mobile-header-user-name{
        position:absolute;
        top:calc(100% + 1px);
        left:50%;
        transform:translateX(-50%);
        display:block;
        max-width:72px;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
        text-align:center;
        color:#1e73be;
        font-weight:600;
        font-size:10px;
        pointer-events:none;
    }
    .logo{
        flex:1 1 auto;
        min-width:0;
        margin-right:0;
        order:1;
    }
    .hamburger{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:44px;
        height:28px;
        margin:0;
        padding:0;
        flex:0 0 44px;
        line-height:1;
        font-size:22px;
    }
    .header-icons{display:none}
    .site-header{position:sticky;top:0;z-index:3000}
    .logo img{height:56px}
    .hero{height:calc(100vh - var(--header-h, 80px))}
    .hero-icerik h1{font-size:28px}
}

.scroll-top-btn{
    position:fixed;
    right:22px;
    bottom:22px;
    width:44px;
    height:44px;
    border-radius:50%;
    border:0;
    background:var(--yesil);
    color:#fff;
    font-size:22px;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(0,0,0,.2);
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
    z-index:3500;
}
.scroll-top-btn.show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

/* Mobile hamburger offcanvas */
.hamburger { display:none; background:transparent;border:0;font-size:22px;color:var(--yesil); cursor:pointer }
@media (max-width:800px){
    .hamburger { display:inline-block }
    .logo img{height:56px}
}
.offcanvas-menu{
    position:fixed;
    inset:0;
    background:#fff;
    z-index:2000;
    transform:translateX(100%);
    transition:transform .28s ease;
    display:flex;
    flex-direction:column;
}
.offcanvas-menu.open{ transform:translateX(0); }
.offcanvas-menu .close{
    display:flex;
    justify-content:flex-end;
    padding:18px 18px 0;
}
.offcanvas-menu .close button{
    border:0;
    background:transparent;
    font-size:42px;
    line-height:1;
    color:#12233a;
    cursor:pointer;
}
.mobile-menu-links{
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
    gap:10px;
    padding-top:24px;
}
.mobile-menu-links a{
    color:#12233a;
    text-decoration:none;
    font-weight:500;
    font-size:20px;
    line-height:1.25;
    text-transform:uppercase;
}
.mobile-menu-links a.mobile-active{
    color:#128043 !important;
    font-weight:700;
}
.mobile-kat-link{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
}
.mobile-kat-arrow{
    font-size:12px;
    line-height:1;
    transition:transform .2s ease;
}
.mobile-kat-link.open .mobile-kat-arrow{
    transform:rotate(180deg);
}
.mobile-submenu{
    display:none;
    width:min(86%, 360px);
    margin:-4px 0 4px;
}
.mobile-submenu.open{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
}
.mobile-menu-links .mobile-sub-link{
    font-size:16px;
    font-weight:600;
    color:#2f6f45;
    text-transform:none;
}
.mobile-menu-divider{
    display:block;
    width:min(82%, 360px);
    height:1px;
    background:#e2e2e2;
    margin:6px 0 4px;
}
.mobile-menu-auth{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    padding:14px 12px 18px;
    border-top:1px solid #e9e9e9;
    font-size:18px;
}
.mobile-menu-auth a{
    color:#12233a;
    text-decoration:none;
    font-weight:600;
}
.mobile-menu-auth a.mobile-logout-link{color:#b00020}
.mobile-menu-auth span{ color:#999; }
.geri-link{display:inline-block;margin-bottom:6px;font-weight:600}
.route-path{
    margin-bottom:12px;
    font-weight:600;
    color:#4a4a4a;
    text-align:center;
}
.route-path a{
    color:var(--yesil);
    text-decoration:none;
}
.cookie-popup{
    position:fixed;
    left:50%;
    bottom:16px;
    transform:translate(-50%, 120%);
    width:min(92vw, 760px);
    background:#fff;
    border:1px solid #dfe7df;
    border-radius:10px;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
    padding:12px 14px;
    z-index:3600;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:transform .32s ease, opacity .28s ease, visibility .28s ease;
}
.cookie-popup.show{
    transform:translate(-50%, 0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.cookie-popup-text{color:#2f2f2f;font-size:14px}
.cookie-popup-actions{display:flex;gap:8px;flex-shrink:0}

.cookie-settings-modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.35);
    z-index:3700;
    display:none;
    align-items:center;
    justify-content:center;
    padding:14px;
}
.cookie-settings-modal.show{display:flex}
.cookie-settings-card{
    width:min(96vw, 760px);
    max-height:92vh;
    overflow:auto;
    background:#fff;
    border-radius:10px;
    border:1px solid #ddd;
}
.cookie-settings-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 18px;
    border-bottom:1px solid #e4e4e4;
}
.cookie-settings-logo{
    display:flex;
    align-items:center;
    min-height:40px;
}
.cookie-settings-logo img{
    height:38px;
    width:auto;
    display:block;
}
.cookie-settings-logo strong{
    font-size:22px;
    color:#1f1f1f;
}
.cookie-settings-close{
    border:0;
    background:transparent;
    font-size:36px;
    line-height:1;
    color:#444;
    cursor:pointer;
}
.cookie-row{
    border-bottom:1px solid #e7e7e7;
}
.cookie-row-head{
    width:100%;
    border:0;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:16px 18px;
    text-align:left;
    font-size:20px;
    font-weight:700;
    color:#222;
    cursor:pointer;
}
.cookie-row-right{
    display:flex;
    align-items:center;
    gap:10px;
}
.cookie-row-right strong{
    color:#6c6c6c;
    font-size:14px;
    font-weight:500;
}
.cookie-arrow{
    font-style:normal;
    color:#9b9b9b;
    font-size:18px;
    transition:transform .2s ease;
}
.cookie-row.open .cookie-arrow{transform:rotate(180deg)}
.cookie-row-body{
    display:none;
    padding:0 18px 14px;
    color:#464646;
    font-size:15px;
    line-height:1.55;
}
.cookie-row.open .cookie-row-body{display:block}
.cookie-switch{
    position:relative;
    display:inline-flex;
    width:46px;
    height:26px;
}
.cookie-switch input{
    position:absolute;
    opacity:0;
    inset:0;
    cursor:pointer;
}
.cookie-switch span{
    width:100%;
    height:100%;
    border-radius:999px;
    background:#d4d4d4;
    position:relative;
    transition:background .2s ease;
}
.cookie-switch span::after{
    content:'';
    position:absolute;
    width:20px;
    height:20px;
    border-radius:50%;
    background:#fff;
    top:3px;
    left:3px;
    box-shadow:0 1px 2px rgba(0,0,0,.22);
    transition:transform .2s ease;
}
.cookie-switch input:checked + span{
    background:#7bcf95;
}
.cookie-switch input:checked + span::after{
    transform:translateX(20px);
}
.cookie-settings-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:16px 18px;
}

/* Öne çıkan ürün kartları */
.one-cikan{padding:40px 0}
.one-cikan-title{
    text-align:center;
    margin:0;
    color:var(--metin);
    font-family:"Montserrat",system-ui,sans-serif;
    font-weight:700;
}
.one-cikan-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:18px;
    margin-top:18px;
}
.one-cikan-card{
    background:#fff;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 6px 18px rgba(0,0,0,0.06);
    width:100%;
    min-width:0;
}
.one-cikan-link{
    text-decoration:none;
    color:inherit;
    display:block;
    width:100%;
}
.one-cikan-media{
    width:100%;
    height:160px;
    background:#f6f6f6;
    overflow:hidden;
}
.one-cikan-media img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.one-cikan-body{padding:12px;width:100%;box-sizing:border-box}
.one-cikan-name{font-weight:700;font-family:"Montserrat",system-ui,sans-serif}
.one-cikan-price{margin-top:6px;color:#1e73be;font-weight:700;font-family:"Montserrat",system-ui,sans-serif}
.one-cikan-card form{padding:0 12px 12px;margin:0;width:100%;box-sizing:border-box}

.home-video-section{width:100%;margin:36px 0 18px;padding:0}
.home-video-title{
    text-align:center;
    color:#128043;
    font-size:clamp(28px,4vw,40px);
    font-weight:800;
    letter-spacing:0.04em;
    margin:0 0 22px;
}
.video-wall{
    columns:3;
    column-gap:14px;
    max-width:none;
    margin:0 auto;
}
.video-wall-item{
    break-inside:avoid;
    margin:0 0 14px;
    display:block;
}
.video-wall-media{
    position:relative;
    overflow:hidden;
    background:#f3f6f4;
    border-radius:4px;
}
.video-wall-item--wide .video-wall-media{aspect-ratio:16/10}
.video-wall-item--tall .video-wall-media{aspect-ratio:3/4}
.home-video-wrap{position:relative;margin:0;background:#f3f6f4}
.home-video{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    background:#0f1712;
    vertical-align:middle;
    transition:transform .45s ease, filter .45s ease;
}
.video-wall-item:hover .home-video{transform:scale(1.03);filter:brightness(1.03)}
.video-sound-toggle{
    position:absolute;
    right:12px;
    bottom:12px;
    border:1px solid rgba(255,255,255,0.85);
    border-radius:999px;
    width:40px;
    height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0;
    background:rgba(15,23,18,0.35);
    color:#fff;
    font-weight:700;
    cursor:pointer;
    line-height:1;
    font-size:17px;
    backdrop-filter: blur(2px);
    z-index:2;
}
.video-sound-toggle:hover{background:rgba(18,128,67,0.55)}
.services-section{padding:36px 0 42px;background:#fff}
.services-title{
    text-align:center;
    margin:0;
    color:#1a1a1a;
    font-size:clamp(28px,4vw,40px);
    font-weight:800;
    letter-spacing:0.06em;
}
.services-title-dots{
    display:flex;
    justify-content:center;
    gap:7px;
    margin:10px 0 22px;
}
.services-title-dots span{
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--yesil);
    display:block;
    animation:servicesDotPulse 2.4s ease-in-out infinite;
}
.services-title-dots span:nth-child(2){animation-delay:.35s}
.services-title-dots span:nth-child(3){animation-delay:.7s}
.services-board{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.services-tile{
    display:grid;
    grid-template-rows:1fr 1fr;
    min-height:420px;
    background:#fff;
    overflow:hidden;
    transition:transform .45s cubic-bezier(.22,1,.36,1), box-shadow .45s ease;
}
.services-tile--img-first .services-tile-media{order:1}
.services-tile--img-first .services-tile-copy{order:2}
.services-tile--text-first .services-tile-media{order:2}
.services-tile--text-first .services-tile-copy{order:1}
.services-tile-media,
.services-tile-copy{min-height:0}
.services-tile-media{
    background:#e8f0ea;
    overflow:hidden;
    position:relative;
}
.services-tile-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transform-origin:center center;
    will-change:transform;
    animation:servicesKenBurns 12s ease-in-out infinite alternate;
    transition:transform .55s cubic-bezier(.22,1,.36,1), filter .4s ease;
}
.services-tile:nth-child(2) .services-tile-media img{animation-delay:-3s}
.services-tile:nth-child(3) .services-tile-media img{animation-delay:-6s}
.services-tile:nth-child(4) .services-tile-media img{animation-delay:-9s}
.services-tile-copy{
    background:var(--yesil);
    color:#fff;
    padding:22px 18px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    position:relative;
    overflow:hidden;
    transition:background .35s ease;
}
.services-tile-copy::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, transparent 35%, rgba(255,255,255,0.12) 50%, transparent 65%);
    transform:translateX(-120%);
    pointer-events:none;
}
.services-tile-copy h3{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(16px,1.5vw,20px);
    font-weight:800;
    letter-spacing:0.04em;
    line-height:1.25;
    transition:transform .4s cubic-bezier(.22,1,.36,1);
}
.services-tile-copy p{
    margin:0;
    color:rgba(255,255,255,0.92);
    line-height:1.5;
    font-size:14px;
    transition:transform .4s cubic-bezier(.22,1,.36,1) .04s, opacity .35s ease;
}
.services-tile-mark{
    position:absolute;
    right:14px;
    bottom:14px;
    width:18px;
    height:2px;
    background:rgba(255,255,255,0.85);
    transition:width .35s ease, background .35s ease;
}
.services-tile:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 28px rgba(11,107,53,0.16);
    z-index:1;
}
.services-tile:hover .services-tile-media img{
    animation-play-state:paused;
    transform:scale(1.08);
    filter:brightness(1.05);
}
.services-tile:hover .services-tile-copy{
    background:var(--yesil-orta);
}
.services-tile:hover .services-tile-copy::after{
    animation:servicesShine .85s ease forwards;
}
.services-tile:hover .services-tile-copy h3,
.services-tile:hover .services-tile-copy p{
    transform:translateY(-3px);
}
.services-tile:hover .services-tile-mark{
    width:36px;
    background:#fff;
}
@keyframes servicesKenBurns{
    0%{transform:scale(1) translate(0,0)}
    100%{transform:scale(1.08) translate(-1.5%,1%)}
}
@keyframes servicesDotPulse{
    0%,100%{transform:scale(1);opacity:.55}
    50%{transform:scale(1.35);opacity:1}
}
@keyframes servicesShine{
    from{transform:translateX(-120%)}
    to{transform:translateX(120%)}
}
@media (hover:none){
    .services-tile:hover{
        transform:none;
        box-shadow:none;
    }
    .services-tile:hover .services-tile-media img{
        animation-play-state:running;
        filter:none;
    }
}
@media (prefers-reduced-motion:reduce){
    .services-title-dots span,
    .services-tile-media img{
        animation:none !important;
    }
    .services-tile,
    .services-tile-media img,
    .services-tile-copy,
    .services-tile-copy h3,
    .services-tile-copy p,
    .services-tile-mark{
        transition:none !important;
    }
}
@media (max-width:640px){
    .services-board{grid-template-columns:1fr;gap:8px}
    .services-tile{min-height:360px}
}
.home-projects-section{
    width:100%;
    margin:28px 0 10px;
    padding:8px 0 18px;
    background:#fff;
}
.home-projects-title{
    text-align:center;
    margin:0 0 8px;
    color:#128043;
    font-size:clamp(26px,3.6vw,36px);
    font-weight:800;
    letter-spacing:0.04em;
}
.home-projects-sub{
    text-align:center;
    margin:0 0 18px;
    color:#4a5c4e;
    font-size:13px;
    letter-spacing:0.08em;
    text-transform:uppercase;
}
.home-projects-carousel{
    position:relative;
    width:100%;
}
.home-projects-viewport{
    overflow:hidden;
    width:100%;
}
.home-projects-track{
    display:flex;
    gap:0;
    transition:transform .55s cubic-bezier(.22,1,.36,1);
    will-change:transform;
}
.home-projects-slide{
    flex:0 0 calc(100% / 5);
    min-width:0;
}
.home-projects-slide a{
    display:block;
    text-decoration:none;
    color:inherit;
}
.home-projects-slide img,
.home-projects-slide video{
    display:block;
    width:100%;
    aspect-ratio:3/4;
    object-fit:cover;
    background:#eef3ef;
}
.home-projects-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,0.88);
    color:#128043;
    font-size:28px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 4px 14px rgba(0,0,0,0.12);
}
.home-projects-nav.prev{left:10px}
.home-projects-nav.next{right:10px}
.home-projects-nav:hover{background:#fff}
@media (min-width:1400px){
    .home-projects-slide{flex-basis:calc(100% / 6)}
}
@media (max-width:1200px){
    .home-projects-slide{flex-basis:calc(100% / 4)}
}
@media (max-width:900px){
    .home-projects-slide{flex-basis:100%}
}
.contact-section{padding:10px 0 30px}
.contact-title{text-align:center;margin:0 0 14px;color:#128043;font-size:28px}
.contact-grid{display:grid;grid-template-columns:minmax(320px,1.3fr) minmax(280px,1fr);gap:18px;align-items:stretch}
.contact-map iframe,
.contact-map-only iframe{width:100%;height:100%;min-height:320px;border:0;border-radius:10px;display:block}
.contact-map-only{width:100%;max-width:960px;margin:0 auto}
.contact-info{background:#fff;border:1px solid #ececec;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.contact-item{display:flex;gap:10px;align-items:flex-start;color:#2f2f2f;font-weight:600}
.contact-icon{width:20px;display:inline-flex;justify-content:center;flex:0 0 20px}
.contact-icon svg{width:18px;height:18px;display:block}

/* Scroll reveal animations */
[data-reveal]{
    opacity:0;
    transform:translateY(28px);
    transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
    transition-delay:var(--reveal-delay, 0ms);
    will-change:opacity, transform;
}
[data-reveal="left"]{transform:translateX(-48px)}
[data-reveal="right"]{transform:translateX(48px)}
[data-reveal="up"]{transform:translateY(36px)}
[data-reveal="scale"]{transform:translateY(18px) scale(.96)}
[data-reveal].is-visible{opacity:1;transform:translate(0,0) scale(1)}
@media (prefers-reduced-motion: reduce){
    [data-reveal]{opacity:1;transform:none;transition:none}
}

/* Ensure footer sits at page bottom when content short */
html, body { height: 100%; }
body { display: flex; flex-direction: column; }
main, .admin-icerik { flex: 1 1 auto; }

/* Password toggle positioning for inputs across site */
/* targets inline spans with ids starting with 'toggle' and generic toggle elements */
span[id^="toggle"], .toggle-text, .password-toggle {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: var(--yesil);
    background: none;
    border: none;
    padding: 0;
    font-weight: 600;
}

/* ensure inputs that contain toggles have relative parent */
main .container [style*="position:relative"], .admin-icerik [style*="position:relative"], .form-group { position: relative; }

/* Product detail responsive */
.urun-detay-grid{display:flex;gap:24px;align-items:flex-start}
.urun-galeri{flex:1;max-width:720px}
.urun-yan{width:380px}
@media (max-width:900px){
    .urun-detay-grid{flex-direction:column}
    .urun-galeri{max-width:none;width:100%}
    .urun-yan{width:100%}
    .urun-main-img{height:320px !important}
    .urun-gorsel-wrap{flex-direction:column}
    .urun-thumb-list{width:100% !important;flex-direction:row !important;overflow-x:auto}
    .urun-thumb-img{width:88px !important;height:68px !important;flex:0 0 auto}
}

/* Footer responsive */
@media (max-width:800px){
    .site-footer .footer-inner{
        grid-template-columns:1fr;
        gap:22px;
        padding:0 16px 28px;
        text-align:center;
    }
    .site-footer .col{
        width:100%;
        max-width:360px;
        margin:0 auto;
        text-align:center;
    }
    .site-footer .col h4{text-align:center}
    .site-footer .col ul{
        text-align:left;
        width:100%;
        max-width:280px;
        margin-left:auto;
        margin-right:auto;
    }
    .footer-brand-text{text-align:center}
    .footer-logo{display:flex;justify-content:center}
    .footer-contact-list{
        align-items:flex-start;
        max-width:280px;
        margin-left:auto;
        margin-right:auto;
        width:100%;
    }
    .social-icons-only{justify-content:center}
    .footer-bottom-inner{
        flex-direction:column;
        text-align:center;
        justify-content:center;
    }
    .footer-bottom-links{justify-content:center}
    .btn-sepete-ekle:not(.btn-sepete-ekle--inline){
        width:100%;
        max-width:100%;
        padding:8px 12px;
        font-size:13px;
        margin:0;
        display:flex;
    }
    .mobile-menu-links a{ font-size:clamp(16px, 4.2vw, 22px); }
    .mobile-menu-auth{ font-size:clamp(14px, 4vw, 18px); }
    .home-video-title{font-size:clamp(24px,6vw,32px)}
    .video-wall{columns:2}
    .video-sound-toggle{right:10px;bottom:10px;width:38px;height:38px;font-size:16px}
    .services-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .services-tile{min-height:340px}
    .contact-grid{grid-template-columns:1fr}
    .contact-map iframe,
    .contact-map-only iframe{min-height:260px}
    .cookie-popup{flex-direction:column;align-items:flex-start}
    .cookie-popup-actions{width:100%;justify-content:flex-end}
    .cookie-settings-card{
        width:min(96vw, 560px);
    }
    .cookie-settings-logo img{
        height:32px;
    }
    .cookie-row-head{
        font-size:18px;
    }
    .cookie-row-right strong{
        font-size:14px;
    }
    .cookie-arrow{
        font-size:18px;
    }
    .cookie-row-body{
        font-size:15px;
    }
    .cookie-settings-actions{
        flex-wrap:wrap;
    }
    .cookie-settings-actions .btn-green,
    .cookie-settings-actions .btn-gray{
        width:100%;
    }

    /* Sepet mobil düzen */
    .sepet-item-row{
        flex-wrap:wrap;
        align-items:flex-start !important;
    }
    .sepet-item-info{
        min-width:calc(100% - 102px);
    }
    .sepet-adet-form{
        width:100%;
        justify-content:flex-start;
        margin-top:6px;
    }
    .sepet-guncelle-btn{
        display:none;
    }
    .sepet-sil-form{
        width:auto;
        margin-top:6px;
    }
    .sepet-onay-btn{
        min-width:0 !important;
        width:100%;
    }

    /* Ödeme mobil: iki kutu alt alta */
    .odeme-grid{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }
    .odeme-baslik{
        text-align:center;
    }
    .sepet-baslik{
        text-align:center;
    }
}

/* Ara (telefon) sabit butonu — yukarı çık ile aynı boyut/hiza */
.call-fab {
    position: fixed;
    bottom: 78px; /* 22px + 44px(scroll btn) + 12px boşluk */
    right: 22px;
    z-index: 999;
    width: 44px;
    height: 44px;
    background: var(--yesil-orta);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(18,128,67,0.4);
    transition: transform 0.2s, box-shadow 0.2s;
    text-decoration: none;
}
.call-fab:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 22px rgba(18,128,67,0.55);
}
.call-fab svg{display:block;width:22px;height:22px}
@media (max-width: 600px) {
    .call-fab {
        bottom: 78px;
        right: 22px;
        width: 44px;
        height: 44px;
    }
}

/* ---- Referanslar marquee ---- */
.refs-marquee-section{
    padding:42px 0 36px;
    background:#fff;
    overflow:hidden;
}
.refs-marquee-title{
    text-align:center;
    margin:0 0 8px;
    color:#128043;
    font-size:28px;
}
.refs-marquee-sub{
    text-align:center;
    margin:0 auto 22px;
    max-width:640px;
    color:#1e73be;
    font-size:15px;
    line-height:1.5;
    padding:0 16px;
    font-weight:600;
}
.refs-marquee{
    width:100%;
    overflow:hidden;
    padding:10px 0;
    -webkit-transform:translateZ(0);
    transform:translateZ(0);
}
.refs-track{
    display:flex;
    align-items:center;
    width:max-content;
    animation:refs-scroll 80s linear infinite;
    will-change:transform;
    backface-visibility:hidden;
}
.refs-group{
    display:flex;
    align-items:center;
    gap:48px;
    flex:0 0 auto;
    padding-right:48px;
    box-sizing:content-box;
}
.refs-logo{
    flex:0 0 auto;
    height:56px;
    width:auto;
    max-width:160px;
    object-fit:contain;
    object-position:center;
    display:block;
    -webkit-user-drag:none;
}
@keyframes refs-scroll{
    from{transform:translate3d(-50%,0,0)}
    to{transform:translate3d(0,0,0)}
}
@media (hover:hover) and (pointer:fine){
    .refs-logo{
        filter:grayscale(1);
        opacity:.85;
        transition:filter .25s ease, opacity .25s ease;
    }
    .refs-logo:hover{
        filter:none;
        opacity:1;
    }
    .refs-marquee:hover .refs-track{
        animation-play-state:paused;
    }
}
@media (max-width:800px){
    .refs-marquee-section{padding:28px 0 22px}
    .refs-marquee-title{font-size:22px}
    .refs-marquee-sub{font-size:14px;margin-bottom:16px}
    .refs-marquee{padding:12px 0}
    .refs-group{gap:28px;padding-right:28px}
    .refs-logo{
        height:40px;
        max-width:100px;
        filter:none;
        opacity:1;
    }
    .refs-marquee:hover .refs-track{animation-play-state:running}
}

/* ---- Instagram feed carousel ---- */
.ig-feed-section{
    padding:36px 0 28px;
    background:#fff;
}
.ig-feed-title{
    text-align:center;
    margin:0 0 18px;
    color:#1f2933;
    font-size:26px;
    font-weight:700;
}
.ig-carousel{
    position:relative;
    max-width:1180px;
    margin:0 auto;
    padding:0 48px;
}
.ig-viewport{
    overflow:hidden;
    width:100%;
}
.ig-track{
    display:flex;
    gap:16px;
    transition:transform .7s cubic-bezier(.22,1,.36,1);
    will-change:transform;
}
.ig-slide{
    flex:0 0 calc((100% - 48px) / 4);
    min-width:0;
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 6px 18px rgba(16,24,40,.05);
}
.ig-slide .instagram-media,
.ig-slide iframe,
.ig-slide blockquote.instagram-media{
    margin:0 auto !important;
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    box-shadow:none !important;
}
.ig-slide-inner{
    padding:4px;
    min-height:180px;
    overflow:hidden;
}
.ig-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:40px;
    height:40px;
    border-radius:50%;
    border:1px solid #d0d5dd;
    background:#f2f4f7;
    color:#344054;
    font-size:22px;
    line-height:1;
    cursor:pointer;
    z-index:2;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.ig-nav:hover{background:#e8ebf0}
.ig-nav.prev{left:4px}
.ig-nav.next{right:4px}
.ig-dots{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:14px;
}
.ig-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#c9d0d8;
    border:0;
    padding:0;
    cursor:pointer;
}
.ig-dot.active{background:#1e73be}
.ig-follow-wrap{
    text-align:center;
    margin-top:18px;
}
.ig-follow-btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#0095f6;
    color:#fff;
    text-decoration:none;
    font-weight:700;
    border-radius:8px;
    padding:10px 18px;
}
.ig-follow-btn:hover{background:#0077c8;color:#fff}
.ig-follow-btn svg{width:18px;height:18px;fill:#fff}
@media (max-width:900px){
    .ig-carousel{padding:0 42px}
    .ig-slide{flex:0 0 100%}
    .ig-track{gap:0}
}
@media (prefers-reduced-motion:reduce){
    .refs-track{animation:none}
    .ig-track{transition:none}
}

/* ---- Referanslar sayfası (statik grid) ---- */
.refs-page{
    padding:48px 0 60px;
    background:#fff;
}
.refs-page-back{
    margin-bottom:12px;
}
.refs-page-back .geri-link{
    text-decoration:none;
    color:var(--yesil);
}
.refs-page-title{
    text-align:center;
    margin:8px 0 28px;
    color:#128043;
    font-size:32px;
}
.refs-page-grid{
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:28px 24px;
    align-items:center;
    justify-items:center;
}
.refs-page-item{
    width:100%;
    min-height:88px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:10px;
}
.refs-page-item img{
    max-width:100%;
    max-height:72px;
    width:auto;
    height:auto;
    object-fit:contain;
    display:block;
    transform-origin:center center;
    will-change:transform;
}
.refs-page-item:nth-child(3n+1) img{animation:refsBreath 4.8s ease-in-out infinite}
.refs-page-item:nth-child(3n+2) img{animation:refsBreath 4.8s ease-in-out infinite 1.6s}
.refs-page-item:nth-child(3n+3) img{animation:refsBreath 4.8s ease-in-out infinite 3.2s}
@keyframes refsBreath{
    0%,100%{transform:scale(1)}
    33%{transform:scale(1.16)}
    66%{transform:scale(0.88)}
}
@media (prefers-reduced-motion:reduce){
    .refs-page-item img{animation:none !important}
}
.refs-page-empty{
    text-align:center;
    color:#666;
}
@media (max-width:1000px){
    .refs-page-grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:22px}
}
@media (max-width:800px){
    .refs-page{padding:32px 0 40px}
    .refs-page-title{font-size:24px;margin-bottom:20px}
    .refs-page-grid{
        grid-template-columns:1fr;
        gap:18px;
        max-width:280px;
        margin:0 auto;
    }
    .refs-page-item{
        min-height:72px;
        padding:8px;
    }
    .refs-page-item img{max-height:56px}
}

/* ---- Sepet / Ödeme ---- */
.cart-page{padding:36px 0 50px;background:#fff}
.cart-title{margin:0 0 18px;font-size:30px;color:#128043;text-align:center}
.cart-empty{
    background:#fff;border-radius:10px;padding:28px;text-align:center;
    box-shadow:0 8px 22px rgba(0,0,0,0.05);
}
.ship-progress{
    background:#fff;border-radius:12px;padding:16px 18px 14px;margin:0 auto 18px;
    max-width:820px;box-shadow:0 8px 22px rgba(0,0,0,0.05);
}
.ship-progress-msg{margin:0 0 12px;text-align:center;color:#2f3a32;font-weight:600}
.ship-progress-track{
    position:relative;height:10px;border-radius:999px;background:#e6ebe7;overflow:visible;
}
.ship-progress-fill{
    height:100%;border-radius:999px;background:linear-gradient(90deg,#ff9f43,#e67e22);
    transition:width .35s ease;
}
.ship-progress-mark{
    position:absolute;top:-22px;transform:translateX(-100%);
    font-size:11px;font-weight:700;color:#e67e22;white-space:nowrap;
}
.ship-progress-labels{
    display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:#6a766e;
}
.cart-meta{margin:0 0 10px;color:#666;font-size:14px}
.cart-table{
    background:#fff;border-radius:12px;overflow:hidden;
    box-shadow:0 8px 22px rgba(0,0,0,0.05);
}
.cart-table-head,.cart-row{
    display:grid;
    grid-template-columns:minmax(220px,2fr) 1fr 1.2fr 1fr 42px;
    gap:12px;align-items:center;padding:14px 16px;
}
.cart-table-head{
    background:#f7faf8;font-size:12px;font-weight:700;letter-spacing:0.04em;
    text-transform:uppercase;color:#5d6a61;border-bottom:1px solid #e8eee9;
}
.cart-row{border-bottom:1px solid #eef2ef}
.cart-row:last-child{border-bottom:0}
.cart-product{display:flex;gap:12px;align-items:center;min-width:0}
.cart-product img{width:72px;height:72px;object-fit:cover;border-radius:8px;background:#f3f3f3}
.cart-product-name{font-weight:700;color:#1f2a22;line-height:1.3}
.cart-product-link{font-size:12px;color:#128043;text-decoration:none}
.cart-price,.cart-line-total{font-weight:700;color:#1e73be}
.cart-qty{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cart-qty-btn{
    width:32px;height:32px;border:1px solid #d5ddd7;border-radius:6px;background:#fff;
    cursor:pointer;font-size:16px;line-height:1;color:#128043;font-weight:700;
}
.cart-qty .sepet-adet-input{
    width:56px;height:32px;text-align:center;border:1px solid #d5ddd7;border-radius:6px;padding:0;
}
.cart-qty-update{
    border:0;background:#1e73be;color:#fff;border-radius:6px;padding:7px 10px;font-weight:700;cursor:pointer;font-size:12px;
}
.cart-remove-btn{
    width:34px;height:34px;border:0;border-radius:6px;background:#ffecec;color:#b00020;
    font-size:20px;line-height:1;cursor:pointer;font-weight:700;
}
.cart-summary{margin-top:18px;text-align:right}
.cart-summary-total{font-size:22px;font-weight:800;color:#128043}
.cart-summary-note{margin:6px 0 14px;color:#666;font-size:13px}
.cart-actions{display:flex;justify-content:flex-end;gap:12px;align-items:center;flex-wrap:wrap}
.cart-continue{color:#128043;font-weight:700;text-decoration:none}
.cart-checkout{display:inline-block;padding:12px 22px;text-decoration:none;min-width:180px;text-align:center}
.checkout-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:18px;align-items:start;margin-top:8px}
.checkout-card{
    background:#fff;border-radius:12px;padding:18px;box-shadow:0 8px 22px rgba(0,0,0,0.05);
}
.checkout-card h3{margin:0 0 12px;color:#128043}
.checkout-card label{display:block;margin-bottom:4px;font-weight:600;font-size:13px;color:#445048}
.checkout-card input,.checkout-card select,.checkout-card textarea{
    width:100%;padding:10px 12px;border:1px solid #d8e0da;border-radius:8px;font:inherit;background:#fff;
}
.checkout-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.checkout-items li{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:#333}
.checkout-totals{margin-top:14px;border-top:1px solid #eef2ef;padding-top:12px;display:flex;flex-direction:column;gap:8px}
.checkout-totals > div{display:flex;justify-content:space-between;gap:10px;font-size:14px}
.checkout-grand{font-size:16px;font-weight:800;color:#128043}
.checkout-pay{display:flex !important;align-items:center;gap:8px;margin-bottom:8px;font-weight:600}
.checkout-pay input{width:auto}
.checkout-iban{margin:8px 0 12px;padding:10px;background:#f4faf6;border:1px solid #cde8d3;border-radius:8px;font-size:13px}
.checkout-submit{width:100%;padding:12px;margin-top:8px;border:0;cursor:pointer}
.checkout-note{margin:8px 0 0;color:#666;font-size:13px}
@media (max-width:900px){
    .cart-table-head{display:none}
    .cart-row{
        grid-template-columns:1fr auto;
        grid-template-areas:
            "product remove"
            "price price"
            "qty qty"
            "total total";
    }
    .cart-product{grid-area:product}
    .cart-remove{grid-area:remove;justify-self:end}
    .cart-price{grid-area:price}
    .cart-qty{grid-area:qty}
    .cart-line-total{grid-area:total}
    .cart-actions{justify-content:stretch}
    .cart-checkout{width:100%}
    .checkout-grid{grid-template-columns:1fr}
}

/* ---- Projelerimiz masonry ---- */
.projects-page{padding:30px 0 50px;background:#fff}
.projects-top{padding:0 0 10px}
.projects-wall{
    background:transparent;
    color:inherit;
    padding:8px 0 0;
    margin-top:0;
}
.projects-wall-head{max-width:none;margin:0 auto 22px;padding:0}
.projects-wall-title{
    margin:0;font-size:clamp(28px,4vw,40px);letter-spacing:0.04em;font-weight:800;color:#128043;text-align:center;
}
.projects-wall-sub{margin:6px 0 0;opacity:0.75;font-size:14px;letter-spacing:0.06em;text-transform:uppercase;text-align:center;color:#4a5c4e}
.projects-empty{text-align:center;opacity:0.7;padding:40px 0;color:#555}
.projects-masonry{
    max-width:none;
    margin:0 auto;
    columns:3;
    column-gap:14px;
}
.projects-item{
    break-inside:avoid;
    margin:0 0 14px;
    display:block;
}
.projects-code{
    display:inline-block;
    font-size:12px;
    letter-spacing:0.08em;
    color:#128043;
    margin:0 0 6px;
    font-weight:700;
}
.projects-media{
    overflow:hidden;
    background:#f3f6f4;
    border-radius:4px;
}
.projects-media img,
.projects-media video{
    width:100%;
    display:block;
    object-fit:cover;
    transform-origin:center center;
    will-change:transform;
    transition:filter .45s ease;
}
.projects-item--normal .projects-media img,
.projects-item--normal .projects-media video{aspect-ratio:4/3}
.projects-item--wide .projects-media img,
.projects-item--wide .projects-media video{aspect-ratio:16/10}
.projects-item--tall .projects-media img,
.projects-item--tall .projects-media video{aspect-ratio:3/4}
.projects-item:nth-child(3n+1) .projects-media img,
.projects-item:nth-child(3n+1) .projects-media video{animation:refsBreath 4.8s ease-in-out infinite}
.projects-item:nth-child(3n+2) .projects-media img,
.projects-item:nth-child(3n+2) .projects-media video{animation:refsBreath 4.8s ease-in-out infinite 1.6s}
.projects-item:nth-child(3n+3) .projects-media img,
.projects-item:nth-child(3n+3) .projects-media video{animation:refsBreath 4.8s ease-in-out infinite 3.2s}
.projects-item:hover .projects-media img,
.projects-item:hover .projects-media video{filter:brightness(1.03)}
@media (prefers-reduced-motion:reduce){
    .projects-item .projects-media img,
    .projects-item .projects-media video{animation:none !important}
}
.projects-cap{
    margin:6px 0 0;
    font-size:13px;
    color:#445048;
    line-height:1.4;
}
@media (max-width:900px){
    .projects-masonry{columns:2}
}
@media (max-width:640px){
    .projects-masonry{columns:1}
    .projects-wall{padding:0}
    .video-wall{columns:1}
}