@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap");

:root {
  color-scheme: light;
  --bg: #f6f3ec;
  --paper: #fffdf8;
  --paper-strong: #ffffff;
  --ink: #171717;
  --heading: #101114;
  --muted: #676b76;
  --soft: #8a8f9c;
  --line: rgba(20, 22, 28, 0.11);
  --accent: #c8912f;
  --blue: #2348c8;
  --green: #0ea871;
  --shadow-sm: 0 10px 28px rgba(22, 24, 31, 0.07);
  --shadow: 0 22px 70px rgba(22, 24, 31, 0.10);
  --radius-lg: 34px;
  --radius-md: 24px;
  font-family: "Manrope", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background:
    radial-gradient(circle at 4% -8%, rgba(200, 145, 47, .16), transparent 28rem),
    radial-gradient(circle at 94% 0%, rgba(35, 72, 200, .09), transparent 30rem),
    linear-gradient(180deg, #faf7ef 0%, var(--bg) 55%, #f1eadf 100%);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(17, 24, 39, .026) 1px, transparent 1px), linear-gradient(90deg, rgba(17, 24, 39, .026) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.55), transparent 70%);
}

a { color: inherit; text-decoration: none; }
p { color: var(--muted); line-height: 1.72; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: .95rem clamp(1.05rem, 4vw, 4.8rem);
  background: rgba(250, 247, 239, .82);
  border-bottom: 1px solid rgba(20, 22, 28, .08);
  backdrop-filter: blur(18px);
}

.brand { display: inline-flex; align-items: center; gap: .72rem; min-width: max-content; }
.brand-logo {
  display: block;
  width: clamp(176px, 17vw, 245px);
  height: 48px;
  object-fit: contain;
  object-position: left center;
  filter: drop-shadow(0 10px 20px rgba(20, 22, 28, .08));
}
.brand-mark {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 15px;
  color: #151515;
  font-weight: 900;
  letter-spacing: -.06em;
  background: linear-gradient(135deg, #fff0b8, #c8912f 55%, #e2f4e6);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 12px 30px rgba(200, 145, 47, .18);
}
.brand strong {
  display: block;
  color: var(--heading);
  font-family: "Plus Jakarta Sans", "Manrope", sans-serif;
  font-size: 1.02rem;
  letter-spacing: -.035em;
}
.brand small { display: block; color: var(--muted); margin-top: .02rem; }

.main-nav {
  justify-self: center;
  display: inline-flex;
  gap: .2rem;
  padding: .34rem;
  color: #484d58;
  font-size: .94rem;
  font-weight: 700;
  border: 1px solid rgba(20,22,28,.08);
  border-radius: 999px;
  background: rgba(255,255,255,.52);
}
.main-nav a {
  padding: .62rem .9rem;
  border-radius: 999px;
  transition: background .18s ease, color .18s ease;
}
.main-nav a:hover { color: var(--heading); background: #fff; }
.header-cta {
  justify-self: end;
  width: max-content;
  white-space: nowrap;
  padding: .82rem 1.15rem;
  border-radius: 999px;
  color: var(--heading);
  border: 1px solid rgba(200, 145, 47, .36);
  background: linear-gradient(180deg, #fffdf7, #f9efd8);
  font-weight: 850;
  box-shadow: var(--shadow-sm);
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(380px, .97fr);
  gap: clamp(2rem, 5vw, 5.5rem);
  align-items: center;
  max-width: 1440px;
  margin: 0 auto;
  padding: clamp(2.35rem, 4.1vw, 4.3rem) clamp(1.05rem, 4vw, 4.8rem) 2.1rem;
}
.compact-hero { min-height: calc(100vh - 104px); }
.hero-copy { position: relative; z-index: 1; }

.eyebrow {
  margin: 0 0 1rem;
  color: #8a631d;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 900;
  font-size: .76rem;
}

h1, h2, h3 {
  margin: 0;
  color: var(--heading);
  font-family: "Plus Jakarta Sans", "Manrope", sans-serif;
  line-height: 1.02;
}
h1 {
  max-width: 850px;
  font-size: clamp(3.05rem, 5.45vw, 5.75rem);
  font-weight: 800;
  letter-spacing: -.045em;
}
h2 {
  max-width: 980px;
  font-size: clamp(2.05rem, 3.55vw, 4.05rem);
  font-weight: 800;
  letter-spacing: -.028em;
}
h3 {
  font-size: 1.22rem;
  font-weight: 800;
  letter-spacing: -.018em;
}
.lead {
  max-width: 790px;
  margin: 1.15rem 0 0;
  color: #4f5563;
  font-size: clamp(1.06rem, 1.38vw, 1.22rem);
  line-height: 1.7;
}

.hero-actions, .site-footer nav { display: flex; flex-wrap: wrap; gap: .85rem; }
.hero-actions { margin-top: 1.55rem; }
.audience-chips {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1.25rem;
}
.audience-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: .48rem .75rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.68);
  color: var(--heading);
  font-size: .88rem;
  font-weight: 850;
  box-shadow: 0 8px 26px rgba(22,24,31,.04);
}
.btn, .mini-cta, .more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .84rem 1.15rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  font: inherit;
  font-weight: 850;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.btn:hover, .mini-cta:hover, .more-btn:hover { transform: translateY(-2px); }
.btn.primary {
  background: linear-gradient(135deg, #171717, #34302a);
  color: #fff;
  border-color: rgba(255,255,255,.08);
  box-shadow: 0 18px 44px rgba(20, 22, 28, .20);
}
.btn.secondary {
  background: rgba(255,255,255,.72);
  color: var(--heading);
  border-color: rgba(20,22,28,.12);
  box-shadow: var(--shadow-sm);
}

.trust-strip {
  display: flex;
  flex-wrap: wrap;
  gap: .58rem;
  margin-top: 1.25rem;
}
.trust-strip span {
  display: inline-flex;
  align-items: center;
  gap: .44rem;
  padding: .62rem .82rem;
  border-radius: 999px;
  background: rgba(255,255,255,.64);
  border: 1px solid rgba(20, 22, 28, .10);
  color: #343946;
  font-size: .92rem;
  font-weight: 800;
  box-shadow: 0 8px 24px rgba(22,24,31,.045);
}
.trust-strip span::before {
  content: "✓";
  display: grid;
  place-items: center;
  width: 19px;
  height: 19px;
  border-radius: 999px;
  background: rgba(14,168,113,.12);
  color: #0b8b61;
  font-size: .8rem;
  font-weight: 900;
}

.workflow-visual {
  position: relative;
  overflow: hidden;
  border-radius: 38px;
  background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(247,238,220,.70));
  border: 1px solid rgba(20, 22, 28, .10);
  box-shadow: var(--shadow);
}
.workflow-visual::before {
  content: "";
  position: absolute;
  inset: -35% -35% auto auto;
  width: 360px;
  height: 360px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(200,145,47,.22), transparent 67%);
}
.workflow-visual::after {
  content: "";
  position: absolute;
  inset: auto auto -38% -30%;
  width: 390px;
  height: 390px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(35,72,200,.10), transparent 67%);
}
.visual-toolbar {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: .48rem;
  padding: 1.05rem 1.2rem;
  border-bottom: 1px solid rgba(20,22,28,.08);
  background: rgba(255,255,255,.52);
}
.visual-toolbar span {
  width: 10px;
  height: 10px;
  border-radius: 99px;
  background: #e8ba57;
}
.visual-toolbar span:nth-child(2) { background: #7ed7a9; }
.visual-toolbar span:nth-child(3) { background: #88a5ff; }
.visual-toolbar strong { margin-left: .5rem; color: #30333c; font-weight: 900; }
.workflow-canvas {
  position: relative;
  z-index: 1;
  padding: clamp(1.15rem, 2.7vw, 2rem);
  background:
    linear-gradient(rgba(17, 24, 39, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17, 24, 39, .035) 1px, transparent 1px);
  background-size: 30px 30px;
}
.flow-pill {
  display: inline-flex;
  margin-bottom: 1rem;
  padding: .72rem .95rem;
  border-radius: 999px;
  background: #171717;
  color: #fff;
  font-weight: 900;
  box-shadow: 0 16px 42px rgba(20, 22, 28, .18);
}
.node {
  padding: 1rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: 22px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 16px 42px rgba(22,24,31,.075);
}
.node small {
  display: inline-flex;
  margin-bottom: .46rem;
  color: #8a631d;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
}
.node strong { display: block; color: var(--heading); font-size: 1rem; }
.node p { margin: .34rem 0 0; color: #686d78; font-size: .92rem; line-height: 1.55; }
.node-primary { border-color: rgba(200,145,47,.28); background: #fffdf7; }
.node-finish { border-color: rgba(14,168,113,.25); background: linear-gradient(135deg, #ffffff, #eff9f3); }
.connector.vertical { width: 2px; height: 32px; margin: 0 auto; background: linear-gradient(var(--accent), rgba(17,17,17,.38)); }
.connector.horizontal { height: 2px; max-width: 68%; margin: 1rem auto; background: linear-gradient(90deg, var(--accent), rgba(17,17,17,.42), var(--green)); }
.node-row { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; }
.visual-footer {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  padding: 1rem 1.15rem;
  border-top: 1px solid rgba(20,22,28,.08);
  background: rgba(255,255,255,.45);
}
.visual-footer span {
  padding: .6rem .83rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.64);
  color: #555b67;
  font-weight: 800;
}

.logo-row {
  max-width: 1440px;
  margin: 0 auto;
  padding: .7rem clamp(1.05rem, 4vw, 4.8rem) 3.2rem;
  display: flex;
  flex-wrap: wrap;
  gap: .72rem;
}
.logo-wall {
  align-items: stretch;
}
.logo-card {
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  padding: .72rem .9rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: 18px;
  background: rgba(255,255,255,.70);
  color: #3f4550;
  font-weight: 850;
  box-shadow: 0 10px 28px rgba(22,24,31,.045);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.logo-card:hover {
  transform: translateY(-2px);
  border-color: rgba(200,145,47,.28);
  box-shadow: 0 16px 42px rgba(22,24,31,.08);
}
.logo-card img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}
.logo-card strong {
  display: grid;
  place-items: center;
  min-width: 29px;
  height: 29px;
  padding: 0 .32rem;
  border-radius: 9px;
  background: #171717;
  color: #fff;
  font-size: .78rem;
  letter-spacing: -.02em;
}
.logo-card span {
  white-space: nowrap;
}

.section {
  max-width: 1440px;
  margin: 0 auto;
  padding: clamp(3.9rem, 7vw, 6.6rem) clamp(1.05rem, 4vw, 4.8rem);
}
.section-heading { max-width: 980px; margin-bottom: 2.05rem; }
.section-heading p { max-width: 850px; }

.service-grid, .pricing-grid, .seo-grid, .case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.service-card, .price-card, .seo-grid article, .faq details, .contact-form, .estimator, .case-card, .diagnosis-card {
  border: 1px solid rgba(20, 22, 28, .10);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.72);
  box-shadow: 0 12px 44px rgba(22,24,31,.06);
}
.service-card, .price-card, .seo-grid article { padding: 1.35rem; }

.lead-magnet {
  display: grid;
  grid-template-columns: 1fr .82fr;
  gap: 1rem;
  align-items: stretch;
  padding-top: 2.6rem;
  padding-bottom: 3.5rem;
}
.lead-magnet > div:first-child {
  padding: clamp(1.45rem, 3vw, 2.35rem);
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-lg);
  background:
    radial-gradient(circle at 88% 8%, rgba(242,199,110,.28), transparent 16rem),
    linear-gradient(135deg, #171717, #292520);
  color: white;
  box-shadow: 0 24px 70px rgba(20,22,28,.14);
}
.lead-magnet > div:first-child p,
.lead-magnet > div:first-child .eyebrow { color: rgba(255,255,255,.76); }
.lead-magnet h2 { color: white; }
.diagnosis-card { padding: clamp(1.35rem, 3vw, 2rem); background: #fffdf7; }
.diagnosis-card strong { color: var(--heading); font-size: 1.08rem; }
.diagnosis-card ul { padding-left: 1.1rem; color: var(--muted); line-height: 1.75; }

.cases-section { padding-top: 3.2rem; }
.case-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.case-card {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  padding: 1.35rem;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(251,245,232,.72));
}
.case-card::after {
  content: "";
  position: absolute;
  inset: auto -35% -48% 36%;
  height: 150px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(200,145,47,.16), transparent 68%);
}
.case-card span {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 1rem;
  border-radius: 15px;
  background: rgba(200,145,47,.12);
  color: #8a631d;
  font-weight: 900;
}
.case-card-featured {
  grid-column: span 2;
  background:
    radial-gradient(circle at 88% 10%, rgba(200,145,47,.22), transparent 16rem),
    linear-gradient(135deg, #171717, #2d2922);
  border-color: rgba(200,145,47,.28);
}
.case-card-featured h3,
.case-card-featured p,
.case-card-featured li {
  color: rgba(255,255,255,.86);
}
.case-card-featured h3 {
  color: #fff;
  font-size: clamp(1.35rem, 2.1vw, 2.05rem);
}
.case-card-featured span {
  background: rgba(255,255,255,.12);
  color: #f4c96b;
}
.case-card-featured .case-kicker {
  margin: -.45rem 0 .65rem;
  color: #f4c96b;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.case-card-featured .text-link {
  display: inline-flex;
  margin-top: .35rem;
  color: #ffe09b;
}
.impact-list {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin: 1rem 0;
}
.impact-list strong {
  width: 100%;
  color: inherit;
  font-size: .8rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.impact-list em {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: .42rem .58rem;
  border: 1px solid rgba(200,145,47,.24);
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  color: inherit;
  font-size: .8rem;
  font-style: normal;
  font-weight: 850;
}
.case-card:not(.case-card-featured) .impact-list em {
  background: rgba(200,145,47,.10);
  color: #8a631d;
}
.impact-list.compact { margin: .85rem 0; }
.case-card p, .service-card p, .price-card p, .seo-grid p { font-size: .98rem; }
.case-card ul, .service-card ul, .price-card ul { padding-left: 1.1rem; color: var(--muted); line-height: 1.72; }

.fit-section {
  border-top: 1px solid rgba(20,22,28,.08);
  border-bottom: 1px solid rgba(20,22,28,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.44), rgba(250,245,234,.54));
}
.proof-section { padding-top: 3.6rem; }
.proof-grid, .fit-grid, .example-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.proof-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 46px rgba(22,24,31,.07);
  color: inherit;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.proof-card:hover {
  transform: translateY(-3px);
  border-color: rgba(200,145,47,.28);
  box-shadow: 0 22px 62px rgba(22,24,31,.10);
}
.proof-card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: left center;
  border-bottom: 1px solid rgba(20,22,28,.08);
  background: #f6efe1;
}
.proof-card span {
  padding: 1rem 1.1rem .25rem;
  color: #8a631d;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.proof-card strong {
  padding: 0 1.1rem 1.15rem;
  color: var(--heading);
  font-size: 1.08rem;
  line-height: 1.35;
}
.fit-grid article, .example-grid article {
  padding: 1.35rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.76);
  box-shadow: 0 12px 44px rgba(22,24,31,.05);
}
.fit-grid h3, .example-grid h3 { margin-bottom: .75rem; }
.fit-grid ul {
  padding-left: 1.1rem;
  color: var(--muted);
  line-height: 1.72;
}
.fit-card-wide {
  background:
    radial-gradient(circle at 92% 12%, rgba(200,145,47,.18), transparent 14rem),
    linear-gradient(135deg, #171717, #2a2926) !important;
}
.fit-card-wide h3 { color: white; }
.fit-card-wide p { color: rgba(255,255,255,.78); }
.example-section { padding-top: 3.5rem; }
.example-grid article {
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,250,240,.76));
}
.example-grid strong {
  display: block;
  margin-top: .9rem;
  color: #8a631d;
  font-size: .92rem;
}

.service-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: rgba(255,255,255,.76);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.service-card:hover {
  transform: translateY(-3px);
  border-color: rgba(200,145,47,.24);
  box-shadow: var(--shadow);
}
.service-card .icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 1rem;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(200,145,47,.12), rgba(255,255,255,.78));
  border: 1px solid rgba(200,145,47,.15);
}
.card-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: auto; }
.more-btn { align-self: flex-start; background: #fff; color: var(--heading); border-color: rgba(20,22,28,.12); }
.text-link {
  color: #8a631d;
  font-weight: 900;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.more-panel {
  display: none;
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 20px;
  background: rgba(250,245,234,.78);
  border: 1px solid rgba(200,145,47,.16);
}
.service-card.expanded .more-panel { display: block; }
.service-card.expanded .more-btn { background: #171717; color: white; }

.seo-block {
  position: relative;
  border-top: 1px solid rgba(20,22,28,.08);
  border-bottom: 1px solid rgba(20,22,28,.08);
}
.seo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.seo-grid article { background: rgba(255,255,255,.72); }
.seo-grid article h2 { font-size: clamp(1.55rem, 2.2vw, 2.18rem); }

.pricing-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.price-card {
  display: flex;
  min-height: 470px;
  flex-direction: column;
  background: rgba(255,255,255,.76);
}
.price-card.featured {
  background: linear-gradient(180deg, #fffdf8, #fff4d9);
  border-color: rgba(200,145,47,.30);
  box-shadow: 0 22px 62px rgba(200,145,47,.12);
}
.price-label { color: #8a631d; font-weight: 900; text-transform: uppercase; letter-spacing: .13em; font-size: .72rem; }
.price {
  color: var(--heading);
  font-family: "Plus Jakarta Sans", "Manrope", sans-serif;
  font-size: 1.9rem;
  font-weight: 800;
  margin: .9rem 0;
}
.price-card ul { margin-bottom: 1.25rem; }
.mini-cta {
  width: fit-content;
  min-width: 112px;
  min-height: 42px;
  margin-top: auto;
  justify-content: center;
  background: #171717;
  color: white;
  font-size: .92rem;
}

.timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; padding: 0; list-style: none; }
.timeline li {
  padding: 1.25rem;
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(20,22,28,.10);
  box-shadow: 0 12px 38px rgba(22,24,31,.05);
}
.timeline span { display: inline-flex; margin-bottom: .7rem; color: #8a631d; font-weight: 900; }

.estimator {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 2rem;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  background: linear-gradient(135deg, rgba(255,255,255,.78), rgba(255,247,231,.74));
}
.selector { display: grid; gap: .75rem; }
.selector label {
  display: flex;
  gap: .7rem;
  align-items: center;
  padding: .9rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(20,22,28,.10);
  background: rgba(255,255,255,.72);
  font-weight: 750;
}
.selector input { accent-color: var(--accent); width: 18px; height: 18px; }
output {
  display: block;
  min-height: 62px;
  padding: 1rem;
  border-radius: 18px;
  background: rgba(200,145,47,.10);
  color: var(--heading);
  font-weight: 850;
}

.faq details { padding: 1.15rem 1.25rem; margin-bottom: .8rem; background: rgba(255,255,255,.72); }
.faq summary { cursor: pointer; font-weight: 900; color: var(--heading); }

.contact-section { display: grid; grid-template-columns: .9fr 1.1fr; gap: 2rem; align-items: start; }
.contact-email {
  margin-top: 1.25rem;
  color: var(--soft);
  font-size: .96rem;
}
.contact-email a, .company-line a { color: var(--blue); font-weight: 850; }
.contact-form { padding: 1.35rem; display: grid; gap: 1rem; background: #fffdf7; }
.contact-form label { display: grid; gap: .45rem; color: var(--heading); font-weight: 850; }
.contact-form label span { color: var(--soft); font-weight: 700; font-size: .86rem; }
input, textarea {
  width: 100%;
  border: 1px solid rgba(20,22,28,.13);
  border-radius: 16px;
  padding: .95rem 1rem;
  background: white;
  color: var(--ink);
  font: inherit;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}
input:focus, textarea:focus {
  border-color: rgba(200,145,47,.48);
  box-shadow: 0 0 0 4px rgba(200,145,47,.12);
}
textarea { resize: vertical; }
.form-note { margin: 0; font-size: .9rem; color: var(--soft); }
.form-success { min-height: 1.5rem; margin: 0; color: #0b8b61; font-weight: 850; }
.form-success a { color: var(--blue); text-decoration: underline; }

.site-footer {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  padding: 2rem clamp(1.05rem, 4vw, 4.8rem);
  border-top: 1px solid rgba(20,22,28,.08);
  background: rgba(255,255,255,.52);
}
.site-footer p { max-width: 760px; margin-bottom: 0; }
.company-line { color: var(--soft); font-size: .92rem; }

.subpage .site-header { position: sticky; }
.subpage-hero { padding-top: clamp(3rem, 6vw, 5rem); padding-bottom: clamp(2rem, 5vw, 4rem); }
.subpage-hero h1 { max-width: 1040px; }
.subpage h1 { font-size: clamp(2.7rem, 4.45vw, 5rem); }
.subpage-hero .lead { max-width: 900px; margin-bottom: 1.4rem; }
.subpage .seo-grid h2 { font-size: clamp(1.55rem, 2.2vw, 2.18rem); }
.privacy-content {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1rem;
}
.privacy-content article {
  padding: 1.25rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.72);
}
.privacy-content h2 { font-size: clamp(1.4rem, 2vw, 2rem); }
.privacy-content p { margin-bottom: .75rem; }
.deep-section {
  padding-top: 0;
}
.detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.detail-card, .subpage-cta, .mini-faq {
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.74);
  box-shadow: 0 12px 44px rgba(22,24,31,.055);
}
.detail-card {
  padding: 1.35rem;
}
.detail-card ul, .subpage-cta ul {
  padding-left: 1.1rem;
  color: var(--muted);
  line-height: 1.76;
}
.subpage-cta {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: clamp(1.35rem, 3vw, 2rem);
  background:
    radial-gradient(circle at 92% 10%, rgba(200,145,47,.18), transparent 16rem),
    rgba(255,253,248,.82);
}
.subpage-cta h2 {
  font-size: clamp(1.75rem, 2.7vw, 2.8rem);
}
.mini-faq {
  padding: 1.35rem;
}
.mini-faq details {
  padding: 1rem 0;
  border-bottom: 1px solid rgba(20,22,28,.08);
}
.mini-faq details:last-child { border-bottom: 0; }
.mini-faq summary {
  cursor: pointer;
  color: var(--heading);
  font-weight: 900;
}

.case-study-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(320px, .72fr);
  gap: clamp(1.4rem, 4vw, 3.5rem);
  align-items: center;
}
.case-summary-card {
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-lg);
  background:
    radial-gradient(circle at 90% 10%, rgba(200,145,47,.18), transparent 14rem),
    rgba(255,255,255,.76);
  box-shadow: var(--shadow);
}
.case-summary-card dl {
  display: grid;
  gap: .9rem;
  margin: 1.1rem 0 0;
}
.case-summary-card dt {
  color: #8a631d;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.case-summary-card dd {
  margin: .2rem 0 0;
  color: var(--heading);
  font-weight: 850;
}
.case-media-card {
  padding: clamp(.7rem, 1.5vw, 1.1rem);
  border: 1px solid rgba(20,22,28,.10);
  border-radius: calc(var(--radius-lg) + .25rem);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(249,244,234,.72)),
    radial-gradient(circle at 72% 18%, rgba(200,145,47,.18), transparent 18rem);
  box-shadow: var(--shadow);
}
.case-screenshot {
  display: block;
  width: 100%;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(20,22,28,.10);
  box-shadow: 0 20px 60px rgba(31,25,15,.14);
}
.feature-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.feature-list-wide article p {
  margin-bottom: 0;
}
.process-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .9rem;
}
.process-list article {
  position: relative;
  padding: 1.25rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 42px rgba(31,25,15,.06);
}
.process-list article span {
  display: inline-grid;
  place-items: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: .9rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #f2d27b, #b8792b);
  color: #171717;
  font-weight: 950;
  font-size: .82rem;
}
.process-list article h3 {
  margin-bottom: .45rem;
}
.process-list article p {
  margin: 0;
  color: var(--muted);
  font-size: .95rem;
  line-height: 1.65;
}
.feature-list article {
  padding: 1.3rem;
  border: 1px solid rgba(20,22,28,.10);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.74);
  box-shadow: 0 12px 38px rgba(22,24,31,.05);
}
.feature-list .icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin-bottom: 1rem;
  border-radius: 15px;
  background: rgba(200,145,47,.12);
}
.result-band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.result-band article {
  padding: 1.2rem;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, #171717, #302b24);
  color: #fff;
  box-shadow: 0 18px 48px rgba(20,22,28,.12);
}
.result-band strong {
  display: block;
  color: #f4c96b;
  font-size: 1.45rem;
}
.result-band p {
  color: rgba(255,255,255,.72);
  margin-bottom: 0;
}

