:root {
    --esh-site-accent: #c7a15a;
    --esh-site-black: #11100f;
    --esh-site-ink: #1f1b17;
    --esh-site-muted: #6f685f;
    --esh-site-cream: #f5f0e7;
    --esh-site-paper: #fbfaf7;
    --esh-site-border: #e8e0d4;
    --esh-site-white: #fff;
}

html { scroll-behavior: smooth; }
body.esh-site { margin: 0; background: var(--esh-site-paper); color: var(--esh-site-ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
body.esh-site * { box-sizing: border-box; }
body.esh-site a { color: inherit; }
body.esh-site img { max-width: 100%; height: auto; }
body.esh-site.admin-bar .esh-site-header { top: 32px; }
.esh-site-container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.esh-skip-link { position: fixed; left: 16px; top: -80px; z-index: 99999; padding: 10px 14px; background: #fff; color: #000; border-radius: 8px; }
.esh-skip-link:focus { top: 16px; }

/* Header */
.esh-site-header { position: sticky; top: 0; z-index: 9990; background: rgba(17,16,15,.94); color: #fff; border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(14px); transition: box-shadow .2s ease, background .2s ease; }
.esh-site-header.is-scrolled { box-shadow: 0 12px 35px rgba(0,0,0,.14); background: rgba(17,16,15,.98); }
.esh-nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.esh-brand-wrap { flex: 0 0 auto; }
.esh-site-wordmark { display: inline-flex; flex-direction: column; text-decoration: none; color: #fff !important; letter-spacing: .14em; line-height: .86; }
.esh-site-wordmark span { font-family: Georgia, "Times New Roman", serif; font-size: 20px; }
.esh-site-wordmark small { margin-top: 7px; color: var(--esh-site-accent); font-size: 9px; font-weight: 800; letter-spacing: .38em; }
.esh-brand-wrap .custom-logo-link { display: block; line-height: 0; }
.esh-brand-wrap .custom-logo { width: auto; max-width: 150px; max-height: 47px; object-fit: contain; }
.esh-desktop-nav { display: flex; align-items: center; justify-content: center; gap: 28px; flex: 1; }
.esh-desktop-nav a, .esh-client-link { position: relative; color: rgba(255,255,255,.74) !important; text-decoration: none; font-size: 13px; font-weight: 650; }
.esh-desktop-nav a:hover, .esh-desktop-nav a.is-active, .esh-client-link:hover { color: #fff !important; }
.esh-desktop-nav a.is-active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 1px; background: var(--esh-site-accent); }
.esh-nav-actions { display: flex; align-items: center; gap: 17px; }
.esh-nav-cta { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 17px; border-radius: 999px; background: var(--esh-site-accent); color: #17130e !important; text-decoration: none; font-size: 12px; font-weight: 900; white-space: nowrap; }
.esh-nav-cta:hover { transform: translateY(-1px); }
.esh-menu-button { width: 43px; height: 43px; display: none; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; background: transparent; cursor: pointer; }
.esh-menu-button span { display: block; width: 17px; height: 1px; background: #fff; transition: transform .2s ease; }
.esh-menu-button span + span { margin-top: 5px; }
.esh-menu-button[aria-expanded="true"] span:first-child { transform: translateY(3px) rotate(45deg); }
.esh-menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3px) rotate(-45deg); }
.esh-mobile-menu { border-top: 1px solid rgba(255,255,255,.08); background: #11100f; }
.esh-mobile-menu[hidden] { display: none !important; }
.esh-mobile-menu .esh-site-container { padding: 16px 0 24px; display: grid; gap: 4px; }
.esh-mobile-menu a { padding: 13px 0; color: rgba(255,255,255,.78) !important; text-decoration: none; font-weight: 700; border-bottom: 1px solid rgba(255,255,255,.07); }
.esh-mobile-menu a.is-active { color: var(--esh-site-accent) !important; }
.esh-mobile-menu .esh-mobile-cta { margin-top: 10px; padding: 13px 18px; text-align: center; border: 0; border-radius: 999px; background: var(--esh-site-accent); color: #17130e !important; }

/* Shared typography */
.esh-eyebrow { margin: 0 0 14px; color: var(--esh-site-accent); font-size: 11px; font-weight: 900; letter-spacing: .2em; text-transform: uppercase; }
.esh-section { padding: 108px 0; }
.esh-section-light { background: #fff; }
.esh-section-dark { background: var(--esh-site-black); color: #fff; }
.esh-section-heading { margin-bottom: 44px; }
.esh-section-heading h2, .esh-process-intro h2, .esh-cta-inner h2, .esh-page-hero h1, .esh-about-copy h2, .esh-contact-info h2, .esh-login-copy h1, .esh-login-card h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-weight: 500; letter-spacing: -.035em; }
.esh-section-heading h2 { font-size: clamp(36px, 5vw, 62px); line-height: 1; }
.esh-section-heading > p { max-width: 540px; color: var(--esh-site-muted); font-size: 16px; line-height: 1.7; }
.esh-heading-split { display: grid; grid-template-columns: 1fr .72fr; gap: 64px; align-items: end; }
.esh-heading-center { max-width: 720px; margin-left: auto; margin-right: auto; text-align: center; }
.esh-heading-center > p { margin-left: auto; margin-right: auto; }
.esh-button { min-height: 51px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 0 22px; border: 1px solid transparent; border-radius: 999px; text-decoration: none; font-size: 13px; font-weight: 900; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.esh-button:hover { transform: translateY(-2px); }
.esh-button-gold { background: var(--esh-site-accent); color: #17130e !important; box-shadow: 0 12px 30px rgba(199,161,90,.18); }
.esh-button-dark { background: var(--esh-site-black); color: #fff !important; }
.esh-button-ghost { border-color: rgba(255,255,255,.26); color: #fff !important; background: transparent; }

/* Home hero */
.esh-home-hero { position: relative; overflow: hidden; background: var(--esh-site-black); color: #fff; }
.esh-home-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 77% 22%, rgba(199,161,90,.18), transparent 27%), linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px); background-size: auto, 44px 44px, 44px 44px; pointer-events: none; }
.esh-hero-grid { position: relative; min-height: 680px; display: grid; grid-template-columns: 1.03fr .97fr; gap: 72px; align-items: center; padding-top: 70px; padding-bottom: 58px; }
.esh-hero-copy h1 { max-width: 690px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(55px, 7vw, 92px); font-weight: 500; letter-spacing: -.055em; line-height: .92; }
.esh-hero-lead { max-width: 650px; margin: 27px 0 0; color: rgba(255,255,255,.68); font-size: 17px; line-height: 1.75; }
.esh-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 33px; }
.esh-hero-art { position: relative; min-height: 470px; }
.esh-art-frame { position: absolute; inset: 30px 20px 26px 48px; padding: 34px; border: 1px solid rgba(255,255,255,.16); background: linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.015)); overflow: hidden; }
.esh-art-frame::before { content: ""; position: absolute; width: 310px; height: 310px; border: 1px solid rgba(199,161,90,.4); border-radius: 50%; right: -74px; top: -87px; }
.esh-art-frame::after { content: ""; position: absolute; width: 130px; height: 1px; background: var(--esh-site-accent); left: 34px; bottom: 74px; }
.esh-art-label { color: rgba(255,255,255,.45); font-size: 10px; font-weight: 900; letter-spacing: .23em; }
.esh-art-title { position: absolute; left: 34px; top: 105px; font-family: Georgia, serif; font-size: clamp(45px, 5vw, 69px); line-height: .86; letter-spacing: -.045em; }
.esh-art-title em { color: var(--esh-site-accent); font-weight: 400; }
.esh-art-note { position: absolute; left: 34px; bottom: 38px; font-size: 9px; letter-spacing: .16em; color: rgba(255,255,255,.5); }
.esh-art-orbit { position: absolute; width: 210px; height: 210px; right: 45px; top: 105px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; }
.esh-art-orbit::before, .esh-art-orbit::after { content: ""; position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); }
.esh-art-orbit::before { inset: 29px; }
.esh-art-orbit::after { inset: 65px; background: var(--esh-site-accent); border: 0; opacity: .95; }
.esh-floating-card { position: absolute; width: 190px; padding: 17px 18px; border-radius: 14px; background: rgba(247,242,232,.96); color: var(--esh-site-ink); box-shadow: 0 22px 55px rgba(0,0,0,.26); }
.esh-floating-card span { display: block; color: #96743c; font-size: 9px; font-weight: 900; letter-spacing: .16em; }
.esh-floating-card strong { display: block; margin-top: 8px; font-family: Georgia, serif; font-size: 20px; }
.esh-floating-card small { display: block; margin-top: 5px; color: var(--esh-site-muted); line-height: 1.35; }
.esh-floating-card-top { right: -7px; top: 44px; }
.esh-floating-card-bottom { left: 0; bottom: 3px; }
.esh-service-ribbon { position: relative; min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.52); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.esh-service-ribbon i { width: 4px; height: 4px; border-radius: 50%; background: var(--esh-site-accent); }

/* Agency services */
.esh-agency-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 1px solid var(--esh-site-border); border-left: 1px solid var(--esh-site-border); }
.esh-agency-service-card { min-height: 310px; padding: 30px; border-right: 1px solid var(--esh-site-border); border-bottom: 1px solid var(--esh-site-border); background: #fff; transition: background .16s ease, transform .16s ease; }
.esh-agency-service-card:hover { background: #fbf7ef; }
.esh-agency-service-card > span { color: var(--esh-site-accent); font-size: 10px; font-weight: 900; letter-spacing: .18em; }
.esh-agency-service-card h3 { margin: 54px 0 15px; font-family: Georgia, serif; font-size: 27px; font-weight: 500; line-height: 1.05; letter-spacing: -.025em; }
.esh-agency-service-card p { margin: 0; color: var(--esh-site-muted); line-height: 1.65; }
.esh-agency-service-card small { display: block; margin-top: 21px; padding-top: 18px; border-top: 1px solid var(--esh-site-border); color: #8a8177; line-height: 1.5; }
.esh-section-link { margin-top: 28px; text-align: right; }
.esh-section-link a, .esh-about-copy a { text-decoration: none; font-weight: 900; }
.esh-section-link a span { margin-left: 9px; color: var(--esh-site-accent); }

/* Process */
.esh-process-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: start; }
.esh-process-intro { position: sticky; top: 130px; }
.esh-process-intro h2 { font-size: clamp(40px, 5vw, 63px); line-height: 1; }
.esh-process-intro > p:last-child { max-width: 480px; margin-top: 23px; color: rgba(255,255,255,.56); line-height: 1.7; }
.esh-process-list { border-top: 1px solid rgba(255,255,255,.13); }
.esh-process-list > div { display: grid; grid-template-columns: 72px 1fr; gap: 15px; padding: 28px 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.esh-process-list > div > span { color: var(--esh-site-accent); font-size: 10px; font-weight: 900; letter-spacing: .18em; }
.esh-process-list section h3 { margin: 0 0 7px; font-family: Georgia, serif; font-size: 29px; font-weight: 500; }
.esh-process-list section p { margin: 0; color: rgba(255,255,255,.55); line-height: 1.65; }

/* Consultations preview */
.esh-home-consultations { background: var(--esh-site-cream); }
.esh-featured-consults { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 15px; }
.esh-featured-consult { position: relative; min-height: 286px; padding: 28px; border: 1px solid #ded3c3; border-radius: 18px; background: rgba(255,255,255,.58); text-decoration: none; transition: transform .16s ease, background .16s ease; }
.esh-featured-consult:hover { transform: translateY(-3px); background: #fff; }
.esh-featured-consult > span { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #171512; color: var(--esh-site-accent); font-family: Georgia, serif; font-size: 20px; }
.esh-featured-consult h3 { margin: 35px 0 10px; font-family: Georgia, serif; font-size: 26px; font-weight: 500; line-height: 1.05; }
.esh-featured-consult p { margin: 0; color: var(--esh-site-muted); line-height: 1.55; }
.esh-featured-consult small { display: block; margin-top: 17px; color: #8e8478; font-weight: 750; }
.esh-featured-consult b { position: absolute; right: 24px; bottom: 21px; color: var(--esh-site-accent); font-size: 21px; }
.esh-center-action { margin-top: 31px; text-align: center; }

/* CTA/footer */
.esh-site-cta { padding: 80px 0; background: #1b1815; color: #fff; }
.esh-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 55px; }
.esh-cta-inner h2 { max-width: 760px; font-size: clamp(38px, 5vw, 62px); line-height: 1; }
.esh-site-footer { padding: 74px 0 28px; background: #0d0c0b; color: #fff; }
.esh-footer-top { display: grid; grid-template-columns: 1fr .75fr; gap: 80px; padding-bottom: 54px; }
.esh-footer-brand p { max-width: 370px; margin: 28px 0 0; color: rgba(255,255,255,.48); line-height: 1.65; }
.esh-footer-links { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; }
.esh-footer-links > div { display: grid; align-content: start; gap: 11px; }
.esh-footer-links span { margin-bottom: 8px; color: var(--esh-site-accent); font-size: 10px; font-weight: 900; letter-spacing: .17em; text-transform: uppercase; }
.esh-footer-links a { color: rgba(255,255,255,.72) !important; text-decoration: none; font-size: 14px; }
.esh-footer-links a:hover { color: #fff !important; }
.esh-footer-bottom { padding-top: 24px; display: flex; justify-content: space-between; gap: 30px; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.35); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }

/* Inner page hero */
.esh-page-hero { padding: 125px 0 105px; background: var(--esh-site-black); color: #fff; }
.esh-page-hero .esh-site-container { max-width: 1180px; }
.esh-page-hero h1 { max-width: 880px; font-size: clamp(55px, 8vw, 95px); line-height: .92; }
.esh-page-hero > .esh-site-container > p:last-child { max-width: 680px; margin: 26px 0 0; color: rgba(255,255,255,.58); font-size: 17px; line-height: 1.72; }
.esh-page-hero-small { padding-bottom: 80px; }
.esh-page-hero-small h1 { max-width: 900px; font-size: clamp(50px, 7vw, 82px); }

/* Services page */
.esh-service-detail-list { display: grid; }
.esh-service-detail { display: grid; grid-template-columns: 75px 1fr auto; gap: 35px; align-items: start; padding: 42px 0; border-bottom: 1px solid var(--esh-site-border); }
.esh-service-detail:first-child { border-top: 1px solid var(--esh-site-border); }
.esh-service-detail-number { color: var(--esh-site-accent); font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.esh-service-detail h2 { margin: 0 0 13px; font-family: Georgia, serif; font-size: clamp(32px, 4vw, 47px); font-weight: 500; letter-spacing: -.03em; }
.esh-service-detail p { max-width: 700px; margin: 0; color: var(--esh-site-muted); font-size: 16px; line-height: 1.7; }
.esh-service-detail-note { margin-top: 17px; color: #8b8175; font-size: 13px; }
.esh-service-detail > a { margin-top: 28px; text-decoration: none; font-size: 13px; font-weight: 900; white-space: nowrap; }

/* Consultation page */
.esh-consultation-section { background: #fff; }
.esh-consultation-section .esh-public-wrap { max-width: none; }
.esh-consultation-section .esh-public-heading { display: none; }
.esh-consultation-section .esh-public-service-card { border-color: var(--esh-site-border); border-radius: 16px; box-shadow: none; }
.esh-consultation-section .esh-public-service-card:hover { box-shadow: 0 15px 40px rgba(34,28,21,.07); }

/* Portfolio */
.esh-portfolio-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 17px; }
.esh-portfolio-card { position: relative; min-height: 400px; padding: 31px; overflow: hidden; border: 1px solid var(--esh-site-border); background: #f4efe5; }
.esh-portfolio-card > span { font-size: 10px; font-weight: 900; letter-spacing: .18em; color: #8b7450; }
.esh-portfolio-card h2 { max-width: 540px; margin: 32px 0 0; font-family: Georgia, serif; font-size: clamp(31px, 4vw, 46px); font-weight: 500; line-height: 1.02; letter-spacing: -.03em; }
.esh-portfolio-large { min-height: 545px; }
.esh-portfolio-dark { background: #171512; color: #fff; border-color: #171512; }
.esh-portfolio-dark > span { color: var(--esh-site-accent); }
.esh-portfolio-grid > article:nth-child(3), .esh-portfolio-grid > article:nth-child(4) { min-height: 360px; }
.esh-portfolio-gold { background: #d6b56f; border-color: #d6b56f; }
.esh-portfolio-gold > span { color: #4f3d1f; }
.esh-portfolio-shape { position: absolute; width: 225px; height: 225px; right: -28px; bottom: -35px; border: 1px solid rgba(31,27,23,.22); border-radius: 50%; display: grid; place-items: center; }
.esh-portfolio-shape::before { content: ""; position: absolute; inset: 29px; border: 1px solid rgba(31,27,23,.15); border-radius: 50%; }
.esh-portfolio-shape b { font-family: Georgia, serif; font-size: 57px; color: rgba(31,27,23,.38); }
.esh-browser-motif { position: absolute; right: 28px; bottom: 29px; width: 54%; height: 160px; border: 1px solid rgba(255,255,255,.2); }
.esh-browser-motif i { display: inline-block; width: 5px; height: 5px; margin: 12px 0 0 8px; border-radius: 50%; background: rgba(255,255,255,.35); }
.esh-browser-motif div { position: absolute; left: 18px; right: 18px; top: 43px; bottom: 17px; background: linear-gradient(135deg, rgba(199,161,90,.28), rgba(255,255,255,.03)); }
.esh-paper-stack i { position: absolute; width: 160px; height: 210px; right: 40px; bottom: -22px; background: #fff; border: 1px solid #d8cec0; transform: rotate(7deg); }
.esh-paper-stack i:nth-child(2) { right: 66px; bottom: -34px; transform: rotate(-3deg); background: #f7f2e8; }
.esh-paper-stack i:nth-child(3) { right: 91px; bottom: -45px; transform: rotate(-11deg); background: #d8b86f; }
.esh-campaign-motif { position: absolute; right: 35px; bottom: 23px; font-family: Georgia, serif; font-size: 145px; line-height: 1; color: rgba(31,27,23,.18); }
.esh-portfolio-note { margin-top: 23px; padding: 15px 18px; border: 1px solid var(--esh-site-border); background: #fbfaf7; color: var(--esh-site-muted); }
.esh-portfolio-note p { margin: 0; }

/* About */
.esh-about-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 95px; align-items: start; }
.esh-about-statement { min-height: 500px; padding: 40px; display: flex; flex-direction: column; justify-content: space-between; background: #171512; color: #fff; }
.esh-about-statement span { color: var(--esh-site-accent); font-size: 10px; font-weight: 900; letter-spacing: .2em; }
.esh-about-statement p { margin: 0; font-family: Georgia, serif; font-size: clamp(34px, 4vw, 52px); line-height: 1.04; letter-spacing: -.03em; }
.esh-about-copy { padding-top: 50px; }
.esh-about-copy h2 { font-size: clamp(38px, 5vw, 58px); line-height: 1; }
.esh-about-copy > p:not(.esh-eyebrow) { color: var(--esh-site-muted); font-size: 16px; line-height: 1.8; }
.esh-about-copy a { display: inline-block; margin-top: 15px; }
.esh-values-section { background: var(--esh-site-cream); }
.esh-values-grid { display: grid; grid-template-columns: repeat(4,1fr); border-left: 1px solid #dcd1c0; border-top: 1px solid #dcd1c0; }
.esh-values-grid > div { min-height: 235px; padding: 27px; border-right: 1px solid #dcd1c0; border-bottom: 1px solid #dcd1c0; }
.esh-values-grid span { color: #8e7040; font-size: 10px; font-weight: 900; letter-spacing: .17em; }
.esh-values-grid h3 { margin: 70px 0 10px; font-family: Georgia, serif; font-size: 28px; font-weight: 500; }
.esh-values-grid p { margin: 0; color: var(--esh-site-muted); line-height: 1.5; }

/* Contact */
.esh-contact-section { background: #fff; }
.esh-contact-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 78px; align-items: start; }
.esh-contact-info { padding-top: 23px; }
.esh-contact-info h2 { font-size: clamp(38px, 5vw, 57px); line-height: 1; }
.esh-contact-info > p:not(.esh-eyebrow) { max-width: 430px; color: var(--esh-site-muted); line-height: 1.7; }
.esh-contact-links { margin-top: 36px; display: grid; border-top: 1px solid var(--esh-site-border); }
.esh-contact-links a { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 18px 0; border-bottom: 1px solid var(--esh-site-border); text-decoration: none; }
.esh-contact-links span { color: var(--esh-site-muted); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .13em; }
.esh-contact-links strong { font-size: 13px; }
.esh-contact-card { padding: 34px; border: 1px solid var(--esh-site-border); background: var(--esh-site-paper); }
.esh-contact-form { display: grid; gap: 18px; }
.esh-contact-form label { display: grid; gap: 7px; }
.esh-contact-form label > span { font-size: 12px; font-weight: 850; }
.esh-contact-form input, .esh-contact-form select, .esh-contact-form textarea { width: 100%; border: 1px solid #d8d0c5; border-radius: 9px; background: #fff; color: var(--esh-site-ink); font: inherit; outline: none; }
.esh-contact-form input, .esh-contact-form select { height: 49px; padding: 0 13px; }
.esh-contact-form textarea { padding: 13px; resize: vertical; }
.esh-contact-form input:focus, .esh-contact-form select:focus, .esh-contact-form textarea:focus { border-color: var(--esh-site-accent); box-shadow: 0 0 0 3px rgba(199,161,90,.12); }
.esh-form-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.esh-form-submit { width: 100%; border: 0; cursor: pointer; font: inherit; }
.esh-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.esh-form-message { display: grid; gap: 3px; margin-bottom: 18px; padding: 14px 16px; border-radius: 10px; }
.esh-form-message.success { background: #edf7f1; color: #226840; border: 1px solid #d2eadb; }
.esh-form-message.error { background: #fff1f1; color: #933b3b; border: 1px solid #edd2d2; }

/* Login */
.esh-login-page { min-height: 680px; padding: 100px 0; background: linear-gradient(135deg, #11100f 0 52%, #f3eee4 52% 100%); }
.esh-login-grid { display: grid; grid-template-columns: 1fr 440px; gap: 110px; align-items: center; }
.esh-login-copy { color: #fff; }
.esh-login-copy h1 { max-width: 650px; font-size: clamp(55px, 7vw, 86px); line-height: .93; }
.esh-login-copy > p:not(.esh-eyebrow) { max-width: 570px; color: rgba(255,255,255,.58); font-size: 16px; line-height: 1.75; }
.esh-login-feature-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
.esh-login-feature-list span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.7); font-size: 11px; }
.esh-login-card { padding: 35px; background: #fff; border-radius: 18px; box-shadow: 0 25px 70px rgba(0,0,0,.14); }
.esh-login-card h2 { font-size: 39px; }
.esh-login-card > p:not(.esh-eyebrow) { color: var(--esh-site-muted); line-height: 1.65; }
.esh-login-card form { margin-top: 25px; }
.esh-login-card form p { margin: 0 0 16px; }
.esh-login-card form label { display: block; margin-bottom: 7px; font-size: 12px; font-weight: 850; }
.esh-login-card form input[type="text"], .esh-login-card form input[type="password"] { width: 100%; height: 48px; padding: 0 12px; border: 1px solid #d8d0c5; border-radius: 9px; }
.esh-login-card form .login-remember label { display: inline-flex; align-items: center; gap: 7px; font-weight: 650; }
.esh-login-card form input[type="submit"] { width: 100%; min-height: 49px; border: 0; border-radius: 999px; background: var(--esh-site-black); color: #fff; font-weight: 900; cursor: pointer; }
.esh-forgot-link, .esh-logout-link { display: inline-block; margin-top: 14px; color: var(--esh-site-muted) !important; font-size: 12px; }
.esh-login-button { width: 100%; margin-top: 14px; }

/* Public consultation component alignment */
.esh-site .esh-public-wrap { color: var(--esh-site-ink); font-family: inherit; }

@media (max-width: 1050px) {
    .esh-desktop-nav { gap: 16px; }
    .esh-desktop-nav a { font-size: 12px; }
    .esh-client-link { display: none; }
    .esh-hero-grid { grid-template-columns: 1fr 1fr; gap: 35px; }
    .esh-art-frame { inset-left: 20px; }
    .esh-agency-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .esh-process-grid { gap: 55px; }
    .esh-login-grid { gap: 55px; }
}

@media (max-width: 850px) {
    body.esh-site.admin-bar .esh-site-header { top: 46px; }
    .esh-site-container { width: min(100% - 34px, 1180px); }
    .esh-desktop-nav, .esh-nav-actions .esh-client-link, .esh-nav-actions .esh-nav-cta { display: none; }
    .esh-menu-button { display: block; }
    .esh-nav-wrap { min-height: 72px; }
    .esh-hero-grid { grid-template-columns: 1fr; min-height: auto; padding-top: 92px; padding-bottom: 70px; }
    .esh-hero-copy h1 { max-width: 760px; }
    .esh-hero-art { min-height: 430px; margin-top: 12px; }
    .esh-service-ribbon { overflow-x: auto; justify-content: flex-start; white-space: nowrap; }
    .esh-service-ribbon span { padding-right: 15px; }
    .esh-heading-split, .esh-process-grid, .esh-about-grid, .esh-contact-grid, .esh-footer-top, .esh-login-grid { grid-template-columns: 1fr; gap: 45px; }
    .esh-process-intro { position: static; }
    .esh-featured-consults { grid-template-columns: 1fr; }
    .esh-featured-consult { min-height: 230px; }
    .esh-cta-inner { align-items: flex-start; flex-direction: column; }
    .esh-service-detail { grid-template-columns: 48px 1fr; }
    .esh-service-detail > a { grid-column: 2; margin-top: 0; }
    .esh-portfolio-grid { grid-template-columns: 1fr; }
    .esh-portfolio-large { min-height: 440px; }
    .esh-values-grid { grid-template-columns: 1fr 1fr; }
    .esh-login-page { background: linear-gradient(#11100f 0 52%, #f3eee4 52% 100%); }
    .esh-login-grid { grid-template-columns: 1fr; }
    .esh-login-card { max-width: 570px; width: 100%; margin: 0 auto; }
}

@media (max-width: 620px) {
    .esh-site-container { width: min(100% - 26px, 1180px); }
    .esh-section { padding: 78px 0; }
    .esh-page-hero { padding: 92px 0 74px; }
    .esh-home-hero::before { background-size: auto, 36px 36px, 36px 36px; }
    .esh-hero-grid { padding-top: 72px; }
    .esh-hero-copy h1 { font-size: clamp(48px, 15vw, 69px); }
    .esh-hero-lead { font-size: 15px; }
    .esh-hero-actions { flex-direction: column; align-items: stretch; }
    .esh-button { width: 100%; }
    .esh-hero-art { min-height: 370px; }
    .esh-art-frame { inset: 20px 0 15px 20px; padding: 25px; }
    .esh-art-title { left: 25px; top: 90px; font-size: 47px; }
    .esh-art-note { left: 25px; bottom: 29px; }
    .esh-art-frame::after { left: 25px; bottom: 60px; }
    .esh-art-orbit { width: 155px; height: 155px; right: 27px; top: 115px; }
    .esh-floating-card { width: 154px; padding: 13px; }
    .esh-floating-card-top { right: -3px; top: 28px; }
    .esh-floating-card-bottom { left: 0; bottom: -1px; }
    .esh-agency-service-grid { grid-template-columns: 1fr; }
    .esh-agency-service-card { min-height: 260px; }
    .esh-agency-service-card h3 { margin-top: 37px; }
    .esh-section-link { text-align: left; }
    .esh-process-list > div { grid-template-columns: 48px 1fr; }
    .esh-footer-links { grid-template-columns: 1fr 1fr; gap: 25px; }
    .esh-footer-bottom { align-items: flex-start; flex-direction: column; }
    .esh-page-hero h1, .esh-page-hero-small h1 { font-size: clamp(45px, 14vw, 67px); }
    .esh-service-detail { grid-template-columns: 1fr; gap: 13px; }
    .esh-service-detail > a { grid-column: 1; }
    .esh-service-detail h2 { font-size: 35px; }
    .esh-portfolio-card, .esh-portfolio-large { min-height: 370px; }
    .esh-values-grid { grid-template-columns: 1fr; }
    .esh-values-grid > div { min-height: 190px; }
    .esh-values-grid h3 { margin-top: 48px; }
    .esh-form-two { grid-template-columns: 1fr; }
    .esh-contact-card { padding: 22px; }
    .esh-login-page { padding: 76px 0; }
    .esh-login-copy h1 { font-size: 56px; }
    .esh-login-card { padding: 25px; }
}

/* Web app shell */
html { min-height: 100%; background: #11100f; }
body.esh-webapp { min-height: 100dvh; overscroll-behavior-y: none; }
body.esh-webapp #wpadminbar { display: none !important; }
body.esh-webapp .esh-site-header { top: 0 !important; }
.esh-install-nav { min-height: 38px; padding: 0 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: rgba(255,255,255,.05); color: rgba(255,255,255,.84); font: inherit; font-size: 11px; font-weight: 850; cursor: pointer; }
.esh-install-nav:hover { color: #fff; border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.09); }
.esh-install-nav[hidden] { display: none !important; }

.esh-app-quick-section { padding: 22px 0 28px; background: #11100f; border-top: 1px solid rgba(255,255,255,.06); }
.esh-app-quick-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.esh-app-quick-grid > a { min-height: 152px; padding: 22px; display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto 1fr auto; gap: 8px 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: #171512; color: #fff !important; text-decoration: none; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.esh-app-quick-grid > a:hover { transform: translateY(-2px); border-color: rgba(199,161,90,.42); background: #1d1a16; }
.esh-app-quick-grid > a span { color: var(--esh-site-accent); font-size: 10px; font-weight: 900; letter-spacing: .18em; }
.esh-app-quick-grid > a strong { grid-column: 1 / -1; align-self: end; font-family: Georgia, serif; font-size: 24px; font-weight: 500; letter-spacing: -.02em; }
.esh-app-quick-grid > a small { color: rgba(255,255,255,.56); font-size: 12px; line-height: 1.45; }
.esh-app-quick-grid > a b { align-self: end; color: var(--esh-site-accent); font-size: 18px; }
.esh-install-strip { margin-top: 12px; min-height: 74px; padding: 12px 14px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid rgba(255,255,255,.08); border-radius: 18px; background: #0e0d0c; color: #fff; }
.esh-install-strip[hidden] { display: none !important; }
.esh-install-strip > div { display: flex; align-items: center; gap: 12px; }
.esh-install-icon { width: 44px; height: 44px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 12px; background: var(--esh-site-accent); color: #11100f; font-family: Georgia,serif; font-weight: 800; }
.esh-install-strip p { margin: 0; display: grid; gap: 3px; }
.esh-install-strip p strong { font-size: 13px; }
.esh-install-strip p small { color: rgba(255,255,255,.5); font-size: 11px; }
.esh-install-strip button { min-height: 39px; padding: 0 14px; flex: 0 0 auto; border: 0; border-radius: 999px; background: #fff; color: #11100f; font: inherit; font-size: 11px; font-weight: 900; cursor: pointer; }

.esh-app-tabbar { display: none; }
.esh-app-tab-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.esh-app-tabbar a.is-primary .esh-app-tab-icon svg { fill: currentColor; stroke-width: 1.3; }

.esh-install-sheet[hidden] { display: none !important; }
.esh-install-sheet { position: fixed; inset: 0; z-index: 100000; display: grid; align-items: end; }
.esh-install-sheet-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(0,0,0,.58); backdrop-filter: blur(6px); cursor: pointer; }
.esh-install-sheet > section { position: relative; z-index: 1; width: min(100%,560px); margin: 0 auto; padding: 17px 24px calc(24px + env(safe-area-inset-bottom)); border-radius: 28px 28px 0 0; background: #fff; color: #1f1b17; box-shadow: 0 -30px 70px rgba(0,0,0,.22); }
.esh-install-sheet-handle { width: 42px; height: 4px; margin: 0 auto 22px; border-radius: 99px; background: #d7d0c6; }
.esh-install-sheet-icon { width: 58px; height: 58px; margin-bottom: 17px; display: grid; place-items: center; border-radius: 16px; background: #11100f; color: var(--esh-site-accent); font-family: Georgia,serif; font-size: 20px; }
.esh-install-sheet h2 { margin: 0 0 11px; font-family: Georgia,serif; font-size: 34px; font-weight: 500; line-height: 1.04; letter-spacing: -.03em; }
.esh-install-sheet > section > p:not(.esh-eyebrow) { margin: 0 0 16px; color: #6f685f; line-height: 1.6; }
.esh-install-sheet ol { margin: 0 0 22px; padding-left: 22px; color: #4d473f; line-height: 1.7; }
.esh-install-open { overflow: hidden; }
.esh-is-standalone .esh-install-nav,
.esh-is-standalone .esh-install-strip { display: none !important; }

@media (max-width: 1050px) {
    .esh-install-nav { display: none; }
}

@media (max-width: 850px) {
    body.esh-webapp { padding-bottom: calc(74px + env(safe-area-inset-bottom)); }
    body.esh-webapp .esh-site-footer { padding-bottom: 35px; }
    .esh-app-quick-grid { grid-template-columns: 1fr; }
    .esh-app-quick-grid > a { min-height: 124px; }
    .esh-install-strip { align-items: flex-start; flex-direction: column; }
    .esh-install-strip button { width: 100%; min-height: 43px; }
    .esh-app-tabbar { position: fixed; left: 10px; right: 10px; bottom: calc(8px + env(safe-area-inset-bottom)); z-index: 9998; height: 66px; padding: 6px 7px; display: grid; grid-template-columns: repeat(5,1fr); align-items: stretch; border: 1px solid rgba(255,255,255,.1); border-radius: 22px; background: rgba(17,16,15,.94); box-shadow: 0 18px 45px rgba(0,0,0,.28); backdrop-filter: blur(18px); }
    .esh-app-tabbar a { position: relative; min-width: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 3px; border-radius: 16px; color: rgba(255,255,255,.52) !important; text-decoration: none; }
    .esh-app-tabbar a small { font-size: 9px; font-weight: 750; line-height: 1; }
    .esh-app-tabbar a.is-active { color: #fff !important; background: rgba(255,255,255,.07); }
    .esh-app-tabbar a.is-active:not(.is-primary)::after { content: ""; position: absolute; top: 2px; width: 4px; height: 4px; border-radius: 50%; background: var(--esh-site-accent); }
    .esh-app-tabbar a.is-primary .esh-app-tab-icon { width: 36px; height: 36px; margin-top: -18px; display: grid; place-items: center; border: 4px solid #11100f; border-radius: 50%; background: var(--esh-site-accent); color: #11100f; box-shadow: 0 8px 18px rgba(0,0,0,.23); }
    .esh-app-tabbar a.is-primary small { margin-top: -1px; }
    .esh-app-tabbar a.is-primary.is-active { background: transparent; color: #fff !important; }
    .esh-mobile-menu { padding-bottom: 68px; }
}

@media (max-width: 620px) {
    .esh-app-quick-section { padding-top: 14px; }
    .esh-app-quick-grid > a { padding: 18px; border-radius: 16px; }
    .esh-app-quick-grid > a strong { font-size: 22px; }
    .esh-install-sheet > section { padding-left: 20px; padding-right: 20px; }
    .esh-install-sheet h2 { font-size: 31px; }
}

/* Batch 5 — Essense Studios monochrome brand system */
:root {
    --esh-site-accent: #000000;
    --esh-site-black: #000000;
    --esh-site-ink: #0a0a0a;
    --esh-site-muted: #666666;
    --esh-site-cream: #f4f4f4;
    --esh-site-paper: #f7f7f7;
    --esh-site-border: #dedede;
    --esh-site-white: #ffffff;
}
html { background:#000; }
body.esh-site { background:#f7f7f7; color:#0a0a0a; }
.esh-site-header { background:rgba(0,0,0,.95); border-bottom-color:rgba(255,255,255,.12); }
.esh-site-header.is-scrolled { background:rgba(0,0,0,.985); box-shadow:0 14px 38px rgba(0,0,0,.18); }
.esh-nav-wrap { min-height:78px; }
.esh-brand-logo-link { display:inline-flex; align-items:center; line-height:0; text-decoration:none; }
.esh-brand-logo { width:auto; height:41px; max-width:225px; object-fit:contain; }
.esh-desktop-nav a, .esh-client-link { color:rgba(255,255,255,.68)!important; font-weight:600; }
.esh-desktop-nav a:hover, .esh-desktop-nav a.is-active, .esh-client-link:hover { color:#fff!important; }
.esh-desktop-nav a.is-active::after { background:#fff; }
.esh-nav-cta { border:1px solid #fff; background:#fff; color:#000!important; }
.esh-nav-cta:hover { background:#eaeaea; }
.esh-install-nav { border-color:rgba(255,255,255,.22); background:transparent; color:#fff; }
.esh-mobile-menu { background:#000; border-top-color:rgba(255,255,255,.12); }
.esh-mobile-menu a.is-active { color:#fff!important; }
.esh-mobile-menu .esh-mobile-cta { background:#fff; color:#000!important; border-radius:12px; }

.esh-eyebrow { color:#000; letter-spacing:.22em; }
.esh-section-dark .esh-eyebrow,
.esh-home-hero .esh-eyebrow,
.esh-page-hero .esh-eyebrow,
.esh-login-page .esh-eyebrow,
.esh-site-footer .esh-eyebrow { color:#fff; }
.esh-section-light { background:#fff; }
.esh-section-dark { background:#000; }
.esh-button { border-radius:10px; }
.esh-button-gold { background:#fff; color:#000!important; box-shadow:none; }
.esh-button-gold:hover { background:#e9e9e9; }
.esh-button-dark { background:#000; color:#fff!important; border-color:#000; }
.esh-button-dark:hover { background:#1c1c1c; }
.esh-button-ghost { border-color:rgba(255,255,255,.5); background:transparent; color:#fff!important; }

.esh-home-hero { background:#000; }
.esh-home-hero::before {
    background:
        radial-gradient(circle at 78% 18%, rgba(255,255,255,.09), transparent 27%),
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size:auto,44px 44px,44px 44px;
}
.esh-hero-grid { min-height:690px; }
.esh-hero-copy h1 { color:#fff; }
.esh-hero-lead { color:rgba(255,255,255,.7); }
.esh-brand-hero-art { min-height:500px; }
.esh-brand-stage { position:absolute; inset:28px 10px 28px 40px; display:flex; align-items:center; justify-content:center; flex-direction:column; overflow:hidden; border:1px solid rgba(255,255,255,.18); background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)); }
.esh-brand-stage::before { content:""; position:absolute; inset:20px; border:1px solid rgba(255,255,255,.06); pointer-events:none; }
.esh-brand-stage-index { position:absolute; left:30px; top:27px; color:rgba(255,255,255,.48); font-size:9px; font-weight:800; letter-spacing:.22em; }
.esh-brand-stage-mark { width:min(68%,360px); max-height:290px; object-fit:contain; filter:drop-shadow(0 18px 32px rgba(0,0,0,.25)); }
.esh-brand-stage-line { width:54px; height:1px; margin-top:25px; background:#fff; opacity:.7; }
.esh-brand-stage p { margin:16px 0 0; color:rgba(255,255,255,.62); font-size:9px; font-weight:700; letter-spacing:.3em; }
.esh-floating-card { border:1px solid #ddd; border-radius:12px; background:#fff; color:#000; box-shadow:0 20px 55px rgba(0,0,0,.28); }
.esh-floating-card span { color:#000; }
.esh-floating-card small { color:#666; }
.esh-service-ribbon { color:rgba(255,255,255,.55); }
.esh-service-ribbon i { background:#fff; }

.esh-app-quick-section { background:#000; border-top-color:rgba(255,255,255,.1); }
.esh-app-quick-grid > a { border-color:rgba(255,255,255,.14); background:#070707; }
.esh-app-quick-grid > a:hover { border-color:rgba(255,255,255,.45); background:#101010; }
.esh-app-quick-grid > a span, .esh-app-quick-grid > a b { color:#fff; }
.esh-app-quick-grid > a small { color:rgba(255,255,255,.55); }
.esh-install-strip { background:#080808; border-color:rgba(255,255,255,.14); }
.esh-install-icon { background:#111; border:1px solid rgba(255,255,255,.18); color:#fff; overflow:hidden; }
.esh-install-icon img { width:30px; height:30px; object-fit:contain; }
.esh-install-strip button { background:#fff; color:#000; border-radius:10px; }

.esh-agency-service-grid { border-color:#dcdcdc; }
.esh-agency-service-card { border-color:#dcdcdc; }
.esh-agency-service-card:hover { background:#f4f4f4; }
.esh-agency-service-card > span { color:#000; }
.esh-section-link a { color:#000; }
.esh-section-link a span { color:#000; }
.esh-process-section { background:#000; }
.esh-process-section .esh-process-list > div { border-color:rgba(255,255,255,.14); }
.esh-process-list span { color:#fff; }
.esh-process-list p { color:rgba(255,255,255,.57); }
.esh-cta-band { background:#fff; color:#000; border-top:1px solid #ddd; border-bottom:1px solid #ddd; }
.esh-cta-band .esh-eyebrow { color:#000; }
.esh-cta-band .esh-button-dark { background:#000; color:#fff!important; }

.esh-page-hero { background:#000; }
.esh-page-hero::before { background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:55px 55px; }
.esh-page-hero p { color:rgba(255,255,255,.63); }
.esh-service-detail { border-color:#dcdcdc; }
.esh-service-detail > span { color:#000; }
.esh-service-detail > a { color:#000; }
.esh-portfolio-card { background:#111; }
.esh-portfolio-card::before { background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 55%); }
.esh-portfolio-card .esh-portfolio-label { color:#fff; }
.esh-about-statement span { color:#000; }
.esh-values-section { background:#f2f2f2; }
.esh-values-grid > div { border-color:#d8d8d8; background:#fff; }
.esh-values-grid span { color:#000; }
.esh-contact-section { background:#f7f7f7; }
.esh-contact-links a { border-color:#d8d8d8; }
.esh-contact-links a span { color:#666; }
.esh-contact-card { border-color:#d8d8d8; box-shadow:0 16px 45px rgba(0,0,0,.06); }
.esh-contact-form input, .esh-contact-form select, .esh-contact-form textarea { border-color:#cfcfcf; background:#fff; }
.esh-contact-form input:focus, .esh-contact-form select:focus, .esh-contact-form textarea:focus { border-color:#000; box-shadow:0 0 0 3px rgba(0,0,0,.07); }

.esh-login-page { background:linear-gradient(90deg,#000 0 50%,#f2f2f2 50% 100%); }
.esh-login-copy { color:#fff; }
.esh-login-copy p { color:rgba(255,255,255,.65); }
.esh-login-feature-list span { border-color:rgba(255,255,255,.18); color:#fff; }
.esh-login-card { border:1px solid #d8d8d8; box-shadow:0 24px 70px rgba(0,0,0,.12); }
.esh-login-card .esh-eyebrow { color:#000; }
.esh-login-card input { border-color:#ccc; }

.esh-app-tabbar { border-color:rgba(255,255,255,.16); background:rgba(0,0,0,.95); }
.esh-app-tabbar a.is-active { background:rgba(255,255,255,.1); }
.esh-app-tabbar a.is-active:not(.is-primary)::after { background:#fff; }
.esh-app-tabbar a.is-primary .esh-app-tab-icon { border-color:#000; background:#fff; color:#000; }

.esh-install-sheet > section { background:#fff; color:#000; }
.esh-install-sheet-icon { background:#000; color:#fff; overflow:hidden; }
.esh-install-sheet-icon img { width:39px; height:39px; object-fit:contain; }
.esh-install-sheet .esh-eyebrow { color:#000; }

.esh-site-footer { background:#000; color:#fff; border-top:1px solid rgba(255,255,255,.12); }
.esh-footer-brand p, .esh-footer-links span, .esh-footer-bottom { color:rgba(255,255,255,.55); }
.esh-footer-links a { color:#fff; }
.esh-footer-brand .esh-brand-logo { height:49px; max-width:260px; }

/* Branded startup screen */
.esh-app-splash { position:fixed; inset:0; z-index:200000; display:grid; place-items:center; background:#000; color:#fff; opacity:1; visibility:visible; transition:opacity .42s ease, visibility .42s ease; }
.esh-app-splash.is-hidden { opacity:0; visibility:hidden; pointer-events:none; }
.esh-app-splash-inner { width:min(78vw,420px); text-align:center; }
.esh-app-splash-inner img { width:min(42vw,190px); max-height:180px; object-fit:contain; animation:eshSplashMark .7s cubic-bezier(.2,.7,.2,1) both; }
.esh-app-splash-inner span { display:block; margin-top:26px; font-size:15px; font-weight:500; letter-spacing:.28em; }
.esh-app-splash-inner small { display:block; margin-top:9px; color:rgba(255,255,255,.55); font-size:9px; letter-spacing:.35em; }
@keyframes eshSplashMark { from { opacity:0; transform:scale(.94); } to { opacity:1; transform:scale(1); } }
@media (prefers-reduced-motion:reduce) { .esh-app-splash-inner img { animation:none; } }

@media (max-width:850px) {
    .esh-brand-logo { height:34px; max-width:184px; }
    .esh-brand-stage { inset:18px 0 22px 18px; }
    .esh-brand-stage-mark { width:min(62%,270px); }
    .esh-login-page { background:linear-gradient(#000 0 52%,#f2f2f2 52% 100%); }
}
@media (max-width:620px) {
    .esh-nav-wrap { min-height:70px; }
    .esh-brand-logo { height:31px; max-width:165px; }
    .esh-brand-hero-art { min-height:390px; }
    .esh-brand-stage { inset:16px 0 16px 14px; }
    .esh-brand-stage-index { left:20px; top:20px; }
    .esh-brand-stage-mark { width:min(64%,235px); }
    .esh-brand-stage p { letter-spacing:.23em; }
    .esh-floating-card { width:150px; }
}
.esh-site-cta { background:#0a0a0a; color:#fff; border-top:1px solid rgba(255,255,255,.08); }
.esh-site-cta .esh-eyebrow { color:#fff; }
.esh-site-cta .esh-button-gold { background:#fff; color:#000!important; }
.esh-portfolio-gold { background:#ececec; border-color:#d8d8d8; color:#000; }
.esh-portfolio-gold > span { color:#000; }
.esh-campaign-motif { color:rgba(0,0,0,.13); }
.esh-about-statement { background:#000; }
.esh-about-statement span { color:#fff; }
.esh-splash-seen .esh-app-splash { display:none!important; }
