/* —————————— */
/* Reset & Temel Stil */
/* —————————— */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Playfair Display','Arial', serif;
    line-height:1.6;
    color:#F6F6F6;
    background:#161616;
    min-height:100vh;
    overflow-x:hidden;
    /* Modern viewport units for better mobile support */
    min-height:100dvh;
}

.container {
    max-width:1200px;
    margin:0 auto;
    padding:0 clamp(10px, 4vw, 20px);
}

/* —————————— */
/* Header */
/* —————————— */
.header {
    position:fixed;
    top:0; left:0; right:0;
    background:rgba(22,22,22,0.9);
    backdrop-filter:blur(10px);
    z-index:1000;
    padding:clamp(0.75rem, 2vw, 1rem) 0;
    border-bottom:1px solid rgba(246,246,246,0.1);
    /* Better performance on mobile */
    will-change:transform;
}

.header .container {
    display:flex;
    justify-content:center;
    align-items:center;
}

.logo h1 {
    /* Fluid typography - scales smoothly between screen sizes */
    font-size:clamp(1.2rem, 4vw, 2rem);
    font-weight:300;
    letter-spacing:clamp(1px, 0.5vw, 3px);
    color:#F6F6F6;
}

/* —————————— */
/* Hero Bölümü - Modern Grid Layout */
/* —————————— */
.hero {
    min-height:100vh;
    min-height:100dvh; /* Dynamic viewport height for mobile */
    display:grid;
    place-items:center;
    text-align:center;
    position:relative;
    padding-top:clamp(60px, 10vw, 80px);
    background-image:url('./images/background-image-horizontal.jpg');
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    background-attachment:fixed;
    /* Performance optimizations */
    will-change:transform;
    contain:layout style paint;
}

/* Mobile optimization for background */
@media (max-width: 768px) {
    .hero {
        background-attachment:scroll;
        /* Use smaller image rendering for better performance */
        image-rendering:optimizeSpeed;
    }
}

.hero::before {
    content:'';
    position:absolute; 
    inset:0; /* Modern shorthand for top:0; left:0; right:0; bottom:0; */
    background:linear-gradient(135deg, rgba(22,22,22,0.6), rgba(22,22,22,0.4));
    z-index:1;
}

.hero-content { 
    position:relative; 
    z-index:2; 
    width:100%;
    max-width:90vw;
}

/* Fluid Animation Text */
.animated-text {
    overflow:hidden;
    white-space:nowrap;
    margin:clamp(10px, 3vw, 20px) 0;
    opacity:0.4;
}

.animated-text .text-item {
    display:inline-block;
    color:#F6F6F6;
    font-size:clamp(0.9rem, 2.5vw, 1.2rem);
    margin:0 clamp(10px, 3vw, 20px);
    animation:scroll 15s linear infinite;
    font-weight:300;
    letter-spacing:clamp(0.5px, 0.2vw, 1px);
    /* Performance optimization */
    transform:translateZ(0);
}

.animated-text.bottom .text-item {
    animation:scrollReverse 12s linear infinite;
}

/* Optimized keyframes */
@keyframes scroll {
    from {transform:translateX(100vw) translateZ(0);}
    to {transform:translateX(-100vw) translateZ(0);}
}

@keyframes scrollReverse {
    from {transform:translateX(-100vw) translateZ(0);}
    to {transform:translateX(100vw) translateZ(0);}
}

/* Fluid Typography for Main Title */
.coming-soon {
    font-size:clamp(2rem, 8vw, 4rem);
    font-weight:400;
    margin:clamp(20px, 5vw, 40px) 0;
    color:#F6F6F6;
    text-shadow:0 4px 8px rgba(22,22,22,0.5);
    animation:pulse 2s ease-in-out infinite alternate;
    /* Better text rendering */
    text-rendering:optimizeLegibility;
    line-height:1.1;
}

