/* ============================================================
   EQUALLYOKED ENTERPRISE — tailor-made, the most premium offering
   ============================================================ */
.e-hero { position: relative; min-height: 92svh; display: flex; align-items: center; padding: 140px 0 100px; overflow: hidden; text-align: center; }
.e-hero::before { content: ''; position: absolute; left: 50%; top: -20%; width: 1100px; height: 1100px; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(245, 196, 0, 0.2), rgba(245, 196, 0, 0.05) 40%, rgba(245, 196, 0, 0) 66%); filter: blur(20px); animation: e-breathe 10s ease-in-out infinite; pointer-events: none; }
@keyframes e-breathe { 0%, 100% { opacity: 0.7; transform: translateX(-50%) scale(0.95); } 50% { opacity: 1; transform: translateX(-50%) scale(1.04); } }
.e-ghost { position: absolute; left: 50%; bottom: -6%; transform: translateX(-50%); font-family: var(--display); font-size: clamp(140px, 24vw, 380px); line-height: 0.8; color: rgba(255, 255, 255, 0.018); white-space: nowrap; pointer-events: none; }
.e-hero .wrap { position: relative; display: grid; justify-items: center; gap: 30px; }
.e-h { font-size: clamp(58px, 10vw, 156px); line-height: 0.9; font-weight: 700; letter-spacing: -0.05em; }
.e-h em { color: var(--yellow); }
.e-lead { font-size: clamp(18px, 1.8vw, 24px); line-height: 1.5; color: var(--muted); max-width: 34ch; }
.e-lead b { color: var(--white); font-weight: 500; }
.e-cta { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; }

.e-beyond { padding: clamp(80px, 11vw, 140px) 0; border-top: 1px solid var(--line); }
.e-beyond p { font-size: clamp(28px, 3.6vw, 52px); line-height: 1.18; font-weight: 600; letter-spacing: -0.03em; color: var(--faint); max-width: 22ch; }
.e-beyond p b { color: var(--white); font-weight: 600; }
.e-beyond p em { color: var(--yellow); }

.e-build { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.e-card { padding: clamp(28px, 3.4vw, 44px); display: grid; gap: 14px; align-content: start; min-height: 260px; position: relative; overflow: hidden; transition: border-color 0.3s, transform 0.5s var(--ease); }
.e-card:hover { border-color: var(--line-2); transform: translateY(-4px); }
.e-card .ic { width: 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; background: rgba(245, 196, 0, 0.1); border: 1px solid rgba(245, 196, 0, 0.3); color: var(--yellow); }
.e-card .ic svg { width: 26px; height: 26px; }
.e-card h3 { font-size: clamp(24px, 2.4vw, 32px); font-weight: 700; letter-spacing: -0.025em; line-height: 1.1; margin-top: 10px; }
.e-card p { color: var(--muted); font-size: 16.5px; max-width: 40ch; }
.e-card.new { background: radial-gradient(80% 100% at 100% 0%, rgba(245, 196, 0, 0.12), rgba(245, 196, 0, 0) 60%), linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.015)); border-color: rgba(245, 196, 0, 0.35); }
@media (max-width: 860px) { .e-build { grid-template-columns: 1fr; } }

.e-proof { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: clamp(32px, 6vw, 90px); align-items: center; padding: clamp(32px, 5vw, 64px); }
.e-proof .big { font-family: var(--display); font-size: clamp(84px, 9.5vw, 150px); max-width: 5.2em; line-height: 0.82; color: var(--yellow); }
.e-proof .big small { display: block; font-family: var(--sans); font-size: 15px; line-height: 1.5; color: var(--muted); margin-top: 18px; letter-spacing: 0; }
.e-proof blockquote { font-size: clamp(19px, 1.9vw, 26px); line-height: 1.45; font-weight: 500; letter-spacing: -0.01em; }
.e-proof cite { display: block; margin-top: 14px; font-style: normal; font-size: 14px; color: var(--faint); }
.e-built { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
.e-built span { font-size: 13px; padding: 7px 14px; border-radius: 999px; border: 1px solid var(--line-2); color: var(--muted); }
@media (max-width: 860px) { .e-proof { grid-template-columns: 1fr; } }

.e-steps { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--line); counter-reset: s; }
.e-steps li { padding: 34px 28px 10px 0; display: grid; gap: 12px; align-content: start; border-right: 1px solid var(--line); padding-left: 28px; }
.e-steps li:first-child { padding-left: 0; }
.e-steps li:last-child { border-right: 0; }
.e-steps .num { font-family: var(--display); font-size: 34px; line-height: 1; color: var(--yellow); }
.e-steps h3 { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; }
.e-steps p { color: var(--muted); font-size: 15.5px; }
@media (max-width: 860px) { .e-steps { grid-template-columns: 1fr; } .e-steps li { border-right: 0; border-bottom: 1px solid var(--line); padding: 26px 0; } }

