/* v1.3 motion layer. Every rule that hides content is scoped to html.mo, which is only set when
   JavaScript runs and prefers-reduced-motion is off. motion.js removes .mo again if GSAP fails. */
:root {
	--mo-out: cubic-bezier(.16, 1, .3, 1);
	--mo-inout: cubic-bezier(.76, 0, .24, 1);
	--mo-btn: .3s;
	--mo-card: .45s;
	--hh: 78px;
}

/* ---------- Page transition curtain ---------- */
.mo-curtain { position: fixed; inset: 0; z-index: 9999; pointer-events: none; visibility: hidden; display: none; }
.mo .mo-curtain { display: block; }
.mo-curtain__a, .mo-curtain__b { position: absolute; inset: 0; transform: translateY(100%); will-change: transform; }
.mo-curtain__a { background: var(--orange); }
.mo-curtain__b { background: var(--ink); }
.mo-curtain__logo { position: absolute; left: 50%; top: 50%; width: min(220px, 50vw); transform: translate(-50%, -50%); opacity: 0; }
.mo-cover .mo-curtain { visibility: visible; pointer-events: auto; }
.mo-cover .mo-curtain__a, .mo-cover .mo-curtain__b { transform: none; }
.mo-cover .mo-curtain__a { display: none; }
.mo-cover .mo-curtain__logo { opacity: 1; }

/* ---------- Header ---------- */
.mo .ewdt-header { transition: background-color .45s var(--mo-out), box-shadow .45s, border-color .45s, backdrop-filter .45s; }
.mo.mo-overlap .ewdt-header:not(.is-stuck):not(.is-open) { background: transparent; border-bottom-color: transparent; }
.mo.mo-overlap .ewdt-hero--home { margin-top: calc(var(--hh) * -1); }
.mo.mo-overlap .ewdt-hero--home .ewdt-hero__in { padding-top: calc(96px + var(--hh)); }
.mo .ewdt-header.is-stuck { background: rgba(36, 40, 44, .97); box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .5); }
.mo .ewdt-header__in > * { opacity: 0; transform: translateY(-14px); }
.mo.mo-hdr-in .ewdt-header__in > * { opacity: 1; transform: none; transition: opacity .7s var(--mo-out), transform .7s var(--mo-out); }
.mo.mo-hdr-in .ewdt-header__in > *:nth-child(2) { transition-delay: .08s; }
.mo.mo-hdr-in .ewdt-header__in > *:nth-child(3) { transition-delay: .16s; }
.mo-progress { position: absolute; left: 0; bottom: -1px; height: 3px; width: 100%; background: var(--orange); transform: scaleX(0); transform-origin: 0 50%; pointer-events: none; }

/* Nav underline + active indicator */
.mo .ewdt-menu > li > a { position: relative; }
.mo .ewdt-menu > li > a::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 4px; height: 2px; background: var(--orange); transform: scaleX(0); transform-origin: 100% 50%; transition: transform .4s var(--mo-out); }
.mo .ewdt-menu > li > a:hover::after, .mo .ewdt-menu > li > a:focus-visible::after,
.mo .ewdt-menu > .current-menu-item > a::after, .mo .ewdt-menu > li > a[aria-current="page"]::after { transform: scaleX(1); transform-origin: 0 50%; }
.mo .ewdt-menu a:hover, .mo .ewdt-menu .current-menu-item > a, .mo .ewdt-menu a[aria-current="page"] { background: transparent; }

/* Dropdowns (only drawn if the menu has depth 2) */
@media (min-width: 1181px) {
	.ewdt-menu .menu-item-has-children { position: relative; }
	.ewdt-menu .sub-menu { list-style: none; margin: 0; padding: 8px; position: absolute; left: 0; top: 100%; min-width: 230px; background: var(--ink); border-radius: 8px; box-shadow: 0 24px 50px rgba(0, 0, 0, .35); opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .3s var(--mo-out), transform .35s var(--mo-out), visibility 0s .35s; z-index: 5; }
	.ewdt-menu .menu-item-has-children:hover > .sub-menu, .ewdt-menu .menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
}