/* MemorioPic case study */
.memoriopic-case {
  --mp-gold: #f4bc47;
  --mp-ink: #0b1013;
  --mp-panel: #131a1e;
}
.memoriopic-hero { align-items: stretch; }
.mp-product-frame {
  position: relative;
  min-height: 610px;
  overflow: hidden;
  border: 1px solid rgba(244,188,71,.35);
  border-radius: 34px;
  color: #f7f7f7;
  background: var(--mp-ink);
  box-shadow: 0 28px 90px rgba(13,16,20,.22);
}
.mp-product-header {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 1rem;
  align-items: center;
  position: relative;
  z-index: 3;
  padding: 1.25rem 1.35rem;
}
.mp-product-header strong {
  text-align: center;
  font: 500 clamp(2rem, 4vw, 3.4rem)/1 Georgia, serif;
}
.mp-product-header strong span,
.mp-product-header strong sup { color: var(--mp-gold); }
.mp-product-header sup { font-size: .34em; vertical-align: top; }
.mp-menu,
.mp-pro {
  display: grid;
  place-items: center;
  min-height: 44px;
  border-radius: 999px;
  font-weight: 900;
}
.mp-menu { border: 1px solid rgba(255,255,255,.16); }
.mp-pro { padding: 0 1rem; color: #0b1013; background: var(--mp-gold); }
.mp-product-copy {
  position: relative;
  z-index: 3;
  width: 55%;
  padding: 2.1rem 0 8rem 1.75rem;
}
.mp-product-copy small { color: var(--mp-gold); font-weight: 900; letter-spacing: .12em; }
.mp-product-copy h2 { margin: 1rem 0; color: #fff; font-size: clamp(2.35rem, 5vw, 4.1rem); line-height: .98; }
.mp-product-copy h2 em { color: var(--mp-gold); font-style: normal; }
.mp-product-copy p { color: rgba(255,255,255,.75); }
.mp-product-compare {
  position: absolute;
  inset: 96px 0 76px 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.mp-product-compare::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(11,16,19,.96) 0%, rgba(11,16,19,.8) 42%, transparent 64%);
  pointer-events: none;
}
.mp-product-compare figure { margin: 0; min-width: 0; overflow: hidden; }
.mp-product-compare img { width: 100%; height: 100%; object-fit: cover; }
.mp-product-compare > span {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: rgba(11,16,19,.85);
  transform: translate(-50%,-50%);
}
.mp-product-nav {
  position: absolute;
  z-index: 4;
  right: .8rem;
  bottom: .8rem;
  left: .8rem;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: .5rem;
  padding: .75rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: rgba(14,20,23,.94);
  backdrop-filter: blur(16px);
}
.mp-product-nav span { display: grid; place-items: center; color: rgba(255,255,255,.65); font-size: 1.25rem; }
.mp-product-nav small { margin-top: .2rem; font-size: .68rem; }
.mp-product-nav .active { color: var(--mp-gold); }
.case-facts {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1rem;
}
.case-facts article {
  padding: 1.25rem;
  border: 1px solid rgba(20,22,28,.1);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.72);
}
.case-facts small,
.mp-showcase-card small { color: #8a631d; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.case-facts strong { display: block; margin: .35rem 0; color: var(--heading); font-size: 1.16rem; }
.case-facts p { margin-bottom: 0; font-size: .92rem; }
.mp-showcase-grid { display: grid; gap: 1.25rem; }
.mp-showcase-card {
  display: grid;
  grid-template-columns: minmax(320px,.92fr) 1.08fr;
  gap: clamp(1.25rem,4vw,3rem);
  align-items: center;
  padding: clamp(1rem,2vw,1.35rem);
  border: 1px solid rgba(20,22,28,.1);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.76);
  box-shadow: 0 18px 54px rgba(22,24,31,.06);
}
.mp-showcase-card:nth-child(even) .mp-pair { order: 2; }
.mp-showcase-card h3 { margin-top: .55rem; font-size: clamp(1.6rem,2.7vw,2.55rem); }
.mp-pair {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 330px;
  overflow: hidden;
  border-radius: 26px;
  background: #0b1013;
}
.mp-pair::after { content: ""; position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; background: rgba(255,255,255,.9); }
.mp-pair img { width: 100%; height: 100%; object-fit: cover; }
.mp-pair span { position: absolute; z-index: 2; top: .8rem; padding: .35rem .55rem; border-radius: 999px; color: #fff; background: rgba(11,16,19,.8); font-size: .67rem; font-weight: 900; letter-spacing: .08em; }
.mp-pair span:first-of-type { left: .8rem; }
.mp-pair span:last-of-type { right: .8rem; }
.memoriopic-feature-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
.mp-architecture {
  border-radius: 38px;
  background:
    radial-gradient(circle at 90% 5%, rgba(244,188,71,.18), transparent 25rem),
    #0c1215;
}
.mp-architecture h2,
.mp-architecture h3 { color: #fff; }
.mp-architecture .section-heading > p:last-child { color: rgba(255,255,255,.68); }
.mp-architecture-flow {
  display: grid;
  grid-template-columns: repeat(7,auto);
  align-items: stretch;
  gap: .65rem;
}
.mp-architecture-flow article {
  width: min(240px,21vw);
  padding: 1.15rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: rgba(255,255,255,.06);
}
.mp-architecture-flow > span { display: grid; place-items: center; color: var(--mp-gold); font-size: 1.45rem; }
.mp-architecture-flow small { color: var(--mp-gold); font-weight: 900; }
.mp-architecture-flow strong { display: block; margin: .55rem 0; color: #fff; }
.mp-architecture-flow p { margin: 0; color: rgba(255,255,255,.66); font-size: .86rem; }
.mp-tech-tags { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.35rem; }
.mp-tech-tags span { padding: .55rem .75rem; border: 1px solid rgba(244,188,71,.25); border-radius: 999px; color: #f7d68f; background: rgba(244,188,71,.08); font-size: .82rem; font-weight: 800; }
.mp-seo-plan { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin-top: 1rem; }
.mp-seo-plan article { padding: 1.2rem; border-radius: var(--radius-md); background: linear-gradient(135deg,#fff,#fff6e6); border: 1px solid rgba(200,145,47,.2); }
.mp-seo-plan strong { color: var(--heading); }
.mp-seo-plan p { margin: .55rem 0 0; font-size: .9rem; }

/* Quiz Party case study */
.quiz-case { --quiz-gold: #f3be3d; --quiz-blue: #101f4b; --quiz-cyan: #32c7ef; }
.quiz-case-hero { align-items: stretch; }
.quiz-device {
  position: relative;
  display: flex;
  min-height: 610px;
  padding: 1.4rem;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(243,190,61,.45);
  border-radius: 34px;
  color: #fff;
  text-align: center;
  background:
    linear-gradient(rgba(6,17,48,.64),rgba(6,17,48,.88)),
    url('/assets/quiz-party-background.jpg') center/cover;
  box-shadow: 0 28px 90px rgba(9,24,67,.24);
}
.quiz-device::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 15%,rgba(50,199,239,.24),transparent 34%); pointer-events: none; }
.quiz-device > * { position: relative; z-index: 1; }
.quiz-device-logo { width: min(360px,80%); height: auto; margin: -3.5rem 0 -2.4rem; object-fit: contain; filter: drop-shadow(0 10px 24px rgba(0,0,0,.3)); }
.quiz-device-copy small { color: var(--quiz-gold); font-weight: 900; letter-spacing: .14em; }
.quiz-device-copy strong { display: block; margin: .7rem 0; font-size: clamp(1.65rem,3.3vw,2.65rem); }
.quiz-device-copy p { color: rgba(255,255,255,.74); }
.quiz-device-options { display: grid; width: min(430px,100%); gap: .55rem; margin: 1rem auto; grid-template-columns: repeat(3,1fr); }
.quiz-device-options span { padding: .65rem .45rem; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.07); font-size: .76rem; font-weight: 800; }
.quiz-device-button { width: min(320px,90%); margin-top: 1rem; padding: 1rem; border-radius: 999px; color: #10152c; background: linear-gradient(135deg,#ffe17e,var(--quiz-gold)); font-weight: 950; box-shadow: 0 12px 30px rgba(243,190,61,.25); }
.quiz-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.quiz-facts article { padding: 1.25rem; border: 1px solid rgba(16,31,75,.12); border-radius: var(--radius-md); background: linear-gradient(145deg,#fff,#f6f8ff); }
.quiz-facts small { color: #3954a3; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.quiz-facts strong { display: block; margin: .35rem 0; color: var(--heading); font-size: 1.22rem; }
.quiz-facts p { margin: 0; font-size: .9rem; }
.quiz-art-grid { display: grid; grid-template-columns: 1.25fr .75fr .75fr; gap: 1rem; }
.quiz-art-grid figure { margin: 0; overflow: hidden; border: 1px solid rgba(16,31,75,.12); border-radius: 26px; background: #fff; box-shadow: 0 18px 54px rgba(16,31,75,.08); }
.quiz-art-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.quiz-art-grid figcaption { padding: .85rem 1rem 1rem; color: var(--muted); font-size: .84rem; }
.quiz-art-logo img { object-fit: contain; background: linear-gradient(145deg,#0a1744,#123474); }
.quiz-dark-section,
.quiz-tech-section { border-radius: 38px; }
.quiz-dark-section { color: #fff; background: radial-gradient(circle at 85% 10%,rgba(50,199,239,.16),transparent 24rem),#091735; }
.quiz-dark-section h2 { color: #fff; }
.quiz-dark-section .section-heading > p:last-child { color: rgba(255,255,255,.7); }
.quiz-flow { display: grid; grid-template-columns: repeat(7,auto); align-items: stretch; gap: .65rem; }
.quiz-flow article { width: min(240px,21vw); padding: 1.15rem; border: 1px solid rgba(255,255,255,.13); border-radius: 20px; background: rgba(255,255,255,.06); }
.quiz-flow small { color: var(--quiz-gold); font-weight: 900; }
.quiz-flow strong { display: block; margin: .55rem 0; color: #fff; }
.quiz-flow p { margin: 0; color: rgba(255,255,255,.67); font-size: .86rem; }
.quiz-flow > i { display: grid; place-items: center; color: var(--quiz-gold); font-size: 1.5rem; font-style: normal; }
.quiz-guardrail { margin: 1rem 0 0; padding: 1rem 1.15rem; border: 1px solid rgba(243,190,61,.25); border-radius: 18px; color: #f7d87f; background: rgba(243,190,61,.08); }
.voice-cache-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.voice-cache-flow article { padding: 1.2rem; border: 1px solid rgba(16,31,75,.12); border-radius: var(--radius-md); background: linear-gradient(145deg,#fff,#f5f8ff); }
.voice-cache-flow span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #0c1c47; background: var(--quiz-gold); font-weight: 950; }
.voice-cache-flow h3 { margin-top: 1rem; }
.quiz-note { margin-top: 1rem; padding: 1.15rem 1.25rem; border-left: 4px solid var(--quiz-gold); border-radius: 0 18px 18px 0; background: #fff5d8; color: #634b11; }
.quiz-feature-list .icon { background: linear-gradient(135deg,rgba(50,199,239,.14),rgba(243,190,61,.18)); }
.quiz-tech-section { background: linear-gradient(145deg,#f2f6ff,#fff9e8); }
.quiz-seo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.quiz-seo-grid article { padding: 1.2rem; border: 1px solid rgba(16,31,75,.1); border-radius: var(--radius-md); background: rgba(255,255,255,.76); }
.quiz-seo-grid strong { color: var(--heading); }
.quiz-seo-grid p { margin: .55rem 0 0; font-size: .9rem; }

@media (max-width: 1100px) {
  .site-header { grid-template-columns: auto auto; }
  .hero, .estimator, .contact-section, .lead-magnet { grid-template-columns: 1fr; }
  .service-grid, .pricing-grid, .seo-grid, .timeline, .case-grid, .detail-grid, .feature-list, .result-band, .process-list, .privacy-content, .proof-grid, .fit-grid, .example-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-study-hero { grid-template-columns: 1fr; }
  .case-facts, .mp-seo-plan { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .quiz-facts, .voice-cache-flow, .quiz-seo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .quiz-flow { grid-template-columns: 1fr; }
  .quiz-flow article { width: auto; }
  .quiz-flow > i { transform: rotate(90deg); }
  .memoriopic-feature-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mp-architecture-flow { grid-template-columns: 1fr; }
  .mp-architecture-flow article { width: auto; }
  .mp-architecture-flow > span { transform: rotate(90deg); }
  .main-nav { display: none; }
  .compact-hero { min-height: auto; }
}

@media (max-width: 680px) {
  .site-header { display: flex; align-items: center; }
  .header-cta { display: none; }
  .service-grid, .pricing-grid, .seo-grid, .timeline, .node-row, .case-grid, .detail-grid, .subpage-cta, .feature-list, .result-band, .process-list, .privacy-content, .proof-grid, .fit-grid, .example-grid { grid-template-columns: 1fr; }
  .case-card-featured { grid-column: span 1; }
  .hero { padding-top: 2.4rem; }
  h1 { font-size: 2.55rem; }
  h2 { font-size: 2rem; }
  .brand-mark { width: 42px; height: 42px; }
  .trust-strip span { width: 100%; }
  .site-footer { flex-direction: column; }
  .case-facts, .mp-seo-plan, .memoriopic-feature-list, .mp-showcase-card { grid-template-columns: 1fr; }
  .quiz-facts, .voice-cache-flow, .quiz-seo-grid, .quiz-art-grid { grid-template-columns: 1fr; }
  .quiz-device { min-height: 560px; }
  .quiz-device-options { grid-template-columns: 1fr; }
  .mp-showcase-card:nth-child(even) .mp-pair { order: 0; }
  .mp-product-frame { min-height: 590px; }
  .mp-product-header strong { font-size: 2rem; }
  .mp-product-copy { width: 75%; padding-left: 1.25rem; }
  .mp-product-copy h2 { font-size: 2.65rem; }
  .mp-pair { height: 270px; }
}

/* Case study: moduł sklepu i drukarni */
.print-case-page {
  --print-gold: #d9a84f;
  --print-green: #287b51;
  --print-ink: #1d1712;
}
.print-case-hero {
  display: grid;
  grid-template-columns: minmax(320px, .78fr) minmax(520px, 1.22fr);
  gap: clamp(2rem, 5vw, 4.8rem);
  align-items: center;
  padding-top: clamp(3rem, 8vw, 7rem);
}
.print-case-intro h1 { max-width: 900px; }
.print-panel-shot {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(35, 27, 19, .13);
  border-radius: 30px;
  background: #f5eee3;
  box-shadow: 0 28px 80px rgba(43, 32, 20, .16);
}
.print-panel-shot img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1874 / 938;
  object-fit: cover;
}
.print-panel-shot figcaption {
  padding: .9rem 1.15rem 1rem;
  color: #6f6256;
  background: rgba(255,255,255,.72);
  font-size: .78rem;
  line-height: 1.45;
}
.print-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  padding-top: 0;
}
.print-facts article {
  padding: 1.25rem;
  border: 1px solid rgba(35, 27, 19, .1);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.74);
}
.print-facts span {
  color: #8c641d;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.print-facts strong {
  display: block;
  margin: .35rem 0;
  color: var(--heading);
  font-size: 1.08rem;
}
.print-facts p { margin: 0; font-size: .9rem; }
.print-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  gap: .75rem;
  align-items: stretch;
  margin-top: 1.5rem;
}
.print-flow article {
  padding: 1.25rem;
  border: 1px solid rgba(35, 27, 19, .1);
  border-radius: var(--radius-md);
  background: linear-gradient(145deg, #fff, #fff7e9);
}
.print-flow article span { color: #a67824; font-size: .75rem; font-weight: 900; }
.print-flow article strong { display: block; margin: .45rem 0; color: var(--heading); }
.print-flow article p { margin: 0; font-size: .88rem; }
.print-flow > i {
  display: grid;
  place-items: center;
  color: var(--print-gold);
  font-size: 1.35rem;
  font-style: normal;
}
.print-feature-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.print-tech-section {
  border-radius: 38px;
  color: rgba(255,255,255,.72);
  background: radial-gradient(circle at 90% 10%, rgba(217,168,79,.2), transparent 30rem), #171613;
}
.print-tech-section h2 { color: #fff; }
.print-tech-section .section-heading > p:last-child { color: rgba(255,255,255,.7); }
.tech-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1.35rem;
}
.tech-tags span {
  padding: .58rem .78rem;
  border: 1px solid rgba(217,168,79,.3);
  border-radius: 999px;
  color: #f5d797;
  background: rgba(217,168,79,.08);
  font-size: .82rem;
  font-weight: 800;
}
.seo-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}
.seo-columns article {
  padding: 1.4rem;
  border: 1px solid rgba(35, 27, 19, .1);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.72);
}
.seo-columns h2 { font-size: 1.25rem; }
.seo-columns li + li { margin-top: .45rem; }

@media (max-width: 1100px) {
  .print-case-hero { grid-template-columns: 1fr; }
  .print-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .print-flow { grid-template-columns: 1fr; }
  .print-flow > i { transform: rotate(90deg); }
  .print-feature-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .print-case-hero { gap: 1.7rem; padding-top: 2.4rem; }
  .print-panel-shot { border-radius: 20px; }
  .print-panel-shot img { min-height: 230px; object-position: left center; }
  .print-facts, .print-feature-list, .seo-columns { grid-template-columns: 1fr; }
  .print-tech-section { border-radius: 24px; }
}
