
/* GB BUTIK v1.19.8 — TEK GORUNTU MOTORU */

/* 1) TEK ARKA PLAN */
#gbThemeBackground{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  z-index:0;
  pointer-events:none;
  background-color:#eee8e1;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  opacity:1;
  transform:none;
  filter:none;
  transition:none;
  contain:paint;
}
#gbThemeBackground>*{display:none!important}


/* 1C) STATIC DECOR — Story Motion gerektirmeyen tema dekorlari */
#gbStaticDecorLayer{position:fixed;inset:0;width:100vw;height:100dvh;z-index:1;pointer-events:none!important;overflow:hidden;opacity:0;visibility:hidden;contain:layout paint style}
#gbStaticDecorLayer.is-active{opacity:1;visibility:visible}
#gbStaticDecorLayer .gb-static-decor{position:absolute;width:var(--gb-decor-size,140px);max-width:45vw;opacity:0;transition:opacity .28s ease;pointer-events:none}
#gbStaticDecorLayer .gb-static-decor.is-visible{opacity:var(--gb-decor-opacity,1)}
#gbStaticDecorLayer .gb-static-decor img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}
#gbStaticDecorLayer .gb-static-decor[data-position="top-left"]{left:0;top:0}
#gbStaticDecorLayer .gb-static-decor[data-position="top-right"]{right:0;top:0}
#gbStaticDecorLayer .gb-static-decor[data-position="bottom-left"]{left:0;bottom:0}
#gbStaticDecorLayer .gb-static-decor[data-position="bottom-right"]{right:0;bottom:0}
#gbStaticDecorLayer .gb-static-decor[data-position="top-center"]{left:50%;top:0;transform:translateX(-50%)}
#gbStaticDecorLayer .gb-static-decor[data-position="bottom-center"]{left:50%;bottom:0;transform:translateX(-50%)}
@media(prefers-reduced-motion:reduce){#gbStaticDecorLayer .gb-static-decor{transition:none!important}}

/* 1B) STORY MOTION — tema bazlı, varsayılan kapalı dekor katmanı */
#gbStoryMotionLayer{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  z-index:1;
  pointer-events:none!important;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease;
  contain:layout paint style;
}
#gbStoryMotionLayer.is-visible{
  opacity:1;
  visibility:visible;
}
#gbStoryMotionLayer .gb-story-actor{
  position:absolute;
  left:50%;
  top:50%;
  width:var(--gb-story-size,84px);
  max-width:42vw;
  opacity:0;
  transform:translate3d(-50%,-50%,0) scale(var(--gb-story-scale,1)) rotate(var(--gb-story-rotate,0deg));
  transform-origin:center center;
  transition:
    left var(--gb-story-transition,900ms) cubic-bezier(.22,.61,.36,1),
    top var(--gb-story-transition,900ms) cubic-bezier(.22,.61,.36,1),
    opacity calc(var(--gb-story-transition,900ms) * .65) ease,
    transform var(--gb-story-transition,900ms) cubic-bezier(.22,.61,.36,1);
  will-change:left,top,transform,opacity;
}
#gbStoryMotionLayer .gb-story-actor-visual{
  display:block;
  width:100%;
  height:auto;
  user-select:none;
  -webkit-user-drag:none;
  filter:none;
  transform-origin:center center;
}
#gbStoryMotionLayer .gb-story-actor-visual[data-idle="bob"]{animation:gb-story-idle-bob 2.8s ease-in-out infinite}
#gbStoryMotionLayer .gb-story-actor-visual[data-idle="float"]{animation:gb-story-idle-float 4.2s ease-in-out infinite}
#gbStoryMotionLayer .gb-story-actor-visual[data-idle="sway"]{animation:gb-story-idle-sway 3.4s ease-in-out infinite}
@keyframes gb-story-idle-bob{50%{transform:translateY(-4px)}}
@keyframes gb-story-idle-float{50%{transform:translate3d(3px,-5px,0) rotate(1.5deg)}}
@keyframes gb-story-idle-sway{50%{transform:rotate(3deg)}}

@media(prefers-reduced-motion:reduce){
  #gbStoryMotionLayer .gb-story-actor{transition:none!important}
  #gbStoryMotionLayer .gb-story-actor-visual{animation:none!important}
}

.site-shell,
.auth-shell,
.dashboard-shell{
  position:relative;
  z-index:1;
  background:transparent!important;
  
}

/* Kartlar tek #gbThemeBackground katmanı üzerinde kayar; kart gradientleri tema CSS'ine aittir. */