/* ---------- Mobile menu: spacious, staggered ---------- */
@media (max-width: 1180px) {
	.mo .ewdt-nav { position: fixed; left: 0; right: 0; top: var(--hb, 70px); bottom: 0; max-height: none; height: auto; padding: 18px 24px calc(28px + env(safe-area-inset-bottom)); background: linear-gradient(160deg, var(--ink), var(--navy)); clip-path: inset(0 0 100% 0); transform: none; opacity: 1; visibility: hidden; transition: clip-path .6s var(--mo-inout), visibility 0s .6s; overflow-y: auto; }
	.mo body.ewdt-menu-open .ewdt-nav { clip-path: inset(0); visibility: visible; transition-delay: 0s; }
	.mo body.ewdt-menu-open { overflow: hidden; }
	.mo .ewdt-menu a { font: 700 clamp(1.5rem, 6vw, 2.1rem)/1.1 var(--head); text-transform: uppercase; padding: 18px 4px; letter-spacing: .01em; }
	.mo .ewdt-menu > li > a::after { left: 4px; right: auto; width: 56px; bottom: 10px; }
	.mo .ewdt-nav .ewdt-menu li, .mo .ewdt-nav__extra > * { opacity: 0; transform: translateY(28px); }
	.mo body.ewdt-menu-open .ewdt-nav .ewdt-menu li, .mo body.ewdt-menu-open .ewdt-nav__extra > * { opacity: 1; transform: none; transition: opacity .55s var(--mo-out), transform .6s var(--mo-out); transition-delay: calc(.12s + var(--i, 0) * .06s); }
}
.mo .ewdt-burger__bars i { transition: transform .45s var(--mo-out), opacity .2s, width .3s; }
.mo .ewdt-burger:hover .ewdt-burger__bars i:nth-child(2) { width: 70%; }

/* ---------- Hero ---------- */
.mo .ewdt-hero * { animation-name: none !important; }
.mo .ewdt-hero__photo { animation: none !important; transform-origin: 60% 50%; will-change: transform; }
.mo .ewdt-hero--photo .ewdt-hero__title { clip-path: none; transform: none; }
.mo .ewdt-hero--photo .ewdt-eyebrow, .mo .ewdt-hero--photo .ewdt-hero__lead, .mo .ewdt-hero--photo .ewdt-btns { opacity: 1; }
.mo .ewdt-hero:not(.mo-ready) .ewdt-hero__copy > *, .mo .ewdt-hero:not(.mo-ready) .ewdt-hero__crumbs { visibility: hidden; }
.mo .ewdt-hero--photo .ewdt-hero__media { animation: mo-media-in 1.5s var(--mo-out) both !important; }
.mo .ewdt-hero--photo .ewdt-hero__photo { animation: mo-photo-in 2.2s var(--mo-out) both !important; }
.mo .ewdt-hero--photo .ewdt-hero__photo.mo-photo-done { animation: none !important; }
@keyframes mo-media-in { from { clip-path: inset(9% 7% 9% 7% round 14px); } to { clip-path: inset(0 0 0 0 round 0); } }
@keyframes mo-photo-in { from { transform: scale(1.28); } to { transform: scale(1.06); } }
.mo-w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .12em; margin-bottom: -.12em; }
.mo-wi { display: inline-block; will-change: transform; }
.mo-deco { position: absolute; pointer-events: none; z-index: -1; }
.mo-ring { right: 6%; top: 18%; width: clamp(160px, 22vw, 320px); aspect-ratio: 1; border: 2px solid rgba(244, 119, 33, .5); border-radius: 50%; }
.mo-ring::after { content: ""; position: absolute; inset: 18%; border: 2px dashed rgba(255, 255, 255, .25); border-radius: 50%; }
.mo-bar { right: 14%; bottom: 14%; width: 120px; height: 10px; background: var(--orange); transform: skewX(-24deg); opacity: .9; }
.mo-bar--2 { right: 11%; bottom: calc(14% + 22px); width: 70px; opacity: .45; }
.ewdt-hero--photo .ewdt-hero__in { position: relative; }
.mo-scroll { position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%); display: grid; justify-items: center; gap: 8px; color: #fff; font: 700 .68rem/1 var(--body); letter-spacing: .22em; text-transform: uppercase; text-decoration: none; opacity: 0; z-index: 2; }
.mo-scroll i { display: block; width: 2px; height: 46px; background: rgba(255, 255, 255, .25); position: relative; overflow: hidden; }
.mo-scroll i::after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 40%; background: var(--orange); animation: mo-scroll 1.8s var(--mo-inout) infinite; }
@keyframes mo-scroll { from { transform: translateY(-110%); } to { transform: translateY(260%); } }
.ewdt-hero--home { min-height: clamp(560px, 94svh, 940px); }
.ewdt-hero--home .ewdt-hero__in { padding-bottom: 120px; }

