
    /* Page theme */
    body.case-toyota{
      --page-bg:#4a0c0f;              /* cinematic dark red */
      --gryt-orange: var(--page-bg);  /* avoid default orange blocks */
      background: var(--page-bg) !important;
    }
    /* Orange underline on ALL headings in this case */
    body.case-toyota .marked-title::after{ background:#c1711d !important; }

    /* Slightly tighter hero title than NPA (still big) */
    body.case-toyota .case-hero-title{
      font-size: clamp(34px, 5.2vw, 74px) !important;
      letter-spacing: .02em;
    }
    body.case-toyota .case-hero-kicker{
      font-size: clamp(22px, 3.2vw, 40px) !important;
    }

    /* Reuse NPA-like section system */
    .toy-wrap{width:min(1040px,92vw);margin:0 auto;}
    .toy-section{padding: 44px 0; background:transparent;}
    .toy-section + .toy-section{padding-top: 18px;}

    .toy-two{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 36px;
      align-items:start;
    }
    .toy-two.flip .toy-text{ order: 1; }
    .toy-two.flip .toy-media{ order: 2; }

    .toy-text h3{
      font-size:22px;
      line-height:1.15;
      margin:0 0 12px;
      font-weight:600;
      letter-spacing:0;
      padding-bottom:10px;
      border-bottom:3px solid #c1711d;
      display:inline-block;
    }
    .toy-text p{
      font-size:17px;
      line-height: 1.7;
      opacity:.92;
      margin:0 0 16px;
      max-width:62ch;
    }
    .toy-media video{
      width:100%;
      border-radius:18px;
      display:block;
      background:#0a0a0a;
    }
    .toy-img{
      width:100%;
      border-radius:18px;
      display:block;
      cursor:zoom-in;
    }

    /* Swarm: 3 stills under video (like Koll på lagen) */
    .toy-underimgs{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:24px;
      margin-top:18px;
      align-items:stretch;
    }
    .toy-underimgs img{width:100%;height:260px;object-fit:cover;border-radius:22px;display:block;}
    .toy-underimgs img:hover{ transform:scale(1.02); }
    @media (max-width: 900px){
      .toy-underimgs{ grid-template-columns: 1fr; gap:14px; }
      .toy-underimgs img{width:100%;height:260px;object-fit:cover;border-radius:22px;display:block;}
    }

    /* Center titles (underline) */
    .toy-center-title{
      text-align:center;
      margin: 12px auto 26px;
      font-size:40px;
      letter-spacing:.06em;
      line-height:1.15;
      display:inline-block;
      position:relative;
      padding-bottom:14px;
    }
    .toy-center-wrap{ text-align:center; }
    .toy-center-lead{
      max-width: 980px;
      margin: -6px auto 22px;
      padding: 0 16px;
      text-align: center;
      font-size: 18px;
      line-height: 1.75;
      color: var(--text);
    }
    .toy-center-title::after{
      content:"";
      position:absolute;
      left:0; right:0; bottom:0;
      height:3px;
      background:#c1711d;
      border-radius:3px;
    }

    /* Galleries (same as NPA stills) */
    .toy-gallery{ padding: 10px 0 10px; }
    .toy-gallery-grid{
      column-count: 3;
      column-gap: 18px;
      margin-top: 22px;
    }
    .toy-gallery-grid img{
      width:100%;
      display:block;
      border-radius:18px;
      margin:0 0 18px;
      break-inside: avoid;
      cursor: zoom-in;
    }

    /* Two-up videos */
    .toy-two-videos{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
      align-items:start;
      margin-top: 18px;
    }
    .toy-two-videos video{
      width:100%;
      border-radius:18px;
      display:block;
      background:#0a0a0a;
    }

    /* Lightbox */
    .img-lightbox{
      position:fixed; inset:0;
      background:rgba(0,0,0,0.88);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:20000;
      padding:24px;
    }
    .img-lightbox[aria-hidden="false"]{ display:flex; }
    .img-lightbox-inner{ width:min(1200px,94vw); max-height:90vh; display:flex; align-items:center; justify-content:center; }
    .img-lightbox-inner img{ max-width:100%; max-height:90vh; border-radius:18px; display:block; box-shadow:0 18px 60px rgba(0,0,0,0.55); }
    .img-lightbox-close{
      position:absolute; top:18px; right:18px;
      appearance:none; border:0;
      background:rgba(255,255,255,0.14);
      color:#fff;
      padding:10px 12px;
      border-radius:12px;
      cursor:pointer;
      font:inherit;
    }
    .img-lightbox-close:hover{background:rgba(255,255,255,0.22);}

    /* Responsive */
    @media (max-width: 960px){
      .toy-two{ grid-template-columns: 1fr; gap: 18px; }
      .toy-underimgs{ grid-template-columns: 1fr; }
      .toy-two-videos{ grid-template-columns: 1fr; }
      .toy-gallery-grid{ column-count: 2; }
    }
    @media (max-width: 640px){
      .toy-gallery-grid{ column-count: 1; column-gap: 0; }
      .toy-gallery-grid img{ border-radius:16px; margin:0 0 14px; }
      .toy-center-title{ font-size:34px; }
    }
  

    .toy-underimgs--full{
      grid-column: 1 / -1;
      margin-top:18px;
    }
    .toy-underimgs--full img{width:100%;height:240px;object-fit:cover;display:block;border-radius:18px;}
    .toy-center{ text-align:center; }
    .toy-center-text{
      text-align:center;
      max-width: 980px;
      margin: 16px auto 0;
    }
    .toy-wide{
      max-width: 1280px;
      margin: 0 auto;
    }
    .toy-two--videos{
      grid-template-columns: 1fr 1fr;
      gap: 22px;
    }


  .toy-subhead{font-size:28px; margin:0; display:inline-block; padding-bottom:10px; border-bottom:4px solid var(--toy-accent);} 
  .toy-lead--big{font-size:20px; line-height:1.6;} 

  .toy-wide video{width:100%; height:auto; display:block; border-radius:var(--toy-radius); box-shadow:var(--toy-shadow);} 

/* Typography consistency (match Animation section) */
.toy-section p, .toy-section li{font-size:18px;line-height:1.8;}
.toy-section .toy-h3{font-size:38px;line-height:1.15;}
@media (max-width: 700px){
  .toy-underimgs img{height:200px;}
  .toy-section p, .toy-section li{font-size:16px;line-height:1.75;}
  .toy-section .toy-h3{font-size:30px;}
}

/* Global media rounding */
.toy-wrap video{width:100%;height:auto;display:block;border-radius:var(--toy-radius);box-shadow:var(--toy-shadow);}
.toy-wrap img{display:block;}


/* ensure all media/videos have rounded corners (except hero bg) */
video:not(.case-hero-bg){border-radius:18px;display:block;overflow:hidden;}
.toy-media video, .toy-video video, .toy-two-videos video{border-radius:18px;}
.toy-media, .toy-video, .toy-two-videos{border-radius:18px;overflow:hidden;}

/* unify body text sizing/leading to match animations section */
.toy-section p, .toy-section li, .toy-text, .toy-text p, .toy-center-text, .toy-center-text p{font-size:16px;line-height:1.75;}


/* --- fixes (2026-02-19) --- */
.toy-video{display:block;width:100%;height:auto;border-radius:24px;overflow:hidden;background:#000;}
.toy-media{border-radius:24px;overflow:hidden;background: transparent;}
.toy-media video{border-radius:24px;}
.toy-wide > .toy-video.toy-mt{margin-top:22px;}
.toy-mt{margin-top:22px;}
.toy-underlined{position:relative;padding-bottom:14px;}
.toy-underlined:after{content:"";position:absolute;left:0;bottom:0;height:4px;width:100%;max-width:520px;background:var(--accent, #c37a2f);border-radius:2px;}
/* Swarm thumbs: fill, no letterbox */
.toy-thumb{overflow:hidden;background:#000;border-radius:26px;}
.toy-thumb-img{width:100%;height:100%;object-fit:cover;display:block;}


body.case-qstar {
                --page-bg: #e33827;
                --ink: #ffffff;
                --muted: rgba(255, 255, 255, 0.82);
                --line: #f2b23a;
                --gryt-orange: var(--page-bg);
                background: var(--page-bg) !important;
                color: var(--ink);
            }
            body.case-qstar .marked-title::after {
                background: var(--line) !important;
            }
            body.case-qstar.case-detail .case-hero-video::before {
                content: none !important;
            }
            body.case-qstar.case-detail .case-page {
                background: var(--page-bg) !important;
            }

            body.case-qstar .case-we-do {
                background: transparent !important;
                border: 0 !important;
                box-shadow: none !important;
                padding: 0 !important;
            }
            body.case-qstar .we-do-title,
            body.case-qstar .we-do-list li {
                color: var(--ink) !important;
            }
            body.case-qstar .case-left p {
                color: var(--muted) !important;
            }

            .q-wrap {
                width: min(1040px, 92vw);
                margin: 0 auto;
            }
            .q-wide {
                width: min(1280px, 94vw);
                margin: 0 auto;
            }
            .q-section {
                padding: 44px 0;
                background: transparent;
            }
            .q-section + .q-section {
                padding-top: 18px;
            }

            .q-two {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 36px;
                align-items: start;
            }
            .q-two.flip .q-text {
                order: 2;
            }
            .q-two.flip .q-media {
                order: 1;
            }

            .q-text h3 {
                font-size: 22px;
                line-height: 1.15;
                margin: 0 0 12px;
                font-weight: 600;
                padding-bottom: 10px;
                border-bottom: 3px solid var(--line);
                display: inline-block;
                color: var(--ink);
            }
            .q-text p {
                font-size: 17px;
                line-height: 1.85;
                color: var(--muted);
                margin: 0 0 16px;
                max-width: 62ch;
            }

            .q-media video {
                width: 100%;
                border-radius: 18px;
                display: block;
                background: #0a0a0a;
                box-shadow: 0 12px 36px rgba(11, 45, 39, 0.14);
            }

            .q-center {
                text-align: center;
            }
            .q-center-title {
                text-align: center;
                margin: 12px auto 18px;
                font-size: 40px;
                letter-spacing: 0.06em;
                line-height: 1.15;
                display: inline-block;
                position: relative;
                padding-bottom: 14px;
                color: var(--ink);
            }
            .q-center-title::after {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                height: 3px;
                background: var(--line);
                border-radius: 3px;
            }
            .q-center-lead {
                max-width: 980px;
                margin: 0 auto 22px;
                padding: 0 16px;
                text-align: center;
                font-size: 18px;
                line-height: 1.85;
                color: var(--muted);
            }

            .q-gallery {
                padding: 10px 0 10px;
            }
            .q-gallery-grid {
                column-count: 3;
                column-gap: 18px;
                margin-top: 22px;
            }
            .q-gallery-grid img {
                width: 100%;
                display: block;
                border-radius: 18px;
                margin: 0 0 18px;
                break-inside: avoid;
                cursor: zoom-in;
                box-shadow: 0 12px 34px rgba(11, 45, 39, 0.14);
            }

            .q-row5 {
                display: grid;
                grid-template-columns: repeat(5, 1fr);
                gap: 14px;
                margin-top: 18px;
            }
            .q-row5 img {
                width: 100%;
                display: block;
                border-radius: 16px;
                cursor: zoom-in;
                box-shadow: 0 12px 34px rgba(11, 45, 39, 0.14);
            }

            .q-vert3 {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 18px;
                margin-top: 18px;
            }
            .q-vert3 video {
                width: 100%;
                aspect-ratio: 9 / 16;
                object-fit: cover;
                border-radius: 18px;
                background: #0a0a0a;
                box-shadow: 0 12px 36px rgba(11, 45, 39, 0.14);
            }

            .q-grid2x2 {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 18px;
                margin-top: 18px;
            }
            .q-grid2x2 video {
                width: 100%;
                border-radius: 18px;
                display: block;
                background: #0a0a0a;
                box-shadow: 0 12px 36px rgba(11, 45, 39, 0.14);
            }

            .img-lightbox {
                position: fixed;
                inset: 0;
                background: rgba(0, 0, 0, 0.88);
                display: none;
                align-items: center;
                justify-content: center;
                z-index: 20000;
                padding: 24px;
            }
            .img-lightbox[aria-hidden="false"] {
                display: flex;
            }
            .img-lightbox-inner {
                width: min(1200px, 94vw);
                max-height: 90vh;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            .img-lightbox-inner img {
                max-width: 100%;
                max-height: 90vh;
                border-radius: 18px;
                display: block;
                box-shadow: 0 18px 60px rgba(0, 0, 0, 0.55);
            }
            .img-lightbox-close {
                position: absolute;
                top: 18px;
                right: 18px;
                appearance: none;
                border: 0;
                background: rgba(255, 255, 255, 0.14);
                color: #fff;
                padding: 10px 12px;
                border-radius: 12px;
                cursor: pointer;
                font: inherit;
            }
            .img-lightbox-close:hover {
                background: rgba(255, 255, 255, 0.22);
            }

            @media (max-width: 1100px) {
                .q-row5 {
                    grid-template-columns: repeat(3, 1fr);
                }
            }
            @media (max-width: 960px) {
                .q-two {
                    grid-template-columns: 1fr;
                    gap: 18px;
                }
                .q-gallery-grid {
                    column-count: 2;
                }
                .q-vert3 {
                    grid-template-columns: 1fr;
                }
                .q-grid2x2 {
                    grid-template-columns: 1fr;
                }
            }
            @media (max-width: 640px) {
                .q-gallery-grid {
                    column-count: 1;
                    column-gap: 0;
                }
                .q-gallery-grid img {
                    border-radius: 16px;
                    margin: 0 0 14px;
                }
                .q-center-title {
                    font-size: 34px;
                }
                .q-row5 {
                    grid-template-columns: repeat(2, 1fr);
                }
            }

            /* One-row small portraits */
            .q-portraits-row {
                display: grid;
                grid-template-columns: repeat(5, 1fr);
                gap: 12px;
                margin-top: 18px;
            }
            .q-portraits-row img {
                width: 100%;
                display: block;
                border-radius: 14px;
                cursor: zoom-in;
                box-shadow: 0 12px 34px rgba(11, 45, 39, 0.14);
            }
            @media (max-width: 960px) {
                .q-portraits-row {
                    grid-template-columns: repeat(3, 1fr);
                }
            }
            @media (max-width: 640px) {
                .q-portraits-row {
                    grid-template-columns: repeat(2, 1fr);
                }
            }

            /* Customer stills grid */
            .q-kunder-grid {
                width: min(1100px, calc(100% - 64px));
                margin: 22px auto 0;
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
                gap: 16px;
                align-items: stretch;
            }
            .q-kunder-grid img {
                width: 100%;
                display: block;
                border-radius: 14px;
                cursor: zoom-in;
                box-shadow: 0 12px 34px rgba(11, 45, 39, 0.14);
            }
            @media (max-width: 1100px) {
                .q-kunder-grid {
                    width: min(1100px, calc(100% - 64px));
                    margin: 22px auto 0;
                    display: grid;
                    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
                    gap: 16px;
                    align-items: stretch;
                }
            }
            @media (max-width: 960px) {
                .q-kunder-grid {
                    width: min(1100px, calc(100% - 64px));
                    margin: 22px auto 0;
                    display: grid;
                    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
                    gap: 16px;
                    align-items: stretch;
                }
            }
            @media (max-width: 640px) {
                .q-kunder-grid {
                    width: min(1100px, calc(100% - 64px));
                    margin: 22px auto 0;
                    display: grid;
                    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
                    gap: 16px;
                    align-items: stretch;
                }
            }

            /* Safari poster fix: remove native 'dim' poster overlay by using a custom poster layer */
            body.safari-poster-fix .qs-video-shell {
                position: relative;
                overflow: hidden;
                border-radius: 18px;
            }
            body.safari-poster-fix .qs-video-shell video {
                display: block;
                width: 100%;
                border-radius: 18px;
                background: #0a0a0a;
            }
            body.safari-poster-fix .qs-poster {
                position: relative;
                position: absolute;
                inset: 0;
                background-size: cover;
                background-position: center;
                background-repeat: no-repeat;
                display: flex;
                align-items: center;
                justify-content: center;
                cursor: pointer;
                border-radius: 18px;
            }
            body.safari-poster-fix .qs-poster::after {
                content: "";
                width: 74px;
                height: 74px;
                border-radius: 999px;
                background: rgba(0, 0, 0, 0.35);
                backdrop-filter: saturate(120%) blur(2px);
                -webkit-backdrop-filter: saturate(120%) blur(2px);
                box-shadow: 0 10px 26px rgba(0, 0, 0, 0.25);
                position: relative;
            }
            body.safari-poster-fix .qs-poster::before {
                content: "";
                position: absolute;
                width: 0;
                height: 0;
                border-left: 18px solid #fff;
                border-top: 12px solid transparent;
                border-bottom: 12px solid transparent;
                transform: translateX(4px);
                z-index: 2;
            }
            body.safari-poster-fix .qs-video-shell.is-playing .qs-poster {
                display: none;
            }

            /* --- Safari/Chrome video clipping + no dim overlay --- */
            .q-media,
            .qs-video-shell {
                overflow: hidden !important;
                border-radius: 18px !important;
                background: #000;
            }
            .q-media video,
            .qs-video-shell video {
                display: block;
                width: 100%;
                height: 100%;
                border-radius: 0 !important;
                background: #000;
            }
            /* kill any accidental dimming overlays */
            .q-media::before,
            .q-media::after,
            .qs-video-shell::before,
            .qs-video-shell::after {
                background: none !important;
                box-shadow: none !important;
                opacity: 1 !important;
                filter: none !important;
            }

            .q-two + .q-two {
                margin-top: 32px;
            }

            .q-kunder-grid img {
                border-radius: 16px;
                display: block;
                width: 100%;
                height: 100%;
                object-fit: cover;
                box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
            }

/* Safari/WebKit: reduce double-rendered headings without touching other browsers */
@supports (-webkit-touch-callout: none) {
  .case-hero-video::before{ content:none !important; }
  h1,h2,h3,.case-hero-title,.marked-title,.we-do-title{
    text-shadow:none !important;
    -webkit-text-stroke:0 transparent !important;
    -webkit-text-stroke-width:0 !important;
    font-synthesis:none !important;
    font-weight:400 !important;
  }
}


            html body.case-detail,
            html body.case-detail * {
                -webkit-font-smoothing: antialiased;
                text-rendering: geometricPrecision;
            }

            body.case-detail .q-center-title,
            body.case-detail .q-text h3,
            body.case-detail .we-do-title,
            body.case-detail .we-do-list,
            body.case-detail .we-do-list li,
            body.case-detail .marked-title,
            body.case-detail .top-nav a {
                text-shadow: none !important;
                -webkit-text-stroke: 0 transparent !important;
                -webkit-text-stroke-width: 0 !important;
                font-synthesis: none !important;
                font-synthesis-weight: none !important;
                font-synthesis-style: none !important;
                text-decoration: none !important;
                box-shadow: none !important;
            }

            body.case-detail .q-center-title,
            body.case-detail .q-text h3,
            body.case-detail .we-do-title,
            body.case-detail .we-do-list li,
            body.case-detail .marked-title,
            body.case-detail .top-nav a {
                font-weight: 400 !important;
            }
        