/* ==========================================================================
   DocLedger Landing — stylesheet
   Fonts self-hosted from ../fonts, icons self-hosted from ../vendor/fontawesome
   ========================================================================== */

@font-face{font-family:"IRANYekanX";src:url("../fonts/IRANYekanXFaNum-Light.woff2") format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"IRANYekanX";src:url("../fonts/IRANYekanXFaNum-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IRANYekanX";src:url("../fonts/IRANYekanXFaNum-Medium.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"IRANYekanX";src:url("../fonts/IRANYekanXFaNum-DemiBold.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"IRANYekanX";src:url("../fonts/IRANYekanXFaNum-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Darbareh";src:url("../fonts/darbarehFaNum-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Darbareh";src:url("../fonts/darbarehFaNum-ExtraBold.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Darbareh";src:url("../fonts/darbarehFaNum-Black.woff2") format("woff2");font-weight:900;font-display:swap}

:root{
  --primary:#0088b0;
  --primary-hover:#1186ac;
  --primary-active:#006786;
  --navy:#14314f;
  --teal:#106b78;
  --blue:#2a5fbf;
  --magenta:#d6006c;
  --ice:#cbeeff;
  --ink:#201e1d;
  --ink-2:#444141;
  --ink-3:#605d5d;
  --ink-4:#7d7979;
  --surface:#eae9e9;
  --surface-light:#f6f5f5;
  --on-dark-1:#e9f4fa;
  --on-dark-2:#b9cede;
  --on-dark-3:#8fb4cc;
  --glass-bg:linear-gradient(168deg,rgba(255,255,255,.42),rgba(255,255,255,.18));
  --glass-border:rgba(255,255,255,.6);
  --shadow-card:0 22px 48px -30px rgba(10,48,62,.42);
  --shadow-card-inset:inset 0 1px 0 rgba(255,255,255,.65);
  --shadow-float:0 26px 50px -28px rgba(10,48,62,.55);
  --shadow-phone:0 40px 70px -34px rgba(10,48,62,.7);
  --shadow-btn:0 14px 28px -16px rgba(0,136,176,.65);
  --radius-btn:14px;
  --radius-card:26px;
  --radius-card-lg:34px;
  --section-pad:clamp(36px,6vw,64px);
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:#f3f2f2;
  font-family:"IRANYekanX",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block}

a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-hover)}

:focus-visible{outline:2px solid var(--primary);outline-offset:2px}

summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}

h1,h2,h3,p{margin:0}

section[id],main [id]{scroll-margin-top:90px}

/* ---------- page wrapper ---------- */
.page{
  background:
    radial-gradient(1100px 620px at 88% -8%, rgba(0,136,176,.16), transparent 60%),
    radial-gradient(900px 520px at 4% 12%, rgba(214,0,108,.09), transparent 62%),
    linear-gradient(168deg,#f6f5f5 0%,#ececeb 55%,#e6e7e8 100%);
  color:var(--ink);
  font-size:17px;
  line-height:1.9;
  min-height:100%;
}

.wrap{max-width:1280px;margin:0 auto;padding:0 20px}
.section{max-width:1280px;margin:0 auto;padding:var(--section-pad) 20px}
.section-narrow{max-width:900px;margin:0 auto;padding:var(--section-pad) 20px}

/* ---------- buttons ---------- */
.btn{
  display:flex;align-items:center;justify-content:center;gap:9px;
  border-radius:var(--radius-btn);font-weight:600;
  font-family:inherit;border:none;cursor:pointer;
}
.btn-primary{
  background:var(--primary);color:#fff;
  box-shadow:var(--shadow-btn);
}
.btn-primary:hover{background:var(--primary-hover);color:#fff}
.btn-primary:active{background:var(--primary-active)}
.btn-secondary{
  background:rgba(255,255,255,.55);
  border:1px solid rgba(255,255,255,.8);
  color:var(--navy);
}
.btn-secondary:hover{background:rgba(255,255,255,.85);color:var(--navy)}

/* ---------- header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(246,245,245,.82);
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
  border-bottom:1px solid rgba(255,255,255,.6);
}
.nav{
  max-width:1280px;margin:0 auto;padding:12px 20px;
  display:flex;align-items:center;gap:30px;flex-wrap:wrap;
}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}
.brand img{width:38px;height:38px;object-fit:contain}
.brand span{font-family:'Darbareh';font-weight:800;font-size:22px;letter-spacing:-.2px}

.nav-toggle{
  display:none;order:2;margin-right:auto;
  background:rgba(255,255,255,.6);
  border:1px solid rgba(255,255,255,.85);
  border-radius:14px;width:46px;height:46px;
  align-items:center;justify-content:center;
  color:var(--navy);font-size:18px;cursor:pointer;
}
.nav-links{display:flex;gap:26px;font-size:15px;color:var(--ink-2);flex-wrap:wrap}
.nav-links a{color:var(--ink-2)}
.nav-links a:hover{color:var(--primary)}

.nav .btn-primary{
  margin-right:auto;padding:12px 22px;font-size:15px;min-height:44px;
}

/* ---------- hero ---------- */
.hero{
  padding:clamp(40px,7vw,80px) 20px clamp(36px,6vw,64px);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr));
  gap:56px;align-items:center;
}
.eyebrow{
  animation:dlUp .7s cubic-bezier(.22,.75,.3,1) both;
  display:inline-block;background:rgba(203,238,255,.7);
  border:1px solid rgba(255,255,255,.7);color:var(--teal);
  padding:7px 16px;border-radius:999px;font-size:14px;font-weight:500;
}
.hero h1{
  animation:dlUp .8s cubic-bezier(.22,.75,.3,1) .08s both;
  font-family:'Darbareh';font-weight:800;
  font-size:clamp(38px,5.2vw,68px);line-height:1.15;
  margin:20px 0 0;letter-spacing:-.5px;text-wrap:balance;
}
.hero .lead{
  animation:dlUp .8s cubic-bezier(.22,.75,.3,1) .16s both;
  font-size:19px;color:var(--ink-2);margin:20px 0 0;
  line-height:1.85;max-width:620px;text-wrap:pretty;
}
.hero .sub{
  animation:dlUp .8s cubic-bezier(.22,.75,.3,1) .24s both;
  font-size:16px;color:var(--ink-3);margin:15px 0 0;
  line-height:1.9;max-width:620px;text-wrap:pretty;
}
.hero .actions{
  animation:dlUp .8s cubic-bezier(.22,.75,.3,1) .32s both;
  display:flex;gap:15px;margin-top:30px;flex-wrap:wrap;
}
.hero .actions .btn{padding:15px 30px;min-height:52px}
.hero .footnote{
  animation:dlUp .8s cubic-bezier(.22,.75,.3,1) .4s both;
  font-size:14px;color:var(--ink-4);margin:15px 0 0;
}

/* hero art */
.hero-art{position:relative;min-height:600px;width:100%;max-width:592px;margin:0 auto}
.hero-art > div{position:absolute}

.hc-sms{
  animation:dlIn .9s cubic-bezier(.22,.75,.3,1) .75s both, dlFloat 8s ease-in-out 1.8s infinite;
  bottom:172px;left:0;width:min(238px,40%);
  display:flex;align-items:flex-start;gap:12px;
  background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.85);
  backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  border-radius:20px;padding:14px 16px;box-shadow:var(--shadow-float);
}
.hc-sms .icon-tile{width:36px;height:36px;border-radius:12px;background:var(--primary)}
.hc-sms .icon-tile i{font-size:16px;color:#fff}
.hc-sms .title{font-family:'Darbareh';font-weight:700;font-size:14px;color:var(--navy);line-height:1.5}
.hc-sms .meta{font-size:12px;color:var(--ink-4);margin-top:3px}

.hc-archive{
  animation:dlIn .9s cubic-bezier(.22,.75,.3,1) .9s both, dlFloatSlow 10s ease-in-out 2.2s infinite;
  bottom:48px;left:0;max-width:44%;
  background:#fff;border:1px solid rgba(255,255,255,.85);border-radius:18px;
  padding:13px 15px;box-shadow:0 26px 50px -28px rgba(10,48,62,.5);
}
.hc-archive .label{font-size:11px;color:var(--ink-4);margin-bottom:9px}
.hc-archive .row{display:flex;align-items:center;gap:10px}
.hc-archive .icon-tile{
  width:32px;height:32px;border-radius:10px;background:rgba(16,107,120,.1);
  border:1px solid rgba(16,107,120,.28);animation:dlGlow 2.6s ease-in-out 1.6s infinite;
}
.hc-archive .icon-tile i{font-size:14px;color:var(--teal)}
.hc-archive .filename{
  font-family:'Darbareh';font-weight:700;font-size:13px;color:var(--navy);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.hc-archive .sub{font-size:11px;color:var(--ink-4);margin-top:2px}

.hc-admin{
  animation:dlIn 1s cubic-bezier(.22,.75,.3,1) .3s both, dlFloatSlow 9s ease-in-out 1.3s infinite;
  top:40px;left:0;width:86%;background:var(--surface);
  border:1px solid rgba(255,255,255,.7);border-radius:20px;
  box-shadow:var(--shadow-card);overflow:hidden;
}
.hc-admin .titlebar{background:var(--navy);padding:10px 15px;display:flex;align-items:center;gap:8px}
.hc-admin .dot{width:9px;height:9px;border-radius:50%;background:var(--primary);display:block}
.hc-admin .titlebar span.label{color:var(--ice);font-size:12px}
.hc-admin .body{padding:15px;display:grid;gap:10px}
.hc-admin .tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.hc-admin .tile{height:44px;border-radius:10px;background:rgba(255,255,255,.6)}
.hc-admin .tile.accent{background:rgba(203,238,255,.85)}
.hc-admin .bar{height:9px;border-radius:5px;background:rgba(32,30,29,.12)}

.hc-phone{
  animation:dlIn 1s cubic-bezier(.22,.75,.3,1) .45s both, dlFloat 7s ease-in-out 1.45s infinite;
  bottom:26px;right:0;width:min(266px,52%);z-index:2;
  background:var(--navy);border-radius:38px;padding:11px;box-shadow:var(--shadow-phone);
}
.hc-phone .screen{background:var(--surface-light);border-radius:28px;overflow:hidden}
.hc-phone .statusbar{padding:16px 16px 10px;display:flex;justify-content:space-between;font-size:11px;color:var(--ink-4)}
.hc-phone .content{padding:0 16px 18px;display:grid;gap:12px}
.hc-phone .earnings-card{
  background:var(--glass-bg);border:1px solid rgba(255,255,255,.6);
  border-radius:18px;padding:14px;
}
.hc-phone .earnings-card .label{font-size:12px;color:var(--ink-3)}
.hc-phone .earnings-card .value{
  animation:dlUp .7s ease .8s both;
  font-family:'Darbareh';font-weight:800;font-size:26px;color:var(--teal);margin-top:4px;
}
.hc-phone .earnings-card .meta{font-size:11px;color:var(--ink-4)}
.hc-phone .chart-card{background:var(--surface);border-radius:18px;padding:14px}
.hc-phone .chart-card .label{font-size:12px;color:var(--ink-3);margin-bottom:10px}
.hc-phone .chart{display:flex;align-items:flex-end;gap:6px;height:74px}
.hc-phone .chart .bar{
  transform-origin:bottom;flex:1;background:var(--ice);border-radius:6px;
  animation:dlBar .8s cubic-bezier(.22,.75,.3,1) both;
}
.hc-phone .chart .bar.accent{background:var(--primary)}
.hc-phone .stats{display:flex;gap:8px}
.hc-phone .stat{flex:1;background:var(--surface);border-radius:14px;padding:10px 12px}
.hc-phone .stat .label{font-size:11px;color:var(--ink-4)}
.hc-phone .stat .value{font-family:'Darbareh';font-weight:700;font-size:18px}

/* ---------- trust strip ---------- */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:15px}
.glass-chip{
  background:var(--glass-bg);border:1px solid var(--glass-border);
  backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  border-radius:26px;padding:22px;font-size:15px;color:var(--ink-2);line-height:1.7;
}
.glass-chip strong{color:var(--ink);font-weight:600}

/* ---------- headings ---------- */
.h2{font-family:'Darbareh';font-weight:800;font-size:clamp(28px,3.2vw,38px);line-height:1.3;margin:0}
.section-intro{color:var(--ink-3);margin:15px 0 40px;max-width:760px}

/* ---------- card grids ---------- */
.grid{display:grid;gap:20px}
.grid-255{grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr))}
.grid-290{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.grid-340{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:56px}
.grid-215{grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr))}
.grid-210{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}
.grid-200{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),auto))}