@keyframes pulse {
    from {transform:scale(1) translateZ(0);}
    to {transform:scale(1.05) translateZ(0);}
}

/* —————————— */
/* Sosyal Medya - CSS Grid Layout */
/* —————————— */
.social-section {
    padding:clamp(40px, 10vw, 80px) 0;
    background:rgba(246,246,246,0.05);
    backdrop-filter:blur(10px);
    text-align:center;
}

.social-section h2 {
    font-size:clamp(1.5rem, 4vw, 2rem);
    margin-bottom:clamp(20px, 5vw, 40px);
    font-weight:300;
    color:#F6F6F6;
}

.social-links {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(50px, 1fr));
    gap:clamp(15px, 4vw, 30px);
    max-width:300px;
    margin:0 auto;
}

.social-link {
    width:clamp(45px, 8vw, 60px);
    height:clamp(45px, 8vw, 60px);
    background:rgba(246,246,246,0.1);
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#F6F6F6;
    font-size:clamp(1.1rem, 2.5vw, 1.5rem);
    transition:all 0.3s ease;
    backdrop-filter:blur(10px);
    border:1px solid rgba(246,246,246,0.2);
    /* Touch-friendly */
    min-height:44px;
    min-width:44px;
    text-decoration:none;
}

.social-link:hover {
    background:rgba(246,246,246,0.2);
    transform:translateY(-5px) translateZ(0);
    box-shadow:0 10px 20px rgba(22,22,22,0.3);
}

/* —————————— */
/* İletişim - Modern Form Layout */
/* —————————— */
.contact-section {
    padding:clamp(40px, 10vw, 80px) 0;
    text-align:center;
}

.contact-section h2 {
    font-size:clamp(1.5rem, 4vw, 2rem);
    margin-bottom:clamp(20px, 5vw, 40px);
    font-weight:300;
    color:#F6F6F6;
}

.contact-form {
    max-width:500px;
    margin:0 auto;
    padding:0 clamp(10px, 4vw, 20px);
}

.form-group {
    display:grid;
    grid-template-columns:1fr auto;
    gap:15px;
    align-items:stretch;
}

/* Mobile-first approach */
@media (max-width: 640px) {
    .form-group {
        grid-template-columns:1fr;
        gap:10px;
    }
}

.form-group input {
    padding:clamp(12px, 3vw, 15px) clamp(15px, 4vw, 20px);
    background:rgba(246,246,246,0.1);
    backdrop-filter:blur(10px);
    border:1px solid rgba(246,246,246,0.2);
    border-radius:50px;
    color:#F6F6F6;
    font-size:clamp(0.9rem, 2vw, 1rem);
    outline:none;
    transition:all 0.3s ease;
    /* Better mobile input */
    -webkit-appearance:none;
    appearance:none;
}

.form-group input::placeholder {
    color:rgba(246,246,246,0.7);
}

.form-group input:focus {
    background:rgba(246,246,246,0.15);
    border-color:rgba(246,246,246,0.4);
    transform:scale(1.02) translateZ(0);
}

