/* Denge Marin — hizmet sayfaları. Ana sayfayla aynı teknik dil: beyaz/açık gri zemin, 1px çizgiler, keskin köşeler, tek vurgu logo petrol mavisi. */
:root {
  --bg: #ffffff; --panel: #f3f6f9; --line: #dbe2e9; --rule: #0b1b2b; --ink: #0b1b2b; --muted: #56687b;
  --brand: #1b5878; --on-brand: #ffffff; --brand-soft: #e2eff5; --sky: #84ccdc; --signal: #f2b705;
  --teal: #0f9c94; --teal-tint: #dcf3f0;
  --deep: #0b1b2b; --on-deep: #ffffff; --on-deep-muted: #a9b8c8; --deep-line: rgba(255,255,255,.14);
  --show-on-light: inline-block; --show-on-dark: none;
  --f-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --f-body: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;
  --f-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  --bar: 64px; --wrap: 1180px;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #0a131d; --panel: #0f1b27; --line: #22313f; --rule: #c9d6e2; --ink: #e6edf3; --muted: #93a4b5;
    --brand: #84ccdc; --on-brand: #0a131d; --brand-soft: #12303d; --teal: #3cc4b9; --teal-tint: #10302d; --deep: #050b12;
    --show-on-light: none; --show-on-dark: inline-block; color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --bg: #0a131d; --panel: #0f1b27; --line: #22313f; --rule: #c9d6e2; --ink: #e6edf3; --muted: #93a4b5;
  --brand: #84ccdc; --on-brand: #0a131d; --brand-soft: #12303d; --teal: #3cc4b9; --teal-tint: #10302d; --deep: #050b12;
  --show-on-light: none; --show-on-dark: inline-block; color-scheme: dark;
}
* { box-sizing: border-box; }
html, body { margin: 0; }
body { background: var(--bg); color: var(--ink); font-family: var(--f-body); font-size: 17px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--brand); outline-offset: 3px; }
h1, h2, h3 { margin: 0; text-wrap: balance; font-weight: 600; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding-left: max(24px, env(safe-area-inset-left, 0px)); padding-right: max(24px, env(safe-area-inset-right, 0px)); }
.mono { font-family: var(--f-mono); font-size: 12px; letter-spacing: .08em; }

/* Üst bar */
.topbar { position: sticky; top: 0; z-index: 20; height: var(--bar); background: var(--bg); border-bottom: 1px solid var(--line); }
.topbar .wrap { height: 100%; display: flex; align-items: center; gap: 24px; }
.logo { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.logo img { flex: none; max-width: none; }
.logo .mk { height: 40px; width: auto; } .logo .wd { height: 31px; width: auto; }
.logo .on-light { display: var(--show-on-light); } .logo .on-dark { display: var(--show-on-dark); }
.logo.always-dark .on-light { display: none; } .logo.always-dark .on-dark { display: inline-block; }
.nav { display: flex; height: 100%; margin-left: auto; }
.mnav { display: none; }
.nav a { display: flex; align-items: center; height: 100%; padding: 0 12px; text-decoration: none; color: var(--muted); font-size: 14.5px; font-weight: 500; border-bottom: 2px solid transparent; }
.nav a:hover { color: var(--ink); }
.nav a.on { color: var(--ink); border-bottom-color: var(--brand); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; font: 600 15px/1 var(--f-body); text-decoration: none; padding: 14px 20px; border-radius: 2px; white-space: nowrap; border: 1px solid transparent; transition: background .2s, color .2s; }
.btn svg { width: 17px; height: 17px; flex: none; }
.btn-primary { background: var(--brand); color: var(--on-brand); }
.btn-primary:hover { background: var(--ink); color: var(--bg); }
.btn-line { border-color: var(--rule); color: var(--ink); background: transparent; }
.btn-line:hover { background: var(--ink); color: var(--bg); }
.btn-small { padding: 10px 14px; font-size: 14px; font-family: var(--f-mono); font-weight: 500; }

/* Başlık bölümü */
.crumbs { display: flex; flex-wrap: wrap; gap: 6px 10px; padding-top: 28px; font-family: var(--f-mono); font-size: 12px; letter-spacing: .06em; color: var(--muted); }
.crumbs a { text-decoration: none; color: var(--muted); }
.crumbs a:hover { color: var(--brand); }
.crumbs span[aria-hidden] { opacity: .5; }
.hero { display: grid; grid-template-columns: 6fr 5fr; gap: 56px; align-items: center; padding-block: 28px 64px; }
.hero > * { min-width: 0; }
.eyebrow { font-family: var(--f-mono); font-size: 12.5px; letter-spacing: .1em; color: var(--brand); margin-bottom: 16px; }
.hero h1 { font-family: var(--f-display); font-size: clamp(34px, 4.4vw, 54px); line-height: 1.05; letter-spacing: -.02em; }
.hero .lead { font-size: 18px; color: var(--muted); margin: 20px 0 28px; max-width: 36em; }
.ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.hero-photo { margin: 0; border: 1px solid var(--line); background: var(--panel); }
.hero-photo img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.hero-photo figcaption { padding: 9px 14px; font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .06em; color: var(--muted); border-top: 1px solid var(--line); }

/* Bölümler */
.sec { padding-block: 64px; border-top: 1px solid var(--line); }
.sec.alt { background: var(--panel); }
.sechead { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--rule); margin-bottom: 28px; font-family: var(--f-mono); font-size: 12px; letter-spacing: .08em; color: var(--muted); }
.sechead b { color: var(--ink); font-weight: 600; }
.h2 { font-family: var(--f-display); font-size: clamp(26px, 2.8vw, 36px); line-height: 1.1; letter-spacing: -.015em; margin-bottom: 24px; }
.prose { max-width: 46em; color: var(--muted); }
.prose p + p { margin-top: 14px; }
.prose strong { color: var(--ink); font-weight: 600; }

