/* Shared buttons, section heads + price calculator (home, personas page). Tokens scoped so etlaala.css pages are unaffected. */
.ed-calc-sec,.ed-wrap,.ed-btn,.ed-link{--deep:#1335ae;--blue2:#2d41a4;--cyan:#46c3ef;--orange:#fea760;--ink:#0a0500;--soft:#f6f8ff;--line:#e7eaf6;--white:#fff;--muted:#3d4466;--r-card:16px;--r-hero:24px;--ease:cubic-bezier(.16,1,.3,1)}
.ed-calc-sec *{box-sizing:border-box}
.ed-calc-sec h2{margin:0;line-height:1.35;letter-spacing:0}
.ed-calc-sec p{margin:0}
.ed-wrap{width:min(1320px,100% - 2rem);margin-inline:auto}
/* Buttons + links */
.ed-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.8rem 1.9rem;border-radius:999px;background:var(--deep);color:var(--white);font-weight:700;font-size:1rem;text-decoration:none;white-space:nowrap;transition:background .3s var(--ease),transform .2s var(--ease)}
.ed-btn:hover{background:var(--blue2)}
.ed-btn:active{transform:translateY(1px)}
.ed-btn-light{background:var(--white);color:var(--deep)}
.ed-btn-light:hover{background:var(--soft)}
.ed-btn-wide{width:100%}
.ed-link{font-weight:700;color:var(--deep);text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:2px;transition:color .3s var(--ease)}
.ed-link:hover{color:var(--blue2)}
.ed-link-light{color:var(--white)}
.ed-link-light:hover{color:var(--soft)}
.ed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}


/* Section heads */
.ed-h2{font-size:clamp(1.75rem,3.4vw,3rem);font-weight:800;color:var(--ink)}
.ed-sec-head{display:grid;gap:.6rem;margin-bottom:clamp(2rem,4vw,3.5rem)}
.ed-sec-head p{color:var(--muted);max-width:60ch}
.ed-sec-head-row{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}

/* Calculator (homepage) — mobile first */
.ed-calc-sec{position:relative;scroll-margin-top:80px;background:var(--white);padding-block:clamp(3rem,8vw,7rem);border-block:1px solid var(--line)}
.lc{display:grid;gap:1.25rem;font-size:1rem}
.lc-steps{display:grid;gap:1.25rem;min-width:0}
.lc-step{margin:0;padding:1.1rem;border:1px solid var(--line);border-radius:var(--r-card);background:var(--white);min-width:0}
.lc-step legend{display:flex;align-items:center;gap:.6rem;padding:0 .35rem;font-weight:800;font-size:1.05rem;color:var(--ink)}
.lc-num{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--deep);color:#fff;font-size:.85rem;font-weight:800}
.lc-hint{margin:.75rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.7}
.ed-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.lc input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}

/* destination dropdown */
.lc-select{position:relative;display:block;margin-top:.6rem}
.lc-select select{width:100%;min-height:58px;padding:.6rem 1rem .6rem 2.8rem;border:1px solid var(--line);border-radius:14px;background:var(--soft);color:var(--ink);font-family:inherit;font-size:1.05rem;font-weight:700;appearance:none;-webkit-appearance:none;cursor:pointer}
.lc-select::after{content:"";position:absolute;inset-inline-end:1.1rem;top:50%;width:.6rem;height:.6rem;border:solid var(--deep);border-width:0 2px 2px 0;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.lc-select select:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}

