/* Anna Frąckowiak Theme — Paperwhite Terminal — custom styles */

html { scroll-behavior: smooth; }
body { overflow-x: hidden; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.listing p, .hero-meta p, .about-meta p, .client-card p, .flow-step p, .approach-col p, .service p { margin: 0; }

/* TOPBAR */
.wp-site-blocks > header { position: sticky; top: 0; z-index: 100; }
.wp-site-blocks > header .wp-block-site-title a { color: inherit; text-decoration: none; }
.wp-site-blocks > header .wp-block-site-title a:hover { color: var(--wp--preset--color--accent-light); }
.wp-site-blocks > header a { text-decoration: none; }

/* EYEBROW + H2 ## prefix */
.eyebrow { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.85rem; color: var(--wp--preset--color--muted); margin-bottom: 1.75rem !important; letter-spacing: 0.01em; }
.eyebrow::before { content: '> '; color: var(--wp--preset--color--accent); }
main h2::before { content: '## '; color: var(--wp--preset--color--accent); }

/* H1 cursor */
h1 .cursor { display: inline-block; width: 0.5em; height: 0.95em; background: var(--wp--preset--color--ink); vertical-align: -0.08em; margin-left: 0.15em; animation: ww-blink 1.1s steps(2, end) infinite; }
@keyframes ww-blink { 0%, 50% { opacity: 1; } 50.01%, 100% { opacity: 0; } }

/* HERO — heading + lead + image + columns layout */
.hero-columns { gap: 3rem !important; align-items: center; }
.hero-heading { max-width: 26ch; }
.hero-heading::after { content: ''; display: inline-block; width: 0.5em; height: 0.95em; background: var(--wp--preset--color--ink); vertical-align: -0.08em; margin-left: 0.15em; animation: ww-blink 1.1s steps(2, end) infinite; }
.lead { font-size: 1.08rem; line-height: 1.65; max-width: 56ch; }
.hero-image img { width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; border: 1px solid var(--wp--preset--color--ink); box-shadow: 0 0 0 4px var(--wp--preset--color--bg), 0 0 0 5px var(--wp--preset--color--ink); margin: 0.5rem 0.5rem 0; }
.hero-image figcaption { display: none; }

/* SERVICES intro paragraph */
.services-intro { color: var(--wp--preset--color--muted); font-size: 1rem; line-height: 1.65; margin-bottom: 2.5rem; max-width: 62ch; }

/* BUTTONS */
.wp-block-button .wp-block-button__link { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.92rem; border-radius: 0; padding: 0.7rem 1.25rem; background: var(--wp--preset--color--bg); color: var(--wp--preset--color--ink); border: 1px solid var(--wp--preset--color--ink); letter-spacing: 0.01em; transition: all 0.15s ease; }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; }
.wp-block-button .wp-block-button__link:hover { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--bg); }

/* HERO META */
.hero-meta { margin-top: 3.5rem; padding-top: 2rem; border-top: 1px solid var(--wp--preset--color--line); }
.hero-meta .wp-block-columns { gap: 1.5rem !important; margin: 0; }
.wp-block-column.hero-meta-item { display: flex !important; flex-direction: column; gap: 0.25rem; }
.hero-meta .label { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--muted); margin: 0; }
.hero-meta .label::before { content: '▸ '; color: var(--wp--preset--color--accent); }
.hero-meta .value { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.95rem; color: var(--wp--preset--color--ink); margin: 0; }

/* ABOUT */
.wp-block-columns.about-columns { gap: 3rem !important; align-items: start; margin-top: 1.5rem; }
.about-portrait img { width: 100%; aspect-ratio: 4/5; object-fit: cover; border: 1px solid var(--wp--preset--color--ink); box-shadow: 0 0 0 4px var(--wp--preset--color--bg), 0 0 0 5px var(--wp--preset--color--ink); margin: 0.5rem 0.5rem 0; }
.about-portrait:empty, .about-portrait img:not([src]), .about-portrait img[src=""] { display: block; aspect-ratio: 4/5; border: 1px solid var(--wp--preset--color--ink); box-shadow: 0 0 0 4px var(--wp--preset--color--bg), 0 0 0 5px var(--wp--preset--color--ink); background: repeating-linear-gradient(0deg, transparent 0, transparent 7px, rgba(27,27,27,0.04) 7px, rgba(27,27,27,0.04) 8px), repeating-linear-gradient(90deg, transparent 0, transparent 7px, rgba(27,27,27,0.04) 7px, rgba(27,27,27,0.04) 8px), var(--wp--preset--color--bg-soft); }
.about-meta { margin-top: 1.5rem; font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.82rem; line-height: 1.55; }
.about-meta .meta-block { border-bottom: 1px dashed var(--wp--preset--color--line); padding: 0.65rem 0; }
.about-meta .meta-block:last-child { border-bottom: 0; }
.about-meta .label { font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent); display: block; margin-bottom: 0.15rem; }
.about-meta .value { color: var(--wp--preset--color--ink); }