/* Trust bar items stagger from motion.js */
.mo .ewdt-trust__item { will-change: transform, opacity; }

/* ---------- Scroll system: neutralise legacy CSS reveals ---------- */
.mo .ewdt-reveal, .mo [data-reveal], .mo .ewdt-photo.ewdt-reveal { opacity: 1; transform: none; clip-path: none; transition: none !important; }
.mo .ewdt-photo { position: relative; }
.mo .ewdt-photo img, .mo .ewdt-gallery .wp-block-image img { transform-origin: 50% 50%; will-change: transform; }
.mo .ewdt-photo:hover img { transform: none; }
.mo [data-mo-hide] { visibility: hidden; }
.mo-img-wait { opacity: 0; filter: blur(8px); transition: opacity .9s var(--mo-out), filter .9s var(--mo-out); }
.mo-img-ok { opacity: 1; filter: none; }

/* ---------- Dumpster cards ---------- */
.mo .ewdt-sizes { perspective: 1200px; }
.mo .ewdt-size { transform-style: preserve-3d; will-change: transform; transition: box-shadow var(--mo-card) var(--mo-out), border-color .3s; overflow: hidden; --mx: 50%; --my: 0%; }
.mo .ewdt-size:hover, .mo .ewdt-size:focus-within { transform: none; box-shadow: 0 40px 70px -24px rgba(23, 25, 27, .45); }
.mo .ewdt-size::after { content: ""; position: absolute; inset: 0; border: 3px solid var(--orange); border-radius: inherit; pointer-events: none; clip-path: inset(0 100% 100% 0); transition: clip-path .7s var(--mo-out); z-index: 3; }
.mo .ewdt-size:hover::after, .mo .ewdt-size:focus-within::after, .mo .ewdt-size.is-active::after { clip-path: inset(0 0 0 0); }
.mo .ewdt-size::before { content: ""; position: absolute; inset: 0; background: radial-gradient(420px circle at var(--mx) var(--my), rgba(244, 119, 33, .16), transparent 60%); opacity: 0; transition: opacity .4s; pointer-events: none; z-index: 1; }
.mo .ewdt-size:hover::before { opacity: 1; }
.mo .ewdt-size__img { overflow: hidden; }
.mo .ewdt-size__img img { transition: none; will-change: transform; }
.mo .ewdt-size > p.ewdt-size__flag { z-index: 4; }
@media (hover: none) {
	.mo .ewdt-size.is-active { box-shadow: 0 20px 44px -18px rgba(23, 25, 27, .4); }
	.mo .ewdt-size.is-active .ewdt-size__img img { transform: scale(1.06); }
}

