/* EasyShort Legal & Trust Pages */
body.esl-legal-page{background:#fff!important;overflow-x:hidden}
body.esl-legal-page header.wp-block-template-part,
body.esl-legal-page footer.wp-block-template-part,
body.esl-legal-page .site-header,
body.esl-legal-page .site-footer,
body.esl-legal-page #masthead,
body.esl-legal-page #colophon,
body.esl-legal-page .entry-header,
body.esl-legal-page .page-header,
body.esl-legal-page .entry-title{display:none!important}
body.esl-legal-page .wp-site-blocks,
body.esl-legal-page .site,
body.esl-legal-page .site-content,
body.esl-legal-page .content-area,
body.esl-legal-page main,
body.esl-legal-page article,
body.esl-legal-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.esl-shell{--esl-primary:#6d5dfb;--esl-accent:#14b8a6;box-sizing:border-box;width:min(100%,1240px);margin:0 auto;padding:24px 20px 42px;color:#101828;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.esl-shell *{box-sizing:border-box}.esl-shell a{text-decoration:none}.esl-nav{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:10px 14px 10px 16px;border:1px solid rgba(109,93,251,.18);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 18px 50px rgba(16,24,40,.08);backdrop-filter:blur(14px)}
.esl-brand{display:flex;align-items:center;gap:10px;color:#101828!important;font:800 19px Manrope,sans-serif;letter-spacing:-.03em}.esl-brand span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--esl-primary),var(--esl-accent));color:#fff;box-shadow:0 8px 18px rgba(109,93,251,.25)}
.esl-nav-links{display:flex;align-items:center;gap:24px}.esl-nav-links a{color:#475467!important;font-size:12px;font-weight:800}.esl-nav-links a:hover{color:var(--esl-primary)!important}.esl-nav-links .esl-nav-button{padding:12px 15px;border-radius:11px;background:linear-gradient(135deg,var(--esl-primary),#7c3aed);color:#fff!important;box-shadow:0 10px 24px rgba(109,93,251,.22)}
.esl-mobile-menu{display:none;position:relative}.esl-mobile-menu summary{list-style:none}.esl-mobile-menu summary::-webkit-details-marker{display:none}.esl-mobile-menu summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 13px;border-radius:11px;background:linear-gradient(135deg,var(--esl-primary),#7c3aed);color:#fff;font-size:12px;font-weight:800;cursor:pointer}.esl-mobile-menu summary b{font-size:17px}.esl-mobile-menu>div{position:absolute;right:0;top:52px;display:grid;min-width:230px;padding:8px;border:1px solid rgba(109,93,251,.18);border-radius:15px;background:#fff;box-shadow:0 24px 60px rgba(16,24,40,.2)}.esl-mobile-menu>div a{padding:11px 12px;border-radius:9px;color:#344054!important;font-size:12px;font-weight:800}.esl-mobile-menu>div a:hover{background:#f5f3ff;color:var(--esl-primary)!important}.esl-mobile-menu .esl-mobile-cta{margin-top:4px;background:#f0edff;color:var(--esl-primary)!important}
.esl-notice{margin:20px 0 0;padding:14px 16px;border-radius:12px;font-size:13px;font-weight:750}.esl-notice.esl-success{border:1px solid #abefc6;background:#ecfdf3;color:#027a48}.esl-notice.esl-error{border:1px solid #fecdca;background:#fef3f2;color:#b42318}
.esl-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr);align-items:end;gap:48px;padding:92px 30px 58px}.esl-pill,.esl-kicker{display:inline-flex;align-items:center;width:max-content;padding:7px 11px;border:1px solid rgba(109,93,251,.13);border-radius:999px;background:#f1efff;color:var(--esl-primary);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.esl-hero h1{max-width:800px;margin:18px 0 16px;font:800 clamp(44px,6vw,78px)/.98 Manrope,sans-serif;letter-spacing:-.055em}.esl-hero h1 span{background:linear-gradient(90deg,var(--esl-primary),var(--esl-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.esl-hero>div>p{max-width:720px;margin:0;color:#667085;font-size:17px;line-height:1.75}.esl-hero aside{padding:24px;border:1px solid rgba(109,93,251,.18);border-radius:22px;background:linear-gradient(145deg,#fff,#f7f8ff);box-shadow:0 24px 60px rgba(16,24,40,.08)}.esl-hero aside>span{color:var(--esl-primary);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.esl-hero aside strong{display:block;margin-top:12px;font:800 22px/1.2 Manrope,sans-serif}.esl-hero aside p{margin:10px 0 0;color:#667085;font-size:13px;line-height:1.65}
.esl-grid{display:grid;gap:16px;margin:0 30px}.esl-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.esl-card,.esl-content-card,.esl-form-card,.esl-policy-card{border:1px solid #e4e7ec;border-radius:20px;background:#fff;box-shadow:0 14px 42px rgba(16,24,40,.06)}.esl-card{padding:25px}.esl-card>span{color:var(--esl-primary);font-size:11px;font-weight:800}.esl-card h2{margin:16px 0 8px;font:800 21px Manrope,sans-serif;letter-spacing:-.035em}.esl-card p{margin:0;color:#667085;font-size:13px;line-height:1.7}
.esl-content-card{margin:20px 30px 0;padding:34px}.esl-content-card h2{margin:14px 0 14px;font:800 clamp(28px,4vw,42px)/1.08 Manrope,sans-serif;letter-spacing:-.045em}.esl-content-card p{color:#667085;font-size:14px;line-height:1.8}.esl-content-card a{color:var(--esl-primary)!important;font-weight:750}.esl-split{display:grid;grid-template-columns:1.15fr .85fr;gap:42px}.esl-check-list{display:grid;align-content:center;gap:12px}.esl-check-list>div{display:flex;gap:12px;padding:16px;border:1px solid #eaecf0;border-radius:14px;background:#fafafa}.esl-check-list b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:9px;background:#ecfdf3;color:#027a48}.esl-check-list span,.esl-check-list strong{display:block}.esl-check-list span{color:#667085;font-size:12px;line-height:1.55}.esl-check-list strong{margin-bottom:4px;color:#101828;font-size:13px}

.esl-form-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:20px;margin:0 30px}.esl-form-layout .esl-content-card{margin:0}.esl-topic-list{display:grid;gap:10px;margin-top:20px}.esl-topic-list>div{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid #f0f1f3}.esl-topic-list>div:last-child{border-bottom:0}.esl-topic-list b{color:var(--esl-primary);font-size:12px}.esl-topic-list span,.esl-topic-list strong{display:block}.esl-topic-list span{color:#667085;font-size:12px;line-height:1.55}.esl-topic-list strong{margin-bottom:4px;color:#101828;font-size:13px}.esl-small-note{padding:13px 14px;border-radius:12px;background:#fffaeb;color:#93370d!important;font-size:11px!important}.esl-form-card{padding:30px}.esl-form-card h2{margin:14px 0 22px;font:800 30px Manrope,sans-serif;letter-spacing:-.04em}.esl-form-card>label:not(.esl-consent){display:grid;gap:7px;margin-bottom:15px;color:#344054;font-size:11px;font-weight:800}.esl-form-card input:not([type="checkbox"]),.esl-form-card textarea,.esl-form-card select{width:100%;padding:13px 14px;border:1px solid #d0d5dd;border-radius:11px;outline:0;background:#fff;color:#101828;font:600 13px Inter,sans-serif}.esl-form-card input:not([type="checkbox"]){height:46px}.esl-form-card textarea{resize:vertical;min-height:130px}.esl-form-card input:focus,.esl-form-card textarea:focus,.esl-form-card select:focus{border-color:var(--esl-primary);box-shadow:0 0 0 3px rgba(109,93,251,.1)}.esl-consent{display:flex;align-items:flex-start;gap:9px;margin:4px 0 17px;color:#667085;font-size:11px;line-height:1.5}.esl-consent input{margin-top:2px}.esl-form-card button{width:100%;min-height:48px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--esl-primary),#7c3aed);color:#fff;font:800 13px Inter,sans-serif;cursor:pointer;box-shadow:0 12px 28px rgba(109,93,251,.22)}.esl-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.esl-optional{color:#98a2b3;font-weight:600}
.esl-policy-layout{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:22px;margin:0 30px}.esl-policy-index{position:sticky;top:24px;display:grid;gap:5px;padding:20px;border:1px solid #e4e7ec;border-radius:17px;background:#fff;box-shadow:0 12px 34px rgba(16,24,40,.05)}.esl-policy-index strong{margin-bottom:8px;font:800 15px Manrope,sans-serif}.esl-policy-index a{padding:8px 9px;border-radius:8px;color:#667085!important;font-size:11px;font-weight:700}.esl-policy-index a:hover{background:#f5f3ff;color:var(--esl-primary)!important}.esl-policy-card{padding:38px 42px}.esl-policy-card h2{margin:38px 0 12px;font:800 25px Manrope,sans-serif;letter-spacing:-.035em;scroll-margin-top:30px}.esl-policy-card h2:first-child{margin-top:0}.esl-policy-card p,.esl-policy-card li{color:#475467;font-size:14px;line-height:1.82}.esl-policy-card ul{padding-left:22px}.esl-policy-card a{color:var(--esl-primary)!important;font-weight:750}
.esl-footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin:70px 30px 0;padding:28px 30px;border-radius:20px;background:linear-gradient(145deg,#101828,#1d2939);color:#fff;box-shadow:0 18px 50px rgba(16,24,40,.16)}.esl-footer-brand strong,.esl-footer-brand span,.esl-footer-brand small{display:block}.esl-footer-brand strong{font:800 18px Manrope,sans-serif}.esl-footer-brand span{margin-top:5px;color:#cbd5e1;font-size:12px}.esl-footer-brand small{margin-top:8px;color:#98a2b3;font-size:10px}.esl-footer-brand small a{color:#c4b5fd!important;font-weight:750}.esl-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:15px}.esl-footer nav a{color:#fff!important;font-size:11px;font-weight:800}.esl-copyright{grid-column:1/-1;color:#98a2b3;font-size:10px}
/* Footer links injected into the stable EasyShort plugin. */
.es-site-footer .esl-injected-legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 16px;padding-top:13px;border-top:1px solid rgba(255,255,255,.12)}.es-site-footer .esl-injected-legal-links a{color:#cbd5e1!important;font-size:10px!important;font-weight:750}.es-site-footer .esl-injected-legal-links a:hover{color:#fff!important}
@media(max-width:900px){.esl-hero{grid-template-columns:1fr;gap:22px;padding-top:68px}.esl-grid-3{grid-template-columns:1fr}.esl-split,.esl-form-layout{grid-template-columns:1fr}.esl-policy-layout{grid-template-columns:1fr}.esl-policy-index{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.esl-shell{padding:12px 10px 28px}.esl-nav-links{display:none}.esl-mobile-menu{display:block}.esl-nav{padding:10px 11px}.esl-brand{min-width:0;font-size:17px}.esl-brand span{width:32px;height:32px}.esl-hero{padding:58px 10px 36px}.esl-hero h1{font-size:45px}.esl-hero>div>p{font-size:15px}.esl-grid,.esl-content-card,.esl-form-layout,.esl-policy-layout,.esl-footer{margin-left:10px;margin-right:10px}.esl-content-card,.esl-form-card,.esl-policy-card{padding:24px 20px}.esl-policy-index{grid-template-columns:1fr}.esl-policy-card h2{font-size:22px}.esl-footer{grid-template-columns:1fr;padding:23px 20px}.esl-footer nav{justify-content:flex-start}.esl-copyright{grid-column:auto}.esl-topic-list>div{grid-template-columns:52px 1fr}}
@media(max-width:430px){.esl-mobile-menu summary span{display:none}.esl-mobile-menu summary{width:44px;padding:0}.esl-hero h1{font-size:39px}.esl-hero aside{padding:20px}.esl-form-card h2{font-size:26px}}

/* V1.1: wider legal pages and one clean footer menu. */
@media (min-width:901px){
  body.esl-legal-page .esl-shell{width:min(100%,1440px);padding-left:24px;padding-right:24px}
  body.esl-legal-page .esl-hero{padding-left:38px;padding-right:38px;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}
  body.esl-legal-page .esl-grid,
  body.esl-legal-page .esl-content-card,
  body.esl-legal-page .esl-form-layout,
  body.esl-legal-page .esl-policy-layout,body.esl-legal-page .esl-footer{margin-left:38px;margin-right:38px}
  body.esl-legal-page .esl-form-layout{grid-template-columns:minmax(380px,.8fr) minmax(520px,1.2fr);gap:28px}
  body.esl-legal-page .esl-policy-layout{grid-template-columns:260px minmax(0,1fr);gap:28px}
  body.esl-legal-page .esl-policy-card{padding:44px 50px}
}

/* The main EasyShort footer should show only the five trust/legal pages. */
.es-site-footer>nav[aria-label="EasyShort footer navigation"]{display:none!important}
.es-site-footer .esl-injected-legal-links{
  grid-column:2;
  grid-row:1;
  align-self:center;
  justify-content:flex-end;
  padding-top:0;
  border-top:0;
  gap:12px 18px;
}
.es-site-footer .esl-injected-legal-links a{font-size:11px!important;color:#fff!important}
.es-site-footer>small{grid-column:1/-1!important}

@media(max-width:900px){
  body.esl-legal-page .esl-hero{grid-template-columns:1fr}
  .es-site-footer .esl-injected-legal-links{grid-column:1;grid-row:auto;justify-content:flex-start;padding-top:13px;border-top:1px solid rgba(255,255,255,.12)}
}

/* V1.2: break legal pages out of narrow theme containers and slim both footers. */
body.esl-legal-page .wp-block-post-content,
body.esl-legal-page .entry-content,
body.esl-legal-page .wp-block-group__inner-container,
body.esl-legal-page .is-layout-constrained,
body.esl-legal-page .has-global-padding{
  max-width:none!important;
  width:100%!important;
}

/* Some block themes keep shortcode pages inside a 600–800px content column.
   This safely centres the EasyShort legal layout against the viewport instead. */
body.esl-legal-page .esl-shell{
  position:relative!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:min(100vw,1320px)!important;
  max-width:1320px!important;
  margin-left:0!important;
  margin-right:0!important;
}

@media (min-width:901px){
  body.esl-legal-page .esl-shell{padding-left:24px!important;padding-right:24px!important}
  body.esl-legal-page .esl-hero{padding-left:30px!important;padding-right:30px!important}
  body.esl-legal-page .esl-grid,
  body.esl-legal-page .esl-content-card,
  body.esl-legal-page .esl-form-layout,
  body.esl-legal-page .esl-policy-layout,body.esl-legal-page .esl-footer{margin-left:30px!important;margin-right:30px!important}
}

/* Slim legal-page footer. */
.esl-footer{
  margin-top:52px!important;
  padding:17px 22px!important;
  min-height:76px;
  gap:6px 18px!important;
  border-radius:16px!important;
}
.esl-footer-brand strong{font-size:16px!important}
.esl-footer-brand span{margin-top:3px!important;font-size:10.5px!important}
.esl-footer nav{gap:10px 15px!important}
.esl-footer nav a{font-size:10.5px!important}
.esl-copyright{
  grid-column:1!important;
  font-size:9px!important;
  line-height:1.4;
}
.esl-copyright a{color:#c4b5fd!important;font-weight:750}

/* Slim footer on the main URL shortener, dashboard and account screens too. */
.es-site-footer{
  margin-top:52px!important;
  padding:17px 22px!important;
  min-height:76px!important;
  gap:6px 18px!important;
  border-radius:16px!important;
}
.es-site-footer>div strong{font-size:16px!important}
.es-site-footer>div span{margin-top:3px!important;font-size:10.5px!important}
.es-site-footer .esl-injected-legal-links{
  gap:9px 14px!important;
}
.es-site-footer .esl-injected-legal-links a{font-size:10px!important}
.es-site-footer>small{
  grid-column:1!important;
  font-size:9px!important;
}

@media(max-width:900px){
  body.esl-legal-page .esl-shell{
    width:100vw!important;
    max-width:100vw!important;
  }
  .esl-footer,
  .es-site-footer{
    grid-template-columns:1fr!important;
    padding:17px 18px!important;
  }
  .esl-footer nav,
  .es-site-footer .esl-injected-legal-links{
    grid-column:1!important;
    grid-row:auto!important;
    justify-content:flex-start!important;
    padding-top:10px!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
  .esl-copyright,
  .es-site-footer>small{grid-column:1!important}
}

/* V1.3: softer, less box-heavy legal-page styling. */
body.esl-legal-page .esl-hero aside{
  border:0!important;
  background:linear-gradient(145deg,#f8f7ff,#f5fbfb)!important;
  box-shadow:none!important;
}

/* Turn the three feature cards into one light editorial strip. */
body.esl-legal-page .esl-grid-3{
  gap:0!important;
  border-top:1px solid #e9edf3;
  border-bottom:1px solid #e9edf3;
}
body.esl-legal-page .esl-grid-3 .esl-card{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:24px 26px!important;
}
body.esl-legal-page .esl-grid-3 .esl-card + .esl-card{
  border-left:1px solid #e9edf3!important;
}

/* Main information sections should read like clean page content, not boxed widgets. */
body.esl-legal-page .esl-content-card{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:34px 0!important;
}
body.esl-legal-page .esl-content-card.esl-split{
  border-top:1px solid #eef1f5!important;
  border-bottom:1px solid #eef1f5!important;
}

/* Keep checklist grouping, but remove individual card outlines. */
body.esl-legal-page .esl-check-list>div{
  border:0!important;
  background:#f8fafc!important;
  box-shadow:none!important;
  border-radius:12px!important;
}

/* Policy and terms text should be open and readable. */
body.esl-legal-page .esl-policy-index{
  border:0!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}
body.esl-legal-page .esl-policy-card{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:8px 6px 28px!important;
}
body.esl-legal-page .esl-policy-card h2{
  padding-top:2px;
}

/* Forms still need a clear working area, but without a heavy card frame. */
body.esl-legal-page .esl-form-card{
  border:0!important;
  background:#f8f9fd!important;
  box-shadow:none!important;
  border-radius:18px!important;
}
body.esl-legal-page .esl-form-layout .esl-content-card{
  padding:20px 4px!important;
}

@media(max-width:900px){
  body.esl-legal-page .esl-grid-3{
    border-top:1px solid #e9edf3;
    border-bottom:1px solid #e9edf3;
  }
  body.esl-legal-page .esl-grid-3 .esl-card + .esl-card{
    border-left:0!important;
    border-top:1px solid #e9edf3!important;
  }
  body.esl-legal-page .esl-content-card{
    padding:28px 0!important;
  }
  body.esl-legal-page .esl-policy-card{
    padding:4px 0 24px!important;
  }
}

/* V1.6: remove duplicate main-service links and restore the parent-brand link on the left. */
.esl-parent-service{
  display:block!important;
  margin-top:5px!important;
  color:#cbd5e1!important;
  font-size:10px!important;
  line-height:1.4!important;
}
.esl-parent-service a{
  color:#c4b5fd!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.esl-parent-service a:hover{
  text-decoration:underline!important;
}
.esl-footer-links{
  display:block!important;
}
.esl-footer-legal-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:10px 15px!important;
}
.es-site-footer>nav[aria-label="EasyShort footer navigation"]{
  display:none!important;
}
.es-site-footer .esl-injected-legal-links{
  grid-column:1/-1!important;
  grid-row:auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:10px 15px!important;
  padding-top:9px!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}
@media(max-width:900px){
  .esl-footer-legal-links,
  .es-site-footer .esl-injected-legal-links{
    justify-content:flex-start!important;
  }
}

/* V1.7: compact page-top spacing and a slimmer footer.
   Visual-only overrides; no URL, account, QR, database, form, or security logic changes. */
body.easyshort-page .wp-site-blocks,
body.easyshort-page .site-content,
body.easyshort-page .content-area,
body.easyshort-page main,
body.easyshort-page article,
body.easyshort-page .entry-content,
body.easyshort-page .wp-block-post-content{
  margin-top:0!important;
  padding-top:0!important;
}
body.easyshort-page .wp-site-blocks>main,
body.easyshort-page main>.wp-block-post-content,
body.easyshort-page .wp-block-post-content>.es-app-shell,
body.easyshort-page .entry-content>.es-app-shell{
  margin-block-start:0!important;
}
body.easyshort-page .es-app-shell{
  padding-top:5px!important;
  padding-bottom:44px!important;
}
body.esl-legal-page .esl-shell{
  padding-top:8px!important;
  padding-bottom:30px!important;
}

/* Main EasyShort footer: preserve content and links, reduce height only. */
.es-site-footer{
  margin-top:34px!important;
  padding:11px 18px!important;
  min-height:58px!important;
  gap:3px 14px!important;
  border-radius:14px!important;
}
.es-site-footer>div strong{
  font-size:15px!important;
  line-height:1.2!important;
}
.es-site-footer>div span{
  margin-top:2px!important;
  font-size:10px!important;
  line-height:1.35!important;
}
.es-site-footer .esl-parent-service{
  margin-top:2px!important;
  font-size:9px!important;
}
.es-site-footer .esl-injected-legal-links{
  gap:7px 12px!important;
  padding-top:6px!important;
}
.es-site-footer .esl-injected-legal-links a{
  font-size:9.5px!important;
}
.es-site-footer>small{
  font-size:8.5px!important;
  line-height:1.3!important;
}

/* Legal-page footer: same compact visual rhythm. */
.esl-footer{
  margin-top:34px!important;
  padding:11px 18px!important;
  min-height:58px!important;
  gap:3px 14px!important;
  border-radius:14px!important;
}
.esl-footer-brand strong{
  font-size:15px!important;
  line-height:1.2!important;
}
.esl-footer-brand span{
  margin-top:2px!important;
  font-size:10px!important;
  line-height:1.35!important;
}
.esl-footer .esl-parent-service{
  margin-top:2px!important;
  font-size:9px!important;
}
.esl-footer-legal-links{
  gap:7px 12px!important;
}
.esl-footer-legal-links a{
  font-size:9.5px!important;
}
.esl-copyright{
  font-size:8.5px!important;
  line-height:1.3!important;
}

@media(max-width:700px){
  body.easyshort-page .es-app-shell{padding-top:4px!important;padding-bottom:30px!important}
  body.esl-legal-page .esl-shell{padding-top:5px!important;padding-bottom:24px!important}
  .es-site-footer,.esl-footer{
    margin-top:28px!important;
    padding:12px 15px!important;
    min-height:0!important;
  }
  .es-site-footer .esl-injected-legal-links,
  .esl-footer nav{
    padding-top:7px!important;
    gap:7px 11px!important;
  }
}


/* V1.8: compact CyberEasy-inspired header/footer and tighter vertical rhythm.
   Visual-only. The shortener, QR, account, form, database, email, and security logic are unchanged. */

/* Remove residual theme spacing above the EasyShort application. */
body.easyshort-page,
body.esl-legal-page{
  margin-top:0!important;
  padding-top:0!important;
}
body.easyshort-page .wp-site-blocks,
body.easyshort-page .site,
body.easyshort-page .site-content,
body.easyshort-page .content-area,
body.easyshort-page main,
body.easyshort-page article,
body.easyshort-page .entry-content,
body.easyshort-page .wp-block-post-content,
body.esl-legal-page .wp-site-blocks,
body.esl-legal-page .site,
body.esl-legal-page .site-content,
body.esl-legal-page .content-area,
body.esl-legal-page main,
body.esl-legal-page article,
body.esl-legal-page .entry-content,
body.esl-legal-page .wp-block-post-content{
  margin-block-start:0!important;
  padding-block-start:0!important;
}
body.easyshort-page .wp-site-blocks>*:first-child,
body.easyshort-page main>*:first-child,
body.easyshort-page article>*:first-child,
body.easyshort-page .entry-content>*:first-child,
body.esl-legal-page .wp-site-blocks>*:first-child,
body.esl-legal-page main>*:first-child,
body.esl-legal-page article>*:first-child,
body.esl-legal-page .entry-content>*:first-child{
  margin-block-start:0!important;
}
body.easyshort-page .es-app-shell{
  padding-top:0!important;
  padding-bottom:26px!important;
}
body.esl-legal-page .esl-shell{
  padding-top:0!important;
  padding-bottom:24px!important;
}

/* Compact dark navigation inspired by the parent CyberEasy site, while retaining EasyShort's purple/teal identity. */
.es-nav,
.esl-nav{
  min-height:58px!important;
  padding:8px 13px!important;
  border:1px solid rgba(20,184,166,.28)!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,#0b1728,#142238)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.16)!important;
  overflow:visible!important;
}
.es-nav::after,
.esl-nav::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:-1px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--es-accent,#14b8a6),var(--es-primary,#6d5dfb),transparent);
  opacity:.82;
  pointer-events:none;
}
.es-brand,
.esl-brand{
  color:#fff!important;
  font-size:18px!important;
}
.es-brand span,
.esl-brand span{
  width:32px!important;
  height:32px!important;
  border-radius:9px!important;
}
.es-nav-links>a,
.esl-nav-links>a{
  color:#dce6f2!important;
  font-size:12px!important;
}
.es-nav-links>a:hover,
.esl-nav-links>a:hover{
  color:#5eead4!important;
}
.es-nav-button,
.esl-nav-button{
  padding:10px 14px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#6d5dfb,#7c3aed)!important;
}

/* Reduce the large gaps between the header, hero, feature row, account section, and footer. */
body.easyshort-page .es-hero{
  padding-top:40px!important;
  padding-bottom:28px!important;
}
body.easyshort-page .es-feature-strip{
  margin-bottom:44px!important;
}
body.easyshort-page .es-account-section{
  padding-top:12px!important;
  padding-bottom:38px!important;
}
body.esl-legal-page .esl-hero{
  padding-top:48px!important;
  padding-bottom:38px!important;
}

/* CyberEasy-inspired compact footer with a subtle accent rule. */
.es-site-footer,
.esl-footer{
  position:relative!important;
  margin-top:18px!important;
  padding:10px 17px!important;
  min-height:52px!important;
  border:1px solid rgba(20,184,166,.20)!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#0b1728,#142238)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.14)!important;
}
.es-site-footer::before,
.esl-footer::before{
  content:"";
  position:absolute;
  top:-1px;
  left:16px;
  right:16px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#14b8a6,#6d5dfb,transparent);
  opacity:.78;
}
.es-site-footer>div strong,
.esl-footer-brand strong{
  font-size:14px!important;
}
.es-site-footer>div span,
.esl-footer-brand span{
  margin-top:1px!important;
  font-size:9.5px!important;
}
.esl-parent-service{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-top:4px!important;
  padding:3px 7px!important;
  border:1px solid rgba(94,234,212,.18)!important;
  border-radius:999px!important;
  background:rgba(20,184,166,.08)!important;
  color:#cbd5e1!important;
  font-size:8.5px!important;
}
.esl-parent-service a{
  color:#5eead4!important;
}
.es-site-footer .esl-injected-legal-links,
.esl-footer-legal-links{
  gap:6px 11px!important;
}
.es-site-footer .esl-injected-legal-links a,
.esl-footer-legal-links a{
  font-size:9px!important;
}
.es-site-footer>small,
.esl-copyright{
  font-size:8px!important;
}

@media(max-width:900px){
  body.easyshort-page .es-hero{padding-top:30px!important}
  body.esl-legal-page .esl-hero{padding-top:34px!important}
}
@media(max-width:700px){
  body.easyshort-page .es-app-shell,
  body.esl-legal-page .esl-shell{
    padding-top:0!important;
  }
  .es-nav,
  .esl-nav{
    min-height:54px!important;
    padding:7px 10px!important;
    border-radius:13px!important;
  }
  body.easyshort-page .es-hero{
    padding-top:25px!important;
    padding-bottom:22px!important;
  }
  body.easyshort-page .es-feature-strip{
    margin-bottom:34px!important;
  }
  body.easyshort-page .es-account-section{
    padding-bottom:28px!important;
  }
  .es-site-footer,
  .esl-footer{
    margin-top:14px!important;
    padding:10px 13px!important;
  }
}


/* V1.9: restore the main-page brand label, match the footer icon to the header,
   tighten desktop navigation, and give the CyberEasy parent badge a restrained colour treatment. */

/* The stable main plugin places the brand name as a text node. The helper script wraps it
   so theme styles cannot make it disappear on the homepage. */
.es-brand .es-brand-label{
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  white-space:nowrap!important;
  font:800 18px/1.1 Manrope,Inter,sans-serif!important;
  letter-spacing:-.03em!important;
}
.es-brand,
.esl-brand{
  flex:0 1 auto!important;
  min-width:max-content!important;
  gap:11px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
.es-brand>span:first-child,
.esl-brand>span:first-child{
  flex:0 0 32px!important;
}

/* Slightly more balanced desktop header: readable brand on the left and a tighter action group. */
.es-nav-links,
.esl-nav-links{
  gap:20px!important;
  margin-left:auto!important;
}
.es-nav-links>a,
.esl-nav-links>a{
  white-space:nowrap!important;
}

/* Use the same arrow tile beside the brand in both main and legal-page footers. */
.es-footer-brand-row,
.esl-footer-brand-row{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
}
.es-footer-brand-icon,
.esl-footer-brand-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  border-radius:8px!important;
  background:linear-gradient(135deg,#6d5dfb,#14b8a6)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:900 14px/1 Inter,sans-serif!important;
  box-shadow:0 7px 16px rgba(109,93,251,.24)!important;
}
.es-footer-brand-row strong,
.esl-footer-brand-row strong{
  margin:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:800 14px/1.15 Manrope,Inter,sans-serif!important;
  letter-spacing:-.02em!important;
}

/* Parent-brand badge: colourful enough to read as a relationship, still restrained. */
.esl-parent-service{
  gap:4px!important;
  padding:4px 9px!important;
  border:1px solid rgba(94,234,212,.28)!important;
  background:linear-gradient(90deg,rgba(109,93,251,.14),rgba(20,184,166,.13))!important;
  color:#dbeafe!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)!important;
}
.esl-parent-service a{
  background:linear-gradient(90deg,#c4b5fd,#5eead4)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  font-weight:900!important;
}

@media(max-width:700px){
  .es-brand .es-brand-label{font-size:16px!important}
  .es-nav-links,.esl-nav-links{gap:14px!important}
  .es-footer-brand-icon,.esl-footer-brand-icon{
    flex-basis:26px!important;
    width:26px!important;
    height:26px!important;
  }
}

/* V1.10: make the homepage header/footer use the exact same brand system as
   the legal pages. Visual-only; no shortener, account, QR, form, database,
   email, or security logic changes. */

/* The label is now a STRONG element, so the main plugin's generic .es-brand span
   tile rule can never compress or hide the brand text. */
.es-brand .es-brand-label,
.esl-brand .esl-brand-label{
  display:inline-block!important;
  width:auto!important;
  min-width:max-content!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  white-space:nowrap!important;
  font:800 18px/1.1 Manrope,Inter,sans-serif!important;
  letter-spacing:-.03em!important;
}
.es-brand .es-brand-icon,
.esl-brand .esl-brand-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 32px!important;
  width:32px!important;
  height:32px!important;
  border-radius:9px!important;
  background:linear-gradient(135deg,#6d5dfb,#14b8a6)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:900 15px/1 Inter,sans-serif!important;
  box-shadow:0 8px 18px rgba(109,93,251,.25)!important;
}

/* Exact same footer structure on the homepage, dashboard, pricing and legal pages. */
.es-site-footer.esl-home-footer-normalized,
.esl-footer{
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:18px!important;
  row-gap:6px!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-brand,
.esl-footer .esl-footer-brand{
  min-width:0!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-brand>span:not(.esl-parent-service),
.esl-footer .esl-footer-brand>span:not(.esl-parent-service){
  display:block!important;
  margin-top:2px!important;
  color:#cbd5e1!important;
  font-size:9.5px!important;
  line-height:1.35!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-links,
.esl-footer .esl-footer-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-legal-links,
.esl-footer .esl-footer-legal-links{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px 14px!important;
  padding:0!important;
  border:0!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-legal-links a,
.esl-footer .esl-footer-legal-links a{
  position:relative!important;
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1.3!important;
  opacity:.92!important;
  transition:color .18s ease,transform .18s ease,opacity .18s ease!important;
}
.es-site-footer.esl-home-footer-normalized .esl-footer-legal-links a:hover,
.es-site-footer.esl-home-footer-normalized .esl-footer-legal-links a:focus-visible,
.esl-footer .esl-footer-legal-links a:hover,
.esl-footer .esl-footer-legal-links a:focus-visible{
  color:#5eead4!important;
  -webkit-text-fill-color:#5eead4!important;
  opacity:1!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}
.es-site-footer.esl-home-footer-normalized .esl-copyright,
.esl-footer .esl-copyright{
  grid-column:1/-1!important;
  display:block!important;
  margin:0!important;
  color:#94a3b8!important;
  font-size:8px!important;
  line-height:1.3!important;
}

/* Colourful parent badge behaves the same on every page. */
.es-site-footer.esl-home-footer-normalized .esl-parent-service,
.esl-footer .esl-parent-service{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  width:max-content!important;
  margin-top:4px!important;
  padding:4px 9px!important;
  border:1px solid rgba(94,234,212,.28)!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(109,93,251,.16),rgba(20,184,166,.14))!important;
  color:#dbeafe!important;
  font-size:8.5px!important;
  line-height:1.2!important;
}
.es-site-footer.esl-home-footer-normalized .esl-parent-service a,
.esl-footer .esl-parent-service a{
  background:linear-gradient(90deg,#c4b5fd,#5eead4)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  font-weight:900!important;
  transition:filter .18s ease!important;
}
.es-site-footer.esl-home-footer-normalized .esl-parent-service a:hover,
.esl-footer .esl-parent-service a:hover{
  filter:brightness(1.22)!important;
  text-decoration:none!important;
}

@media(max-width:700px){
  .es-brand .es-brand-label,.esl-brand .esl-brand-label{font-size:16px!important}
  .es-site-footer.esl-home-footer-normalized,.esl-footer{
    grid-template-columns:1fr!important;
  }
  .es-site-footer.esl-home-footer-normalized .esl-footer-links,
  .esl-footer .esl-footer-links{
    justify-content:flex-start!important;
  }
  .es-site-footer.esl-home-footer-normalized .esl-footer-legal-links,
  .esl-footer .esl-footer-legal-links{
    justify-content:flex-start!important;
  }
  .es-site-footer.esl-home-footer-normalized .esl-copyright,
  .esl-footer .esl-copyright{
    grid-column:1!important;
  }
}