/* 2) INTRO VIDEO — METINDEN TAMAMEN BAGIMSIZ */
.intro .intro-video-host{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#050505;
}
.intro .intro-video,
.intro video{
  position:absolute;
  inset:0;
  width:100%;
  height:100dvh;
  object-fit:cover;
  object-position:center center;
  background:#050505;
  animation:none!important;
  transition:none!important;
  filter:none!important;
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* 3) INTRO YAZILARI — KEYFRAME YOK, SADECE TEK OPACITY */
.intro .intro-overlay{
  opacity:0;
  transform:translate3d(0,4px,0)!important;
  transition:opacity .30s ease-out, transform .30s ease-out!important;
  animation:none!important;
  will-change:opacity,transform!important;
  color:var(--gb-intro-safe-text,#fff8ec)!important;
  text-shadow:0 2px 5px rgba(0,0,0,.92),0 0 14px rgba(0,0,0,.72),0 0 2px rgba(255,255,255,.55)!important;
  isolation:isolate;
}
.intro .intro-overlay::before{
  content:"";
  position:absolute;
  inset:18% 7%;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.28) 0%,rgba(0,0,0,.14) 46%,rgba(0,0,0,0) 74%);
  filter:blur(14px);
}
.intro .intro-overlay.gb-intro-text-visible{opacity:1;transform:translate3d(0,0,0)!important}
.intro .intro-overlay *{
  opacity:1!important;
  animation:none!important;
  transition:none!important;
  transform:none!important;
  will-change:auto!important;
  color:inherit!important;
  text-shadow:inherit!important;
}

/* 4) MASAUSTU 9:16 GORUNTU UYUMU — ARKA PLAN GUVENLI
   Mobil davranis degismez. Ana tema arka plani JS tarafinda dogrudan
   background-image olarak kalir; sadece masaustundeki boyutlandirma degisir. */
@media(min-width:761px){
  .cover{
    background-color:#1c1714;
    background-image:linear-gradient(rgba(14,11,9,.32),rgba(14,11,9,.32)),var(--gb-cover-image,none);
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
  }
  .cover-photo{
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
  }

  .intro .intro-video-host{
    background-color:#050505;
    background-image:linear-gradient(rgba(5,5,5,.40),rgba(5,5,5,.40)),var(--gb-intro-backdrop,none);
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
  }
  .intro .intro-video,
  .intro video{
    object-fit:contain!important;
    object-position:center center!important;
  }

  #gbThemeBackground{
    background-size:auto 100%!important;
    background-position:center center!important;
    background-color:#eee8e1;
  }
}

/* 5) MOBIL AKICILIK */
@media(max-width:760px){
  .site-shell .glass-card,
  .site-shell .section,
  .site-header{
    animation:none!important;
    transform:none!important;
    will-change:auto!important;
  }
}

/* 6) HAREKET AZALTMA */
@media(prefers-reduced-motion:reduce){
  .intro .intro-overlay{transition:none}
  
}


/* INTRO KATMANI */
#gbIntroLayer{
  position:fixed;inset:0;z-index:30;opacity:1;
}

/* BEYAZ ISIK GECISI */
#gbLightTransition{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:none;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  background:rgba(255,255,255,0);
}
#gbLightTransition .gb-light-core{
  position:absolute;
  left:50%;
  top:50%;
  width:18vmax;
  height:18vmax;
  border-radius:50%;
  transform:translate(-50%,-50%) scale(.35);
  background:radial-gradient(circle,rgba(255,255,255,1) 0%,rgba(255,255,255,.96) 38%,rgba(255,255,255,.72) 62%,rgba(255,255,255,0) 100%);
  opacity:0;
  transition:transform .98s cubic-bezier(.18,.74,.22,1),opacity .98s ease-out;
  will-change:transform,opacity;
}
#gbLightTransition.gb-light-bloom{
  background:rgba(255,255,255,.88);
  transition:background-color .98s ease-out,opacity .98s ease-out;
}
#gbLightTransition.gb-light-bloom .gb-light-core{
  transform:translate(-50%,-50%) scale(10);
  opacity:1;
}
#gbLightTransition.gb-light-release{
  background:rgba(255,255,255,0);
  transition:background-color .64s ease-in,opacity .64s ease-in;
}
#gbLightTransition.gb-light-release .gb-light-core{
  transform:translate(-50%,-50%) scale(12);
  opacity:0;
  transition:transform .64s ease-in,opacity .64s ease-in;
}


