/* Tim Akdemir: the approved Aslan cream / forest / gold theme. */
@font-face {
  font-family: "PP Editorial Old";
  src: url("./fonts/pp-editorial-old-upright-v11.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
:root {
  --ta-paper: #f1f0eb;
  --ta-white: #fafaf5;
  --ta-ink: #28342a;
  --ta-muted: #626e5c;
  --ta-rule: #d1d7c8;
  --ta-gold: #ad8b48;
  --ta-gold-text: #79602f;
  --ta-green: #2c3d2d;
  --ta-display: "PP Editorial Old", Georgia, serif;
}
html:has(body.tim-aslan-theme), body.tim-aslan-theme,
body.tim-aslan-theme #root, body.tim-aslan-theme .ta-site {
  background: var(--ta-paper) !important;
  color: var(--ta-ink) !important;
  min-width: 0 !important;
}
html:has(body.tim-aslan-theme) { scroll-padding-top: 102px; }
body.tim-aslan-theme { font-family: Inter, system-ui, sans-serif; }
body.tim-aslan-theme * { box-sizing: border-box; }
body.tim-aslan-theme ::selection { background: #dbd3b9; color: var(--ta-ink); }
body.tim-aslan-theme :is(a, button) { -webkit-tap-highlight-color: transparent; }
body.tim-aslan-theme :is(a, button):focus-visible { outline: 2px solid var(--ta-gold-text); outline-offset: 5px; }
body.tim-aslan-theme p { color: var(--ta-muted) !important; }
body.tim-aslan-theme :is(h1, h2, .ta-platform-title, .ta-statement p) {
  font-family: var(--ta-display) !important;
  font-weight: 100 !important;
  font-style: normal !important;
  font-synthesis: none;
  font-kerning: normal;
  font-feature-settings: "blwf" 1, "cv09" 1, "cv03" 1, "cv04" 1, "cv11" 1;
  letter-spacing: -.025em !important;
  color: var(--ta-ink) !important;
  text-wrap: balance;
}
body.tim-aslan-theme h2 { font-size: clamp(38px, 4.2vw, 60px) !important; line-height: 1.13 !important; }
body.tim-aslan-theme .ta-site > section { border-color: var(--ta-rule) !important; }

/* A quiet fixed header, with the same spacing and controls as the agency. */
body.tim-aslan-theme .ta-site > nav {
  height: 76px;
  padding: 0 max(32px, calc((100vw - 1240px) / 2)) !important;
  background: #f3f3edf2 !important;
  border-bottom: 1px solid var(--ta-rule) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  transition: background .2s !important;
}
body.tim-aslan-theme .ta-brand { gap: 13px; min-height: 44px; color: var(--ta-ink) !important; }
body.tim-aslan-theme .ta-brand span { font-size: 14px; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; }
body.tim-aslan-theme .nav-desktop { gap: 32px !important; }
body.tim-aslan-theme .nav-desktop a { font-size: 13px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; min-height: 44px; display: inline-flex; align-items: center; color: #48513f !important; }
body.tim-aslan-theme .nav-desktop a:hover { color: var(--ta-gold-text) !important; }
body.tim-aslan-theme .nav-desktop a:last-child { padding: 12px 22px; border-radius: 5px; background: var(--ta-green); color: var(--ta-white) !important; }
body.tim-aslan-theme .nav-desktop a:last-child:hover { background: #43543a; }
body.tim-aslan-theme .nav-mobile { width: 44px; height: 44px; border: 1px solid #bfc6b8 !important; padding: 10px !important; color: var(--ta-ink) !important; }
body.tim-aslan-theme .nav-mobile svg { stroke-width: 1.25; }
body.tim-aslan-theme .ta-mobile-menu { top: 76px !important; background: var(--ta-paper) !important; overflow-y: auto; padding: 40px 24px; }
body.tim-aslan-theme .ta-mobile-menu a { font-family: var(--ta-display); font-size: 44px !important; font-weight: 100 !important; letter-spacing: -.02em !important; text-transform: none !important; color: var(--ta-ink) !important; }
body.tim-aslan-theme:has(.ta-mobile-menu) { overflow: hidden !important; }

/* Portrait, name and proof are the hero. */
body.tim-aslan-theme .hero-grid {
  width: min(1240px, calc(100% - 96px));
  margin: 0 auto;
  min-height: 0 !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr) !important;
  gap: clamp(48px, 7vw, 112px);
  padding: 144px 0 88px !important;
  align-items: center;
  overflow: visible !important;
}
body.tim-aslan-theme .hero-copy { padding: 0 !important; transform: none !important; min-width: 0; }
body.tim-aslan-theme .hero-copy > * { opacity: 1 !important; transform: none !important; }
body.tim-aslan-theme .hero-copy > div:nth-child(2) { order: -1; margin-bottom: 20px !important; }
body.tim-aslan-theme .hero-copy > div:nth-child(2) > div { height: auto !important; }
body.tim-aslan-theme .hero-copy > div:nth-child(2) div { font-size: 10px !important; font-weight: 600 !important; letter-spacing: .19em !important; color: var(--ta-gold-text) !important; line-height: 1.5; }
body.tim-aslan-theme h1 { font-size: clamp(78px, 8.1vw, 120px) !important; line-height: .98 !important; letter-spacing: -.04em !important; margin: 0 0 28px !important; }
body.tim-aslan-theme h1 span { color: var(--ta-ink) !important; background: none !important; -webkit-text-fill-color: currentColor !important; animation: none !important; }
body.tim-aslan-theme .hero-copy > p { max-width: 430px !important; font-size: 17px !important; line-height: 1.8 !important; margin-bottom: 25px !important; }
body.tim-aslan-theme .ta-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin: 0 0 38px; }
body.tim-aslan-theme .ta-primary { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid var(--ta-green); border-radius: 5px; background: var(--ta-green); color: var(--ta-white); padding: 14px 22px; min-height: 50px; font-size: 13px; font-weight: 500; transition: background .2s; }
body.tim-aslan-theme .ta-primary:hover { background: #43543a; }
body.tim-aslan-theme .ta-text-link { display: inline-flex; align-items: center; min-height: 48px; padding: 10px 0; gap: 22px; font-size: 13px; font-weight: 500; color: var(--ta-ink); border-bottom: 1px solid #aab49f; }
body.tim-aslan-theme .ta-text-link:hover { color: var(--ta-gold-text); }
body.tim-aslan-theme .ta-metrics { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px !important; padding: 24px 0 0; border-top: 1px solid var(--ta-rule); }
body.tim-aslan-theme .ta-metrics > div { min-width: 0; }
body.tim-aslan-theme .ta-metrics > div > div:first-child { font-family: Inter, system-ui, sans-serif !important; font-size: clamp(26px, 2.8vw, 38px) !important; font-weight: 500 !important; color: #3d5036 !important; letter-spacing: -.05em; line-height: 1.2; }
body.tim-aslan-theme .ta-metrics > div > div:last-child { color: var(--ta-muted) !important; font-size: 11px !important; line-height: 1.7; font-weight: 400; text-transform: none !important; letter-spacing: 0 !important; margin-top: 8px !important; max-width: 130px; }
body.tim-aslan-theme .hero-photo-wrap {
  width: 100% !important;
  aspect-ratio: 4 / 4.65;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  transform: none !important;
  border: 1px solid #d3d7cd;
  border-radius: 8px;
  background: #eeefe6 !important;
  box-shadow: 0 24px 64px -36px #29372c45;
}
body.tim-aslan-theme .hero-photo-img { display: block; width: 100% !important; height: 100% !important; min-height: 0 !important; position: absolute; inset: 0; object-fit: cover !important; object-position: 50% 16% !important; mix-blend-mode: multiply; transform: none !important; opacity: 1 !important; }
body.tim-aslan-theme .hero-photo-overlays { display: none !important; }

/* Spacious editorial sections, with a consistent page grid. */
body.tim-aslan-theme .ta-statement { background: var(--ta-white); padding: 64px 48px !important; }
body.tim-aslan-theme .ta-statement p { font-size: clamp(32px, 3.5vw, 48px) !important; line-height: 1.2 !important; max-width: 850px; margin: 0 auto; }
body.tim-aslan-theme :is(#about, #work, #contact) { padding: 104px 48px !important; }
body.tim-aslan-theme :is(#about, #work) > div { max-width: 1240px !important; }
body.tim-aslan-theme .about-grid { max-width: none !important; display: block !important; }
body.tim-aslan-theme .about-grid > div { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); column-gap: clamp(48px, 7vw, 112px); row-gap: 20px; align-items: start; }
body.tim-aslan-theme .about-grid > div > div { min-width: 0; }
body.tim-aslan-theme .about-grid > div > div:first-child { grid-column: 1 / -1; }
body.tim-aslan-theme .about-grid > div > div:nth-child(2) { grid-column: 1; grid-row: 2 / span 4; }
body.tim-aslan-theme .about-grid > div > div:nth-child(n+3) { grid-column: 2; }
body.tim-aslan-theme .about-grid h2 { max-width: 450px; margin-bottom: 0 !important; }
body.tim-aslan-theme .about-grid p { font-size: 16px !important; line-height: 1.9 !important; margin-bottom: 0 !important; }
body.tim-aslan-theme .about-grid > div > div:first-child > div,
body.tim-aslan-theme :is(#work, #contact) > div > div:first-child > div { font-size: 10px !important; line-height: 1.6; font-weight: 600 !important; letter-spacing: .18em !important; color: var(--ta-gold-text) !important; margin-bottom: 0 !important; }
body.tim-aslan-theme #work { background: var(--ta-white); }
body.tim-aslan-theme #work h2 { max-width: 850px; margin-top: 20px; margin-bottom: 48px !important; }
body.tim-aslan-theme #work h2 br { display: none; }
body.tim-aslan-theme .work-grid { gap: 24px !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-rows: 1fr; }
body.tim-aslan-theme .work-grid > div { min-width: 0; }
body.tim-aslan-theme .ta-platform { border: 1px solid var(--ta-rule) !important; border-radius: 8px !important; background: var(--ta-paper) !important; box-shadow: none; transition: border-color .2s, box-shadow .2s !important; }
body.tim-aslan-theme .ta-platform:hover { border-color: #aeb69f !important; box-shadow: 0 15px 40px -28px #2c3d2d66; }
body.tim-aslan-theme .ta-platform > div:nth-child(-n+2),
body.tim-aslan-theme .ta-platform > div:last-child > div { display: none; }
body.tim-aslan-theme .ta-platform > div:last-child { height: 100%; }
body.tim-aslan-theme .ta-platform a { padding: 36px !important; display: flex !important; flex-direction: column; align-items: start; min-height: 365px; position: relative; }
body.tim-aslan-theme .ta-platform a > div:first-child { font-family: Inter, system-ui, sans-serif !important; font-size: 11px !important; font-weight: 500 !important; color: var(--ta-gold-text) !important; line-height: 1.5; letter-spacing: .08em; margin-bottom: 28px !important; }
body.tim-aslan-theme .ta-platform-title { font-size: clamp(30px, 3vw, 42px) !important; line-height: 1.15; margin-bottom: 10px !important; }
body.tim-aslan-theme .ta-platform a > div:nth-child(3) { font-size: 10px !important; font-weight: 500 !important; letter-spacing: .12em !important; color: var(--ta-gold-text) !important; text-transform: uppercase; margin-bottom: 24px !important; }
body.tim-aslan-theme .ta-platform p { font-size: 15px !important; line-height: 1.8 !important; margin-bottom: 30px !important; }
body.tim-aslan-theme .ta-platform a > span { display: block; width: 100%; margin-top: auto; padding-top: 20px; border-top: 1px solid var(--ta-rule); color: #43553b !important; font-size: 11px !important; letter-spacing: .06em !important; }
body.tim-aslan-theme #contact h2 { margin-top: 20px; }
body.tim-aslan-theme #contact p { max-width: 450px; margin-inline: auto; }
body.tim-aslan-theme #contact a { display: inline-flex !important; align-items: center; justify-content: center; min-height: 50px; border-radius: 5px !important; font-size: 13px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 500 !important; transform: none !important; transition: color .2s, background .2s !important; padding: 14px 28px !important; }
body.tim-aslan-theme #contact a[href^="mailto:"] { color: var(--ta-white) !important; background: var(--ta-green) !important; border: 1px solid var(--ta-green); }
body.tim-aslan-theme #contact a[href^="mailto:"]:hover { background: #43543a !important; }
body.tim-aslan-theme #contact a[href^="https:"] { border-color: #aeb89f !important; color: var(--ta-ink) !important; background: transparent !important; }
body.tim-aslan-theme #contact a[href^="https:"]:hover { background: #e4e7dc !important; }
body.tim-aslan-theme #contact p:last-child { font-size: 13px !important; overflow-wrap: anywhere; }
body.tim-aslan-theme footer { background: #1b3023; border-top: 1px solid #3f5340 !important; padding: 30px 32px !important; }
body.tim-aslan-theme footer p { color: #d0d7c9 !important; font-size: 12px !important; }

@media (max-width: 1100px) {
  body.tim-aslan-theme .hero-grid { gap: 48px; }
  body.tim-aslan-theme .ta-metrics { gap: 16px !important; }
  body.tim-aslan-theme .hero-copy > p { font-size: 16px !important; }
  body.tim-aslan-theme .ta-platform a { padding: 30px !important; }
}
@media (max-width: 900px) {
  body.tim-aslan-theme .ta-site > nav { height: 72px; padding: 0 24px !important; }
  body.tim-aslan-theme .ta-mobile-menu { top: 72px !important; }
  body.tim-aslan-theme .hero-grid { width: min(640px, calc(100% - 48px)); grid-template-columns: minmax(0, 1fr) !important; gap: 40px; padding: 124px 0 64px !important; }
  body.tim-aslan-theme .hero-grid > .hero-copy { padding: 0 !important; }
  body.tim-aslan-theme h1 { font-size: clamp(78px, 14vw, 112px) !important; }
  body.tim-aslan-theme .hero-copy > p { max-width: 510px !important; }
  body.tim-aslan-theme .hero-photo-wrap { width: 100% !important; aspect-ratio: 1 / 1; max-height: 620px; }
  body.tim-aslan-theme .hero-photo-img { width: 100% !important; height: 100% !important; object-position: center 16% !important; border-radius: 0 !important; }
  body.tim-aslan-theme .ta-metrics > div > div:first-child { font-size: 34px !important; }
  body.tim-aslan-theme .ta-metrics > div > div:last-child { max-width: 150px; font-size: 11px !important; }
  body.tim-aslan-theme .ta-statement { padding: 52px 24px !important; }
  body.tim-aslan-theme :is(#about, #work, #contact) { padding: 72px 24px !important; }
  body.tim-aslan-theme :is(#about, #work) > div { max-width: 640px !important; }
  body.tim-aslan-theme .about-grid > div { display: flex; flex-direction: column; gap: 20px; }
  body.tim-aslan-theme .about-grid h2 { max-width: 520px; margin-bottom: 12px !important; }
  body.tim-aslan-theme h2 { font-size: clamp(38px, 6vw, 50px) !important; line-height: 1.16 !important; }
  body.tim-aslan-theme .work-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; }
  body.tim-aslan-theme .ta-platform a { min-height: 0; padding: 30px !important; }
  body.tim-aslan-theme .ta-platform-title { font-size: 38px !important; }
}
@media (max-width: 420px) {
  body.tim-aslan-theme .ta-site > nav { padding-inline: 20px !important; }
  body.tim-aslan-theme .ta-brand span { font-size: 12px; letter-spacing: .11em; }
  body.tim-aslan-theme .hero-grid { width: calc(100% - 40px); padding-top: 116px !important; gap: 32px; }
  body.tim-aslan-theme h1 { font-size: clamp(70px, 20vw, 84px) !important; margin-bottom: 24px !important; }
  body.tim-aslan-theme .hero-copy > div:nth-child(2) { margin-bottom: 20px !important; }
  body.tim-aslan-theme .ta-hero-actions { gap: 20px; margin-bottom: 28px; }
  body.tim-aslan-theme .ta-primary { padding: 13px 17px; gap: 20px; }
  body.tim-aslan-theme .ta-metrics { gap: 14px !important; padding-top: 22px; }
  body.tim-aslan-theme .ta-metrics > div > div:first-child { font-size: 29px !important; }
  body.tim-aslan-theme .ta-metrics > div > div:last-child { font-size: 11px !important; line-height: 1.65; }
  body.tim-aslan-theme :is(#about, #work, #contact) { padding: 60px 20px !important; }
  body.tim-aslan-theme .ta-statement { padding: 44px 20px !important; }
  body.tim-aslan-theme .ta-statement p { font-size: 32px !important; }
  body.tim-aslan-theme h2 { font-size: 38px !important; }
  body.tim-aslan-theme .ta-platform a { padding: 26px !important; }
  body.tim-aslan-theme .ta-platform-title { font-size: 34px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(body.tim-aslan-theme) { scroll-behavior: auto !important; }
  body.tim-aslan-theme *, body.tim-aslan-theme *::before, body.tim-aslan-theme *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  body.tim-aslan-theme .ta-site :is(section, section div, section p) { opacity: 1 !important; transform: none !important; }
}
