/* Measured from AK_1920x1080 new.psd (1920 × 6480), not screenshot pixels.
   TT Firs Text: Nm=400, DmBd=600, XBd=800. Desktop coordinates share ONE
   container scale, independent of viewport height / browser zoom / scrollbar.
   New catalog, independent sliders and the approved smaller photo block remain. */
.ak47-landing { position: relative; width: 100%; max-width: 1920px; margin-inline: auto; container-type: inline-size; font-synthesis: none; }
.ak47-desktop-break { display: none; }
.ak47-landing .ak47-cta-arrow { display: block; flex: 0 0 auto; width: 34px; height: 32px; background: url("/JogelAK/images/cta-arrow.svg") center / contain no-repeat; }
.ak47-row-track .ak47-product__image { aspect-ratio: 453 / 395; background: #e0e4e5; }
.ak47-row-track .ak47-product__image img { width: 88%; height: 88%; object-fit: contain; }
.ak47-product__caption { display: block; margin-top: 12px; padding-inline: 12px; color: #000; font: 400 16px/1.2 "TT Firs Text", sans-serif; }
.ak47-product__caption > span { display: block; }
.ak47-material__copy { min-width: 0; }
.ak47-landing button.ak47-material { background: #191724 !important; }
.ak47-landing .ak47-follow { background: #32187d url("/JogelAK/images/design-follow-bg.webp") center / cover no-repeat; }
.ak47-socials a { color: #32187d !important; }
@media (min-width: 1024px) {
    .ak47-landing { --ak-u: calc(100cqw / 1920); }
    .ak47-shell { width: calc(1784 * var(--ak-u)); }
    .ak47-desktop-break { display: inline; }
    .ak47-header { height: calc(184 * var(--ak-u)); }
    .ak47-header__inner { position: relative; display: block; width: 100%; min-height: 0; height: 100%; }
    .ak47-header__logo { position: absolute; left: calc(71 * var(--ak-u)); top: calc(46 * var(--ak-u)); width: calc(228 * var(--ak-u)); transform: none; }
    .ak47-navigation { position: absolute; left: calc(480.166 * var(--ak-u)); top: calc(69.88 * var(--ak-u)); display: grid; grid-template-columns: calc(244.389 * var(--ak-u)) calc(202.266 * var(--ak-u)) calc(153 * var(--ak-u)) auto; gap: 0; }
    .ak47-navigation a { min-height: 0; font-size: calc(29.469 * var(--ak-u)); font-weight: 400; line-height: calc(32.343 * var(--ak-u)); letter-spacing: -.034em; white-space: nowrap; }
    .ak47-landing .ak47-button--arrow { position: absolute; width: calc(485 * var(--ak-u)); height: calc(97 * var(--ak-u)); min-width: 0; min-height: 0; padding: 0 calc(36 * var(--ak-u)) 0 calc(46 * var(--ak-u)); border: calc(3 * var(--ak-u)) solid #fff; border-radius: 0; font: 600 calc(23.633 * var(--ak-u)) / calc(25.938 * var(--ak-u)) "TT Firs Text", sans-serif; letter-spacing: -.017em; white-space: nowrap; text-decoration: none; }
    .ak47-landing .ak47-cta-arrow { width: calc(52 * var(--ak-u)); height: calc(47 * var(--ak-u)); }
    .ak47-header__cta { left: calc(1391 * var(--ak-u)); top: calc(43 * var(--ak-u)); }
    .ak47-hero { height: calc(1087 * var(--ak-u)); min-height: 0; padding: 0; background: #000; }
    .ak47-hero__bg { object-fit: fill; object-position: center; }
    .ak47-hero__content { position: relative; display: block; width: 100%; height: 100%; padding: 0; }
    .ak47-hero__title { position: absolute; inset: 0; max-width: none; margin: 0; font-size: calc(134.906 * var(--ak-u)); font-weight: 800; line-height: 1; letter-spacing: 0; }
    .ak47-hero__word, .ak47-hero__word-ak { position: absolute; top: calc(273.48 * var(--ak-u)); }
    .ak47-hero__word { left: calc(70.999 * var(--ak-u)); letter-spacing: -.0074em; }
    .ak47-hero__word-ak { left: calc(666.966 * var(--ak-u)); }
    .ak47-hero__word, .ak47-hero__word-ak { transform: translateY(var(--ak-u)); }
    .ak47-hero__title-x { position: absolute; left: calc(582.377 * var(--ak-u)); top: calc(276.94 * var(--ak-u)); margin: 0; font-size: calc(106.692 * var(--ak-u)); font-weight: 600; }
    .ak47-hero__lead { position: absolute; left: calc(71.18 * var(--ak-u)); top: calc(418.344 * var(--ak-u)); width: calc(740 * var(--ak-u)); max-width: none; margin: 0 !important; font-size: calc(33.125 * var(--ak-u)); line-height: calc(36.356 * var(--ak-u)); font-weight: 400; }
    .ak47-hero__signature { position: absolute; left: 0; top: calc(589 * var(--ak-u)); width: 100%; height: calc(190 * var(--ak-u)); display: block; margin: 0; }
    .ak47-hero__signature img { position: absolute; left: calc(85 * var(--ak-u)); width: calc(243 * var(--ak-u)); height: calc(187 * var(--ak-u)); }
    .ak47-hero__signature span { position: absolute; left: calc(380.111 * var(--ak-u)); top: calc(119.40 * var(--ak-u)); max-width: none; padding: 0; font-size: calc(33.12 * var(--ak-u)); line-height: calc(33 * var(--ak-u)); }
    .ak47-hero__content > .ak47-button { left: calc(80 * var(--ak-u)); top: calc(878 * var(--ak-u)); }
    .ak47-hero__lead, .ak47-navigation { transform: translateY(var(--ak-u)); }

    .ak47-products { padding: calc(23 * var(--ak-u)) 0 calc(43.174 * var(--ak-u)); background: #edf1f3; }
    .ak47-products .ak47-section-heading { width: 100%; height: calc(38 * var(--ak-u)); padding: 0 0 0 calc(82.166 * var(--ak-u)); }
    .ak47-products .ak47-section-heading h2 { font-size: calc(29.469 * var(--ak-u)); line-height: calc(32.343 * var(--ak-u)); font-weight: 800; letter-spacing: 0; }
    .ak47-product-rows { width: 100%; --ak-row-gap: calc(8 * var(--ak-u)); gap: calc(33.174 * var(--ak-u)); margin-top: calc(22 * var(--ak-u)); }
    .ak47-product-row { grid-template-columns: calc(42 * var(--ak-u)) minmax(0,1fr) calc(42 * var(--ak-u)); gap: 0; }
    .ak47-product__caption { margin-top: calc(11.826 * var(--ak-u)); padding-inline: calc(24 * var(--ak-u)) 0; min-height: calc(50 * var(--ak-u)); font-size: calc(26 * var(--ak-u)); line-height: calc(25 * var(--ak-u)); letter-spacing: -.01em; }
    .ak47-row-track .ak47-product__image img { position: relative; height: var(--ak-product-height,88%); left: calc(var(--ak-product-x,0) * var(--ak-u)); top: calc(var(--ak-product-y,0) * var(--ak-u)); }
    .ak47-landing .ak47-row-arrow { width: 100% !important; height: calc(64 * var(--ak-u)) !important; margin-top: calc(165.5 * var(--ak-u)) !important; align-self: start; transform: none; }
    .ak47-row-arrow span { display: block; width: calc(24 * var(--ak-u)); height: calc(38 * var(--ak-u)); color: transparent; background: url("/JogelAK/images/product-arrow.svg") center / contain no-repeat; }
    .ak47-row-arrow[data-row-prev] span { transform: rotate(180deg); }

    .ak47-content-background { background-size: calc(1949 * var(--ak-u)) calc(3244 * var(--ak-u)); background-position: calc(-13 * var(--ak-u)) top; }
    .ak47-about { height: calc(1080 * var(--ak-u)); padding: 0; }
    .ak47-bio { position: relative; width: 100%; height: calc(504 * var(--ak-u)); display: block; margin: 0; }
    .ak47-bio__media { position: absolute; left: calc(68 * var(--ak-u)); top: calc(61 * var(--ak-u)); width: calc(672 * var(--ak-u)); }
    .ak47-bio__copy { position: absolute; left: calc(863.76 * var(--ak-u)); top: 0; width: calc(990 * var(--ak-u)); }
    .ak47-bio__copy h3 { position: absolute; left: calc(3 * var(--ak-u)); top: calc(54.740 * var(--ak-u)); margin: 0; font-size: calc(62.857 * var(--ak-u)); line-height: calc(63.325 * var(--ak-u)); font-weight: 600; white-space: nowrap; }
    .ak47-bio__role, .ak47-bio__text, .ak47-bio__quote { position: absolute; max-width: none; width: 100%; margin: 0 !important; font-size: calc(29.923 * var(--ak-u)); line-height: calc(32.842 * var(--ak-u)); letter-spacing: 0; }
    .ak47-bio__role { top: calc(137.291 * var(--ak-u)); font-weight: 600; white-space: nowrap; }
    .ak47-bio__text { top: calc(195.291 * var(--ak-u)); font-weight: 400; }
    .ak47-bio__quote { top: calc(327.291 * var(--ak-u)); left: calc(60 * var(--ak-u)); width: calc(800 * var(--ak-u)); padding: 0; border: 0; font-weight: 400; font-style: normal; text-align: center; }
    /* The exported smart objects are white; use their alpha, not their RGB,
       so the PSD purple is controlled by CSS instead of the bitmap pixels. */
    .ak47-bio__quote::before, .ak47-bio__quote::after {
        content: '';
        width: calc(35 * var(--ak-u));
        height: calc(30 * var(--ak-u));
        background: #753bbd;
        -webkit-mask: var(--ak-quote-mask) center / 100% 100% no-repeat;
        mask: var(--ak-quote-mask) center / 100% 100% no-repeat;
    }
    .ak47-bio__quote::before { --ak-quote-mask: url('/JogelAK/images/quality/quote-open.svg'); top: calc(5.709 * var(--ak-u)); left: calc(-55.76 * var(--ak-u)); }
    .ak47-bio__quote::after { --ak-quote-mask: url('/JogelAK/images/quality/quote-close.svg'); bottom: calc(-10.025 * var(--ak-u)); right: calc(-56.24 * var(--ak-u)); }
    .ak47-about__grid { position: relative; width: 100%; height: calc(576 * var(--ak-u)); display: block; }
    .ak47-about__copy { position: absolute; left: calc(66.76 * var(--ak-u)); top: 0; width: calc(720 * var(--ak-u)); max-width: none; }
    .ak47-about h2 { position: absolute; top: calc(55.740 * var(--ak-u)); font-size: calc(62.857 * var(--ak-u)); line-height: calc(63.325 * var(--ak-u)); font-weight: 600; }
    .ak47-about__copy > p:not(.ak47-eyebrow) { position: absolute; top: calc(221.291 * var(--ak-u)); width: 100%; max-width: none; margin: 0 !important; font-size: calc(29.923 * var(--ak-u)); line-height: calc(32.842 * var(--ak-u)); }
    .ak47-about__grid > .ak47-video { position: absolute; left: calc(886 * var(--ak-u)); width: calc(968 * var(--ak-u)); }
    .ak47-video__play { border-top-width: calc(61 * var(--ak-u)); border-bottom-width: calc(61 * var(--ak-u)); border-left-width: calc(116 * var(--ak-u)); }

    /* Capsule shell establishes its own query container: keep measured cqw sizes
       in updates.css inside it. Section spacing still uses the 1920px canvas. */
    .ak47-capsules { height: calc(1080 * var(--ak-u)); padding: calc(272 * var(--ak-u)) 0 0; }
    .ak47-capsules > .ak47-shell { width: calc(1790 * var(--ak-u)); }
    .ak47-capsules .ak47-rule-title { height: 2.234637cqw; }
    .ak47-capsules__grid { margin-top: 3.910615cqw; }
    .ak47-capsules .ak47-capsule > div { margin-top: -.223464cqw; }
    .ak47-capsule h3, .ak47-capsule .ak47-legacy-title { letter-spacing: -.02em; }
    .ak47-capsule div > p:last-child { letter-spacing: -.009em; }
    .ak47-capsules .ak47-rule-title > span { transform: translateY(-.335196cqw); }
    .ak47-gallery { padding: 0; }
    .ak47-gallery > .ak47-shell { width: calc(1200 * var(--ak-u)); max-width: none; }

    .ak47-materials { padding: calc(108 * var(--ak-u)) 0 calc(143 * var(--ak-u)); background: #000; }
    .ak47-materials .ak47-shell { width: calc(1825 * var(--ak-u)); margin-left: calc(62 * var(--ak-u)); margin-right: calc(33 * var(--ak-u)); }
    .ak47-materials .ak47-rule-title { height: calc(40 * var(--ak-u)); padding: 0 0 0 calc(29.211 * var(--ak-u)); justify-content: flex-start; gap: calc(83 * var(--ak-u)); }
    .ak47-materials .ak47-rule-title h2 { font-size: calc(29.47 * var(--ak-u)); line-height: calc(32.343 * var(--ak-u)); letter-spacing: 0; font-weight: 800; }
    .ak47-materials .ak47-rule-title span { height: calc(3 * var(--ak-u)); background: #753bbd; }
    .ak47-materials .ak47-rule-title > span { transform: translateY(calc(-6 * var(--ak-u))); }
    .ak47-materials .ak47-rule-title h2 { transform: translateY(calc(-2 * var(--ak-u))); }
    .ak47-materials__track { grid-template-columns: repeat(4,minmax(0,1fr)); gap: calc(11 * var(--ak-u)); margin-top: calc(67 * var(--ak-u)); padding: 0; overflow: visible; }
    .ak47-landing button.ak47-material { min-height: 0; height: calc(264 * var(--ak-u)) !important; grid-template-columns: 47.65% minmax(0,1fr); }
    .ak47-material__image img { object-fit: fill; }
    .ak47-material__copy { padding: calc(33.25 * var(--ak-u)) calc(12 * var(--ak-u)) 0 calc(24.84 * var(--ak-u)); gap: calc(17.377 * var(--ak-u)); }
    .ak47-material__copy small, .ak47-material__copy strong { font-size: calc(27.902 * var(--ak-u)); line-height: calc(30.623 * var(--ak-u)); letter-spacing: 0; }
    .ak47-material__copy small { font-weight: 400; white-space: nowrap; }
    .ak47-material__copy strong { font-weight: 600; }

    .ak47-follow { height: calc(279 * var(--ak-u)); padding: 0; }
    .ak47-follow__inner { width: 100%; height: 100%; position: relative; display: block; }
    .ak47-follow h2 { position: absolute; left: calc(67.385 * var(--ak-u)); top: calc(112.036 * var(--ak-u)); width: auto; font-size: calc(58.411 * var(--ak-u)); line-height: calc(58.256 * var(--ak-u)); font-weight: 400; }
    .ak47-socials { position: absolute; left: calc(1498 * var(--ak-u)); top: calc(97 * var(--ak-u)); gap: calc(32 * var(--ak-u)); }
    .ak47-socials a { width: calc(90 * var(--ak-u)); height: calc(91 * var(--ak-u)); }
    .ak47-footer { height: calc(182 * var(--ak-u)); padding: calc(47 * var(--ak-u)) 0 0; background: #000; }
    .ak47-footer__inner > a { width: calc(228 * var(--ak-u)); }
    /* Photoshop's optical spacing differs from browser metric kerning.
       These small tracking corrections are measured against PSD ink bounds. */
    .ak47-hero__lead, .ak47-hero__signature span, .ak47-bio__role,
    .ak47-bio__text, .ak47-bio__quote, .ak47-about__copy > p { letter-spacing: -.009em; }
    .ak47-bio__copy h3, .ak47-about h2 { letter-spacing: -.02em; }
    .ak47-material__copy small { letter-spacing: -.025em; }
    .ak47-material__copy strong { letter-spacing: -.01em; }
    .ak47-follow h2 { letter-spacing: -.027em; }
}
.ak47-video__placeholder .ak47-video__play { display: none; }
@media (max-width: 1023px) {
    .ak47-materials .ak47-shell { width: calc(100% - 28px); }
    .ak47-material__copy strong br::after { content: ' '; }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .ak47-header { height: 92px; background: #000; }
    .ak47-hero { min-height: 0; height: auto; padding-top: 92px; background: #000; }
    .ak47-hero__bg { position: relative; inset: auto; z-index: 0; width: min(100%,640px); height: auto; aspect-ratio: 1100 / 940; margin-inline: auto; object-fit: contain; object-position: center; }
    .ak47-hero__content { width: calc(100% - 40px); height: auto; padding: 24px 0 32px; align-items: center; text-align: center; }
    .ak47-hero__title { font-size: 48px; line-height: 1; }
    .ak47-hero__lead { max-width: 650px; margin-top: 18px !important; font-size: 20px; line-height: 1.35; }
    .ak47-hero__signature { grid-template-columns: 130px 170px; gap: 24px; margin: 20px 0 24px; text-align: left; }
    .ak47-hero__signature img { width: 130px; }
    .ak47-hero__signature span { font-size: 18px; line-height: 1.3; padding-bottom: 12px; }
    .ak47-hero__content > .ak47-button { width: 360px; min-width: 0; min-height: 60px; padding: 14px 24px; font-size: 18px; }
}
@media (max-width: 767px) {
    .ak47-product__caption { margin-top: 10px; padding-inline: 2px; font-size: 12px; line-height: 1.3; }
    .ak47-row-track .ak47-product__image { aspect-ratio: 247 / 307; }
    .ak47-landing .ak47-row-arrow { align-self: start; margin-top: calc((100vw - 80px) * .31 - 26px) !important; transform: none; }
    .ak47-landing .ak47-follow { background-position: right center; }
}
