/* EchoBloom's landing page; scoped to preserve the shared Mayflower skin. */
.echo-shell{max-width:1320px;margin:0 auto;padding:24px 32px 36px;color:#f8f2ed}
.echo-shell [hidden]{display:none!important}
.echo-shell a,.echo-shell button,.echo-shell summary{-webkit-tap-highlight-color:transparent}
.echo-shell a:focus-visible,.echo-shell button:focus-visible,.echo-shell summary:focus-visible{outline:3px solid #f0dca7;outline-offset:5px}
.echo-subnav{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;font-size:13px}
.echo-subnav div{display:flex;gap:26px}.echo-subnav a{color:#c9becd;text-decoration:none}.echo-subnav a:hover{color:#f5deb1}
.echo-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;min-height:540px;border:1px solid #82725c66;border-radius:26px;overflow:hidden;background:#131a23}
.echo-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.75}
.echo-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111920ed 0%,#111920aa 43%,#13192524 100%),linear-gradient(0deg,#121b23b8,transparent 45%);z-index:-1}
.echo-hero-copy{padding:56px 0 52px 48px;position:relative;z-index:2}
.echo-shell .echo-eyebrow{font:800 10px/1.5 var(--font-b);text-transform:uppercase;letter-spacing:.19em;color:#d9cba9;margin:0 0 16px}
.echo-hero h1{font-size:clamp(52px,6.2vw,84px);letter-spacing:-.055em;line-height:1.06;color:#fff1d3;margin:0 0 26px}
.echo-hero h1 span{display:block;font:500 12px/1.6 var(--font-b);text-transform:uppercase;letter-spacing:.32em;color:#e9dabb;margin:13px 0 0}
.echo-hero-line{font:400 clamp(24px,2.6vw,34px)/1.25 var(--font-d);margin:0 0 16px;letter-spacing:-.02em;color:#f5eff4}
.echo-intro{font-size:15px;line-height:1.8;color:#cbcbd1;max-width:430px;margin:0 0 25px}
.echo-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.echo-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:11px 18px;border:1px solid #665869;border-radius:9px;background:#302935;color:#f8f0f5;font:700 13px/1.5 var(--font-b);text-decoration:none;cursor:pointer;transition:background .18s,border-color .18s}
.echo-button:hover{background:#493b4d;border-color:#a58aa7}
.echo-button-primary{background:#ead8ae;border-color:#ead8ae;color:#292321}.echo-button-primary:hover{background:#f8e8c4;border-color:#f8e8c4;color:#292321}
.echo-quiet-link{font-size:13px;font-weight:700;color:#e5d6b8;text-decoration:none}.echo-quiet-link:hover{text-decoration:underline;text-underline-offset:5px}
.echo-hero-note{font-size:11px;line-height:1.7;color:#b6b9c0;margin:18px 0 0}
.echo-hero-art{position:relative;min-width:0;padding:30px 30px 0 0;text-align:center}
.echo-card-fan{position:relative;height:340px;max-width:430px;margin:0 auto}
.echo-card-fan img{position:absolute;width:190px;height:285px;object-fit:cover;border-radius:14px;box-shadow:0 20px 45px #0009;top:28px;left:50%;border:1px solid #e5cb7966}
.echo-fan-left{transform:translateX(-100%) rotate(-16deg)}.echo-fan-right{transform:translateX(0%) rotate(16deg)}.echo-fan-center{transform:translateX(-50%) translateY(-18px);z-index:1}
.echo-art-caption{display:inline-block;color:#d9d1c4;font:italic 15px var(--font-d);margin-top:8px}
.echo-ribbon{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 4px;border-bottom:1px solid #4e414f;font-size:12px;color:#c1b8c9}
.echo-ribbon p{margin:0}.echo-ribbon p:first-child{display:flex;align-items:center;gap:9px;color:#d7e8db}.echo-ribbon a{color:#e8d8b8;font-weight:700;text-decoration:none;white-space:nowrap}
.echo-status-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#a4dcb2;box-shadow:0 0 12px #a4dcb24d}
.echo-play{padding-top:48px;scroll-margin-top:24px}.echo-section{margin-top:76px;scroll-margin-top:24px}
.echo-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.echo-section-head>div{min-width:0}.echo-section-head .echo-eyebrow{margin-bottom:9px}
.echo-shell h2{font-size:clamp(27px,3.2vw,39px);line-height:1.2;letter-spacing:-.035em;color:#f6edf3}
.echo-section-head p:not(.echo-eyebrow){font-size:13px;line-height:1.7;color:#bfb4c7;margin:10px 0 0}
.echo-gate{min-height:350px;display:grid;place-items:center;padding:36px 20px;border:1px solid #645369;border-radius:18px;text-align:center;background:radial-gradient(ellipse at 50% 0,#59476144,transparent 65%),#201e2b}
.echo-gate-inner{max-width:470px}.echo-gate-inner>img{object-fit:contain;margin:0 auto 8px}.echo-gate h3{font-size:28px;line-height:1.25}.echo-gate p{font-size:14px;line-height:1.75;color:#c4b8ce;margin:14px auto 22px}
.echo-player{display:block;width:100%;height:min(65vw,900px);min-height:460px;border:1px solid #685772;border-radius:16px;background:#101820}.echo-player:fullscreen{width:100vw;height:100vh;border:0;border-radius:0}
.echo-play-notes{display:flex;justify-content:space-between;gap:16px;font-size:11px;line-height:1.7;color:#b3a9be;margin-top:12px}.echo-play-notes p{margin:0}.echo-play-notes span{color:#d3c090;margin-right:5px}.echo-noscript{padding:16px;border:1px solid #82725c}
.echo-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #4e414f;border-bottom:1px solid #4e414f}.echo-modes article{padding:28px 28px 30px}.echo-modes article:first-child{padding-left:0}.echo-modes article:last-child{padding-right:0}.echo-modes article+article{border-left:1px solid #4e414f}
.echo-mode-number{font-size:10px;font-weight:800;letter-spacing:.15em;color:#cfb6e8}.echo-modes h3{font-size:25px;margin:16px 0 12px}.echo-modes p{color:#c0b4c9;font-size:14px;line-height:1.85;margin:0 0 18px}.echo-mode-note{font:italic 13px/1.6 var(--font-d);color:#d3c4b1}
.echo-realms{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.echo-realm{min-width:0;--realm:#a9d8b7}.echo-ember{--realm:#edb59d}.echo-mirror{--realm:#acd9ea}.echo-moonroot{--realm:#d2b8ef}
.echo-realm-art{overflow:hidden;border-radius:16px;background:#101b19;border:1px solid #5f525a}.echo-realm-art img{width:100%;height:auto;display:block;transition:transform .3s}.echo-realm:hover img{transform:scale(1.025)}
.echo-realm-copy{padding:19px 0 0}.echo-realm-copy .echo-eyebrow{font-size:9px;letter-spacing:.075em;color:var(--realm);margin-bottom:8px}.echo-realm h3{font-size:25px;color:#f4eaf0}.echo-realm-copy>p:last-child{font-size:13px;line-height:1.8;color:#c0b4c9;margin:10px 0 0}
.echo-start{display:grid;grid-template-columns:.85fr 1.3fr;gap:64px;padding:40px;border:1px solid #514354;border-radius:20px;background:linear-gradient(125deg,#332b3b,#211e2b)}.echo-start>div>p:not(.echo-eyebrow){font-size:14px;line-height:1.9;max-width:290px;color:#c4b8ce;margin:18px 0 22px}.echo-steps{list-style:none;padding:0;margin:0}.echo-steps li{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid #4a3d50}.echo-steps li:first-child{padding-top:0}.echo-steps li:last-child{padding-bottom:0;border:0}.echo-steps li>span{font:italic 23px var(--font-d);color:#caba94}.echo-steps h3{font-size:21px;line-height:1.35}.echo-steps p{font-size:13px;line-height:1.8;color:#c4b8ce;margin:8px 0 0}
.echo-faq{display:grid;grid-template-columns:.85fr 1.3fr;gap:64px}.echo-faq details{border-bottom:1px solid #4e414f}.echo-faq details:first-child{border-top:1px solid #4e414f}.echo-faq summary{padding:20px 28px 20px 0;font-size:14px;font-weight:700;cursor:pointer;position:relative;list-style:none;line-height:1.6}.echo-faq summary::-webkit-details-marker{display:none}.echo-faq summary::after{content:'+';position:absolute;right:5px;font-size:20px;color:#dfcba4;top:16px}.echo-faq details[open] summary::after{content:'−'}.echo-faq details p{font-size:13px;line-height:1.85;color:#c4b8ce;margin:0 25px 20px 0}
.echo-closing{display:flex;align-items:center;gap:18px;border-top:1px solid #4e414f;padding:28px 0 0;margin-top:65px}.echo-closing>span{font-size:32px;color:#d9cba9}.echo-closing p{font:18px/1.6 var(--font-d);margin:0}.echo-closing p span{font:12px var(--font-b);color:#b8a9c0}.echo-closing a{margin-left:auto;color:#ddcdb5;font-size:13px;text-decoration:none}
@media(min-width:1500px){.echo-shell{max-width:1440px}.echo-hero{min-height:570px}.echo-card-fan{height:375px}.echo-card-fan img{width:215px;height:322px}}
@media(max-width:1050px){.echo-hero-copy{padding:40px 0 40px 30px}.echo-card-fan img{width:150px;height:225px}.echo-card-fan{height:280px}.echo-hero-art{padding-right:15px}.echo-realms{gap:16px}.echo-realm h3{font-size:22px}.echo-ribbon{flex-wrap:wrap;justify-content:flex-start}.echo-ribbon a{margin-left:auto}.echo-start,.echo-faq{gap:35px}.echo-intro{font-size:14px}}
@media(max-width:760px){.echo-shell{padding:20px 20px 30px}.echo-subnav div{gap:14px}.echo-subnav{font-size:11px}.echo-hero{grid-template-columns:1fr}.echo-hero-copy{padding:34px 28px 20px}.echo-hero h1{font-size:64px}.echo-hero::before{background:linear-gradient(180deg,#111920e0,#11192085 65%,#111920ba)}.echo-intro{max-width:480px}.echo-hero-art{padding:0 20px 28px}.echo-card-fan{height:240px;max-width:320px}.echo-card-fan img{width:130px;height:195px}.echo-art-caption{font-size:13px}.echo-ribbon{gap:10px 20px;padding:20px 2px}.echo-ribbon p:nth-child(2){flex-basis:100%;order:3}.echo-section-head{align-items:flex-start;flex-direction:column;gap:10px}.echo-section-head>p br{display:none}.echo-play{padding-top:36px}.echo-section{margin-top:52px}.echo-realms{grid-template-columns:repeat(2,1fr);gap:28px 20px}.echo-modes{grid-template-columns:1fr}.echo-modes article,.echo-modes article:first-child,.echo-modes article:last-child{padding:24px 0}.echo-modes article+article{border-left:0;border-top:1px solid #4e414f}.echo-modes p{margin-bottom:12px}.echo-start,.echo-faq{grid-template-columns:1fr;gap:28px}.echo-start{padding:28px}.echo-start>div>p:not(.echo-eyebrow){max-width:100%}.echo-start h2 br{display:none}.echo-play-notes{flex-direction:column;gap:3px}.echo-player{min-height:420px;height:72vh}.echo-closing{margin-top:45px;flex-wrap:wrap}.echo-closing a{margin-left:0}.echo-gate h3{font-size:25px}}
@media(max-width:420px){.echo-shell{padding-left:14px;padding-right:14px}.echo-subnav div a:first-child{display:none}.echo-hero-copy{padding:30px 22px 20px}.echo-hero h1{font-size:52px}.echo-hero h1 span{font-size:10px}.echo-hero-line{font-size:26px}.echo-actions{gap:15px}.echo-ribbon{font-size:11px}.echo-realms{gap:24px 14px}.echo-realm h3{font-size:20px}.echo-realm-copy .echo-eyebrow{font-size:8px;letter-spacing:.03em}.echo-realm-copy>p:last-child{font-size:12px}.echo-start{padding:24px}.echo-gate{min-height:340px}.echo-closing p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.echo-shell *{transition:none!important;scroll-behavior:auto!important}}
