  :root{
    --ink:#0B2A43;
    --paper:#FBFDFE;
    --paper-2:#EAF3F7;
    --blue:#2BAAE1;
    --blue-deep:#1D84B3;
    --green:#4EB657;
    --green-deep:#3B9345;
    --red:#EA2227;
    --line:rgba(11,42,67,0.16);
    --grey:#5C7286;
    --maxw:1180px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:'Source Serif 4', Georgia, serif;
    font-size:17px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{
    font-family:'Fraunces', Georgia, serif;
    font-weight:700;
    line-height:1.05;
    margin:0 0 .5em;
    letter-spacing:-0.01em;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  .kicker{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:13px;
    color:var(--green);
  }
  .rule{border:none;border-top:1px solid var(--line);margin:48px 0;}
  .rule.thick{border-top:3px solid var(--ink);}

  /* ===== Masthead ===== */
  .topbar{
    background:var(--ink);
    color:var(--paper);
    font-family:'Barlow Condensed',sans-serif;
    font-size:12.5px;
    letter-spacing:.06em;
  }
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;}
  .topbar a{opacity:.85;}
  .topbar a:hover{opacity:1;color:var(--blue);}

  .masthead{
    background:var(--paper);
    border-bottom:4px solid var(--ink);
    position:sticky;top:0;z-index:50;
  }
  .masthead-inner{
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 0;
  }
  .brand{
    display:flex;align-items:baseline;gap:10px;
  }
  .brand-mark{
    font-family:'Fraunces',serif;
    font-weight:900;
    font-size:30px;
    letter-spacing:-0.02em;
    display:inline-flex;align-items:center;gap:5px;
    white-space:nowrap;
  }
  .brand-mark .accent{color:var(--blue-deep);}
  .brand-icon{
    height:16px;width:auto;display:block;flex:0 0 auto;
    align-self:center;
  }
  .brand-sub{
    font-family:'Barlow Condensed',sans-serif;
    font-size:11px;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:var(--grey);
    border-left:1px solid var(--line);
    padding-left:10px;
  }
  nav.primary{
    display:flex;gap:26px;
    font-family:'Barlow Condensed',sans-serif;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:14px;
  }
  nav.primary a{position:relative;padding:4px 0;}
  nav.primary a:after{
    content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;
    background:var(--blue);transform:scaleX(0);transform-origin:left;
    transition:transform .2s ease;
  }
  nav.primary a:hover:after{transform:scaleX(1);}
  .nav-toggle{display:none;}

  /* ===== Hero ===== */
  .issue-line{
    display:flex;align-items:center;gap:14px;
    padding:22px 0 8px;
    font-family:'Barlow Condensed',sans-serif;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:12.5px;
    color:var(--grey);
  }
  .issue-line .dot{width:6px;height:6px;background:var(--blue-deep);border-radius:50%;}
  .hero h1{
    font-size:clamp(34px,5.2vw,64px);
    max-width:920px;
  }
  .hero-lede{
    font-family:'Barlow Condensed',sans-serif;
    text-transform:uppercase;
    letter-spacing:.05em;
    font-size:18px;
    color:var(--ink);
    max-width:760px;
    margin:18px 0 34px;
    font-weight:600;
  }

  /* ===== Frame device (signature accent frame) ===== */
  .frame{
    position:relative;
    padding:14px;
    background:var(--blue);
    margin:0 0 6px;
  }
  .frame-inner{background:#000;position:relative;overflow:hidden;}

  .media-photo{
    aspect-ratio:16/10;
    background:
      repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 0 2px, transparent 2px 14px),
      linear-gradient(145deg,#2b2b26,#100f0c 70%);
    display:flex;align-items:center;justify-content:center;
    color:rgba(234,243,247,0.55);
    text-align:center;
  }
  .media-video{
    aspect-ratio:16/9;
    background:linear-gradient(145deg,#1c1c18,#0b0b09 75%);
    display:flex;align-items:center;justify-content:center;
    position:relative;
  }
  .ph-label{
    font-family:'Barlow Condensed',sans-serif;
    letter-spacing:.18em;
    text-transform:uppercase;
    font-size:12px;
  }
  .ph-sub{
    font-family:'Barlow Condensed',sans-serif;
    font-size:11px;
    letter-spacing:.1em;
    opacity:.6;
    margin-top:4px;
  }
  .ph-icon{
    width:46px;height:46px;border:1.5px solid rgba(234,243,247,0.45);
    border-radius:50%;display:flex;align-items:center;justify-content:center;
    margin:0 auto 12px;
  }
  .play-btn{
    width:64px;height:64px;border-radius:50%;
    background:var(--blue);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 14px;
    box-shadow:0 0 0 10px rgba(43,170,225,0.16);
  }
  .play-btn:after{
    content:"";
    border-left:16px solid var(--ink);
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
    margin-left:4px;
  }
  .caption{
    font-family:'Barlow Condensed',sans-serif;
    font-size:12.5px;
    color:var(--grey);
    letter-spacing:.02em;
    padding-top:6px;
    display:flex;justify-content:space-between;gap:12px;
  }
  .caption .tag{color:var(--green);font-weight:600;text-transform:uppercase;letter-spacing:.1em;}

  /* ===== Article blocks ===== */
  .section{padding:64px 0;}
  .section.tight{padding:40px 0;}
  .section-head{max-width:760px;margin-bottom:26px;}
  .lede-drop:first-letter{
    font-family:'Fraunces',serif;
    font-weight:700;
    float:left;
    font-size:74px;
    line-height:.8;
    padding:6px 10px 0 0;
    color:var(--green-deep);
  }
  .col-2{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start;}
  .col-2 .side{
    border-left:3px solid var(--blue);
    padding-left:22px;
    font-family:'Barlow Condensed',sans-serif;
  }
  .stat{
    font-family:'Fraunces',serif;
    font-weight:700;
    font-size:15px;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:var(--green-deep);
    margin-bottom:4px;
  }

  /* ===== Model carousel / slider ("листалка") ===== */
  .carousel-wrap{position:relative;padding:0 54px;}
  .carousel{
    display:flex;gap:18px;overflow-x:auto;padding:6px 0 8px;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -ms-overflow-style:none;scrollbar-width:none;
  }
  .carousel::-webkit-scrollbar{display:none;}
  .model-card{
    flex:0 0 calc((100% - 2*18px)/3);
    scroll-snap-align:start;
    background:var(--paper-2);border:1px solid var(--line);
  }
  .model-card .thumb{
    aspect-ratio:4/3;
    background:linear-gradient(150deg,#e4dcc4,#d3c8a4);
    display:flex;align-items:center;justify-content:center;
    border-bottom:3px solid var(--ink);
  }
  .model-card .thumb .ph-icon{border-color:rgba(11,42,67,0.28);}
  .model-card .thumb .ph-label{color:var(--grey);}
  .model-card .body{padding:14px 16px 18px;}
  .model-card .num{
    font-family:'Barlow Condensed',sans-serif;
    font-size:11px;letter-spacing:.14em;color:var(--green);font-weight:700;
  }
  .model-card h4{font-size:17px;margin:6px 0 10px;}
  .model-card .go{
    font-family:'Barlow Condensed',sans-serif;
    font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    color:var(--green-deep);border-bottom:1px solid var(--green-deep);padding-bottom:2px;
  }
  .model-card:hover .go{color:var(--blue-deep);border-color:var(--blue-deep);}

  .carousel-arrow{
    position:absolute;top:50%;transform:translateY(-50%);
    width:42px;height:42px;border-radius:50%;
    background:var(--ink);color:var(--paper);
    display:flex;align-items:center;justify-content:center;
    border:none;cursor:pointer;z-index:5;
    font-family:'Barlow Condensed',sans-serif;font-size:20px;line-height:1;
    box-shadow:0 4px 12px rgba(11,42,67,0.2);
  }
  .carousel-arrow:hover{background:var(--blue-deep);}
  .carousel-arrow.prev{left:0;}
  .carousel-arrow.next{right:0;}
  .carousel-arrow:disabled{opacity:.3;cursor:default;background:var(--grey);}

  .carousel-dots{
    display:flex;justify-content:center;gap:8px;margin-top:16px;
  }
  .carousel-dots .dot-btn{
    width:8px;height:8px;border-radius:50%;background:var(--line);
    border:none;padding:0;cursor:pointer;
  }
  .carousel-dots .dot-btn.active{background:var(--blue-deep);width:22px;border-radius:5px;transition:width .2s ease;}

  @media (max-width:920px){
    .carousel-wrap{padding:0 40px;}
    .model-card{flex:0 0 100%;}
    .carousel-arrow{width:36px;height:36px;}
  }

  /* ===== PDF download banner ===== */
  .pdf-banner{
    background:var(--green-deep);color:var(--paper);
    padding:36px 0;
  }
  .pdf-banner .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
  .pdf-banner h2{color:var(--paper);font-size:26px;margin:0;}
  .pdf-banner p{margin:6px 0 0;opacity:.8;font-size:15px;}
  .btn-pdf{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:14px;
    background:var(--blue);color:var(--ink);
    padding:14px 26px;white-space:nowrap;
    border:2px solid var(--blue);
  }
  .btn-pdf:hover{background:transparent;color:var(--blue);}

  /* ===== Alarm callout ===== */
  .callout{
    border:1px solid var(--ink);
    padding:26px 28px;
    background:var(--paper-2);
    font-family:'Barlow Condensed',sans-serif;
    text-transform:uppercase;
    letter-spacing:.03em;
    font-weight:600;
    font-size:15.5px;
  }
  .callout b{color:var(--red);}

  ul.plain{margin:0;padding:0;list-style:none;}
  ul.plain li{
    position:relative;padding:0 0 14px 26px;border-bottom:1px solid var(--line);margin-bottom:14px;
  }
  ul.plain li:last-child{border-bottom:none;}
  ul.plain li:before{
    content:"—";position:absolute;left:0;top:0;color:var(--blue-deep);font-weight:700;
  }

  /* ===== Use-case grid ===== */
  .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
  .use-card .frame{margin-bottom:0;padding:8px;}
  .use-card .media-photo.has-photo{background:none;padding:0;}
  .use-card .media-photo.has-photo img{object-fit:cover;filter:none;}
  .use-card h3{font-size:20px;margin:16px 0 8px;}
  .use-card p{font-size:15px;color:var(--grey);margin:0 0 12px;}
  .use-card .go{
    font-family:'Barlow Condensed',sans-serif;
    font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
    color:var(--green-deep);
  }
  .use-card .go:after{content:" →";}

  /* ===== Big statement ===== */
  .statement{
    background:var(--ink);color:var(--paper);
    padding:70px 0;
  }
  .statement h2{
    color:var(--paper);
    font-size:clamp(24px,3.4vw,40px);
    max-width:980px;
  }
  .statement .accent{color:var(--blue);}

  /* ===== Warranty badge ===== */
  .warranty{
    display:flex;align-items:center;gap:26px;
    padding:40px 0;
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  }
  .badge{
    flex:0 0 auto;width:96px;height:96px;border-radius:50%;
    border:3px solid var(--blue-deep);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    font-family:'Fraunces',serif;font-weight:900;
  }
  .badge .n{font-size:34px;line-height:1;color:var(--green-deep);}
  .badge .g{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;}

  /* ===== Icon index ===== */
  .grid-6{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
  .icon-card{background:var(--paper);padding:30px 26px;}
  .icon-card .n{
    font-family:'Fraunces',serif;font-weight:700;color:var(--blue-deep);font-size:13px;
    margin-bottom:14px;
  }
  .icon-card .icon-img{width:56px;height:56px;margin-bottom:14px;display:block;object-fit:contain;}
  .icon-card h4{font-size:18px;margin-bottom:8px;}
  .icon-card p{font-size:14.5px;color:var(--grey);margin:0 0 12px;}
  .icon-card .go{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:12px;
    letter-spacing:.1em;text-transform:uppercase;color:var(--green-deep);
  }

  /* ===== Markets statement ===== */
  .markets{background:var(--paper-2);padding:64px 0;}
  .markets p{max-width:900px;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
    letter-spacing:.03em;font-weight:600;font-size:16px;line-height:1.6;}
  .video-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;}
  .video-trio{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:16px;margin-top:30px;align-items:start;}
  .video-trio .frame{padding:8px;}

  /* ===== Blog cards ===== */
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
  .blog-card .thumb{
    aspect-ratio:4/3;background:linear-gradient(150deg,#e4dcc4,#d3c8a4);
    display:flex;align-items:center;justify-content:center;
    border-bottom:3px solid var(--green-deep);
    overflow:hidden;
  }
  .blog-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
  .blog-card h4{font-size:16.5px;margin:14px 0 8px;}
  .blog-card p{font-size:14px;color:var(--grey);}

  /* ===== Masthead brand closing ===== */
  .brand-close{padding:76px 0 44px;background:var(--paper-2);border-top:1px solid var(--line);}
  .brand-close-icon{width:44px;height:44px;margin-bottom:16px;display:block;}
  .brand-close h2{font-size:clamp(28px,4vw,44px);max-width:760px;}
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px;}
  .contact-block{
    background:var(--paper);border:1px solid var(--line);
    border-top:4px solid var(--blue);
    padding:28px 30px;
  }
  .contact-grid .contact-block:last-child{border-top-color:var(--green-deep);}
  .contact-block h5{
    font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.14em;
    font-size:12.5px;color:var(--grey);margin:0 0 14px;
  }
  .contact-block a, .contact-block li{display:block;font-size:16px;margin-bottom:8px;color:var(--ink);}
  .contact-block ul{list-style:none;padding:0;margin:0;font-family:'Barlow Condensed',sans-serif;
    text-transform:uppercase;font-size:14px;letter-spacing:.03em;color:var(--grey);}
  .cta-line{margin-top:16px;}
  .cta-line a{
    display:inline-block;
    border-bottom:2px solid var(--blue);
    font-weight:600;color:var(--ink);
  }

  footer{background:var(--ink);color:rgba(234,243,247,0.65);padding:34px 0 60px;}
  footer .copy{font-family:'Barlow Condensed',sans-serif;font-size:13px;letter-spacing:.04em;margin-bottom:18px;color:rgba(234,243,247,0.9);}
  .tag-cloud{display:flex;flex-wrap:wrap;gap:8px 10px;font-family:'Barlow Condensed',sans-serif;font-size:12px;}
  .tag-cloud span{padding:4px 10px;border:1px solid rgba(234,243,247,0.18);border-radius:20px;}

  @media (max-width:920px){
    nav.primary{display:none;}
    .col-2{grid-template-columns:1fr;}
    .grid-3{grid-template-columns:1fr;}
    .grid-6{grid-template-columns:1fr;}
    .grid-4{grid-template-columns:1fr 1fr;}
    .video-pair{grid-template-columns:1fr;}
    .video-trio{grid-template-columns:1fr;}
    .contact-grid{grid-template-columns:1fr;}
    .warranty{flex-direction:column;text-align:center;}
  }

/* ===== Shared interior-page components ===== */
.breadcrumb{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--grey);padding:20px 0 0;
}
.breadcrumb a{color:var(--green-deep);}
.breadcrumb a:hover{color:var(--blue-deep);}
.breadcrumb .sep{margin:0 8px;opacity:.5;}

.article-hero{padding:14px 0 10px;}
.article-hero h1{font-size:clamp(28px,4.4vw,48px);max-width:900px;}

.back-link{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;font-size:13px;
  color:var(--green-deep);margin-bottom:18px;
}
.back-link:hover{color:var(--blue-deep);}

/* spec table (comparison) */
.spec-table-wrap{overflow-x:auto;border:1px solid var(--line);}
table.spec-table{width:100%;border-collapse:collapse;min-width:640px;font-family:'Barlow Condensed',sans-serif;}
table.spec-table th,table.spec-table td{
  padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);
  font-size:14.5px;
}
table.spec-table thead th{
  background:var(--ink);color:var(--paper);
  font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:12.5px;
  border-bottom:none;
}
table.spec-table tbody tr:nth-child(odd){background:var(--paper-2);}
table.spec-table td.yes{color:var(--green-deep);font-weight:700;text-align:center;}
table.spec-table td.no{color:var(--grey);text-align:center;opacity:.5;}
table.spec-table td:first-child{font-weight:600;}

/* model spec sheet */
.spec-sheet{
  background:var(--paper-2);border:1px solid var(--line);padding:26px 28px;
}
.spec-sheet dl{margin:0;display:grid;grid-template-columns:1fr;gap:0;}
.spec-sheet .row{
  display:flex;justify-content:space-between;gap:16px;
  padding:12px 0;border-bottom:1px solid var(--line);
  font-family:'Barlow Condensed',sans-serif;font-size:14.5px;
}
.spec-sheet .row:last-child{border-bottom:none;}
.spec-sheet .row dt{color:var(--grey);text-transform:uppercase;letter-spacing:.04em;font-size:12.5px;}
.spec-sheet .row dd{margin:0;font-weight:600;text-align:right;}
.spec-sheet .row.strong dd{color:var(--green-deep);}

.reco-banner{
  background:var(--ink);color:var(--paper);
  padding:20px 26px;
  font-family:'Barlow Condensed',sans-serif;
  text-transform:uppercase;letter-spacing:.06em;font-size:15px;font-weight:600;
}
.reco-banner b{color:var(--blue);}

.model-nav{
  display:flex;justify-content:space-between;gap:20px;
  padding:34px 0;border-top:1px solid var(--line);margin-top:20px;
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  letter-spacing:.06em;font-weight:700;font-size:13.5px;
}
.model-nav a{color:var(--green-deep);}
.model-nav a:hover{color:var(--blue-deep);}

/* ===== Model detail page ===== */
.model-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;}
.tech-table-wrap{overflow-x:auto;border:1px solid var(--line);}
table.tech-table{width:100%;border-collapse:collapse;font-family:'Barlow Condensed',sans-serif;}
table.tech-table td{padding:11px 16px;border-bottom:1px solid var(--line);font-size:14.5px;}
table.tech-table tr:nth-child(odd){background:var(--paper-2);}
table.tech-table td:first-child{color:var(--grey);text-transform:uppercase;letter-spacing:.03em;font-size:12.5px;width:55%;}
table.tech-table td:last-child{font-weight:700;text-align:right;}
table.tech-table td:last-child a{color:var(--green-deep);text-decoration:underline;font-weight:600;}
.dl-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.dl-link{
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:12.5px;
  text-transform:uppercase;letter-spacing:.06em;
  border:1.5px solid var(--ink);padding:9px 16px;color:var(--ink);
}
.dl-link:hover{background:var(--ink);color:var(--paper);}
.prednosti{margin:0;padding:0;list-style:none;}
.prednosti li{position:relative;padding:10px 0 10px 30px;border-bottom:1px solid var(--line);font-size:15.5px;}
.prednosti li:before{content:"✓";position:absolute;left:0;top:10px;color:var(--green-deep);font-weight:700;}
.principle-box{
  background:var(--ink);color:var(--paper);padding:24px 28px;
  font-size:15.5px;line-height:1.6;margin:24px 0;
}
.principle-box .lbl{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.1em;
  font-size:12.5px;color:var(--blue);font-weight:700;display:block;margin-bottom:10px;
}

/* ===== Generic article / use-case page ===== */
.mini-model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 8px;}
.mini-model{background:var(--paper-2);border:1px solid var(--line);}
.mini-model .thumb{aspect-ratio:4/3;background:linear-gradient(150deg,#e4dcc4,#d3c8a4);display:flex;align-items:center;justify-content:center;border-bottom:2px solid var(--ink);}
.mini-model .body{padding:12px 14px 16px;}
.mini-model h5{font-family:'Fraunces',serif;font-size:15px;margin:0 0 8px;}
.mini-model ul{list-style:none;margin:0;padding:0;font-family:'Barlow Condensed',sans-serif;font-size:12px;color:var(--grey);}
.mini-model li{padding:2px 0;}
.mini-model .go{display:inline-block;margin-top:8px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--green-deep);}
.numbered-list{margin:0;padding:0;list-style:none;counter-reset:num;}
.numbered-list li{counter-increment:num;position:relative;padding:12px 0 12px 42px;border-bottom:1px solid var(--line);}
.numbered-list li:before{
  content:counter(num);position:absolute;left:0;top:10px;
  width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;
  display:flex;align-items:center;justify-content:center;
}

/* ===== PDF library grid ===== */
.pdf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px;}
.pdf-card{
  display:flex;gap:14px;align-items:center;
  background:var(--paper-2);border:1px solid var(--line);
  padding:16px;
}
.pdf-card .icon{
  flex:0 0 auto;width:46px;height:56px;background:var(--ink);color:var(--paper);
  display:flex;align-items:center;justify-content:center;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:11px;letter-spacing:.04em;
  position:relative;
}
.pdf-card .icon:after{content:"PDF";}
.pdf-card .meta h5{font-family:'Fraunces',serif;font-size:14.5px;margin:0 0 4px;line-height:1.3;}
.pdf-card .meta span{font-family:'Barlow Condensed',sans-serif;font-size:12px;color:var(--grey);text-transform:uppercase;letter-spacing:.04em;}
.pdf-card:hover{border-color:var(--blue-deep);}
.pdf-card.external .icon{background:var(--green-deep);}

