/* Responsive premium polish — v1.3.0 */
.quick-access{position:fixed;right:1.15rem;bottom:1.15rem;z-index:88;display:grid;gap:.55rem}.quick-access-item{display:flex;align-items:center;justify-content:flex-start;width:3rem;height:3rem;overflow:hidden;border:1px solid rgba(216,160,60,.58);border-radius:1rem;background:linear-gradient(145deg,#5d0868,#36033e);color:#fff;box-shadow:0 14px 36px rgba(28,3,32,.24);transition:width .35s var(--ease),transform .25s ease,box-shadow .25s ease}.quick-access-item:hover,.quick-access-item:focus-visible{width:9.2rem;transform:translateY(-2px);box-shadow:0 18px 42px rgba(28,3,32,.32);outline:0}.quick-access-item svg{width:1.25rem;height:1.25rem;flex:0 0 1.25rem;margin:0 .86rem;fill:none;stroke:#f2c55d;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.quick-access-item span{opacity:0;color:#fff;font-size:.61rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;transition:opacity .2s ease}.quick-access-item:hover span,.quick-access-item:focus-visible span{opacity:1}.quick-whatsapp{background:linear-gradient(145deg,#4b0755,#2d0333)}
.faq-section{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);gap:clamp(3rem,8vw,9rem);align-items:start;background:linear-gradient(145deg,#fffaf6,#f4e9e7)}.faq-heading{position:sticky;top:8.5rem}.faq-heading>p:last-child{max-width:48ch;color:var(--muted)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:grid;grid-template-columns:2.3rem 1fr auto;gap:1rem;align-items:center;padding:1.55rem 0;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#a16b1b;font-size:.61rem;font-weight:700;letter-spacing:.12em}.faq-list summary strong{font-family:var(--serif);font-size:clamp(1.35rem,2vw,2.05rem);font-weight:400;line-height:1.15}.faq-list summary i{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid rgba(111,47,79,.28);border-radius:50%;color:var(--berry);font-style:normal;transition:transform .3s var(--ease),background .3s ease,color .3s ease}.faq-list details[open] summary i{background:var(--berry);color:#fff;transform:rotate(45deg)}.faq-list details>p{max-width:58ch;margin:0;padding:0 3rem 1.55rem;color:var(--muted)}
.service-tags span,.event-video-badge,.compare-label,.active-filter{border-radius:.4rem!important;box-shadow:none!important}.service-tags span{background:rgba(20,11,17,.52);border-color:rgba(216,160,60,.48);font-size:.7rem;letter-spacing:.02em}.event-video-badge{background:rgba(45,3,51,.84);border-color:rgba(216,160,60,.55)}
@media (min-width:821px) and (max-width:1366px){.site-header{gap:1.1rem;padding-left:2rem;padding-right:2rem}.brand-logo{width:clamp(155px,15vw,205px)}.desktop-nav{gap:clamp(.8rem,1.5vw,1.35rem)}.desktop-nav a{font-size:.59rem}.hero-content{padding-left:4rem}.home-service-featured{min-height:680px}.home-service-compact{min-height:210px}.event-video-featured{min-height:620px}.event-video-featured .event-video-shell{min-height:620px}.event-video-shell video{object-fit:contain}.page-hero-media,.story-hero>img,.story-gallery-card img,.vision-media img,.service-group img{object-position:center 28%}.story-photo-pair img{object-position:center 24%}}
@media(max-width:820px){.site-header{grid-template-columns:minmax(0,1fr) auto;min-height:82px;padding:.65rem 1rem;background:rgba(35,13,37,.96);backdrop-filter:blur(18px)}.site-header.is-scrolled{padding:.55rem 1rem}.brand-logo{width:116px!important;height:58px!important;margin:0;mix-blend-mode:normal}.brand-logo a{display:flex;width:100%;height:100%}.brand-logo img{width:100%;height:100%;max-width:none!important;object-fit:contain}.header-tools{gap:.5rem}.commerce-tools{display:none!important}.language-toggle{width:2.55rem;min-width:2.55rem;height:2.55rem;border-color:rgba(216,160,60,.58);background:rgba(255,255,255,.06);font-size:.61rem}.menu-button{position:relative;display:grid!important;place-content:center;width:2.75rem;height:2.75rem;border-color:rgba(216,160,60,.58);background:rgba(255,255,255,.05)}.menu-button span{width:1.05rem;margin:.13rem auto;background:#f2c55d}.menu-button[aria-expanded=true] span:first-child{transform:translateY(5px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3),.menu-button[aria-expanded=true] span:last-of-type{transform:translateY(-5px) rotate(-45deg)}.mobile-menu{z-index:85;justify-content:flex-start;overflow-y:auto;padding:7rem 1.2rem 1.5rem;background:linear-gradient(160deg,#4b0755,#240228 72%)}.mobile-menu nav,.mobile-menu nav ul{display:grid;margin:0;padding:0;list-style:none}.mobile-menu nav a{display:block;padding:.72rem 0;border-bottom-color:rgba(216,160,60,.22);font-size:clamp(1.85rem,8.5vw,2.65rem)}.mobile-actions,.mobile-commerce{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1.25rem}.mobile-actions button:not(.language-toggle),.mobile-commerce a{display:flex;align-items:center;justify-content:center;min-height:2.9rem;margin:0;padding:.7rem;border:1px solid rgba(216,160,60,.42);border-radius:.55rem;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mobile-menu>.button{width:100%;margin-top:.75rem}.star-burst{display:none!important}.section{padding:4.75rem 1rem}.display-heading{font-size:clamp(2.75rem,12vw,4.35rem)}.section-intro{gap:1.5rem}.section-intro>p{font-size:.96rem}.trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:.35rem 1rem;overflow:visible}.trust-strip p{padding:.7rem 0;font-size:.58rem;white-space:normal}.trust-strip i{display:none}.home-service-grid{margin-top:2rem}.home-service-card,.home-service-featured,.home-service-compact,.home-service-card:last-child{min-height:440px}.home-service-featured{min-height:520px}.home-service-card img{inset:0;width:100%;height:100%;animation:none;object-position:center 25%}.service-card-copy,.home-service-compact .service-card-copy{left:1.15rem;right:1.15rem;bottom:1.2rem}.home-service-card span{font-size:.82rem}.service-section-footer{gap:1.2rem}.compare-gallery{grid-template-columns:1fr;margin-top:2rem}.compare-reveal,.compare-reveal:last-child{grid-column:auto;width:100%;aspect-ratio:4/5}.compare-caption{font-size:1.35rem}.compare-label{top:.8rem}.compare-label-before{left:.8rem}.compare-label-after{right:.8rem}.compare-handle{width:3.35rem;height:3.35rem}.results-footer{gap:1.2rem}.event-video-gallery{grid-template-columns:1fr;margin-top:2rem}.event-video-featured{grid-template-columns:1fr;min-height:0}.event-video-featured .event-video-shell{min-height:0;aspect-ratio:4/5}.event-video-list{grid-template-columns:1fr;grid-template-rows:auto}.event-video-card{grid-template-columns:1fr;min-height:0}.event-video-card .event-video-shell{min-height:0;aspect-ratio:4/5}.event-video-copy,.event-video-card .event-video-copy{padding:1.3rem}.event-video-copy h3,.event-video-card .event-video-copy h3{font-size:2rem}.pro-interactor-body{grid-template-columns:1fr;padding:2rem 0}.pro-solution-menu{display:grid!important;grid-template-columns:1fr!important;order:1}.pro-visual{order:2;min-height:380px}.pro-visual svg{width:min(100%,390px)}.pro-solution-item{padding:1rem 0!important}.pro-solution-copy strong{font-size:1.75rem}.pro-solution-copy small{font-size:.68rem}.faq-section{grid-template-columns:1fr;gap:2rem}.faq-heading{position:static}.faq-list summary{grid-template-columns:1.7rem 1fr auto;gap:.7rem;padding:1.2rem 0}.faq-list summary strong{font-size:1.35rem}.faq-list details>p{padding:0 0 1.25rem 2.4rem}.service-group{min-height:460px}.service-group img{object-position:center 24%}.service-tags{gap:.4rem}.service-tags span{padding:.44rem .58rem;font-size:.67rem}.page-hero-media,.story-hero>img,.story-gallery-card img,.vision-media img{object-position:center 25%}.quick-access{right:.7rem;bottom:.7rem;gap:.4rem}.quick-access-item,.quick-access-item:hover,.quick-access-item:focus-visible{width:2.8rem;height:2.8rem;border-radius:.85rem;transform:none}.quick-access-item svg{width:1.1rem;height:1.1rem;margin:0 auto}.quick-access-item span{display:none}}
@media(max-width:420px){.site-header{padding-left:.75rem;padding-right:.75rem}.brand-logo{width:108px!important}.hero-content{padding-left:1rem;padding-right:1rem}.hero h1{font-size:clamp(2.65rem,12vw,3.75rem)}.hero-copy{font-size:.9rem}.hero-actions{gap:.65rem}.hero-actions .button{padding:.65rem .88rem;font-size:.62rem}.hero-actions .text-link{font-size:.61rem}.section{padding-left:.9rem;padding-right:.9rem}.home-service-card,.home-service-featured,.home-service-compact{min-height:420px}.compare-reveal{aspect-ratio:3/4}.event-video-featured .event-video-shell,.event-video-card .event-video-shell{aspect-ratio:3/4}.faq-list summary strong{font-size:1.2rem}}

/* WooCommerce mini-cart remains a right-side panel instead of taking the screen. */
.heydis-cart-drawer{top:.75rem!important;right:.75rem!important;bottom:.75rem!important;width:min(420px,calc(100vw - 1.5rem))!important;height:calc(100dvh - 1.5rem)!important;padding:1.2rem!important;border:1px solid rgba(216,160,60,.25);border-radius:1.25rem;overflow:hidden;box-shadow:-18px 24px 70px rgba(21,4,23,.32)}
.heydis-cart-drawer__header h2{font-size:clamp(1.75rem,3vw,2.4rem)}.heydis-cart-drawer .widget_shopping_cart_content{overflow:auto}.heydis-cart-drawer .mini_cart_item img{object-fit:contain!important;background:#fffaf4}
@media(max-width:620px){.heydis-cart-drawer{top:.4rem!important;right:.4rem!important;bottom:.4rem!important;width:calc(100vw - .8rem)!important;height:calc(100dvh - .8rem)!important;padding:1rem!important;border-radius:1rem}.heydis-cart-drawer .mini_cart_item{grid-template-columns:62px minmax(0,1fr)!important;gap:.75rem}.heydis-cart-drawer .mini_cart_item img{width:62px!important;height:72px!important}}

/* Mobile shop filters/search — previously had no responsive rules at all. */
@media(max-width:900px){
	.shop-workspace{grid-template-columns:1fr;gap:1.5rem}
	.shop-filter-toggle{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;margin-bottom:.4rem;padding:.95rem 1.2rem;border:1px solid rgba(216,160,60,.5);border-radius:999px;background:#fff;color:var(--purple);font:inherit;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
	.shop-filters{position:fixed;z-index:12000;top:0;left:0;bottom:0;align-self:auto;width:min(360px,88vw);max-height:none;border:0;border-radius:0 1.2rem 1.2rem 0;transform:translateX(-105%);transition:transform .42s cubic-bezier(.16,1,.3,1);overflow-y:auto}
	.shop-filters.is-open{transform:none}
	.shop-filters-head>button{display:block}
	.shop-filters-backdrop{position:fixed;z-index:11990;inset:0;background:rgba(26,1,30,.6);opacity:0;backdrop-filter:blur(4px);transition:opacity .35s}
	.shop-filters-backdrop.is-open{opacity:1}
	body.shop-filters-open{overflow:hidden}
	.shop-search-field input{font-size:1rem}
}
@media(max-width:480px){
	.shop-search-field>div{grid-template-columns:1fr 42px}
}

/* The community-event photo was re-cropped narrower; shorten its banner box and favor the top so the crop keeps faces instead of zooming into the crowd. */
.story-photo-grid .story-photo-wide img{height:480px;object-position:center 22%}
@media(max-width:900px){
	.story-photo-grid .story-photo-wide img{height:400px;object-position:center 22%}
}
@media(max-width:620px){
	.story-photo-grid .story-photo-wide img{height:320px;object-position:center 18%}
}

/* Header reorganization: logo far left (already first in the grid), Tienda/Carrito styled as pill "stickers", translator moved last before the hamburger.
   Tienda drops out of the header at the same width the primary nav does — it's still reachable via the slide-out menu and the floating quick-access bar. */
@media(max-width:900px){
	.shop-link{display:none}
}

/* Product/checkout/account pages: the fixed header is taller than the flat 86px offset accounted for, and doesn't add the WP admin-bar height, so its bottom edge was covering the page title (product page, checkout, my account). Push content down instead of touching the header itself. */
.heydis-commerce{padding-top:calc(118px + var(--wp-admin-bar, 0px))}

/* Related products render inconsistently across WooCommerce versions (classic ul.products markup or the newer block-based grid) — force a real grid either way instead of a single stacked column. */
.related.products ul.products,
.related.products .products,
.related.products .wc-block-grid__products,
.related.products .wc-block-related-products__list{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	gap:1.5rem!important;
	list-style:none!important;
	margin:0!important;
	padding:0!important;
}
.related.products ul.products li.product,
.related.products .wc-block-grid__product{
	width:auto!important;
	float:none!important;
	margin:0!important;
}
@media(max-width:820px){
	.related.products ul.products,
	.related.products .products,
	.related.products .wc-block-grid__products,
	.related.products .wc-block-related-products__list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
	.related.products ul.products,
	.related.products .products,
	.related.products .wc-block-grid__products,
	.related.products .wc-block-related-products__list{grid-template-columns:1fr!important}
}
