/* HYMC INC. v5 — Components: dbrand minimal × Caribbean culture */

/* === HEADER === */
.hymc-inc-header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:var(--bg);border-bottom:1px solid var(--border);transition:transform .3s ease,box-shadow .3s ease}
.hymc-inc-header.is-scrolled{box-shadow:0 1px 8px rgba(0,0,0,.1)}
.hymc-inc-header.is-hidden{transform:translateY(-100%)}
.hymc-inc-header-inner{display:flex;align-items:center;justify-content:space-between;height:60px;gap:2rem}

/* Logo — gradient flowing through letters */
.hymc-inc-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.hymc-inc-logo img{height:36px;width:auto}
.hymc-inc-logo-text{
  font-family:var(--font-body);font-size:1.1rem;font-weight:900;letter-spacing:.1em;
  background:linear-gradient(90deg,#CE1126 0%,#FFFFFF 2%,#000000 4%,#009B3A 6%,#FED100 8.5%,#000000 10%,#00267F 12%,#FFC726 15%,#009E49 17%,#FCD116 19%,#CE1126 21%,#65CFF3 24%,#FCD116 27%,#00209F 29%,#D21034 32%,#002D62 34%,#CE1126 37%,#CE1126 39%,#FCD116 41%,#007A5E 44%,#CE1126 46%,#0072C6 48%,#FCD116 51%,#009E49 53%,#CE1126 55%,#000 57%,#00778B 59%,#FFC72C 62%,#000 64%,#0072C6 66%,#FCD116 68%,#009E49 71%,#003F87 73%,#CE1126 76%,#006B3F 78%,#FCD116 80%,#D21034 82%,#377E3F 84%,#FFF 86%,#B40A2D 88%,#003DA5 91%,#F9E814 94%,#CE1126 100%);
  background-size:600% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  animation:logoFlow 60s linear infinite;
}
@keyframes logoFlow{0%{background-position:0% 50%}100%{background-position:600% 50%}}

/* === NAV === */
.hymc-inc-nav{flex:1;display:flex;justify-content:center}
.hymc-inc-nav>ul{list-style:none;display:flex;align-items:center;gap:0;margin:0;padding:0}
.hymc-inc-nav>ul>li>a{display:inline-flex;align-items:center;padding:.45rem .65rem;font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);text-decoration:none;transition:color .15s}
.hymc-inc-nav>ul>li>a:hover,.hymc-inc-nav>ul>li.current-menu-item>a,.hymc-inc-nav>ul>li.current_page_item>a{color:var(--text)}
.hymc-inc-nav>ul>li{position:relative}
.hymc-inc-nav>ul>li>.sub-menu{position:absolute;top:calc(100% + 2px);left:0;min-width:200px;padding:.5rem 0;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);list-style:none;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,visibility .15s,transform .15s;z-index:100}
.hymc-inc-nav>ul>li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.hymc-inc-nav .sub-menu li a{display:block;padding:.45rem 1.1rem;font-size:.8rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-2);transition:color .12s}
.hymc-inc-nav .sub-menu li a:hover{color:var(--text)}