.scope { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--rule); }
.scope li { display: grid; grid-template-columns: 46px 1fr; gap: 6px; padding: 18px 24px 18px 0; border-bottom: 1px solid var(--line); min-width: 0; }
.scope li:nth-child(odd) { border-right: 1px solid var(--line); }
.scope li:nth-child(even) { padding-left: 24px; }
.scope b { font: 600 11.5px/1 var(--f-mono); color: var(--teal); background: var(--teal-tint); padding: 6px 0; width: 36px; text-align: center; align-self: start; margin-top: 2px; }
.scope h3 { font-family: var(--f-display); font-size: 18px; line-height: 1.25; }
.scope p { font-size: 15px; color: var(--muted); margin-top: 4px; }

.gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.gallery figure { margin: 0; min-width: 0; }
.gallery .im { aspect-ratio: 4 / 3; overflow: hidden; border: 1px solid var(--line); background: var(--panel); }
.gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.gallery figure:hover img { transform: scale(1.03); }
.gallery figcaption { padding-top: 8px; font-size: 14px; color: var(--muted); line-height: 1.4; }

.steps { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 2px solid var(--line); counter-reset: s; }
.steps li { counter-increment: s; position: relative; padding: 22px 22px 0 0; min-width: 0; }
.steps li::before { content: ""; position: absolute; top: -7px; left: 0; width: 12px; height: 12px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 4px var(--bg); }
.sec.alt .steps li::before { box-shadow: 0 0 0 4px var(--panel); }
.steps li::after { content: "ADIM " counter(s); position: absolute; top: 16px; right: 22px; font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; color: var(--muted); }
.steps h3 { font-family: var(--f-display); font-size: 19px; margin-bottom: 6px; }
.steps p { font-size: 15px; color: var(--muted); }

.faq { border-top: 1px solid var(--rule); max-width: 52em; }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { cursor: pointer; list-style: none; display: grid; grid-template-columns: 1fr 24px; gap: 16px; align-items: center; padding: 18px 0; font-family: var(--f-display); font-weight: 600; font-size: 18px; line-height: 1.3; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font: 400 24px/1 var(--f-mono); color: var(--brand); text-align: center; }
.faq details[open] summary::after { content: "−"; }
.faq .a { padding: 0 40px 20px 0; color: var(--muted); }

.cta { background-color: var(--deep); background-image: radial-gradient(900px 420px at 85% 0%, rgba(43,123,200,.35), transparent 60%); color: var(--on-deep); padding-block: 64px; }
.cta .wrap { display: grid; grid-template-columns: 7fr 5fr; gap: 48px; align-items: center; }
.cta .wrap > * { min-width: 0; }
.cta h2 { font-family: var(--f-display); font-size: clamp(28px, 3.2vw, 42px); line-height: 1.1; letter-spacing: -.015em; }
.cta p { color: var(--on-deep-muted); margin-top: 14px; max-width: 32em; }
.cta .btn-primary { background: var(--on-deep); color: var(--deep); }
.cta .btn-primary:hover { background: var(--signal); color: #0b1b2b; }
.cta .btn-line { border-color: var(--deep-line); color: var(--on-deep); }
.cta .btn-line:hover { background: var(--on-deep); color: var(--deep); }
.cta dl { margin: 0; border-top: 1px solid var(--deep-line); }
.cta dl div { display: grid; grid-template-columns: 96px 1fr; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--deep-line); }
.cta dt { font: 500 11.5px/1.9 var(--f-mono); letter-spacing: .08em; color: var(--on-deep-muted); }
.cta dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.cta dd a { color: var(--on-deep); text-underline-offset: 4px; }

