.menu{display:flex; gap:1rem; list-style:none; padding:0; margin:0}
.site-header{display:flex; justify-content:space-between; align-items:center; padding:16px 20px; border-bottom:1px solid #eee}
.site-footer{padding:24px 20px; border-top:1px solid #eee; text-align:center}
.prose img{height:auto}


/* Hero video background */
.hero-video{position:relative; border-radius:16px; overflow:hidden; background:#000}
.hero-video video{width:100%; height:auto; display:block; object-fit:cover}
.hero-video .overlay{
  position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end;
  padding:clamp(16px,4vw,32px); color:#fff; text-shadow:0 1px 12px rgba(0,0,0,.35);
}

/* What we do */
.what-we-do{display:grid; grid-template-columns:1fr; gap:8px; position:relative}
.what-we-do ul{list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:16px}
.what-we-do a{display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #eaeaea; padding:14px 8px; transition:color .2s}
.what-we-do a:hover{color:#111}
.what-we-do .arrow{transition:transform .2s var(--ease)}
.what-we-do a:hover .arrow{transform:translateX(4px)}

/* Cursor-follow preview */
.cursor-preview{
  position:fixed; top:0; left:0; width:240px; height:180px;
  pointer-events:none; opacity:0; transform:translate(-9999px,-9999px);
  transition:opacity .2s var(--ease);
  border-radius:12px; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,.18); background:#fff;
}
.cursor-preview.is-on{opacity:1}
.cursor-preview img{width:100%; height:100%; object-fit:cover; display:block}

/* Selected works grid */
.works-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px}
.work-card{display:block; border-radius:16px; overflow:hidden; border:1px solid #eee; background:#fff}
.work-card figure{aspect-ratio:4/3; background:#f3f3f3}
.work-card .meta{padding:12px 14px; display:flex; justify-content:space-between; align-items:center}
.work-card .meta .title{font-weight:600}


/* WooCommerce product styles (light) */
.products-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px}
.products-grid .product{border:1px solid #eee; border-radius:16px; overflow:hidden; background:#fff}
.products-grid .product .woocommerce-LoopProduct-link{display:block}
.products-grid .product .attachment-woocommerce_thumbnail{width:100%; height:auto; display:block}
.products-grid .product .price{display:block; padding:8px 12px; font-weight:600}
.products-grid .product .button{margin:8px 12px 14px}

.product-layout{display:grid; grid-template-columns:1.1fr .9fr; gap:32px}
@media (max-width:900px){ .product-layout{grid-template-columns:1fr} }
.product-gallery .woocommerce-product-gallery{border:1px solid #eee; border-radius:16px; overflow:hidden}
.product-summary .price{font-size:1.25rem; font-weight:700}
.product-tabs{margin-top:32px}
.woocommerce div.product .woocommerce-tabs ul.tabs{border-bottom:1px solid #eee}


/* Filters */
.filters{margin:12px 0 24px}
.filter-row{display:flex; gap:12px; align-items:center; flex-wrap:wrap}
.filter-row label{font-weight:600}
.filter-row select{padding:.45rem .6rem; border-radius:.5rem; border:1px solid #ddd; background:#fff}

/* Project meta */
.project-meta > div{margin:.2rem 0; color:#555}
