/* ENE DAO Orders – front end. Everything is scoped under .ene so it works with any theme. */
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Hind+Siliguri:wght@500;600&display=swap");

.ene {
	--ene-ink: #13212b;
	--ene-ink-2: #2f3e49;
	--ene-muted: #4a5763;
	--ene-line: #dde2e0;
	--ene-field: #c5cdca;
	--ene-bg: #f7f6f2;
	--ene-card: #ffffff;
	--ene-teal: #0e6b66;
	--ene-teal-dark: #0a4f4b;
	--ene-teal-soft: #e3f0ee;
	--ene-mint: #9fd3cd;
	--ene-navy-2: #1c2f3c;
	--ene-navy-line: #2e4352;
	--ene-amber: #f6e7c8;
	--ene-amber-ink: #3d2a08;
	--ene-bad: #f6e1dd;
	--ene-bad-ink: #7a2e22;
	font-family: Manrope, system-ui, -apple-system, "Segoe UI", sans-serif;
	color: var(--ene-ink);
	font-size: 16px;
	line-height: 1.55;
	box-sizing: border-box;
}
.ene *, .ene *::before, .ene *::after { box-sizing: inherit; }
.ene [hidden], .ene[hidden] { display: none !important; }
.ene h1, .ene h2, .ene h3, .ene h4 { font-family: inherit; color: inherit; margin: 0; letter-spacing: -0.3px; line-height: 1.15; }
.ene h2 { font-size: clamp(26px, 3.2vw, 38px); font-weight: 800; margin: 8px 0 0; }
.ene h3 { font-size: 19px; font-weight: 800; }
.ene .ene-h3 { font-size: 22px; font-weight: 800; margin: 4px 0 0; }
.ene .ene-h4 { font-size: 17px; font-weight: 800; margin: 0 0 12px; }
.ene p { margin: 0; }
.ene a { color: var(--ene-teal); }
.ene a:hover { color: var(--ene-teal-dark); }
.ene img { max-width: 100%; }

