/* style.css for Yêu Cá Koi demo v3 */
:root{
  --red:#e63946;
  --black:#0b0b0b;
  --muted:#9ca3af;
  --white:#fff;
  --card-bg:#0f1724;
  --container-width:1200px;
  --radius:12px;
}
*{box-sizing:border-box}
body{font-family:Roboto,system-ui,Arial,sans-serif;margin:0;background:#08080a;color:var(--white);-webkit-font-smoothing:antialiased}
.container{width:min(var(--container-width),100%);margin:0 auto}
a:hover {
    text-decoration: none;
    color: transparent;
}
/* Header */
.site-header{background:var(--black);position:sticky;top:0;z-index:60;box-shadow:0 6px 18px rgba(0,0,0,0.5)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;gap:12px;align-items:center}
.logo{width:56px;height:56px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff}
.brand h1{font-size:20px;margin:0; color: #FFFFFF;}
.tag{margin:0;color:var(--muted);font-size:13px;padding-top: 5px;}
.nav a{color:#fff;margin-left:14px;text-decoration:none;font-weight:600;opacity:0.95}

/* Hero */
.hero{position:relative;height:78vh;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:contrast(1.02) saturate(1.05)}
.hero-overlay{position:relative;z-index:2;background:linear-gradient(180deg, rgba(3,3,3,0.45) 0%, rgba(3,3,3,0.6) 100%);width:100%;padding:60px 0;display:flex;align-items:center;justify-content:center}
.hero-content{text-align:center;color:var(--white);padding:30px}
.eyebrow{letter-spacing:2px;color:var(--red);margin:0;font-weight:700}
.hero-title{font-size:40px;margin:12px 0 8px;line-height:1.05}
.hero-desc{color:#e6e6e6;max-width:700px;margin:0 auto}

/* buttons */
.btn{display:inline-block;padding:12px 18px;border-radius:8px;font-weight:700;text-decoration:none;margin:6px}
.btn-primary{background:var(--red);color:#fff;border:0;transition:transform .25s ease,box-shadow .25s}
.btn-primary:hover{transform:scale(1.05);box-shadow:0 8px 30px rgba(230,57,70,0.16)}
.btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,0.12)}
.btn-zalo{background:#0068ff;color:#fff}

/* section */
.section{padding:25px 0}
.section-head{margin-bottom:20px}
.section-head h2{font-size:28px;margin:0;color:var(--red); font-weight: bold;}
.muted{color:var(--muted)}

/* featured */
.featured{display:flex;gap:20px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));border-radius:12px;padding:12px;margin-bottom:18px}
.featured-media iframe{width:560px;height:315px;border-radius:10px;border:0}
.featured-body{flex:1;color:#fff}

/* cards grid */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:12px}
.card{background:linear-gradient(180deg,#0b0f14,#071018);border-radius:12px;overflow:hidden;transition:transform .25s,box-shadow .25s;cursor:pointer;border:1px solid rgba(255,255,255,0.03)}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,0.6)}
.card img{width:100%;height:180px;object-fit:cover;display:block}
.card-body{padding:14px}
.card-title a{margin:0 0 8px;font-size:16px;color:#fff; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: -webkit-box;}
.card-excerpt{color:var(--muted);margin:0 0 10px; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical; display: -webkit-box;}
.card-toggle{background:transparent;border:0;color:var(--red);font-weight:700;cursor:pointer;padding:6px 0}

/* product specifics */
.product-meta{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.price{color:var(--red);font-weight:900;font-size:18px}

/* full-width detail panel */
.full-detail{background:linear-gradient(180deg,#071018,#061018);padding:20px;border-radius:12px;margin:22px auto;max-width:var(--container-width);color:#fff;box-shadow:0 20px 60px rgba(0,0,0,0.6)}
.detail-inner{position:relative}
.detail-close{position:absolute;right:10px;top:10px;background:transparent;border:0;color:var(--muted);font-weight:700;cursor:pointer}
.detail-media iframe{width:100%;height:420px;border-radius:8px;border:0;margin-bottom:12px}
.detail-image{width:100%;height:360px;object-fit:cover;border-radius:8px;margin-bottom:12px}
.detail-content p{color:#e6e6e6}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.contact-info a{color: #FFFFFF}
.map-wrap iframe{width:100%;height:300px;border-radius:8px;border:0}

/* footer */
.site-footer{background:#000;color:#777;padding:18px 0;margin-top:30px}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}

/* floating buttons */
.floating-buttons{position:fixed;right:20px;bottom:90px;display:flex;flex-direction:column;gap:36px;z-index:999}
.floating-button{width:50px;height:50px;border-radius:50%;display:block;box-shadow:0 8px 24px rgba(0,0,0,0.3)}
.floating-button.zalo{background:#0068ff url('/frontend/images/icon_zalo.svg') center/54% no-repeat}
.floating-button.phone{background:#009f0c url('/frontend/images/icon_phone.svg') center/54% no-repeat}
.floating-button.messenger{background:#0084ff url('/frontend/images/icon-fb.png') center/100% no-repeat}

/* responsive */
@media (max-width:1000px){
  .featured-media iframe{width:100%;height:220px}
  .hero-title{font-size:28px}
  .hero{height:60vh}
  .detail-media iframe{height:260px}
}
/* View All Buttons Styling */
.btn-lg.btn-danger {
  padding: 8px 32px;
  font-size: 16px;
  font-weight: 600;
  border-width: 2px;
  border-radius: 50px;
  letter-spacing: 1px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  background: linear-gradient(135deg, #dc3545, #c82333);
  border-color: #dc3545;
  color: white;
}

.btn-lg.btn-danger:hover {
  background: linear-gradient(135deg, #c82333, #a71e2a);
  border-color: #a71e2a;
  color: white;
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(220, 53, 69, 0.4);
}

.btn-lg.btn-danger:active,
.btn-lg.btn-danger:focus {
  background: linear-gradient(135deg, #a71e2a, #8b1a20);
  border-color: #8b1a20;
  color: white;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

/* Icon Animations */
.btn-lg i.fa-arrow-right {
  transition: transform 0.3s ease;
}

.btn-lg:hover i.fa-arrow-right {
  transform: translateX(5px);
}

/* Pulse Animation for Enhanced Interaction */
.btn-lg::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  transition: all 0.4s ease;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.btn-lg:hover::before {
  width: 300px;
  height: 300px;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .btn-lg.btn-danger {
      padding: 10px 24px;
      font-size: 14px;
      letter-spacing: 0.5px;
  }
}

/* Enhanced Focus States for Accessibility */
.btn-lg.btn-danger:focus {
  outline: 3px solid rgba(220, 53, 69, 0.5);
  outline-offset: 2px;
}