/* ================================================
   GLOBAL VARIABLES & DESIGN TOKENS
   ================================================ */

:root {
   font-size: 16px;

   /* Renkler */
   --color-primary:    #0f0f1a;
   --color-secondary:  #1a1a2e;
   --color-gold:       #c4a163;
   --color-gold-dark:  #a8884e;
   --color-white:      #ffffff;
   --color-text:       #2d2d3a;
   --color-text-muted: #6b7280;
   --color-bg:         #f9f9f7;
   --color-border:     rgba(0, 0, 0, 0.08);

   /* Fontlar  — fonts/Rubik.woff2 vb. tanımlı */
   --font-heading: 'Montserrat', 'GoogleSans', sans-serif;
   --font-body:    'Rubik', 'Nunito', 'inter', sans-serif;
   --font-mono:    'Ubuntu', monospace;
   --font-fancy:   'Audiowide', sans-serif;

   /* Layout */
   --max-w:         1200px;
   --container-pad: clamp(1rem, 4vw, 2rem);
   --radius-sm:     8px;
   --radius:        12px;
   --radius-lg:     20px;

   /* Spacing */
   --section-py: clamp(3.5rem, 7vw, 6rem);
}

/* ================================================
   GLOBAL RESET
   ================================================ */

*, *::before, *::after {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

html {
   scroll-behavior: smooth;
   -webkit-text-size-adjust: 100%;
   overflow-x: hidden;
}

html::-webkit-scrollbar { width: 0; }

body {
   font-family: var(--font-body);
   font-size: 1rem;
   color: var(--color-text);
   background-color: var(--color-white);
   width: 100%;
   min-height: 100vh;
   display: flex;
   flex-direction: column;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   overflow-x: hidden;
   position: relative;
}

/* Bağlantılar */
a, a:active, a:visited, a::before, a::after {
   text-decoration: none;
   color: inherit;
}

/* Butonlar */
button {
   background: none;
   outline: none;
   cursor: pointer;
   border: none;
   font-family: inherit;
}

/* Seçim rengi */
::selection {
   background-color: var(--color-gold);
   color: var(--color-white);
}

/* Listeler */
ul, ol { list-style: none; }

/* Görseller */
img {
   user-select: none;
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
}

/* SVG */
svg {
   display: inline-block;
   flex-shrink: 0;
}

/* Bağlantı/buton içindeki SVG boyutu — bileşen CSS'i override edemez */
a svg, button svg {
   max-width: 28px;
   max-height: 28px;
}

/* ================================================
   CONTAINER UTILITY
   ================================================ */
.container {
   width: 90%;
   max-width: var(--max-w);
   margin-left: auto;
   margin-right: auto;
}