.form-group button {
    padding:clamp(12px, 3vw, 15px) clamp(20px, 5vw, 30px);
    border:none;
    border-radius:50px;
    background:linear-gradient(135deg,#F6F6F6,#161616);
    color:#161616;
    font-size:clamp(0.9rem, 2vw, 1rem);
    font-weight:600;
    letter-spacing:1px;
    cursor:pointer;
    transition:all 0.3s ease;
    /* Touch-friendly */
    min-height:44px;
    white-space:nowrap;
}

.form-group button:hover {
    background:linear-gradient(135deg,#161616,#F6F6F6);
    color:#F6F6F6;
    transform:translateY(-2px) translateZ(0);
    box-shadow:0 8px 16px rgba(246,246,246,0.2);
}

/* —————————— */
/* Footer */
/* —————————— */
.footer {
    padding:clamp(20px, 5vw, 40px) 0;
    text-align:center;
    background:rgba(22,22,22,0.8);
    backdrop-filter:blur(10px);
    border-top:1px solid rgba(246,246,246,0.1);
}

.footer p {
    font-size:clamp(0.8rem, 2vw, 0.9rem);
    color:rgba(246,246,246,0.8);
    margin:5px 0;
}

/* —————————— */
/* Cookie Banner - Modern Layout */
/* —————————— */
.cookie-banner {
    position:fixed;
    inset:auto 0 0 0; /* Modern shorthand */
    background:rgba(22,22,22,0.95);
    padding:clamp(15px, 4vw, 20px);
    z-index:2000;
    transform:translateY(100%);
    transition:transform 0.3s ease;
    border-top:1px solid rgba(246,246,246,0.1);
    backdrop-filter:blur(10px);
}

.cookie-banner.show {
    transform:translateY(0);
}

.cookie-content {
    max-width:1200px;
    margin:0 auto;
    display:grid;
    gap:clamp(8px, 2vw, 15px);
    text-align:center;
}

.cookie-content h4 {
    font-size:clamp(0.95rem, 2.5vw, 1.1rem);
    font-weight:600;
    color:#F6F6F6;
}

.cookie-content p {
    font-size:clamp(0.8rem, 2vw, 0.9rem);
    line-height:1.5;
    opacity:0.9;
    color:rgba(246,246,246,0.8);
}

#acceptCookies {
    padding:clamp(8px, 2vw, 10px) clamp(20px, 5vw, 25px);
    border:none;
    border-radius:25px;
    background:linear-gradient(135deg,#F6F6F6,#161616);
    color:#161616;
    font-weight:600;
    cursor:pointer;
    transition:all 0.3s ease;
    font-size:clamp(0.8rem, 2vw, 0.9rem);
    /* Touch-friendly */
    min-height:44px;
    margin:0 auto;
    max-width:200px;
}

#acceptCookies:hover {
    background:linear-gradient(135deg,#161616,#F6F6F6);
    color:#F6F6F6;
    transform:translateY(-2px) translateZ(0);
}

/* —————————— */
/* Performance & Accessibility Optimizations */
/* —————————— */

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
    .animated-text .text-item,
    .coming-soon {
        animation:none;
    }
    
    * {
        transition-duration:0.01ms !important;
        animation-duration:0.01ms !important;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .hero::before {
        background:rgba(0,0,0,0.8);
    }
    
    .social-link,
    .form-group input {
        border-width:2px;
    }
}

/* Dark mode support (already dark, but for completeness) */
@media (prefers-color-scheme: dark) {
    /* Already optimized for dark mode */
}

/* Print styles */
@media print {
    .header,
    .cookie-banner {
        display:none;
    }
    
    .hero {
        background:none;
        color:#000;
    }
    
    .hero::before {
        display:none;
    }
}

/* —————————— */
/* Modern Responsive - Container Queries Ready */
/* —————————— */

/* Ultra-wide screens */
@media (min-width: 1400px) {
    .container {
        max-width:1400px;
    }
    
    .coming-soon {
        font-size:5rem;
    }
}

/* Tablet landscape optimization */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hero {
        background-attachment:scroll; /* Better performance */
    }
    
    .coming-soon {
        font-size:3.5rem;
    }
}

/* Small mobile devices */
@media (max-width: 360px) {
    .container {
        padding:0 5px;
    }
    
    .hero-content {
        max-width:95vw;
    }
}

/* Modern iOS Safari fixes */
@supports (-webkit-touch-callout: none) {
    .hero {
        min-height:-webkit-fill-available;
    }
}

/* Modern browser features */
@supports (backdrop-filter: blur(10px)) {
    .header,
    .social-section,
    .cookie-banner {
        backdrop-filter:blur(10px);
    }
}

/* Container queries (future-proof) */
@container (max-width: 500px) {
    .form-group {
        grid-template-columns:1fr;
    }
}
  