:root{
  --bg:#f4f7fb;
  --bg-2:#eef3fb;
  --panel:#ffffff;
  --panel-soft:#f8fbff;
  --text:#0f172a;
  --muted:#64748b;
  --line:#dbe5f1;
  --line-strong:#cbd8ea;
  --brand:#2155f3;
  --brand-dark:#173caa;
  --brand-soft:#eaf0ff;
  --success:#159857;
  --warn:#d97706;
  --danger:#cb3a31;
  --header:#0f172a;
  --shadow:0 18px 42px rgba(15,23,42,.07);
  --shadow-soft:0 10px 24px rgba(15,23,42,.05);
  --radius:24px;
  --radius-sm:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Segoe UI,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(33,85,243,.06), transparent 30%),
    linear-gradient(180deg,var(--bg-2) 0%, var(--bg) 42%, #f8fafc 100%);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:var(--brand);text-decoration:none;transition:.2s ease}
a:hover{opacity:.92}
.container{width:min(1200px,92vw);margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:40;
  background:rgba(15,23,42,.88);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(2,6,23,.15);
}
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 0;
  gap:18px;
}
.brand{
  display:inline-flex;align-items:center;gap:10px;
  color:#fff;font-size:1.12rem;font-weight:800;letter-spacing:.2px;
}
.brand::before{
  content:"";
  width:12px;height:12px;border-radius:999px;
  background:linear-gradient(180deg,#80a8ff,#2155f3);
  box-shadow:0 0 0 6px rgba(127,164,255,.15);
}
.nav nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nav nav a{
  color:#dbe7ff;
  padding:10px 14px;
  border-radius:12px;
  font-weight:700;
}
.nav nav a:hover{background:rgba(255,255,255,.08)}

.main-wrap{padding:34px 0 72px}
.site-footer{
  background:rgba(255,255,255,.75);
  border-top:1px solid var(--line);
  backdrop-filter:blur(8px);
}
.footer-inner{
  display:flex;justify-content:space-between;gap:16px;
  color:var(--muted);font-size:.95rem;padding:18px 0;
}

.hero{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:24px;
  align-items:stretch;
  margin-top:8px;
}
.hero-text,.hero-card,.card,.table-card,.empty-state{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(219,229,241,.95);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero-text{
  position:relative;
  overflow:hidden;
  padding:40px;
}
.hero-text::after{
  content:"";
  position:absolute;right:-60px;top:-40px;
  width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle, rgba(33,85,243,.16), transparent 65%);
}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--brand-soft);
  color:var(--brand-dark);
  border:1px solid #d7e2ff;
  border-radius:999px;
  padding:8px 14px;
  font-size:.84rem;font-weight:800;
  margin-bottom:16px;
}
.hero-text h1{
  font-size:clamp(2.45rem,4vw,4rem);
  line-height:1.02;margin:0 0 16px;
  max-width:11ch;letter-spacing:-.03em;
}
.hero-text p{
  margin:0;
  font-size:1.05rem;
  color:var(--muted);
  max-width:58ch;
  line-height:1.75;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.hero-card{
  padding:28px;
  display:flex;flex-direction:column;justify-content:space-between;gap:20px;
  background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);
}
.mini-kpi{
  display:grid;gap:8px;
  padding:18px 18px 14px;
  border-radius:18px;
  background:var(--panel-soft);
  border:1px solid var(--line);
}
.mini-kpi span{color:var(--muted);font-weight:700;font-size:.92rem}
.mini-kpi strong{font-size:1.35rem;line-height:1.3}
.mini-chart{
  display:flex;align-items:flex-end;gap:12px;height:200px;
  padding:8px 6px 0;
}
.bar{
  flex:1;border-radius:18px 18px 10px 10px;
  background:linear-gradient(180deg,#8db0ff,#2155f3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), 0 10px 22px rgba(33,85,243,.18);
}
.bar1{height:52px}.bar2{height:84px}.bar3{height:116px}.bar4{height:150px}.bar5{height:184px}
.bullet-list{margin:0;padding-left:1.1rem;color:var(--muted);line-height:1.7}

.feature-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  margin-top:24px;
}
.card{
  padding:26px;
  transition:transform .18s ease, box-shadow .18s ease;
}
.card:hover{transform:translateY(-2px);box-shadow:0 22px 46px rgba(15,23,42,.09)}
.card h2,.card h3{margin:0 0 10px}
.card p{line-height:1.75}

.auth-wrap{display:flex;justify-content:center;padding-top:30px}
.auth-card{width:min(460px,100%);display:flex;flex-direction:column;gap:10px}

label{
  display:block;margin:0 0 8px;
  font-size:.93rem;font-weight:800;color:#334155;
}
input,select,textarea{
  width:100%;
  padding:14px 15px;
  border-radius:15px;
  border:1px solid var(--line);
  background:#fff;
  font-size:1rem;
  outline:none;
  color:var(--text);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}