.others { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.others a { display: flex; flex-direction: column; gap: 4px; padding: 18px 18px 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); text-decoration: none; min-width: 0; transition: background .2s; }
.others a:hover { background: var(--brand-soft); }
.others .n { font-family: var(--f-mono); font-size: 11.5px; color: var(--muted); }
.others strong { font-family: var(--f-display); font-weight: 600; font-size: 17px; line-height: 1.25; }
.others span:last-child { font-size: 14px; color: var(--muted); }

/* Hizmetler ana sayfası kartları */
.cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.card { display: grid; grid-template-columns: 200px 1fr; border: 1px solid var(--line); background: var(--bg); text-decoration: none; min-width: 0; transition: border-color .2s, box-shadow .2s; }
.card:hover { border-color: var(--brand); box-shadow: 0 16px 40px -24px rgba(11,27,43,.45); }
.card .im { overflow: hidden; background: var(--panel); }
.card img { width: 100%; height: 100%; object-fit: cover; }
.gallery img, .card img { height: 100%; }
.card .tx { padding: 20px 22px; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.card .n { font-family: var(--f-mono); font-size: 11.5px; color: var(--brand); letter-spacing: .08em; }
.card h2 { font-family: var(--f-display); font-size: 21px; line-height: 1.2; }
.card p { font-size: 15px; color: var(--muted); }
.card .go { margin-top: auto; padding-top: 8px; font: 600 14px var(--f-body); color: var(--brand); }

/* Kontrol paketleri */
.cmp-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--bg); }
table.cmp { width: 100%; border-collapse: collapse; min-width: 680px; font-size: 15px; }
.cmp th, .cmp td { border-bottom: 1px solid var(--line); padding: 13px 18px; text-align: left; vertical-align: top; }
.cmp tr > * + * { border-left: 1px solid var(--line); }
.cmp thead th { border-bottom: 1px solid var(--rule); vertical-align: bottom; }
.cmp thead th:first-child, .cmp tbody th { font: 500 12px var(--f-mono); letter-spacing: .06em; color: var(--muted); }
.cmp thead h3 { font-family: var(--f-display); font-size: 21px; }
.cmp thead th:nth-child(3) { background: var(--brand); color: var(--on-brand); }
.cmp .price td { font-family: var(--f-display); font-weight: 600; font-size: 30px; line-height: 1; color: var(--brand); }
.cmp .price td small { font: 500 11.5px var(--f-mono); color: var(--muted); margin-left: 6px; }
.cmp tbody tr:last-child > * { border-bottom: 0; }
.syslist { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 32px; }
.syslist > div { min-width: 0; }
.syslist h3 { font: 600 12px var(--f-mono); letter-spacing: .08em; padding-bottom: 10px; border-bottom: 2px solid var(--rule); }
.syslist li { padding: 9px 0; border-bottom: 1px solid var(--line); }
.syslist li strong { display: block; font-family: var(--f-display); font-weight: 600; font-size: 16px; }
.syslist li span { font-size: 14px; color: var(--muted); }
.terms { columns: 2; column-gap: 36px; font-size: 14.5px; color: var(--muted); }
.terms li { break-inside: avoid; padding-left: 16px; position: relative; margin-bottom: 6px; }
.terms li::before { content: ""; position: absolute; left: 0; top: .65em; width: 6px; height: 6px; background: var(--signal); }

/* Alt bilgi */
.foot { background: var(--deep); color: var(--on-deep-muted); border-top: 1px solid var(--deep-line); }
.foot .wrap { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 32px; padding-block: 40px 28px; }
.foot h2 { font: 600 12px var(--f-mono); letter-spacing: .1em; color: var(--on-deep); margin-bottom: 12px; }
.foot li { margin-bottom: 6px; font-size: 14.5px; }
.foot a { color: var(--on-deep-muted); text-decoration: none; }
.foot a:hover { color: var(--on-deep); }
.foot .logo { margin-bottom: 14px; }
.foot .logo .mk { height: 34px; } .foot .logo .wd { height: 26px; }
.foot .copy { grid-column: 1 / -1; border-top: 1px solid var(--deep-line); padding-top: 18px; font: 400 12px var(--f-mono); letter-spacing: .04em; }

