/* ProfessionalRecipeManager public website refactor — 2026
   Public pages only. API/admin assets are intentionally untouched. */

.public-site {
  --p26-ink: #16152b;
  --p26-ink-soft: #4f5067;
  --p26-line: #e7e5ef;
  --p26-line-strong: #d9d6e6;
  --p26-surface: #ffffff;
  --p26-surface-soft: #f8f7fb;
  --p26-lavender: #f0edff;
  --p26-purple: #4932a8;
  --p26-purple-2: #6d54cf;
  --p26-purple-3: #30206f;
  --p26-gold: #e5ad25;
  --p26-gold-soft: #fff4d1;
  --p26-green: #21845a;
  --p26-red: #b84040;
  --p26-shadow-sm: 0 10px 28px rgba(28, 21, 58, .06);
  --p26-shadow-md: 0 22px 60px rgba(28, 21, 58, .10);
  --p26-radius-sm: 14px;
  --p26-radius-md: 20px;
  --p26-radius-lg: 30px;
  --p26-max: 1180px;
  background: #fff;
  color: var(--p26-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}

.public-site::before,
.public-site::after { display: none !important; }
.public-site .site-shell { overflow: clip; background: #fff; }
.public-site a { color: inherit; }
.public-site img { max-width: 100%; }
.public-site .container { width: min(calc(100% - 2rem), var(--p26-max)); margin-inline: auto; }
.public-site .narrow { width: min(calc(100% - 2rem), 920px); }
.public-site .section { padding: 4.75rem 0; }
.public-site .alt-surface { background: var(--p26-surface-soft); }
.public-site .glass-card {
  background: #fff;
  border: 1px solid var(--p26-line);
  box-shadow: var(--p26-shadow-sm);
  backdrop-filter: none;
  color: var(--p26-ink);
}

/* Header */
.public-site .site-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid rgba(219,216,232,.82);
  box-shadow: 0 1px 0 rgba(24,21,48,.02);
  backdrop-filter: blur(18px);
}
.public-site .header-inner { min-height: 72px; gap: 1.25rem; }
.public-site .brand { gap: .7rem; color: var(--p26-ink); }
.public-site .brand-logo {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  box-shadow: 0 7px 18px rgba(62,43,137,.12);
}
.public-site .brand-copy strong { font-size: .98rem; letter-spacing: -.02em; }
.public-site .brand-copy span { color: #747287; font-size: .72rem; }
.public-site .desktop-nav { display: flex; gap: 1.25rem; align-items: center; }
.public-site .desktop-nav a,
.public-site .mobile-panel a {
  color: #55546a;
  font-weight: 650;
  font-size: .86rem;
  letter-spacing: -.01em;
}
.public-site .desktop-nav a:hover,
.public-site .desktop-nav a[aria-current="page"] { color: var(--p26-purple); }
.public-site .header-actions { gap: .55rem; }
.public-site .lang-switch {
  display: flex;
  padding: 2px;
  border: 1px solid var(--p26-line);
  background: #faf9fd;
  border-radius: 999px;
  box-shadow: none;
}
.public-site .lang-btn { color: #77758a; padding: .34rem .58rem; font-size: .76rem; }
.public-site .lang-btn.is-active { background: var(--p26-purple); color: #fff; }
.public-site .menu-toggle {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid var(--p26-line);
  background: #fff;
}
.public-site .menu-toggle span { background: var(--p26-ink); }
.public-site .mobile-panel {
  background: #fff;
  border-top: 1px solid var(--p26-line);
  padding: .9rem 1rem 1.2rem;
}
.public-site .mobile-panel.is-open { gap: 0; }
.public-site .mobile-panel a {
  padding: .85rem .25rem;
  border-bottom: 1px solid #f0eef5;
}

/* Shared commercial typography */
.public-site .p26-kicker,
.public-site .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  width: fit-content;
  margin: 0 0 1rem;
  padding: .42rem .72rem;
  border-radius: 999px;
  background: #f3f0ff;
  color: var(--p26-purple);
  font-weight: 750;
  font-size: .76rem;
  letter-spacing: .025em;
  text-transform: none;
}
.public-site .p26-kicker::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--p26-purple-2);
}
.public-site h1,
.public-site h2,
.public-site h3,
.public-site p { margin-top: 0; }
.public-site h1,
.public-site h2,
.public-site h3 { color: var(--p26-ink); letter-spacing: -.035em; }
.public-site h1 { font-size: clamp(2.7rem, 6vw, 5.6rem); line-height: .98; }
.public-site h2 { font-size: clamp(2rem, 4vw, 3.65rem); line-height: 1.03; }
.public-site h3 { font-size: 1.15rem; line-height: 1.2; }
.public-site p { color: var(--p26-ink-soft); }
.public-site .lead { color: var(--p26-ink-soft); font-size: clamp(1rem, 1.8vw, 1.22rem); line-height: 1.65; }
.public-site .section-heading { max-width: 760px; margin-bottom: 2.1rem; }
.public-site .section-heading h2 { margin-bottom: .8rem; }
.public-site .section-heading p { margin-bottom: 0; }

/* Buttons */
.public-site .btn,
.public-site .p26-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 48px;
  padding: .82rem 1.1rem;
  border-radius: 13px;
  border: 1px solid transparent;
  font-weight: 760;
  font-size: .92rem;
  box-shadow: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.public-site .btn:hover,
.public-site .p26-btn:hover { transform: translateY(-1px); }
.public-site .btn-primary,
.public-site .p26-btn-primary {
  background: var(--p26-purple);
  color: #fff;
  border-color: var(--p26-purple);
  box-shadow: 0 9px 24px rgba(73,50,168,.18);
}
.public-site .btn-primary:hover,
.public-site .p26-btn-primary:hover { background: #3e2a92; }
.public-site .btn-secondary,
.public-site .p26-btn-secondary {
  background: #fff;
  color: var(--p26-purple);
  border-color: #cbc5e6;
}
.public-site .btn-danger { background: #b73d43; color:#fff; border-color:#b73d43; }
.public-site .p26-text-link {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--p26-purple);
  font-weight: 760;
  font-size: .9rem;
}
.public-site .p26-text-link::after { content: "→"; transition: transform .16s ease; }
.public-site .p26-text-link:hover::after { transform: translateX(3px); }

/* Home hero */
.public-home .p26-hero { padding: 4.3rem 0 2.4rem; position: relative; }
.public-home .p26-hero::before {
  content: "";
  position: absolute;
  width: 580px;
  height: 580px;
  right: -180px;
  top: -170px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(109,84,207,.13), rgba(109,84,207,0) 70%);
  pointer-events: none;
}
.public-home .p26-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(350px, .97fr);
  align-items: center;
  gap: clamp(2rem, 6vw, 6rem);
}
.public-home .p26-hero-copy { max-width: 640px; }
.public-home .p26-hero h1 { margin-bottom: 1.25rem; }
.public-home .p26-hero h1 .accent { color: var(--p26-purple); }
.public-home .p26-hero-copy .lead { max-width: 590px; margin-bottom: 1.4rem; }
.public-home .p26-proof-list { display: grid; gap: .7rem; margin: 0 0 1.7rem; padding: 0; list-style: none; }
.public-home .p26-proof-list li {
  display: flex;
  gap: .68rem;
  align-items: flex-start;
  color: #444359;
  font-weight: 610;
  font-size: .94rem;
}
.public-home .p26-check {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  flex: 0 0 20px;
  display: grid;
  place-items: center;
  background: var(--p26-lavender);
  color: var(--p26-purple);
  font-size: .77rem;
  font-weight: 900;
  margin-top: .08rem;
}
.public-home .p26-hero-actions { display: flex; flex-wrap: wrap; gap: .7rem; }
.public-home .p26-hero-note { margin-top: .9rem; color: #77758a; font-size: .82rem; }

.public-site .p26-phone-stage { position: relative; min-height: 585px; display: grid; place-items: center; }
.public-site .p26-phone-halo {
  position: absolute;
  inset: 9% 4% 4% 10%;
  border-radius: 42% 58% 56% 44% / 47% 43% 57% 53%;
  background: linear-gradient(135deg, #eee9ff 0%, #f9f7ff 55%, #e7e0ff 100%);
  transform: rotate(-5deg);
}
.public-site .p26-phone {
  position: relative;
  width: min(330px, 72vw);
  padding: 8px;
  border-radius: 40px;
  background: #111218;
  box-shadow: 0 36px 72px rgba(27,21,50,.24), 0 0 0 1px rgba(0,0,0,.12);
  transform: rotate(2.7deg);
  overflow: hidden;
}
.public-site .p26-phone::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 9px;
  left: 50%;
  transform: translateX(-50%);
  width: 35%;
  height: 20px;
  border-radius: 0 0 13px 13px;
  background: #111218;
}
.public-site .p26-phone img { width: 100%; border-radius: 33px; display: block; }
.public-site .p26-float-card {
  position: absolute;
  z-index: 4;
  width: 190px;
  padding: .9rem 1rem;
  border-radius: 15px;
  background: rgba(255,255,255,.94);
  border: 1px solid var(--p26-line);
  box-shadow: var(--p26-shadow-md);
}
.public-site .p26-float-card strong { display: block; font-size: .88rem; margin-bottom: .18rem; }
.public-site .p26-float-card span { display:block; color:#77758a; font-size:.74rem; line-height:1.4; }
.public-site .p26-float-a { left: 0; top: 31%; }
.public-site .p26-float-b { right: -1.5%; bottom: 12%; }
.public-site .p26-float-dot { width:8px; height:8px; border-radius:50%; background:var(--p26-gold); display:inline-block; margin-right:.35rem; }

/* Horizontal compact benefit bar */
.public-home .p26-benefit-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--p26-line);
  border-radius: 18px;
  box-shadow: var(--p26-shadow-sm);
  background: #fff;
  overflow: hidden;
  margin-top: 1.3rem;
}
.public-home .p26-benefit {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: .72rem;
  align-items: center;
  min-height: 88px;
  padding: 1rem 1.15rem;
  border-right: 1px solid var(--p26-line);
}
.public-home .p26-benefit:last-child { border-right:0; }
.public-home .p26-benefit-icon {
  width: 34px; height:34px; border-radius:10px; display:grid; place-items:center;
  background:var(--p26-lavender); color:var(--p26-purple);
}
.public-home .p26-benefit-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; }
.public-home .p26-benefit strong { display:block; font-size:.86rem; letter-spacing:-.01em; }
.public-home .p26-benefit span { display:block; color:#77758a; font-size:.75rem; line-height:1.35; margin-top:.18rem; }

/* Area cards */
.public-site .p26-area-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.public-site .p26-area-card {
  display:grid;
  grid-template-columns: 56px minmax(0,1fr) auto;
  gap: 1rem;
  align-items:start;
  padding: 1.4rem;
  border:1px solid var(--p26-line);
  border-radius:20px;
  background:#fff;
  min-height: 184px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.public-site .p26-area-card:hover { transform:translateY(-3px); box-shadow:var(--p26-shadow-md); border-color:#d7d1ea; }
.public-site .p26-area-icon {
  width:56px; height:56px; border-radius:16px; display:grid; place-items:center; background:#f4f1ff; color:var(--p26-purple);
}
.public-site .p26-area-icon svg { width:27px; height:27px; fill:none; stroke:currentColor; stroke-width:1.65; }
.public-site .p26-area-copy h3 { font-size:1.24rem; margin-bottom:.45rem; }
.public-site .p26-area-copy p { margin:0; font-size:.9rem; line-height:1.55; max-width: 520px; }
.public-site .p26-area-arrow { color:#89869c; font-size:1.35rem; padding-top:.2rem; }
.public-site .p26-area-tags { display:flex; flex-wrap:wrap; gap:.38rem; margin-top:.85rem; }
.public-site .p26-tag { padding:.3rem .52rem; background:#faf9fd; border:1px solid #ece9f3; border-radius:999px; color:#6f6d80; font-size:.7rem; font-weight:650; }

/* Screen cards */
.public-site .p26-screen-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:1rem; }
.public-site .p26-screen-card {
  overflow:hidden;
  border:1px solid var(--p26-line);
  border-radius:20px;
  background:#fff;
  min-height: 100%;
}
.public-site .p26-screen-media { height: 300px; overflow:hidden; background:#f4f2f8; position:relative; }
.public-site .p26-screen-media img { width:100%; height:100%; object-fit:cover; object-position:top; }
.public-site .p26-screen-copy { padding:1.15rem 1.2rem 1.3rem; }
.public-site .p26-screen-copy small { display:block; color:var(--p26-purple); font-weight:760; margin-bottom:.4rem; }
.public-site .p26-screen-copy h3 { margin-bottom:.45rem; }
.public-site .p26-screen-copy p { margin:0; font-size:.88rem; }

/* Connection / workflow */
.public-site .p26-flow {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  align-items:stretch;
  gap:0;
  border:1px solid var(--p26-line);
  border-radius:22px;
  overflow:hidden;
  background:#fff;
}
.public-site .p26-flow-step { padding:1.25rem; position:relative; border-right:1px solid var(--p26-line); }
.public-site .p26-flow-step:last-child { border-right:0; }
.public-site .p26-flow-index { display:block; color:var(--p26-purple); font-size:.72rem; font-weight:800; letter-spacing:.05em; margin-bottom:.7rem; }
.public-site .p26-flow-step strong { display:block; font-size:.93rem; margin-bottom:.3rem; }
.public-site .p26-flow-step span { color:#77758a; font-size:.76rem; line-height:1.4; }

/* Tools */
.public-site .p26-tool-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.public-site .p26-tool {
  padding:1.25rem;
  border:1px solid var(--p26-line);
  border-radius:18px;
  background:#fff;
}
.public-site .p26-tool-top { display:flex; align-items:center; gap:.75rem; margin-bottom:.7rem; }
.public-site .p26-tool-icon { width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#f4f1ff;color:var(--p26-purple); }
.public-site .p26-tool-icon svg {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;}
.public-site .p26-tool h3 { font-size:1rem; margin:0; }
.public-site .p26-tool p { font-size:.84rem; margin:0; }

/* Audience */
.public-site .p26-audience-row { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--p26-line); border-bottom:1px solid var(--p26-line); }
.public-site .p26-audience-item { padding:1.25rem .9rem; text-align:center; border-right:1px solid var(--p26-line); }
.public-site .p26-audience-item:last-child {border-right:0;}
.public-site .p26-audience-item strong {display:block;font-size:.9rem;}
.public-site .p26-audience-item span {display:block;color:#817f91;font-size:.72rem;margin-top:.2rem;}

/* Trust / legal strip */
.public-site .p26-trust-card {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);
  gap:2rem;
  align-items:center;
  padding:1.8rem;
  border-radius:22px;
  background:linear-gradient(135deg,#2f1d6b 0%,#4b2d9f 55%,#5d42bd 100%);
  color:#fff;
}
.public-site .p26-trust-card h2 {color:#fff;font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:.55rem;}
.public-site .p26-trust-card p {color:rgba(255,255,255,.78);margin:0;}
.public-site .p26-trust-links {display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end;}
.public-site .p26-trust-links a {display:inline-flex;align-items:center;min-height:44px;padding:.7rem .9rem;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-weight:700;font-size:.82rem;}
.public-site .p26-trust-links a:hover {background:rgba(255,255,255,.16);}

/* Area page hero */
.area-page .p26-area-hero { padding:4.6rem 0 3.4rem; background:linear-gradient(180deg,#fff 0%,#faf9fd 100%); border-bottom:1px solid var(--p26-line); }
.area-page .p26-area-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.85fr); gap:4.2rem; align-items:center; }
.area-page .p26-area-hero h1 { font-size:clamp(2.7rem,5.5vw,4.9rem); margin-bottom:1rem; }
.area-page .p26-area-hero .lead { max-width:640px; margin-bottom:1.45rem; }
.area-page .p26-area-actions { display:flex; flex-wrap:wrap; gap:.7rem; }
.area-page .p26-area-summary { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.3rem; }
.area-page .p26-summary-pill {padding:.42rem .66rem;border:1px solid var(--p26-line);border-radius:999px;background:#fff;color:#68667a;font-size:.76rem;font-weight:650;}

/* Non-screenshot product visual, intentionally labelled as a schematic */
.public-site .p26-product-panel {
  position:relative;
  padding:1rem;
  border:1px solid var(--p26-line);
  border-radius:24px;
  background:linear-gradient(160deg,#fff 0%,#f7f5fc 100%);
  box-shadow:var(--p26-shadow-md);
}
.public-site .p26-panel-label {font-size:.7rem;color:#8a8799;margin:0 0 .6rem .2rem;}
.public-site .p26-ui-window {border:1px solid #dedbe8;border-radius:18px;background:#fff;overflow:hidden;}
.public-site .p26-ui-head {display:flex;align-items:center;justify-content:space-between;padding:.8rem .9rem;border-bottom:1px solid #ece9f2;}
.public-site .p26-ui-title {font-weight:800;font-size:.9rem;}
.public-site .p26-ui-chip {padding:.28rem .5rem;border-radius:999px;background:#f1edff;color:var(--p26-purple);font-size:.66rem;font-weight:750;}
.public-site .p26-ui-body {padding:.85rem;display:grid;gap:.62rem;}
.public-site .p26-ui-row {display:grid;grid-template-columns:1fr auto;gap:.65rem;align-items:center;padding:.75rem;border:1px solid #ece9f2;border-radius:13px;background:#fcfbfe;}
.public-site .p26-ui-row strong {font-size:.8rem;}
.public-site .p26-ui-row span {font-size:.7rem;color:#838193;}
.public-site .p26-ui-status {display:inline-flex;padding:.28rem .5rem;border-radius:999px;background:#eef8f2;color:var(--p26-green);font-size:.66rem;font-weight:750;}
.public-site .p26-ui-note {padding:.75rem;border-radius:13px;background:#f2efff;color:#4f3ca7;font-size:.74rem;}
.public-site .p26-ui-columns {display:grid;grid-template-columns:repeat(2,1fr);gap:.62rem;}
.public-site .p26-ui-stat {padding:.85rem;border:1px solid #ece9f2;border-radius:13px;background:#fcfbfe;}
.public-site .p26-ui-stat small {display:block;color:#858293;font-size:.68rem;margin-bottom:.28rem;}
.public-site .p26-ui-stat strong {font-size:.94rem;}

/* Feature editorial sections on area pages */
.area-page .p26-feature-stack {display:grid;gap:1px;background:var(--p26-line);border:1px solid var(--p26-line);border-radius:22px;overflow:hidden;}
.area-page .p26-feature-row {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:2rem;align-items:center;padding:2rem;background:#fff;}
.area-page .p26-feature-row:nth-child(even) .p26-feature-visual {order:2;}
.area-page .p26-feature-row:nth-child(even) .p26-feature-copy {order:1;}
.area-page .p26-feature-copy small {display:block;color:var(--p26-purple);font-weight:780;font-size:.72rem;letter-spacing:.04em;margin-bottom:.55rem;}
.area-page .p26-feature-copy h2 {font-size:clamp(1.75rem,3vw,2.55rem);margin-bottom:.7rem;}
.area-page .p26-feature-copy p {font-size:.94rem;margin-bottom:.9rem;}
.area-page .p26-bullet-list {list-style:none;padding:0;margin:0;display:grid;gap:.48rem;}
.area-page .p26-bullet-list li {display:flex;gap:.55rem;color:#555368;font-size:.86rem;}
.area-page .p26-bullet-list li::before {content:"✓";color:var(--p26-purple);font-weight:900;}
.area-page .p26-feature-visual {min-height:280px;border-radius:17px;background:#f7f5fb;border:1px solid #ebe8f1;overflow:hidden;display:grid;place-items:center;}
.area-page .p26-feature-visual img {width:100%;height:100%;object-fit:cover;object-position:top;}

/* Related areas */
.public-site .p26-related {display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.public-site .p26-related-card {padding:1.15rem;border:1px solid var(--p26-line);border-radius:17px;background:#fff;}
.public-site .p26-related-card strong {display:block;margin-bottom:.35rem;}
.public-site .p26-related-card p {font-size:.82rem;margin-bottom:.65rem;}

/* Legal + support pages restyled without changing content or behaviour */
.public-legal main.section { padding:3.6rem 0 4.6rem; background:linear-gradient(180deg,#fff 0%,#faf9fd 100%); }
.public-legal .page-header { margin-bottom:1.6rem; }
.public-legal .page-header h1 { font-size:clamp(2.35rem,5vw,4rem); margin-bottom:.8rem; }
.public-legal .page-header .lead { max-width:760px; }
.public-legal .page-links {display:flex;flex-wrap:wrap;gap:.48rem;margin-top:1rem;}
.public-legal .page-chip {display:inline-flex;align-items:center;padding:.42rem .62rem;border:1px solid var(--p26-line);border-radius:999px;background:#fff;color:#666477;font-size:.74rem;font-weight:650;}
.public-legal a.page-chip:hover {color:var(--p26-purple);border-color:#cdc6e4;}
.public-legal .legal-grid,
.public-legal .support-grid,
.public-legal .summary-grid { gap:1rem; }
.public-legal .legal-card,
.public-legal .summary-card,
.public-legal .deletion-tool {
  background:#fff !important;
  color:var(--p26-ink) !important;
  border:1px solid var(--p26-line) !important;
  box-shadow:var(--p26-shadow-sm) !important;
  border-radius:20px !important;
}
.public-legal .legal-card h2,
.public-legal .legal-card h3,
.public-legal .summary-card h2,
.public-legal .summary-card h3,
.public-legal .deletion-tool h2 {color:var(--p26-ink)!important;}
.public-legal .legal-card p,
.public-legal .summary-card p,
.public-legal .deletion-tool p {color:var(--p26-ink-soft)!important;}
.public-legal .card-head {align-items:flex-start;}
.public-legal .page-icon,
.public-legal .deletion-tool-icon {background:#f2efff!important;color:var(--p26-purple)!important;border:0!important;}
.public-legal .page-icon svg,
.public-legal .deletion-tool-icon svg {stroke:currentColor!important;}
.public-legal details {border-color:var(--p26-line)!important;background:#fff!important;}
.public-legal details summary {color:var(--p26-ink)!important;}
.public-legal table {background:#fff;color:var(--p26-ink);}
.public-legal th {background:#f7f5fb;color:var(--p26-ink);}
.public-legal td, .public-legal th {border-color:var(--p26-line)!important;}
.public-legal .legal-table-wrap {border-color:var(--p26-line)!important;background:#fff!important;}

/* Data deletion functional form — preserve all IDs and JS contracts */
.public-legal .deletion-field label { color:var(--p26-ink)!important; }
.public-legal .deletion-field input {
  background:#fff!important;
  color:var(--p26-ink)!important;
  border:1px solid #cbc7d8!important;
  box-shadow:none!important;
}
.public-legal .deletion-field input:focus { outline:3px solid rgba(73,50,168,.12)!important; border-color:#8d7bd2!important; }
.public-legal .deletion-status {border-radius:13px!important;}
.public-legal .deletion-status-warning {background:#fff8e5!important;color:#7a5a12!important;border-color:#f0d98d!important;}
.public-legal .deletion-status-success {background:#edf8f2!important;color:#23694c!important;border-color:#b9dfcb!important;}
.public-legal .deletion-status-error {background:#fff0f1!important;color:#97343c!important;border-color:#e6b2b7!important;}
.public-legal .deletion-status-info {background:#f2efff!important;color:#4c399e!important;border-color:#d6cef7!important;}
.public-legal .deletion-confirm-panel,
.public-legal .deletion-linked-data > div,
.public-legal .deletion-metadata > div {background:#faf9fd!important;border-color:var(--p26-line)!important;}
.public-legal .deletion-metadata dt,
.public-legal .deletion-linked-list li,
.public-legal .deletion-link-limit {color:var(--p26-ink-soft)!important;}
.public-legal .deletion-metadata dd {color:var(--p26-ink)!important;}
.public-legal .deletion-privacy-note {background:#f7f5ff!important;border-color:#ddd7f3!important;color:#504873!important;}

/* Footer */
.public-site .site-footer {
  background:#fff;
  border-top:1px solid var(--p26-line);
  color:var(--p26-ink);
  padding-top:2.4rem;
}
.public-site .footer-grid {align-items:start;}
.public-site .site-footer strong {color:var(--p26-ink);}
.public-site .site-footer p {color:#767487;max-width:520px;font-size:.84rem;}
.public-site .footer-links {display:flex;flex-wrap:wrap;gap:1rem;align-items:center;}
.public-site .footer-links a {color:#656376;font-size:.82rem;font-weight:650;}
.public-site .footer-links a:hover {color:var(--p26-purple);}
.public-site .footer-bottom {color:#8a8797;border-top:1px solid #f0eef5;margin-top:1.5rem;padding-block:1rem 1.5rem;font-size:.76rem;}

/* Reveal */
.public-site .reveal { transform:translateY(10px); opacity:0; transition:opacity .48s ease, transform .48s ease; }
.public-site .reveal.is-visible { transform:none; opacity:1; }

/* Responsive */
@media (max-width: 980px) {
  .public-site .desktop-nav { display:none; }
  .public-site .menu-toggle { display:grid; }
  .public-site .brand-copy span { display:none; }
  .public-home .p26-hero-grid,
  .area-page .p26-area-hero-grid { grid-template-columns:1fr; gap:2rem; }
  .public-site .p26-phone-stage { min-height:520px; }
  .public-site .p26-phone { width:min(310px,74vw); }
  .public-home .p26-benefit-bar { grid-template-columns:repeat(2,1fr); }
  .public-home .p26-benefit:nth-child(2) { border-right:0; }
  .public-home .p26-benefit:nth-child(-n+2) { border-bottom:1px solid var(--p26-line); }
  .public-site .p26-screen-grid { grid-template-columns:repeat(2,1fr); }
  .public-site .p26-flow { grid-template-columns:repeat(3,1fr); }
  .public-site .p26-flow-step { border-bottom:1px solid var(--p26-line); }
  .public-site .p26-flow-step:nth-child(3) {border-right:0;}
  .public-site .p26-flow-step:nth-child(n+4){border-bottom:0;}
  .public-site .p26-tool-grid {grid-template-columns:repeat(2,1fr);}
  .public-site .p26-audience-row {grid-template-columns:repeat(3,1fr);}
  .public-site .p26-audience-item:nth-child(3){border-right:0;}
  .public-site .p26-audience-item:nth-child(-n+3){border-bottom:1px solid var(--p26-line);}
  .public-site .p26-trust-card {grid-template-columns:1fr;}
  .public-site .p26-trust-links {justify-content:flex-start;}
  .area-page .p26-feature-row {grid-template-columns:1fr;}
  .area-page .p26-feature-row:nth-child(even) .p26-feature-visual,
  .area-page .p26-feature-row:nth-child(even) .p26-feature-copy {order:initial;}
  .public-site .p26-related {grid-template-columns:1fr;}
}

@media (max-width: 720px) {
  .public-site .container { width:min(calc(100% - 1.25rem), var(--p26-max)); }
  .public-site .header-inner { min-height:64px; }
  .public-site .brand-logo { width:34px;height:34px;border-radius:9px; }
  .public-site .brand-copy strong { font-size:.85rem; }
  .public-site .section { padding:3.6rem 0; }
  .public-home .p26-hero { padding:2.7rem 0 1.2rem; }
  .public-home .p26-hero h1,
  .area-page .p26-area-hero h1 { font-size:clamp(2.45rem,12vw,3.8rem); }
  .public-home .p26-hero-copy .lead,
  .area-page .p26-area-hero .lead {font-size:1rem;line-height:1.58;}
  .public-home .p26-hero-actions,
  .area-page .p26-area-actions {display:grid;grid-template-columns:1fr;}
  .public-site .btn,
  .public-site .p26-btn {width:100%;}
  .public-site .p26-phone-stage { min-height:465px; margin-top:.3rem; }
  .public-site .p26-phone { width:min(286px,78vw); }
  .public-site .p26-float-card { width:158px; padding:.72rem .78rem; }
  .public-site .p26-float-a {left:-1%; top:36%;}
  .public-site .p26-float-b {right:-1%; bottom:7%;}
  .public-home .p26-benefit-bar {grid-template-columns:1fr;margin-top:.55rem;}
  .public-home .p26-benefit {border-right:0!important;border-bottom:1px solid var(--p26-line)!important;min-height:74px;padding:.82rem .95rem;}
  .public-home .p26-benefit:last-child{border-bottom:0!important;}
  .public-site .p26-area-grid {grid-template-columns:1fr;}
  .public-site .p26-area-card {grid-template-columns:48px minmax(0,1fr) auto;min-height:auto;padding:1.05rem;}
  .public-site .p26-area-icon {width:48px;height:48px;border-radius:14px;}
  .public-site .p26-area-icon svg{width:23px;height:23px;}
  .public-site .p26-area-tags{display:none;}
  .public-site .p26-screen-grid {grid-template-columns:1fr;}
  .public-site .p26-screen-media {height:270px;}
  .public-site .p26-flow {grid-template-columns:1fr;}
  .public-site .p26-flow-step {border-right:0!important;border-bottom:1px solid var(--p26-line)!important;}
  .public-site .p26-flow-step:last-child{border-bottom:0!important;}
  .public-site .p26-tool-grid {grid-template-columns:1fr;}
  .public-site .p26-audience-row {grid-template-columns:1fr 1fr;}
  .public-site .p26-audience-item {border-right:1px solid var(--p26-line)!important;border-bottom:1px solid var(--p26-line)!important;}
  .public-site .p26-audience-item:nth-child(2n){border-right:0!important;}
  .public-site .p26-audience-item:last-child{grid-column:1/-1;border-right:0!important;border-bottom:0!important;}
  .public-site .p26-trust-card {padding:1.35rem;}
  .public-site .p26-trust-links {display:grid;grid-template-columns:1fr 1fr;width:100%;}
  .public-site .p26-trust-links a {justify-content:center;}
  .area-page .p26-area-hero {padding:2.8rem 0 2.4rem;}
  .area-page .p26-feature-row {padding:1.25rem;gap:1.25rem;}
  .area-page .p26-feature-visual {min-height:240px;}
  .public-site .p26-ui-columns{grid-template-columns:1fr;}
  .public-legal main.section {padding:2.6rem 0 3.6rem;}
  .public-legal .page-header h1 {font-size:2.45rem;}
  .public-site .footer-grid {display:grid;gap:1rem;}
  .public-site .footer-links {gap:.75rem 1rem;}
}

@media (max-width: 430px) {
  .public-site .lang-switch {display:none;}
  .public-site .p26-phone-stage {min-height:435px;}
  .public-site .p26-phone {width:265px;}
  .public-site .p26-float-card {width:145px;}
  .public-site .p26-float-card span {font-size:.68rem;}
  .public-site .p26-float-card strong {font-size:.8rem;}
}

/* Mobile-first refinement: show the product visual earlier without removing functionality. */
@media (max-width: 720px) {
  .public-home .p26-proof-list,
  .public-home .p26-hero-note { display: none; }
}

@media (max-width: 430px) {
  .public-site .lang-switch { display: flex; }
  .public-site .header-inner { gap: .35rem; }
  .public-site .brand { gap: .45rem; min-width: 0; }
  .public-site .brand-copy strong { font-size: .72rem; white-space: nowrap; }
  .public-site .brand-logo { width: 31px; height: 31px; }
  .public-site .lang-btn { padding: .28rem .4rem; font-size: .68rem; }
  .public-site .menu-toggle { width: 38px; height: 38px; border-radius: 11px; }
}