input:focus,select:focus,textarea:focus{
  border-color:#87a7ff;
  box-shadow:0 0 0 4px rgba(33,85,243,.10);
  transform:translateY(-1px);
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  border:none;border-radius:14px;
  padding:12px 18px;
  font-weight:800;cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{
  background:linear-gradient(180deg,#3368ff,#2155f3);
  color:#fff;
  box-shadow:0 12px 24px rgba(33,85,243,.24);
}
.btn-primary:hover{background:linear-gradient(180deg,#2b5df4,#1747d8)}
.btn-secondary{
  background:#eef3ff;color:var(--brand-dark);
  border:1px solid #dce6ff;
}
.btn-secondary:hover{background:#e5edff}
.btn-large{padding:14px 22px;font-size:1rem}

.muted{color:var(--muted)}
.flash-stack{display:grid;gap:10px;margin-bottom:18px}
.flash{
  padding:15px 17px;border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.92);
  box-shadow:var(--shadow-soft);
}
.flash.error{border-color:#f2c1c1;background:#fff4f4;color:#8d1d1d}
.flash.success{border-color:#cfe8da;background:#f1fff7;color:#16643a}

.page-head{
  display:flex;justify-content:space-between;align-items:flex-start;
  gap:18px;margin-bottom:20px;
}
.page-head h1{
  margin:0 0 8px;
  font-size:clamp(2rem,3vw,2.8rem);
  letter-spacing:-.03em;
}
.head-actions{display:flex;gap:10px;flex-wrap:wrap}

.grid-form{display:grid;gap:18px}
.form-section{
  position:relative;
  overflow:hidden;
}
.form-section::before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,#2155f3,#7fa4ff);
}
.form-section h2{
  margin:0 0 18px;
  padding-left:4px;
  font-size:1.22rem;
}
.field-grid{display:grid;gap:16px}
.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.submit-row{display:flex;justify-content:flex-end;padding-top:6px}

.table-card{padding:0;overflow:auto}
.table{
  width:100%;border-collapse:separate;border-spacing:0;
  min-width:840px;
}
.table th,.table td{
  padding:16px 18px;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
}
.table th{
  text-align:left;background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%);
  font-size:.89rem;color:#516073;
  font-weight:800;
}
.table tr:hover td{background:#fbfdff}
.table tbody tr:last-child td{border-bottom:none}
.right{text-align:right}
.actions-cell{display:flex;gap:14px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.text-btn{background:none;border:none;padding:0;cursor:pointer;font:inherit}
.text-btn.danger{color:var(--danger);font-weight:700}

.status{
  display:inline-flex;align-items:center;
  padding:7px 11px;border-radius:999px;
  font-size:.78rem;font-weight:900;letter-spacing:.3px;
}
.status.green{background:#e8fbf0;color:#0f7a46}
.status.yellow{background:#fff5df;color:#a05a00}
.status.red{background:#ffe7e7;color:#b12020}
.empty-state{text-align:center;padding:50px 28px}
.empty-state h3{margin-bottom:8px}
.empty-state p{margin:0 0 18px;color:var(--muted)}

.report-grid{
  display:grid;grid-template-columns:300px minmax(0,1fr);
  gap:20px;align-items:start;
}
.report-side{
  display:grid;gap:18px;
  align-self:start;position:sticky;top:92px;
}
.stat-card{
  padding:24px;
  border-radius:22px;
}
.stat-card span{
  display:block;color:var(--muted);
  margin-bottom:8px;font-weight:700;
}
.stat-card strong{font-size:1.3rem;line-height:1.3}
.status-big{font-size:1.55rem;font-weight:900}
.status-big.green{color:var(--success)}
.status-big.yellow{color:var(--warn)}
.status-big.red{color:var(--danger)}

.report-main{display:grid;gap:18px}
.report-card{padding:28px}
.report-card h2{
  font-size:1.28rem;
  margin:0 0 14px;
  letter-spacing:-.02em;
}
.report-card p{
  margin:0 0 14px;
  line-height:1.8;
  color:#334155;
}
.report-card p:last-child{margin-bottom:0}
.report-card .table-card{
  margin-top:16px;
  border-radius:18px;
  border:1px solid var(--line);
  box-shadow:none;
}
.chart-image,.chart-svg svg{
  width:100%;
  border-radius:20px;
  border:1px solid var(--line);
  background:#fff;
  margin-top:14px;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}
.chart-svg{
  margin-top:14px;
  border-radius:20px;
  overflow:hidden;
}
.chart-svg svg{display:block;height:auto}

.scenario-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;margin-top:18px;
}
.scenario-card{
  background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
  box-shadow:var(--shadow-soft);
}
.scenario-card span{
  display:block;color:var(--muted);
  margin-bottom:8px;font-weight:700;
}
.scenario-card strong{
  font-size:1.18rem;
  line-height:1.35;
}

.clean-list,.report-bullets{padding-left:1.15rem}
.clean-list li,.report-bullets li{
  margin-bottom:10px;line-height:1.72;color:#334155;
}
.recommendation{
  padding:16px 0;border-top:1px solid var(--line);
}
.recommendation:first-of-type{border-top:none;padding-top:0}
.recommendation h3{margin:0 0 8px;font-size:1.02rem}

form.card{
  box-shadow:var(--shadow-soft);
}
code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}

@media (max-width: 1100px){
  .hero{grid-template-columns:1fr}
  .feature-grid,.report-grid,.field-grid.three{grid-template-columns:1fr}
  .field-grid.two{grid-template-columns:1fr}
  .report-side{position:static}
}
@media (max-width: 760px){
  .container{width:min(94vw,1200px)}
  .nav{padding:14px 0;align-items:flex-start}
  .nav nav{gap:8px}
  .nav nav a{padding:8px 10px}
  .hero-text,.hero-card,.card,.report-card{padding:22px}
  .page-head{flex-direction:column}
  .head-actions,.hero-actions,.submit-row{width:100%}
  .head-actions .btn,.hero-actions .btn,.submit-row .btn{width:100%}
  .footer-inner{flex-direction:column}
}

textarea{min-height:132px;resize:vertical;line-height:1.6;}

/* Purple Modern hierarchy add-on */
.org-builder{display:grid;gap:12px}
.org-helper{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px;border:1px solid #eadcff;border-radius:18px;
  background:linear-gradient(135deg,#fbf8ff 0%,#ffffff 70%);
}
.org-helper strong{color:#2f2442;font-size:1rem}
.org-helper p{margin:.35rem 0 0}
.org-tips{display:flex;flex-wrap:wrap;gap:8px}
.org-tips span{
  padding:8px 11px;border-radius:999px;background:#f3eafe;color:#5d2c91;
  border:1px solid #e3cffb;font-weight:800;font-size:.82rem;
}
.mini-hierarchy-card{
  padding:18px;border-radius:20px;border:1px solid #eadcff;background:#fff;
  display:grid;place-items:center;gap:10px;overflow:hidden;
}
.mini-node.root{
  width:74px;height:74px;border-radius:50%;display:grid;place-items:center;
  background:#9B51E0;color:#fff;font-weight:900;box-shadow:0 14px 28px rgba(155,81,224,.22);
}
.mini-lines{display:flex;gap:34px;justify-content:center;position:relative;width:260px;height:22px}
.mini-lines:before{content:"";position:absolute;top:0;left:46px;right:46px;height:2px;background:#bfa2ea}
.mini-lines:after{content:"";position:absolute;top:-12px;left:50%;width:2px;height:14px;background:#bfa2ea}
.mini-lines i{display:block;width:2px;height:22px;background:#bfa2ea}
.mini-children{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.mini-children span{
  width:78px;height:78px;border-radius:50%;display:grid;place-items:center;text-align:center;
  color:#2f2442;border:2px solid #9B51E0;background:#fff;font-weight:900;font-size:.76rem;
  box-shadow:0 10px 22px rgba(47,36,66,.08);
}
.hierarchy-preview{margin-top:22px;padding:16px;border:1px solid #eadcff;border-radius:24px;background:linear-gradient(180deg,#ffffff,#fcfaff);overflow:hidden}
.hierarchy-preview-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;color:#7a6a90;font-weight:800}
.hierarchy-preview-head strong{color:#9B51E0}
.hierarchy-preview svg{display:block;width:100%;height:auto;max-height:560px}
@media (max-width:760px){.org-helper{align-items:stretch;flex-direction:column}.mini-lines{width:220px;gap:26px}.mini-children span{width:68px;height:68px}.hierarchy-preview svg{min-width:620px}.hierarchy-preview{overflow:auto}}

/* Easier hierarchy fulfillment panel */
.hierarchy-builder-panel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:16px;
  border:1px solid #eadcff;
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff 0%,#fbf8ff 100%);
}
.hierarchy-builder-panel label{font-size:.82rem;color:#5d2c91}
.hierarchy-builder-panel textarea{min-height:118px}
.builder-actions{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.builder-actions .text-btn{font-weight:900;color:#7b46b8}
@media (max-width:960px){.hierarchy-builder-panel{grid-template-columns:1fr}}

/* Smart hierarchy builder upgrade */
.hierarchy-smart-builder textarea[readonly]{background:#fbfaff;border:1px dashed rgba(155,81,224,.45)}
.smart-org-header{align-items:flex-start;gap:16px}
.hierarchy-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 16px}
.flow-step{display:flex;align-items:center;gap:8px;border:1px solid rgba(155,81,224,.18);background:linear-gradient(180deg,#fff,#fbf8ff);border-radius:14px;padding:10px 12px;font-size:13px;color:#5d4a72}
.flow-step b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:#9B51E0;color:#fff;font-size:13px}
.org-row-head,.org-row{display:grid;grid-template-columns:1fr 1.45fr 1.35fr 1.35fr 42px;gap:8px;align-items:center}
.org-row-head{font-size:12px;color:#7a6a90;font-weight:700;margin:10px 0 6px;padding:0 6px;text-transform:uppercase;letter-spacing:.04em}
.org-rows{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.org-row{background:#fff;border:1px solid #eee6fa;border-radius:16px;padding:8px;box-shadow:0 8px 24px rgba(43,22,74,.04)}
.org-row select,.org-row input{width:100%;min-height:42px;border:1px solid #ddd4ea;border-radius:12px;padding:8px 10px;background:#fff;color:#1f1630;font:inherit}
.org-row select:focus,.org-row input:focus{outline:none;border-color:#9B51E0;box-shadow:0 0 0 3px rgba(155,81,224,.13)}
.org-remove{width:36px;height:36px;border-radius:50%;border:0;background:#f5eefc;color:#9B51E0;font-size:24px;line-height:1;cursor:pointer}
.org-remove:hover{background:#9B51E0;color:#fff}
.smart-actions{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 12px}
.smart-actions .btn-primary{background:#9B51E0;border-color:#9B51E0;color:#fff}
@media (max-width: 900px){.hierarchy-flow{grid-template-columns:1fr 1fr}.org-row-head{display:none}.org-row{grid-template-columns:1fr}.org-remove{justify-self:end}}

/* Professional visual design upgrade — presentation polish only */
:root{
  --bg:#eef3f8;
  --bg-2:#e7edf6;
  --panel:#ffffff;
  --panel-soft:#f7f9fd;
  --text:#0a1020;
  --muted:#66758c;
  --line:#d9e2ef;
  --line-strong:#bdcbe0;
  --brand:#1f4ed8;
  --brand-dark:#102f86;
  --brand-soft:#eaf0ff;
  --header:#111827;
  --shadow:0 24px 70px rgba(15,23,42,.10);
  --shadow-soft:0 12px 34px rgba(15,23,42,.07);
  --radius:28px;
  --radius-sm:18px;
}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 16% -5%, rgba(31,78,216,.16), transparent 34%),
    radial-gradient(circle at 84% 0%, rgba(86,117,255,.12), transparent 32%),
    linear-gradient(180deg,#eaf0f8 0%,#f6f8fb 48%,#eef3f8 100%);
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(15,23,42,.025) 1px, transparent 1px),linear-gradient(90deg,rgba(15,23,42,.025) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.7), transparent 70%);
}
.container{width:min(1260px,92vw)}
.site-header{
  background:rgba(12,18,32,.92);
  border-bottom:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 50px rgba(2,6,23,.20);
}
.nav{padding:16px 0}
.brand{font-size:1.04rem;letter-spacing:.01em}
.brand::before{
  width:34px;height:34px;border-radius:12px;
  background:linear-gradient(135deg,#ffffff 0%,#dce7ff 42%,#1f4ed8 100%);
  box-shadow:0 12px 28px rgba(31,78,216,.34), inset 0 1px 0 rgba(255,255,255,.6);
}
.nav nav a{
  color:#e8efff;
  border:1px solid transparent;
  background:rgba(255,255,255,.03);
}
.nav nav a:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.10)}
.main-wrap{padding:42px 0 82px}
.hero{
  grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);
  gap:30px;
}
.hero-text,.hero-card,.card,.table-card,.empty-state{
  border:1px solid rgba(205,216,232,.86);
  box-shadow:var(--shadow);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(18px);
}
.hero-text{
  padding:52px 42px;
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.82) 52%,rgba(235,241,255,.85) 100%);
}
.hero-text::after{
  right:-120px;top:-100px;width:360px;height:360px;
  background:radial-gradient(circle,rgba(31,78,216,.18),transparent 68%);
}
.eyebrow{
  padding:9px 16px;
  background:rgba(234,240,255,.9);
  border-color:#cfdcff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.hero-text h1{
  max-width:12ch;
  font-size:clamp(3.1rem,5.4vw,5.75rem);
  line-height:.96;
  letter-spacing:-.065em;
  color:#080e20;
}
.hero-text p{font-size:1.15rem;line-height:1.85;max-width:62ch;color:#61708a}
.hero-card{
  padding:34px 34px 30px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,251,255,.92));
}
.mini-kpi{
  border-radius:24px;
  padding:22px 24px;
  background:linear-gradient(180deg,#f9fbff,#fff);
}
.mini-kpi strong{font-size:1.55rem;color:#0b1328}
.mini-chart{height:280px;gap:16px;padding:28px 8px 0;align-items:flex-end}
.bar{border-radius:22px 22px 12px 12px;background:linear-gradient(180deg,#9ab7ff 0%,#4b78f6 55%,#2456e8 100%);box-shadow:0 22px 36px rgba(31,78,216,.22), inset 0 1px 0 rgba(255,255,255,.55)}
.bar1{height:70px}.bar2{height:112px}.bar3{height:154px}.bar4{height:200px}.bar5{height:246px}
.bullet-list{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px 24px 20px 42px;box-shadow:var(--shadow-soft)}
.feature-grid{gap:22px;margin-top:30px}
.card{padding:30px;border-radius:26px}
.card h2,.card h3{letter-spacing:-.025em;color:#0a1020}
.card p{color:#52627a}
.btn{border-radius:16px;padding:13px 19px;letter-spacing:.01em}
.btn-primary{background:linear-gradient(135deg,#255bea,#163db4);box-shadow:0 16px 34px rgba(31,78,216,.28)}
.btn-secondary{background:#fff;color:#173caa;border:1px solid #d8e2f4;box-shadow:0 10px 24px rgba(15,23,42,.06)}
input,select,textarea{
  border-radius:16px;
  border-color:#d4deec;
  background:linear-gradient(180deg,#fff,#fbfdff);
  min-height:52px;
}
textarea{min-height:148px}
label{font-size:.88rem;text-transform:none;letter-spacing:.01em;color:#2f3a4e}
.page-head{
  padding:30px 32px;
  border:1px solid rgba(205,216,232,.88);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(248,251,255,.88));
  box-shadow:var(--shadow-soft);
}
.page-head h1{font-size:clamp(2.35rem,4vw,3.55rem);line-height:1.02;color:#080e20}
.form-section{background:rgba(255,255,255,.92)}
.form-section::before{width:5px;background:linear-gradient(180deg,#244fe0,#8aa8ff)}
.form-section h2{font-size:1.35rem;margin-bottom:22px}
.field-grid{gap:18px}
.table-card{border-radius:26px;overflow:hidden}
.table th{background:#f1f5fb;color:#42526a;padding:18px 20px}
.table td{padding:18px 20px;background:rgba(255,255,255,.88)}
.table tr:hover td{background:#f7faff}
.status{box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.report-grid{grid-template-columns:330px minmax(0,1fr);gap:24px}
.report-side{gap:20px}
.stat-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid var(--line)}
.stat-card strong{font-size:1.45rem}
.report-card{padding:34px;border-radius:28px}
.report-card h2{font-size:1.45rem;margin-bottom:18px;color:#0a1020}
.scenario-grid{gap:16px}
.scenario-card{border-radius:22px;padding:22px;background:linear-gradient(180deg,#fff,#f8fbff);border-color:#dbe5f1}
.chart-image,.chart-svg svg{border-radius:24px;border-color:#d8e2ef;box-shadow:0 16px 40px rgba(15,23,42,.07)}
.recommendation{padding:20px 0}
.site-footer{background:rgba(255,255,255,.72);border-top:1px solid rgba(205,216,232,.8)}
.footer-inner{padding:22px 0}

/* Professional input/hierarchy builder polish */
.org-helper,.hierarchy-preview,.hierarchy-builder-panel{
  border-color:#d8e2ef;
  background:linear-gradient(135deg,#fff 0%,#f7faff 100%);
  box-shadow:var(--shadow-soft);
}
.org-tips span{background:#eef3ff;color:#173caa;border-color:#d8e4ff}
.hierarchy-smart-builder textarea[readonly]{background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%);border:1px dashed #b9c8e2;color:#42526a}
.hierarchy-flow{gap:12px}
.flow-step{border-color:#d8e2ef;background:linear-gradient(180deg,#fff,#f8fbff);color:#52627a;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.flow-step b{background:#1f4ed8;box-shadow:0 8px 16px rgba(31,78,216,.25)}
.org-row{border-color:#dbe5f1;border-radius:18px;box-shadow:0 12px 28px rgba(15,23,42,.055)}
.org-row select,.org-row input{border-color:#d7e0ee;background:#fff;border-radius:14px}
.org-row select:focus,.org-row input:focus{border-color:#6e91f8;box-shadow:0 0 0 4px rgba(31,78,216,.10)}
.org-remove{background:#eef3ff;color:#1f4ed8}
.org-remove:hover{background:#1f4ed8;color:#fff}
.smart-actions .btn-primary{background:linear-gradient(135deg,#255bea,#163db4);border-color:transparent}
.hierarchy-preview-head strong{color:#0f2f86}
.mini-node.root{background:#1f4ed8;box-shadow:0 14px 28px rgba(31,78,216,.22)}
.mini-lines:before,.mini-lines:after,.mini-lines i{background:#9fb3d8}
.mini-children span{border-color:#1f4ed8;color:#12224a}

@media (max-width:1100px){.hero{grid-template-columns:1fr}.hero-text{min-height:auto}.report-grid{grid-template-columns:1fr}}
@media (max-width:760px){.main-wrap{padding-top:26px}.page-head{padding:24px}.hero-text{padding:34px 24px}.hero-text h1{font-size:3.1rem}.mini-chart{height:210px}.card,.report-card{padding:24px}.nav{align-items:center}.nav nav{justify-content:flex-end}}

/* Cinematic landing page redesign — visualization only */
.landing-cinematic{
  position:relative;
  width:100vw;
  min-height:720px;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  margin-top:-34px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:116px min(7vw,96px) 88px;
  color:#fff;
  isolation:isolate;
  background:
    linear-gradient(115deg,rgba(5,10,24,.88) 0%,rgba(8,13,31,.78) 43%,rgba(17,24,44,.58) 100%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.14),transparent 20%),
    radial-gradient(circle at 78% 36%,rgba(79,113,255,.34),transparent 28%),
    linear-gradient(135deg,#101827 0%,#1d2840 48%,#433222 100%);
}
.landing-cinematic::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-4;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 100%),
    linear-gradient(180deg,rgba(255,255,255,.05) 0 1px,transparent 1px 100%);
  background-size:96px 96px;
  opacity:.32;
}
.landing-cinematic::after{
  content:"";
  position:absolute;
  right:4%;bottom:0;
  width:min(44vw,600px);height:min(58vw,680px);
  z-index:-2;
  opacity:.55;
  background:
    radial-gradient(ellipse at 48% 18%,rgba(255,255,255,.95) 0 4%,transparent 4.2%),
    linear-gradient(180deg,transparent 0 13%,rgba(255,255,255,.18) 13% 14%,transparent 14.2% 100%),
    linear-gradient(90deg,transparent 0 32%,rgba(255,255,255,.12) 32% 34%,transparent 34% 100%),
    radial-gradient(ellipse at 50% 58%,rgba(255,255,255,.13),transparent 52%);
  filter:blur(.2px);
  border-radius:46% 46% 0 0;
}
.landing-bg-grid{
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    radial-gradient(circle at 22% 40%,rgba(255,180,93,.23),transparent 22%),
    radial-gradient(circle at 67% 22%,rgba(63,101,255,.38),transparent 24%),
    linear-gradient(120deg,transparent 0 51%,rgba(255,255,255,.06) 51% 51.5%,transparent 51.5% 100%);
}
.landing-overlay{
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(7,12,25,.52),rgba(7,12,25,.28) 55%,rgba(7,12,25,.64)),
    linear-gradient(180deg,rgba(7,12,25,.1),rgba(7,12,25,.72));
}
.landing-hero-content{
  width:min(940px,92vw);
  text-align:center;
  margin:0 auto;
  position:relative;
  z-index:2;
}
.landing-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  color:#fff;
  backdrop-filter:blur(14px);
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
.landing-hero-content h1{
  margin:28px auto 18px;
  max-width:980px;
  color:#fff;
  font-size:clamp(3.2rem,7.2vw,6.9rem);
  line-height:.94;
  letter-spacing:-.075em;
  text-shadow:0 18px 54px rgba(0,0,0,.44);
}
.landing-hero-content p{
  max-width:760px;
  margin:0 auto;
  color:rgba(255,255,255,.82);
  font-size:clamp(1rem,1.5vw,1.22rem);
  line-height:1.8;
  font-weight:600;
}
.landing-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-top:34px;
}
.landing-primary,.landing-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 26px;
  border-radius:0;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.78rem;
  font-weight:900;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.landing-primary{
  color:#0b1224;
  background:#fff;
  border:2px solid #fff;
  box-shadow:0 22px 44px rgba(0,0,0,.24);
}
.landing-secondary{
  color:#fff;
  border:2px solid rgba(255,255,255,.74);
  background:rgba(255,255,255,.04);
  backdrop-filter:blur(10px);
}
.landing-primary:hover,.landing-secondary:hover{
  transform:translateY(-2px);
  opacity:1;
}
.landing-secondary:hover{background:rgba(255,255,255,.12);border-color:#fff}
.language-panel{
  position:absolute;
  left:min(6vw,84px);
  bottom:42px;
  width:min(360px,calc(100vw - 40px));
  padding:18px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  border-radius:18px;
  box-shadow:0 24px 60px rgba(0,0,0,.28);
  backdrop-filter:blur(20px);
  z-index:3;
}
.language-panel label{color:#fff;margin-bottom:10px;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
.language-panel select{
  min-height:46px;
  border-radius:10px;
  background:rgba(255,255,255,.92);
  border-color:rgba(255,255,255,.55);
}
.language-panel p{margin:10px 0 0;color:rgba(255,255,255,.72);font-size:.86rem;line-height:1.5}
.landing-showcase{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:76px min(7vw,96px) 92px;
  background:#fff;
  position:relative;
}
.showcase-head{
  text-align:center;
  width:min(840px,92vw);
  margin:0 auto 42px;
}
.showcase-head span{
  display:inline-block;
  color:#5d6a7f;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
  font-size:.78rem;
  margin-bottom:12px;
}
.showcase-head h2{
  margin:0;
  font-size:clamp(2.15rem,4vw,4rem);
  line-height:1.02;
  letter-spacing:-.055em;
  color:#0a1020;
}
.showcase-head p{
  margin:16px auto 0;
  max-width:760px;
  color:#6b778d;
  line-height:1.75;
  font-weight:600;
}
.showcase-grid{
  width:min(1180px,92vw);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.showcase-card{
  min-height:270px;
  padding:34px;
  border:1px solid #e4ebf5;
  background:linear-gradient(180deg,#fff,#f9fbff);
  box-shadow:0 18px 44px rgba(15,23,42,.07);
  position:relative;
  overflow:hidden;
}
.showcase-card::after{
  content:"";
  position:absolute;
  right:-50px;top:-50px;
  width:150px;height:150px;
  border-radius:50%;
  background:rgba(33,85,243,.08);
}
.showcase-card.highlight-card{
  background:linear-gradient(135deg,#101827,#1c315d);
  color:#fff;
  border-color:#223969;
}
.showcase-card.highlight-card p{color:rgba(255,255,255,.72)}
.card-number{
  width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:#eef3ff;
  color:#173caa;
  font-weight:900;
  margin-bottom:26px;
}
.highlight-card .card-number{background:rgba(255,255,255,.14);color:#fff}
.showcase-card h3{
  margin:0 0 12px;
  font-size:1.38rem;
  letter-spacing:-.025em;
}
.showcase-card p{
  margin:0;
  color:#5f6f86;
  line-height:1.75;
  font-weight:550;
}
@media (max-width:900px){
  .landing-cinematic{min-height:680px;padding:96px 24px 118px}.language-panel{left:20px;right:20px;bottom:24px}.landing-hero-content h1{font-size:3.65rem}.showcase-grid{grid-template-columns:1fr}.showcase-card{min-height:auto}.landing-cinematic::after{opacity:.26;width:92vw;height:80vw;right:-20vw}
}
@media (max-width:560px){
  .landing-cinematic{padding-top:84px}.landing-hero-content h1{font-size:3.05rem}.landing-actions{gap:10px}.landing-primary,.landing-secondary{width:100%;max-width:320px}.landing-showcase{padding:56px 20px 70px}.showcase-card{padding:28px}
}

/* Refined landing language selector — visual polish only */
.language-panel{
  width:min(380px,calc(100vw - 40px));
  padding:18px 18px 16px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 26px 70px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter:blur(24px) saturate(145%);
}
.language-form{display:grid;gap:14px}
.language-panel-top{
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.language-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20);
  font-size:18px;
}
.language-panel label{
  color:#fff;
  margin:2px 0 5px;
  text-transform:uppercase;
  letter-spacing:.105em;
  font-size:.72rem;
  line-height:1.1;
}
.language-panel p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:.86rem;
  line-height:1.45;
}
.language-select-wrap{position:relative}
.language-select-wrap::after{
  content:"";
  position:absolute;
  right:17px;
  top:50%;
  width:9px;
  height:9px;
  border-right:2px solid #17213a;
  border-bottom:2px solid #17213a;
  transform:translateY(-70%) rotate(45deg);
  pointer-events:none;
  opacity:.78;
}
.language-panel select{
  width:100%;
  min-height:50px;
  padding:0 46px 0 17px;
  border-radius:16px;
  appearance:none;
  -webkit-appearance:none;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(239,244,255,.96));
  border:1px solid rgba(255,255,255,.72);
  color:#111827;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 14px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.80);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.language-panel select:hover{
  transform:translateY(-1px);
  border-color:#fff;
  box-shadow:0 18px 42px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.85);
}
.language-panel select:focus{
  transform:translateY(-1px);
  outline:none;
  border-color:rgba(255,255,255,.98);
  box-shadow:0 0 0 4px rgba(255,255,255,.18),0 18px 42px rgba(0,0,0,.24);
}
@media (max-width:900px){
  .language-panel{left:20px;right:20px;bottom:24px;width:auto}
}

/* Final cinematic polish: smoother navigation and better language selector placement only */
.site-header{
  position:sticky;
  top:0;
  z-index:80;
  background:rgba(7,12,25,.54);
  border-bottom:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 60px rgba(2,6,23,.18);
  backdrop-filter:blur(22px) saturate(145%);
}
.nav{
  min-height:78px;
  padding:14px 0;
}
.brand{
  color:#fff;
  font-size:1.02rem;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.brand::before{
  width:38px;
  height:38px;
  border-radius:50%;
  background:
    radial-gradient(circle at 34% 28%,#ffffff 0 12%,transparent 13%),
    linear-gradient(135deg,#ffffff 0%,#cddaff 38%,#2d5fff 100%);
  box-shadow:0 16px 34px rgba(45,95,255,.34),0 0 0 1px rgba(255,255,255,.28) inset;
}
.nav nav{
  padding:7px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.075);
  box-shadow:0 18px 46px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(18px) saturate(145%);
  gap:4px;
}
.nav nav a{
  position:relative;
  color:rgba(255,255,255,.82);
  padding:11px 17px;
  border-radius:999px;
  background:transparent;
  border:1px solid transparent;
  font-size:.80rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
  transition:color .22s ease, background .22s ease, border-color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.nav nav a:hover{
  color:#081126;
  background:rgba(255,255,255,.96);
  border-color:rgba(255,255,255,.86);
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(0,0,0,.20);
  opacity:1;
}
.landing-cinematic{
  margin-top:-42px;
  padding-top:132px;
  padding-bottom:130px;
}
.landing-actions{
  margin-top:30px;
}
.language-panel{
  left:50%;
  bottom:34px;
  transform:translateX(-50%);
  width:min(680px,calc(100vw - 52px));
  padding:12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 28px 74px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(26px) saturate(150%);
}
.language-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,260px);
  gap:12px;
  align-items:center;
}
.language-panel-top{
  align-items:center;
  gap:12px;
  min-width:0;
}
.language-icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:50%;
  background:rgba(255,255,255,.15);
}
.language-panel label{
  margin:0 0 4px;
  font-size:.70rem;
  letter-spacing:.12em;
  white-space:nowrap;
}
.language-panel p{
  font-size:.82rem;
  line-height:1.35;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.language-select-wrap{
  min-width:0;
}
.language-panel select{
  min-height:48px;
  border-radius:999px;
  padding-left:19px;
  background:linear-gradient(180deg,#ffffff,#edf3ff);
  box-shadow:0 16px 34px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.88);
}
.language-panel select:hover,
.language-panel select:focus{
  transform:translateY(-1px);
}
@media (max-width:900px){
  .site-header{background:rgba(7,12,25,.72)}
  .nav{min-height:auto;align-items:center;gap:12px}
  .nav nav{border-radius:22px;justify-content:flex-end}
  .nav nav a{padding:10px 12px;font-size:.74rem}
  .landing-cinematic{padding-bottom:150px}
  .language-panel{left:20px;right:20px;bottom:24px;width:auto;transform:none;border-radius:26px;padding:16px}
  .language-form{grid-template-columns:1fr}
  .language-panel p{white-space:normal;overflow:visible;text-overflow:clip}
}
@media (max-width:560px){
  .brand{font-size:.86rem}
  .brand::before{width:32px;height:32px}
  .nav{flex-direction:column;align-items:stretch}
  .nav nav{justify-content:center;width:100%}
  .nav nav a{flex:1;text-align:center}
  .landing-cinematic{padding-top:150px;padding-bottom:170px}
}


/* Final detail fix: show full language helper text and simplify footer tagline */
.language-panel{
  width:min(860px,calc(100vw - 56px));
  padding:16px 18px;
  border-radius:34px;
}
.language-form{
  grid-template-columns:minmax(0,1fr) minmax(220px,280px);
  gap:18px;
}
.language-panel p{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  max-width:100%;
}
.language-panel-top > div{
  min-width:0;
}
@media (max-width:900px){
  .language-panel{width:auto;border-radius:26px;padding:16px}
  .language-form{grid-template-columns:1fr}
}
.chart-interpretation{margin:12px 0 18px;color:#526173;font-size:15px;line-height:1.65;background:#f8fafc;border:1px solid #e5eaf3;border-radius:18px;padding:14px 16px;}


/* Dashboard and report-input blue visual polish — visual only */
.dashboard-head,.input-head{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96) 0%,rgba(239,245,255,.94) 55%,rgba(224,235,255,.92) 100%);
  border-color:rgba(126,160,255,.36);
  box-shadow:0 24px 64px rgba(31,78,216,.10), var(--shadow-soft);
}
.dashboard-head::before,.input-head::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:7px;
  background:linear-gradient(180deg,#2155f3,#7fa4ff);
}
.dashboard-head::after,.input-head::after{
  content:"";
  position:absolute;
  right:-120px;
  top:-150px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(33,85,243,.22),rgba(33,85,243,.08) 44%,transparent 70%);
  pointer-events:none;
}
.dashboard-head > *,.input-head > *{position:relative;z-index:1}
.dashboard-head .muted,.input-head .muted{color:#50627f;font-weight:600}

.dashboard-table{
  position:relative;
  border-color:rgba(126,160,255,.28);
  box-shadow:0 22px 58px rgba(31,78,216,.08), var(--shadow-soft);
}
.dashboard-table::before{
  content:"";
  display:block;
  height:5px;
  background:linear-gradient(90deg,#2155f3,#7fa4ff,#dbe7ff);
}
.dashboard-table .table th{
  background:linear-gradient(180deg,#edf4ff,#f8fbff);
  color:#173caa;
}
.dashboard-table .table tbody tr:hover td{background:#f2f7ff}

.input-designer-form .form-section{
  border-color:rgba(126,160,255,.30);
  box-shadow:0 22px 58px rgba(31,78,216,.075), var(--shadow-soft);
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,251,255,.94));
}
.input-designer-form .form-section::after{
  content:"";
  position:absolute;
  right:-80px;
  top:-100px;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(33,85,243,.12),transparent 68%);
  pointer-events:none;
}
.input-designer-form .form-section h2{
  position:relative;
  z-index:1;
  color:#0f2f86;
}
.input-designer-form .form-section h2::after{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-top:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#2155f3,#9ab7ff);
}
.input-designer-form input:focus,.input-designer-form select:focus,.input-designer-form textarea:focus{
  border-color:#6f93ff;
  box-shadow:0 0 0 4px rgba(33,85,243,.12), 0 10px 22px rgba(31,78,216,.08);
}

/* Final blue visual identity pass - dashboard and report input only */
.dashboard-head,
.input-head{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 16%, rgba(113,151,255,.55), transparent 30%),
    linear-gradient(135deg,#1239a8 0%,#1f4ed8 48%,#4f7df7 100%);
  color:#fff;
  border-color:rgba(255,255,255,.22);
  box-shadow:0 28px 70px rgba(31,78,216,.30);
}
.dashboard-head::before,
.input-head::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(255,255,255,.12) 0 1px,transparent 1px 100%),
    linear-gradient(180deg,rgba(255,255,255,.12) 0 1px,transparent 1px 100%);
  background-size:54px 54px;
  opacity:.18;
}
.dashboard-head > *,
.input-head > *{position:relative;z-index:1}
.dashboard-head h1,
.input-head h1{color:#fff;text-shadow:0 10px 30px rgba(7,13,33,.28)}
.dashboard-head .muted,
.input-head .muted{color:rgba(238,244,255,.92)}
.dashboard-head .btn-primary{
  background:#fff;
  color:#173caa;
  box-shadow:0 16px 35px rgba(6,12,35,.22);
}
.dashboard-table{
  border:1px solid #c8d8ff;
  box-shadow:0 22px 58px rgba(31,78,216,.12);
}
.dashboard-table .table th{
  background:linear-gradient(135deg,#173caa,#1f4ed8);
  color:#fff;
}
.dashboard-table .table td:first-child,
.dashboard-table .table td:nth-child(2){font-weight:700;color:#0f2f86}
.actions-cell a{
  color:#1f4ed8;
  background:#eef4ff;
  border:1px solid #d8e4ff;
  border-radius:12px;
  padding:7px 10px;
  text-decoration:none;
}
.actions-cell a:hover{background:#1f4ed8;color:#fff}
.input-designer-form .form-section{
  position:relative;
  overflow:hidden;
  border:1px solid #ccdafe;
  box-shadow:0 18px 48px rgba(31,78,216,.10);
  background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);
}
.input-designer-form .form-section::after{
  content:"";
  position:absolute;
  right:-72px;
  top:-72px;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(31,78,216,.13),transparent 66%);
  pointer-events:none;
}
.input-designer-form .form-section h2{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#102b7a;
}
.input-designer-form .form-section h2::before{
  content:"";
  width:11px;
  height:28px;
  border-radius:999px;
  background:linear-gradient(180deg,#1f4ed8,#8aa8ff);
  box-shadow:0 8px 18px rgba(31,78,216,.25);
}
.input-designer-form input:focus,
.input-designer-form select:focus,
.input-designer-form textarea:focus{
  border-color:#1f4ed8;
  box-shadow:0 0 0 4px rgba(31,78,216,.12),0 12px 28px rgba(31,78,216,.08);
  outline:none;
}
.input-designer-form .btn-primary,
.input-designer-form .submit-row .btn-primary{
  background:linear-gradient(135deg,#1f4ed8,#1239a8);
  box-shadow:0 18px 38px rgba(31,78,216,.30);
}
.hierarchy-builder-panel,
.org-helper,
.hierarchy-preview{
  background:linear-gradient(135deg,#eef4ff 0%,#ffffff 100%);
  border-color:#bfd0ff;
}
.org-row{
  background:linear-gradient(180deg,#ffffff,#f4f8ff);
  border-color:#cddcff;
}

.output-cover-head{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:18px;
  padding:16px;
  border:1px solid rgba(37,99,235,.16);
  border-radius:22px;
  background:linear-gradient(135deg, rgba(37,99,235,.10), rgba(255,255,255,.72));
}
.output-cover-head h2{margin:0 0 4px 0;}
.output-cover-head p{margin:0;}
.output-company-logo{
  width:92px;
  height:92px;
  object-fit:contain;
  border-radius:18px;
  background:#fff;
  padding:10px;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 14px 30px rgba(15,23,42,.10);
}
@media (max-width:760px){
  .output-cover-head{align-items:flex-start;}
  .output-company-logo{width:76px;height:76px;}
}


.subscription-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0 22px;
  background:linear-gradient(135deg,#eef4ff,#ffffff);
  border:1px solid #cddcff;
}
.plan-label,.plan-badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#eaf1ff;
  color:#1f4ed8;
  font-weight:800;
  font-size:12px;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.usage-pill{
  padding:12px 16px;
  border-radius:999px;
  background:#102b7a;
  color:#fff;
  font-weight:800;
  white-space:nowrap;
}
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.pricing-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:20px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(15,23,42,.10);
  box-shadow:0 20px 50px rgba(15,23,42,.08);
}
.featured-plan{
  border:2px solid #1f4ed8;
  box-shadow:0 24px 70px rgba(31,78,216,.18);
}
.pricing-top h2{margin:14px 0 8px;}
.price{font-size:32px;font-weight:900;margin:0 0 10px;color:#102b7a;}
.plan-list{margin:0;padding-left:20px;color:#334155;line-height:1.8;}
.full{width:100%;justify-content:center;text-align:center;}
.subscription-note{margin-top:22px;}
@media (max-width:900px){
  .pricing-grid{grid-template-columns:1fr;}
  .subscription-summary{align-items:flex-start;flex-direction:column;}
}


/* Professional contact page */
.professional-contact-page{
  min-height:calc(100vh - 160px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 18px;
  background:radial-gradient(circle at top left,rgba(37,99,235,.24),transparent 34%),linear-gradient(135deg,#ffffff 0%,#eef6ff 35%,#dbeafe 70%,#bfdbfe 100%);
}
.professional-contact-card{
  width:min(860px,100%);
  background:#ffffff;
  border:1px solid #93c5fd;
  border-radius:28px;
  box-shadow:0 30px 90px rgba(30,64,175,.24);
  padding:42px;
  text-align:center;
}
.professional-contact-card h1{
  color:#0f3f8f;
  margin:16px 0 12px;
  font-size:clamp(2rem,4vw,3.2rem);
}
.professional-lead{
  color:#365277;
  max-width:720px;
  margin:0 auto 28px;
  font-size:1.08rem;
  line-height:1.7;
}
.blue-badge{
  background:#1d4ed8;
  color:#ffffff;
  border:1px solid #93c5fd;
}
.contact-details{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin:28px 0;
}
.contact-details div{
  border:1px solid #dbeafe;
  border-radius:20px;
  padding:18px;
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%);
}
.contact-details span{
  display:block;
  color:#64748b;
  font-weight:700;
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:8px;
}
.contact-details strong,.contact-details a{
  color:#0f3f8f;
  text-decoration:none;
  word-break:break-word;
}
.professional-actions{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
}
@media (max-width:760px){
  .professional-contact-card{padding:28px 18px}
  .contact-details{grid-template-columns:1fr}
}

/* Public plans and legal pages */
.footer-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.footer-links a{color:var(--muted);font-weight:700}
.footer-links a:hover{color:var(--brand)}
.plans-public-head{padding:24px 0 6px}
.professional-blue-card{
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 46%,#dbeafe 100%);
  border:1px solid #93c5fd;
  box-shadow:0 24px 64px rgba(30,64,175,.16);
}
.landing-plans-preview{
  padding:72px 20px 82px;
  background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
  border-top:1px solid rgba(219,229,241,.9);
}
.landing-pricing-grid{width:min(1120px,100%);margin:0 auto}
.legal-page{max-width:920px;margin:0 auto;padding:36px;line-height:1.75}
.legal-page h1{font-size:clamp(2rem,3vw,3rem);margin:14px 0 10px;color:#102b7a}
.legal-page h2{margin:26px 0 8px;color:#173caa;font-size:1.16rem}
.legal-page p{margin:0 0 12px;color:#334155}
.compact-contact-page{min-height:auto;border-radius:28px}
@media (max-width:760px){.footer-inner{flex-direction:column}.footer-links{justify-content:flex-start}.legal-page{padding:24px 18px}}


/* Landing explanation section */
.landing-explainer-section{
  padding:78px 20px 72px;
  background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 44%,#ffffff 100%);
  border-top:1px solid rgba(219,229,241,.9);
}
.explainer-wrap{
  width:min(1160px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:34px;
  align-items:center;
}
.explainer-copy{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(147,197,253,.55);
  border-radius:32px;
  padding:38px;
  box-shadow:0 24px 70px rgba(30,64,175,.10);
}
.blue-kicker{
  color:#1d4ed8;
  background:#eff6ff;
  border:1px solid #bfdbfe;
}
.explainer-copy h2{
  margin:16px 0 18px;
  color:#0f2f77;
  font-size:clamp(2rem,3.4vw,3.25rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
.explainer-copy p{
  color:#334155;
  font-size:1.02rem;
  line-height:1.75;
  margin:0 0 14px;
}
.explainer-visual{
  position:relative;
  display:grid;
  gap:16px;
  padding:26px;
  border-radius:34px;
  background:radial-gradient(circle at 25% 10%,rgba(59,130,246,.25),transparent 34%),linear-gradient(160deg,#0f3f8f 0%,#1d4ed8 46%,#eff6ff 100%);
  box-shadow:0 34px 90px rgba(30,64,175,.24);
  overflow:hidden;
}
.explainer-visual:before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:28px;
  pointer-events:none;
}
.process-card{
  position:relative;
  z-index:1;
  border-radius:26px;
  padding:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:0 18px 45px rgba(15,23,42,.12);
}
.process-card span{
  display:inline-flex;
  padding:6px 12px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
  font-weight:900;
  font-size:.78rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.process-card strong{
  display:block;
  margin:12px 0 8px;
  font-size:1.85rem;
  color:#102b7a;
}
.process-card p{margin:0;color:#475569;line-height:1.55}
.process-arrow{
  position:relative;
  z-index:1;
  width:52px;
  height:52px;
  border-radius:50%;
  background:#ffffff;
  color:#1d4ed8;
  display:grid;
  place-items:center;
  font-size:1.8rem;
  font-weight:900;
  justify-self:center;
  box-shadow:0 14px 34px rgba(15,23,42,.16);
}
.mini-feature-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}
.mini-feature-grid div{
  border-radius:18px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.7);
  padding:16px;
}
.mini-feature-grid b{display:block;color:#1d4ed8;font-size:.82rem;margin-bottom:6px}
.mini-feature-grid span{color:#0f2f77;font-weight:800}
@media (max-width:900px){
  .explainer-wrap{grid-template-columns:1fr}
  .explainer-copy{padding:28px 20px}
}
@media (max-width:560px){
  .mini-feature-grid{grid-template-columns:1fr}
  .landing-explainer-section{padding:52px 16px}
}

/* Landing slogan scroll section — concise website copy */
.scroll-slogan-wrap{
  width:min(1160px,100%);
  margin:0 auto;
}
.slogan-head{
  text-align:center;
  max-width:760px;
  margin:0 auto 34px;
}
.slogan-head h2{
  margin:16px 0 12px;
  color:#0f2f77;
  font-size:clamp(2.2rem,5vw,4.4rem);
  line-height:.98;
  letter-spacing:-.055em;
}
.slogan-head p{
  margin:0 auto;
  color:#475569;
  font-size:1.08rem;
  line-height:1.65;
  max-width:650px;
}
.slogan-flow{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  align-items:stretch;
}
.slogan-card{
  position:relative;
  min-height:250px;
  overflow:hidden;
  border-radius:30px;
  padding:26px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(147,197,253,.55);
  box-shadow:0 24px 70px rgba(30,64,175,.10);
}
.slogan-card:after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-42px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:rgba(37,99,235,.10);
}
.slogan-blue{
  color:#fff;
  background:linear-gradient(145deg,#0f3f8f 0%,#1d4ed8 52%,#38bdf8 100%);
  border-color:rgba(255,255,255,.25);
  box-shadow:0 30px 90px rgba(30,64,175,.26);
}
.slogan-blue-soft{
  background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 100%);
}
.slogan-step{
  display:inline-flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#eff6ff;
  color:#1d4ed8;
  font-weight:950;
  margin-bottom:28px;
}
.slogan-blue .slogan-step{
  background:rgba(255,255,255,.18);
  color:#fff;
  border:1px solid rgba(255,255,255,.28);
}
.slogan-card h3{
  position:relative;
  z-index:1;
  margin:0 0 12px;
  color:#102b7a;
  font-size:1.55rem;
  line-height:1.08;
  letter-spacing:-.03em;
}
.slogan-card p{
  position:relative;
  z-index:1;
  margin:0;
  color:#475569;
  line-height:1.6;
  font-size:.98rem;
}
.slogan-blue h3,.slogan-blue p{color:#fff}
.slogan-mini-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:18px;
}
.slogan-mini-grid div{
  border-radius:22px;
  padding:18px 20px;
  background:#fff;
  border:1px solid rgba(191,219,254,.85);
  box-shadow:0 16px 45px rgba(30,64,175,.08);
}
.slogan-mini-grid b{
  display:block;
  color:#1d4ed8;
  font-size:.94rem;
  margin-bottom:6px;
}
.slogan-mini-grid span{
  display:block;
  color:#334155;
  line-height:1.45;
  font-size:.92rem;
}
@media (max-width:1000px){
  .slogan-flow{grid-template-columns:repeat(2,1fr)}
  .slogan-mini-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .slogan-flow,.slogan-mini-grid{grid-template-columns:1fr}
  .slogan-card{min-height:auto}
}

/* Professional full-width landing scroll blocks — wider and bigger design update only */
.landing-pro-scroll{
  padding:132px 24px 138px;
  background:
    radial-gradient(circle at 12% 16%,rgba(37,99,235,.18),transparent 36%),
    radial-gradient(circle at 90% 18%,rgba(14,165,233,.16),transparent 32%),
    linear-gradient(180deg,#f8fbff 0%,#eef6ff 50%,#ffffff 100%);
}
.pro-scroll-wrap{width:min(1480px,100%);margin:0 auto}
.pro-slogan-head{max-width:1180px;margin:0 auto 68px;text-align:center}
.pro-slogan-head h2{
  font-size:clamp(4rem,7.6vw,8.4rem);
  line-height:.88;
  letter-spacing:-.08em;
  color:#082567;
}
.pro-slogan-head p{
  max-width:900px;
  margin:22px auto 0;
  font-size:clamp(1.2rem,1.8vw,1.65rem);
  line-height:1.65;
  color:#475569;
}
.pro-story-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:38px;
}
.pro-story-card{
  position:relative;
  min-height:430px;
  overflow:hidden;
  border-radius:52px;
  padding:64px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(147,197,253,.78);
  box-shadow:0 38px 110px rgba(30,64,175,.15);
}
.pro-story-card:before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-120px;
  top:-130px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(125,211,252,.22));
}
.pro-story-card:after{
  content:"";
  position:absolute;
  inset:auto 58px 58px auto;
  width:150px;
  height:150px;
  border-radius:42px;
  background:rgba(37,99,235,.08);
  transform:rotate(10deg);
}
.pro-story-main{
  min-height:520px;
  grid-row:auto;
  background:linear-gradient(145deg,#061a47 0%,#123d96 48%,#2da8ff 100%);
  color:#fff;
  box-shadow:0 48px 130px rgba(30,64,175,.36);
}
.pro-story-blue{
  background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 54%,#ffffff 100%);
}
.pro-card-icon{
  position:absolute;
  top:48px;
  right:54px;
  width:112px;
  height:112px;
  border-radius:34px;
  display:grid;
  place-items:center;
  font-size:3rem;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(191,219,254,.9);
  box-shadow:0 24px 60px rgba(30,64,175,.13);
  z-index:1;
}
.pro-story-main .pro-card-icon{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28)}
.pro-story-card .slogan-step{
  position:relative;
  z-index:2;
  width:72px;
  height:72px;
  border-radius:24px;
  font-size:1.08rem;
  margin-bottom:38px;
}
.pro-story-main .slogan-step{background:rgba(255,255,255,.17);color:#fff;border:1px solid rgba(255,255,255,.28)}
.pro-story-card h3{
  position:relative;
  z-index:2;
  margin:0 0 22px;
  font-size:clamp(3.1rem,5vw,6.4rem);
  line-height:.9;
  letter-spacing:-.07em;
  color:#082567;
  max-width:1040px;
}
.pro-story-card p{
  position:relative;
  z-index:2;
  margin:0;
  max-width:920px;
  font-size:clamp(1.16rem,1.55vw,1.45rem);
  line-height:1.72;
  color:#475569;
}
.pro-story-main h3,.pro-story-main p{color:#fff}
.pro-story-main p{color:rgba(255,255,255,.9)}
.pro-output-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-top:38px;
}
.pro-output-strip div{
  min-height:160px;
  border-radius:34px;
  padding:34px;
  background:#fff;
  border:1px solid rgba(191,219,254,.94);
  box-shadow:0 24px 70px rgba(30,64,175,.11);
}
.pro-output-strip b{
  display:block;
  color:#1746a2;
  font-size:1.38rem;
  letter-spacing:-.025em;
  margin-bottom:12px;
}
.pro-output-strip span{
  display:block;
  color:#475569;
  font-size:1.06rem;
  line-height:1.48;
}
@media (max-width:980px){
  .landing-pro-scroll{padding:86px 18px 96px}
  .pro-slogan-head h2{font-size:clamp(3.2rem,10vw,5.6rem)}
  .pro-story-grid{grid-template-columns:1fr}
  .pro-story-main{grid-row:auto;min-height:460px}
  .pro-story-card{min-height:390px;padding:42px;border-radius:38px}
  .pro-story-card h3{font-size:clamp(2.6rem,8vw,4.2rem)}
  .pro-output-strip{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .pro-slogan-head h2{font-size:3.1rem}
  .pro-story-card,.pro-story-main{min-height:340px;border-radius:30px;padding:30px 22px}
  .pro-story-card h3{font-size:2.35rem}
  .pro-card-icon{width:64px;height:64px;border-radius:22px;font-size:1.7rem;top:24px;right:24px}
  .pro-output-strip{grid-template-columns:1fr}
}

/* Professional service page refinement */
.professional-service-hero{
  min-height:calc(100vh - 120px);
  padding:84px 20px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 78% 18%,rgba(96,165,250,.32),transparent 30%),
    radial-gradient(circle at 15% 70%,rgba(37,99,235,.20),transparent 34%),
    linear-gradient(135deg,#071226 0%,#0b1f44 48%,#0f3f8f 100%);
  color:#fff;
}
.professional-service-shell{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:34px;
  align-items:stretch;
}
.professional-service-copy,
.professional-service-card{
  border:1px solid rgba(255,255,255,.18);
  border-radius:34px;
  box-shadow:0 34px 90px rgba(0,0,0,.30);
}
.professional-service-copy{
  padding:54px;
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  backdrop-filter:blur(18px);
}
.service-kicker{
  display:inline-flex;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#dbeafe;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
}
.professional-service-copy h1{
  margin:24px 0 18px;
  max-width:760px;
  font-size:clamp(2.65rem,5vw,5.4rem);
  line-height:.96;
  letter-spacing:-.055em;
  color:#fff;
}
.professional-service-copy p{
  max-width:760px;
  color:#dbeafe;
  font-size:1.16rem;
  line-height:1.75;
}
.service-highlights{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:34px;
}
.service-highlights div{
  min-height:132px;
  border-radius:24px;
  padding:20px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
}
.service-highlights strong{
  display:block;
  color:#93c5fd;
  font-size:1.7rem;
  margin-bottom:12px;
}
.service-highlights span{color:#f8fafc;font-weight:800;line-height:1.45;}
.professional-service-card{
  padding:34px;
  background:#ffffff;
  color:#0f172a;
}
.service-card-top span{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#dbeafe;
  color:#1d4ed8;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.76rem;
}
.service-card-top h2{
  margin:22px 0 10px;
  color:#0f3f8f;
  font-size:clamp(2rem,3vw,3rem);
  letter-spacing:-.035em;
}
.service-card-top p{
  color:#475569;
  line-height:1.7;
}
.service-contact-list{
  display:grid;
  gap:14px;
  margin:28px 0;
}
.service-contact-list a{
  display:block;
  padding:20px;
  border-radius:22px;
  background:linear-gradient(180deg,#eff6ff,#ffffff);
  border:1px solid #bfdbfe;
  text-decoration:none;
}
.service-contact-list span{
  display:block;
  color:#64748b;
  text-transform:uppercase;
  font-weight:900;
  font-size:.78rem;
  letter-spacing:.08em;
  margin-bottom:8px;
}
.service-contact-list strong{color:#0f3f8f;word-break:break-word;}
.service-actions{justify-content:flex-start;}
.service-note{
  margin:18px 0 0;
  color:#64748b;
  font-weight:800;
}
.small-note{font-size:.86rem;margin-top:10px;text-align:center;}
@media (max-width:980px){
  .professional-service-shell{grid-template-columns:1fr;}
  .service-highlights{grid-template-columns:1fr;}
  .professional-service-copy{padding:34px 22px;}
}

/* Single offer pricing layout */
.single-offer-grid{
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  grid-template-columns: minmax(0, 1fr) !important;
}
.single-offer-card{
  padding: 34px;
}
.single-offer-card .price{
  font-size: clamp(44px, 6vw, 68px);
  line-height: 1;
}


/* Symmetric one-offer public page */
.offer-page-shell{
  width:min(1180px,100%);
  margin:0 auto;
  padding:34px 0 70px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:34px;
}
.offer-hero-centered{
  width:100%;
  max-width:1080px;
  text-align:center;
  padding:42px 52px;
  border-radius:34px;
}
.offer-hero-centered .plan-label{margin:0 auto 12px;display:inline-flex;}
.offer-hero-centered h1{margin:0 auto 14px;max-width:900px;}
.offer-hero-centered p{margin:0 auto;max-width:820px;font-size:1.08rem;line-height:1.65;}
.offer-centered-grid{
  width:100%;
  max-width:760px;
  margin:0 auto !important;
  display:grid;
  place-items:center;
}
.offer-centered-card{
  width:100%;
  min-height:520px;
  padding:46px 52px;
  border-radius:34px;
}
.offer-centered-card .pricing-top,.offer-centered-card .plan-list{width:100%;}
.offer-centered-card .btn{margin-top:8px;}
@media (max-width:760px){
  .offer-page-shell{padding:20px 0 44px;gap:22px;}
  .offer-hero-centered{padding:28px 22px;border-radius:26px;}
  .offer-centered-card{padding:30px 24px;min-height:auto;border-radius:28px;}
}
