/* GOJOWA — kurumsal + ortak temel. IKI TEMA (Adim 31): acik (varsayilan, saf beyaz) ve koyu.
   Ayni iskelet, yalnizca renk degiskenleri farkli. Cihaz tercihi (prefers-color-scheme) ve
   kullanicinin elle secimi (html[data-theme]) - elle secim cihazi gecersiz kilar.
   Bilesenler YALNIZCA degisken kullanir; sabit hex yalnizca burada (tanimlar). */

/* Adim 40b: yazi tipleri fonts.css'te (@font-face, kendi alanimizdan). Eski tek aile kaldirildi. */

:root {
  color-scheme: light dark;

  /* ===== ACIK TEMA - varsayilan. A tasarimi (Adim 40b): beyaz zemin, sicak kirmizi, yuvarlak kartlar.
     Kontrastlar beyaz zemine gore: ink 18.0:1, muted 5.9:1, faint 4.5:1, cta beyaz yaziyla 4.59:1 (esik 4.5) ===== */
  --page:   #FFFFFF;   /* zemin */
  --paper:  #FFFFFF;   /* kart yuzeyi - ayrim kenarlikla */
  --sunk:   #FBF7F4;   /* ikincil zemin: arama kutusu, serit, fotografsiz kart */
  --warm:   #FBF7F4;
  --edge:   #EAE4DE;   /* kenarlik */
  --edge-2: #DCD3CA;   /* form ve buton kenari */
  --edge-soft: #F3EEE9;

  --ink:    #1A1614;   /* ana metin */
  --ink-2:  #3A332E;   /* kart icindeki deger metni */
  --muted:  #6B635C;   /* ikincil metin - 5.9:1 */
  --faint:  #7D746C;   /* etiket - 4.5:1 (tuvaldeki #968C84 3.3:1 kaliyordu; bir ton koyulastirildi) */

  --cta-bg:    #D1442B; /* ana renk, dugme - beyaz yaziyla 4.59:1 */
  --cta-fg:    #FFFFFF;
  --cta-hover: #B33A24;
  --buy-bg:    #F2A93B; /* ikincil dugme (satin al) - koyu yaziyla 8.8:1 */
  --buy-fg:    #241605;
  --buy-hover: #E39A2A;
  --price:     #D1442B; /* buyuk fiyat rakami */
  --ok:        #1F7A44; /* olumlu - 5.4:1 */
  --shadow:    0 8px 22px -16px rgba(0,0,0,.4);
  --band-a:    #FDE8DD; /* karsilama bandi radyal 1 (sol ust) */
  --band-b:    #FBE0D0; /* karsilama bandi radyal 2 (sag ust) */
  --pill-bg:   #FDEDE8; /* hero rozet zemini */
  --pill-fg:   #8E2B18;

  /* rozet (Best value) */
  --amber:     #9A5A08;
  --amber-bg:  #FDF3E5;
  --amber-edge:#EBD6B4;
  --best-edge: #D1442B;
  /* Adim 40b: fotograf ustu katmanlar - temadan bagimsiz (fotografin ustu her zaman koyu-ustune-beyaz) */
  --on-photo:   #FFFFFF;
  --photo-shade: linear-gradient(180deg, rgba(6,12,20,0) 42%, rgba(6,12,20,.72) 100%);
  --photo-shade-2: linear-gradient(180deg, rgba(6,12,20,.05) 30%, rgba(6,12,20,.72) 100%);
  --photo-text-shadow: 0 1px 8px rgba(0,0,0,.55);
  --ring: 0 0 0 1px rgba(0,0,0,.14);
  --ring-lift: 0 0 0 1px rgba(0,0,0,.14), 0 1px 6px rgba(0,0,0,.25);
  --ring-big: 0 0 0 1px rgba(0,0,0,.12), 0 6px 18px rgba(0,0,0,.12);
  --focus-ring: 0 0 0 3px rgba(209,68,43,.15);

  /* eski adlar - bilesenler bunlari kullaniyor; degerleri temaya baglandi */
  --red:      var(--cta-bg);
  --red-loud: var(--price);
  --red-ink:  var(--cta-hover);
  --sh-1: var(--shadow);
  --sh-2: var(--shadow);
  --sh-3: var(--shadow);
  --sh-red: 0 2px 8px rgba(192,58,23,.24);
  --sh-up: 0 -6px 20px rgba(20,19,18,.08);       /* buybar */
  --sh-flag: 0 2px 8px rgba(20,19,18,.14);      /* bayrak rozeti */
  --sh-best: 0 16px 40px rgba(192,58,23,.10);   /* one cikan kart */

  --measure: 68ch;
  --gutter: clamp(20px, 5vw, 64px);
  --r: 14px;
}

