.el-home-hero { overflow: hidden; padding: clamp(4rem, 8vw, 7.5rem) 0 clamp(3.5rem, 7vw, 6rem); background: radial-gradient(circle at 88% 15%, #f0dfb5 0 8%, transparent 8.3%), linear-gradient(120deg, var(--el-gray-50), #fff 62%); }
.el-home-hero__grid { display: grid; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.el-home-hero__copy { position: relative; z-index: 2; }
.el-home-hero h1 { max-width: 14ch; margin: 0; overflow-wrap: normal; word-break: normal; font-size: clamp(2.9rem, 5.6vw, 5.35rem); line-height: .98; }
.el-home-hero h1 span { display: block; color: inherit; white-space: nowrap; }
.el-home-hero h1 .el-home-hero__accent { color: var(--el-gold-dark); }
.el-home-hero__lead { max-width: 42rem; margin-bottom: 0; color: var(--el-gray-500); font-size: var(--el-text-lg); }
.el-home-hero__reassurance { max-width: 38rem; margin: .75rem 0 0; color: var(--el-black); font-size: .9rem; font-weight: 750; }
.el-home-hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; padding-top: .75rem; }
.el-text-link { display: inline-flex; align-items: center; gap: .45rem; width: max-content; border-bottom: 1px solid var(--el-gold); color: var(--el-black); font-weight: 750; text-decoration: none; }
.el-text-link:hover { color: var(--el-gold-dark); }

.el-project-collage { min-width: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: .65rem; height: clamp(27rem, 38vw, 32rem); padding: .65rem; border: 1px solid #d3cec2; background: #e8e5dd; box-shadow: var(--el-shadow-md); }
.el-collage-slot { min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 1rem; border: 5px solid #fff; background: var(--el-gray-100); }
.el-collage-slot span { width: max-content; max-width: 100%; padding: .3rem .5rem; background: rgb(255 255 255 / .88); color: var(--el-black); font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.el-collage-slot small { margin-top: .4rem; color: currentColor; font-size: .7rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.el-collage-slot img { width: 100%; height: 100%; object-fit: cover; }
.el-collage-slot.has-image { padding: 0; background: var(--el-gray-100); }
.el-collage-slot--website { grid-column: 1 / 5; background: linear-gradient(145deg, #1b1a18, #4b4842); color: #fff; }
.el-collage-slot--flyer { grid-column: 5 / 7; background: var(--el-gold); }
.el-collage-slot--social { grid-column: 1 / 3; background: #f8f5ed; }
.el-collage-slot--product { grid-column: 3 / 5; background: linear-gradient(145deg, #d8d9d8, #f5f3ec); }
.el-collage-slot--event { grid-column: 5 / 7; background: linear-gradient(145deg, #eadbb9 0 50%, var(--el-gold) 50%); }

.el-home-team { padding: clamp(2.5rem, 6vw, 4.5rem) 0; border-top: 1px solid var(--el-color-border); border-bottom: 1px solid var(--el-color-border); background: #eee8db; }
.el-home-team__inner { display: grid; align-items: center; gap: clamp(2rem, 6vw, 5rem); }
.el-home-team__portraits { display: flex; align-items: flex-end; padding: .75rem 0 1rem .75rem; }
.el-home-team__portraits figure { width: min(36%, 8.5rem); margin: 0 0 0 -.75rem; }
.el-home-team__portraits figure:nth-child(2) { transform: translateY(.65rem); }
.el-home-team__portrait { aspect-ratio: 4/5; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: .8rem; border: 5px solid #fff; background: linear-gradient(145deg,#d7d7d3,#f7f3e9); box-shadow: var(--el-shadow-sm); }
.el-home-team__portrait img { width: 100%; height: 100%; object-fit: cover; }
.el-home-team__portrait span { color: var(--el-gold-dark); font: 850 clamp(2.8rem, 8vw, 5rem)/1 var(--el-font-display); }
.el-home-team__portrait small { font-size: .5rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.el-home-team__portraits figcaption { padding-top: .4rem; text-align: center; font-size: .65rem; font-weight: 800; }
.el-home-team__copy h2 { max-width: 18ch; margin-top: 0; }
.el-home-team__copy > p:not(.el-eyebrow) { max-width: 44rem; color: var(--el-gray-500); }
@media (min-width: 48rem) { .el-home-team__inner { grid-template-columns: minmax(17rem,.72fr) 1.28fr; } }
@media (prefers-reduced-motion: reduce) { .el-home-team__portraits figure:nth-child(2) { transform: none; } }

.el-studio-board { position: relative; min-height: clamp(24rem, 48vw, 36rem); isolation: isolate; }
.el-studio-board::before { content: ""; position: absolute; inset: 8% 0 5% 4%; z-index: -1; border: 1px solid #d7d2c6; border-radius: 2rem; background: #e8e5dd; transform: rotate(-2deg); box-shadow: var(--el-shadow-md); }
.el-project-tile, .el-studio-board__note { position: absolute; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 12px 30px rgb(22 22 22 / .14); }
.el-studio-board__note { top: 2%; left: 1%; z-index: 3; width: 42%; padding: 1rem 1.2rem; background: #f2cf67; font-family: var(--el-font-display); font-size: clamp(.9rem, 2vw, 1.35rem); line-height: 1.15; transform: rotate(-5deg); }
.el-project-tile--website { top: 13%; right: 2%; width: 66%; height: 42%; padding: 1rem; border: 8px solid var(--el-white); border-radius: .35rem; background: var(--el-black); color: var(--el-white); transform: rotate(3deg); }
.el-project-tile--website span { margin-bottom: auto; color: var(--el-gold-light); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.el-project-tile--website i { display: block; width: 72%; height: 7px; margin-top: .65rem; border-radius: 1rem; background: #fff; opacity: .85; }
.el-project-tile--website i:nth-child(3) { width: 48%; background: var(--el-gold); }
.el-project-tile--website i:nth-child(4) { width: 60%; opacity: .45; }
.el-project-tile--flyer { bottom: 5%; left: 4%; z-index: 2; width: 39%; height: 49%; justify-content: space-between; padding: 1.2rem; background: var(--el-gold); color: var(--el-black); transform: rotate(-4deg); }
.el-project-tile--flyer small, .el-project-tile--flyer span { font-size: .65rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.el-project-tile--flyer strong { font: 800 clamp(1.25rem, 3.3vw, 2.5rem)/.9 var(--el-font-display); letter-spacing: -.05em; }
.el-project-tile--social { right: 3%; bottom: 3%; z-index: 4; width: 35%; aspect-ratio: 1; justify-content: space-between; padding: 1rem; background: #fbf8ef; border: 1px solid #c8c2b4; transform: rotate(6deg); }
.el-project-tile--social span { color: var(--el-gold-dark); font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.el-project-tile--social b { font: 800 clamp(1.1rem, 3vw, 2rem)/.88 var(--el-font-display); }
.el-project-tile--shirt { right: 31%; bottom: 1%; z-index: 5; width: 24%; align-items: center; gap: .35rem; padding: .75rem; background: var(--el-white); transform: rotate(-1deg); }
.el-shirt-shape { display: grid; width: 70%; aspect-ratio: .9; place-items: center; background: var(--el-black); color: var(--el-gold); clip-path: polygon(20% 4%,35% 0,42% 10%,58% 10%,65% 0,80% 4%,100% 22%,86% 39%,77% 32%,77% 100%,23% 100%,23% 32%,14% 39%,0 22%); font-weight: 900; }
.el-project-tile--shirt small { font-size: .6rem; font-weight: 700; }
.el-studio-board__tape { position: absolute; top: 9%; right: 27%; z-index: 6; width: 16%; height: 1.8rem; background: rgb(255 255 255 / .65); transform: rotate(9deg); }

.el-trust-strip { background: var(--el-black); color: var(--el-white); }
.el-trust-strip .el-container { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem 1.25rem; padding-block: 1.25rem; }
.el-trust-strip span { display: flex; align-items: center; gap: .55rem; font-size: .78rem; font-weight: 700; }
.el-trust-strip span::before { content: ""; width: .45rem; height: .45rem; flex: 0 0 auto; border-radius: 50%; background: var(--el-gold); }
.el-intro__grid { display: grid; gap: 1.5rem; }
.el-intro h2 { max-width: 16ch; margin-top: 0; }
.el-intro .el-flow > p { max-width: 47rem; font-size: var(--el-text-lg); }

.el-services-grid { display: grid; gap: 1rem; }
.el-service-card { position: relative; min-height: 19rem; padding: clamp(1.5rem, 3vw, 2rem); overflow: hidden; border: 1px solid var(--el-color-border); border-radius: var(--el-radius-md); background: var(--el-white); transition: transform var(--el-transition), box-shadow var(--el-transition); }
.el-service-card::after { content: ""; position: absolute; right: -2rem; bottom: -3rem; width: 9rem; height: 9rem; border: 1.5rem solid #f0e3c4; border-radius: 50%; opacity: .7; transition: transform 300ms ease; }
.el-service-card h3 { margin: 1.25rem 0 .75rem; font-size: var(--el-text-h4); }
.el-service-card p { max-width: 28ch; color: var(--el-gray-500); }
.el-service-card a { position: absolute; bottom: 1.75rem; left: clamp(1.5rem, 3vw, 2rem); z-index: 2; color: var(--el-gold-dark); font-size: .85rem; font-weight: 800; text-decoration: none; }
.el-service-card__icon { position: relative; width: 3.4rem; height: 3.4rem; border-radius: 1rem; background: var(--el-gray-100); }
.el-service-card__icon::before, .el-service-card__icon::after, .el-service-card__icon span { content: ""; position: absolute; border: 2px solid var(--el-black); }
.el-service-card--marketing .el-service-card__icon::before { inset: 13px 9px; border-radius: 50%; }
.el-service-card--marketing .el-service-card__icon::after { width: 18px; height: 2px; right: 1px; top: 15px; border: 0; background: var(--el-gold); transform: rotate(-25deg); }
.el-service-card--website .el-service-card__icon::before { inset: 10px 7px; border-radius: 3px; }
.el-service-card--website .el-service-card__icon span { left: 12px; right: 12px; top: 17px; border-width: 1px 0 0; }
.el-service-card--design .el-service-card__icon::before { width: 25px; height: 25px; left: 14px; top: 14px; transform: rotate(45deg); }
.el-service-card--products .el-service-card__icon::before { inset: 8px 12px; clip-path: polygon(25% 0,75% 0,100% 30%,82% 44%,75% 35%,75% 100%,25% 100%,25% 35%,18% 44%,0 30%); background: var(--el-gold-light); }
.el-service-card--events .el-service-card__icon::before { inset: 10px; border-radius: 50%; }
.el-service-card--events .el-service-card__icon::after { inset: 17px; border-radius: 50%; background: var(--el-gold); }

.el-help { background: var(--el-black); color: var(--el-white); }
.el-help h2, .el-help h3 { color: var(--el-white); }
.el-help .el-eyebrow { color: var(--el-gold-light); }
.el-help__layout { display: grid; gap: 2.5rem; }
.el-help__intro { max-width: 33rem; }
.el-help__intro p:last-child { color: #c8c5be; font-size: var(--el-text-lg); }
.el-help-picker { display: grid; gap: 1rem; }
.el-help-picker__questions { border-top: 1px solid #494743; }
.el-problem { width: 100%; min-height: 4rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border: 0; border-bottom: 1px solid #494743; background: transparent; color: #dedbd3; font: 650 1rem/1.35 var(--el-font-body); text-align: left; cursor: pointer; }
.el-problem span { display: grid; width: 1.75rem; height: 1.75rem; flex: 0 0 auto; place-items: center; border: 1px solid #6f6b63; border-radius: 50%; transition: transform var(--el-transition); }
.el-problem:hover, .el-problem.is-active { color: var(--el-gold-light); }
.el-problem.is-active span { transform: rotate(45deg); background: var(--el-gold); color: var(--el-black); }
.el-help-picker__answer { min-height: 20rem; padding: clamp(1.75rem, 5vw, 3rem); border-radius: var(--el-radius-md); background: #292825; }
.el-answer > span { color: var(--el-gold-light); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.el-answer h3 { margin: 1rem 0; font-size: var(--el-text-h3); }
.el-answer p { color: #cfcbc2; }

.el-work__filters { display: flex; gap: .5rem; margin-bottom: 2rem; padding-bottom: .3rem; overflow-x: auto; scrollbar-width: thin; }
.el-work__filters span { flex: 0 0 auto; padding: .45rem .85rem; border: 1px solid var(--el-color-border); border-radius: var(--el-radius-pill); color: var(--el-gray-500); font-size: .75rem; font-weight: 750; }
.el-work__filters .is-active { border-color: var(--el-black); background: var(--el-black); color: var(--el-white); }
.el-work-grid { display: grid; gap: 1.25rem; margin-bottom: 2rem; }
.el-work-item { margin: 0; }
.el-work-placeholder { min-height: 20rem; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; overflow: hidden; border-radius: var(--el-radius-md); background: var(--el-gray-100); }
.el-work-placeholder span { width: max-content; padding: .35rem .65rem; border-radius: var(--el-radius-pill); background: rgb(255 255 255 / .75); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.el-work-placeholder strong { max-width: 10ch; font: 800 clamp(2rem, 4vw, 3.5rem)/.9 var(--el-font-display); letter-spacing: -.05em; }
.el-work-placeholder--campaign { background: linear-gradient(135deg, #d7b869, #f4e9cd 60%); }
.el-work-placeholder--product { background: linear-gradient(150deg, #d9dadb, #f8f8f6); }
.el-work-placeholder--site { background: linear-gradient(145deg, #282724, #5a554d); color: #fff; }
.el-work-placeholder--event { background: linear-gradient(135deg, #f4eee0 52%, #b58a35 52%); }
.el-work-item figcaption { padding: .7rem .2rem; color: var(--el-gray-500); font-size: .75rem; font-weight: 750; text-transform: uppercase; }

.el-products { background: #eee8db; }
.el-products__grid, .el-events__grid, .el-local__grid { display: grid; align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.el-products__visual { position: relative; min-height: clamp(27rem, 70vw, 38rem); }
.el-product-shape { position: absolute; display: grid; place-items: center; font-weight: 850; text-align: center; box-shadow: var(--el-shadow-md); }
.el-product-shape--shirt { top: 4%; left: 3%; width: 53%; aspect-ratio: .88; clip-path: polygon(22% 4%,37% 0,44% 11%,56% 11%,63% 0,78% 4%,100% 24%,85% 42%,76% 34%,76% 100%,24% 100%,24% 34%,15% 42%,0 24%); background: var(--el-black); color: var(--el-gold); font-size: 2.3rem; }
.el-product-shape--mug { top: 14%; right: 3%; width: 38%; height: 32%; border-radius: .6rem 1.5rem 1.5rem .6rem; background: #fff; color: var(--el-gold-dark); transform: rotate(5deg); }
.el-product-shape--mug::after { content: ""; position: absolute; right: -18%; width: 30%; height: 50%; border: 8px solid #fff; border-left: 0; border-radius: 0 50% 50% 0; }
.el-product-shape--tote { right: 3%; bottom: 4%; width: 49%; height: 43%; border-radius: .4rem; background: var(--el-gold); color: var(--el-black); transform: rotate(-3deg); }
.el-product-shape--tote::before { content: ""; position: absolute; top: -18%; width: 48%; height: 30%; border: 7px solid var(--el-gold); border-bottom: 0; border-radius: 50% 50% 0 0; }
.el-product-shape--art { left: 3%; bottom: 2%; width: 43%; height: 38%; border: 10px solid #fff; background: var(--el-gray-100); color: var(--el-black); font-size: 1.4rem; transform: rotate(4deg); }
.el-product-list { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.5rem 0 2rem; padding: 0; list-style: none; }
.el-product-list li { padding: .45rem .8rem; border: 1px solid #cfc5b3; border-radius: var(--el-radius-pill); background: rgb(255 255 255 / .4); font-size: .78rem; font-weight: 700; }
.el-home-etsy { padding: clamp(3rem, 7vw, 5rem) 0; background: #eee8db; }
.el-home-etsy__inner { display: grid; align-items: center; gap: clamp(2rem, 6vw, 5rem); }
.el-home-etsy__mark { min-height: 13rem; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; border: 8px solid #fff; background: var(--el-black); color: #fff; box-shadow: var(--el-shadow-md); transform: rotate(-1deg); }
.el-home-etsy__mark span, .el-home-etsy__mark small { color: var(--el-gold-light); font-size: .62rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.el-home-etsy__mark strong { font: 850 clamp(2.5rem, 7vw, 4.5rem)/.85 var(--el-font-display); }
.el-home-etsy h2 { margin-top: 0; }
.el-home-etsy__inner > div:last-child > p:not(.el-eyebrow) { max-width: 42rem; color: var(--el-gray-500); }
.el-home-etsy__note { padding-left: 1rem; border-left: 3px solid var(--el-gold); font-size: .78rem; }
@media (min-width: 48rem) { .el-home-etsy__inner { grid-template-columns: minmax(15rem, .7fr) 1.3fr; } }
@media (prefers-reduced-motion: reduce) { .el-home-etsy__mark { transform: none; } }

.el-events { background: var(--el-black); color: var(--el-white); }
.el-events h2 { color: var(--el-white); }
.el-events .el-eyebrow { color: var(--el-gold-light); }
.el-events__copy p:not(.el-eyebrow) { color: #ccc8c0; }
.el-event-poster { min-height: clamp(28rem, 65vw, 40rem); display: flex; flex-direction: column; justify-content: space-between; padding: clamp(1.5rem, 4vw, 3rem); overflow: hidden; border-radius: var(--el-radius-lg); background: radial-gradient(circle at 88% 15%, var(--el-black) 0 7%, transparent 7.5%), linear-gradient(145deg, var(--el-gold) 0 58%, #eee3c9 58%); color: var(--el-black); transform: rotate(1deg); }
.el-event-poster__date, .el-event-poster__footer { font-size: .7rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.el-event-poster strong { font: 850 clamp(2.6rem, 6vw, 5.5rem)/.82 var(--el-font-display); letter-spacing: -.07em; }

.el-why-grid { display: grid; gap: 0; border-top: 1px solid var(--el-color-border); }
.el-why-item { padding: 1.75rem 0; border-bottom: 1px solid var(--el-color-border); }
.el-why-item > span { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: 50%; background: #f3e8ce; color: var(--el-gold-dark); font-weight: 900; }
.el-why-item h3 { margin: 1rem 0 .5rem; font-size: 1.15rem; }
.el-why-item p { margin: 0; color: var(--el-gray-500); font-size: .9rem; }
.el-why-tools { max-width: 52rem; margin: 1.5rem 0 0; padding: 1rem 1.15rem; border-left: 2px solid var(--el-gold); background: var(--el-gray-50); color: var(--el-gray-500); font-size: .86rem; line-height: 1.65; }
.el-why-tools strong { color: var(--el-black); }
.el-testimonial-placeholder { min-height: 18rem; padding: 1.75rem; border: 1px dashed #aaa69e; border-radius: var(--el-radius-md); background: rgb(255 255 255 / .55); }
.el-testimonial-placeholder > span { display: inline-block; padding: .35rem .65rem; border-radius: var(--el-radius-pill); background: var(--el-gray-200); color: var(--el-gray-500); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.el-testimonial-placeholder blockquote { margin: 2rem 0; font: 650 1.15rem/1.5 var(--el-font-display); }
.el-testimonial-placeholder p { color: var(--el-gray-500); font-size: .8rem; }

.el-local__mark { min-height: 22rem; display: flex; flex-direction: column; justify-content: space-between; padding: 2rem; border-radius: var(--el-radius-lg); background: var(--el-gold); box-shadow: var(--el-shadow-md); transform: rotate(-2deg); }
.el-local__mark span { font-size: .75rem; font-weight: 850; letter-spacing: .18em; }
.el-local__mark b { font: 850 clamp(2.5rem, 7vw, 5.5rem)/.85 var(--el-font-display); letter-spacing: -.07em; }
.el-final-cta { padding-block: clamp(4rem, 8vw, 7rem); background: var(--el-gray-100); }
.el-final-cta__inner { display: grid; gap: 2rem; padding: clamp(2rem, 6vw, 5rem); border-radius: var(--el-radius-lg); background: var(--el-black); color: var(--el-white); }
.el-final-cta h2 { max-width: 18ch; margin: 0 0 1rem; color: var(--el-white); }
.el-final-cta p:not(.el-eyebrow) { margin: 0; color: #cfccc5; font-size: var(--el-text-lg); }
.el-final-cta .el-eyebrow { color: var(--el-gold-light); }
.el-final-cta__actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.el-button--light { background: var(--el-white); color: var(--el-black); }

.el-site-footer { padding: clamp(4rem, 8vw, 6rem) 0 1.5rem; background: #111; color: #d6d2ca; }
.el-site-footer h2, .el-site-footer h3 { color: var(--el-white); }
.el-site-footer h2 { margin: 0 0 1rem; font-size: var(--el-text-h3); }
.el-site-footer h3 { margin: 0 0 1rem; font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; }
.el-site-footer__grid { display: grid; gap: 2.5rem; }
.el-site-footer__brand p { max-width: 30rem; }
.el-site-footer__location { color: var(--el-gold-light); font-size: .8rem; font-weight: 800; text-transform: uppercase; }
.el-site-footer ul { margin: 0; padding: 0; list-style: none; }
.el-site-footer li { margin-bottom: .55rem; }
.el-site-footer a { color: #d6d2ca; text-decoration: none; }
.el-site-footer a:hover { color: var(--el-gold-light); }
.el-site-footer__contact > a { display: block; margin-bottom: .6rem; }
.el-site-footer__social-title { margin-top: 1.75rem !important; }
.el-social-placeholder { color: #85817a; font-size: .78rem; }
.el-site-footer__bottom { display: flex; flex-direction: column; gap: .35rem; margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid #383632; color: #85817a; font-size: .75rem; }

@media (min-width: 40rem) {
  .el-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .el-service-card:last-child { grid-column: 1 / -1; }
  .el-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .el-why-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .el-why-item { padding: 2rem; border-right: 1px solid var(--el-color-border); }
  .el-site-footer__grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .el-site-footer__contact { grid-column: 2 / -1; }
  .el-site-footer__bottom { flex-direction: row; justify-content: space-between; }
}

@media (min-width: 48rem) {
  .el-home-hero__grid { grid-template-columns: minmax(0, 1.04fr) minmax(22rem, .96fr); }
  .el-home-hero__actions .el-button { width: auto; }
  .el-trust-strip .el-container { grid-template-columns: repeat(4, 1fr); }
  .el-intro__grid { grid-template-columns: .35fr 1.65fr; }
  .el-help-picker { grid-template-columns: 1.1fr .9fr; align-items: start; }
  .el-help-picker__answer { position: sticky; top: 7rem; }
  .el-products__grid, .el-events__grid, .el-local__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .el-events__copy { order: 2; }
  .el-final-cta__inner { grid-template-columns: 1fr auto; align-items: end; }
  .el-final-cta__actions { flex-direction: column; align-items: stretch; }
}

@media (min-width: 48rem) and (max-width: 63.99rem) {
  .el-home-hero h1 { font-size: 2.6rem; }
  .el-home-hero__grid { grid-template-columns: minmax(0, .92fr) minmax(22rem, 1.08fr); gap: 2.25rem; }
}

@media (min-width: 64rem) {
  .el-services-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .el-service-card { grid-column: span 2; }
  .el-service-card:nth-child(4), .el-service-card:last-child { grid-column: span 3; }
  .el-help__layout { grid-template-columns: .65fr 1.35fr; }
  .el-help__intro { position: sticky; top: 7rem; align-self: start; }
  .el-work-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .el-work-item--wide { grid-column: span 2; }
  .el-work-placeholder { min-height: 25rem; }
  .el-why-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .el-site-footer__grid { grid-template-columns: 1.6fr .7fr 1fr 1fr; }
  .el-site-footer__contact { grid-column: auto; }
}

@media (max-width: 39.99rem) {
  .el-home-hero { padding-top: 3rem; }
  .el-home-hero h1 { font-size: clamp(2.85rem, 14vw, 4rem); }
  .el-home-hero__actions { flex-direction: column; }
  .el-studio-board { margin-inline: -.5rem; }
  .el-project-tile--shirt { right: 29%; width: 28%; }
  .el-trust-strip .el-container { padding-inline: .25rem; }
  .el-trust-strip span { font-size: .7rem; }
  .el-help-picker__answer { min-height: auto; }
  .el-event-poster { min-height: 28rem; }
}

/* Direct service links and mobile-first needs accordion. */
.el-service-card { display: flex; flex-direction: column; min-height: 15rem; color: var(--el-black); text-decoration: none; }
.el-service-card::after { display: none; }
.el-service-card p { max-width: 38ch; margin-bottom: 1.25rem; }
.el-service-card__cta { display: inline-flex; align-items: center; gap: .45rem; margin-top: auto; color: var(--el-gold-dark); font-size: .85rem; font-weight: 850; }
.el-service-card:hover,.el-service-card:focus-visible { color: var(--el-black); transform: translateY(-3px); box-shadow: var(--el-shadow-md); }
.el-service-card:focus-visible { outline-offset: 4px; }
.el-help::before { display: none; }
.el-help__layout { align-items: start; }
.el-help-accordion { border-top: 1px solid #56524b; }
.el-help-item { border-bottom: 1px solid #56524b; }
.el-help-item h3 { margin: 0; }
.el-help-item .el-problem { min-height: 3.75rem; padding: .85rem 0; border: 0; color: #f1eee7; font-size: clamp(.95rem, 1.5vw, 1.08rem); }
.el-help-item .el-problem > span { display: block; width: auto; height: auto; border: 0; color: inherit; transform: none; }
.el-help-item .el-problem > i { display: grid; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; place-items: center; border: 1px solid #777168; border-radius: 50%; color: var(--el-gold-light); font-style: normal; transition: transform var(--el-transition), background-color var(--el-transition); }
.el-help-item.is-open .el-problem { color: var(--el-gold-light); }
.el-help-item.is-open .el-problem > i { transform: rotate(45deg); border-color: var(--el-gold); background: var(--el-gold); color: var(--el-black); }
.el-help-item__answer { max-width: 46rem; padding: 0 2.75rem 1.4rem 0; color: #d1cdc5; }
.el-help-item__answer > p { margin: 0 0 1rem; }
.el-help-item__answer .el-help-item__service { margin-bottom: .45rem; color: #fff; font-size: .78rem; font-weight: 800; }
.el-help-item__answer .el-button { width: max-content; margin-top: .25rem; }
@media (min-width: 64rem) {
  .el-services-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .el-service-card { grid-column: span 2; }
  .el-service-card:nth-child(4),.el-service-card:last-child { grid-column: span 3; }
}
@media (max-width: 39.99rem) {
  .el-service-card { min-height: 13.5rem; }
  .el-help-item__answer { padding-right: 0; }
  .el-help-item__answer .el-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .el-service-card:hover, .el-project-tile, .el-studio-board__note, .el-local__mark, .el-event-poster { transform: none !important; }
}

@media (hover: hover) and (pointer: fine) {
  .el-service-card:hover { transform: translateY(-5px); box-shadow: var(--el-shadow-md); }
  .el-service-card:hover::after { transform: scale(1.12) rotate(8deg); }
  .el-service-card:hover a { color: var(--el-black); }
}

/* Conversion-focused homepage rhythm. Keeps the identity while reducing scroll cost. */
.home .el-section { padding-block: clamp(3.5rem, 6vw, 5.5rem); }
.home .el-section-heading { margin-bottom: clamp(1.75rem, 3vw, 2.5rem); }
.home .el-section-heading::after { margin-top: 1rem; }
.el-home-hero { padding-block: clamp(3rem, 5.5vw, 5rem); }
.el-home-hero__grid { gap: clamp(2rem, 4vw, 4rem); }
.el-home-hero h1 { max-width: 14ch; font-size: clamp(2.9rem, 5.6vw, 5.35rem); line-height: .98; }
.el-studio-board { min-height: clamp(21rem, 38vw, 30rem); }
.el-service-card { min-height: 16rem; padding: 1.4rem; }
.el-service-card a { bottom: 1.35rem; left: 1.4rem; }
.el-problem { min-height: 3.5rem; padding-block: .75rem; }
.el-help-picker__answer { min-height: 17rem; }
.el-work-placeholder { min-height: 17rem; }
.el-products__visual { min-height: clamp(23rem, 48vw, 31rem); }
.el-products__etsy { display: grid; gap: .8rem; margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid #c9bfae; }
.el-products__etsy span { color: var(--el-gold-dark); font-size: .68rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.el-products__etsy p { margin: .25rem 0 0; color: var(--el-gray-500); font-size: .85rem; }
.el-event-poster { min-height: clamp(23rem, 42vw, 31rem); }
.el-why-item { padding-block: 1.4rem; }
.el-team-local { background: #eee8db; }
.el-team-local__grid { display: grid; align-items: center; gap: clamp(1.75rem, 4vw, 3.5rem); }
.el-team-local__copy h2 { max-width: 16ch; margin-top: 0; }
.el-team-local__copy > p:not(.el-eyebrow) { max-width: 38rem; color: var(--el-gray-500); }
.el-team-local__place { min-height: 13rem; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; background: var(--el-gold); box-shadow: 8px 8px 0 var(--el-black); }
.el-team-local__place span,.el-team-local__place small { font-size: .6rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.el-team-local__place strong { font: 850 clamp(2rem, 4vw, 3.25rem)/.9 var(--el-font-display); }
.el-final-cta { padding-block: clamp(3rem, 5vw, 4.5rem); }
.el-final-cta__inner { padding: clamp(2rem, 4vw, 3.5rem); }
@media (min-width: 48rem) {
  .el-products__etsy { grid-template-columns: 1fr auto; align-items: end; }
  .el-team-local__grid { grid-template-columns: .8fr 1.2fr; }
  .el-team-local__place { grid-column: 1 / -1; min-height: 10rem; }
}
@media (min-width: 64rem) {
  .el-services-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .el-service-card,.el-service-card:nth-child(4),.el-service-card:last-child { grid-column: span 1; transform: none; }
  .el-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .el-work-item--wide { grid-column: span 1; }
  .el-work-placeholder { min-height: 18rem; }
  .el-team-local__grid { grid-template-columns: .8fr 1.15fr .75fr; }
  .el-team-local__place { grid-column: auto; min-height: 17rem; }
}
@media (max-width: 39.99rem) {
  .el-home-hero { padding-block: 2.5rem 3rem; }
  .el-home-hero h1 { font-size: clamp(2.35rem, 10.8vw, 3.2rem); }
  .el-project-collage { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; height: auto; }
  .el-collage-slot { min-height: 10rem; }
  .el-collage-slot--website { grid-column: 1 / -1; min-height: 12rem; }
  .el-collage-slot--flyer,.el-collage-slot--social,.el-collage-slot--product,.el-collage-slot--event { grid-column: auto; }
  .el-collage-slot--event { grid-column: 1 / -1; min-height: 8rem; }
  .el-studio-board { min-height: 21rem; }
  .el-products__visual { min-height: 22rem; }
  .el-event-poster { min-height: 23rem; }
}

/* Final specificity for rules that intentionally supersede the identity layer. */
.home .el-service-card { min-height: 15rem; }
.home .el-help::before { display: none; }
@media (min-width: 64rem) {
  .home .el-services-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .home .el-service-card { grid-column: span 2; transform: none; }
  .home .el-service-card:nth-child(4),.home .el-service-card:last-child { grid-column: span 3; }
}
@media (max-width: 39.99rem) { .home .el-service-card { min-height: 13.5rem; } }

/* Homepage selected work: image-led, no filtering. */
.home .el-work::before,.home .el-work::after { display: none; }
.el-work-dev-notice { margin: -1rem 0 1.5rem; padding: .8rem 1rem; border-left: 3px solid var(--el-gold-dark); background: #fff8e7; color: #514a3d; font-size: .75rem; }
.el-selected-work { display: grid; gap: 1.25rem; margin-bottom: 2rem; }
.el-selected-project { min-width: 0; overflow: hidden; border: 1px solid #d2d0ca; background: #fff; }
.el-selected-project__image { aspect-ratio: 4 / 3; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: 1rem; background: #dfe1e2; }
.el-selected-project__image img { width: 100%; height: 100%; object-fit: cover; transition: transform 240ms ease; }
.el-selected-project:hover .el-selected-project__image img { transform: scale(1.015); }
.el-selected-project__body { padding: 1.25rem; }
.el-selected-project__type { margin: 0 0 .45rem; color: var(--el-gold-dark); font-size: .65rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.el-selected-project h3 { margin: 0 0 .65rem; font-size: clamp(1.25rem, 2.2vw, 1.75rem); }
.el-selected-project__body > p:not(.el-selected-project__type):not(.el-selected-project__client) { max-width: 45rem; margin: 0 0 1rem; color: var(--el-gray-500); font-size: .84rem; }
.el-selected-project__client { margin: -.25rem 0 .65rem; color: var(--el-black); font-size: .75rem; font-weight: 750; }
.el-selected-project__service { display: inline-flex; padding-top: .65rem; border-top: 1px solid var(--el-gold); color: var(--el-gray-500); font-size: .68rem; font-weight: 800; }
.el-selected-project--placeholder .el-selected-project__image { background: repeating-linear-gradient(135deg,#e3e4e3 0 18px,#ecece9 18px 36px); color: #5d5b56; }
.el-selected-project--placeholder .el-selected-project__image span,.el-selected-project--placeholder .el-selected-project__image small { width: max-content; max-width: 100%; padding: .35rem .5rem; background: #fff; font-size: .6rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
@media (min-width: 40rem) { .el-selected-work { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (min-width: 64rem) {
  .el-selected-work { grid-template-columns: repeat(12,minmax(0,1fr)); }
  .el-selected-project { grid-column: span 5; }
  .el-selected-project--wide { grid-column: span 7; }
  .el-selected-project:nth-child(4n+3) { grid-column: span 5; }
  .el-selected-project:nth-child(4n+4) { grid-column: span 7; }
  .el-selected-project__image { aspect-ratio: 16 / 10; }
}
@media (prefers-reduced-motion: reduce) { .el-selected-project__image img { transition: none; } }

/* Real-image product and event features; Etsy remains a supporting callout. */
.el-products__photo,.el-events__photo { margin: 0; }
.el-products__photo img,.el-events__photo img { width: 100%; aspect-ratio: 4 / 3; display: block; object-fit: cover; }
.el-products__photo figcaption,.el-events__photo figcaption { padding-top: .55rem; color: var(--el-gray-500); font-size: .65rem; font-weight: 750; }
.el-products__photo img { box-shadow: 10px 10px 0 var(--el-gold); }
.el-events__photo img { border: 6px solid #fff; }
.el-home-media-placeholder { min-height: clamp(20rem, 38vw, 28rem); display: flex; flex-direction: column; justify-content: space-between; padding: 1.25rem; border: 1px dashed #918d84; background: repeating-linear-gradient(135deg,#dedfdd 0 20px,#e9e8e4 20px 40px); color: #4e4b45; }
.el-home-media-placeholder span,.el-home-media-placeholder small { width: max-content; max-width: 100%; padding: .35rem .5rem; background: #fff; font-size: .62rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.el-home-media-placeholder--event { border-color: #716b61; background: repeating-linear-gradient(135deg,#2b2926 0 20px,#35322e 20px 40px); color: #111; }
.el-order-welcome { display: flex; flex-wrap: wrap; gap: .5rem; }
.el-order-welcome span { padding: .45rem .7rem; border-left: 2px solid var(--el-gold); background: rgb(255 255 255 / .5); font-size: .72rem; font-weight: 850; }
.el-products__etsy { padding: 1rem; border: 1px solid #c9bfae; border-left: 3px solid var(--el-gold-dark); background: rgb(255 255 255 / .38); }
.el-products__etsy span { color: var(--el-black); font-size: .8rem; letter-spacing: 0; text-transform: none; }
.el-events__copy { order: 0; }
.el-events__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.el-text-link--light { color: #fff; }
.el-text-link--light:hover { color: var(--el-gold-light); }
@media (min-width: 48rem) {
  .el-products__grid:not(.has-media),.el-events__grid:not(.has-media) { grid-template-columns: minmax(0,1fr); }
  .el-products__grid:not(.has-media) .el-products__copy,.el-events__grid:not(.has-media) .el-events__copy { max-width: 50rem; }
}
@media (max-width: 39.99rem) {
  .el-home-media-placeholder { min-height: 17rem; }
  .el-events__actions { align-items: stretch; }
  .el-events__actions .el-text-link { width: max-content; margin-top: .25rem; }
}

/* Consolidated trust, team and local connection. */
.el-team-local__heading { display: grid; gap: 1rem; margin-bottom: clamp(2rem,4vw,3rem); }
.el-team-local__heading h2 { margin: 0; }
.el-team-local__heading > p { max-width: 38rem; margin: 0; color: var(--el-gray-500); }
.el-team-local__content { display: grid; gap: clamp(1.5rem,4vw,3rem); align-items: stretch; }
.el-team-mini { display: grid; gap: 1rem; }
.el-team-mini__person { display: grid; grid-template-columns: 5.5rem 1fr; align-items: center; gap: 1rem; margin: 0; padding: .75rem; border-top: 2px solid var(--el-gold); background: #fff; }
.el-team-mini__person .el-home-team__portrait { width: 5.5rem; }
.el-team-mini__person figcaption { display: grid; gap: .25rem; }
.el-team-mini__person figcaption strong { font: 800 1.05rem var(--el-font-display); }
.el-team-mini__person figcaption span { color: var(--el-gray-500); font-size: .72rem; line-height: 1.45; }
.el-team-local__message { display: flex; flex-direction: column; justify-content: center; padding: clamp(1.5rem,3vw,2.5rem); background: var(--el-gold); }
.el-team-local__message h3 { max-width: 15ch; margin: 0 0 .75rem; font-size: clamp(1.75rem,3vw,2.5rem); }
.el-team-local__message > p:not(.el-eyebrow) { max-width: 32rem; margin: 0 0 1.25rem; }
.el-team-local__message .el-button { width: max-content; }
@media (min-width: 40rem) {
  .el-team-local__heading { grid-template-columns: 1fr 1fr; align-items: end; }
  .el-team-mini { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .el-team-mini__person { display: block; padding: 0 0 1rem; }
  .el-team-mini__person .el-home-team__portrait { width: 100%; }
  .el-team-mini__person figcaption { padding: .8rem .8rem 0; }
}
@media (min-width: 64rem) {
  .home .el-why-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .el-team-local__content { grid-template-columns: 1.45fr .55fr; }
}
@media (max-width: 39.99rem) { .el-team-local__message .el-button { width: 100%; } }

/* Compact homepage team introduction. */
.home .el-team-local{padding-block:clamp(3rem,5vw,4.5rem)}
.home .el-team-local__heading{margin-bottom:clamp(1.5rem,3vw,2.25rem)}
.home .el-team-mini{gap:clamp(.75rem,2vw,1.25rem)}
.home .el-team-mini__person{padding:.65rem;border-top-width:2px}
.home .el-team-mini__person .el-home-team__portrait{aspect-ratio:4/3;padding:0;border:0;box-shadow:none}
.home .el-team-mini__person figcaption{gap:.15rem;padding:.65rem .15rem .1rem}
.home .el-team-mini__person figcaption strong{font-size:1.1rem}
.home .el-team-mini__person figcaption span{font-size:.75rem}
.el-team-local__cta{display:inline-flex;min-height:44px;align-items:center;gap:.4rem;margin-top:1.25rem;color:var(--el-black);font-size:.82rem;font-weight:850;text-decoration-color:var(--el-gold);text-decoration-thickness:2px;text-underline-offset:.3em}
.el-team-local__cta:hover{color:var(--el-gold-dark)}
@media(max-width:39.99rem){.home .el-team-mini__person{grid-template-columns:6.5rem minmax(0,1fr)}.home .el-team-mini__person .el-home-team__portrait{width:6.5rem}.home .el-team-mini__person figcaption{padding:0}}

/* Controlled three-line homepage headline: shared left edge, no collage intrusion. */
.home .el-home-hero__copy{min-width:0}
.home .el-home-hero h1{width:100%;max-width:36rem;font-size:clamp(2.6rem,4.45vw,4rem);line-height:1;letter-spacing:-.045em}
.home .el-home-hero h1 span{margin:0;white-space:nowrap}
@media(min-width:48rem) and (max-width:63.99rem){.home .el-home-hero h1{font-size:clamp(2.15rem,4.2vw,2.5rem);letter-spacing:-.035em}}
@media(max-width:47.99rem){.home .el-home-hero h1{max-width:100%;font-size:clamp(2.25rem,10vw,2.8rem);line-height:1.03;letter-spacing:-.04em}.home .el-home-hero h1 span{white-space:normal}}

/* Verified testimonials and a stronger, friendly final invitation. */
.el-testimonials { background: var(--el-gray-50); }
.el-testimonials__heading { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; }
.el-testimonials__heading h2 { margin: 0; }
.el-testimonials__grid { display: grid; gap: 1rem; }
.el-testimonial { position: relative; display: grid; grid-template-columns: auto 1fr; gap: .85rem 1rem; margin: 0; padding: clamp(1.25rem,3vw,1.75rem); border-top: 2px solid var(--el-gold); background: #fff; box-shadow: var(--el-shadow-sm); }
.el-testimonial::before { content: "“"; position: absolute; top: .65rem; right: 1rem; color: #e2d1a9; font: 800 3.5rem/1 var(--el-font-display); }
.el-testimonial__image { grid-row: 1 / 3; width: 3.25rem; height: 3.25rem; overflow: hidden; border-radius: 50%; background: var(--el-gray-100); }
.el-testimonial__image img { width: 100%; height: 100%; object-fit: cover; }
.el-testimonial blockquote { grid-column: 1 / -1; margin: 0; padding-right: 2rem; }
.el-testimonial blockquote p { margin: 0; color: var(--el-black); font: 650 1rem/1.6 var(--el-font-display); }
.el-testimonial figcaption { display: grid; align-self: end; }
.el-testimonial figcaption strong { color: var(--el-black); font-size: .8rem; }
.el-testimonial figcaption span { color: var(--el-gray-500); font-size: .72rem; }
.el-testimonial figcaption small { width: max-content; margin-top: .4rem; padding-top: .35rem; border-top: 1px solid var(--el-gold); color: var(--el-gray-500); font-size: .62rem; font-weight: 750; }
.el-final-cta { background: #eee8db; }
.el-final-cta__inner { border: 2px solid var(--el-gold); box-shadow: 12px 12px 0 var(--el-gold); }
.el-final-cta p:not(.el-eyebrow) { color: #f2eee5; }
.el-final-cta .el-button--gold { border-color: var(--el-gold); background: var(--el-gold); color: var(--el-black); box-shadow: 0 5px 0 #7c5b1e; }
.el-final-cta .el-button--gold:hover { background: var(--el-gold-light); color: var(--el-black); box-shadow: 0 3px 0 #7c5b1e; }
.el-final-cta .el-button--light { border-color: #fff; background: transparent; color: #fff; }
.el-final-cta .el-button--light:hover { background: #fff; color: var(--el-black); }
@media (min-width: 48rem) { .el-testimonials__grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 39.99rem) { .el-final-cta__inner { box-shadow: 7px 7px 0 var(--el-gold); } }
.home .el-home-hero::before,.home .el-products::before { display: none; }