.callbar { display: none; }

@media (max-width: 1020px) {
  .mnav { display: block; }
  .nav { display: none; }
  .topbar .btn-small { margin-left: auto; }
  .hero, .cta .wrap { grid-template-columns: 1fr; gap: 32px; }
  .scope { grid-template-columns: 1fr; }
  .scope li:nth-child(odd) { border-right: 0; }
  .scope li:nth-child(even) { padding-left: 0; }
  .gallery { grid-template-columns: 1fr 1fr; }
  .steps { grid-template-columns: 1fr 1fr; row-gap: 28px; border-top: 0; }
  .steps li { border-top: 2px solid var(--line); }
  .others { grid-template-columns: 1fr 1fr; }
  .cards { grid-template-columns: 1fr; }
  .syslist { grid-template-columns: 1fr; gap: 24px; }
  .foot .wrap { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .wrap { padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
  body { font-size: 16px; padding-bottom: calc(66px + env(safe-area-inset-bottom, 0px)); }
  .topbar .btn-small { display: none; }
  .sec { padding-block: 48px; }
  .gallery { grid-template-columns: 1fr; }
  .steps { grid-template-columns: 1fr; }
  .card { grid-template-columns: 1fr; }
  .card .im { aspect-ratio: 16 / 9; }
  .terms { columns: 1; }
  .foot .wrap { grid-template-columns: 1fr; }
  .callbar { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 20; background: var(--bg); border-top: 1px solid var(--line); padding: 10px max(16px, env(safe-area-inset-right, 0px)) calc(10px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px)); }
}

/* Mobil menü */
.mnav { margin-left: 10px; }
.mnav summary { list-style: none; display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 14px; border: 1px solid var(--rule); border-radius: 2px; font: 600 14px var(--f-body); color: var(--ink); cursor: pointer; user-select: none; }
.mnav summary::-webkit-details-marker { display: none; }
.mnav summary svg { width: 18px; height: 18px; }
.mnav[open] summary { background: var(--ink); color: var(--bg); }
.mnav-list { position: fixed; left: 0; right: 0; top: var(--bar); z-index: 25; display: grid; background: var(--bg); border-bottom: 1px solid var(--rule); box-shadow: 0 18px 40px -18px rgba(11,27,43,.35); padding: 4px max(16px, env(safe-area-inset-right, 0px)) 10px max(16px, env(safe-area-inset-left, 0px)); max-height: calc(100svh - var(--bar)); overflow-y: auto; }
.mnav-list a { display: flex; justify-content: space-between; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--line); text-decoration: none; font: 500 17px var(--f-body); color: var(--ink); }
.mnav-list a:last-child { border-bottom: 0; }
.mnav-list a::after { content: "→"; color: var(--brand); }
.mnav-list a.on, .mnav-list a[aria-current] { color: var(--brand); font-weight: 600; }