/* ===== KOYU TEMA - cihaz koyu diyorsa ve kullanici elle acik secmediyse ===== */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --page:   #0B0C0E;
    --paper:  #131519;
    --sunk:   #15171A;
    --warm:   #15171A;
    --edge:   #23262B;
    --edge-2: #2E3237;
    --edge-soft: #1C1F24;
    --ink:    #F3F0EA;   /* 17:1 */
    --ink-2:  #D8D3CA;
    --muted:  #A9A399;   /* 8.6:1 */
    --faint:  #837D74;   /* 5.6:1 */
    --cta-bg:    #E0A87B; /* bakir - kirmizi degil: beyaz yazi #D14939 uzerinde 4.44:1, esigin altinda */
    --cta-fg:    #16110D; /* bakir uzerinde ~10:1 */
    --cta-hover: #F0C7A4;
    --buy-bg:    #E0A87B; /* koyu temada satin al da bakir; kirmizi yalnizca buyuk fiyat rakaminda */
    --buy-fg:    #16110D;
    --buy-hover: #F0C7A4;
    --price:     #E08A6E; /* kirmizi burada kalir: buyuk rakam (>=24px) icin 6.6:1 */
    --band-a:    #1A1512;
    --band-b:    #17141A;
    --pill-bg:   #241C14;
    --pill-fg:   #E0A87B;
    --ok:        #8FBF8A;
    --shadow:    none;    /* koyu zeminde golge ise yaramaz; ayrim kenarlikla */
    --amber:     #E0A87B;
    --amber-bg:  #241C14;
    --amber-edge:#3A2D20;
    --best-edge: #E0A87B;
    --sh-red: none; --sh-up: none; --sh-flag: none; --sh-best: none;
  }
}

/* ===== KOYU TEMA - kullanici elle koyu sectiyse (cihaz ne derse desin). Ayni blok. ===== */
:root[data-theme="dark"] {
  --page:   #0B0C0E;
  --paper:  #131519;
  --sunk:   #15171A;
  --warm:   #15171A;
  --edge:   #23262B;
  --edge-2: #2E3237;
  --edge-soft: #1C1F24;
  --ink:    #F3F0EA;
  --ink-2:  #D8D3CA;
  --muted:  #A9A399;
  --faint:  #837D74;
  --cta-bg:    #E0A87B;
  --cta-fg:    #16110D;
  --cta-hover: #F0C7A4;
  --buy-bg:    #E0A87B; /* koyu temada satin al da bakir; kirmizi yalnizca buyuk fiyat rakaminda */
  --buy-fg:    #16110D;
  --buy-hover: #F0C7A4;
  --price:     #E08A6E; /* kirmizi burada kalir: buyuk rakam (>=24px) icin 6.6:1 */
  --band-a:    #1A1512;
  --band-b:    #17141A;
  --pill-bg:   #241C14;
  --pill-fg:   #E0A87B;
  --ok:        #8FBF8A;
  --shadow:    none;
  --amber:     #E0A87B;
  --amber-bg:  #241C14;
  --amber-edge:#3A2D20;
  --best-edge: #E0A87B;
  --sh-red: none; --sh-up: none; --sh-flag: none; --sh-best: none;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--page);
  color: var(--ink);
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { color: inherit; }
h1, h2, h3 { font-family: "Bricolage Grotesque", "Plus Jakarta Sans", system-ui, sans-serif; letter-spacing: -0.022em; text-wrap: balance; }