/* CLIENTS — force grid with stretched equal-height cards */
.wp-block-group.clients-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1rem !important; align-items: stretch !important; }
.wp-block-group.clients-grid > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
.wp-block-group.client-card { border: 1px solid var(--wp--preset--color--ink); padding: 1.5rem 1.25rem; background: var(--wp--preset--color--bg); display: flex !important; flex-direction: column !important; gap: 0.85rem; transition: all 0.15s ease; height: 100% !important; min-height: 100% !important; box-sizing: border-box; align-self: stretch !important; }
.client-card .tag { margin: 0; }
.client-card .wp-block-heading { margin: 0; }
.client-card:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--wp--preset--color--ink); }
.client-card .tag { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent); }
.client-card .tag::before { content: '[ '; }
.client-card .tag::after { content: ' ]'; }
.client-card h3 { font-family: var(--wp--preset--font-family--plex-mono); font-size: 1.05rem; font-weight: 500; margin: 0; }
.client-card ul { list-style: none; padding: 0; margin: 0; font-size: 0.9rem; line-height: 1.5; }
.client-card ul li { padding-left: 1.1rem; position: relative; margin-bottom: 0.35rem; }
.client-card ul li::before { content: '·'; position: absolute; left: 0.3rem; color: var(--wp--preset--color--accent); font-weight: 600; }

/* APPROACH */
.wp-block-columns.approach-grid { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; }
.wp-block-column.approach-col { border-top: 2px solid var(--wp--preset--color--ink); padding-top: 1.5rem; flex-basis: auto !important; }
.approach-col .num { font-family: var(--wp--preset--font-family--plex-mono); font-size: 1.5rem; color: var(--wp--preset--color--accent); margin: 0 0 0.5rem; line-height: 1; }
.approach-col .wp-block-heading { font-family: var(--wp--preset--font-family--plex-mono); font-size: 1.05rem; font-weight: 500; margin: 0 0 0.85rem; }
.approach-col p { font-size: 0.95rem; line-height: 1.65; margin: 0; }

/* SERVICES */
.services { display: flex; flex-direction: column; }
.wp-block-columns.service { display: grid !important; grid-template-columns: 70px 1fr; gap: 1.75rem; padding: 2.25rem 0; border-top: 1px solid var(--wp--preset--color--line); margin: 0 !important; }
.services > .service:first-child { border-top: 2px solid var(--wp--preset--color--ink); }
.services > .service:last-child { border-bottom: 2px solid var(--wp--preset--color--ink); }
.wp-block-column.service-num { font-family: var(--wp--preset--font-family--plex-mono); color: var(--wp--preset--color--accent); font-size: 0.95rem; letter-spacing: 0.02em; padding-top: 0.4rem; flex-basis: auto !important; }
.service-num p { margin: 0; }
.service .wp-block-heading { font-size: 1.3rem; font-weight: 500; margin: 0 0 0.3rem; }
.service .subtitle { font-family: var(--wp--preset--font-family--plex-mono); font-style: italic; color: var(--wp--preset--color--muted); font-size: 0.88rem; margin: 0 0 1rem; line-height: 1.5; }
.service .desc { font-size: 0.96rem; line-height: 1.65; max-width: 64ch; margin: 0; }