/* ---------- Buttons ---------- */
.mo .ewdt-btn, .mo .ewdt-b .wp-block-button__link { position: relative; overflow: hidden; isolation: isolate; transition: color var(--mo-btn) var(--mo-out), background-color var(--mo-btn), border-color var(--mo-btn), box-shadow var(--mo-btn) var(--mo-out), transform var(--mo-btn) var(--mo-out); will-change: transform; }
.mo .ewdt-btn::before, .mo .ewdt-b .wp-block-button__link::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--mo-fill, var(--ink)); transform: translateX(-101%); transition: transform .5s var(--mo-out); }
.mo .ewdt-btn:hover::before, .mo .ewdt-b .wp-block-button__link:hover::before, .mo .ewdt-btn:focus-visible::before, .mo .ewdt-b .wp-block-button__link:focus-visible::before { transform: none; }
.mo .ewdt-btn--primary, .mo .ewdt-b--primary .wp-block-button__link { --mo-fill: #fff; }
.mo .ewdt-btn--primary:hover, .mo .ewdt-b--primary .wp-block-button__link:hover { background: var(--orange); color: var(--ink); }
.mo .ewdt-btn--dark, .mo .ewdt-b--dark .wp-block-button__link { --mo-fill: var(--orange); }
.mo .ewdt-btn--dark:hover, .mo .ewdt-b--dark .wp-block-button__link:hover { background: var(--ink); color: var(--ink); }
.mo .ewdt-btn--ghost, .mo .ewdt-b--ghost .wp-block-button__link, .mo .ewdt-btn--light, .mo .ewdt-b--ghost-dark .wp-block-button__link, .mo .ewdt-btn--ghost-dark { --mo-fill: #fff; }
.mo .ewdt-b--ghost-dark .wp-block-button__link, .mo .ewdt-btn--ghost-dark { --mo-fill: var(--ink); }
.mo .ewdt-btn--ghost:hover, .mo .ewdt-b--ghost .wp-block-button__link:hover { background: transparent; }
.mo .ewdt-btn--ghost-dark:hover, .mo .ewdt-b--ghost-dark .wp-block-button__link:hover { background: transparent; }
.mo .ewdt-btn--light:hover { background: #fff; }
.mo .ewdt-btn:hover, .mo .ewdt-b .wp-block-button__link:hover { transform: none; }
.mo .ewdt-btn:active, .mo .ewdt-b .wp-block-button__link:active { transform: scale(.95) !important; transition-duration: .1s; }
/* Arrow on primary and dark calls to action */
.mo .ewdt-btn--primary:not(:has(svg))::after, .mo .ewdt-b--primary .wp-block-button__link::after, .mo .ewdt-btn--dark:not(:has(svg))::after {
	content: ""; width: 1.05em; height: 1.05em; margin-left: .55em; flex: none; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .45s var(--mo-out);
}
.mo .ewdt-btn--primary:hover::after, .mo .ewdt-b--primary .wp-block-button__link:hover::after, .mo .ewdt-btn--dark:hover::after { transform: translateX(6px); }
.mo .ewdt-btn:focus-visible, .mo .ewdt-b .wp-block-button__link:focus-visible, .mo a:focus-visible, .mo button:focus-visible, .mo summary:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; transition: outline-offset .2s var(--mo-out); animation: mo-focus .5s var(--mo-out); }
@keyframes mo-focus { from { outline-offset: 12px; outline-color: transparent; } }
.mo .ewdt-btn--primary { box-shadow: 0 8px 22px rgba(244, 119, 33, .35), inset 0 -3px 0 rgba(0, 0, 0, .12); }

/* ---------- How It Works story ---------- */
.mo-hiw { position: relative; overflow: hidden; isolation: isolate; }
.mo-hiw__bg { position: absolute; inset: 0; z-index: -1; background: var(--ink); }
.mo-hiw__bg::after { content: ""; position: absolute; inset: 0; z-index: 100; background: linear-gradient(180deg, rgba(23, 25, 27, .78), rgba(23, 25, 27, .9)); }
.mo-hiw__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; clip-path: inset(0 0 0 100%); }
.mo-hiw__img:first-child { clip-path: inset(0); }
.mo-hiw .ewdt-wrap { position: relative; z-index: 1; }
.mo-hiw .ewdt-steps { position: relative; }
.mo-hiw__track { position: absolute; left: 0; right: 0; top: -22px; height: 4px; background: rgba(255, 255, 255, .16); border-radius: 4px; overflow: hidden; }
.mo-hiw__fill { display: block; height: 100%; width: 100%; background: var(--orange); transform: scaleX(0); transform-origin: 0 50%; }
.mo-hiw .ewdt-step { transition: border-color .5s, background-color .5s, box-shadow .5s; }
.mo-hiw .ewdt-step.is-on { border-color: var(--orange); background: rgba(23, 25, 27, .85); box-shadow: 0 0 0 1px var(--orange), 0 30px 60px -30px rgba(0, 0, 0, .8); }
.mo-hiw .ewdt-step:not(.is-on) { opacity: .7; background: rgba(23, 25, 27, .55); }
.mo-hiw.mo-pinned { min-height: calc(100vh - var(--hh)); min-height: calc(100svh - var(--hh)); display: flex; flex-direction: column; justify-content: center; }
.mo-hiw .ewdt-step .ewdt-steps__n { display: inline-block; transition: transform .6s var(--mo-out), color .4s; transform-origin: 0 100%; }
.mo-hiw .ewdt-step.is-on .ewdt-steps__n { transform: scale(1.22); }

/* ---------- Section accents ---------- */
.mo .ewdt-cta__card { position: relative; overflow: hidden; }
.mo .ewdt-cta__card::after { content: ""; position: absolute; top: 0; bottom: 0; left: -40%; width: 30%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .35), transparent); transform: skewX(-20deg) translateX(-100%); pointer-events: none; }
.mo .ewdt-cta__card.mo-sheen::after { animation: mo-sheen 1.6s .3s var(--mo-inout) 1 both; }
@keyframes mo-sheen { to { transform: skewX(-20deg) translateX(560%); } }
.mo-float { position: absolute; border-radius: 50%; pointer-events: none; }
.mo-float--a { width: 220px; height: 220px; right: -60px; top: -90px; background: rgba(255, 255, 255, .16); }
.mo-float--b { width: 90px; height: 90px; left: 38%; bottom: -34px; border: 3px solid rgba(23, 25, 27, .22); }
.mo .ewdt-chips a { transition: background-color .3s, color .3s, border-color .3s, transform .45s var(--mo-out), box-shadow .45s var(--mo-out); }
.mo .ewdt-chips a:hover { transform: translateY(-3px) scale(1.04); border-color: var(--orange); box-shadow: 0 12px 24px -12px rgba(23, 25, 27, .4); }
.mo .ewdt-chips:hover a:not(:hover) { opacity: .55; }
.mo .ewdt-map { will-change: clip-path; }
.mo .ewdt-card, .mo .ewdt-why__item { transition: transform var(--mo-card) var(--mo-out), box-shadow var(--mo-card) var(--mo-out), border-color .3s; }