.wrap { max-width: 1160px; margin: 0 auto; padding-inline: var(--gutter); }

/* ---------------------------------------------------------------- header */
.masthead {
  display: flex; align-items: center; gap: 24px; padding-block: 16px;
}
.masthead__logo { display: block; flex: none; }
.masthead__logo img { display: block; height: 24px; width: auto; }
.masthead__nav { display: flex; gap: 24px; font-size: 15px; font-weight: 500; align-items: center; }
.masthead__nav a { text-decoration: none; color: var(--muted); }
.masthead__nav a:hover { color: var(--ink); }
.masthead__spacer { flex: 1 1 auto; }
.mastband { background: var(--page); border-bottom: 1px solid var(--edge); }
.btn--sm { min-height: 40px; padding: 8px 16px; font-size: 0.92rem; border-radius: 10px; }

/* logo: temaya gore biri gorunur (elle secim <picture media>'yi gecersiz kilar, bu yuzden CSS) */
.logo-dark { display: none; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .logo-light { display: none; }
  :root:not([data-theme="light"]) .logo-dark { display: block; }
}
:root[data-theme="dark"] .logo-light { display: none; }
:root[data-theme="dark"] .logo-dark { display: block; }

/* tema dugmesi: gercek <button>, 44x44 dokunma alani, satir ici SVG */
.theme-toggle {
  flex: none; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
  background: var(--paper); color: var(--muted); border: 1px solid var(--edge-2); border-radius: 12px;
  cursor: pointer; padding: 0;
}
.theme-toggle:hover { color: var(--ink); border-color: var(--ink); }
.theme-toggle:focus-visible { outline: 2px solid var(--cta-bg); outline-offset: 2px; }
.theme-toggle__moon { display: none; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .theme-toggle__sun { display: none; }
  :root:not([data-theme="light"]) .theme-toggle__moon { display: block; }
}
:root[data-theme="dark"] .theme-toggle__sun { display: none; }
:root[data-theme="dark"] .theme-toggle__moon { display: block; }

@media (max-width: 640px) {
  .masthead { padding-block: 12px; gap: 12px; min-width: 0; }
  .masthead__logo img { height: 20px; }
  .masthead__nav { gap: 14px; font-size: 14px; min-width: 0; }
  .masthead__nav a:first-child { display: none; }  /* "Destinations": telefonda hero'daki buton var */
  .masthead .masthead__cta { display: none; }     /* telefonda yer yok; hero'daki buton var (shop.css .btn'i ezer) */
}

/* ------------------------------------------------------------------ hero */
.heroband {
  background:
    radial-gradient(120% 130% at 10% 0%, var(--band-a) 0%, transparent 58%),
    radial-gradient(90% 110% at 94% 4%, var(--band-b) 0%, transparent 60%),
    var(--sunk);
  border-bottom: 1px solid var(--edge);
}
.hero { padding-block: clamp(44px, 8vw, 88px) clamp(40px, 7vw, 72px); }

.chip {
  display: inline-flex; align-items: center; gap: 9px;
  font-size: 13px; font-weight: 600; letter-spacing: .01em;
  color: var(--amber); background: var(--amber-bg);
  border: 1px solid var(--amber-edge); border-radius: 999px;
  padding: 7px 14px; margin: 0 0 24px;
}
.chip::before {
  content: ""; width: 6px; height: 6px; border-radius: 50%;
  background: var(--red-loud); flex: none;
}

.hero h1 {
  font-size: clamp(2.1rem, 5.2vw, 3.4rem);
  font-weight: 800; line-height: 1.02; letter-spacing: -0.03em;
  margin: 0 0 clamp(18px, 3vw, 26px); max-width: 15ch;
  text-wrap: balance;
}
.hero h1 em { font-style: normal; color: var(--red-loud); }

