:root{
  --accent:#2f8cc8;
  --ink:#1f2326;
  --muted:#697177;
  --line:#dedfdc;
  --paper:#ffffff;
  --outside:#f1f2ef;
  --soft:#f7f8f6;
  --font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:var(--outside)}
body{margin:0;color:var(--ink);font-family:var(--font);background:var(--outside);font-size:15px;line-height:1.45}
button,input,textarea{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
a{color:inherit}
.public-wrap{
  width:min(760px,calc(100% - 40px));
  margin:54px auto 28px;
  background:var(--paper);
  border:1px solid var(--line);
}
.public-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:28px 30px 0;
}
.identity-mark{width:54px;height:54px;display:grid;place-items:center}
.logo{max-width:54px;max-height:54px;object-fit:contain}
.initials{
  width:54px;height:54px;display:grid;place-items:center;
  border:1px solid var(--line);background:var(--soft);
  font-size:14px;font-weight:700;letter-spacing:.04em
}
.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.langs{display:flex;gap:3px}
.langs button{
  border:0;background:transparent;color:#7c8387;padding:5px 6px;font-size:10px;font-weight:700
}
.langs button.on{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.agent-trigger,.secondary-cta{
  border:1px solid var(--ink);background:var(--paper);color:var(--ink);
  min-height:34px;padding:8px 11px;font-size:10px;font-weight:750;letter-spacing:.04em
}
.dots{display:inline-flex;gap:2px;margin-left:7px;vertical-align:middle}
.dots i{width:3px;height:3px;border-radius:50%;background:currentColor;display:block;animation:pulse 1.2s infinite}
.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}
@keyframes pulse{0%,60%,100%{opacity:.3}30%{opacity:1}}
.identity{padding:50px 30px 54px;border-bottom:1px solid var(--line)}
.eyebrow,.section-label{
  font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:var(--accent)
}
.identity h1{
  font-size:clamp(34px,5.2vw,44px);
  line-height:1.04;
  letter-spacing:-.035em;
  font-weight:650;
  margin:12px 0 13px;
  text-wrap:balance;
}
.identity-copy{
  margin:0;max-width:610px;
  color:#4e565a;font-size:16px;line-height:1.55
}
.primary-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}
.primary-cta{
  display:inline-flex;align-items:center;text-decoration:none;
  background:var(--accent);color:#fff;border:1px solid var(--accent);
  padding:10px 13px;font-weight:700;font-size:12px
}
.secondary-cta{font-size:12px;padding:10px 13px}
.profile-section,.video-block{padding:40px 30px;border-bottom:1px solid var(--line)}
.profile-section h2,.video-block h2{
  font-size:22px;line-height:1.18;letter-spacing:-.025em;font-weight:650;
  margin:8px 0 14px;max-width:620px
}
.body-copy{margin:0;color:#555e62;font-size:14px;line-height:1.62;max-width:640px}
.rows{margin-top:18px;border-top:1px solid var(--line)}
.row-item{
  display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:start;
  padding:16px 0;border-bottom:1px solid var(--line)
}
.row-item .num{font-size:10px;color:var(--accent);font-weight:750;padding-top:3px}
.row-item h3{margin:0 0 4px;font-size:15px;font-weight:650}
.row-item p{margin:0;color:var(--muted);font-size:12px;line-height:1.48}
.row-item .arrow{font-size:13px;color:var(--accent)}
.link-rows a{text-decoration:none}
.link-rows a:hover h3{text-decoration:underline;text-underline-offset:3px}
.proofs{display:grid;gap:8px;margin-top:20px}
.proof{
  border:1px solid var(--line);background:var(--soft);
  padding:13px 14px;font-size:13px;line-height:1.45
}
.process{display:grid;gap:0;margin-top:18px;border-top:1px solid var(--line)}
.process div{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}
.process b{font-size:11px;color:var(--accent)}
.process span{font-size:13px}
.video-frame{width:100%;aspect-ratio:16/9;background:#111;border:0}
/* Native video uses its own dimensions, including portrait and square recordings. */
video.video-frame{display:block;width:auto;height:auto;max-width:100%;max-height:80vh;max-height:80svh;aspect-ratio:auto;object-fit:contain;margin-inline:auto}
iframe.video-frame-portrait{display:block;width:min(100%,420px);aspect-ratio:9/16;margin-inline:auto}
.profile-video-stage{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:48px;padding:20px 24px 24px 0;background:transparent}
.profile-video-intro h2{max-width:290px;margin:0 0 20px;font-size:clamp(24px,2.4vw,30px);font-weight:600;line-height:1.15;letter-spacing:-.035em;color:var(--ink)}
.profile-video-intro p{max-width:290px;margin:0 0 28px;font-size:16px;line-height:1.65;color:var(--muted)}
.profile-video-intro span{font-size:13px;line-height:1.5;color:var(--muted)}
.profile-video-stage video.video-frame{display:block;width:190px;height:auto;max-height:none;max-width:100%;margin:0;aspect-ratio:9/16;object-fit:contain;border-radius:8px;box-shadow:none}
.profile-video-stage video::cue{font:600 20px/1.35 Arial,sans-serif;color:white;background:rgba(0,0,0,.72)}
@media(max-width:600px){.profile-video-stage{grid-template-columns:1fr;gap:28px;padding:14px 0 22px}.profile-video-intro h2{max-width:310px;font-size:26px;margin-bottom:14px}.profile-video-intro p{max-width:340px;margin-bottom:16px}.profile-video-stage video.video-frame{width:230px;max-width:100%;height:auto;margin-inline:auto}}
.leadform{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
.leadform input,.leadform textarea{
  border:1px solid var(--line);background:#fff;color:var(--ink);
  padding:11px 12px;outline:none
}
.leadform input:focus,.leadform textarea:focus{border-color:var(--accent)}
.leadform textarea{grid-column:1/-1;min-height:96px;resize:vertical}
.leadform button{
  justify-self:start;background:var(--ink);color:#fff;border:0;padding:10px 14px;font-weight:700
}
.form-status{font-size:12px;color:var(--muted);margin-top:10px}
.public-footer{
  display:flex;justify-content:space-between;gap:14px;align-items:center;
  padding:18px 30px;font-size:10px;font-weight:700;letter-spacing:.05em;color:#858c90
}
.public-footer b{font-weight:800;color:var(--ink)}
.public-footer a{text-decoration:none;color:var(--ink)}
.public-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.loading{text-align:center;padding:80px 20px;color:#7a8286}
.agent-modal{
  position:fixed;inset:0;z-index:80;background:rgba(20,22,23,.36);
  display:grid;place-items:center;padding:24px
}
.agent-panel{
  width:min(620px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;
  background:#fff;border:1px solid var(--line);padding:24px
}
.agent-panel-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.agent-panel h3{font-size:22px;line-height:1.2;margin:7px 0 0;letter-spacing:-.025em}
.agent-close{border:0;background:transparent;font-size:28px;line-height:1;padding:0 4px}
.starters{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}
.starter{
  border:1px solid var(--line);background:var(--soft);
  padding:8px 9px;font-size:11px;text-align:left
}
.starter:hover{border-color:var(--accent)}
 .approved-intro{font-size:12px;color:var(--muted);line-height:1.5;margin:12px 0 4px}.approved-answer{border-top:1px solid var(--line);padding-top:18px;margin-top:12px}.approved-answer h4{font-size:18px;line-height:1.25;margin:14px 0 10px;letter-spacing:-.02em}.approved-answer p{font-size:13px;line-height:1.62;color:#4f595e;margin:0}.answer-back{border:0;background:transparent;padding:0;font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--accent)}.answer-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.answer-links a{border:1px solid var(--line);padding:9px 11px;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--ink);background:#fff}.answer-links a:hover{border-color:var(--accent)}.no-approved{font-size:12px;color:var(--muted);padding:10px 0}.agent-note{font-size:10px;color:#8a9194;margin-top:16px}
.font-serif{--font:Georgia,"Times New Roman",serif}
.font-mono{--font:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.font-rounded{--font:"Avenir Next","Trebuchet MS",system-ui,sans-serif}
@media(max-width:620px){
  .public-wrap{width:calc(100% - 20px);margin:10px auto}
  .public-top{padding:20px 20px 0;align-items:flex-start}
  .top-actions{max-width:70%}
  .identity{padding:42px 20px 44px}
  .profile-section,.video-block{padding:34px 20px}
  .public-footer{padding:16px 20px}
  .leadform{grid-template-columns:1fr}
  .leadform textarea{grid-column:auto}
  .agent-trigger{font-size:9px}
}
.profile-footer-links{display:flex;gap:12px;align-items:center}.profile-footer-links a{text-decoration:none}.profile-footer-links a:hover{text-decoration:underline;text-underline-offset:3px}


/* Free owner-selected light/dark profile theme */
html[data-profile-theme="dark"]{
  --ink:#f2f4f5;--muted:#aeb7bc;--line:#30383d;--paper:#101416;--outside:#080b0d;--soft:#171d20;color-scheme:dark;
}
html[data-profile-theme="dark"] .langs button{color:#9fa9ae}
html[data-profile-theme="dark"] .agent-note,html[data-profile-theme="dark"] .row-item p,html[data-profile-theme="dark"] .body-copy,html[data-profile-theme="dark"] .identity-copy{color:#abb4b9}
html[data-profile-theme="dark"] .answer-links a{background:var(--paper);color:var(--ink)}