/* steppers */
.lc-row{display:grid;gap:1.25rem}
.lc-stepper{display:grid;grid-template-columns:56px 1fr 56px;align-items:center;gap:.5rem;margin-top:.6rem}
.lc-stepper button{height:56px;border:1px solid var(--line);border-radius:14px;background:var(--soft);color:var(--deep);font-family:inherit;font-size:1.7rem;font-weight:800;line-height:1;cursor:pointer;touch-action:manipulation;transition:background .2s,transform .1s}
.lc-stepper button:active{transform:scale(.95)}
.lc-stepper button:disabled{opacity:.35;cursor:not-allowed}
.lc-stepper output{text-align:center;font-weight:800;font-size:1.35rem;color:var(--ink);font-variant-numeric:tabular-nums}
.lc-quick{display:flex;gap:.5rem;margin-top:.75rem}
.lc-quick button{flex:1;min-height:44px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;touch-action:manipulation}
.lc-quick button[aria-pressed=true]{background:var(--deep);border-color:var(--deep);color:#fff}

/* tiers */
.lc-tiers{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.6rem}
.lc-tier{position:relative;cursor:pointer}
.lc-tier span{display:grid;align-content:center;gap:.15rem;min-height:64px;padding:.6rem .8rem;border:1px solid var(--line);border-radius:14px;text-align:center;transition:background .2s,border-color .2s,color .2s}
.lc-tier strong{font-weight:800;font-size:.98rem}
.lc-tier i{font-style:normal;font-size:.72rem;font-weight:700;color:var(--deep)}
.lc-tier input:checked+span{background:var(--deep);border-color:var(--deep);color:#fff}
.lc-tier input:checked+span i{color:var(--orange)}
.lc-tier input:focus-visible+span{outline:3px solid var(--cyan);outline-offset:2px}

/* result */
.lc-out{display:grid;gap:.9rem;padding:1.4rem;border-radius:var(--r-hero);background:var(--deep);color:#fff;align-content:start}
.lc-out-label{font-weight:600;color:rgba(255,255,255,.85)}
.lc-total{font-size:clamp(2.3rem,9vw,3.4rem);font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums}
.lc-break{display:flex;flex-wrap:wrap;gap:.5rem}
.lc-break span{padding:.35rem .8rem;border-radius:999px;background:rgba(255,255,255,.12);font-size:.9rem}
.lc-break b{font-variant-numeric:tabular-nums}
.lc-summary{margin:0;font-size:.95rem;color:rgba(255,255,255,.9);line-height:1.7}
.lc-out .lc-cta{background:var(--orange);color:var(--ink);min-height:56px;font-size:1.05rem}
.lc-out .lc-cta:hover{background:#ffb87a}
.lc-note{margin:0;font-size:.88rem;color:rgba(255,255,255,.85)}
.lc-how{border-top:1px solid rgba(255,255,255,.18);padding-top:.75rem}
.lc-how summary{cursor:pointer;font-weight:700;list-style:none}
.lc-how summary::-webkit-details-marker{display:none}
.lc-how summary::after{content:" +";color:var(--orange)}
.lc-how[open] summary::after{content:" −"}
.lc-how p{margin:.6rem 0 0;font-size:.88rem;line-height:1.8;color:rgba(255,255,255,.88)}
.ed-trust{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;margin:0;padding:0;list-style:none;font-size:.85rem;font-weight:600}
.ed-trust li::before{content:"✓";margin-inline-end:.4rem;color:var(--orange)}
.lc-total.is-bump{animation:lc-bump .35s var(--ease)}
@keyframes lc-bump{0%{transform:scale(1)}40%{transform:scale(1.04)}100%{transform:scale(1)}}

/* sticky price bar (phones) */
.lc-bar{position:fixed;inset-inline:0;bottom:0;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom,0px));background:rgba(19,53,174,.97);color:#fff;box-shadow:0 -10px 30px -12px rgba(10,10,40,.45);transform:translateY(110%);transition:transform .3s var(--ease)}
.lc-bar.is-on{transform:none}
.etl-calcbar-on .lc-steps{padding-bottom:72px}
.lc-bar small{display:block;font-size:.75rem;opacity:.85}
.lc-bar strong{font-size:1.3rem;font-weight:800;font-variant-numeric:tabular-nums}
.lc-bar-cta{flex:none;display:inline-flex;align-items:center;min-height:48px;padding:.5rem 1.1rem;border-radius:999px;background:var(--orange);color:var(--ink);font-weight:800;text-decoration:none}
.floating-contact .float-btn{transition:opacity .25s,transform .25s}
.etl-calc-in-view .floating-contact .float-btn{opacity:0!important;transform:translateY(16px)!important;pointer-events:none!important;visibility:hidden}

@media (min-width:700px){
	.lc-row{grid-template-columns:1fr 1fr}
	.lc-tiers{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:1000px){
	.lc{grid-template-columns:1.5fr 1fr;align-items:start}
	.lc-out{position:sticky;top:96px;padding:2rem}
	.lc-bar{display:none}
}
@media (prefers-reduced-motion:reduce){.lc-total.is-bump{animation:none}.lc-bar{transition:none}}

/* Compact calculator: whole tool fits one screen (Mohamed 2026-10-06). */
.ed-calc-sec{padding-block:clamp(1.5rem,4vw,2.75rem)}
.ed-calc-sec .ed-sec-head{gap:.3rem;margin-bottom:1rem}
.ed-calc-sec .ed-h2{font-size:clamp(1.35rem,2.4vw,2rem)}
.ed-calc-sec .ed-sec-head p{font-size:.95rem}
.lc,.lc-steps{gap:.75rem}
.lc-step{padding:.75rem .9rem}
.lc-step legend{font-size:.95rem;gap:.45rem}
.lc-num{width:22px;height:22px;font-size:.75rem}
.lc-select{margin-top:.4rem}
.lc-select select{min-height:46px;font-size:1rem}
.lc-hint{margin-top:.4rem;font-size:.82rem;line-height:1.6}
.lc-row{gap:.75rem}
.lc-stepper{grid-template-columns:42px 1fr 42px;margin-top:.4rem;gap:.35rem}
.lc-stepper button{height:42px;border-radius:12px;font-size:1.35rem}
.lc-stepper output{font-size:1.05rem}
.lc-quick{gap:.35rem;margin-top:.45rem}
.lc-quick button{min-height:34px;font-size:.85rem}
.lc-tiers{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin-top:.4rem}
.lc-tier span{min-height:48px;padding:.35rem .3rem;border-radius:12px}
.lc-tier strong{font-size:.82rem;line-height:1.35}
.lc-tier i{font-size:.62rem}
.lc-out{gap:.55rem;padding:1rem 1.1rem}
.lc-total{font-size:clamp(1.9rem,6vw,2.6rem)}
.lc-break span{padding:.2rem .65rem;font-size:.82rem}
.lc-out .lc-cta{min-height:48px;font-size:1rem}
.lc-note{font-size:.8rem}
.lc-how{padding-top:.5rem}
.lc-how summary{font-size:.9rem}
.ed-trust{font-size:.78rem}
@media (max-width:699px){
	.ed-calc-sec .ed-sec-head p,.lc [data-role="dest-sub"],.lc-summary,.lc-quick{display:none}
	.lc-row{grid-template-columns:1fr 1fr}
	.lc-step legend{font-size:.88rem}
	.lc-row .lc-step{padding:.65rem .6rem}
}
@media (min-width:1000px){
	.lc-out{position:sticky;top:90px;padding:1.4rem}
}
@media (max-width:699px){
	.ed-calc-sec{padding-block:1rem}
	.ed-calc-sec .ed-h2{font-size:1.15rem}
	.lc,.lc-steps{gap:.55rem}
	.lc-step{padding:.6rem .7rem}
	.lc-tier span{min-height:44px}
	.lc-hint{font-size:.76rem;margin-top:.3rem}
	.lc-out{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.45rem .75rem;padding:.85rem .95rem}
	.lc-out-label{grid-column:1/-1;font-size:.85rem}
	.lc-total{font-size:1.75rem;grid-column:1}
	.lc-break{grid-column:2;flex-direction:column;gap:.25rem;align-items:flex-end}
	.lc-break span{font-size:.72rem;padding:.1rem .5rem}
	.lc-out .lc-cta,.lc-note,.lc-how{grid-column:1/-1}
	.lc-note{font-size:.72rem;line-height:1.5}
	.lc-how{padding-top:.35rem}
	.lc-out .ed-trust{display:none}
}