.hero__lede {
  font-size: clamp(1.05rem, 2.1vw, 1.25rem);
  line-height: 1.55; color: var(--muted);
  max-width: 54ch; margin: 0;
}
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 0; }

/* Adim 31: hero iki sutun - solda metin + iki buton, sagda "her kartta yazan seyler" kutusu */
.hero--split { display: grid; gap: 32px; align-items: start; }
@media (min-width: 960px) { .hero--split { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 48px; } }
.promise { background: var(--paper); border: 1px solid var(--edge); border-radius: 20px; padding: 24px; box-shadow: var(--shadow); }
.promise__label { margin: 0 0 16px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--faint); }
.promise__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.promise__list li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.5; color: var(--muted); }
.promise__list b { color: var(--ink); font-weight: 600; }
.promise__list svg { flex: none; width: 20px; height: 20px; margin-top: 2px; stroke: var(--ok); fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }

/* --------------------------------------------------------------- section */
.section { padding-block: clamp(48px, 7vw, 80px); }   /* 4px ritmi */
.section + .section { border-top: 1px solid var(--edge); }

.section__label {
  font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
  color: var(--faint); margin: 0 0 14px;
}
.section__title {
  font-size: clamp(1.6rem, 3.4vw, 2.35rem); font-weight: 700;
  letter-spacing: -0.026em; line-height: 1.12; margin: 0 0 14px; max-width: 24ch;
  text-wrap: balance;
}
.section__intro { color: var(--muted); max-width: var(--measure); margin: 0 0 clamp(26px, 4vw, 38px); }

/* ----------------------------------------------------------------- fixes */
.fixes { display: grid; gap: 18px; }
@media (min-width: 720px) { .fixes { grid-template-columns: 1fr 1fr; } }

.fix {
  background: var(--paper); border: 1px solid var(--edge); border-radius: var(--r);
  padding: clamp(22px, 3vw, 28px); box-shadow: var(--sh-1);
}
.fix__n { font-size: 12px; font-weight: 700; letter-spacing: .08em; color: var(--red); margin: 0 0 12px; }
.fix__problem { font-size: 1.02rem; font-weight: 600; line-height: 1.35; margin: 0 0 10px; letter-spacing: -0.008em; }
.fix__answer { color: var(--muted); margin: 0; font-size: 0.96rem; }

/* ---------------------------------------------------------------- status */
.statusband { background: var(--sunk); border-block: 1px solid var(--edge); }
.status { display: grid; gap: 1px; background: var(--edge); }
@media (min-width: 640px) { .status { grid-template-columns: repeat(3, 1fr); } }
.status__item { background: var(--sunk); padding: clamp(22px, 3vw, 30px) clamp(20px, 2.4vw, 28px); }
.status__item:first-child { padding-left: 0; }
.status__item:last-child { padding-right: 0; }
@media (max-width: 639px) { .status__item { padding-inline: 0; } }
.status__k { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--faint); margin: 0 0 8px; }
.status__v { margin: 0; font-weight: 500; }

/* ----------------------------------------------------------------- prose */
.prose { max-width: var(--measure); }
.prose h2 { font-size: 1.35rem; font-weight: 700; letter-spacing: -0.018em; margin: 40px 0 12px; }
.prose h2:first-child { margin-top: 0; }
.prose p, .prose li { color: var(--muted); }
.prose li { margin-bottom: 8px; }
.prose a { color: var(--ink); text-decoration-color: var(--red); text-underline-offset: 3px; }
.prose__meta { font-size: 14px; color: var(--muted); margin-bottom: 36px; }

/* --------------------------------------------------------------- contact */
.mailrow { display: grid; gap: 14px; margin-block: 8px 0; }
@media (min-width: 640px) { .mailrow { grid-template-columns: repeat(3, 1fr); } }
.mailrow__cell { background: var(--paper); border: 1px solid var(--edge); border-radius: var(--r); padding: 22px; box-shadow: var(--sh-1); }
.mailrow__k { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--faint); margin: 0 0 8px; }
.mailrow__cell a { font-weight: 500; text-decoration-color: var(--red); text-underline-offset: 3px; }