/* === HEADER ACTIONS === */
.hymc-inc-header-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}
.hymc-inc-theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:0;color:var(--text-3);cursor:pointer;position:relative;overflow:hidden;transition:color .15s,border-color .15s}
.hymc-inc-theme-toggle:hover{color:var(--text);border-color:var(--border-h)}
.hymc-inc-theme-toggle svg{position:absolute;transition:transform .3s ease,opacity .2s}
.hymc-inc-theme-toggle .hymc-icon-sun{transform:scale(0) rotate(-90deg);opacity:0}
.hymc-inc-theme-toggle .hymc-icon-moon{transform:scale(1);opacity:1}
[data-theme="light"] .hymc-inc-theme-toggle .hymc-icon-sun{transform:scale(1) rotate(0);opacity:1}
[data-theme="light"] .hymc-inc-theme-toggle .hymc-icon-moon{transform:scale(0) rotate(90deg);opacity:0}
.hymc-inc-cart{display:flex;align-items:center;justify-content:center;position:relative;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);color:var(--text-3);transition:color .15s,border-color .15s}
.hymc-inc-cart:hover{color:var(--text);border-color:var(--border-h)}
.hymc-inc-cart-count{position:absolute;top:-3px;right:-3px;min-width:15px;height:15px;padding:0 3px;font-size:.5rem;font-weight:700;line-height:15px;text-align:center;border-radius:8px;background:var(--red);color:#fff}
.hymc-inc-burger{display:none;flex-direction:column;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:50%;background:0;cursor:pointer;padding:0;gap:3.5px;align-items:center}
.hymc-inc-burger span{display:block;width:13px;height:1.5px;background:var(--text-2);border-radius:1px;transition:transform .2s,opacity .2s}
.hymc-inc-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.hymc-inc-burger.is-active span:nth-child(2){opacity:0}
.hymc-inc-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

/* === MOBILE MENU === */
.hymc-inc-mobile-menu{position:fixed;top:0;right:-100%;width:100%;max-width:340px;height:100dvh;background:var(--bg);border-left:1px solid var(--border);z-index:10000;overflow-y:auto;transition:right .3s ease}
.hymc-inc-mobile-menu[aria-hidden="false"]{right:0}
.hymc-inc-mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9999;opacity:0;visibility:hidden;transition:opacity .25s;pointer-events:none}
.hymc-inc-mobile-overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}
.hymc-inc-mobile-top{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.2rem;border-bottom:1px solid var(--border)}
.hymc-inc-mobile-brand{font-size:.85rem;font-weight:800;letter-spacing:.05em;color:var(--text)}
.hymc-inc-mobile-close{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:0;color:var(--text-2);cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center}
.hymc-inc-mobile-close:hover{color:var(--red);border-color:var(--red)}
.hymc-inc-mobile-menu ul{list-style:none;padding:0;margin:0}
.hymc-inc-mobile-menu ul li a{display:block;padding:.7rem 1.2rem;font-size:.8rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);text-decoration:none;border-bottom:1px solid var(--border);transition:color .12s}
.hymc-inc-mobile-menu ul li a:hover,.hymc-inc-mobile-menu ul li.current-menu-item>a{color:var(--accent)}
.hymc-inc-mobile-menu .sub-menu{max-height:0;overflow:hidden;transition:max-height .25s ease}
.hymc-inc-mobile-menu .sub-menu a{padding-left:2.2rem;font-size:.75rem;text-transform:none}
.hymc-inc-mobile-ctas{padding:1rem 1.2rem;display:flex;flex-direction:column;gap:.5rem}

/* === HERO — 15% bg, no rainbow bar === */
.hymc-inc-hero{position:relative;min-height:88vh;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-top:60px;background:var(--bg)}
.hymc-inc-hero-media{position:absolute;inset:0;z-index:0;opacity:.15}
.hymc-inc-hero-media img,.hymc-inc-hero-media video{width:100%;height:100%;object-fit:cover}
.hymc-inc-hero-slides{position:absolute;inset:0}
.hymc-inc-hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;background-size:cover;background-position:center}
.hymc-inc-hero-slide.is-active{opacity:1}
.hymc-inc-hero-overlay{display:none}
.hymc-inc-hero-video-embed{position:absolute;inset:0;overflow:hidden}
/* NO rainbow bar — clean bottom edge */
.hymc-inc-hero-inner{position:relative;z-index:2;text-align:center;padding:3rem 0}
.hymc-inc-hero-content{max-width:660px;margin:0 auto}
.hymc-inc-hero-kicker{display:block;font-size:.65rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);margin-bottom:1.5rem}
.hymc-inc-hero-title{font-size:clamp(2rem,5.5vw,3.6rem);font-weight:900;color:var(--text);line-height:1.08;margin-bottom:1.1rem}
.hymc-inc-hero-title .hymc-gradient-text{-webkit-text-fill-color:transparent}
.hymc-inc-hero-sub{font-size:.95rem;color:var(--text-3);line-height:1.6;margin-bottom:2rem;max-width:480px;margin-left:auto;margin-right:auto}
.hymc-inc-hero-cta{display:flex;justify-content:center;gap:.6rem;margin-bottom:1.5rem;flex-wrap:wrap}
.hymc-inc-hero-pills{display:flex;justify-content:center;gap:.35rem;flex-wrap:wrap}
.hymc-inc-hero-pills .hymc-inc-pill{color:var(--text-3);border-color:var(--border)}

