.specification-title{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-lg);color:var(--color-text-primary);margin-bottom:var(--spacing-6);font-weight:var(--font-weight-bold);text-transform:uppercase}.title-bar{width:4px;height:1.2rem;background:var(--color-primary);border-radius:var(--radius-xs)}.product-section{margin-bottom:var(--spacing-10)}.product-card{background:var(--color-white);padding:var(--spacing-7);border-radius:var(--radius-md);border:1px solid var(--color-border-light);transition:var(--transition-base)}.product-card-lg{padding:var(--spacing-8)}.product-card:hover,.product-card-hover:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl);border-color:var(--color-primary)}.image-placeholder{width:100%;background:var(--color-gray-500);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.image-placeholder span{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:#0000004d;letter-spacing:2px}.product-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-7)}.product-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-7)}.product-grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-7)}@media (max-width: 768px){.product-grid-2,.product-grid-3,.product-grid-auto{grid-template-columns:1fr}}.products-container{text-align:center;padding:var(--spacing-7) var(--spacing-4);overflow-x:hidden;width:100%;box-sizing:border-box}.products-container p{font-size:var(--font-size-lg);line-height:var(--line-height-loose);color:var(--color-gray-900);max-width:800px;margin:0 auto var(--spacing-7)}.products-container .error{color:#d32f2f;font-weight:var(--font-weight-medium)}.products-container .no-results{color:var(--color-gray-600);font-size:var(--font-size-md);margin:var(--spacing-9) 0}.search-section{max-width:1200px;margin:0 auto var(--spacing-7);display:flex;box-sizing:border-box}.search-input{width:100%;padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-base);border:2px solid var(--color-gray-400);border-radius:var(--radius-full);outline:none;transition:var(--transition-base);background:var(--color-white)}.search-input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.search-input::placeholder{color:var(--color-gray-600)}.filters-section{max-width:1200px;margin:0 auto var(--spacing-9);padding:var(--spacing-7);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:var(--spacing-6);box-sizing:border-box}.filter-group{display:grid;grid-template-columns:100px 1fr;gap:var(--spacing-4);align-items:center}.filter-group h3{font-size:var(--font-size-md);color:var(--color-text-primary);margin:0;text-align:left;font-weight:var(--font-weight-semibold)}.filter-options{display:flex;flex-wrap:wrap;gap:var(--spacing-3)}.filter-radio{display:inline-flex;align-items:center;cursor:pointer;padding:var(--spacing-3) var(--spacing-6);border:2px solid var(--color-gray-400);background:var(--color-white);border-radius:var(--radius-2xl);transition:var(--transition-base);-webkit-user-select:none;user-select:none}.filter-radio:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 2px 8px rgba(var(--color-primary-rgb),.2)}.filter-radio input[type=radio]{appearance:none;width:18px;height:18px;border:2px solid var(--color-gray-400);border-radius:50%;margin-right:var(--spacing-2);cursor:pointer;transition:var(--transition-base);position:relative}.filter-radio input[type=radio]:hover{border-color:var(--color-primary)}.filter-radio input[type=radio]:checked{border-color:var(--color-primary);background:var(--color-primary)}.filter-radio input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--color-white);border-radius:50%}.filter-radio:has(input[type=radio]:checked){background:var(--gradient-primary);border-color:transparent;box-shadow:var(--shadow-primary)}.filter-radio:has(input[type=radio]:checked) .radio-label{color:var(--color-white);font-weight:var(--font-weight-semibold)}.radio-label{font-size:.95rem;color:var(--color-text-primary);font-weight:var(--font-weight-medium);transition:var(--transition-base)}.works-section{max-width:1200px;margin:0 auto;box-sizing:border-box}.works-count{font-size:var(--font-size-md);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-6);padding-left:var(--spacing-2)}.works-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-7)}.work-card{background:var(--color-white);overflow:hidden;border:1px solid rgba(var(--color-dark-rgb),.05)}.work-image{width:100%;height:200px;overflow:hidden;background:#f0f0f0}.work-image img{width:100%;height:100%;object-fit:cover}.work-content{padding:var(--spacing-6);text-align:left}.work-title{margin-bottom:var(--spacing-4)}.work-content h3{font-size:1.3rem;color:var(--color-text-primary);margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal)}.work-title-secondary{font-size:.95rem;color:var(--color-text-secondary);margin:var(--spacing-1) 0 0 0;line-height:var(--line-height-normal);font-weight:var(--font-weight-normal)}.work-meta{display:flex;flex-direction:column;gap:var(--spacing-4);justify-content:left;align-items:start}.work-client{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.work-field{color:var(--color-primary);font-weight:var(--font-weight-semibold);font-size:.8em}.work-category{background:var(--gradient-dark);color:var(--color-text-primary);border-color:rgba(var(--color-dark-rgb),.2);border-radius:var(--radius-xl);padding:.4em .8em;font-size:.8em}.work-content p{font-size:.95rem;color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0 0 var(--spacing-2) 0}.work-content .work-period{font-size:var(--font-size-xs);color:var(--color-primary);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-2)}@media (max-width: 768px){.works-grid{grid-template-columns:1fr}.filters-section{padding:var(--spacing-6)}.filter-group{grid-template-columns:1fr;gap:var(--spacing-2)}.filter-group h3{text-align:left}.filter-radio{font-size:var(--font-size-sm);padding:var(--spacing-2) var(--spacing-5)}.filter-radio input[type=radio]{width:16px;height:16px}}