/* ---------------------------------------------------------------- footer */
.foot { background: var(--paper); border-top: 1px solid var(--edge); padding-block: 36px 52px; font-size: 14px; color: var(--muted); }
.foot__grid { display: flex; flex-wrap: wrap; gap: 18px 32px; align-items: baseline; justify-content: space-between; }
.foot__links { display: flex; flex-wrap: wrap; gap: 20px; }
.foot__links a { text-decoration: none; }
.foot__links a:hover { color: var(--ink); }
.foot__note { max-width: 66ch; margin: 22px 0 0; color: var(--faint); }

:where(a, button, input, summary):focus-visible {
  outline: 2px solid var(--red); outline-offset: 3px; border-radius: 4px;
}


/* ================================================================= A tasarimi (Adim 40b) */
/* rozet: "3.100 plan · 204 destinasyon" */
.pillnote { display: inline-flex; gap: 7px; align-items: center; background: var(--pill-bg); color: var(--pill-fg);
  font-size: 12.5px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin: 0 0 14px; }
/* karsilama bandi: metin + arama + hizli baglantilar | sagda fotograf */
.hero--a { display: grid; gap: 28px; align-items: center; padding-block: clamp(30px, 5vw, 48px) clamp(28px, 4vw, 40px); }
@media (min-width: 900px) { .hero--a { grid-template-columns: 1.12fr .88fr; } }
.hero--a .hero__lede { font-size: 1rem; margin-top: 10px; max-width: 44ch; }
.abar { display: flex; gap: 8px; margin-top: 18px; background: var(--paper); border: 1px solid var(--edge);
  border-radius: 999px; padding: 6px; box-shadow: var(--shadow); }
.abar input { flex: 1 1 auto; min-width: 0; border: 0; background: transparent; font: inherit; font-size: 15px;
  padding: 0 14px; color: var(--ink); }
.abar input::placeholder { color: var(--faint); }
.abar input:focus-visible { outline: none; }
.abar:focus-within { border-color: var(--cta-bg); box-shadow: var(--focus-ring); }
.abar .btn { border-radius: 999px; }
.quick { display: flex; gap: 7px; margin-top: 12px; flex-wrap: wrap; }
.quick a { text-decoration: none; font-size: 13px; font-weight: 600; color: var(--muted); background: var(--paper);
  border: 1px solid var(--edge); border-radius: 999px; padding: 5px 12px 5px 6px; display: inline-flex; gap: 7px; align-items: center; }
.quick a:hover { color: var(--ink); border-color: var(--edge-2); }
.quick img { width: 20px; height: 20px; border-radius: 50%; object-fit: cover; box-shadow: var(--ring); }
.heroart { aspect-ratio: 4/3; border-radius: 18px; overflow: hidden; border: 1px solid var(--edge); box-shadow: var(--shadow);
  position: relative; background: var(--sunk); }
.heroart img { display: block; width: 100%; height: 100%; object-fit: cover; }
.heroart .cap { position: absolute; left: 16px; bottom: 14px; color: var(--on-photo); font-weight: 700; font-size: 15px;
  text-shadow: var(--photo-text-shadow); z-index: 2; margin: 0; }
.heroart .shade { position: absolute; inset: 0; background: var(--photo-shade); }
@media (max-width: 899px) { .heroart { aspect-ratio: 16/9; } }