/* === PAGE HERO — no rainbow bar === */
.hymc-inc-page-hero{position:relative;min-height:180px;display:flex;align-items:center;margin-top:60px;background:var(--bg-muted)}
.hymc-inc-page-hero__inner{text-align:center;padding:3rem 0 2rem;width:100%}
.hymc-inc-page-hero__title{font-size:clamp(1.4rem,3.5vw,2.2rem);font-weight:900;margin-bottom:.35rem}
.hymc-inc-page-hero__subtitle{font-size:.88rem;color:var(--text-2);max-width:440px;margin:0 auto}

/* === PRODUCT CARDS — dbrand-style grid === */
.hymc-inc-product-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s}
.hymc-inc-product-card:hover{border-color:var(--border-h)}
.hymc-inc-product-card__image{aspect-ratio:1/1;overflow:hidden;background:var(--bg-muted)}
.hymc-inc-product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.hymc-inc-product-card:hover .hymc-inc-product-card__image img{transform:scale(1.03)}
.hymc-inc-product-card__body{padding:.8rem;flex:1;display:flex;flex-direction:column}
.hymc-inc-product-card__title{font-family:var(--font-body);font-size:.8rem;font-weight:600;color:var(--text);margin-bottom:.15rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hymc-inc-product-card__title a{color:inherit;text-decoration:none}
.hymc-inc-product-card__price{font-size:.8rem;font-weight:700;color:var(--text);margin-bottom:.5rem}
.hymc-inc-product-card__price del{color:var(--text-3);font-weight:400;font-size:.72rem}
.hymc-inc-product-card__price ins{text-decoration:none;color:var(--red)}
.hymc-inc-product-card .button,.hymc-inc-product-card .add_to_cart_button{display:block;width:100%;margin-top:auto;padding:.5rem;font-family:var(--font-body);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-align:center;text-decoration:none;background:var(--text);color:var(--bg);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}
.hymc-inc-product-card .button:hover,.hymc-inc-product-card .add_to_cart_button:hover{background:var(--accent);color:#fff}

/* === GENERAL CARDS === */
.hymc-inc-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:border-color .2s}
.hymc-inc-card:hover{border-color:var(--border-h)}
.hymc-inc-card__image{overflow:hidden;aspect-ratio:4/5;background:var(--bg-muted)}
.hymc-inc-card__image img{width:100%;height:100%;object-fit:cover}
.hymc-inc-card__body{padding:1rem}
.hymc-inc-card__title{font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--text)}

/* === PILLAR === */
.hymc-inc-pillar-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-align:center;transition:border-color .2s}
.hymc-inc-pillar-card:hover{border-color:var(--border-h)}
.hymc-inc-pillar-card__icon{font-size:1.6rem;margin-bottom:.5rem}
.hymc-inc-pillar-card__title{font-size:.88rem;font-weight:700;margin-bottom:.3rem}
.hymc-inc-pillar-card__text{font-size:.78rem;color:var(--text-2);line-height:1.5}

/* === CARNIVAL === */
.hymc-inc-carnival-card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:220px;display:flex;align-items:flex-end}
.hymc-inc-carnival-card__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .4s ease}
.hymc-inc-carnival-card:hover .hymc-inc-carnival-card__bg{transform:scale(1.03)}
.hymc-inc-carnival-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.75) 100%)}
.hymc-inc-carnival-card__content{position:relative;z-index:2;padding:1.1rem;width:100%}
.hymc-inc-carnival-card__title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.1rem}
.hymc-inc-carnival-card__sub{font-size:.72rem;color:rgba(255,255,255,.45)}

