.bonsai-card{box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .2s ease}.bonsai-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.15)}@media (max-width:640px){.bonsai-card:hover{transform:none}}.bonsai-tile{display:block;background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;text-decoration:none;color:inherit}.bonsai-tile:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.15)}@media (min-width:640px){.bonsai-tile{border-radius:12px}.bonsai-tile:hover{transform:translateY(-4px)}}.image-container{position:relative;width:100%;aspect-ratio:4/3;min-height:200px;background:#f5f5f5}@media (min-width:640px){.image-container{min-height:250px;aspect-ratio:auto}}.bonsai-image{-o-object-fit:contain!important;object-fit:contain!important;width:100%!important;height:auto!important;position:relative!important}.no-image-placeholder{width:100%;height:250px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;color:#999}.tree-info{padding:16px;background:white}.tree-info h3{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#1a1a1a}.tree-info .height{margin:0 0 8px;color:#666;font-size:.95rem}.tree-info .price{margin:0;font-size:1.5rem;font-weight:700;color:#2c5530}.no-trees-message{text-align:center;padding:40px 20px;color:#666;width:100%}.no-trees-message p{margin:0 0 16px;font-size:1rem;line-height:1.5}@media (min-width:640px){.no-trees-message{padding:60px 20px}.no-trees-message p{font-size:1.1rem}}.contact-link{display:inline-block;background:#2c5530;color:white;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:500;transition:background-color .2s ease;font-size:.9rem}.contact-link:hover{background:#1a3d1e}@media (min-width:640px){.contact-link{padding:12px 24px;font-size:1rem}}.site-header{text-align:center;padding:30px 16px;background:linear-gradient(135deg,#2c5530,#4a7c59);color:white;margin-bottom:0}.site-header h1{margin:0 0 12px;font-size:1.8rem;font-weight:700;line-height:1.2}.site-header p{margin:0;font-size:.9rem;opacity:.9;line-height:1.4}@media (min-width:640px){.site-header{padding:40px 20px}.site-header h1{font-size:2.5rem;margin:0 0 16px}.site-header p{font-size:1.2rem}}