/* ═══════════════════════════════════════════════════════════
   HERO GLASSES — the 3D model, centered where the headline used to
   dominate. In-flow (not fixed): it scrolls away with the rest of the
   hero, no scroll-driven fade math needed.
   ═══════════════════════════════════════════════════════════ */
.hero-glasses{
  width:min(64vw,760px);height:min(46vw,560px);
  margin:8px auto -10px;
  pointer-events:none;
  filter:drop-shadow(0 50px 70px rgba(11,61,110,0.22));
}
.hero-glasses-canvas{
  display:block;width:100%;height:100%;
  opacity:0;transition:opacity 1s ease;
}
.hero-glasses-canvas.ready{opacity:1;}

@media (max-width: 1024px){
  .hero-glasses{width:min(78vw,620px);height:min(56vw,460px);}
}
@media (max-width: 640px){
  .hero-glasses{width:88vw;height:64vw;margin:0 auto -6px;}
}

/* ═══════════════════════════════════════════════════════════
   POLAR COLLECTION — real catalogue grid
   ═══════════════════════════════════════════════════════════ */
.polar-col{background:var(--bg-soft);}
.polar-col-aside{display:flex;flex-direction:column;align-items:flex-end;gap:16px;}

.polar-grid{grid-template-columns:repeat(4,1fr);gap:20px;}
.polar-grid .card{opacity:1;transform:none;}
.polar-grid .card-stage{padding:14px 14px 0;background:#fff;}
.polar-grid .card-stage::after{display:none;}
.polar-grid .card-aspect{aspect-ratio:4 / 3;background:#fff;}
.card-aspect-btn{
  display:block;width:100%;height:100%;padding:0;border:0;background:transparent;
  position:relative;cursor:zoom-in;border-radius:12px;overflow:hidden;
}
.card-aspect-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.polar-img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.3,1);
}
.polar-grid .card:hover .polar-img{transform:scale(1.045);}
.card-zoom{
  position:absolute;right:10px;bottom:10px;width:32px;height:32px;
  display:grid;place-items:center;border-radius:50%;
  background:rgba(255,255,255,0.92);color:var(--navy);
  opacity:0;transform:scale(.85);
  transition:opacity .25s ease, transform .25s ease;
  box-shadow:0 6px 16px -6px rgba(11,61,110,0.35);
}
.card:hover .card-zoom{opacity:1;transform:scale(1);}
.polar-grid .card-body{padding:16px 18px 18px;gap:2px;}
.polar-grid .card-name{font-size:15px;letter-spacing:-0.005em;}

.polar-wa{
  margin-top:12px;font-size:12.5px;font-weight:500;color:var(--navy);
  display:inline-flex;align-items:center;gap:6px;
  opacity:0;transform:translateY(4px);
  transition:opacity .3s ease, transform .3s ease, color .2s ease;
}
.polar-wa:hover{color:var(--accent);}
.card:hover .polar-wa,
.polar-wa:focus-visible{opacity:1;transform:none;}

.polar-more{display:flex;justify-content:center;margin-top:44px;}

@media (max-width: 1200px){ .polar-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width: 860px){  .polar-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width: 640px){
  .polar-col-aside{align-items:flex-start;}
  .polar-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
  .polar-wa{opacity:1;transform:none;}
}

/* ═══════════════════════════════════════════════════════════
   LIGHTBOX — large photo preview for the Polar collection
   ═══════════════════════════════════════════════════════════ */
.lightbox{
  position:fixed;inset:0;z-index:2000;
  background:rgba(4,15,28,0.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  display:grid;place-items:center;padding:clamp(16px,5vw,64px);
  animation:lbFadeIn .2s ease;
}
@keyframes lbFadeIn{from{opacity:0;}to{opacity:1;}}

.lightbox-close{
  position:absolute;top:20px;right:20px;z-index:2;
  width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;color:#fff;
  background:rgba(255,255,255,0.1);
  transition:background .2s ease, transform .2s ease;
}
.lightbox-close:hover{background:rgba(255,255,255,0.2);transform:rotate(90deg);}

.lightbox-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:2;
  width:48px;height:48px;border-radius:50%;
  display:grid;place-items:center;color:#fff;
  background:rgba(255,255,255,0.1);
  transition:background .2s ease;
}
.lightbox-nav:hover{background:rgba(255,255,255,0.2);}
.lightbox-nav.prev{left:clamp(8px,3vw,32px);}
.lightbox-nav.next{right:clamp(8px,3vw,32px);}

.lightbox-figure{
  width:100%;max-width:1000px;max-height:88vh;
  display:flex;flex-direction:column;align-items:center;gap:20px;
}
.lightbox-img{
  max-width:100%;max-height:66vh;object-fit:contain;
  border-radius:16px;background:#fff;
  box-shadow:0 40px 90px -30px rgba(0,0,0,0.6);
}
.lightbox-figure figcaption{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  width:100%;max-width:640px;color:#fff;
}
.lightbox-figure .card-cat{color:rgba(255,255,255,0.6);}
.lightbox-figure .card-name{font-size:19px;color:#fff;}

@media (max-width: 640px){
  .lightbox-nav{width:40px;height:40px;}
  .lightbox-figure figcaption{flex-direction:column;align-items:flex-start;gap:14px;}
  .lightbox-figure figcaption .btn{width:100%;justify-content:center;}
}