/* ===== Real product photos (replacing placeholders) ===== */
.media-photo.has-photo, .thumb.has-photo{
  background:#fff;
  display:flex;align-items:center;justify-content:center;
  padding:10px;
}
.media-photo.has-photo img, .thumb.has-photo img{
  width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 6px 14px rgba(11,42,67,0.12));
}
.model-card .thumb.has-photo{
  background:linear-gradient(160deg,#eaf6fd,#d7edf9);
}

/* ===== Featured video section ===== */
.feature-video{padding:64px 0;background:var(--ink);}
.feature-video .kicker{color:var(--blue);}
.feature-video h2{color:var(--paper);font-size:clamp(26px,3.6vw,40px);max-width:820px;}
.feature-video p.lede{color:rgba(234,243,247,0.8);max-width:640px;font-size:16px;margin-top:14px;}
.feature-video .video-shell{
  max-width:860px;margin:34px auto 0;
  border:2px solid var(--blue);padding:8px;background:#000;
}
.feature-video .video-shell .media-video{aspect-ratio:16/9;background:#000;}

/* ===== Color spectrum crossfade block ===== */
.spectrum-section{padding:64px 0;}
.spectrum-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.spectrum-frame{
  position:relative;width:100%;aspect-ratio:16/9;
  background:#fff;border:1px solid var(--line);
  overflow:hidden;
}
.spectrum-frame img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  opacity:0;
  animation-name:spectrumFade;
  animation-timing-function:ease-in-out;
  animation-iteration-count:infinite;
  animation-fill-mode:both;
}
@keyframes spectrumFade{
  0%{opacity:0;}
  3.5%{opacity:1;}
  10.49%{opacity:1;}
  13.99%{opacity:0;}
  100%{opacity:0;}
}
.spectrum-copy .kicker{color:var(--green);}
.spectrum-copy h2{font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.spectrum-copy p{font-size:16px;color:var(--grey);margin-bottom:14px;}
.spectrum-swatches{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap;}
.spectrum-swatches span{width:22px;height:22px;border-radius:50%;display:inline-block;border:1px solid rgba(11,42,67,0.15);}

@media (max-width:920px){
  .spectrum-grid{grid-template-columns:1fr;gap:28px;}
}
