/* Alanya UCN Yapı | base.css
   -----------------------------------------------------------------------------
   Tasarim sistemi: renk, tipografi, dugmeler, animasyon tanimlari.
   Renk paleti iki ana renk uzerine kurulu:
     - kiremit turuncu (marka)  : basliklar, dugmeler, vurgular
     - derin petrol (ikincil)   : koyu bolumler, alt bilgi, sayilar seridi
   Yaninda sicak kum tonlari ve altin bir vurgu rengi var.
   ========================================================================== */

:root{
  /* --- zemin --- */
  --sand:        #faf7f2;
  --sand-2:      #f3ece2;
  --surface:     #ffffff;
  --surface-2:   #fbf8f4;

  /* --- metin --- */
  --ink:         #1b1b20;
  --ink-soft:    #53535d;
  --ink-mute:    #8b8b95;
  --ink-inv:     #fdfcfa;

  /* --- marka: kiremit --- */
  --brand:       #c15f2b;
  --brand-dk:    #a04b1e;
  --brand-lt:    #e08a4a;
  --brand-soft:  #fbeee4;

  /* --- ikincil: derin petrol --- */
  --teal:        #14535e;
  --teal-dk:     #0d3a43;
  --teal-lt:     #1d7484;
  --teal-soft:   #e6f0f1;

  /* --- vurgu --- */
  --gold:        #d8a238;
  --gold-soft:   #fdf4e2;
  --ok:          #3d7a45;
  --bad:         #a03a2c;

  /* eski isimler (geriye donuk uyum) */
  --bg:          var(--sand);
  --accent:      var(--brand);
  --accent-dk:   var(--brand-dk);

  /* --- cizgi --- */
  --line:        #e7e0d6;
  --line-soft:   #f1ece5;
  --line-dark:   rgba(255,255,255,.14);

  /* --- gradyan --- */
  --grad-brand:  linear-gradient(135deg, #d2793d 0%, #b0501f 100%);
  --grad-teal:   linear-gradient(135deg, #1d7484 0%, #0d3a43 100%);
  --grad-gold:   linear-gradient(135deg, #e8bb5c 0%, #c98a24 100%);
  --grad-sand:   linear-gradient(180deg, #ffffff 0%, #faf7f2 100%);

  /* --- golge --- */
  --sh-xs: 0 1px 2px rgba(28,22,16,.06);
  --sh-sm: 0 2px 8px rgba(28,22,16,.07);
  --sh-md: 0 8px 24px rgba(28,22,16,.10);
  --sh-lg: 0 18px 46px rgba(28,22,16,.14);
  --sh-brand: 0 10px 26px rgba(193,95,43,.28);
  --sh-teal:  0 10px 26px rgba(20,83,94,.26);

  /* --- olcu --- */
  --wrap:        1200px;
  --wrap-narrow: 780px;
  --r-sm:  6px;
  --r:     10px;
  --r-lg:  16px;
  --r-xl:  24px;
  --r-full: 999px;

  /* --- tipografi --- */
  --f-head: Georgia, 'Times New Roman', 'Noto Serif', serif;
  --f-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;

  /* --- gecis --- */
  --t-fast: .16s cubic-bezier(.4,0,.2,1);
  --t:      .26s cubic-bezier(.4,0,.2,1);
  --t-slow: .45s cubic-bezier(.22,.8,.28,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0;
  font-family:var(--f-body);
  font-size:16px;
  line-height:1.68;
  color:var(--ink);
  background:var(--sand);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  /* overflow-x:hidden KULLANMIYORUZ.
     Mobil tarayicilarda govdede yatay tasma gizlemek kaydirma kabi olusturur
     ve position:fixed butonlar sayfayla birlikte kayar. clip ayni tasmayi
     onler ama kaydirma kabi olusturmaz. */
  overflow-x:clip;
}

/* ------------------------------------------------------------- tipografi */

h1,h2,h3,h4{
  font-family:var(--f-head);
  font-weight:600;
  line-height:1.22;
  letter-spacing:-.015em;
  color:var(--ink);
  margin:0 0 .5em;
}
h1{ font-size:clamp(1.9rem, 1.3rem + 2.4vw, 3.1rem); }
h2{ font-size:clamp(1.45rem, 1.1rem + 1.5vw, 2.15rem); }
h3{ font-size:clamp(1.08rem, .98rem + .4vw, 1.28rem); }
h4{ font-size:1.02rem; }

p{ margin:0 0 1.05em; }
p:last-child{ margin-bottom:0; }

a{ color:var(--brand); text-decoration:none; transition:color var(--t-fast); }
a:hover{ color:var(--brand-dk); }

img,svg,video{ max-width:100%; height:auto; display:block; }
ul,ol{ margin:0 0 1.1em; padding-left:1.35em; }
li{ margin-bottom:.35em; }
strong,b{ font-weight:600; }
small{ font-size:.85em; }
hr{ border:0; border-top:1px solid var(--line); margin:34px 0; }

::selection{ background:var(--brand); color:#fff; }

/* HTML'in hidden niteligi HER ZAMAN kazanmali.
   Tarayicinin varsayilani [hidden]{display:none} dusuk onceliklidir; bir
   sinif kuralinda display:flex yazdiginizda onu eziyor ve gizli olmasi
   gereken eleman ekranda kaliyor. Buyutec katmani ve mobil menu karartmasi
   tam bu yuzden gorunur kalmisti. */
[hidden]{ display:none !important; }

:focus-visible{
  outline:2px solid var(--brand);
  outline-offset:3px;
  border-radius:3px;
}

/* --------------------------------------------------------------- yardimci */

.wrap{ width:100%; max-width:var(--wrap); margin:0 auto; padding:0 24px; }
.wrap.narrow{ max-width:var(--wrap-narrow); }
.narrow{ max-width:var(--wrap-narrow); }

.muted{ color:var(--ink-mute); font-size:.92rem; }
.lead{ font-size:1.1rem; color:var(--ink-soft); line-height:1.7; }
.empty{
  padding:52px 24px; text-align:center; color:var(--ink-mute);
  background:var(--surface); border:1px dashed var(--line); border-radius:var(--r-lg);
}
.hp{ position:absolute !important; left:-9999px !important; opacity:0 !important; }

.rich{ color:var(--ink-soft); }
.rich h2{ margin-top:1.7em; color:var(--ink); }
.rich h3{ margin-top:1.4em; color:var(--ink); }
.rich h2:first-child,.rich h3:first-child{ margin-top:0; }
.rich img{ border-radius:var(--r); margin:1.4em 0; box-shadow:var(--sh-sm); }
.rich ul,.rich ol{ padding-left:1.3em; }
.rich li{ margin-bottom:.5em; }
.rich blockquote{
  margin:1.6em 0; padding:18px 24px;
  background:var(--brand-soft); border-left:3px solid var(--brand);
  border-radius:0 var(--r) var(--r) 0; color:var(--ink);
}
.rich a{ text-decoration:underline; text-underline-offset:2px; }

/* --------------------------------------------------------------- dugmeler */

.btn{
  position:relative; overflow:hidden;
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:13px 26px;
  font:inherit; font-size:.95rem; font-weight:600; line-height:1;
  color:#fff; background:var(--grad-brand);
  border:0; border-radius:var(--r-full); cursor:pointer;
  box-shadow:var(--sh-brand);
  transition:transform var(--t-fast), box-shadow var(--t-fast), filter var(--t-fast);
  text-decoration:none;
}
/* uzerine gelince soldan saga gecen parlama */
.btn::after{
  content:""; position:absolute; top:0; left:-120%;
  width:70%; height:100%;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.32), transparent);
  transform:skewX(-18deg);
  transition:left .55s ease;
}
.btn:hover{ color:#fff; transform:translateY(-2px); box-shadow:0 14px 32px rgba(193,95,43,.36); text-decoration:none; }
.btn:hover::after{ left:130%; }
.btn:active{ transform:translateY(0); }
.btn-lg{ padding:16px 34px; font-size:1.02rem; }
.btn-wide{ width:100%; }

.btn-line{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:12px 24px;
  font:inherit; font-size:.94rem; font-weight:600; line-height:1;
  color:var(--brand); background:transparent;
  border:1.5px solid var(--brand); border-radius:var(--r-full);
  cursor:pointer; text-decoration:none;
  transition:background var(--t-fast), color var(--t-fast), transform var(--t-fast);
}
.btn-line:hover{
  background:var(--brand); color:#fff; text-decoration:none; transform:translateY(-2px);
}
.btn-line svg{ transition:transform var(--t-fast); }
.btn-line:hover svg{ transform:translateX(3px); }

/* koyu zeminde */
.on-dark .btn-line,.stats .btn-line,.cta .btn-line{
  color:#fff; border-color:rgba(255,255,255,.45);
}
.on-dark .btn-line:hover,.cta .btn-line:hover{ background:#fff; color:var(--teal-dk); border-color:#fff; }

/* --------------------------------------------------------------- animasyon */

@keyframes fadeUp   { from{ opacity:0; transform:translateY(26px); } to{ opacity:1; transform:none; } }
@keyframes fadeIn   { from{ opacity:0; } to{ opacity:1; } }
@keyframes zoomIn   { from{ opacity:0; transform:scale(.94); }      to{ opacity:1; transform:none; } }
@keyframes popIn    { 0%{ opacity:0; transform:scale(.6); } 60%{ transform:scale(1.06); } 100%{ opacity:1; transform:none; } }
@keyframes slideIn  { from{ opacity:0; transform:translateX(-22px);} to{ opacity:1; transform:none; } }
@keyframes floatY   { 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-12px); } }
@keyframes shimmer  { 0%{ background-position:-200% 0; } 100%{ background-position:200% 0; } }
@keyframes pulseRing{ 0%{ transform:scale(1); opacity:.5; } 70%{ transform:scale(1.7); opacity:0; } 100%{ opacity:0; } }

/* kaydirmayla ortaya cikma — reveal.js ekler */
[data-rv]{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .62s cubic-bezier(.22,.8,.28,1), transform .62s cubic-bezier(.22,.8,.28,1);
  will-change:opacity, transform;
}
[data-rv].rv-in{ opacity:1; transform:none; }
[data-rv="zoom"]{ transform:scale(.95); }
[data-rv="left"]{ transform:translateX(-26px); }
[data-rv="right"]{ transform:translateX(26px); }

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
  [data-rv]{ opacity:1 !important; transform:none !important; }
}