.ene-wrap { max-width: 1180px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.ene-narrow { max-width: 860px; }
.ene-section { padding-top: 72px; padding-bottom: 8px; }
.ene-home > .ene-section:last-child { padding-bottom: 80px; }
.ene-muted { color: var(--ene-muted); }
.ene-muted-light { color: #9fb0b8; }
.ene-small { font-size: 14px; line-height: 1.5; }
.ene-lead { font-size: 17px; line-height: 1.6; max-width: 720px; margin-top: 10px; }
.ene-kicker { font-size: 13px; letter-spacing: 1.5px; text-transform: uppercase; font-weight: 800; color: var(--ene-teal); }
.ene-kicker--light { color: var(--ene-mint); }
.ene-accent { color: var(--ene-mint); }
.ene-good { color: var(--ene-teal-dark); }
.ene-big { font-size: 26px; font-weight: 800; margin-top: 6px; }
.ene-big-num { font-size: 26px; font-weight: 800; }
.ene-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ene-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ene-row-between { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; }

.ene-grid { display: grid; gap: 16px; }
.ene-grid--2 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.ene-grid--3 { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.ene-grid--4 { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); margin-top: 32px; }
.ene-rates .ene-grid--3 { grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); margin-top: 28px; }

.ene-card { background: var(--ene-card); border: 1px solid var(--ene-line); border-radius: 16px; padding: 24px; }
.ene-icon { width: 44px; height: 44px; border-radius: 12px; background: var(--ene-teal-soft); color: var(--ene-teal); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.ene-card h3 + p { margin-top: 8px; }

.ene-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border: 0; border-radius: 10px; background: var(--ene-teal); color: #fff !important; font: inherit; font-weight: 700; font-size: 16px; text-decoration: none !important; cursor: pointer; }
.ene-btn:hover { background: var(--ene-teal-dark); }
.ene-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.ene-btn--light { background: var(--ene-mint); color: var(--ene-ink) !important; font-weight: 800; }
.ene-btn--light:hover { background: #b6e0db; }
.ene-btn--ghost { background: #fff; color: var(--ene-ink) !important; border: 1px solid var(--ene-field); }
.ene-btn--ghost:hover { background: var(--ene-bg); }
.ene-btn--dashed { width: 100%; min-height: 52px; background: transparent; color: var(--ene-teal) !important; border: 2px dashed var(--ene-teal); border-radius: 14px; font-weight: 800; margin-top: 4px; }
.ene-btn--dashed:hover { background: var(--ene-teal-soft); }
.ene-btn--block { width: 100%; margin-top: 18px; }
.ene-btn-text { background: none; border: 0; font: inherit; font-weight: 700; font-size: 14px; cursor: pointer; min-height: 40px; padding: 0 8px; }
.ene-danger { color: #9a3b2e; }
.ene-link { font-weight: 700; display: inline-block; margin-top: 16px; }
.ene-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

.ene-tag { display: inline-block; padding: 4px 10px; border-radius: 999px; background: var(--ene-teal-soft); color: var(--ene-teal-dark); font-size: 13px; font-weight: 700; margin-top: 6px; }
.ene-tag--amber { background: var(--ene-amber); color: var(--ene-amber-ink); align-self: flex-start; }
.ene-tag--bad { background: var(--ene-bad); color: var(--ene-bad-ink); }
.ene-chip { display: inline-block; padding: 6px 12px; border: 1px solid #3a4b57; border-radius: 999px; font-size: 14px; }
.ene-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.ene-warn { margin-top: 8px; padding: 10px 12px; background: var(--ene-amber); color: var(--ene-amber-ink); border-radius: 10px; font-size: 14px; }
.ene-nudge { margin-top: 8px; padding: 10px 12px; background: var(--ene-amber); color: var(--ene-amber-ink); border-radius: 10px; font-size: 13px; line-height: 1.5; }
.ene-amber-text { color: var(--ene-amber); margin-top: 6px; }
.ene-error { margin-top: 14px; padding: 12px 14px; background: var(--ene-bad); color: var(--ene-bad-ink); border-radius: 10px; font-size: 14px; font-weight: 600; }
.ene-note { margin: 20px 0 8px; background: var(--ene-amber); color: var(--ene-amber-ink); border-radius: 14px; padding: 18px 22px; }
.ene-note p { margin-top: 6px; }

/* Forms */
.ene-fieldset { margin: 0 0 18px; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.ene-fieldset legend { padding: 0 8px; font-weight: 800; font-size: 15px; }
.ene-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ene-field label, .ene-label { font-weight: 700; font-size: 14px; }
.ene input[type="text"], .ene input[type="tel"], .ene input[type="url"], .ene input[type="number"], .ene select, .ene textarea {
	width: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid var(--ene-field); border-radius: 10px; font: inherit; font-size: 16px; color: var(--ene-ink); background: #fff; box-shadow: none; margin: 0;
}
.ene textarea { min-height: 90px; resize: vertical; }
.ene input[type="file"] { width: 100%; padding: 11px; border: 1px dashed var(--ene-field); border-radius: 10px; font-size: 14px; background: #fbfbf9; }
.ene input:focus, .ene select:focus, .ene textarea:focus { outline: 2px solid var(--ene-teal); outline-offset: 1px; border-color: var(--ene-teal); }
.ene :focus-visible { outline: 2px solid var(--ene-teal); outline-offset: 2px; }
.ene-check { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; line-height: 1.5; color: var(--ene-ink-2); }
.ene-check input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--ene-teal); flex: 0 0 auto; }
.ene-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.ene-pill { min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--ene-field); background: #fff; color: var(--ene-ink); font: inherit; font-weight: 700; font-size: 13px; cursor: pointer; }
.ene-pill.is-on { background: var(--ene-teal); border-color: var(--ene-teal); color: #fff; }
.ene-radio { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 1px solid #3a4b57; border-radius: 999px; font-weight: 700; font-size: 14px; cursor: pointer; }

/* Rows (label/value lists) */
.ene-rows { margin: 14px 0 0; display: flex; flex-direction: column; gap: 10px; font-size: 15px; }
.ene-rows > div { display: flex; justify-content: space-between; gap: 12px; }
.ene-rows dt { color: var(--ene-muted); margin: 0; font-weight: 400; }
.ene-rows dd { margin: 0; font-weight: 700; text-align: right; }
.ene-rows .is-strong { padding-top: 10px; border-top: 1px solid var(--ene-line); align-items: baseline; }
.ene-rows .is-strong dt { color: inherit; font-weight: 700; }
.ene-rows--dark dt { color: #c9d3d8; }
.ene-rows--dark .is-strong { border-color: var(--ene-navy-line); }

/* Hero */
.ene-hero { background: var(--ene-ink); color: #fff; }
.ene-hero__in { padding-top: 80px; padding-bottom: 72px; display: flex; flex-wrap: wrap; gap: 44px; align-items: center; }
.ene-hero__text { flex: 999 1 540px; min-width: 0; }
.ene-hero__bn { font-family: "Hind Siliguri", sans-serif; font-size: 18px; color: var(--ene-mint); margin-bottom: 14px; }
.ene-hero h1 { font-size: clamp(34px, 5vw, 56px); font-weight: 800; line-height: 1.08; letter-spacing: -1px; color: #fff; }
.ene-hero__lead { margin-top: 22px; font-size: 19px; line-height: 1.6; color: #c9d3d8; max-width: 600px; }
.ene-hero__form { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 8px; background: #fff; padding: 8px; border-radius: 14px; max-width: 640px; }
.ene-hero__form input[type="text"] { flex: 999 1 260px; border: 0; min-height: 52px; }
.ene-hero__form input:focus { outline-offset: -2px; }
.ene-hero__form .ene-btn { flex: 1 0 auto; min-height: 52px; }
.ene-hero__stores { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 14px; color: #9fb0b8; }
.ene-hero__stores .ene-chip { color: #fff; }
.ene-hero__card { flex: 1 1 320px; min-width: 0; background: var(--ene-navy-2); border: 1px solid var(--ene-navy-line); border-radius: 18px; padding: 28px; }
.ene-hero__ex { margin-top: 10px; color: #c9d3d8; }
.ene-hero__card .ene-small { margin-top: 16px; }

/* Shipment bar */
.ene-ship { background: var(--ene-amber); color: var(--ene-amber-ink); }
.ene-ship__in { padding-top: 16px; padding-bottom: 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 26px; font-size: 15px; }
.ene-ship__title { font-weight: 800; }
.ene-ship__item { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.ene-ship__pill { padding: 2px 8px; border: 1px solid var(--ene-amber-ink); border-radius: 999px; font-size: 12px; font-weight: 800; }
.ene-ship__pill.is-soon { background: var(--ene-amber-ink); color: var(--ene-amber); }
.ene .ene-ship__cta { margin-left: auto; font-weight: 800; color: var(--ene-amber-ink); }

/* Rate cards */
.ene-rate { display: flex; flex-direction: column; gap: 10px; }
.ene-rate__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px; }
.ene-rate__head h3 { font-size: 24px; }
.ene-rates > .ene-small { margin-top: 14px; }

/* Payment explainer */
.ene-paybox { background: var(--ene-teal-soft); border-radius: 20px; padding: 36px; display: flex; flex-wrap: wrap; gap: 32px; align-items: center; }
.ene-paybox__text { flex: 999 1 380px; }
.ene-paybox__text h2 { font-size: 30px; margin: 0; }
.ene-paybox__text p { margin-top: 12px; color: var(--ene-ink-2); }
.ene-paybox__cards { flex: 1 1 400px; }
.ene-paybox__cards .ene-card { border: 0; }

/* FAQ */
.ene-faq { margin-top: 22px; display: flex; flex-direction: column; gap: 10px; }
.ene-faq__item { background: #fff; border: 1px solid var(--ene-line); border-radius: 14px; }
.ene-faq__item summary { min-height: 58px; padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 17px; font-weight: 700; cursor: pointer; list-style: none; }
.ene-faq__item summary::-webkit-details-marker { display: none; }
.ene-faq__item summary::after { content: "+"; font-size: 22px; color: var(--ene-teal); }
.ene-faq__item[open] summary::after { content: "−"; }
.ene-faq__item p { padding: 0 20px 20px; color: var(--ene-muted); font-size: 15px; line-height: 1.65; }

/* Quote & tracking layout */
.ene-quote, .ene-track { padding-top: 8px; padding-bottom: 56px; }
.ene-split { display: flex; flex-wrap: wrap; gap: 24px; align-items: flex-start; margin-top: 24px; }
.ene-split__main { flex: 999 1 560px; min-width: 0; }
.ene-split__side { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.ene-quote .ene-split__side { position: sticky; top: 24px; }
.ene-estimate { background: var(--ene-ink); color: #fff; border-radius: 18px; padding: 26px; }
.ene-est-group { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--ene-navy-line); font-size: 14px; }
.ene-est-group .ene-rows { font-size: 14px; gap: 8px; margin-top: 10px; }
.ene-split-note { margin-top: 14px; padding: 12px 14px; background: var(--ene-navy-2); border: 1px solid var(--ene-navy-line); border-radius: 10px; font-size: 13px; line-height: 1.55; color: #c9d3d8; }
.ene-estimate > .ene-small { margin-top: 14px; }
.ene-split__side > .ene-small { padding: 0 4px; }
.ene-item legend { font-size: 15px; }

.ene-done { max-width: 720px; margin: 0 auto; padding: 40px; }
.ene-done__icon { width: 56px; height: 56px; border-radius: 50%; background: var(--ene-teal-soft); color: var(--ene-teal); display: flex; align-items: center; justify-content: center; margin-bottom: 18px; }
.ene-done h2 { font-size: 32px; }
.ene-done h2:focus { outline: none; }
.ene-steps-list { margin: 24px 0 0; padding-left: 22px; display: flex; flex-direction: column; gap: 10px; }

.ene-track__form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; padding: 20px; }
.ene-track__form .ene-field { flex: 1 1 220px; }
.ene [data-result] > .ene-muted { margin-top: 26px; }
.ene-tabs { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 12px; }
.ene-tab { min-height: 72px; padding: 14px 18px; text-align: left; border-radius: 14px; border: 2px solid var(--ene-line); background: #fff; color: var(--ene-ink); font: inherit; cursor: pointer; display: flex; flex-direction: column; gap: 4px; }
.ene-tab span { font-size: 14px; opacity: 0.85; }
.ene-tab.is-on { background: var(--ene-ink); border-color: var(--ene-ink); color: #fff; }
.ene-timeline { list-style: none; margin: 24px 0 0; padding: 0; }
.ene-timeline li { position: relative; display: flex; gap: 16px; padding-bottom: 20px; margin: 0; }
.ene-timeline li:not(:last-child)::before { content: ""; position: absolute; left: 7px; top: 20px; bottom: 0; width: 2px; background: var(--ene-line); }
.ene-timeline li.is-done:not(:last-child)::before { background: var(--ene-teal); }
.ene-timeline__dot { flex: 0 0 auto; width: 16px; height: 16px; margin-top: 3px; border-radius: 50%; background: #fff; border: 2px solid var(--ene-field); position: relative; z-index: 1; }
.is-done .ene-timeline__dot { background: var(--ene-teal); border-color: var(--ene-teal); }
.is-now .ene-timeline__dot { border: 4px solid var(--ene-teal); }
.ene-timeline__t { font-weight: 700; }
.is-todo .ene-timeline__t { color: #6b7782; }
.is-now .ene-timeline__t { font-weight: 800; }
.ene-now { margin-left: 6px; font-size: 12px; font-weight: 800; color: var(--ene-teal); }
.ene-items { display: flex; flex-direction: column; gap: 14px; }
.ene-items__row { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; }
.ene-items__row img, .ene-thumb-empty { width: 60px; height: 60px; border-radius: 10px; object-fit: cover; flex: 0 0 auto; background: var(--ene-bg); border: 1px solid var(--ene-line); }
.ene-items__name { font-weight: 700; color: var(--ene-ink) !important; text-decoration: none; }
.ene-items__name.is-off { text-decoration: line-through; color: var(--ene-muted) !important; }
.ene-paycard { background: #fff; color: var(--ene-ink); border: 2px solid var(--ene-teal); border-radius: 16px; padding: 22px; display: flex; flex-direction: column; gap: 14px; }
.ene-paycard p { color: var(--ene-ink-2); }
.ene-paycard .ene-muted { color: var(--ene-muted); }
.ene-paycard .ene-h4 { margin: 4px 0 0; font-size: 28px; color: var(--ene-ink); }
.ene-paycard .ene-field label { color: var(--ene-ink); }
.ene-paycard input[type="text"] { background: #fff; color: var(--ene-ink); border-color: var(--ene-field); }
.ene-paycard input[type="file"] { background: var(--ene-bg); color: var(--ene-ink); border-color: var(--ene-field); }
.ene-paycard .ene-btn--block { margin-top: 2px; }
.ene-paycard__step { margin-top: 4px; padding-top: 14px; border-top: 1px solid var(--ene-line); }
.ene-paycard--done { border-color: var(--ene-teal); background: var(--ene-teal-soft); }
.ene-paycard--done .ene-h4 { font-size: 18px; }
.ene-methods { margin: 0; padding: 0; border: 0; min-width: 0; }
.ene-methods legend { padding: 0; margin-bottom: 8px; font-weight: 700; font-size: 14px; color: var(--ene-ink); }
.ene-methods__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.ene-method { flex: 1 1 auto; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 14px; border: 1px solid var(--ene-field); border-radius: 10px; background: #fff; color: var(--ene-ink); font-weight: 700; font-size: 14px; cursor: pointer; }
.ene-method input { accent-color: var(--ene-teal); margin: 0; }
.ene-method.is-on { border: 2px solid var(--ene-teal); background: var(--ene-teal-soft); color: var(--ene-teal-dark); }
.ene-method:focus-within { outline: 2px solid var(--ene-teal); outline-offset: 2px; }
.ene-paydet { background: var(--ene-bg); border: 1px solid var(--ene-line); border-radius: 12px; padding: 14px; display: flex; flex-direction: column; gap: 8px; }
.ene-paydet__how { font-size: 14px; margin: 0 0 2px; color: var(--ene-ink-2); }
.ene-paydet__row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 14px; }
.ene-paydet__row > span { flex: 0 0 104px; color: var(--ene-muted); }
.ene-paydet__row > strong { flex: 1 1 auto; color: var(--ene-ink); font-size: 15px; min-width: 0; overflow-wrap: anywhere; }
.ene-mono { font-variant-numeric: tabular-nums; letter-spacing: 0.5px; }
.ene-copy { flex: 0 0 auto; min-height: 32px; padding: 0 12px; border: 1px solid var(--ene-teal); border-radius: 8px; background: #fff; color: var(--ene-teal-dark); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.ene-copy:hover { background: var(--ene-teal-soft); }
.ene-bankline { display: block; margin-top: 4px; font-weight: 700; color: var(--ene-ink); }

/* Policies */
.ene-policies { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; padding-bottom: 56px; }
.ene-policies__nav { flex: 1 1 200px; display: flex; flex-direction: column; gap: 2px; font-weight: 700; font-size: 15px; position: sticky; top: 24px; }
.ene-policies__nav a { min-height: 40px; display: flex; align-items: center; text-decoration: none; }
.ene-policies__body { flex: 999 1 560px; min-width: 0; max-width: 760px; color: var(--ene-ink-2); line-height: 1.7; }
.ene-policies__body h2 { font-size: 24px; margin-top: 40px; color: var(--ene-ink); scroll-margin-top: 24px; }
.ene-policies__body p, .ene-policies__body ul, .ene-policies__body ol { margin-top: 12px; }
.ene-policies__body li { margin-bottom: 8px; }
.ene-policies__body strong { color: var(--ene-ink); }

/* Floating WhatsApp */
.ene-wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 9999; width: 56px; height: 56px; border-radius: 50%; background: #1e8e4e; color: #fff !important; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 18px rgba(19, 33, 43, 0.25); }
.ene-wa-float:hover { background: #17733f; }
.ene-wa-float:focus-visible { outline: 3px solid #13212b; outline-offset: 2px; }

@media (max-width: 640px) {
	.ene-hero__in { padding-top: 56px; padding-bottom: 48px; }
	.ene-paybox, .ene-done { padding: 24px; }
	.ene-quote .ene-split__side, .ene-policies__nav { position: static; }
	.ene .ene-ship__cta { margin-left: 0; }
	.ene-card { padding: 20px; }
}

/* Full-width layout inside block themes (alignfull) and safe fallback for classic themes. */
.ene.alignfull { max-width: none; }
.ene-home.alignfull, .ene-ship.alignfull { margin-top: 0; }
.ene-policies-outer { padding-top: 8px; }

/* ---------- Site header ---------- */
.ene-header { background: #fff; border-bottom: 1px solid var(--ene-line); position: relative; z-index: 50; }
.ene-header__in { min-height: 72px; padding-top: 12px; padding-bottom: 12px; display: flex; align-items: center; gap: 24px; }
.ene-brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none !important; color: var(--ene-ink) !important; flex: 0 0 auto; }
.ene-brand svg { color: var(--ene-teal); }
.ene-brand__text { display: flex; flex-direction: column; line-height: 1; }
.ene-brand__name { font-weight: 800; font-size: 20px; letter-spacing: 0.5px; }
.ene-brand__sub { font-size: 10px; letter-spacing: 5px; color: var(--ene-muted); margin-top: 4px; }
.ene-brand__img { display: block; max-height: 44px; width: auto; }
.ene-nav { display: flex; flex-wrap: wrap; gap: 4px 24px; margin-left: auto; font-weight: 600; font-size: 15px; }
.ene-nav a { color: var(--ene-ink) !important; text-decoration: none; padding: 8px 0; border-bottom: 2px solid transparent; }
.ene-nav a:hover, .ene-nav a[aria-current="page"] { border-bottom-color: var(--ene-teal); }
.ene-header__actions { display: flex; gap: 10px; flex: 0 0 auto; }
.ene-header .ene-btn { min-height: 44px; padding: 0 18px; font-size: 15px; }
.ene-mnav { display: none; margin-left: auto; position: static; }
.ene-mnav summary { list-style: none; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--ene-field); border-radius: 10px; cursor: pointer; color: var(--ene-ink); }
.ene-mnav summary::-webkit-details-marker { display: none; }
.ene-mnav__close, .ene-mnav[open] .ene-mnav__open { display: none; }
.ene-mnav[open] .ene-mnav__close { display: block; }
.ene-mnav__panel { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--ene-line); box-shadow: 0 12px 24px rgba(19, 33, 43, 0.08); padding: 8px 20px 20px; display: flex; flex-direction: column; gap: 10px; }
.ene-mnav__panel nav { display: flex; flex-direction: column; }
.ene-mnav__panel nav a { display: flex; align-items: center; min-height: 48px; border-bottom: 1px solid var(--ene-line); color: var(--ene-ink) !important; text-decoration: none; font-weight: 700; font-size: 17px; }
.ene-mnav__panel .ene-btn--block { margin-top: 6px; width: auto; box-sizing: border-box; }

@media (max-width: 980px) {
	.ene-nav, .ene-header__actions { display: none; }
	.ene-mnav { display: block; }
}

/* ---------- Site footer ---------- */
.ene-footer { background: var(--ene-ink); color: #c9d3d8; margin-top: 0; }
.ene-footer__in { padding-top: 48px; padding-bottom: 32px; display: flex; flex-wrap: wrap; gap: 32px; justify-content: space-between; font-size: 15px; }
.ene-footer__about { flex: 2 1 280px; max-width: 420px; }
.ene-footer__about p + p { margin-top: 10px; line-height: 1.6; }
.ene-footer__name { font-weight: 800; font-size: 20px; color: #fff; }
.ene-footer__pay { font-size: 14px; color: #9fb0b8; }
.ene-footer__links, .ene-footer__contact { flex: 1 1 200px; display: flex; flex-direction: column; gap: 8px; }
.ene-footer__h { font-size: 13px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; color: var(--ene-mint); margin-bottom: 4px; }
.ene .ene-footer__links a, .ene .ene-footer__contact a { color: #c9d3d8; text-decoration: none; }
.ene .ene-footer__links a:hover, .ene .ene-footer__contact a:hover { color: #fff; text-decoration: underline; }
.ene-footer__bottom { background: linear-gradient(var(--ene-navy-line), var(--ene-navy-line)) 20px 0 / calc(100% - 40px) 1px no-repeat; padding-top: 18px; padding-bottom: 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; font-size: 13px; color: #9fb0b8; }

/* Block themes: remove gaps the theme puts around the swapped parts. */
.ene-layout-block .wp-site-blocks > .ene-header, .ene-layout-block .wp-site-blocks > .ene-footer { margin-block-start: 0; }
.ene-layout-block .wp-site-blocks > main { margin-block-start: 0; }

/* Classic themes: hide the theme's own header and footer (common markup). */
.ene-layout-classic #masthead, .ene-layout-classic .site-header:not(.ene-header), .ene-layout-classic header#header,
.ene-layout-classic #colophon, .ene-layout-classic .site-footer:not(.ene-footer), .ene-layout-classic footer#footer,
.ene-layout-classic .elementor-location-header, .ene-layout-classic .elementor-location-footer,
.ene-layout-classic .ast-above-header-wrap, .ene-layout-classic .ast-mobile-header-wrap, .ene-layout-classic .ast-desktop-header,
.ene-layout-classic #ast-desktop-header, .ene-layout-classic #ast-mobile-header, .ene-layout-classic .site-below-footer-wrap, .ene-layout-classic .site-primary-footer-wrap { display: none !important; }

/* Keep the floating WhatsApp button clear of the footer text on phones. */
@media (max-width: 640px) { .ene-footer__bottom { padding-bottom: 88px; } }

/* Keep the footer at the bottom of short pages (block themes). */
.ene-layout-block .wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; }
.ene-layout-block .wp-site-blocks > main { flex: 1 0 auto; }
.ene-layout-block .wp-site-blocks > .ene-footer { margin-top: auto; }

/* Themes often force Title Case / UPPERCASE on headings and buttons: show text as written. */
.ene h1, .ene h2, .ene h3, .ene h4, .ene .ene-btn, .ene button, .ene summary, .ene .ene-chip, .ene .ene-tab, .ene .ene-pill, .ene .ene-method, .ene .ene-nav a, .ene .ene-mnav__panel a { text-transform: none !important; }
.ene .ene-btn, .ene button, .ene .ene-nav a { letter-spacing: normal !important; }
.ene h2, .ene h3, .ene h4 { letter-spacing: -0.3px; }
.ene .ene-kicker, .ene .ene-footer__h { text-transform: uppercase !important; letter-spacing: 1.5px; }
.ene .ene-brand__sub { letter-spacing: 5px; }
.ene .ene-hero h1 { letter-spacing: -1px !important; margin: 0; }
.ene .ene-hero__lead { margin-top: 20px; }
/* Phones: hide the example card so the link box sits higher. */
@media (max-width: 760px) { .ene-hero__card { display: none; } }

/* =================== Mobile optimisation =================== */
.ene-swipe-hint { display: none; }
.ene-qbar { display: none; }

@media (max-width: 640px) {
	/* Home: compact "how it works" rows */
	.ene-home .ene-grid--4 { gap: 10px; margin-top: 22px; }
	.ene-home .ene-grid--4 .ene-card { display: grid; grid-template-columns: 44px 1fr; column-gap: 14px; align-items: start; padding: 16px; }
	.ene-home .ene-grid--4 .ene-icon { grid-row: span 2; margin: 0; }
	.ene-home .ene-grid--4 h3 { font-size: 17px; margin-top: 2px; }
	.ene-home .ene-grid--4 .ene-card h3 + p { margin-top: 4px; font-size: 14px; line-height: 1.5; }
	.ene-section { padding-top: 52px; }
	.ene h2 { font-size: 26px; }

	/* Rate cards: swipe row */
	.ene-swipe-hint { display: block; font-size: 13px; color: var(--ene-muted); margin-top: 14px; }
	.ene-rates .ene-rates__row { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 10px -20px 0; padding: 0 20px 10px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.ene-rates .ene-rates__row::-webkit-scrollbar { display: none; }
	.ene-rates .ene-rate { flex: 0 0 86%; scroll-snap-align: center; padding: 20px; }
	.ene-rate__head h3 { font-size: 21px; }
	.ene-rows { font-size: 14px; gap: 8px; }

	/* Payment explainer */
	.ene-paybox { padding: 22px; gap: 18px; }
	.ene-paybox__text h2 { font-size: 24px; }
	.ene-paybox__cards { grid-template-columns: 1fr 1fr; gap: 10px; }
	.ene-paybox__cards .ene-card { padding: 14px; }
	.ene-big { font-size: 20px; }

	/* Quote form: tighter item cards */
	.ene-quote .ene-lead { font-size: 15px; }
	.ene-item { padding: 16px; gap: 12px; }
	.ene-item .ene-pills { flex-wrap: nowrap; }
	.ene-item .ene-pill { flex: 1 1 0; min-width: 0; padding: 0 6px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.ene-item .ene-row-between { flex-wrap: nowrap; }
	.ene-item .ene-row-between .ene-pills { flex: 1 1 auto; }
	.ene-item .ene-grid--3 { grid-template-columns: 1fr 88px; gap: 10px; }
	.ene-item .ene-grid--3 > .ene-field:nth-child(3) { grid-column: 1 / -1; }
	.ene-item .ene-grid--2 { grid-template-columns: 1fr; gap: 10px; }
	.ene-fieldset { gap: 12px; }
	.ene-estimate { padding: 20px; }
	.ene-quote .ene-split__side { scroll-margin-top: 16px; }

	/* Tracking */
	.ene-track__form { padding: 16px; }
	.ene-track__form .ene-btn { width: 100%; }
	.ene-tabs { grid-template-columns: 1fr 1fr; gap: 8px; }
	.ene-tab { min-height: 60px; padding: 10px 12px; }
	.ene-tab strong { font-size: 14px; }
	.ene-tab span { font-size: 12px; }
	.ene-timeline li { padding-bottom: 14px; }
	.ene-paycard { padding: 18px; }
	.ene-paydet__row > span { flex-basis: 96px; }

	/* Floating WhatsApp: smaller, out of the way */
	.ene-wa-float { width: 48px; height: 48px; right: 14px; bottom: 14px; }
	.ene-wa-float svg { width: 24px; height: 24px; }
}

/* Sticky "Review & send" bar on the quote page (phones and small tablets) */
@media (max-width: 900px) {
	.ene-qbar:not([hidden]) { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: var(--ene-ink); color: #fff; box-shadow: 0 -6px 18px rgba(19, 33, 43, 0.18); transition: transform 0.2s ease; }
	.ene-qbar.is-away { transform: translateY(110%); }
	.ene-qbar__amt { display: flex; flex-direction: column; line-height: 1.2; }
	.ene-qbar__amt span { font-size: 12px; color: #c9d3d8; }
	.ene-qbar__amt strong { font-size: 20px; color: var(--ene-mint); }
	.ene-qbar .ene-btn { min-height: 46px; background: var(--ene-mint); color: var(--ene-ink) !important; font-weight: 800; }
	body.ene-has-qbar .ene-wa-float { bottom: 84px; }
	body.ene-has-qbar .ene-footer__bottom { padding-bottom: 96px; }
}
@media (prefers-reduced-motion: reduce) { .ene-qbar { transition: none; } }
@media (max-width: 640px) {
	.ene-item .ene-pill { text-overflow: clip; font-size: 13px; }
	.ene-item .ene-pill__cur { display: none; }
	.ene-item .ene-row-between { flex-wrap: wrap; row-gap: 4px; }
	.ene-item .ene-row-between .ene-pills { flex: 1 1 100%; }
	.ene-item__tools { order: -1; margin: -6px 0 0 auto; }
	.ene-item__tools .ene-btn-text { min-height: 30px; padding: 0 4px; font-size: 13px; }
	/* The sticky bar already offers WhatsApp-free checkout and the menu has WhatsApp: keep the bubble off the form. */
	body.ene-has-qbar .ene-wa-float { display: none; }
}

/* Item tools, folded items, info notes */
.ene-item__tools { display: inline-flex; gap: 4px; flex: 0 0 auto; }
.ene-item--folded { padding: 0 !important; }
.ene-item__sum { display: flex; align-items: center; gap: 12px; width: 100%; padding: 14px 16px; background: none; border: 0; font: inherit; color: inherit; text-align: left; cursor: pointer; border-radius: inherit; min-height: 56px; }
.ene-item__sum:focus-visible { outline: 3px solid var(--ene-teal); outline-offset: 2px; }
.ene-item__n { flex: 0 0 28px; height: 28px; border-radius: 999px; background: var(--ene-teal-soft); color: var(--ene-teal-dark); font-weight: 800; font-size: 13px; display: inline-flex; align-items: center; justify-content: center; }
.ene-item__txt { flex: 1; min-width: 0; line-height: 1.35; }
.ene-item__txt .ene-small { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ene-item__edit { font-weight: 700; color: var(--ene-teal-dark); font-size: 14px; }
.ene-shot-ok { color: var(--ene-teal-dark); font-weight: 600; margin: 6px 0 0; }
.ene-info { margin: 0 0 12px; padding: 10px 14px; border-radius: 10px; background: var(--ene-teal-soft); color: var(--ene-teal-dark); font-weight: 600; font-size: 14px; }
.ene-check--plain { font-size: 14px; align-items: center; }
