:root{
  --aq-primary:#0b6e8f;
  --aq-primary-dark:#064a60;
  --aq-deep:#072a3d;
  --aq-accent:#ff7a4a;
  --aq-accent-dark:#e8632f;
  --aq-light:#eef7fa;
  --aq-text:#1c2b33;
  --aq-radius:14px;
  font-family:'Poppins',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
body{
  font-family:'Poppins',-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--aq-text);
  background:#fff;
}
h1,h2,h3,h4,.aq-font-display{
  font-weight:700;
  letter-spacing:-.01em;
}
a{color:var(--aq-primary);}
a:hover{color:var(--aq-accent-dark);}

/* ---------- Top utility bar ---------- */
.aq-topbar{
  background:var(--aq-deep);
  color:#cfe8f2;
  font-size:.82rem;
  padding:6px 0;
}
.aq-topbar a{color:#cfe8f2;text-decoration:none;}
.aq-topbar a:hover{color:#fff;}

/* ---------- Navbar ---------- */
.aq-navbar{
  background:#fff;
  padding:14px 0;
  box-shadow:0 2px 10px rgba(7,42,61,.06);
}
.aq-logo{
  display:flex;align-items:center;gap:10px;
  font-weight:800;font-size:1.5rem;color:var(--aq-deep);text-decoration:none;
}
.aq-logo:hover{color:var(--aq-primary);}
.aq-logo svg{flex-shrink:0;}
.aq-navbar .nav-link{
  font-weight:600;color:var(--aq-text);padding:.5rem 1rem;
}
.aq-navbar .nav-link:hover,
.aq-navbar .nav-link.active{color:var(--aq-primary);}
.btn-aq{
  background:var(--aq-accent);border:none;color:#fff;font-weight:700;
  border-radius:999px;padding:.6rem 1.4rem;transition:background .2s ease;
}
.btn-aq:hover{background:var(--aq-accent-dark);color:#fff;}
.btn-aq-outline{
  background:transparent;border:2px solid var(--aq-primary);color:var(--aq-primary);
  font-weight:700;border-radius:999px;padding:.55rem 1.3rem;transition:all .2s ease;
}
.btn-aq-outline:hover{background:var(--aq-primary);color:#fff;}

/* ---------- Hero ---------- */
.aq-hero{
  position:relative;min-height:560px;display:flex;align-items:center;
  background-size:cover;background-position:center;color:#fff;
  border-radius:0 0 28px 28px;overflow:hidden;
}
.aq-hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(7,42,61,.78) 0%,rgba(7,42,61,.42) 48%,rgba(7,42,61,.08) 100%);
}
.aq-hero .container{position:relative;z-index:2;}
.aq-hero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.08;margin-bottom:1rem;}
.aq-hero p.lead{font-size:1.15rem;max-width:560px;color:#eaf6fb;}
.aq-eyebrow{
  display:inline-block;background:rgba(255,255,255,.18);backdrop-filter:blur(2px);
  padding:.35rem .9rem;border-radius:999px;font-weight:700;font-size:.8rem;
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem;
}

/* ---------- Section heads ---------- */
.aq-section{padding:72px 0;}
.aq-section.soft{background:var(--aq-light);}
.aq-section-head{max-width:760px;margin:0 auto 40px;text-align:center;}
.aq-section-head h2{font-size:clamp(1.7rem,3vw,2.4rem);}
.aq-section-head p{color:#4c6773;font-size:1.05rem;}

/* ---------- Category tiles (IKEA-style photo cards) ---------- */
.aq-tile{
  position:relative;border-radius:var(--aq-radius);overflow:hidden;display:block;
  aspect-ratio:4/5;text-decoration:none;isolation:isolate;
}
.aq-tile img{
  width:100%;height:100%;object-fit:cover;transition:transform .5s ease;
}
.aq-tile:hover img{transform:scale(1.06);}
.aq-tile::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(7,42,61,.82) 0%,rgba(7,42,61,.08) 55%,transparent 75%);
}
.aq-tile-label{
  position:absolute;left:0;right:0;bottom:0;padding:20px;z-index:2;color:#fff;
}
.aq-tile-label h3{font-size:1.15rem;margin-bottom:.15rem;font-weight:700;}
.aq-tile-label span{font-size:.85rem;color:#d7ecf3;}

/* ---------- Info / feature cards ---------- */
.aq-card{
  background:#fff;border-radius:var(--aq-radius);padding:28px;height:100%;
  box-shadow:0 2px 14px rgba(7,42,61,.07);border:1px solid rgba(7,42,61,.05);
}
.aq-card .aq-ico{
  width:52px;height:52px;border-radius:50%;background:var(--aq-light);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--aq-primary);
}
.aq-card h3{font-size:1.1rem;margin-bottom:.5rem;}
.aq-card p{color:#4c6773;font-size:.95rem;margin-bottom:0;}

/* ---------- Promo band ---------- */
.aq-promo{
  background:linear-gradient(120deg,var(--aq-primary-dark),var(--aq-primary));
  border-radius:var(--aq-radius);color:#fff;padding:48px;
}
.aq-promo h2{font-size:1.8rem;}
.aq-promo p{color:#d7ecf3;}

/* ---------- Product cards (bestseller) ---------- */
.aq-product{
  background:#fff;border-radius:var(--aq-radius);overflow:hidden;height:100%;
  box-shadow:0 2px 14px rgba(7,42,61,.07);border:1px solid rgba(7,42,61,.05);
  transition:transform .2s ease,box-shadow .2s ease;
}
.aq-product:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(7,42,61,.12);}
.aq-product img{width:100%;height:210px;object-fit:cover;}
.aq-product-body{padding:20px;}
.aq-badge-bestseller{
  background:var(--aq-accent);color:#fff;font-weight:700;font-size:.72rem;
  padding:.3rem .7rem;border-radius:999px;letter-spacing:.03em;text-transform:uppercase;
}
.aq-stars{color:#f5b700;font-size:.9rem;}

/* ---------- Steps ---------- */
.aq-step-num{
  width:40px;height:40px;border-radius:50%;background:var(--aq-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:14px;
}

/* ---------- Footer ---------- */
.aq-footer{
  background:var(--aq-deep);color:#b9d6e0;padding:56px 0 24px;
}
.aq-footer h5{color:#fff;font-weight:700;font-size:1rem;margin-bottom:1rem;}
.aq-footer a{color:#b9d6e0;text-decoration:none;}
.aq-footer a:hover{color:#fff;}
.aq-footer ul{list-style:none;padding:0;margin:0;}
.aq-footer li{margin-bottom:.55rem;font-size:.92rem;}
.aq-footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:20px;
  font-size:.82rem;color:#8caebb;
}
.aq-footer-bottom a{color:#8caebb;text-decoration:underline;}

/* ---------- Cookie banner ---------- */
.aq-cookie{
  position:fixed;left:16px;right:16px;bottom:16px;max-width:520px;margin:0 auto;
  background:#fff;border-radius:var(--aq-radius);box-shadow:0 8px 30px rgba(7,42,61,.25);
  padding:20px 22px;z-index:1080;display:none;
}
.aq-cookie.show{display:block;}
.aq-cookie p{font-size:.88rem;margin-bottom:12px;color:#3a4e57;}

/* ---------- Credits table ---------- */
.aq-credits-table img{width:90px;height:60px;object-fit:cover;border-radius:6px;}

@media (max-width:767px){
  .aq-hero{min-height:460px;border-radius:0 0 20px 20px;}
  .aq-section{padding:48px 0;}
  .aq-promo{padding:32px;text-align:center;}
}