/* Paket kartları (telefon) */
.pk-cards { display: none; }
.pk { border: 1px solid var(--line); border-top: 4px solid var(--teal); background: var(--bg); padding: 18px 18px 4px; }
.pk.p2 { border-top-color: var(--signal); background: var(--brand-soft); }
.pk.p3 { border-top-color: var(--blue, #2b7bc8); }
.pk h3 { font-family: var(--f-display); font-weight: 600; font-size: 22px; line-height: 1.15; letter-spacing: -.01em; }
.pk .d { color: var(--muted); font-size: 14.5px; line-height: 1.45; margin-top: 4px; }
.pk .pr { font-family: var(--f-display); font-weight: 600; font-size: 32px; line-height: 1; letter-spacing: -.02em; color: var(--teal); margin: 14px 0 12px; font-variant-numeric: tabular-nums; }
.pk.p2 .pr { color: var(--brand); }
.pk.p3 .pr { color: var(--blue, #2b7bc8); }
.pk .pr small { font: 500 11.5px var(--f-mono); color: var(--muted); letter-spacing: .06em; margin-left: 6px; }
.pk dl { margin: 0; }
.pk dl div { display: grid; grid-template-columns: 112px 1fr; gap: 10px; padding: 10px 0; border-top: 1px solid var(--line); font-size: 14.5px; line-height: 1.4; }
.pk dt { font: 500 11.5px/1.75 var(--f-mono); letter-spacing: .06em; color: var(--muted); }
.pk dd { margin: 0; min-width: 0; }
@media (max-width: 700px) {
  .cmp-wrap { display: none; }
  .pk-cards { display: grid; gap: 14px; }
}
@media (max-width: 620px) {
  .sechead { flex-direction: column; align-items: flex-start; gap: 4px; }
  .sechead span { font-size: 11px; }
  .mnav { margin-left: auto; }
}


/* Uygulamalar */
.sechead a { font: 600 13px var(--f-body); letter-spacing: 0; color: var(--brand); text-decoration: none; border-bottom: 1px solid currentColor; white-space: nowrap; }
.pcards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.pcard { display: flex; flex-direction: column; border: 1px solid var(--line); background: var(--bg); text-decoration: none; color: var(--ink); min-width: 0; transition: border-color .2s, box-shadow .2s; }
.pcard:hover { border-color: var(--brand); box-shadow: 0 14px 34px -18px rgba(11,27,43,.35); }
.pcard[hidden] { display: none; }
.pcard .im { aspect-ratio: 4 / 3; overflow: hidden; background: var(--panel); }
.pcard img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.pcard:hover img { transform: scale(1.03); }
.pcard .tx { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; }
.pcard .meta { font: 500 11.5px var(--f-mono); letter-spacing: .06em; color: var(--brand); }
.pcard h3 { font-family: var(--f-display); font-weight: 600; font-size: 18px; line-height: 1.25; text-wrap: balance; }
.pcard p { font-size: 14px; color: var(--muted); }
.pcard .tags { margin-top: auto; padding-top: 8px; font-size: 13px; color: var(--teal); font-weight: 600; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.chip { font: 500 14px var(--f-body); color: var(--ink); background: var(--bg); border: 1px solid var(--line); border-radius: 999px; padding: 8px 14px; cursor: pointer; }
.chip b { font: 500 12px var(--f-mono); color: var(--muted); margin-left: 4px; }
.chip:hover { border-color: var(--brand); }
.chip.on { background: var(--brand); border-color: var(--brand); color: var(--on-brand); }
.chip.on b { color: var(--on-brand); opacity: .8; }
.pmeta { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 6px 32px; margin: 0 0 26px; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.pmeta dt { font: 500 11px var(--f-mono); letter-spacing: .08em; color: var(--muted); }
.pmeta dd { margin: 2px 0 0; font-weight: 600; font-size: 15px; }
.prodlist { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: 40px; }
.prodlist li { break-inside: avoid; position: relative; padding: 10px 0 10px 22px; border-bottom: 1px solid var(--line); font-size: 15.5px; line-height: 1.45; }
.prodlist li::before { content: ""; position: absolute; left: 0; top: 1.05em; width: 8px; height: 8px; background: var(--signal); }
@media (max-width: 1020px) {
  .pcards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .pcards { grid-template-columns: 1fr; }
  .prodlist { columns: 1; }
  .pmeta { grid-template-columns: 1fr; }
  .chips { flex-wrap: nowrap; overflow-x: auto; margin-left: -16px; margin-right: -16px; padding: 0 16px 4px; scrollbar-width: none; }
  .chip { flex: none; }
}


/* Uygulama fotoğrafları kırpılmadan */
.pcard .im, .gallery.fit .im, .hero-photo.fit { background: var(--panel); }
.pcard img, .gallery.fit img { object-fit: contain; }
.gallery.fit figure:hover img, .pcard:hover img { transform: none; }
.hero-photo.fit img { object-fit: contain; background: var(--panel); }


/* Hizmet sayfası galerileri de kırpılmadan */
.gallery .im { background: var(--panel); }
.gallery img { object-fit: contain; }
.gallery figure:hover img { transform: none; }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* WhatsApp */
.btn .wa-ic { width: 18px; height: 18px; fill: #25D366; }
.wa-float { position: fixed; z-index: 40; right: max(24px, calc(env(safe-area-inset-right, 0px) + 16px)); bottom: calc(24px + env(safe-area-inset-bottom, 0px)); width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: #fff; display: grid; place-items: center; box-shadow: 0 8px 24px rgba(0,0,0,.22); transition: transform .2s; }
.wa-float:hover { transform: translateY(-2px); }
.wa-float svg { width: 30px; height: 30px; fill: currentColor; }
.wa-float .lbl { position: absolute; right: 70px; top: 50%; transform: translate(6px, -50%); white-space: nowrap; background: var(--ink); color: var(--bg); font: 600 13px var(--f-body); padding: 8px 12px; border-radius: 8px; opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; }
.wa-float:hover .lbl, .wa-float:focus-visible .lbl { opacity: 1; transform: translate(0, -50%); }
@media (max-width: 620px) { .wa-float { display: none; } }