.card{
  background:var(--surface);border:1px solid rgba(255,255,255,.6);
  border-radius:var(--radius-card);padding:clamp(20px,4.5vw,26px);
  box-shadow:var(--shadow-card),var(--shadow-card-inset);
}
.card-glass{
  background:var(--glass-bg);border:1px solid var(--glass-border);
  backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  border-radius:var(--radius-card);padding:clamp(20px,4.5vw,26px);
  box-shadow:var(--shadow-card);
}
.icon-tile-44{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;border-radius:14px;margin-bottom:15px;
}
.icon-tile-44.magenta{background:rgba(214,0,108,.1);border:1px solid rgba(214,0,108,.22)}
.icon-tile-44.magenta i{font-size:19px;color:var(--magenta)}
.icon-tile-44.primary{background:#0088b01a;border:1px solid #0088b033}
.icon-tile-44.primary i{font-size:19px;color:var(--primary)}
.icon-tile-44.teal{background:#106b781a;border:1px solid #106b7833}
.icon-tile-44.teal i{font-size:19px;color:var(--teal)}
.icon-tile-44.blue{background:#2a5fbf1a;border:1px solid #2a5fbf33}
.icon-tile-44.blue i{font-size:19px;color:var(--blue)}

.card h3{font-family:'Darbareh';font-weight:700;font-size:19px;margin:0 0 8px}
.card p{margin:0;font-size:15px;color:var(--ink-3);line-height:1.85}

.step-badge{
  display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:50%;background:var(--primary);color:#fff;
  font-family:'Darbareh';font-weight:800;font-size:19px;margin-bottom:15px;
}
.card h3 i.leading{font-size:15px;color:var(--primary);margin-left:8px}

/* ---------- explainer / quote / roles ---------- */
.explainer-grid{align-items:start}
.explainer-copy p{color:var(--ink-2);margin:20px 0 0;line-height:1.9}
.explainer-copy p:first-of-type{margin-top:20px}
.explainer-side{display:grid;gap:20px;margin-top:10px;min-width:0}

.quote-card{
  position:relative;overflow:hidden;
  background:linear-gradient(168deg,rgba(203,238,255,.55),rgba(255,255,255,.25));
  border:1px solid rgba(255,255,255,.7);border-radius:var(--radius-card-lg);
  padding:clamp(22px,5vw,34px);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
}
.quote-card .sheen{
  position:absolute;top:0;bottom:0;width:38%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);
  animation:dlSheen 7s ease-in-out 1.2s infinite;pointer-events:none;
}
.quote-card p{margin:0;font-size:18px;color:var(--navy);line-height:1.9;position:relative}

.roles-card{
  background:var(--surface);border:1px solid rgba(255,255,255,.6);
  border-radius:var(--radius-card-lg);
  padding:clamp(20px,4.5vw,30px) clamp(20px,4.5vw,30px) 26px;
  box-shadow:var(--shadow-card);min-width:0;
}
.roles-card .roles-label{font-size:14px;color:var(--ink-4);margin-bottom:22px}
.roles-list{position:relative;display:grid;gap:22px}
.roles-rail{
  position:absolute;top:12px;bottom:12px;right:20px;width:2px;
  background:linear-gradient(180deg,var(--primary),var(--teal) 55%,rgba(42,95,191,.35));
  transform-origin:top;animation:dlRail 1.4s cubic-bezier(.22,.75,.3,1) both;
}
.roles-dot{
  position:absolute;right:16.5px;width:9px;height:9px;border-radius:50%;
  background:var(--primary);box-shadow:0 0 0 4px rgba(0,136,176,.16);
  animation:dlTravel 5.5s cubic-bezier(.55,0,.45,1) 1.2s infinite;
}
.role-row{display:flex;align-items:center;gap:16px;position:relative}
.role-row .icon-tile{
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:14px;background:var(--surface-light);
  animation:dlRing 5.5s ease-out infinite;
}
.role-row .icon-tile.dark{background:var(--navy);border:1px solid var(--navy)}
.role-row .name{font-family:'Darbareh';font-weight:700;font-size:16px}
.role-row .desc{font-size:13px;color:var(--ink-4)}

/* ---------- why-choose split ---------- */
.why-list{display:grid;gap:20px}
.why-item{padding-right:20px}
.why-item h3{font-family:'Darbareh';font-weight:700;font-size:20px;margin:0 0 6px}
.why-item p{margin:0;font-size:15px;color:var(--ink-3);line-height:1.85}
.why-item.b-primary{border-right:3px solid var(--primary)}
.why-item.b-teal{border-right:3px solid var(--teal)}
.why-item.b-blue{border-right:3px solid var(--blue)}
.why-item.b-navy{border-right:3px solid var(--navy)}

.chart-card{
  background:var(--surface);border:1px solid rgba(255,255,255,.6);
  border-radius:var(--radius-card-lg);padding:clamp(22px,5vw,34px);
  box-shadow:var(--shadow-card);
}
.chart-card .label{font-size:14px;color:var(--ink-4);margin-bottom:20px}
.chart-row{display:flex;align-items:flex-end;gap:clamp(14px,4vw,30px);height:220px}
.chart-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px}
.chart-bar-before{width:100%;height:190px;background:linear-gradient(180deg,#d6006c22,#d6006c11);border:1px solid rgba(214,0,108,.25);border-radius:18px}
.chart-bar-after{width:100%;height:60px;background:linear-gradient(180deg,#0088b033,#0088b011);border:1px solid rgba(0,136,176,.3);border-radius:18px}
.chart-col span{font-size:14px;color:var(--ink-3)}
.chart-card .disclaimer{margin:20px 0 0;font-size:13px;color:var(--ink-4);line-height:1.8}

/* ---------- security (dark band) ---------- */
.security-band{background:var(--navy);color:var(--on-dark-1);margin-top:64px}
.security-band .inner{max-width:1280px;margin:0 auto;padding:clamp(44px,7vw,80px) 20px}
.security-band .h2{color:#fff}
.security-band .section-intro{color:var(--ice)}
.security-card{
  background:rgba(255,255,255,.06);border:1px solid rgba(203,238,255,.18);
  border-radius:var(--radius-card);padding:24px;
}
.security-card .icon-tile{
  display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:14px;
  background:rgba(203,238,255,.12);border:1px solid rgba(203,238,255,.25);margin-bottom:15px;
}
.security-card .icon-tile i{font-size:18px;color:var(--ice)}
.security-card h3{font-family:'Darbareh';font-weight:700;font-size:18px;margin:0 0 8px;color:#fff}
.security-card p{margin:0;font-size:14px;color:var(--on-dark-2);line-height:1.85}
.security-band .closing{margin:30px 0 0;color:var(--ice);font-size:16px}
.security-band .closing a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}

/* ---------- showcase ---------- */
.showcase-figure{margin:0;background:var(--surface);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-card);padding:20px;box-shadow:var(--shadow-card)}
.showcase-panel{background:var(--surface-light);border-radius:18px;padding:18px;display:grid;gap:10px;min-height:190px}
.showcase-panel.centered{align-content:center;justify-items:center}
.showcase-panel.start{align-content:start}
.showcase-figure figcaption{font-size:14px;color:var(--ink-3);margin-top:15px;line-height:1.7}
.showcase-figure figcaption strong{font-family:'Darbareh';font-weight:700;color:var(--ink)}
.sk-block{border-radius:12px}
.sk-line{border-radius:4px;background:rgba(32,30,29,.14)}
.sk-line-lite{border-radius:5px;background:rgba(32,30,29,.12)}

/* ---------- FAQ ---------- */
.faq-item{background:var(--surface);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-card);padding:clamp(18px,4vw,22px) clamp(18px,4.5vw,26px)}
.faq-item summary{display:flex;align-items:center;gap:15px;min-height:44px}
.faq-item summary .dl-plus{color:var(--primary);font-size:16px;transition:transform .2s ease;display:inline-block;width:20px}
.faq-item[open] .dl-plus{transform:rotate(45deg)}
.faq-item summary h3{font-family:'Darbareh';font-weight:700;font-size:18px;margin:0}
.faq-item .answer{margin:12px 0 0;padding-right:37px;font-size:15px;color:var(--ink-3);line-height:1.9}

/* ---------- about ---------- */
.about-card{
  background:var(--surface);border:1px solid rgba(255,255,255,.6);
  border-radius:var(--radius-card-lg);padding:clamp(22px,5vw,40px);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),auto));
  gap:40px;align-items:center;box-shadow:var(--shadow-card);
}
.about-logo{width:190px;height:auto;object-fit:contain;border-radius:22px;border:2px solid var(--navy);padding:10px;background:#fff}
.about-card h2{font-family:'Darbareh';font-weight:800;font-size:clamp(26px,4.4vw,34px);line-height:1.3;margin:0 0 15px}
.about-card p{margin:0;color:var(--ink-2);line-height:1.9}
.about-card p.secondary{margin:15px 0 0;color:var(--ink-3);font-size:15px}

/* ---------- demo ---------- */
.demo-copy p{color:var(--ink-2);margin:20px 0 0;line-height:1.9}
.demo-copy h2{font-family:'Darbareh';font-weight:800;font-size:clamp(30px,3.4vw,40px);line-height:1.25;margin:0}
.orbit-wrap{position:relative;margin-top:40px;display:flex;flex-direction:column;gap:30px}
.orbit{position:relative;height:210px;display:flex;align-items:center;justify-content:center}
.orbit-ring{position:absolute;width:190px;height:190px;border-radius:50%}
.orbit-ring.glow{background:radial-gradient(circle,rgba(0,136,176,.28),transparent 68%);animation:dlPulse 4.5s ease-out infinite}
.orbit-ring.line{border:1px solid rgba(0,136,176,.22);animation:dlPulse 4.5s ease-out 1.5s infinite}
.orbit-logo{width:170px;position:relative;animation:dlFloat 7s ease-in-out infinite}
.orbit-chip{
  position:absolute;display:flex;align-items:center;justify-content:center;
  border-radius:16px;background:#fff;border:1px solid rgba(255,255,255,.8);
  box-shadow:0 18px 34px -22px rgba(10,48,62,.6);
}
.benefit-chips{display:grid;gap:10px}
.benefit-chip{
  animation:dlUp .7s cubic-bezier(.22,.75,.3,1) both;
  display:flex;align-items:center;gap:12px;
  background:linear-gradient(168deg,rgba(255,255,255,.5),rgba(255,255,255,.2));
  border:1px solid rgba(255,255,255,.7);border-radius:18px;
  padding:13px 18px;font-size:15px;color:var(--ink-2);
}

.demo-form{
  background:linear-gradient(168deg,rgba(255,255,255,.5),rgba(255,255,255,.22));
  border:1px solid rgba(255,255,255,.7);
  backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  border-radius:var(--radius-card-lg);padding:clamp(22px,5vw,34px);
  display:grid;gap:15px;min-width:0;box-shadow:var(--shadow-card);
}
.demo-form label{display:grid;gap:6px;font-size:14px;color:var(--ink-2);min-width:0}
.demo-form input,.demo-form textarea{
  font-family:inherit;font-size:16px;padding:13px 15px;border-radius:14px;
  border:1px solid rgba(32,30,29,.14);background:#fff;color:var(--ink);
  min-height:48px;width:100%;min-width:0;
}
.demo-form textarea{resize:vertical;min-height:auto}
.demo-form .row-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:15px;min-width:0}
.demo-form button{font-size:16px;padding:15px;min-height:52px}
.demo-form .privacy{margin:0;font-size:13px;color:var(--ink-4);line-height:1.8}
.form-status{margin:0;font-size:14px}
.form-status.success{color:var(--teal)}
.form-status.error{color:var(--magenta)}
.form-status[hidden]{display:none}
.demo-form input[aria-invalid="true"],.demo-form textarea[aria-invalid="true"]{border-color:var(--magenta)}
.field-error{font-size:12px;color:var(--magenta);margin-top:2px;min-height:1em}

/* ---------- footer ---------- */
.site-footer{background:var(--navy);color:var(--ice)}
.footer-grid{max-width:1280px;margin:0 auto;padding:clamp(36px,6vw,56px) 20px 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:40px}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:15px}
.footer-brand img{width:40px;height:40px;object-fit:contain}
.footer-brand span{font-family:'Darbareh';font-weight:800;font-size:22px;color:#fff}
.footer-tagline{margin:0;font-size:15px;color:var(--on-dark-2)}
.footer-nav{display:grid;gap:10px;align-content:start;font-size:15px}
.footer-nav a{color:var(--ice)}
.footer-nav a:hover{color:#fff}
.footer-contact{display:grid;gap:10px;align-content:start;font-size:15px;color:var(--on-dark-2)}
.footer-contact i{width:18px;color:var(--on-dark-3);margin-left:8px}
.footer-contact a{color:var(--ice)}
.footer-contact a:hover{color:#fff}
.footer-contact address{font-style:normal;line-height:1.9}
.footer-partner{display:flex;gap:15px;align-items:flex-start}
.footer-partner .mark{
  display:flex;align-items:center;justify-content:center;background:#fff;
  border-radius:16px;padding:12px 14px;border:2px solid var(--navy);
  box-shadow:0 10px 24px -16px rgba(0,0,0,.5);
}
.footer-partner .mark img{width:44px;height:60px;object-fit:contain}
.footer-partner p{margin:0;font-size:14px;color:var(--on-dark-2);line-height:1.8}
.footer-partner a{color:var(--ice);border-bottom:1px solid rgba(203,238,255,.35)}
.footer-partner a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(203,238,255,.18)}
.footer-bottom p{max-width:1280px;margin:0 auto;padding:18px 20px;font-family:system-ui,sans-serif;font-size:13px;color:var(--on-dark-3);text-align:left}
.footer-bottom a{color:var(--on-dark-3);border-bottom:1px solid rgba(143,180,204,.4)}
.footer-bottom a:hover{color:var(--ice)}

/* ---------- skip link ---------- */
.skip-link{
  position:absolute;right:12px;top:-60px;z-index:100;background:#fff;color:var(--navy);
  padding:12px 18px;border-radius:12px;transition:top .2s ease;box-shadow:var(--shadow-card);
}
.skip-link:focus{top:12px}

/* ==========================================================================
   Keyframes
   ========================================================================== */
@keyframes dlUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes dlIn{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}
@keyframes dlFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes dlFloatSlow{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
@keyframes dlBar{from{transform:scaleY(.05)}to{transform:scaleY(1)}}
@keyframes dlGlow{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes dlPulse{0%{transform:scale(.85);opacity:.5}70%{transform:scale(1.25);opacity:0}100%{transform:scale(1.25);opacity:0}}
@keyframes dlOrbit{0%,100%{transform:translate(0,0)}50%{transform:translate(-8px,-14px)}}
@keyframes dlTravel{0%{top:6%;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:94%;opacity:0}}
@keyframes dlRail{0%{transform:scaleY(0);opacity:.3}55%,100%{transform:scaleY(1);opacity:1}}
@keyframes dlRing{0%,100%{box-shadow:0 0 0 0 rgba(0,136,176,.28)}50%{box-shadow:0 0 0 9px rgba(0,136,176,0)}}
@keyframes dlSheen{0%{transform:translateX(-120%)}100%{transform:translateX(220%)}}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important}
}

/* ==========================================================================
   Responsive overrides
   ========================================================================== */
@media (max-width:860px){
  .nav{gap:12px;row-gap:10px}
  .nav-toggle{display:flex !important;order:3;margin-right:auto !important;flex:0 0 auto}
  .nav > .brand{order:1;flex:0 0 auto}
  .nav > .btn-primary{margin-right:auto !important;order:2;flex:0 1 auto;padding:10px 16px !important;font-size:14px !important;white-space:nowrap}
  .nav-links{order:4;flex:1 0 100%;flex-direction:column;gap:2px;margin-top:4px;padding-top:10px;border-top:1px solid rgba(255,255,255,.7);display:none}
  .nav-links[data-open="true"]{display:flex;animation:dlUp .28s ease both}
  .nav-links > a{padding:12px 4px;min-height:44px;display:flex;align-items:center;font-size:16px}
}

@media (max-width:760px){
  .hero-art{min-height:0;display:grid;gap:16px;max-width:420px}
  .hero-art > div{position:static;width:auto;max-width:100%;animation:dlIn .8s cubic-bezier(.22,.75,.3,1) both !important}
  .hc-sms{order:3}
  .hc-archive{order:4}
  .hc-admin{order:1}
  .hc-phone{order:2;margin:0 auto;max-width:300px}
  .about-logo{width:140px !important}
}

@media (max-width:420px){
  body{font-size:16px}
  .hero-art{gap:14px}
}