.e-inc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; margin-top: 56px; }
.e-inc div { background: var(--black); padding: 28px; display: grid; gap: 8px; }
.e-inc b { font-size: 17px; font-weight: 600; letter-spacing: -0.01em; }
.e-inc span { color: var(--muted); font-size: 15px; }
@media (max-width: 860px) { .e-inc { grid-template-columns: 1fr; } }

/* ---- the enquiry ---- */
.e-form-wrap { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.e-form-side { position: sticky; top: 110px; display: grid; gap: 22px; }
.e-form-side .h-l { font-size: clamp(40px, 5vw, 68px); }
.e-form-side p { color: var(--muted); }
.e-form-side .reach { font-size: 15px; color: var(--muted); display: grid; gap: 6px; padding-top: 20px; border-top: 1px solid var(--line); }
.e-form-side .reach a { color: var(--white); text-decoration: none; }
.e-form { padding: clamp(24px, 3.6vw, 44px); display: grid; gap: 30px; }
.e-group { display: grid; gap: 16px; }
.e-group > legend, .e-group > .lg { font-size: 12px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--yellow); margin-bottom: 4px; }
fieldset.e-group { border: 0; }
.kind-pick { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.kind-pick label { position: relative; cursor: pointer; }
.kind-pick input { position: absolute; opacity: 0; }
.kind-pick .opt { display: grid; gap: 4px; padding: 18px 18px 16px; border-radius: 16px; border: 1px solid var(--line-2); background: rgba(255, 255, 255, 0.02); transition: border-color 0.2s, background 0.2s, box-shadow 0.2s; }
.kind-pick .opt b { font-size: 16px; font-weight: 600; }
.kind-pick .opt span { font-size: 13.5px; color: var(--faint); line-height: 1.4; }
.kind-pick input:checked + .opt { border-color: var(--yellow); background: rgba(245, 196, 0, 0.07); box-shadow: 0 0 0 4px rgba(245, 196, 0, 0.1); }
.kind-pick input:focus-visible + .opt { outline: 2px solid var(--yellow); outline-offset: 2px; }
.e-submit { display: grid; gap: 14px; }
.e-note { font-size: 13px; color: var(--faint); }
.e-alert { border-radius: 14px; padding: 14px 16px; font-size: 15px; }
.e-alert.err { background: rgba(255, 90, 90, 0.08); border: 1px solid rgba(255, 90, 90, 0.35); color: #ffb4b4; }
.e-done { display: none; text-align: center; padding: clamp(40px, 6vw, 80px) 20px; gap: 18px; justify-items: center; }
.e-done .tick { width: 76px; height: 76px; border-radius: 50%; background: var(--yellow); display: grid; place-items: center; box-shadow: 0 16px 50px rgba(245, 196, 0, 0.4); }
.e-done .tick svg { width: 36px; height: 36px; }
.e-done h3 { font-size: clamp(30px, 3.4vw, 44px); font-weight: 700; letter-spacing: -0.03em; }
.e-done p { color: var(--muted); max-width: 42ch; }
.e-done .ref { font-family: var(--display); font-size: 28px; letter-spacing: 0.06em; color: var(--yellow); }
.sent .e-form > :not(.e-done) { display: none; }
.sent .e-done { display: grid; }
@media (max-width: 980px) { .e-form-wrap { grid-template-columns: 1fr; } .e-form-side { position: static; } }
@media (max-width: 520px) { .kind-pick { grid-template-columns: 1fr; } }

.e-faq { display: grid; gap: 0; border-top: 1px solid var(--line); }
.e-faq details { border-bottom: 1px solid var(--line); }
.e-faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 20px; padding: 26px 0; font-size: clamp(18px, 1.8vw, 22px); font-weight: 600; letter-spacing: -0.015em; }
.e-faq summary::-webkit-details-marker { display: none; }
.e-faq summary::after { content: '+'; color: var(--yellow); font-weight: 400; font-size: 28px; line-height: 1; transition: transform 0.3s var(--ease); }
.e-faq details[open] summary::after { transform: rotate(45deg); }
.e-faq details p { color: var(--muted); padding: 0 0 26px; max-width: 64ch; }
