/* R38 public site: approved dark master & brand resources only. Not a copy of the generated concept artwork. */
:root{color-scheme:dark;--d2-bg:#141A23;--d2-raised:#1b2430;--d2-card:#202b39;--d2-line:#344254;--d2-text:#f6f3ed;--d2-muted:#b5becd;--d2-orange:#E39639;--d2-blue:#315EDB;--d2-max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body.pub-root{margin:0;background:var(--d2-bg);color:var(--d2-text);font:400 16px/1.5 "Avenir Next",Avenir,"Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-wrap:anywhere}a{color:inherit}button,select{font:inherit}button,a,select{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--d2-orange);outline-offset:4px}.skip{position:absolute;left:-9999px;z-index:20;background:var(--d2-orange);color:#141A23;padding:12px}.skip:focus{left:12px;top:12px}.wrap{max-width:var(--d2-max);padding-inline:28px;margin-inline:auto}
.pub-nav{display:flex;align-items:center;justify-content:space-between;gap:30px;position:sticky;z-index:10;top:0;padding:8px max(28px,calc((100vw - 1144px)/2));background:rgba(20,26,35,.95);backdrop-filter:blur(16px);border-bottom:1px solid var(--d2-line)}.pub-brand{display:inline-flex;min-width:130px;align-items:center}.pub-brand img{display:block;max-width:100%;height:60px;object-fit:contain}.pub-nav nav{display:flex;gap:23px;align-items:center;flex-wrap:wrap}.pub-nav nav>a{text-decoration:none;color:var(--d2-muted);font-size:14px}.pub-nav nav>a:hover,.pub-inline-link:hover{color:var(--d2-orange)}.pub-language{font-size:13px;color:var(--d2-muted)}.pub-language select{margin-left:0;border:1px solid var(--d2-line);border-radius:7px;padding:7px;background:var(--d2-raised);color:var(--d2-text)}
.pub-hero{min-height:520px;padding-block:72px 74px;display:grid;grid-template-columns:1fr 1.03fr;align-items:center;gap:60px}.pub-kicker{letter-spacing:.13em;color:var(--d2-orange);font-size:12px;font-weight:750;text-transform:uppercase;margin:0 0 12px}.pub-hero h1{font-size:clamp(42px,5.2vw,76px);line-height:1.07;letter-spacing:-.045em;margin:0 0 25px;max-width:610px;font-weight:780}.pub-lead{font-size:19px;line-height:1.55;max-width:540px;color:var(--d2-muted);margin:0 0 29px}.pub-ctas{display:flex;gap:13px;flex-wrap:wrap}.pub-btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:10px 19px;font-weight:700;font-size:15px;text-decoration:none;border:1px solid var(--d2-orange)}.pub-primary{background:var(--d2-orange);color:#141A23}.pub-primary:hover{background:#efad56}.pub-disabled{color:#d6dce4;background:#263141;border-color:#576577;cursor:not-allowed}.pub-signup-note{margin:10px 0 0;color:var(--d2-muted);font-size:13px}.pub-promises{display:flex;flex-wrap:wrap;gap:16px;margin-top:26px;font-size:12px;color:var(--d2-muted)}.pub-promises span{white-space:normal}
.pub-hero-visual{display:flex;align-items:center;gap:12px}.pub-before,.pub-after{min-width:0;flex:1;border-radius:16px;border:1px solid var(--d2-line);background:var(--d2-raised);padding:20px 18px;min-height:280px}.pub-after{background:#202c43;border-color:var(--d2-blue);box-shadow:0 10px 34px rgba(49,94,219,.13)}.pub-minilabel{font-size:12px;font-weight:700;color:#96ace9;text-transform:uppercase;letter-spacing:.07em}.pub-before .pub-minilabel{color:var(--d2-muted)}.pub-before h2,.pub-after h2{font-size:19px;line-height:1.3;letter-spacing:-.02em;margin:18px 0 14px}.pub-before p,.pub-after p{font-size:14px;line-height:1.6;color:#dbe2ea}.pub-before .pub-muted{display:block}.pub-muted{font-size:12px!important;color:var(--d2-muted)!important}.pub-arrow{font-size:24px;color:var(--d2-orange)}
.pub-section{padding:70px 0;border-top:1px solid #2c3644}.pub-section h2{font-size:clamp(29px,3.2vw,42px);line-height:1.16;letter-spacing:-.03em;margin:0 0 10px}.pub-section-intro{color:var(--d2-muted);font-size:16px;max-width:730px;margin:0 0 30px}.pub-how,.pub-pricing{background:#171f29}.pub-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.pub-step{background:var(--d2-raised);border:1px solid var(--d2-line);border-radius:14px;padding:22px;min-height:190px}.pub-stepnum{display:inline-grid;place-items:center;width:33px;height:33px;background:#344c68;color:#f4f8ff;border-radius:50%;font-weight:750}.pub-step h3{margin:20px 0 8px;font-size:17px}.pub-step p{color:var(--d2-muted);margin:0;font-size:14px}
.pub-demo{display:grid;grid-template-columns:minmax(230px,.35fr) minmax(0,1fr);gap:0;min-height:390px;background:#18212d;border-radius:16px;border:1px solid var(--d2-line);overflow:hidden}.pub-demo-sidebar{border-right:1px solid var(--d2-line);padding:19px}.pub-demo-head{font-size:14px;font-weight:700;margin-bottom:16px}.pub-demo-list-button{display:block;width:100%;text-align:left;padding:14px 12px;margin-bottom:8px;background:var(--d2-card);border:1px solid #2c3a4e;color:var(--d2-text);border-radius:9px;cursor:pointer}.pub-demo-list-button[aria-pressed=true]{border-color:var(--d2-orange);box-shadow:inset 3px 0 var(--d2-orange)}.pub-demo-list-button strong{font-size:13px;display:block;line-height:1.35}.pub-demo-list-button small{display:block;margin-top:6px;color:var(--d2-muted);font-size:11px}.pub-demo-story{padding:24px 28px}.pub-demo-storytop{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--d2-muted);font-size:12px}.pub-softbtn,.pub-action,.pub-askq{border:1px solid var(--d2-line);background:#253347;color:var(--d2-text);border-radius:8px;min-height:42px;padding:7px 13px;cursor:pointer}.pub-softbtn:hover,.pub-action:hover,.pub-askq:hover{border-color:var(--d2-orange)}.pub-demo-story h3{font-size:24px;line-height:1.3;margin:18px 0 10px}.pub-demo-story>p{color:var(--d2-muted)}.pub-demo-actions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 15px}.pub-action[aria-pressed=true]{border-color:var(--d2-blue);background:#315edb;color:#fff}.pub-demo-output{background:#1c2b46;border:1px solid #3d5fbb;border-radius:12px;padding:19px;min-height:155px}.pub-demo-output ul{margin:10px 0 0;padding-left:22px}.pub-demo-output li{margin:9px 0;color:#e1e8f2;font-size:14px}.pub-ask-questions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.pub-askq{font-size:12px}.pub-askq[aria-pressed=true]{border-color:var(--d2-orange)}.pub-demo-output p[data-ask-answer]{color:#e4eaf4;font-size:14px}.pub-demo-disclaimer,.pub-trial-line{color:var(--d2-muted);font-size:13px;max-width:900px;margin:15px 0 0}.pub-trial-line{color:#e3ad65}
.pub-plan-grid{display:grid;grid-template-columns:1fr 1fr;max-width:900px;gap:22px}.pub-plan{background:#1c2733;border:1px solid var(--d2-line);border-radius:15px;padding:27px}.pub-plan:nth-child(2){border-color:#45659c}.pub-plan h3{font-size:23px;margin:0 0 8px}.pub-price{font-size:40px;font-weight:750;margin:14px 0 20px}.pub-price-pending{font-size:19px;color:var(--d2-muted);min-height:47px}.pub-plan ul{list-style:none;margin:0 0 23px;padding:0}.pub-plan li{margin:10px 0;color:#dce3ea;font-size:15px}.pub-plan li:before{content:"✓";color:var(--d2-orange);margin-right:10px}.pub-legal-cta{padding-block:48px}.pub-legal-cta p{color:var(--d2-muted)}.pub-inline-link{color:var(--d2-orange);text-decoration:none;font-weight:700}
.pub-footer{display:flex;gap:25px;flex-wrap:wrap;align-items:center;justify-content:space-between;border-top:1px solid var(--d2-line);padding:22px max(28px,calc((100vw - 1144px)/2));color:var(--d2-muted);font-size:12px}.pub-footer img{object-fit:contain}.pub-footer p{flex:1}.pub-footer div{display:flex;flex-wrap:wrap;gap:15px}.pub-footer a{text-decoration:none}.pub-footer a:hover{color:var(--d2-orange)}
.pub-legal-main{padding-block:64px 88px;max-width:930px;min-height:75vh}.pub-legal-main h1{font-size:clamp(29px,3vw,45px);letter-spacing:-.03em}.pub-legal-warning{padding:20px 22px;border:1px solid #926b34;background:#392e23;border-radius:12px;margin:27px 0;color:#ffdfaf}.pub-legal-links{display:flex;flex-wrap:wrap;gap:12px}.pub-legal-links a{color:#c5d7f8;text-decoration:none;background:#263448;padding:8px 12px;border-radius:8px}.pub-legal-section{border-bottom:1px solid var(--d2-line);padding:28px 0}.pub-legal-section h2{font-size:24px}.pub-legal-section p{color:var(--d2-muted)}
@media(max-width:1050px){.pub-nav{padding:7px 20px}.pub-nav nav{gap:13px}.pub-hero{gap:30px}.pub-hero-visual{gap:8px}.pub-before,.pub-after{padding:14px}.pub-after h2,.pub-before h2{font-size:16px}}@media(max-width:780px){.pub-nav{position:relative;flex-wrap:wrap;gap:0;padding:8px 16px}.pub-brand img{height:50px}.pub-nav nav{width:100%;gap:10px 14px;padding:0 0 10px;justify-content:flex-start}.pub-nav nav>a{font-size:12px}.pub-language{margin-left:auto}.wrap{padding-inline:20px}.pub-hero{grid-template-columns:1fr;min-height:auto;padding-block:45px;gap:32px}.pub-hero h1{font-size:clamp(42px,10vw,66px)}.pub-hero-visual{max-width:580px}.pub-before,.pub-after{min-height:240px}.pub-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.pub-section{padding-block:52px}.pub-demo{grid-template-columns:1fr}.pub-demo-sidebar{border-right:0;border-bottom:1px solid var(--d2-line)}.pub-demo-story{padding:20px}.pub-plan-grid{grid-template-columns:1fr}.pub-footer{padding-inline:20px}}@media(max-width:390px){.pub-hero h1{font-size:42px}.pub-hero-visual{gap:5px}.pub-before,.pub-after{padding:11px;min-height:260px}.pub-before h2,.pub-after h2{font-size:15px}.pub-before p,.pub-after p{font-size:12px}.pub-arrow{font-size:17px}.pub-steps{grid-template-columns:1fr}.pub-demo-story h3{font-size:20px}.pub-ctas{flex-direction:column}.pub-ctas>*{width:100%}.pub-price{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* R38 v1.1 public style parity: values copied from the existing APPROVED
   app dark surfaces, V12 amber sidebar signature, V17.9 selected corners.
   Scope only to .pub-root; do not import global app CSS into public views. */
body.pub-root{
  font-family:"Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:radial-gradient(ellipse 52% 65% at -4% 3%,rgba(116,132,147,.23),transparent 76%),radial-gradient(ellipse 36% 42% at 102% 90%,rgba(178,124,74,.085),transparent 79%),linear-gradient(121deg,#27313d 0%,#1b2635 46%,#101a29 100%);
  background-attachment:fixed;
}
.pub-root{
  --d2-raised:#1d2b3c;--d2-card:#111827;--d2-line:#415B76;
  --d2-muted:#a8b8ca;--d2-text:#edf3fa;--d2-app-read:#1C2B3E;
  --d2-app-ai:#111C2F;--d2-app-accent:#82aaff;
}
.pub-root .pub-hero h1,.pub-root .pub-section h2,.pub-root .pub-step h3,
.pub-root .pub-demo-story h3,.pub-root .pub-plan h3{font-family:inherit;font-weight:850}
.pub-root .pub-headline-line{display:block;max-width:100%;white-space:nowrap}
.pub-root[data-pub-lang="hu"] .pub-headline-long{font-size:.79em;letter-spacing:-.055em}
.pub-root .pub-before,.pub-root .pub-after,.pub-root .pub-step,
.pub-root .pub-plan,.pub-root .pub-demo,.pub-root .pub-demo-list-button,
.pub-root .pub-demo-output{border-radius:11px}
.pub-root .pub-before,.pub-root .pub-step,.pub-root .pub-plan{
 background:#111827;border:1px solid #415B76;box-shadow:0 6px 20px rgba(0,0,0,.38)
}
.pub-root .pub-after{background:#111C2F;border:1px solid #334155;box-shadow:0 6px 20px rgba(0,0,0,.38)}
.pub-root .pub-demo{
 background:#060E18;border:1px solid #415B76;
 box-shadow:0 12px 28px rgba(0,0,0,.23);overflow:hidden
}
.pub-root .pub-demo-sidebar{
 position:relative;background:linear-gradient(151deg,#1d2b3c,#182536);
 border-right:1px solid #34465a;padding:18px 16px 22px
}
.pub-root .pub-demo-sidebar::before{
 content:"";position:absolute;top:11px;bottom:11px;left:0;width:2px;
 background:linear-gradient(transparent,rgba(224,164,84,.66) 34%,rgba(220,155,77,.22) 77%,transparent);
 box-shadow:0 0 8px rgba(214,152,77,.18);pointer-events:none
}
.pub-root .pub-demo-sidebar .pub-demo-head{font-size:14px;font-weight:800;color:#d3dfed}
.pub-root .pub-demo-list-button{
 background:rgba(22,32,46,.65);border:1px solid #34465a;
 color:#dce6ef;box-shadow:none;min-height:70px
}
.pub-root .pub-demo-list-button[aria-pressed="true"]{
 border-color:#7490b0;background:#2b3e55;box-shadow:inset 3px 0 #91b6d8
}
.pub-root .pub-demo-list-button strong{font-size:14px;font-weight:750}
.pub-root .pub-demo-story{
 position:relative;margin:15px;padding:22px 24px;background:#111827;
 border:1px solid #415B76;border-radius:11px;min-width:0
}
.pub-root .pub-demo-story::before,.pub-root .pub-demo-story::after{
 content:"";position:absolute;width:clamp(38px,11%,68px);aspect-ratio:1/1;
 background:var(--d2-app-accent);
 -webkit-mask:url("/d2-corner-mask.svg") center / 100% 100% no-repeat;
 mask:url("/d2-corner-mask.svg") center / 100% 100% no-repeat;
 pointer-events:none
}
.pub-root .pub-demo-story::before{top:0;left:0}
.pub-root .pub-demo-story::after{bottom:0;right:0;transform:rotate(180deg)}
.pub-root .pub-demo-storytop{justify-content:flex-start}
.pub-root .pub-demo-story>p{color:#dce4ee;line-height:1.48}
.pub-root .pub-demo-analysis{
 background:var(--d2-app-ai);border:1px solid #334155;border-radius:9px;
 padding:12px;margin-top:19px;min-width:0
}
.pub-root .pub-demo-actions{margin:0 0 12px;gap:7px}
.pub-root .pub-action{
 border-radius:7px;min-height:38px;padding:7px 11px;
 background:#172033;color:#93C5FD;border:1px solid #3B4A61;
 font-size:14px;font-weight:700
}
.pub-root .pub-action[aria-pressed="true"]{background:#315EDB;color:#fff;border-color:#315EDB}
.pub-root .pub-demo-output{background:transparent;border:0;padding:8px 10px 12px;min-height:128px}
.pub-root .pub-demo-output .pub-minilabel{color:#a8b8ca;font-size:12px;letter-spacing:0;text-transform:none}
.pub-root .pub-ai-bullet-list{padding-left:20px;margin-top:14px}
.pub-root .pub-ai-bullet-list li{
 font:400 16px/1.48 "Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 color:#dce4ee
}
.pub-root .pub-ai-bullet-list li::marker{color:var(--d2-orange)}
.pub-root .pub-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
.pub-root .pub-step{min-height:175px}
.pub-root .pub-stepnum{background:#344c68}
.pub-root .pub-askq{background:#172033;color:#dce4ee;border-color:#3B4A61;border-radius:7px}
.pub-root .pub-askq[aria-pressed="true"]{border-color:#82aaff}
@media(max-width:780px){
 .pub-root .pub-demo-sidebar{border-right:0;border-bottom:1px solid #34465a}
 .pub-root .pub-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pub-root .pub-demo-story{margin:12px;padding:18px 15px}
}
@media(max-width:590px){
 .pub-root .pub-steps{grid-template-columns:1fr}
 .pub-root .pub-step{min-height:0}
}
@media(max-width:390px){
 .pub-root[data-pub-lang="hu"] .pub-headline-long{font-size:.72em;letter-spacing:-.055em}
}