/* ---------- FAQ ---------- */
.mo .ewdt-faq__item { transition: border-color .3s, box-shadow .4s var(--mo-out); }
.mo .ewdt-faq__item:hover { box-shadow: 0 12px 28px -16px rgba(23, 25, 27, .35); }
.mo .ewdt-faq__item summary::after { transition: transform .5s var(--mo-out); }

/* ---------- Gallery + lightbox ---------- */
.mo .ewdt-gallery .wp-block-image { position: relative; cursor: zoom-in; }
.mo .ewdt-gallery .wp-block-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(23, 25, 27, .7), transparent 55%); opacity: 0; transition: opacity .5s var(--mo-out); pointer-events: none; }
.mo .ewdt-gallery .wp-block-image::before { content: "+"; position: absolute; right: 14px; bottom: 12px; z-index: 2; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--orange); color: var(--ink); font: 800 1.4rem/1 var(--body); transform: scale(.4) rotate(-90deg); opacity: 0; transition: transform .5s var(--mo-out), opacity .3s; pointer-events: none; }
.mo .ewdt-gallery .wp-block-image:hover::after { opacity: 1; }
.mo .ewdt-gallery .wp-block-image:hover::before { transform: none; opacity: 1; }
.mo-lb { position: fixed; inset: 0; z-index: 9000; display: none; align-items: center; justify-content: center; background: rgba(15, 17, 19, .94); opacity: 0; }
.mo-lb.is-open { display: flex; }
.mo-lb__img { max-width: min(92vw, 1400px); max-height: 84vh; border-radius: 8px; box-shadow: 0 40px 100px rgba(0, 0, 0, .6); }
.mo-lb__cap { position: absolute; left: 0; right: 0; bottom: 18px; margin: 0; text-align: center; color: #cfd6dc; font-size: .95rem; padding: 0 70px; }
.mo-lb button { position: absolute; width: 52px; height: 52px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .12); color: #fff; font: 400 1.9rem/1 var(--body); cursor: pointer; transition: background-color .3s, transform .4s var(--mo-out); }
.mo-lb button:hover { background: var(--orange); color: var(--ink); transform: scale(1.1); }
.mo-lb__x { top: 18px; right: 18px; }
.mo-lb__p { left: 18px; top: 50%; margin-top: -26px; }
.mo-lb__n { right: 18px; top: 50%; margin-top: -26px; }

/* ---------- Forms ---------- */
.mo .ewdt-form input, .mo .ewdt-form select, .mo .ewdt-form textarea { transition: border-color .3s, box-shadow .4s var(--mo-out), transform .4s var(--mo-out); }
.mo .ewdt-form input:focus, .mo .ewdt-form select:focus, .mo .ewdt-form textarea:focus { transform: translateY(-2px); }
.mo .ewdt-qprog li::before { transform-origin: 100% 50%; transition: background-color .5s var(--mo-out); }
.mo .ewdt-qprog span { transition: background-color .4s, color .4s, transform .5s var(--mo-out); }
.mo .ewdt-qprog li.is-current span { transform: scale(1.18); }
.mo .ewdt-qsize__body { transition: border-color .3s, transform .45s var(--mo-out), box-shadow .45s var(--mo-out); }
.mo .ewdt-qsize:hover .ewdt-qsize__body { transform: translateY(-3px); }
.mo-check { display: block; width: 74px; height: 74px; margin: 0 auto 14px; }
.mo-check circle { fill: none; stroke: var(--orange); stroke-width: 4; stroke-dasharray: 190; stroke-dashoffset: 190; transform-origin: 50% 50%; transform: rotate(-90deg); }
.mo-check path { fill: none; stroke: var(--orange); stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 48; stroke-dashoffset: 48; }

/* ---------- Floating call bar, back to top ---------- */
@media (max-width: 768px) {
	.mo .ewdt-callbar { transform: translateY(110%); transition: transform .6s var(--mo-out); }
	.mo .ewdt-callbar.is-shown { transform: none; }
	.mo .ewdt-callbar.is-away { transform: translateY(110%); }
}
.mo-top { position: fixed; right: 18px; bottom: 18px; z-index: 80; width: 48px; height: 48px; border: 0; border-radius: 50%; background: var(--orange); color: var(--ink); cursor: pointer; display: grid; place-items: center; box-shadow: 0 12px 28px rgba(0, 0, 0, .3); opacity: 0; transform: translateY(24px) scale(.7); visibility: hidden; transition: opacity .4s, transform .5s var(--mo-out), visibility 0s .5s, background-color .3s; }
.mo-top.is-shown { opacity: 1; transform: none; visibility: visible; transition-delay: 0s; }
.mo-top:hover { background: #fff; transform: translateY(-4px); }
.mo-top svg { width: 22px; height: 22px; }
@media (max-width: 768px) { .mo-top { bottom: calc(76px + env(safe-area-inset-bottom)); right: 14px; width: 44px; height: 44px; } }

/* ---------- Footer ---------- */
.ewdt-footer { position: relative; overflow: hidden; }
.mo-fdeco { position: absolute; right: -8%; top: -30%; width: 520px; height: 520px; border-radius: 50%; border: 1px solid rgba(244, 119, 33, .18); pointer-events: none; }
.mo-fdeco::after { content: ""; position: absolute; inset: 14%; border-radius: 50%; border: 1px dashed rgba(255, 255, 255, .08); }
.mo .ewdt-flist a { position: relative; display: inline-block; transition: color .3s, transform .4s var(--mo-out); }
.mo .ewdt-flist a:hover { transform: translateX(6px); }
.mo .ewdt-social a { display: inline-block; transition: transform .45s var(--mo-out), color .3s; }
.mo .ewdt-social a:hover { transform: translateY(-4px) rotate(-3deg); }

/* ---------- Low power / small screens ---------- */
@media (max-width: 768px) {
	.mo-ring, .mo-bar, .mo-float, .mo-fdeco { display: none; }
	.mo .ewdt-size::before { display: none; }
	.ewdt-hero--home { min-height: clamp(520px, 88svh, 760px); }
	.mo-scroll { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.mo-curtain, .mo-scroll, .mo-deco, .mo-float, .mo-top { display: none !important; }
}
