.ely-hero { background:radial-gradient(ellipse at 80% 40%,#e9dbc2 0,transparent 52%),#faf6ee; overflow:hidden; }
.ely-hero-inner { display:grid; grid-template-columns:minmax(0,45fr) minmax(0,55fr); align-items:center; gap:2.5rem; min-height:clamp(560px,77vh,780px); padding-block:3rem; }
.ely-hero h1 { font-size:clamp(2.25rem,3.5vw,3.5rem); line-height:1.1; letter-spacing:-.035em; margin:1rem 0 1.4rem; }
.ely-hero h1 span { color:#876019; }
.ely-hero-content > p { max-width:470px; color:var(--ely-muted); font-size:1rem; line-height:1.75; }
.ely-buttons { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.8rem; }
.ely-hero-benefits { display:flex; flex-wrap:wrap; gap:.45rem 1rem; list-style:none; padding:0; margin:1.4rem 0; font-size:.75rem; color:#5c626b; }
.ely-hero-benefits li::before { content:'·'; color:#876019; margin-right:.4rem; }
.ely-hero-content .ely-hero-brand { font-size:.75rem; margin-top:2rem; }
.ely-hero-gallery { min-width:0; }
.ely-home-community-track { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; padding:8px 3px 16px; overscroll-behavior-x:contain; scrollbar-width:none; }
.ely-home-community-track::-webkit-scrollbar { display:none; }
.ely-home-community-track > article { flex:0 0 64%; min-width:0; scroll-snap-align:start; }
.ely-home-recipe { background:#fff; border:1px solid var(--ely-border); border-radius:14px; overflow:hidden; box-shadow:0 5px 20px #07162906; }
.ely-home-recipe-photo { display:block; height:clamp(230px,33vh,330px); overflow:hidden; background:#f3eee6; }
.ely-home-recipe-photo img { width:100%; height:100%; object-fit:cover; }
.ely-home-recipe-body { padding:1.2rem; display:flex; flex-direction:column; align-items:flex-start; gap:1rem; }
.ely-home-recipe h3 { font-size:1.4rem; margin:0; line-height:1.25; }
.ely-home-recipe h3 a { color:var(--ely-navy,#071629); text-decoration:none; }
.ely-home-recipe-author { display:flex; align-items:center; gap:.65rem; color:var(--ely-muted); text-decoration:none; font-size:.85rem; }
.ely-home-recipe-author:hover { text-decoration:underline; }
.ely-home-recipe-author small { display:block; font-size:.7rem; color:#79602f; }
.ely-home-author-avatar { display:grid; place-items:center; flex-shrink:0; width:36px; height:36px; border-radius:50%; overflow:hidden; background:#f2eadc; color:#73531b; }
.ely-home-author-avatar img { width:100%; height:100%; object-fit:cover; }
.ely-home-invite { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:1.75rem; background:#f0e5d2; border:1px solid #dfd0b6; border-radius:14px; }
.ely-home-invite h3 { font-size:clamp(1.6rem,2.2vw,2rem); line-height:1.15; margin:1rem 0; }
.ely-home-invite p { font-size:.9rem; color:var(--ely-muted); margin:0; }
.ely-home-invite ul { list-style:none; padding:0; margin:1rem 0; font-size:.8rem; line-height:1.8; color:#79602f; }
.ely-home-community-track > article:only-child { flex-basis:100%; }
.ely-home-community-controls { display:flex; align-items:center; justify-content:flex-end; gap:.6rem; }
.ely-home-community-controls[hidden] { display:none; }
.ely-home-community-controls button { min-width:44px; height:44px; border:1px solid #c5b28f; border-radius:50%; background:transparent; color:#071629; cursor:pointer; font-size:1.2rem; }
.ely-home-community-controls button[data-autoplay] { border:0; border-radius:4px; font-size:.75rem; padding:0 .75rem; }
.ely-home-community-controls button:disabled { opacity:.35; cursor:default; }
.ely-home :focus-visible { outline:2px solid #876019; outline-offset:3px; }
.ely-home-community-track.is-dragging { scroll-snap-type:none; cursor:grabbing; user-select:none; }
.ely-home .ely-section-heading h2 { font-size:clamp(1.9rem,3vw,2.8rem); line-height:1.15; margin:.6rem 0 1rem; }
.ely-home .ely-section-heading p { max-width:720px; }
.ely-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.ely-step { padding:1.6rem; background:#fff; border:1px solid var(--ely-border); border-radius:12px; }
.ely-step > span { font:500 2rem/1 var(--ely-heading-font); color:#986d21; }
.ely-step h3 { font-size:1.15rem; margin:1rem 0 .7rem; }
.ely-step p,.ely-home-rewards p { color:var(--ely-muted); margin:0; }
.ely-home-pillars .ely-step { border:0; border-radius:0; padding:0 1.5rem 0 0; }
.ely-home-reputation { background:#0d2035; color:#fff; }
.ely-home-split { display:grid; grid-template-columns: .85fr 1.15fr; gap:3.5rem; align-items:center; }
.ely-home-reputation .ely-section-label,.ely-home-reputation .ely-text-link { color:#dfc28b; }
.ely-home-reputation .ely-section-heading p { color:#c4cdd6; }
.ely-home-review-contexts { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.ely-home-review { padding:1.5rem; border:1px solid #ffffff24; border-radius:12px; background:#ffffff05; }
.ely-home-review h3 { font-size:1.2rem; margin:0 0 .5rem; }
.ely-home-review-caption { font-size:.75rem; color:#d4ba87; }
.ely-home-review ul { padding:0; list-style:none; font-size:.8rem; color:#d6dce2; margin:1.4rem 0 0; }
.ely-home-review li { padding:.5rem 0; border-bottom:1px solid #ffffff12; }
.ely-home-demo-note { grid-column:1/-1; font-size:.7rem; color:#b5c0cc; margin:0; }
.ely-home-story-grid { display:grid; grid-template-columns:1fr 1fr; max-width:940px; margin:2rem auto 0; align-items:center; gap:4rem; }
.ely-home-story .ely-home-recipe-photo { height:320px; }
.ely-home-profile { padding:2rem 0; }
.ely-home-profile > .ely-home-recipe-author { margin-top:1.5rem; }
.ely-home-profile h3 { font-size:2rem; margin:1rem 0; }
.ely-home-profile p { color:var(--ely-muted); }
.ely-home-profile-count { padding-block:1rem; border-top:1px solid var(--ely-border); }
.ely-how { background:#faf8f4; }
.ely-home-rewards { background:#f2eada; }
.ely-home-rewards h3 { font-size:1.2rem; }
.ely-home-rewards .ely-home-rewards-note { margin-top:2rem; font-size:.8rem; }
@media (max-width:1000px) { .ely-hero-inner { gap:1.5rem; } .ely-home-split { grid-template-columns:1fr; gap:1rem; } }
@media (max-width:760px) {
.ely-hero-inner { grid-template-columns:1fr; padding-block:2.5rem 1.5rem; min-height:0; gap:1.5rem; }
.ely-hero h1 { font-size:clamp(2.2rem,7vw,3rem); }
.ely-hero-content > p { max-width:560px; }
.ely-hero-content .ely-hero-brand { margin-top:1rem; }
.ely-home-community-track > article { flex-basis:70%; }
.ely-home-recipe-photo { height:260px; }
.ely-steps { grid-template-columns:1fr; }
.ely-home-pillars .ely-step { padding:0 0 1.5rem; border-bottom:1px solid var(--ely-border); }
.ely-home-story-grid { grid-template-columns:1fr; gap:0; max-width:480px; }
.ely-home-story .ely-home-recipe-photo { height:280px; }
}
@media (max-width:420px) { .ely-home-community-track > article { flex-basis:86%; } .ely-home-review-contexts { grid-template-columns:1fr; } .ely-home-invite { padding:1.4rem; } }

/* One continuous hero rail, with a shared card frame and compact top controls. */
.ely-hero-gallery { position:relative; width:100%; max-width:600px; justify-self:center; padding-top:48px; }
.ely-home-community-track { position:relative; gap:20px; padding:8px 0 16px; }
.ely-home-community-track.is-looping { scroll-snap-type:none; scroll-behavior:auto; overflow-anchor:none; }
.ely-home-community-track > article { box-sizing:border-box; flex:0 0 76%; height:450px; border:1px solid var(--ely-border); border-radius:14px; box-shadow:0 5px 20px #07162906; overflow:hidden; }
.ely-home-community-track .ely-home-recipe { display:flex; flex-direction:column; }
.ely-home-community-track .ely-home-recipe-photo { height:310px; flex:0 0 310px; }
.ely-home-community-track .ely-home-recipe-body { flex:1; justify-content:space-between; gap:.5rem; }
.ely-home-community-track .ely-home-recipe h3 { font-size:1.3rem; }
.ely-home-community-track .ely-home-invite { background:linear-gradient(145deg,#fffdf8,#f3eadb); padding:2rem; }
.ely-home-community-track .ely-home-invite h3 { max-width:300px; font-size:clamp(1.6rem,2.4vw,2.2rem); }
.ely-home-community-track .ely-home-invite ul { margin:1.1rem 0; }
.ely-home-community-controls { position:absolute; top:0; right:0; gap:2px; }
.ely-home-community-controls button,.ely-home-community-controls button[data-autoplay] { display:grid; place-items:center; width:40px; min-width:40px; height:40px; padding:10px; border:0; border-radius:4px; background:transparent; color:#80602b; }
.ely-home-community-controls button:hover { background:#e9decb70; }
.ely-home-community-controls button[hidden] { display:none; }
.ely-home-community-controls svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:1000px) and (min-width:761px) { .ely-home-community-track > article { flex-basis:86%; } .ely-home-community-track .ely-home-invite { padding:1.4rem; } }
@media (max-width:760px) { .ely-hero-gallery { padding-top:42px; } .ely-home-community-track > article { flex-basis:86%; height:420px; } .ely-home-community-track .ely-home-recipe-photo { height:280px; flex-basis:280px; } .ely-home-community-track .ely-home-invite { padding:1.5rem; } }

/* Full-width editorial presentation. Each original slide stands alone without JS. */
.ely-presentation { position:relative; background:#faf7f0; color:var(--ely-navy,#071629); }
.ely-presentation-viewport { overflow:hidden; touch-action:pan-y pinch-zoom; outline-offset:-3px; }
.ely-presentation.is-ready .ely-presentation-track { display:flex; align-items:stretch; will-change:transform; }
.ely-presentation-track.is-moving { transition:transform var(--ely-duration-presentation,420ms) var(--ely-ease-presentation,cubic-bezier(.22,.61,.36,1)); }
/* Reserve the tallest story before enhancement, preserving the no-JS reading flow. */
@media (scripting: enabled) {
 .ely-presentation:not(.is-ready) .ely-presentation-track { display:grid; }
 .ely-presentation:not(.is-ready) .ely-presentation-slide { grid-area:1 / 1; visibility:hidden; align-items:stretch; }
 .ely-presentation:not(.is-ready) .ely-presentation-slide:first-child { visibility:visible; }
 .ely-presentation:not(.is-ready) .ely-presentation-inner { align-content:center; }
}
.ely-presentation-slide { flex:0 0 100%; min-width:0; min-height:86vh; min-height:86svh; box-sizing:border-box; display:flex; align-items:center; background:#faf7f0; }
.ely-presentation-inner { padding-block:64px 92px; }
.ely-presentation h1,.ely-presentation .ely-slide-title { font:400 clamp(2.25rem,3.45vw,3.5rem)/1.12 var(--ely-heading-font); letter-spacing:-.035em; margin:1.1rem 0 1.6rem; }
.ely-presentation h1 span,.ely-presentation .ely-slide-title span { color:#916b28; }
.ely-presentation h2 { font:400 clamp(2rem,3.2vw,3.25rem)/1.13 var(--ely-heading-font); letter-spacing:-.025em; margin:.8rem 0 1.2rem; max-width:800px; }
.ely-presentation p { color:#535d66; line-height:1.75; }
.ely-presentation header > p { max-width:660px; }
.ely-presentation-declaration { width:45%; }
.ely-presentation-declaration > p { max-width:490px; }
.ely-presentation .ely-buttons { margin-top:1.8rem; gap:.75rem; }
.ely-presentation-micro { display:flex; flex-wrap:wrap; list-style:none; padding:0; gap:.5rem 1.15rem; margin:1.5rem 0; font-size:.75rem; color:#62646a; }
.ely-presentation-micro li + li::before { content:'·'; margin-right:.8rem; color:#916b28; }
.ely-presentation .ely-presentation-brand { font-size:.75rem; margin-top:2rem; }
.ely-presentation-recipes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:1.8rem 0 1.3rem; max-width:1050px; }
.ely-presentation-recipes .ely-home-recipe { box-shadow:none; }
.ely-presentation-recipes .ely-home-recipe-photo { height:clamp(170px,26vh,270px); background:#f0ebe3; }
.ely-presentation-recipes .ely-home-recipe-photo img { object-fit:contain; }
.ely-presentation-recipes .ely-home-recipe-body { padding:1rem 1.2rem; gap:.5rem; }
.ely-presentation-recipes h3 { font-size:1.2rem; }
.ely-presentation-category { color:#80602b; font-size:.7rem; }
.ely-presentation-split { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:5rem; }
.ely-presentation-split header > .ely-button { margin-top:1rem; }
.ely-presentation-trust { background:#f0eee7; }
.ely-presentation-review-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.ely-presentation-review-grid article { border-top:1px solid #b89b67; padding-top:1rem; }
.ely-presentation-review-grid h3 { font:400 1.5rem/1.2 var(--ely-heading-font); }
.ely-presentation-review-grid ul { padding:0; margin:1.4rem 0; list-style:none; font-size:.85rem; color:#535d66; }
.ely-presentation-review-grid li { padding:.65rem 0; border-bottom:1px solid #10263e12; }
.ely-presentation-review-grid > p { grid-column:1/-1; font-size:.7rem; margin:0; }
.ely-presentation-visibility { background:#fffdf9; }
.ely-presentation-connection { max-width:510px; width:100%; margin:auto; }
.ely-presentation-work { display:grid; grid-template-columns:120px 1fr; gap:1.4rem; align-items:center; }
.ely-presentation-work img { width:120px; height:160px; object-fit:contain; border-radius:8px; background:#f3eee6; }
.ely-presentation-work h3,.ely-presentation-profile h3 { font:400 1.5rem/1.25 var(--ely-heading-font); margin:.5rem 0 .8rem; }
.ely-presentation-connection a { color:inherit; text-decoration:none; }
.ely-presentation-connection a:hover { text-decoration:underline; }
.ely-presentation-connector { display:block; color:#9b773e; margin:.5rem 0 .5rem 3rem; }
.ely-presentation-profile,.ely-presentation-reputation { border-left:1px solid #c5af87; padding:.8rem 1.5rem; margin-left:3.2rem; }
.ely-presentation-profile p,.ely-presentation-reputation p { margin:.3rem 0; font-size:.85rem; }
.ely-presentation-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3rem; list-style:none; padding:0; margin:2.5rem 0; }
.ely-presentation-columns > * { border-top:1px solid #c5af87; padding-top:1.3rem; }
.ely-presentation-columns > li > span { font:400 3.5rem/1 var(--ely-heading-font); color:#997332; }
.ely-presentation-columns h3 { font:400 1.6rem/1.2 var(--ely-heading-font); margin:1.2rem 0 .75rem; }
.ely-presentation-columns p { font-size:.95rem; }
.ely-presentation-benefits { background:#f2ebdf; }
.ely-presentation .ely-presentation-note { font-size:.75rem; max-width:620px; }
.ely-presentation-bottles img { width:100%; height:auto; max-height:480px; object-fit:contain; }
.ely-presentation-controls { position:absolute; right:max(24px,calc((100vw - 1200px)/2)); bottom:22px; display:flex; align-items:center; gap:5px; z-index:2; }
.ely-presentation-controls[hidden],.ely-presentation-controls button[hidden] { display:none; }
.ely-presentation-controls > span { font-size:.7rem; letter-spacing:.14em; color:#75664c; margin-right:14px; font-variant-numeric:tabular-nums; }
.ely-presentation-controls button { display:grid; place-items:center; flex-shrink:0; box-sizing:border-box; width:40px; min-width:40px; height:40px; padding:10px; border:0; border-radius:4px; color:#80602b; background:transparent; cursor:pointer; }
.ely-presentation-controls button:hover { background:#e9decb80; }
.ely-presentation-controls svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:1100px) { .ely-presentation-declaration { width:55%; } .ely-presentation-split { gap:2.5rem; } }
@media (max-width:760px) {
.ely-presentation-inner { padding-block:38px 86px; }
.ely-presentation-declaration { width:100%; max-width:540px; }
.ely-presentation h1,.ely-presentation .ely-slide-title { font-size:clamp(2.1rem,6.2vw,2.8rem); }
.ely-presentation h2 { font-size:clamp(1.85rem,6vw,2.5rem); }
.ely-presentation p { font-size:.9rem; line-height:1.6; }
.ely-presentation-split { grid-template-columns:1fr; gap:1.8rem; }
.ely-presentation-recipes { grid-template-columns:1fr; gap:10px; margin:1.3rem 0; }
.ely-presentation-recipes .ely-home-recipe { display:grid; grid-template-columns:100px minmax(0,1fr); }
.ely-presentation-recipes .ely-home-recipe-photo { height:100%; min-height:120px; }
.ely-presentation-recipes .ely-home-recipe-body { padding:.65rem .85rem; gap:.35rem; }
.ely-presentation-recipes h3 { font-size:1rem; }
.ely-presentation-recipes .ely-home-recipe-author { font-size:.75rem; }
.ely-presentation-recipes .ely-home-author-avatar { width:28px; height:28px; }
.ely-presentation-category { font-size:.65rem; }
.ely-presentation-review-grid { gap:1rem; }
.ely-presentation-review-grid h3 { font-size:1.2rem; }
.ely-presentation-review-grid li { font-size:.75rem; padding:.5rem 0; }
.ely-presentation-columns { grid-template-columns:1fr; gap:1.1rem; margin:1.5rem 0; }
.ely-presentation-columns > li { display:grid; grid-template-columns:45px 1fr; gap:0 1rem; }
.ely-presentation-columns > li > span { font-size:2rem; grid-row:1/3; }
.ely-presentation-columns h3 { font-size:1.25rem; margin:0 0 .5rem; }
.ely-presentation-columns p { margin:0; }
.ely-presentation-columns > * { padding-top:1rem; }
.ely-presentation-bottles img { max-height:300px; }
.ely-presentation-controls { right:16px; bottom:16px; }
.ely-presentation-work { grid-template-columns:90px 1fr; gap:1rem; }
.ely-presentation-work img { width:90px; height:120px; }
.ely-presentation-profile,.ely-presentation-reputation { margin-left:1.5rem; }
}
@media (prefers-reduced-motion:reduce) { .ely-presentation-track.is-moving { transition:none; } }
.ely-presentation-bottles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.ely-presentation-bottles a { color:inherit; text-decoration:none; text-align:center; }
.ely-presentation-bottles a:hover span { text-decoration:underline; }
.ely-presentation-bottles img { aspect-ratio:1; width:100%; height:auto; max-height:210px; object-fit:contain; }
.ely-presentation-bottles span { display:block; font:400 .85rem/1.4 var(--ely-heading-font); margin-top:.5rem; }
@media (max-width:760px) { .ely-presentation-bottles { gap:1rem .65rem; } .ely-presentation-bottles span { font-size:.75rem; } }

/* Short decision path after the editorial hero. */
.ely-home-next { background:#f0e9dd; }
.ely-home-next-inner { display:grid; grid-template-columns:1.3fr 1fr; gap:3rem; align-items:center; }
.ely-home-next h2 { font:400 clamp(1.8rem,3vw,2.6rem)/1.15 var(--ely-heading-font); margin:.75rem 0; }
.ely-home-next p { color:var(--ely-muted); max-width:520px; margin:0; }
.ely-home-next-actions { display:flex; flex-direction:column; align-items:flex-start; gap:1.2rem; justify-self:end; }
.ely-home-next-actions .ely-text-link { font-size:.85rem; }
.ely-home-questions-inner { display:grid; grid-template-columns:.85fr 1.15fr; gap:2.5rem; }
.ely-home-faq details { border-bottom:1px solid var(--ely-border); padding:.9rem 0; scroll-margin-top:120px; }
.ely-home-faq details:first-child { border-top:1px solid var(--ely-border); }
.ely-home-faq summary { cursor:pointer; font-weight:600; font-size:1rem; line-height:1.5; padding-right:.75rem; }
.ely-home-faq p { color:var(--ely-muted); font-size:.9rem; line-height:1.75; }
.ely-home-faq .ely-text-link { display:inline-flex; align-items:center; min-height:44px; font-size:.85rem; }
.ely-home-catalog { background:#faf8f4; }
.ely-presentation-recipes .ely-home-recipe-body { min-width:0; }
.ely-presentation-recipes .ely-home-recipe-author { margin-top:auto; }
.ely-presentation-recipes h3 { overflow-wrap:anywhere; }
@media (max-width:760px) {
.ely-home-next-inner,.ely-home-questions-inner { grid-template-columns:1fr; gap:1.5rem; }
.ely-home-next-actions { justify-self:start; }
.ely-home-next-actions .ely-button { width:100%; }
.ely-presentation-recipes .ely-home-recipe-photo { height:130px; min-height:0; align-self:center; }
}
/* Home platform hero: scoped editorial compositions. */
.ely-platform-hero { overflow:hidden; }
.ely-platform-hero .ely-presentation-slide { min-height:640px; }
.ely-platform-hero .ely-presentation-inner { width:100%; padding-block:40px 84px; }
.ely-platform-hero .ely-presentation-split { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:4rem; }
.ely-platform-event { background:#eee7d9; }
.ely-event-preview { padding:0; max-width:380px; width:100%; justify-self:end; }
.ely-event-paper { display:block; background:#f5ebda; text-align:center; text-decoration:none; box-shadow:0 8px 28px rgb(16 38 62 / 8%); }
.ely-event-paper img { display:block; width:100%; height:auto; }
.ely-event-paper:focus-visible { outline:3px solid #80602b; outline-offset:5px; }
.ely-event-documents { position:relative; display:flex; justify-content:center; flex-wrap:wrap; gap:1.5rem; background:#10263e; color:#f4e5c7; padding:1.25rem; margin:0; font-size:.9rem; transform:none; }
.ely-platform-hero .ely-presentation-recipes { max-width:none; }
.ely-platform-hero .ely-home-recipe { background:transparent; border:0; border-radius:0; }
.ely-platform-hero .ely-home-recipe-photo { height:280px; }
.ely-platform-hero .ely-home-recipe-body { padding:1rem 0; gap:.45rem; }
.ely-platform-hero .ely-home-recipe-author { font-size:.9rem; }
.ely-hero-rating { color:#80602b; }
.ely-hero-vacancy { display:flex; flex-direction:column; justify-content:center; padding:2rem; background:#f1ece2; min-height:260px; }
.ely-hero-vacancy > span { font-size:2.5rem; color:#a17a39; }
.ely-hero-vacancy small { color:#62646a; font-size:.9rem; }
.ely-platform-hero .ely-presentation-bottles { align-items:center; gap:.75rem; }
.ely-platform-hero .ely-presentation-bottles img { max-height:none; }
.ely-platform-hero .ely-presentation-bottles a:nth-child(2) { transform:none; }
.ely-hero-profile { padding:2rem; background:#fffdf8; border-top:2px solid #aa8952; }
.ely-hero-profile-name { margin:1.5rem 0 2rem; }
.ely-hero-profile-name .ely-home-recipe-author { font:400 1.6rem/1.3 var(--ely-heading-font); }
.ely-hero-profile-name .ely-home-author-avatar { width:56px; height:56px; }
.ely-hero-profile-recipe { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; align-items:center; }
.ely-hero-profile-recipe img { width:100%; height:230px; object-fit:contain; }
.ely-hero-profile-recipe h3 { font:400 1.5rem/1.3 var(--ely-heading-font); }
.ely-profile-neutral { display:block; font-size:4rem; color:#aa8952; }
.ely-hero-dots { display:flex; }
.ely-presentation-controls .ely-hero-dots button { width:28px; min-width:28px; height:40px; padding:10px; }
.ely-hero-dots button::after { content:''; width:6px; height:6px; border-radius:50%; background:#bbaa8e; }
.ely-hero-dots button[aria-current=true]::after { background:#10263e; transform:scale(1.4); }
@media(max-width:1000px) { .ely-platform-hero .ely-presentation-split { gap:2rem; } .ely-event-preview { padding:1rem; } }
@media(max-width:760px) {
.ely-platform-hero .ely-presentation-slide { min-height:0; }
.ely-platform-hero .ely-presentation-split { grid-template-columns:1fr; gap:2rem; }
.ely-platform-hero .ely-presentation-inner { padding-block:32px 80px; }
.ely-platform-hero .ely-presentation-inner > header > p { font-size:1rem; }
.ely-event-preview { max-width:440px; width:100%; margin:auto; padding:0 1rem; }
.ely-event-documents { font-size:.85rem; gap:1rem; padding:1rem .5rem; }
.ely-platform-hero .ely-home-recipe-photo { height:110px; }
.ely-platform-hero .ely-home-recipe-body { padding:.4rem .8rem; }
.ely-platform-hero .ely-home-recipe-author { font-size:.85rem; }
.ely-hero-vacancy { min-height:110px; padding:.8rem; }
.ely-hero-vacancy > span { display:none; }
.ely-hero-vacancy p { margin:0 0 .3rem; }
.ely-hero-profile { padding:1.5rem; }
.ely-hero-profile-recipe img { height:160px; }
.ely-hero-profile-recipe h3 { font-size:1.2rem; }
.ely-platform-hero .ely-presentation-controls { left:12px; right:12px; justify-content:flex-end; gap:0; }
.ely-platform-hero .ely-presentation-controls > span { margin-right:5px; }
}
.ely-platform-hero .ely-presentation-inner { width:min(1200px,calc(100% - 48px)); }
@media(max-width:760px) { .ely-platform-hero .ely-presentation-inner { width:calc(100% - 32px); } }
.ely-platform-hero .ely-presentation-recipes .ely-home-recipe-author { margin-top:0; }
@media(max-width:760px) { .ely-platform-hero .ely-home-recipe-body { justify-content:center; gap:.65rem; } }
/* Premium presentation: airy typography, full-size own media and lateral navigation. */
.ely-platform-hero .ely-presentation-slide { background:radial-gradient(ellipse at 85% 65%,#eadfc9 0,transparent 55%),#faf7f0; min-height:clamp(640px,82svh,860px); }
.ely-platform-hero .ely-presentation-inner { width:min(1200px,calc(100% - 160px)); padding-block:calc(var(--ely-home-header-height,90px) + 32px) 80px; }
.ely-platform-hero h1,.ely-platform-hero .ely-slide-title { font-size:clamp(2.5rem,3.8vw,3.9rem); line-height:1.07; }
.ely-platform-hero h2 { font-size:clamp(2.2rem,3.25vw,3.3rem); line-height:1.12; letter-spacing:-.035em; max-width:850px; }
.ely-platform-hero .ely-presentation-split { gap:clamp(2rem,5vw,5rem); }
.ely-platform-hero .ely-presentation-inner > header > p { max-width:440px; line-height:1.8; }
.ely-platform-hero .ely-event-preview { max-width:310px; padding:0; }
.ely-platform-hero .ely-event-paper { box-shadow:0 22px 55px #07162918; }
.ely-platform-hero .ely-presentation-recipes { gap:2rem; }
.ely-platform-hero .ely-home-recipe-photo { height:clamp(280px,35svh,390px); }
.ely-platform-hero .ely-presentation-bottles { gap:1rem; }
.ely-platform-hero .ely-presentation-bottles img { aspect-ratio:auto; height:clamp(280px,38vw,480px); object-fit:contain; }
.ely-platform-hero .ely-hero-profile { padding:2.5rem; box-shadow:0 20px 60px #07162908; }
.ely-platform-hero .ely-hero-profile-recipe img { height:300px; }
.ely-platform-hero .ely-presentation-controls { inset:0; justify-content:center; align-items:flex-end; padding-bottom:24px; pointer-events:none; }
.ely-platform-hero .ely-presentation-controls > * { pointer-events:auto; }
.ely-platform-hero .ely-presentation-controls button { width:44px; min-width:44px; height:44px; }
.ely-platform-hero .ely-hero-dots button { width:32px; min-width:32px; height:44px; }
.ely-platform-hero [data-direction] { position:absolute; top:50%; transform:translateY(-50%); border:1px solid #ad94684d; border-radius:50%; background:#faf7f0d9; }
.ely-platform-hero [data-direction="-1"] { left:20px; }
.ely-platform-hero [data-direction="1"] { right:20px; }
.ely-platform-hero [data-direction]:hover { background:#e9decb; border-color:#876019; }
.ely-platform-hero [data-direction] svg { width:22px; height:22px; }
.ely-home-paths { padding-block:22px; border-bottom:1px solid var(--ely-border); }
@keyframes ely-presentation-arrive { from { opacity:.55; transform:translateY(12px) scale(.965); } to { opacity:1; transform:translateY(0) scale(1); } }
.ely-platform-hero.is-ready .is-current .ely-presentation-inner { animation:ely-presentation-arrive 750ms cubic-bezier(.22,.61,.36,1) both; }
@media(max-width:1000px) and (min-width:761px) {
 .ely-platform-hero .ely-presentation-inner { width:calc(100% - 144px); }
 .ely-platform-hero .ely-presentation-bottles { gap:.25rem; }
}
@media(max-width:760px) {
 .ely-platform-hero .ely-presentation-slide { min-height:0; align-items:flex-start; }
 .ely-platform-hero .ely-presentation-inner { width:calc(100% - 112px); padding-block:calc(var(--ely-home-header-height,90px) + 32px) 92px; }
 .ely-platform-hero h1,.ely-platform-hero .ely-slide-title { font-size:clamp(2rem,7vw,3rem); }
 .ely-platform-hero h2 { font-size:clamp(1.85rem,6.5vw,2.7rem); }
 .ely-platform-hero [data-direction="-1"] { left:4px; }
 .ely-platform-hero [data-direction="1"] { right:4px; }
 .ely-platform-hero .ely-presentation-recipes { gap:18px; }
 .ely-platform-hero .ely-presentation-recipes .ely-home-recipe { display:flex; flex-direction:column; }
 .ely-platform-hero .ely-home-recipe-photo { width:100%; height:230px; }
 .ely-platform-hero .ely-home-recipe-body { padding:.8rem 0; }
 .ely-platform-hero .ely-presentation-bottles { grid-template-columns:1fr; gap:1.5rem; }
 .ely-platform-hero .ely-presentation-bottles img { height:300px; }
 .ely-platform-hero .ely-hero-profile { padding:1rem; }
 .ely-platform-hero .ely-hero-profile-recipe { grid-template-columns:1fr; gap:.5rem; }
 .ely-platform-hero .ely-hero-profile-recipe img { height:230px; }
 .ely-platform-hero .ely-event-documents { gap:.5rem; font-size:.8rem; }
 .ely-home-paths { gap:6px 20px; }
}
@media(prefers-reduced-motion:reduce) {
 .ely-platform-hero.is-ready .is-current .ely-presentation-inner { animation:none; }
}
@media(max-width:760px) {
 .ely-platform-hero .ely-presentation-recipes .ely-home-recipe { display:grid; grid-template-columns:90px minmax(0,1fr); gap:10px; }
 .ely-platform-hero .ely-home-recipe-photo { height:140px; }
 .ely-platform-hero .ely-home-recipe-body { padding:.5rem 0; }
 .ely-platform-hero .ely-presentation-bottles { grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; }
 .ely-platform-hero .ely-presentation-bottles img { height:220px; }
}
.ely-platform-hero .ely-presentation-bottles img { height:auto; max-height:480px; }
@media(max-width:760px) { .ely-platform-hero .ely-presentation-bottles img { height:auto; max-height:260px; } }
/* Share one content-safe canvas across all stories at each screen width. */
.ely-platform-hero.is-ready .ely-presentation-track { align-items:stretch; }
.ely-platform-hero.is-ready .ely-presentation-slide { align-items:stretch; }
.ely-platform-hero.is-ready .ely-presentation-inner { align-content:center; }
@media(max-width:760px) {
 .ely-platform-hero.is-ready .ely-presentation-inner { align-content:stretch; grid-template-rows:auto minmax(0,1fr); }
 .ely-platform-hero.is-ready .ely-presentation-inner > header { align-self:start; }
}
.ely-platform-hero .ely-presentation-viewport { transition:none; }
.ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:2.5rem 3rem; }
.ely-platform-hero .ely-hero-profile-recipe { grid-template-columns:1.25fr .75fr; }
.ely-platform-hero .ely-hero-profile-recipe img { height:350px; }
@media(max-width:760px) {
 .ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,1fr); gap:2rem; }
     .ely-platform-hero .ely-hero-profile-recipe { grid-template-columns:1fr; }
 .ely-platform-hero .ely-hero-profile-recipe img { height:290px; }
}
@media(prefers-reduced-motion:reduce) { .ely-platform-hero .ely-presentation-viewport { transition:none; } }

/* Keep playback available to keyboard users without a permanent visual control. */
.ely-platform-hero .ely-presentation-controls > [data-slide-count] { position:absolute; margin:0; }
.ely-platform-hero .ely-autoplay-accessible:not(:focus-visible) { position:absolute; width:1px; min-width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); }
.ely-platform-hero .ely-autoplay-accessible:focus-visible { position:absolute; right:24px; bottom:24px; background:var(--ely-cream); }

/* Home shop takes precedence and scrolls through native product cards. */
.ely-home .ely-shop-rail { display:flex; gap:24px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; padding:8px 4px; scrollbar-width:none; }
.ely-home .ely-shop-rail::-webkit-scrollbar { display:none; }
.ely-shop-carousel { position:relative; padding-inline:64px; }
.ely-home .ely-shop-rail > .ely-product { flex:0 0 calc((100% - 96px)/5); scroll-snap-align:start; }
.ely-home .ely-shop-rail .ely-product-image { overflow:hidden; }
.ely-home .ely-shop-rail .ely-product-image img { transition:transform 500ms cubic-bezier(.22,.61,.36,1); }
.ely-home .ely-shop-rail .ely-product:hover .ely-product-image img,
.ely-home .ely-shop-rail .ely-product:focus-within .ely-product-image img { transform:translateY(-6px) scale(1.035); }
.ely-shop-controls { position:absolute; inset:0; display:flex; align-items:center; justify-content:space-between; pointer-events:none; }
.ely-shop-controls[hidden] { display:none; }
.ely-shop-controls button { pointer-events:auto; }
.ely-shop-controls button { display:grid; place-items:center; width:54px; height:54px; padding:0; border:1px solid #e5d9c5; border-radius:50%; background:#faf7f0; color:#8a621e; box-shadow:none; cursor:pointer; transition:background-color 180ms ease, border-color 180ms ease; }
.ely-shop-controls button:not(:disabled):hover { background:#f2ecdf; border-color:#cbb68e; }
.ely-shop-controls button:focus-visible { outline:2px solid #8a621e; outline-offset:3px; }
.ely-shop-controls button svg { display:block; }
.ely-shop-controls button:disabled { opacity:.35; cursor:default; }
@keyframes ely-home-section-arrive { from { opacity:.45; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
.ely-home-arrive { animation:ely-home-section-arrive 600ms cubic-bezier(.22,.61,.36,1) both; }
.ely-home-faq details[open] > :not(summary) { animation:ely-home-section-arrive 400ms cubic-bezier(.22,.61,.36,1) both; }
@media(max-width:900px) { .ely-home .ely-shop-rail > .ely-product { flex-basis:calc((100% - 48px)/3); } }
@media(max-width:600px) {
 .ely-shop-carousel { padding-inline:48px; }
 .ely-platform-hero .ely-hero-dots button { width:44px; min-width:44px; }
 .ely-shop-controls button { width:44px; height:44px; }
 .ely-home .ely-shop-rail > .ely-product { flex-basis:calc((100% - 16px)/3); }
}
@media(prefers-reduced-motion:reduce) {
 .ely-home-arrive,.ely-home-faq details[open] > :not(summary) { animation:none; }
 .ely-home .ely-shop-rail .ely-product-image img { transition:none; transform:none !important; }
}
.ely-home .ely-shop-rail { scroll-padding-inline:4px; }
.ely-home .ely-shop-rail { contain:layout paint; }

/* Refined home proportions, reusing the existing content and product cards. */
.ely-home .ely-button { padding:.8rem 1.3rem; border-radius:var(--ely-radius-control); }
.ely-home .ely-section-heading { margin-bottom:2rem; }
.ely-home .ely-home-paths { padding-block:16px; }
.ely-home-catalog,.ely-home-questions { padding-block:clamp(2.5rem,5vw,4rem); }
.ely-home .ely-shop-rail > .ely-product { border:0; border-radius:0; background:transparent; box-shadow:none; }
.ely-home .ely-shop-rail .ely-product-image { aspect-ratio:1; padding:1rem; background:#f2ede4; border-radius:4px; }
.ely-home .ely-shop-rail .ely-product-image img { max-height:340px; }
.ely-home .ely-shop-rail .ely-product-body { padding:1rem .5rem .5rem; }
.ely-home .ely-shop-rail h3 { font-size:1.25rem; margin-bottom:.4rem; }
.ely-home .ely-shop-rail .ely-product-volume { margin-bottom:.35rem; }
.ely-home .ely-shop-rail .ely-product-price { margin-bottom:.75rem; }
.ely-home .ely-shop-rail .ely-text-link { margin-top:.25rem; }
.ely-home-faq summary { font-size:.95rem; }
.ely-home-faq p { margin-block:.65rem; }
.ely-home .ely-home-questions .ely-section-heading h2 { font-size:clamp(1.85rem,2.6vw,2.5rem); }
@media(max-width:760px) {
 .ely-platform-hero .ely-event-preview { max-width:360px; }
 .ely-home .ely-shop-rail .ely-product-image { aspect-ratio:1.05; padding:.75rem; }
 .ely-home .ely-shop-rail .ely-product-body { padding:.85rem .25rem .25rem; }
}

/* Editorial refinement: one identity, proportionate preview, visible playback. */
.ely-platform-hero .ely-presentation-slide { background:var(--ely-cream); min-height:640px; }
.ely-platform-hero .ely-presentation-inner { padding-block:calc(var(--ely-home-header-height,90px) + 24px) 88px; }
.ely-platform-hero h1 { font-size:var(--ely-title-xl); line-height:var(--ely-line-heading); letter-spacing:-.035em; }
.ely-platform-hero .ely-presentation-inner > header > p { font-size:var(--ely-text-lead); line-height:var(--ely-line-body); margin-block:24px; }
.ely-platform-hero .ely-event-preview { max-width:min(100%, calc((100svh - var(--ely-home-header-height,90px) - 112px) * .70724)); padding:0; justify-self:center; }
.ely-platform-hero .ely-event-paper { box-shadow:var(--ely-shadow-overlay); }
.ely-platform-hero .ely-hero-profile { border:1px solid var(--ely-border); border-radius:var(--ely-radius-panel); box-shadow:none; padding:32px; }
.ely-platform-hero .ely-presentation-controls .ely-autoplay-accessible { position:static; width:44px; min-width:44px; height:44px; padding:10px; overflow:visible; clip-path:none; background:var(--ely-surface); border:1px solid var(--ely-control-border); border-radius:50%; }
.ely-platform-hero .ely-hero-dots button { width:44px; min-width:44px; }
.ely-platform-hero.is-ready .is-current .ely-presentation-inner { animation:none; }
.ely-home .ely-home-catalog { border-top:1px solid var(--ely-border); }
@media(max-width:760px) {
 .ely-platform-hero .ely-presentation-slide { min-height:0; }
 .ely-platform-hero .ely-presentation-inner { width:calc(100% - 40px); padding-block:calc(var(--ely-home-header-height,90px) + 20px) 88px; }
 .ely-platform-hero .ely-presentation-split { gap:24px; }
 .ely-platform-hero .ely-event-preview { max-width:440px; }
 .ely-platform-hero h1 { font-size:clamp(2rem,8vw,2.6rem); }
 .ely-platform-hero .ely-presentation-inner > header > p { font-size:1rem; margin-block:16px 24px; }
 .ely-platform-hero [data-direction] { top:auto; bottom:20px; transform:none; }
 .ely-platform-hero .ely-presentation-controls { padding-bottom:20px; }
 .ely-platform-hero .ely-hero-profile { padding:20px; }
 .ely-shop-carousel { padding-inline:0; padding-bottom:56px; }
 .ely-shop-controls { top:auto; bottom:0; justify-content:flex-end; gap:8px; }
}

@media(max-width:760px) {
 .ely-platform-hero.is-ready .ely-presentation-inner { grid-template-rows:auto auto; align-content:center; }
 .ely-platform-hero .ely-hero-profile-recipe img { height:180px; }
 .ely-platform-hero .ely-hero-profile-name { margin:16px 0; }
 .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo { height:120px; }
}

/* ELY-046: editorial proportions within the existing homepage components. */
.ely-home .ely-platform-hero .ely-presentation-slide { min-height:680px; background:var(--ely-cream); }
.ely-home .ely-platform-hero .ely-presentation-inner { padding-block:calc(var(--ely-home-header-height,90px) + 32px) 88px; }
.ely-home .ely-platform-hero .ely-presentation-split { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:clamp(32px,6vw,88px); }
.ely-home .ely-platform-hero h1,.ely-home .ely-platform-hero .ely-slide-title { font-size:clamp(2.5rem,4.1vw,3.7rem); line-height:1.1; margin-block:20px 24px; }
.ely-home .ely-platform-hero h1 span,.ely-home .ely-platform-hero .ely-slide-title span { color:var(--ely-accent-text); }
.ely-home .ely-platform-hero header > p { max-width:440px; font-weight:400; }
.ely-home .ely-platform-hero header > .ely-button { margin-top:8px; min-height:48px; }
.ely-home .ely-platform-hero .ely-event-preview { max-width:340px; width:100%; justify-self:center; }
.ely-home .ely-event-paper { border:1px solid var(--ely-border); box-shadow:var(--ely-shadow-overlay); }
.ely-home .ely-platform-hero .ely-presentation-recipes { gap:24px; margin-block:24px; }
.ely-home .ely-platform-hero .ely-home-recipe-photo { height:240px; }
.ely-home .ely-platform-hero .ely-home-recipe-body { padding:16px; }
.ely-home .ely-platform-hero .ely-presentation-bottles img { width:100%; height:310px; max-height:none; object-fit:contain; }
.ely-home .ely-platform-hero .ely-hero-profile-recipe img { height:240px; }
.ely-home .ely-platform-hero .ely-hero-profile { background:var(--ely-surface-soft); }
.ely-home .ely-platform-hero .ely-presentation-controls { padding-bottom:22px; }
.ely-home .ely-platform-hero [data-direction] { width:44px; height:44px; border-color:var(--ely-border); }
.ely-home .ely-hero-dots button::after { transition:transform var(--ely-duration),background-color var(--ely-duration); }
.ely-home .ely-hero-dots button[aria-current=true]::after { background:var(--ely-navy); transform:scale(1.5); }
.ely-home .ely-home-catalog { background:var(--ely-surface-soft); padding-block:64px; }
.ely-home .ely-home-catalog .ely-section-heading { margin-bottom:32px; }
.ely-home .ely-home-catalog .ely-section-heading p { font-weight:400; }
.ely-home .ely-shop-rail .ely-product-image { aspect-ratio:4 / 5; padding:12px; border-radius:var(--ely-radius-card); background:var(--ely-cream); }
.ely-home .ely-shop-rail .ely-product-image img { width:100%; height:100%; max-height:360px; object-fit:contain; }
.ely-home .ely-shop-rail .ely-product-body { padding:20px 4px 8px; text-align:left; }
.ely-home .ely-shop-rail h3 { min-height:2.5em; font-size:1.25rem; line-height:1.25; }
.ely-home .ely-shop-rail .ely-product-volume { font-size:var(--ely-text-sm); }
.ely-home .ely-shop-rail .ely-product-price { font-size:1.125rem; }
.ely-home .ely-shop-rail .ely-product-price del { font-size:var(--ely-text-sm); }
.ely-home .ely-shop-rail .ely-product:hover .ely-product-image img,
.ely-home .ely-shop-rail .ely-product:focus-within .ely-product-image img { transform:none; }
.ely-home .ely-home-questions { padding-block:72px; }
.ely-home .ely-home-questions-inner { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(32px,6vw,88px); }
.ely-home .ely-home-questions .ely-section-heading { max-width:360px; }
.ely-home .ely-home-questions .ely-section-heading p { font-weight:400; }
.ely-home .ely-home-faq { min-width:0; }
.ely-home .ely-home-faq details { padding:0; }
.ely-home .ely-home-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:72px; padding:20px 0; list-style:none; font-size:1rem; }
.ely-home .ely-home-faq summary::-webkit-details-marker { display:none; }
.ely-home .ely-home-faq summary::after { content:'+'; flex:0 0 24px; text-align:center; font-size:1.5rem; font-weight:400; color:var(--ely-accent-text); }
.ely-home .ely-home-faq details[open] summary::after { content:'−'; }
.ely-home .ely-home-faq details[open] summary { color:var(--ely-accent-text); }
.ely-home .ely-home-faq details[open] { padding-bottom:20px; }
.ely-home .ely-home-faq p { font-size:var(--ely-text-base); max-width:60ch; margin-block:0 16px; }
/* Shared header/footer markup receives only home-scoped presentation rules. */
.ely-home-overlay .ely-header-inner { gap:24px; }
.ely-home-overlay .ely-nav-list a { text-underline-offset:8px; text-decoration-thickness:1px; }
.ely-home-overlay .ely-nav-list a[aria-current=page] { text-decoration-line:underline; }
.ely-home-overlay .ely-header-actions :is(a,button):focus-visible { outline:2px solid var(--ely-focus); outline-offset:3px; }
.ely-home-overlay .ely-footer { padding-block:64px 24px; }
.ely-home-overlay .ely-footer-grid { gap:48px; }
.ely-home-overlay .ely-footer h2 { color:var(--ely-gold-light); letter-spacing:.06em; }
.ely-home-overlay .ely-footer-grid a:not(.ely-footer-logo) { min-height:44px; display:flex; align-items:center; }
.ely-home-overlay .ely-footer-grid p { line-height:1.75; }
@media (min-width:761px) and (max-width:1100px) {
 .ely-home .ely-platform-hero .ely-presentation-split { gap:24px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .ely-home .ely-platform-hero h1,.ely-home .ely-platform-hero .ely-slide-title { font-size:clamp(2.2rem,4vw,2.8rem); }
 .ely-home .ely-platform-hero .ely-presentation-bottles img { height:240px; }
}
@media (max-width:760px) {
 .ely-home .ely-platform-hero .ely-presentation-slide { min-height:0; }
 .ely-home .ely-platform-hero .ely-presentation-inner { width:calc(100% - 40px); padding-block:calc(var(--ely-home-header-height,90px) + 24px) 84px; align-content:start; }
 .ely-home .ely-platform-hero .ely-presentation-split { grid-template-columns:minmax(0,1fr); gap:28px; }
 .ely-home .ely-platform-hero h1,.ely-home .ely-platform-hero .ely-slide-title { font-size:clamp(2rem,7.8vw,2.8rem); margin-block:16px; }
 .ely-home .ely-platform-hero header > p { margin-block:16px; }
 .ely-home .ely-platform-hero .ely-event-preview { max-width:220px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes { gap:12px; margin-block:20px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe { grid-template-columns:84px minmax(0,1fr); }
 .ely-home .ely-platform-hero .ely-home-recipe-photo { height:112px; }
 .ely-home .ely-platform-hero .ely-home-recipe-body { padding:12px 8px; gap:8px; }
 .ely-home .ely-platform-hero .ely-presentation-bottles img { height:200px; }
 .ely-home .ely-platform-hero .ely-hero-profile-recipe img { height:180px; }
 .ely-home .ely-platform-hero .ely-hero-profile-recipe { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
 .ely-home .ely-platform-hero .ely-hero-profile { padding:16px; }
 .ely-home .ely-platform-hero .ely-hero-profile-name .ely-home-recipe-author { font-size:1.25rem; }
 .ely-home .ely-platform-hero .ely-presentation-controls { padding-bottom:20px; }
 .ely-home .ely-home-catalog,.ely-home .ely-home-questions { padding-block:40px; }
 .ely-home .ely-shop-rail .ely-product-image { aspect-ratio:1; }
 .ely-home .ely-shop-rail h3 { min-height:0; }
 .ely-home .ely-home-questions-inner { grid-template-columns:minmax(0,1fr); gap:12px; }
 .ely-home .ely-home-faq summary { min-height:68px; }
 .ely-home-overlay .ely-footer { padding-top:40px; }
 .ely-home-overlay .ely-footer-grid { gap:28px; }
}
@media (prefers-reduced-motion:reduce) {
 .ely-home .ely-hero-dots button::after { transition:none; }
}


/* ELY-047: event photograph, with the original copy in its open left area. */
.ely-home .ely-platform-event { position:relative; isolation:isolate; }
.ely-home .ely-platform-event .ely-event-scene { position:absolute; inset:0; z-index:0; display:block; background:#ecd1af; }
/* ELY-058: fill the banner while keeping the menu anchored to the right. */
.ely-home .ely-event-scene img { display:block; width:100%; height:100%; object-fit:cover; object-position:right center; }
.ely-home .ely-event-scene:focus-visible { outline:3px solid var(--ely-focus); outline-offset:-6px; }
.ely-home .ely-platform-event .ely-presentation-inner { position:relative; z-index:1; pointer-events:none; }
.ely-home .ely-platform-event header { max-width:480px; }
.ely-home .ely-platform-event header a { pointer-events:auto; }
@media (min-width:761px) and (max-width:1100px) {
 .ely-home .ely-platform-event header { max-width:390px; }
}
@media (max-width:760px) {
 .ely-home .ely-platform-event { flex-direction:column; justify-content:flex-start; background:#ecd1af; }
 .ely-home .ely-platform-event .ely-event-scene { position:relative; inset:auto; order:2; width:100%; margin-bottom:88px; }
 .ely-home .ely-platform-event .ely-event-scene img { height:auto; aspect-ratio:1672 / 941; }
 .ely-home .ely-platform-event .ely-presentation-inner { padding-bottom:24px; }
}

/* ELY-050: product showcase in the community presentation banner. */
.ely-home .ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:clamp(28px,4vw,56px); }
.ely-home .ely-products-composition .ely-presentation-bottles { box-sizing:border-box; min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:clamp(8px,1vw,16px); padding:clamp(16px,2vw,28px); background:var(--ely-surface); border:1px solid var(--ely-border); border-radius:24px; }
.ely-home .ely-products-composition .ely-presentation-bottles > .ely-banner-product-card > a { min-width:0; display:grid; grid-template-rows:minmax(0,1fr) auto; align-items:center; padding:12px 8px 16px; background:var(--ely-surface-soft); border-radius:16px; }
.ely-home .ely-platform-hero .ely-products-composition .ely-presentation-bottles img { display:block; width:100%; height:clamp(220px,22vw,320px); max-height:none; object-fit:contain; object-position:center center; }
.ely-home .ely-products-composition .ely-presentation-bottles h3 { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:2.8em; margin:16px 0 0; font:400 clamp(.75rem,1vw,.9375rem)/1.4 var(--ely-heading-font); text-align:center; color:var(--ely-navy); }
.ely-home .ely-products-composition .ely-presentation-bottles > .ely-banner-product-card > a:focus-visible { outline:2px solid var(--ely-focus); outline-offset:4px; }
@media (max-width:1000px) {
 .ely-home .ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,1fr); gap:28px; }
 .ely-home .ely-products-composition .ely-presentation-bottles { width:100%; max-width:640px; justify-self:center; }
}
@media (max-width:480px) {
 .ely-home .ely-products-composition .ely-presentation-bottles { padding:12px; gap:6px; border-radius:20px; }
 .ely-home .ely-products-composition .ely-presentation-bottles > .ely-banner-product-card > a { padding:8px 4px 12px; border-radius:12px; }
 .ely-home .ely-platform-hero .ely-products-composition .ely-presentation-bottles img { height:160px; }
 .ely-home .ely-products-composition .ely-presentation-bottles h3 { margin-top:12px; font-size:.75rem; }
}

/* ELY-051: real, linked product cards in the randomized banner selection. */
.ely-home .ely-products-composition .ely-banner-product-card { display:grid; min-width:0; margin:0; }
.ely-home .ely-products-composition .ely-presentation-bottles { background:var(--ely-surface-soft); border-color:var(--ely-control-border); }
.ely-home .ely-products-composition .ely-presentation-bottles > .ely-banner-product-card > a { background:var(--ely-cream); }
.ely-home .ely-products-composition .ely-banner-product-card a:hover h3 { text-decoration:underline; text-underline-offset:3px; }

/* ELY-055: a public creator portrait with an editorial recipe composition. */
.ely-home .ely-platform-hero .ely-community-showcase .ely-presentation-inner { grid-template-columns:minmax(0,1fr); gap:24px; }
.ely-home .ely-community-showcase .ely-presentation-inner > header { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:32px; align-items:center; }
.ely-home .ely-community-showcase header > .ely-section-label { grid-column:1; }
.ely-home .ely-community-showcase header h2 { font-size:clamp(1.6rem,2.5vw,2.25rem); margin:8px 0; }
.ely-home .ely-community-showcase header p { max-width:680px; margin:0; font-size:1rem; }
.ely-home .ely-community-showcase header .ely-button { grid-column:2; grid-row:1 / 4; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); position:relative; isolation:isolate; padding:0; overflow:hidden; border:1px solid var(--ely-gold-light); border-radius:24px; background:radial-gradient(ellipse at 95% 5%,#d8c39a55,transparent 50%),var(--ely-surface-soft); box-shadow:0 12px 32px #80602b16; }
.ely-profile-details { min-width:0; padding:clamp(24px,3.5vw,48px); }
.ely-profile-details > .ely-section-label { display:flex; align-items:center; gap:24px; }
.ely-profile-details > .ely-section-label::after { content:""; height:1px; width:64px; background:var(--ely-gold-light); }
.ely-home .ely-community-showcase .ely-hero-profile-name { margin:32px 0 12px; }
.ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { font:400 clamp(1.5rem,2.7vw,2.6rem)/1.15 var(--ely-heading-font); color:var(--ely-navy); gap:24px; overflow-wrap:anywhere; }
.ely-home .ely-community-showcase .ely-home-author-avatar { flex-shrink:0; width:clamp(64px,7vw,96px); height:clamp(64px,7vw,96px); border:1px solid var(--ely-gold); background:var(--ely-cream); color:var(--ely-gold); box-shadow:inset 0 0 0 5px var(--ely-surface-soft),0 8px 20px #80602b12; }
.ely-home .ely-community-showcase .ely-home-author-avatar img { width:100%; height:100%; object-fit:cover; }
.ely-home .ely-community-showcase .ely-home-recipe-author small { margin-top:8px; font:400 1rem/1.4 var(--ely-heading-font); color:var(--ely-gold); }
.ely-home .ely-community-showcase .ely-profile-headline,
.ely-home .ely-community-showcase .ely-profile-location { margin:6px 0; color:var(--ely-muted); font-size:1rem; }
.ely-profile-stats { display:flex; flex-wrap:wrap; gap:16px; padding-block:24px; margin:24px 0 0; border-block:1px solid var(--ely-border); }
.ely-profile-stats > div { display:flex; flex:1 1 130px; flex-direction:column-reverse; gap:6px; padding:16px 20px; border-radius:20px; background:#e9dfce55; }
.ely-profile-stats dt { font-size:.7rem; text-transform:uppercase; letter-spacing:.14em; color:var(--ely-muted); }
.ely-profile-stats dd { margin:0; color:var(--ely-navy); font:400 clamp(1.6rem,2.5vw,2rem)/1.1 var(--ely-heading-font); }
.ely-home .ely-community-showcase .ely-profile-motto { margin:24px 0 0; color:var(--ely-muted); font:italic 400 clamp(1.2rem,1.8vw,1.6rem)/1.4 var(--ely-heading-font); }
.ely-profile-motto::after { content:""; display:block; width:48px; height:1px; background:var(--ely-gold); margin-top:20px; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { position:relative; min-width:0; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:0; align-items:center; padding:32px 28px 0 0; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe::before { content:""; position:absolute; z-index:-1; inset:15% 5% -35% 0; border:1px solid var(--ely-gold-light); border-radius:50% 50% 0 0; background:linear-gradient(130deg,#deccaa66,var(--ely-surface-soft) 60%); }
.ely-profile-featured-photo { display:flex; align-items:end; align-self:stretch; min-width:0; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { width:115%; max-width:115%; height:440px; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 16px 12px #80602b1c); }
.ely-home .ely-community-showcase .ely-hero-profile-recipe > div { padding:20px 0 24px 8px; z-index:1; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { font:400 clamp(1.6rem,2.5vw,2.4rem)/1.25 var(--ely-heading-font); overflow-wrap:anywhere; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe h3 a { color:var(--ely-navy); text-decoration:none; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe h3 a:hover { text-decoration:underline; text-underline-offset:5px; }
.ely-community-showcase a:focus-visible { outline:2px solid var(--ely-focus); outline-offset:4px; }
@media (max-width:760px) {
 .ely-home .ely-community-showcase .ely-presentation-inner > header { display:block; }
 .ely-home .ely-community-showcase header .ely-button { margin-top:16px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { grid-template-columns:minmax(0,1fr); border-radius:20px; }
 .ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { font-size:1.7rem; gap:16px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { padding:0 24px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { height:290px; }
 .ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { font-size:1.5rem; }
 .ely-profile-stats { margin-top:20px; gap:10px; padding-block:20px; }
 .ely-profile-stats > div { flex-basis:100px; padding:14px; }
}

/* ELY-057: reference proportions, flexible public profiles and uncropped recipe photos. */
.ely-home .ely-community-showcase .ely-presentation-inner > header { order:2; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { grid-template-columns:minmax(0, .96fr) minmax(0, 1.24fr); min-height:560px; border-color:#e8dece; background:radial-gradient(ellipse at 100% 0,#d8c39a66,transparent 45%),#faf7f0; box-shadow:0 12px 28px #80602b20; }
.ely-home .ely-community-showcase .ely-profile-details { padding:48px 24px 42px 48px; align-self:center; }
.ely-home .ely-community-showcase .ely-profile-details > .ely-section-label { white-space:normal; font-size:.75rem; letter-spacing:.2em; }
.ely-home .ely-community-showcase .ely-hero-profile-name { margin:36px 0 8px; }
.ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { gap:22px; font-size:clamp(1.6rem,3vw,2.5rem); align-items:center; }
.ely-home .ely-community-showcase .ely-home-recipe-author > span:last-child { min-width:0; }
.ely-home .ely-community-showcase .ely-home-author-avatar { width:104px; height:104px; font:400 3.5rem/1 var(--ely-heading-font); }
.ely-home .ely-community-showcase .ely-profile-headline,
.ely-home .ely-community-showcase .ely-profile-location { margin:4px 0 4px 126px; font:400 1.1rem/1.4 var(--ely-heading-font); overflow-wrap:anywhere; }
.ely-home .ely-community-showcase .ely-profile-stats { margin-top:26px; padding-block:24px; gap:14px; }
.ely-home .ely-community-showcase .ely-profile-stats > div { flex:0 1 180px; min-width:0; padding:16px 20px; }
.ely-home .ely-community-showcase .ely-profile-stats dt { line-height:1.5; }
.ely-home .ely-community-showcase .ely-profile-motto { font-size:1.35rem; line-height:1.3; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { isolation:isolate; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); padding:32px 24px 0 0; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe::before { inset:8% 6% -30% 2%; border-color:var(--ely-gold); background:linear-gradient(135deg,#dfcfb0aa,#faf7f0 65%); }
.ely-home .ely-community-showcase .ely-profile-featured-photo { position:relative; z-index:1; align-items:center; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { width:100%; max-width:100%; height:490px; object-fit:contain; object-position:center; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe > div { padding:20px 0 24px 14px; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe .ely-section-label { font-size:.625rem; letter-spacing:.18em; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe .ely-section-label::after { content:""; display:block; width:44px; height:1px; margin-top:14px; background:var(--ely-gold-light); }
.ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { margin:20px 0; font-size:clamp(1.65rem,2.6vw,2.4rem); }
@media (min-width:1001px) and (max-width:1150px) {
 .ely-home .ely-community-showcase .ely-profile-details { padding:36px 20px 36px 32px; }
 .ely-home .ely-community-showcase .ely-home-author-avatar { width:80px; height:80px; font-size:3rem; }
 .ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { font-size:1.5rem; gap:16px; }
 .ely-home .ely-community-showcase .ely-profile-headline,
 .ely-home .ely-community-showcase .ely-profile-location { margin-left:96px; }
}
@media (max-width:1000px) and (min-width:761px) {
 .ely-home .ely-community-showcase .ely-profile-details { padding:32px 20px 32px 28px; }
 .ely-home .ely-community-showcase .ely-home-author-avatar { width:76px; height:76px; }
 .ely-home .ely-community-showcase .ely-profile-headline,
 .ely-home .ely-community-showcase .ely-profile-location { margin-left:98px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { grid-template-columns:minmax(0,1fr); padding:30px 24px; align-content:center; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { height:300px; }
 .ely-home .ely-community-showcase .ely-hero-profile-recipe > div { padding:0 12px; }
}
@media (max-width:760px) {
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { grid-template-columns:minmax(0,1fr); min-height:0; }
 .ely-home .ely-community-showcase .ely-profile-details { padding:28px 24px; }
 .ely-home .ely-community-showcase .ely-hero-profile-name { margin-top:26px; }
 .ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { font-size:1.6rem; gap:16px; }
 .ely-home .ely-community-showcase .ely-home-author-avatar { width:72px; height:72px; font-size:2.5rem; }
 .ely-home .ely-community-showcase .ely-profile-headline,
 .ely-home .ely-community-showcase .ely-profile-location { margin-left:88px; font-size:1rem; }
 .ely-home .ely-community-showcase .ely-profile-stats > div { flex:1 1 100px; padding:14px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { padding:0 20px 20px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { height:280px; }
 .ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { font-size:1.4rem; }
 .ely-home .ely-community-showcase .ely-hero-profile-recipe > div { padding-left:10px; }
}

/* ELY-058: compact community panel with a bounded frame for any photo ratio. */
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { min-height:400px; }
.ely-home .ely-community-showcase .ely-profile-details { padding:28px 24px 28px 32px; }
.ely-home .ely-community-showcase .ely-hero-profile-name { margin:20px 0 8px; }
.ely-home .ely-community-showcase .ely-hero-profile-name .ely-home-recipe-author { gap:16px; font-size:clamp(1.4rem,2.4vw,2rem); }
.ely-home .ely-community-showcase .ely-home-author-avatar { width:76px; height:76px; flex-shrink:0; font-size:2.5rem; }
.ely-home .ely-community-showcase .ely-profile-headline,
.ely-home .ely-community-showcase .ely-profile-location { margin-left:92px; font-size:1rem; }
.ely-home .ely-community-showcase .ely-profile-stats { margin-top:18px; padding-block:16px; }
.ely-home .ely-community-showcase .ely-profile-stats > div { padding:10px 16px; }
.ely-home .ely-community-showcase .ely-profile-motto { font-size:1.1rem; }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { padding:24px 24px 24px 0; gap:12px; }
.ely-home .ely-community-showcase .ely-profile-featured-photo { box-sizing:border-box; align-self:center; justify-content:center; height:320px; padding:10px; overflow:hidden; border:1px solid var(--ely-gold-light); border-radius:16px; background:var(--ely-surface-soft); }
.ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe img { display:block; width:100%; max-width:100%; height:100%; min-width:0; object-fit:contain; filter:none; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe > div { min-width:0; padding-left:0; }
.ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { font-size:clamp(1.4rem,2vw,1.8rem); }
/* ELY-059: align the right-hand recipe copy near the top of the panel. */
@media (min-width:1001px) {
 .ely-home .ely-community-showcase .ely-hero-profile-recipe > div { align-self:start; padding-top:0; }
}
@media (max-width:1000px) and (min-width:761px) {
 .ely-home .ely-community-showcase .ely-profile-featured-photo { height:220px; }
}
@media (max-width:760px) {
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { min-height:0; }
 .ely-home .ely-community-showcase .ely-profile-details { padding:24px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { padding:0 20px 20px; }
 .ely-home .ely-community-showcase .ely-profile-featured-photo { height:210px; padding:8px; }
 .ely-home .ely-community-showcase .ely-hero-profile-recipe h3 { font-size:1.3rem; }
}

/* ELY-060: larger recipe and label within a shorter community panel. */
.ely-home .ely-community-showcase .ely-hero-profile-recipe .ely-section-label { font-size:.8rem; letter-spacing:.14em; }
@media (min-width:1001px) {
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile { min-height:360px; }
 .ely-home .ely-community-showcase .ely-profile-details { padding-block:20px; }
 .ely-home .ely-community-showcase .ely-hero-profile-name { margin-top:14px; }
 .ely-home .ely-community-showcase .ely-profile-stats { margin-top:12px; padding-block:10px; }
 .ely-home .ely-community-showcase .ely-profile-motto { margin-top:14px; }
 .ely-home .ely-community-showcase .ely-profile-motto::after { margin-top:12px; }
 .ely-home .ely-platform-hero .ely-community-showcase .ely-hero-profile-recipe { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); padding-block:10px; }
 .ely-home .ely-community-showcase .ely-profile-featured-photo { height:340px; padding:2px; }
}

@media (max-width:760px) {
 .ely-home .ely-community-showcase .ely-hero-profile-recipe .ely-section-label { font-size:.7rem; letter-spacing:.08em; }
 .ely-home .ely-community-showcase .ely-profile-featured-photo { padding:2px; }
}

/* ELY-053: community frames follow the supplied reference, with live recipe content. */
.ely-home .ely-platform-hero .ely-presentation-slide:has(.ely-presentation-recipes) { background:radial-gradient(ellipse at 90% 10%,#e9dbc233,transparent 50%),var(--ely-cream); }
/* ELY-067: raise the full recipes block independently of the other slides. */
.ely-home .ely-platform-hero .ely-presentation-slide:has(.ely-presentation-recipes) .ely-presentation-inner { padding-top:calc(var(--ely-home-header-height,90px) + 12px); align-content:start; }
.ely-home .ely-platform-hero .ely-presentation-slide:has(.ely-presentation-recipes) h2 { max-width:900px; }
.ely-home .ely-platform-hero .ely-presentation-slide:has(.ely-presentation-recipes) .ely-button { background:var(--ely-navy); color:var(--ely-white,#fff); border-radius:14px; }
.ely-home .ely-platform-hero .ely-presentation-recipes { gap:clamp(16px,2vw,32px); margin-block:32px; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe,
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-hero-vacancy { min-width:0; padding:10px; border:1px solid var(--ely-gold-light); border-radius:16px; background:#fff9; box-shadow:0 8px 24px #a77a1708; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo { box-sizing:border-box; height:auto; aspect-ratio:1.38; padding:20px; border:1px solid var(--ely-border); border-radius:12px; background:radial-gradient(ellipse at 15% 10%,#d4c4aa66,transparent 55%),radial-gradient(ellipse at 95% 100%,#d4c4aa55,transparent 55%),var(--ely-surface-soft); }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo img { display:block; object-fit:contain; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-body { padding:16px 12px 12px; gap:8px; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo:focus-visible { outline:2px solid var(--ely-focus); outline-offset:3px; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-hero-vacancy { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-height:260px; text-align:center; }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-hero-vacancy p { margin:0; color:var(--ely-navy); }
.ely-home .ely-platform-hero .ely-presentation-recipes .ely-hero-vacancy small { color:var(--ely-muted); }
@media (max-width:760px) {
 .ely-home .ely-platform-hero .ely-presentation-recipes { grid-template-columns:minmax(0,1fr); gap:16px; margin-block:24px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe { display:grid; grid-template-columns:minmax(96px,30%) minmax(0,1fr); gap:8px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo { height:100%; min-height:120px; aspect-ratio:auto; padding:10px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-body { padding:12px 8px; }
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-hero-vacancy { min-height:140px; }
}

/* ELY-052: crop the supplied artwork to its frame; live cards cover baked products. */
.ely-home .ely-products-scene { position:relative; min-width:0; width:100%; aspect-ratio:1020 / 640; background:url('../assets/home/vitrine-produtos.png') 95.09% 51.5% / 163.92% 147.03% no-repeat; }
.ely-home .ely-products-composition .ely-products-scene .ely-presentation-bottles { position:absolute; inset:12% 8.5% 11%; width:auto; max-width:none; padding:0; gap:3%; border:0; border-radius:0; background:transparent; }
.ely-home .ely-products-composition .ely-products-scene .ely-banner-product-card > a { padding:8px 6px 12px; border-radius:14px; background:#f7ecdd; grid-template-rows:minmax(0,1fr) auto; }
.ely-home .ely-platform-hero .ely-products-scene .ely-presentation-bottles img { height:100%; min-height:0; max-height:100%; }
.ely-home .ely-products-scene .ely-banner-product-card { min-height:0; }
.ely-home .ely-products-composition .ely-products-scene h3 { margin-top:8px; font-size:clamp(.7rem,.9vw,.9rem); }
.ely-home .ely-products-scene .ely-scene-arrow { position:absolute; top:50.8%; transform:translate(-50%,-50%); width:7%; min-width:44px; height:12%; min-height:44px; padding:0; border:0; border-radius:50%; background:transparent; cursor:pointer; }
.ely-home .ely-products-scene [data-banner-direction="-1"] { left:4.7%; }
.ely-home .ely-products-scene [data-banner-direction="1"] { left:95.9%; }
.ely-home .ely-products-scene .ely-scene-arrow:hover { background:#a77a1720; }
.ely-home .ely-products-scene .ely-scene-arrow:focus-visible { outline:2px solid var(--ely-focus); outline-offset:2px; }
.ely-home .ely-platform-hero:has(.is-current .ely-products-scene) .ely-presentation-controls [data-direction] { visibility:hidden; }
@media (max-width:1000px) {
 .ely-home .ely-products-scene { max-width:700px; justify-self:center; }
}
@media (max-width:480px) {
 .ely-home .ely-products-scene { aspect-ratio:350 / 300; }
 .ely-home .ely-products-composition .ely-products-scene .ely-banner-product-card > a { padding:6px 3px 10px; border-radius:10px; }
 .ely-home .ely-products-composition .ely-products-scene h3 { font-size:.7rem; }
}

/* ELY-054: larger showcase, with independent syrup navigation. */
.ely-home .ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr); gap:clamp(24px,3vw,48px); }
.ely-home .ely-products-scene .ely-banner-product-card[hidden],
.ely-home .ely-products-scene .ely-scene-arrow[hidden] { display:none; }
.ely-home .ely-products-composition .ely-products-scene h3 { font-size:clamp(.8rem,1vw,1rem); }
.ely-home .ely-platform-hero:has(.is-current .ely-products-scene) .ely-presentation-controls [data-direction] { visibility:visible; }
@media (max-width:1000px) {
 .ely-home .ely-platform-hero .ely-products-composition { grid-template-columns:minmax(0,1fr); }
 .ely-home .ely-products-scene { max-width:900px; }
}
@media (max-width:480px) {
 .ely-home .ely-products-composition .ely-products-scene h3 { font-size:.7rem; }
}
/* ELY-056: keep the supplied banners intact inside their own carousel slide. */
.ely-home .ely-platform-hero .ely-membership-inner { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto; align-content:center; justify-items:center; gap:20px; }
.ely-home .ely-membership-art { display:block; width:100%; min-width:0; border-radius:20px; }
.ely-home .ely-membership-art img { display:block; width:100%; height:auto; aspect-ratio:1774 / 887; object-fit:contain; border-radius:20px; }
.ely-home .ely-membership-art:focus-visible { outline:2px solid var(--ely-focus); outline-offset:4px; }
.ely-home .ely-membership-mobile-copy { display:none; }
/* ELY-065: use the banner width without cropping the artwork's embedded text. */
.ely-home .ely-platform-hero .ely-membership-inner { width:min(1600px,calc(100% - 144px)); padding-top:calc(var(--ely-home-header-height,90px) + 12px); }
@media(max-width:760px) {
 .ely-home .ely-platform-hero .ely-membership-inner { width:calc(100% - 32px); }
}
@media (max-width:760px) {
 .ely-home .ely-membership-mobile-copy { display:block; margin:0; text-align:center; }
}

/* ELY-064: balanced product cards; slide arrows retain their shared position. */
.ely-home .ely-platform-hero .ely-products-composition { width:min(1600px,calc(100% - 160px)); grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr); gap:clamp(24px,3vw,48px); padding-top:24px; }
.ely-home .ely-products-composition > header h2 { font-size:clamp(2rem,2.8vw,3rem); }
.ely-home .ely-products-scene { max-width:900px; justify-self:center; }
.ely-home .ely-products-composition .ely-products-scene .ely-banner-product-card > a { box-sizing:border-box; height:100%; min-height:0; grid-template-rows:minmax(0,1fr) 2.8em; gap:8px; }
.ely-home .ely-platform-hero .ely-products-scene .ely-presentation-bottles img { box-sizing:border-box; width:100%; height:auto; max-height:100%; aspect-ratio:4 / 5; object-fit:contain; }
.ely-home .ely-products-composition .ely-products-scene h3 { margin:0; align-self:center; font-size:clamp(.7rem,.85vw,.9rem); }
@media (max-width:1000px) {
 .ely-home .ely-platform-hero .ely-products-composition { width:calc(100% - 40px); grid-template-columns:minmax(0,1fr); }
}

/* ELY-067: one stable canvas, with content-safe header and control spacing. */
.ely-home .ely-platform-hero.is-ready .ely-presentation-track { align-items:stretch; }
.ely-home .ely-platform-hero .ely-presentation-slide { min-height:560px; }
.ely-home .ely-platform-hero .ely-presentation-inner { padding-top:calc(var(--ely-home-header-height,90px) + 12px); padding-bottom:76px; }
.ely-home .ely-platform-hero.is-ready .ely-presentation-inner { align-content:center; }
.ely-home .ely-platform-hero .ely-membership-inner { gap:0; }
.ely-home .ely-membership-art img { max-height:none; object-fit:contain; }
.ely-home .ely-membership-mobile-copy { margin:12px 0 0; }
@media(min-width:761px) {
 .ely-home .ely-platform-hero .ely-presentation-recipes .ely-home-recipe-photo { height:220px; aspect-ratio:auto; padding:12px; }
 .ely-home .ely-platform-hero .ely-membership-inner { position:relative; width:calc(100% - 112px); }
 .ely-home .ely-membership-art { position:absolute; inset:calc(var(--ely-home-header-height,90px) + 4px) 0 76px; width:auto; }
 .ely-home .ely-membership-art img { height:100%; aspect-ratio:auto; }
}
@media(max-width:760px) {
 .ely-home .ely-platform-hero .ely-presentation-slide { min-height:0; }
 .ely-home .ely-platform-hero.is-ready .ely-presentation-inner { grid-template-rows:auto auto; align-content:start; }
 .ely-home .ely-platform-hero .ely-membership-inner { width:calc(100% - 16px); }
 .ely-home .ely-platform-event .ely-presentation-inner { padding-bottom:24px; }
 .ely-home .ely-platform-event .ely-event-scene { margin-bottom:76px; }
 .ely-home .ely-platform-hero:has(.is-current .ely-products-scene) .ely-presentation-controls [data-direction] { visibility:hidden; }
 .ely-home .ely-community-showcase .ely-profile-details { padding:16px 20px; }
 .ely-home .ely-community-showcase .ely-home-author-avatar { width:52px; height:52px; font-size:1.8rem; }
 .ely-home .ely-community-showcase .ely-hero-profile-name { margin:12px 0 4px; }
 .ely-home .ely-community-showcase .ely-profile-headline,
 .ely-home .ely-community-showcase .ely-profile-location { margin-left:68px; margin-block:6px; }
 .ely-home .ely-community-showcase .ely-profile-stats { margin-top:12px; padding-block:8px; }
 .ely-home .ely-community-showcase .ely-profile-motto { margin-block:12px; }
 .ely-home .ely-community-showcase .ely-profile-motto::after { margin-top:12px; }
}

/* Three complete product cards on phones, five on desktop. */
@media(max-width:600px) {
 .ely-home .ely-shop-rail { gap:8px; }
 .ely-home .ely-shop-rail > .ely-product { min-width:0; }
 .ely-home .ely-shop-rail .ely-product-image { padding:4px; aspect-ratio:4 / 5; }
 .ely-home .ely-shop-rail .ely-product-body { padding:12px 0 4px; }
 .ely-home .ely-shop-rail h3 { font-size:clamp(.75rem,3.1vw,1rem); min-height:3.75em; overflow-wrap:anywhere; }
 .ely-home .ely-shop-rail .ely-product-volume { font-size:.7rem; }
 .ely-home .ely-shop-rail .ely-product-price { display:flex; flex-wrap:wrap; gap:2px 4px; font-size:.85rem; }
 .ely-home .ely-shop-rail .ely-product-price del { font-size:.7rem; margin-right:0; }
 .ely-home .ely-shop-rail .ely-button { width:100%; min-width:0; min-height:48px; padding:8px 4px; font-size:.7rem; line-height:1.3; white-space:normal; }
 .ely-home .ely-shop-rail .ely-text-link { font-size:.7rem; overflow-wrap:anywhere; }
}

/* Let the five desktop cards use the available screen width. */
.ely-home .ely-home-catalog > .ely-container { width:calc(100% - 32px); max-width:none; }

/* Mobile event story: one continuous photograph and readable copy. */
@media (max-width:760px) {
 .ely-home .ely-platform-event .ely-event-scene { position:absolute; inset:0; width:100%; margin:0; background:#ecd1af; }
 .ely-home .ely-platform-event .ely-event-scene img { position:absolute; bottom:0; width:100%; height:72%; aspect-ratio:auto; object-fit:cover; object-position:70% bottom; }
 .ely-home .ely-platform-event .ely-event-scene::after { content:""; position:absolute; inset:0; background:linear-gradient(to bottom,#f8f0e2 0%,#f8f0e2 24%,rgba(248,240,226,.96) 32%,rgba(248,240,226,.65) 42%,rgba(248,240,226,0) 57%); }
 .ely-home .ely-platform-event .ely-presentation-inner { padding-bottom:76px; }
 .ely-home .ely-platform-event header { max-width:390px; }
}

/* Four products in two rows on phones. */
@media (max-width:760px) {
 .ely-home .ely-products-scene { aspect-ratio:auto; padding:6px; box-sizing:border-box; background:none; border:1px solid #d7b77e; border-radius:14px; }
 .ely-home .ely-products-composition .ely-products-scene .ely-presentation-bottles { position:static; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .ely-home .ely-products-scene .ely-banner-product-card:nth-child(n+5),
 .ely-home .ely-products-scene .ely-scene-arrow { display:none; }
 .ely-home .ely-products-composition .ely-products-scene .ely-banner-product-card > a { padding:6px 4px 8px; grid-template-rows:auto 2.8em; gap:4px; }
 .ely-home .ely-platform-hero .ely-products-scene .ely-presentation-bottles img { height:auto; max-height:180px; aspect-ratio:4 / 5; }
 .ely-home .ely-products-composition .ely-products-scene h3 { font-size:.8rem; }
}

/* Portrait photograph composed for mobile; size each story to its own content. */
.ely-home .ely-event-scene picture { display:block; width:100%; height:100%; }
@media(max-width:760px) {
 .ely-home .ely-platform-hero.is-ready .ely-presentation-track { align-items:flex-start; }
 .ely-home .ely-platform-hero .ely-platform-event { min-height:720px; min-height:max(720px,150vw); }
 .ely-home .ely-platform-event .ely-event-scene img { inset:0; height:100%; object-fit:cover; object-position:center bottom; }
 .ely-home .ely-platform-event .ely-event-scene::after { background:linear-gradient(to bottom,rgba(248,240,226,.38),transparent 54%); }
 .ely-home .ely-platform-event .ely-presentation-inner { padding-bottom:350px; }
}

/* Show the complete portrait artwork on mobile, including embedded text. */
@media(max-width:760px) {
 .ely-home .ely-platform-hero .ely-membership-inner { width:calc(100% - 24px); gap:0; padding-bottom:64px; }
 .ely-home .ely-membership-art picture { display:block; }
 .ely-home .ely-membership-art img { width:100%; height:auto; aspect-ratio:1122 / 1402; object-fit:contain; border-radius:14px; }
 .ely-home .ely-membership-mobile-copy { display:none; }
}

@media(min-width:761px) { .ely-home .ely-membership-art picture { display:block; height:100%; } }

/* All five stories share the tallest content-safe banner at each viewport width. */
.ely-home .ely-platform-hero.is-ready .ely-presentation-track { align-items:stretch; }