/* === POST / RECIPE === */
.hymc-inc-post-card,.hymc-inc-recipe-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:border-color .2s}
.hymc-inc-post-card:hover,.hymc-inc-recipe-card:hover{border-color:var(--border-h)}
.hymc-inc-post-card__image{aspect-ratio:16/10;overflow:hidden;background:var(--bg-muted)}
.hymc-inc-recipe-card__image{aspect-ratio:3/2;overflow:hidden;background:var(--bg-muted)}
.hymc-inc-post-card__image img,.hymc-inc-recipe-card__image img{width:100%;height:100%;object-fit:cover}
.hymc-inc-post-card__body,.hymc-inc-recipe-card__body{padding:1rem}
.hymc-inc-post-card__category{font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin-bottom:.25rem}
.hymc-inc-post-card__title,.hymc-inc-recipe-card__title{font-family:var(--font-display);font-size:.92rem;font-weight:700;margin-bottom:.2rem;line-height:1.3}
.hymc-inc-post-card__title a{color:var(--text);text-decoration:none}
.hymc-inc-post-card__excerpt{font-size:.78rem;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hymc-inc-post-card__meta,.hymc-inc-recipe-card__meta{font-size:.68rem;color:var(--text-3)}

/* === FAQ === */
.hymc-inc-faq-item{border-bottom:1px solid var(--border)}
.hymc-inc-faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1rem 0;font-family:var(--font-body);font-size:.92rem;font-weight:600;color:var(--text);background:0;border:0;cursor:pointer;text-align:left;transition:color .12s}
.hymc-inc-faq-question:hover{color:var(--accent)}
.hymc-inc-faq-question::after{content:'+';font-size:1.1rem;font-weight:300;flex-shrink:0;margin-left:.8rem}
.hymc-inc-faq-item.is-open .hymc-inc-faq-question::after{content:'−'}
.hymc-inc-faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}
.hymc-inc-faq-item.is-open .hymc-inc-faq-answer{max-height:500px;padding-bottom:1rem}
.hymc-inc-faq-answer p{font-size:.82rem;color:var(--text-2);line-height:1.6}

/* === FOOTER === */
.hymc-inc-footer{background:var(--bg-muted);border-top:1px solid var(--border)}
.hymc-inc-footer-newsletter-band{padding:2.5rem 0;border-bottom:1px solid var(--border)}
.hymc-inc-newsletter-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.hymc-inc-newsletter-text h3{font-size:1.1rem;margin-bottom:.1rem}
.hymc-inc-newsletter-text p{color:var(--text-2);font-size:.82rem;margin:0}
.hymc-inc-signup-form{display:flex;gap:.35rem}
.hymc-inc-signup-form input[type="email"]{padding:.6rem .85rem;min-width:140px;font-family:var(--font-body);font-size:.82rem;background:var(--input-bg);color:var(--input-text);border:1px solid var(--input-border);border-radius:var(--radius-sm)}
.hymc-inc-signup-form input:focus{outline:none;border-color:var(--accent)}
.hymc-inc-signup-form input::placeholder{color:var(--text-3)}
.hymc-inc-footer-grid{display:grid;grid-template-columns:1.2fr 2fr;gap:2.5rem;padding:3rem 0 2rem}
.hymc-inc-footer-logo{height:30px;width:auto;margin-bottom:.5rem}
.hymc-inc-footer-brand-name{font-size:.92rem;font-weight:800;letter-spacing:.04em;color:var(--text);margin-bottom:.35rem}
.hymc-inc-footer-tagline{font-size:.78rem;color:var(--text-2);line-height:1.5;margin-bottom:.7rem}
.hymc-inc-footer-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.hymc-inc-footer-heading{font-family:var(--font-body);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);margin-bottom:.45rem}
.hymc-inc-footer-links{display:flex;flex-direction:column;gap:.2rem}
.hymc-inc-footer-links a{font-size:.78rem;color:var(--text-2);text-decoration:none;padding:.08rem 0}
.hymc-inc-footer-links a:hover{color:var(--accent)}
.hymc-inc-footer-bottom{border-top:1px solid var(--border)}
.hymc-inc-footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;font-size:.68rem;color:var(--text-3)}

/* Fix: sub-menu must be column, not flex-row */
.hymc-inc-nav .sub-menu{display:flex;flex-direction:column}
.hymc-inc-nav .sub-menu li{width:100%}

/* ═══ HERO VIDEO PLAYLIST CROSSFADE ═══ */
.hymc-inc-hero-video-playlist{position:absolute;inset:0}
.hymc-inc-hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease}
.hymc-inc-hero-vid--active{opacity:1}

/* Footer SVG logo */
.hymc-inc-footer-logo{height:60px!important;width:auto!important;display:block;margin-bottom:.5rem}

/* Footer logo dark/light toggle */
.hymc-inc-footer-logo--light{display:none}
[data-theme="light"] .hymc-inc-footer-logo--dark{display:none}
[data-theme="light"] .hymc-inc-footer-logo--light{display:block}