/* FLOW */
.wp-block-columns.flow { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; align-items: stretch; position: relative; }
.wp-block-column.flow-step { border: 1px solid var(--wp--preset--color--line); padding: 1.5rem 1.25rem; background: var(--wp--preset--color--bg); flex-basis: auto !important; position: relative; }
.wp-block-column.flow-step:not(:last-child)::after { content: '→'; position: absolute; right: -1rem; top: 50%; transform: translate(50%, -50%); font-family: var(--wp--preset--font-family--plex-mono); color: var(--wp--preset--color--accent); font-size: 1.3rem; background: var(--wp--preset--color--bg); padding: 0 0.25rem; z-index: 1; }
.flow-step .num { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent); margin: 0 0 0.85rem; }
.flow-step .wp-block-heading { font-family: var(--wp--preset--font-family--plex-mono); font-size: 1.02rem; font-weight: 500; margin: 0 0 0.6rem; }
.flow-step p { font-size: 0.92rem; line-height: 1.55; margin: 0; }

/* DETAILS-BLOCK */
.wp-block-columns.details-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 3rem; }
.wp-block-column.details-block { flex-basis: auto !important; }
.block-label { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--accent); margin: 0 0 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--wp--preset--color--ink); }
.block-label::before { content: '## '; }

/* LISTING */
.listing { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.95rem; line-height: 2; }
.listing .row { display: grid; grid-template-columns: 1.4em 9em 1fr; gap: 0.75rem; align-items: baseline; }
.listing .prompt { color: var(--wp--preset--color--accent); font-weight: 500; }
.listing .key { color: var(--wp--preset--color--muted); }
.listing .val { color: var(--wp--preset--color--ink); }

/* MANIFEST */
.manifest-banner { font-family: var(--wp--preset--font-family--plex-mono); color: var(--wp--preset--color--muted); font-size: 0.85rem; letter-spacing: 0.08em; text-align: center; margin-bottom: 1.25rem; }
.manifest-banner span { color: var(--wp--preset--color--accent); }
.wp-block-quote.manifest-box { border: 1px solid var(--wp--preset--color--ink); box-shadow: 0 0 0 4px var(--wp--preset--color--bg), 0 0 0 5px var(--wp--preset--color--ink); padding: 3rem 2.25rem; background: var(--wp--preset--color--bg); max-width: 760px; margin: 0.5rem auto 0; font-family: var(--wp--preset--font-family--plex-mono); font-style: italic; font-size: clamp(1.05rem, 2.2vw, 1.2rem); line-height: 1.65; color: var(--wp--preset--color--ink); }
.wp-block-quote.manifest-box p { margin: 0 0 0.9rem; }
.wp-block-quote.manifest-box p:last-of-type { margin-bottom: 1.75rem; }
.wp-block-quote.manifest-box cite { font-family: var(--wp--preset--font-family--plex-mono); font-style: normal; font-size: 0.85rem; color: var(--wp--preset--color--muted); letter-spacing: 0.01em; display: block; }
.wp-block-quote.manifest-box cite::before { content: '— '; color: var(--wp--preset--color--accent); }

/* FAQ — force grid + sticky intro */
.wp-block-columns.faq-grid { display: grid !important; grid-template-columns: 280px 1fr !important; gap: 3rem !important; align-items: start !important; }
.wp-block-columns.faq-grid > .wp-block-column.faq-intro { position: sticky !important; top: 5rem !important; flex-basis: auto !important; align-self: start !important; height: fit-content !important; }
.faq-intro p { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.85rem; color: var(--wp--preset--color--muted); line-height: 1.6; }
.faq-intro p::before { content: '// '; color: var(--wp--preset--color--accent); }
.wp-block-details { border-top: 1px solid var(--wp--preset--color--line); padding: 1.1rem 0; }
.wp-block-details:last-of-type { border-bottom: 1px solid var(--wp--preset--color--line); }
.wp-block-details summary { font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.95rem; font-weight: 500; cursor: pointer; list-style: none; }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::before { content: '[+] '; color: var(--wp--preset--color--accent); }
.wp-block-details[open] summary::before { content: '[−] '; }
.wp-block-details > p { margin-top: 0.85rem; padding-left: 2.2rem; font-family: var(--wp--preset--font-family--plex-sans); font-size: 0.96rem; max-width: 64ch; }