/* TAKVIM MODALI */
html.gb-modal-open,body.gb-modal-open{overflow:hidden!important}
#gbCalendarModal.gb-calendar-modal{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:none!important;
  margin:0!important;
  padding:16px!important;
  border:0!important;
  background:transparent!important;
  overflow:auto!important;
  z-index:2147483100!important;
  box-sizing:border-box!important;
}
#gbCalendarModal.gb-calendar-modal[open]{
  display:grid!important;
  place-items:center!important;
}
#gbCalendarModal::backdrop{
  background:rgba(18,18,18,.48);
  backdrop-filter:blur(2px);
}
#gbCalendarModal .gb-calendar-panel{
  position:relative!important;
  width:min(420px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 40px)!important;
  overflow:auto!important;
  margin:auto!important;
  padding:24px 18px 18px!important;
  border-radius:20px!important;
  background:var(--glass,rgba(255,255,255,.97));
  border:1px solid var(--line,rgba(0,0,0,.10));
  box-shadow:var(--shadow,0 20px 60px rgba(0,0,0,.24));
  color:var(--ink,#2b2b2b);
  text-align:center!important;
  transform:none!important;
}
#gbCalendarModal .gb-calendar-close{
  position:absolute!important;
  top:10px!important;right:12px!important;
  width:36px!important;height:36px!important;
  border:0!important;border-radius:50%!important;
  background:var(--glass,#fff);
  font-size:26px!important;line-height:1!important;
  cursor:pointer!important;
}
#gbCalendarModal h3{margin:4px 36px 4px!important;font-size:1.25rem!important}
#gbCalendarModal .gb-calendar-sub{margin:0 0 16px!important;opacity:.7!important}
#gbCalendarModal .gb-calendar-actions{display:grid!important;gap:10px!important}
#gbCalendarModal .gb-calendar-action{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-height:48px!important;padding:10px 14px!important;
  border:1px solid var(--line,rgba(0,0,0,.10));border-radius:14px!important;
  background:var(--glass,#fff);color:var(--ink,#222);text-decoration:none!important;
  font:inherit!important;cursor:pointer!important;box-sizing:border-box!important;
}


/* v1.20.1: Story Motion katmanı dekor olarak içerik altında, background üstünde kalır. */
body > .site-shell,
body > .intro,
body > .public-lightbox,
body > .album-modal,
body > .gb-calendar-modal{
  position:relative;
  z-index:2;
}
#gbThemeBackground{z-index:-1!important}
#gbStoryMotionLayer{pointer-events:none!important}
#gbStaticDecorLayer{pointer-events:none!important}

/* GB Theme Engine v2 */
#gbThemeBackground .gb-theme-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.gb-inline-visual{position:relative;z-index:4;display:flex;justify-content:center;align-items:center;width:100%;padding:8px 16px;pointer-events:none}
.gb-inline-visual img{display:block;max-width:min(82vw,520px);width:auto;height:auto;max-height:38vh;object-fit:contain}
.gb-theme-spacer{height:var(--gb-spacer,40px);position:relative;z-index:3}
.gb-custom-page{position:relative;z-index:4;min-height:60vh}
.gb-custom-page-host{width:100%;min-height:inherit}
.gb-page-controls{position:fixed;z-index:60;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:10px;padding:8px;border-radius:999px;background:rgba(8,24,30,.3);backdrop-filter:blur(10px)}
.gb-page-controls button{min-width:108px;min-height:44px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.9);color:#18333d;font:600 14px/1 system-ui;cursor:pointer}
.gb-snap-pages{scroll-snap-type:y proximity}.gb-snap-pages>.section{scroll-snap-align:start;scroll-snap-stop:normal}
#gbThemeSceneLayer.gb-theme-scene-layer{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.gb-theme-actor{position:absolute;left:0;top:0;width:var(--gb-actor-size,18vw);transform:translate3d(var(--gb-actor-x,50vw),var(--gb-actor-y,50vh),0) translate(-50%,-50%) rotate(var(--gb-actor-rotate,0deg)) scale(var(--gb-actor-scale,1));transform-origin:center;will-change:transform,opacity;pointer-events:none}
.gb-theme-actor img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}
[data-theme-engine="2"] .section{position:relative;z-index:4}
[data-theme-engine="2"] .page-wrap{position:relative;z-index:4}
@media (max-width:640px){.gb-inline-visual img{max-width:86vw}.gb-page-controls{width:calc(100% - 24px);justify-content:space-between}.gb-page-controls button{flex:1;min-width:0}}
@media (prefers-reduced-motion:reduce){.gb-theme-actor{transition:none!important}.gb-snap-pages{scroll-behavior:auto}}
[data-theme-engine="2"] .gb-v2-section-content{position:relative;width:min(100% - 24px,760px);margin:0 auto;padding:clamp(44px,9vw,84px) clamp(16px,5vw,42px);background:transparent;border:0;border-radius:0;box-shadow:none}
#gbPreviewAudit{position:fixed;z-index:99999;right:12px;bottom:12px;max-width:min(360px,calc(100vw - 24px));padding:12px 14px;border-radius:12px;font:12px/1.35 system-ui;background:#10252d;color:white;box-shadow:0 8px 28px rgba(0,0,0,.26)}
#gbPreviewAudit strong,#gbPreviewAudit span{display:block}#gbPreviewAudit span{margin-top:3px}#gbPreviewAudit ul{margin:8px 0 0;padding-left:18px;max-height:180px;overflow:auto}#gbPreviewAudit.is-ok{background:#174f3c}#gbPreviewAudit.has-errors{background:#7b2727}
