/* Site extras on top of theme-source.css — do not override split-hero/image-hero. */
.header-dropdown { display:none; position:absolute; left:0; top:100%; background:#fff; min-width:220px; padding:16px 20px; box-shadow:0 8px 24px rgba(0,0,0,.08); z-index:30; }
.header-nav__menu-item { position:relative; }
.header-nav__menu-item:hover .header-dropdown { display:block; }
.header-dropdown__menu { list-style:none; margin:0; padding:0; }
.header-dropdown__menu a { display:block; padding:6px 0; color:#111; text-decoration:none; }
.collection-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:24px 15px 64px; max-width:1600px; margin:0 auto; }
.product-card { display:flex; flex-direction:column; }
.product-card__gallery { position:relative; background:#f5f3f0; }
.product-card__gallery-image img { width:100%; height:auto; aspect-ratio:6/7; object-fit:cover; display:block; }
.product-card__gallery-image--alt { position:absolute; inset:0; opacity:0; transition:opacity .2s; }
.product-card__gallery:hover .product-card__gallery-image--alt { opacity:1; }
.product-card__info-title { font-size:15px; margin:12px 0 4px; }
.product-card__info-title a { color:#111; text-decoration:none; }
.banner__content-container { padding:48px 15px 8px; max-width:1600px; margin:0 auto; }
.banner__title { margin:0 0 8px; }
.pdp .product-gallery__image { margin:0 0 12px; background:#f5f3f0; }
.pdp .product-gallery__image img { width:100%; height:auto; display:block; }
.col-lg-6--gallery { padding-left:15px; padding-right:15px; }
.product-detail__atc .btn { width:100%; margin-bottom:8px; }
.quantity-adjuster { display:inline-flex; align-items:center; border:1px solid #ddd; margin:16px 0; }
.quantity-adjuster input { width:56px; height:40px; border:0; text-align:center; }
.quantity-adjuster button { width:36px; height:40px; border:0; background:#f5f3f0; }
.opt-pills { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 16px; }
.opt-pill { border:1px solid #ccc; padding:8px 14px; text-decoration:none; color:#111; }
.opt-pill.is-on { border-color:#111; }
.cart-table { width:100%; border-collapse:collapse; margin:24px 0; }
.cart-table th, .cart-table td { padding:12px 8px; border-bottom:1px solid #eee; text-align:left; vertical-align:middle; }
.cart-table img { width:80px; height:auto; margin-right:12px; }
.cart-footer { padding:24px 0 48px; }
.page-header { text-align:center; padding:32px 0 8px; }
.page-header__title { margin:0; }
.checkout-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:40px; max-width:1100px; margin:0 auto; padding:16px 15px 64px; }
.rte { max-width:860px; margin:0 auto; padding:16px 15px 64px; }
.rte img { max-width:100%; height:auto; }
.header-nav__menu--mobile[hidden] { display:none !important; }
.pencil-banner { position:relative; z-index:2101; padding:8px 0; background:#000; font-size:.875rem; text-align:center; color:#fff; }
.pencil-banner a { color:#fff; text-decoration:underline; }
.pencil-banner p { margin:0; display:none; }
.pencil-banner p.is-active { display:inline; }
.product-detail-form-wrapper { padding-top:45px; }
.product-gallery__slideshow { position:relative; overflow:hidden; }
.product-gallery__slideshow .swiper-wrapper { position:relative; width:100%; }
.product-gallery__slideshow .swiper-slide { display:none; float:none; width:100%; }
.product-gallery__slideshow .swiper-slide.is-active { display:block; }
.product-gallery__slideshow .swiper-slide a { display:block; cursor:pointer; }
.product-gallery__slideshow img { width:100%; height:auto; display:block; }
.product-gallery__slideshow .swiper-pagination { position:absolute; left:0; right:0; bottom:12px; z-index:10; text-align:center; }
.product-gallery__slideshow .swiper-pagination-bullet { display:inline-block; width:8px; height:8px; margin:0 4px; border-radius:50%; background:#c4c4bd; opacity:1; cursor:pointer; }
.product-gallery__slideshow .swiper-pagination-bullet-active { background:#111; }
.swiper-arrow { cursor:pointer; }
.product-price del { opacity:.5; margin-right:8px; }
.product-price ins { text-decoration:none; }
.pdp-extra { margin-top:24px; }
.pdp-extra img { max-width:100%; height:auto; }
@media (max-width:991px) {
  .collection-grid, .checkout-layout { grid-template-columns:1fr; }
  .header-nav--hide-on-mobile { display:none; }
}