/* CTA */
.wp-block-columns.cta-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
.wp-block-columns.cta-grid > .wp-block-column { flex-basis: auto !important; }
.cta-heading { font-family: var(--wp--preset--font-family--plex-mono); font-size: clamp(1.35rem, 2.8vw, 1.75rem); font-weight: 400; line-height: 1.4; margin-bottom: 1.5rem; }
.cta-heading .accent { color: var(--wp--preset--color--accent-light); }
.cta-sub { font-family: var(--wp--preset--font-family--plex-sans); font-size: 0.98rem; color: #bbb; line-height: 1.65; margin-bottom: 1.75rem; max-width: 38ch; }
section.cta { background: var(--wp--preset--color--ink-dark); color: var(--wp--preset--color--bg); }
section.cta h2 { color: #999 !important; }
section.cta h2::before { color: var(--wp--preset--color--accent-light); }
section.cta .listing .key { color: #888; }
section.cta .listing .val { color: var(--wp--preset--color--bg); }
section.cta .listing .prompt { color: var(--wp--preset--color--accent-light); }
section.cta a { color: var(--wp--preset--color--accent-light); }
section.cta .wp-block-button .wp-block-button__link { background: transparent; color: var(--wp--preset--color--bg); border-color: var(--wp--preset--color--bg); }
section.cta .wp-block-button .wp-block-button__link:hover { background: var(--wp--preset--color--bg); color: var(--wp--preset--color--ink-dark); }

/* BG SOFT sekcje */
section.bg-soft { background: var(--wp--preset--color--bg-soft); }
/* Scal sąsiednie sekcje bg-soft (bez prześwitu body bg + bez dzielnika) */
.wp-block-post-content > section.bg-soft + section.bg-soft { margin-block-start: 0 !important; padding-top: 2.5rem !important; }
.wp-block-post-content > section.bg-soft:has(+ section.bg-soft) { border-bottom: 0 !important; padding-bottom: 2.5rem !important; }

/* TABLET */
@media (max-width: 900px) {
  .wp-block-columns.about-columns { gap: 2rem !important; }
  .clients-grid { grid-template-columns: repeat(2, 1fr); }
  .wp-block-columns.approach-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .wp-block-columns.flow { grid-template-columns: 1fr; gap: 0.75rem; }
  .wp-block-column.flow-step:not(:last-child)::after { content: '↓'; right: auto; left: 50%; top: auto; bottom: -1rem; transform: translate(-50%, 50%); }
  .wp-block-columns.details-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .wp-block-columns.faq-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .wp-block-column.faq-intro { position: static; }
  .wp-block-columns.cta-grid { grid-template-columns: 1fr; gap: 2.5rem; }
}

/* MOBILE */
@media (max-width: 781px) {
  .hero-columns { gap: 2rem !important; }
  .hero-image img { max-width: 320px; }
}
@media (max-width: 600px) {
  .hero-meta { margin-top: 2.5rem; padding-top: 1.5rem; }
  .wp-block-columns.about-columns { gap: 1.5rem !important; }
  .about-portrait img { max-width: 240px; }
  .clients-grid { grid-template-columns: 1fr; }
  .wp-block-columns.service { grid-template-columns: 1fr; gap: 0.5rem; padding: 1.75rem 0; }
  .wp-block-column.service-num { padding-top: 0; }
  .listing { font-size: 0.88rem; line-height: 1.55; }
  .listing .row { grid-template-columns: 1.2em 1fr; grid-template-rows: auto auto; gap: 0.1rem 0.6rem; margin-bottom: 0.9rem; }
  .listing .prompt { grid-column: 1; grid-row: 1 / span 2; align-self: start; }
  .listing .key { grid-column: 2; grid-row: 1; }
  .listing .val { grid-column: 2; grid-row: 2; }
  .manifest-box { padding: 1.75rem 1.25rem; }
  .wp-block-details > p { padding-left: 1.8rem; }
}

@media (max-width: 380px) {
  h1 { font-size: 1.5rem; }
  .listing { font-size: 0.82rem; }
}

@media (max-width: 600px) {
  /* Sekcje: padding pionowy 5rem -> 2.5rem */
  body section.wp-block-group {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  /* Hero (pierwsza sekcja): 1.65rem -> 0.83rem góra */
  body .wp-block-post-content > section.wp-block-group:first-child {
    padding-top: 0.83rem !important;
  }
  /* H2 nagłówki sekcji: 2.25rem -> 1.25rem dół */
  main h2 { margin-bottom: 1.25rem !important; }
  /* Hero-meta row: zmniejsz margin/padding górne */
  .hero-meta { margin-top: 1.5rem !important; padding-top: 1rem !important; }
}

/* GABINETY ─────────────────────────────────────────── */
.lead-sec { font-size: 1.02rem; line-height: 1.65; color: var(--wp--preset--color--muted); max-width: 62ch; margin: 0 0 2.5rem; }

.offices-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.75rem;
}
.offices-grid .office {
  background: var(--wp--preset--color--bg);
  border: 1px solid var(--wp--preset--color--line);
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
}
.office-tag {
  font-family: var(--wp--preset--font-family--plex-mono);
  font-size: 0.78rem;
  color: var(--wp--preset--color--accent);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 1rem;
}
.office-tag::before { content: '▸ '; color: var(--wp--preset--color--accent); }
.office-address {
  font-family: var(--wp--preset--font-family--plex-sans);
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--wp--preset--color--ink);
  margin: 0 0 0.2rem;
  line-height: 1.35;
}
.office-city {
  font-family: var(--wp--preset--font-family--plex-sans);
  font-size: 0.95rem;
  color: var(--wp--preset--color--muted);
  margin: 0 0 1.25rem;
}
.office-hours {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--wp--preset--font-family--plex-mono);
  font-size: 0.9rem;
  color: var(--wp--preset--color--ink);
  background: var(--wp--preset--color--bg-soft);
  border: 1px solid var(--wp--preset--color--line);
  padding: 0.45rem 0.8rem;
  margin-bottom: 1.5rem;
  align-self: flex-start;
}
.office-hours .day { color: var(--wp--preset--color--accent); font-weight: 500; }
.office-hours .dot { color: var(--wp--preset--color--muted); }

.map-wrap {
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--wp--preset--color--bg-soft);
  border: 1px solid var(--wp--preset--color--line);
  overflow: hidden;
  margin-bottom: 1.25rem;
}
.map-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1.5rem;
  text-align: center;
  cursor: pointer;
  transition: background 0.18s ease;
  background:
    repeating-linear-gradient(0deg, transparent 0, transparent 7px, rgba(27,27,27,0.035) 7px, rgba(27,27,27,0.035) 8px),
    repeating-linear-gradient(90deg, transparent 0, transparent 7px, rgba(27,27,27,0.035) 7px, rgba(27,27,27,0.035) 8px),
    var(--wp--preset--color--bg-soft);
}
.map-placeholder:hover { background-color: rgba(45, 95, 63, 0.04); }
.map-placeholder:hover .map-load-btn { background: var(--wp--preset--color--accent); border-color: var(--wp--preset--color--accent); }
.map-tag {
  font-family: var(--wp--preset--font-family--plex-mono);
  font-size: 0.78rem;
  color: var(--wp--preset--color--accent);
  letter-spacing: 0.12em;
  margin: 0 0 0.9rem;
}
.map-consent-text {
  font-family: var(--wp--preset--font-family--plex-sans);
  font-size: 0.85rem;
  color: var(--wp--preset--color--muted);
  max-width: 280px;
  margin: 0 0 1.1rem;
  line-height: 1.5;
}
.map-consent-text a {
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.map-consent-text a:hover { color: var(--wp--preset--color--accent); }
.map-load-btn {
  display: inline-block;
  font-family: var(--wp--preset--font-family--plex-mono);
  font-size: 0.88rem;
  color: var(--wp--preset--color--bg);
  background: var(--wp--preset--color--ink-dark);
  border: 1px solid var(--wp--preset--color--ink-dark);
  padding: 0.6rem 1.1rem;
  cursor: pointer;
  letter-spacing: 0.02em;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.map-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.office-link {
  font-family: var(--wp--preset--font-family--plex-mono);
  font-size: 0.88rem;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--wp--preset--color--ink);
  padding-bottom: 2px;
  align-self: flex-start;
  transition: color 0.15s ease, border-color 0.15s ease;
}
.office-link:hover { color: var(--wp--preset--color--accent); border-bottom-color: var(--wp--preset--color--accent); }
.office-link::after { content: ' →'; }

@media (max-width: 900px) {
  .offices-grid { grid-template-columns: 1fr; gap: 1.25rem; }
}
@media (max-width: 600px) {
  .offices-grid .office { padding: 1.25rem !important; }
  .map-wrap { aspect-ratio: 16 / 11; }
  .offices-grid { gap: 1rem !important; }
}

/* CONTACT FORM ─────────────────────────────────────── */
.anna-form-wrap { max-width: 640px; margin: 2rem 0 0; }
.anna-form { display: flex; flex-direction: column; gap: 1.25rem; }
.anna-honeypot { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.anna-field { display: flex; flex-direction: column; gap: 0.4rem; }
.anna-label {
  font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.78rem; color: var(--wp--preset--color--muted);
  letter-spacing: 0.08em; text-transform: uppercase;
}
.anna-label .req { color: var(--wp--preset--color--accent); }
.anna-label .opt { color: var(--wp--preset--color--muted); text-transform: none; letter-spacing: 0; font-size: 0.75rem; }
.anna-form input[type=text],
.anna-form input[type=email],
.anna-form input[type=tel],
.anna-form textarea {
  font-family: var(--wp--preset--font-family--plex-sans); font-size: 1rem; color: var(--wp--preset--color--ink);
  background: var(--wp--preset--color--bg); border: 1px solid var(--wp--preset--color--line);
  padding: 0.7rem 0.85rem; outline: none; border-radius: 0;
  transition: border-color 0.15s ease;
}
.anna-form input:focus, .anna-form textarea:focus { border-color: var(--wp--preset--color--accent); }
.anna-form textarea { resize: vertical; min-height: 8rem; }
.anna-consent {
  display: flex; align-items: flex-start; gap: 0.6rem;
  font-size: 0.85rem; color: var(--wp--preset--color--muted); line-height: 1.55;
}
.anna-consent input { margin-top: 0.3rem; flex-shrink: 0; }
.anna-consent a { color: var(--wp--preset--color--ink); text-decoration: underline; text-underline-offset: 2px; }
.anna-consent a:hover { color: var(--wp--preset--color--accent); }
.anna-form-submit {
  font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.92rem;
  color: var(--wp--preset--color--bg); background: var(--wp--preset--color--ink-dark);
  border: 1px solid var(--wp--preset--color--ink-dark); padding: 0.8rem 1.4rem;
  cursor: pointer; align-self: flex-start; letter-spacing: 0.02em; border-radius: 0;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.anna-form-submit:hover { background: var(--wp--preset--color--accent); border-color: var(--wp--preset--color--accent); }
.anna-form-success, .anna-form-error {
  padding: 1rem 1.25rem; border: 1px solid var(--wp--preset--color--line); margin-bottom: 1.25rem;
}
.anna-form-success { background: rgba(45,95,63,0.06); border-color: var(--wp--preset--color--accent); }
.anna-form-error { background: rgba(170,30,30,0.06); border-color: #aa1e1e; }
.success-tag, .error-tag {
  font-family: var(--wp--preset--font-family--plex-mono); font-size: 0.78rem;
  letter-spacing: 0.1em; margin: 0 0 0.4rem;
}
.success-tag { color: var(--wp--preset--color--accent); }
.error-tag { color: #aa1e1e; }
.anna-form-success p:last-child,
.anna-form-error p:last-child { margin: 0; }

/* W ciemnej sekcji cta — odwracamy kontrast dla inputów i submit */
section.cta .anna-label { color: #999; }
section.cta .anna-form input[type=text],
section.cta .anna-form input[type=email],
section.cta .anna-form input[type=tel],
section.cta .anna-form textarea {
  background: rgba(255,255,255,0.04); color: var(--wp--preset--color--bg);
  border-color: rgba(255,255,255,0.2);
}
section.cta .anna-form input:focus,
section.cta .anna-form textarea:focus { border-color: var(--wp--preset--color--accent-light); }
section.cta .anna-consent { color: #bbb; }
section.cta .anna-consent a { color: var(--wp--preset--color--bg); }
section.cta .anna-form-submit { background: var(--wp--preset--color--accent-light); border-color: var(--wp--preset--color--accent-light); color: var(--wp--preset--color--ink-dark); }
section.cta .anna-form-submit:hover { background: var(--wp--preset--color--bg); border-color: var(--wp--preset--color--bg); }