/* bolum basligi */
.sechd { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.sechd h2 { font-size: 1.25rem; font-weight: 700; margin: 0; }
.sechd span { font-size: 13.5px; color: var(--faint); }
.sechd .more { margin-left: auto; font-size: 13.5px; font-weight: 600; color: var(--cta-bg); text-decoration: none; }

/* fotografli destinasyon kartlari */
.tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
@media (max-width: 900px) { .tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.tile { position: relative; border-radius: 14px; overflow: hidden; text-decoration: none; color: inherit; display: flex;
  flex-direction: column; background: var(--paper); border: 1px solid var(--edge); transition: box-shadow .14s, transform .14s; }
.tile:hover { box-shadow: var(--shadow); transform: translateY(-2px); }
.tile__img { aspect-ratio: 4/3; position: relative; overflow: hidden; background: var(--sunk); }
.tile__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tile__img img.tile__flag { position: absolute; top: 10px; left: 10px; z-index: 2; width: 26px; height: 26px; border-radius: 50%;
  object-fit: cover; box-shadow: var(--ring-lift); }
/* fotografsiz kart: bayrak buyuk, zemin --sunk - bos gri kutu DEGIL, tasarimin parcasi */
.tile__img--nophoto { display: flex; align-items: center; justify-content: center; }
.tile__img--nophoto img.tile__bigflag { width: 44%; height: auto; aspect-ratio: 1; border-radius: 50%; object-fit: cover;
  box-shadow: var(--ring-big); }
.tile__row { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; }
.tile__row b { font-size: 14.5px; font-weight: 700; }
.tile__row span { font-size: 13px; font-weight: 800; color: var(--price); font-variant-numeric: tabular-nums; white-space: nowrap; }

/* sekmeler: Ulke / Bolge / Global / Ses+SMS (kapali) */
.segs { display: flex; gap: 2px; background: var(--sunk); border: 1px solid var(--edge); border-radius: 12px; padding: 3px;
  width: fit-content; max-width: 100%; overflow-x: auto; margin: 0 0 16px; }
.seg { border: 0; background: transparent; font: inherit; font-size: 14px; font-weight: 600; color: var(--muted);
  padding: 8px 15px; border-radius: 9px; white-space: nowrap; cursor: pointer; text-decoration: none; }
.seg[aria-selected="true"] { background: var(--cta-bg); color: var(--cta-fg); }
.seg[aria-disabled="true"] { color: var(--faint); cursor: default; }
.seg__soon { font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; margin-left: 6px; opacity: .8; }

/* guven seridi */
.trustrow { display: flex; gap: 22px; flex-wrap: wrap; font-size: 13.5px; font-weight: 500; padding: 14px 0; color: var(--muted); }
.trustrow div { display: flex; gap: 8px; align-items: center; }
.trustrow b { color: var(--ink); }
.trustband { background: var(--sunk); border-block: 1px solid var(--edge); }

/* destinasyon sayfasi: fotograf basligi */
.dhero { position: relative; border-radius: 18px; overflow: hidden; aspect-ratio: 21/9; background: var(--sunk); border: 1px solid var(--edge); }
.dhero img.dhero__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.dhero .shade { position: absolute; inset: 0; background: var(--photo-shade-2); }
.dhero__cap { position: absolute; left: clamp(16px, 3vw, 28px); bottom: clamp(14px, 3vw, 24px); right: 16px; z-index: 2; color: var(--on-photo); }
.dhero__cap h1 { margin: 0; font-size: clamp(1.7rem, 4vw, 2.6rem); color: var(--on-photo); text-shadow: var(--photo-text-shadow); }
.dhero__cap .dhero__flag { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; box-shadow: var(--ring); display: block; margin-bottom: 8px; }
.dhero--nophoto { aspect-ratio: auto; padding: clamp(22px, 4vw, 36px); display: flex; gap: 18px; align-items: center; }
.dhero--nophoto h1 { margin: 0; font-size: clamp(1.7rem, 4vw, 2.6rem); }
.dhero--nophoto .dhero__flag { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; box-shadow: var(--ring); }
.credit { font-size: 12px; color: var(--faint); margin: 8px 0 0; }
.credit a { color: inherit; }
@media (max-width: 640px) { .dhero { aspect-ratio: 16/10; } }
.devicebtn { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; font-size: 14px; font-weight: 600; color: var(--ink);
  background: var(--paper); border: 1px solid var(--edge-2); border-radius: 999px; padding: 9px 14px; }
.devicebtn:hover { border-color: var(--ink); }
.dtop { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin: 18px 0 8px; }

/* footer atif */
.foot__credit a { color: inherit; }
