/* Canonical shared detail layout; keep this stylesheet last. */
.detail-body{--detail-width:1320px;--detail-gutter:clamp(24px,8vw,160px)}
.blvd-page{padding-inline:var(--detail-gutter)}
.blvd-page>section,.blvd-page .overseas-project,.blvd-page .overseas-selector,.blvd-page .blvd-nav{max-width:var(--detail-width);margin-inline:auto}
.detail-body .case-description{display:block;width:100%;max-width:none;margin-top:clamp(28px,3vw,44px);padding-top:clamp(20px,2vw,30px)}
.detail-body .case-description>h2{margin:0 0 14px;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.5}
.detail-body .case-description>div{display:grid;gap:var(--paragraph-spacing,18px);width:100%;max-width:none}
.detail-body .case-description p{width:100%;max-width:none;margin:0;color:var(--copy-color,#b9bfca);font-size:var(--copy-font-size,18px);font-weight:var(--copy-font-weight,400);line-height:var(--copy-line-height,1.9);letter-spacing:var(--copy-letter-spacing,.6px)}
.blvd-page>.project-opening .opening-copy{width:100%;max-width:none}
.overseas-project>.opening-art,.overseas-project .dark-kv-composition,.overseas-project .dark-product-composition{width:100%;max-width:none;margin:20px 0 28px;transform:none}
#characters .incubation{width:100%;max-width:none;margin:20px 0 28px;box-sizing:border-box;padding:clamp(12px,1.4vw,24px)}
.overseas-project .character-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.overseas-project .chapter{padding-top:44px;padding-bottom:12px}
.detail-body .case-intro,.detail-body .case-visuals,.detail-body .case-jumps,.ip-projects{padding-inline:max(var(--detail-gutter),calc((100vw - var(--detail-width))/2))}
.detail-body .case-story-row{grid-template-columns:1fr;gap:18px}.detail-body .case-story-copy{max-width:78ch}
.media-copy{margin:14px 0 20px;max-width:90ch;color:#b9bfca;font-size:clamp(.9rem,1.05vw,1rem);line-height:1.85}
.media-copy strong{color:#eee}.sample-copy-label{font-size:.75rem;letter-spacing:.04em;color:#8b939f;margin:12px 0}
.incubation-slide figcaption{display:block}.incubation-slide figcaption>span{margin-left:16px}.incubation-slide .media-copy{margin:8px 0 4px;max-width:94ch}
.ip-projects{padding-block:32px 40px}.ip-projects-heading{font-size:clamp(1.6rem,3vw,2.8rem);margin:0 0 12px}.ip-switch{display:flex;flex-wrap:wrap;gap:6px;width:fit-content;padding:5px;background:#14171c;border:1px solid #ffffff20;border-radius:30px;margin:22px 0 28px}
.ip-switch button{position:relative;overflow:hidden;border:1px solid transparent;border-radius:24px;padding:11px 18px;min-height:44px;background:transparent;color:#b9bfca;font:inherit;cursor:pointer;transition:background .2s,color .2s,transform .2s,box-shadow .2s}.ip-switch button:hover{color:white;border-color:#dfff0050}.ip-switch button[aria-pressed=true]{background:#dfff00;color:#10120a;box-shadow:0 3px 18px #dfff0020}.ip-switch button:active{transform:scale(.96)}.ip-switch button:focus-visible{outline:2px solid #dfff00;outline-offset:3px}
.ip-panel[hidden]{display:none}.ip-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid #ffffff20;padding-bottom:18px}.ip-panel-head h3{font-size:clamp(1.8rem,4vw,3.2rem);margin:0}.ip-panel-head span{font-size:.75rem;letter-spacing:.1em;color:#dfff00}.ip-framework{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.ip-framework article{padding:clamp(20px,2.5vw,32px);border:1px solid #ffffff20;border-radius:14px;background:linear-gradient(135deg,#1b2025,#101216);min-width:0}.ip-framework .stage{font-size:.75rem;color:#dfff00;letter-spacing:.1em}.ip-framework h4{font-size:1.35rem;margin:12px 0}.ip-framework p{color:#b9bfca;line-height:1.8;font-size:.95rem;margin:0}.ip-framework .awaiting{display:block;font-size:.75rem;color:#7e8794;margin-top:20px}
@media(max-width:760px){.detail-body{--detail-gutter:clamp(16px,4vw,28px)}.detail-body .case-description{margin-top:24px;padding-top:18px}.detail-body .case-description>h2{margin-bottom:10px}.overseas-project .character-grid,.ip-framework{grid-template-columns:1fr}.overseas-project .chapter{padding-top:32px}.incubation-slide figcaption>span{display:none}.ip-switch button{font-size:.875rem;padding:10px 14px}.ip-projects{padding-block:24px}.overseas-project>.opening-art{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.ip-switch button{transition:none}.ip-switch button:active{transform:none}}
.art-caption>p{flex:1;max-width:90ch}.art-caption>span{flex:0 0 auto}.chapter-heading{margin-bottom:24px}@media(max-width:760px){#characters .character-grid{grid-template-columns:1fr}.art-caption{display:block}}

/* Reusable nested IP collections. */
[data-collection-panel][hidden]{display:none}.collection-title{font-size:clamp(1.5rem,3vw,2.5rem);margin:20px 0 12px}.leopard-intro{display:grid;grid-template-columns:1fr 1.25fr;gap:24px;align-items:end}.leopard-intro .media-copy{margin-bottom:12px}.leopard-intro .eyebrow{font-size:.75rem;color:#dfff00;letter-spacing:.1em}.leopard-intro .collection-title{margin-top:8px}.ip-collection-switch{margin-bottom:20px}#collection-leopards .incubation{margin-top:16px}#leopard-track img{object-fit:contain}@media(max-width:760px){.leopard-intro{grid-template-columns:1fr;gap:0}.leopard-intro .media-copy{margin-top:0}}

/* Shared interactive capsule switches: project, collection and IP categories. */
.detail-body :is(.project-switch,.ip-switch){
  --switch-accent:#dfff00;
  position:relative;
  isolation:isolate;
  gap:8px;
  width:max-content;
  max-width:100%;
  padding:7px;
  overflow:hidden;
  border:1px solid #ffffff2a;
  border-radius:999px;
  background:linear-gradient(120deg,#16191f,#101318 58%,#171b1d);
  box-shadow:inset 0 1px 0 #ffffff0d,0 14px 40px #00000026;
}
.detail-body :is(.project-switch,.ip-switch)::before{
  content:"";
  position:absolute;
  inset:-80% -20%;
  z-index:-1;
  pointer-events:none;
  opacity:.35;
  background:conic-gradient(from 180deg at 50% 50%,transparent 0 40%,#dfff0026 48%,transparent 56% 100%);
  animation:switch-ambient 8s linear infinite;
}
.detail-body :is(.project-switch,.ip-switch) button{
  --mx:50%;--my:50%;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  flex:0 1 auto;
  min-width:clamp(250px,20vw,320px);
  min-height:52px;
  padding:13px 30px;
  border:1px solid transparent;
  border-radius:999px;
  background:radial-gradient(130px circle at var(--mx) var(--my),#dfff0025,transparent 72%);
  color:#c9ced7;
  text-align:left;
  font:inherit;
  cursor:pointer;
  transform:translateY(0) scale(1);
  transition:color .24s ease,border-color .24s ease,background .28s ease,box-shadow .28s ease,transform .22s cubic-bezier(.2,.8,.2,1);
}
.detail-body :is(.project-switch,.ip-switch) button::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  background:radial-gradient(150px circle at var(--mx) var(--my),#dfff0050,transparent 68%);
  transition:opacity .22s ease;
}
.detail-body :is(.project-switch,.ip-switch) button::after{
  content:"↗";
  position:absolute;
  right:20px;
  top:50%;
  opacity:0;
  color:currentColor;
  transform:translate(-10px,-50%) rotate(-18deg);
  transition:opacity .2s ease,transform .28s cubic-bezier(.2,.8,.2,1);
}
.detail-body :is(.project-switch,.ip-switch) button:hover{
  color:#fff;
  border-color:#dfff0075;
  box-shadow:0 0 0 1px #dfff0015,0 10px 26px #0008,0 0 24px #dfff0014;
  transform:translateY(-3px) scale(1.012);
}
.detail-body :is(.project-switch,.ip-switch) button:hover::before{opacity:1}
.detail-body :is(.project-switch,.ip-switch) button:hover::after{opacity:.9;transform:translate(0,-50%) rotate(0)}
.detail-body :is(.project-switch,.ip-switch) button[aria-pressed=true]{
  color:#0a0c08;
  border-color:#dfff00;
  background:linear-gradient(105deg,#d9ff00 0%,#f0ff5a 48%,#c8f800 100%);
  box-shadow:0 8px 28px #dfff0028,inset 0 1px 0 #fff9;
}
.detail-body :is(.project-switch,.ip-switch) button[aria-pressed=true]::before{
  opacity:.75;
  background:linear-gradient(105deg,transparent 20%,#ffffffa8 42%,transparent 62%);
  transform:translateX(-140%);
  animation:switch-sheen 3.4s ease-in-out infinite;
}
.detail-body :is(.project-switch,.ip-switch) button[aria-pressed=true]::after{opacity:.7;transform:translate(0,-50%) rotate(0)}
.detail-body :is(.project-switch,.ip-switch) button:active{transform:translateY(1px) scale(.975)}
.detail-body :is(.project-switch,.ip-switch) button.is-switch-pop{animation:switch-pop .46s cubic-bezier(.2,.9,.2,1)}
.detail-body :is(.project-switch,.ip-switch) button:focus-visible{outline:3px solid #fff;outline-offset:3px}
@keyframes switch-ambient{to{transform:rotate(360deg)}}
@keyframes switch-sheen{0%,55%{transform:translateX(-140%)}85%,100%{transform:translateX(140%)}}
@keyframes switch-pop{0%{transform:scale(.96)}45%{transform:scale(1.035)}100%{transform:scale(1)}}
@media(max-width:760px){
 .detail-body :is(.project-switch,.ip-switch){width:100%;border-radius:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .detail-body :is(.project-switch,.ip-switch) button{min-width:0;min-height:48px;padding:11px 14px;font-size:.84rem;text-align:center}
 .detail-body :is(.project-switch,.ip-switch) button::after{display:none}
}
@media(max-width:460px){.detail-body :is(.project-switch,.ip-switch){grid-template-columns:1fr}.detail-body :is(.project-switch,.ip-switch) button{width:100%}}
@media(hover:none){.detail-body :is(.project-switch,.ip-switch) button:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){
 .detail-body :is(.project-switch,.ip-switch)::before,.detail-body :is(.project-switch,.ip-switch) button[aria-pressed=true]::before,.detail-body :is(.project-switch,.ip-switch) button.is-switch-pop{animation:none}
 .detail-body :is(.project-switch,.ip-switch) button{transition:color .15s,background .15s,border-color .15s;transform:none!important}
}

/* Shared focus carousel and hover enlargement pattern. */
.media-carousel{margin-top:36px;padding:clamp(14px,2vw,24px);border:1px solid #ffffff20;border-radius:16px;background:#11141a;overflow:hidden}
.product-design-carousel{margin-top:20px}
.media-carousel-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.media-carousel-head p{margin:0 0 8px;color:#dfff00;font-size:.75rem;letter-spacing:.1em}
.media-carousel-head h3{margin:0;font-size:clamp(1.35rem,2.5vw,2rem)}
.media-carousel-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}
.media-carousel-controls button{width:44px;height:44px;border:1px solid #ffffff35;border-radius:50%;background:#20242d;color:#dfff00;font-size:1.15rem;cursor:pointer;transition:transform .2s,background .2s,color .2s}
.media-carousel-controls button:not(:disabled):hover{transform:scale(1.08);background:#dfff00;color:#0b0d08}
.media-carousel-controls button:disabled{opacity:.3;cursor:default}
.media-carousel-controls span{min-width:60px;text-align:center;color:#aab1bf;font-size:.8rem}
.media-carousel-track{display:flex;gap:18px;overflow-x:auto;padding:14px max(6%,40px) 22px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.media-carousel-track::-webkit-scrollbar{display:none}
.media-carousel-item{flex:0 0 82%;margin:0;scroll-snap-align:center;opacity:.48;filter:saturate(.62);transform:scale(.88);transition:opacity .42s,filter .42s,transform .46s cubic-bezier(.2,.8,.2,1)}
.media-carousel-item.is-active{opacity:1;filter:saturate(1);transform:scale(1)}
.media-carousel-image{display:block;width:100%;padding:0;border:1px solid #ffffff20;border-radius:12px;overflow:hidden;background:#080a0d;cursor:pointer;box-shadow:0 18px 50px #0006}
.media-carousel-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.media-carousel-item.is-active .media-carousel-image:hover img{transform:scale(1.035)}
.media-carousel-item figcaption{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(0,1fr);gap:20px;padding:16px 2px 4px}
.media-carousel-item figcaption strong{font-size:1.05rem}.media-carousel-item figcaption p{margin:0;color:#aab1bf;font-size:.9rem;line-height:1.75}
.media-carousel-hint{margin:4px 0 0;text-align:center;color:#7f8793;font-size:.78rem}
.incubation-slide img{transform:scale(.985);transition:transform .42s cubic-bezier(.2,.8,.2,1)}
.incubation-slide.is-active img{transform:scale(1)}
.incubation-slide.is-active:hover img{transform:scale(1.025)}
@media(max-width:760px){.media-carousel-head{align-items:flex-start}.media-carousel-controls span{display:none}.media-carousel-track{gap:10px;padding-inline:4%}.media-carousel-item{flex-basis:92%;transform:scale(.93)}.media-carousel-item figcaption{grid-template-columns:1fr;gap:8px}}
@media(prefers-reduced-motion:reduce){.media-carousel-item,.media-carousel-image img,.incubation-slide img,.media-carousel-controls button{transition:none!important}.media-carousel-item{transform:none}.media-carousel-item.is-active{transform:none}}

/* Canonical dark palette for every second-level page. */
.detail-body{--case-accent:#dfff00;background:#0c0d11;color:#eef0f4}
.detail-body :is(.detail-page,.profile-page,.ip-child-main){background:#0c0d11;color:#eef0f4}
.detail-body .site-header{background:#050609;border-color:#ffffff1f}
.detail-body :is(.case-intro,.case-visuals,.case-film,.profile-page){color:#eef0f4}
.detail-body :is(.case-topline>span,.case-kicker,.case-description h2 span,.case-section-title span,.chapter-number){color:#dfff00}
.detail-body .case-subtitle{color:#d6dae2}
.detail-body .draft-label,.detail-body .muted{color:#808895}
.detail-body .case-description{border-color:#ffffff24}
.detail-body .case-description .case-lead{color:#f4f5f7}
.detail-body .case-jumps{background:#090b0ff2;color:#c8cdd6;border-color:#ffffff20;backdrop-filter:blur(14px)}
.detail-body .case-jumps a{color:#c8cdd6}
.detail-body .case-jumps a:hover{color:#dfff00}
.detail-body .case-film{background:#07080b;border-block:1px solid #ffffff12}
.detail-body .case-visuals{background:#0c0d11}
.detail-body :is(.case-story-copy p,.case-chapter p){color:#b9bfca}
.detail-body .case-image{background:#080a0d;border:1px solid #ffffff20;border-radius:12px}
.detail-body .case-figure figcaption{color:#929aa7}
.detail-body .case-next{background:#11141a;border:1px solid #ffffff22;border-radius:14px}
.detail-body .case-next:hover{background:#181d21;border-color:#dfff0070;color:#fff}
.detail-body .case-next:hover .next-arrow{color:#dfff00}
.detail-body .category-nav{border-color:#ffffff20}
.detail-body .category-nav a{color:#d3d7df;border-color:#ffffff2a;border-radius:999px;transition:background .22s,color .22s,border-color .22s,transform .22s}
.detail-body .category-nav a:hover,.detail-body .category-nav [aria-current]{background:#dfff00;color:#080a08;border-color:#dfff00;transform:translateY(-2px)}
.detail-body .profile-heading{border-color:#ffffff24}
.detail-body .profile-bio{color:#b9bfca}
.detail-body .profile-bio h2,.detail-body .profile-pending{color:#eef0f4}
.detail-body footer{border-top:1px solid #ffffff18}

/* Dark media placeholders replace the old light collage blocks. */
.dark-media-placeholder,.detail-body .video-pending{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 76% 28%,#1643a766,transparent 24%),radial-gradient(circle at 24% 82%,#dfff0019,transparent 22%),linear-gradient(145deg,#151920,#080a0e 66%,#11161a)}
.dark-media-placeholder::before,.detail-body .video-pending::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.55;background-image:linear-gradient(#3b7cff18 1px,transparent 1px),linear-gradient(90deg,#3b7cff18 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(115deg,#000,transparent 76%)}
.dark-media-placeholder::after,.detail-body .video-pending::after{content:"";position:absolute;left:5%;right:5%;bottom:8%;height:1px;background:linear-gradient(90deg,#dfff00,transparent 45%,#195cff)}
.dark-media-placeholder{display:grid;place-items:center;aspect-ratio:16/9;border:1px solid #ffffff20;border-radius:12px;color:#8f98a5;text-align:center}
.dark-media-placeholder span{position:relative;padding:.55rem .8rem;border:1px solid #ffffff24;border-radius:999px;background:#0a0c10cc;font-size:.75rem;letter-spacing:.12em}
.detail-body .video-pending>div{z-index:1}

/* Product innovation: three independent project collections. */
.product-projects{padding-top:clamp(52px,6vw,86px);padding-bottom:clamp(32px,5vw,64px)}
.product-projects>.case-section-title{padding-bottom:22px}
.product-project-switch{margin:0 0 30px}
.product-project-panel[hidden]{display:none}
.product-panel-intro{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(24px,5vw,76px);align-items:end;padding:24px 0 28px;border-top:1px solid #ffffff20}
.product-panel-intro span{color:#dfff00;font-size:.75rem;letter-spacing:.12em}
.product-panel-intro h3{margin:12px 0 0;font-size:clamp(2rem,4.5vw,4.5rem);line-height:1.05}
.product-panel-intro p{max-width:70ch;margin:0;color:#b9bfca;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.85}
.product-panel-intro--ali{display:block}
.product-panel-intro--ali .product-panel-main{display:grid;justify-items:start;gap:0;width:100%}
.product-panel-intro--ali .product-panel-main>p{width:100%;max-width:none;margin-top:20px}
.product-ali-social-platforms{grid-template-columns:1fr;width:100%;max-width:900px;margin-top:28px}
.product-ali-social-platforms .product-ali-social-card{grid-column:auto;width:100%;min-height:265px}
.product-panel-intro .product-ali-social-card span{color:inherit}
.product-panel-intro .product-ali-social-card .social-platform-head h3{margin:.35rem 0 0;font-size:clamp(2.15rem,3.8vw,3.65rem);line-height:.98;letter-spacing:-.025em}
.product-ali-social-card .social-account{grid-template-columns:minmax(0,1fr) auto}
.product-panel-intro .product-ali-social-card .social-account strong{font-size:clamp(1.08rem,1.6vw,1.45rem);line-height:1.15;letter-spacing:.015em}
.product-external-link{--cta-x:50%;position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:18px;min-width:250px;justify-content:space-between;padding:15px 20px 15px 24px;border:1px solid #dfff0080;border-radius:999px;background:linear-gradient(115deg,#161b20,#12161a 64%,#1c2520);color:#f1f3f5;text-decoration:none;overflow:hidden;box-shadow:0 0 0 1px #dfff0012,0 12px 28px #0006;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .25s,color .25s}
.product-external-link::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(180px circle at var(--cta-x) 50%,#dfff0045,transparent 70%);opacity:.65;transition:opacity .25s}
.product-external-link::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 20%,#ffffff70 45%,transparent 65%);transform:translateX(-140%);transition:transform .55s ease}
.product-external-link span{font-size:.95rem;letter-spacing:.04em}.product-external-link b{font-size:1.35rem;font-weight:500;transition:transform .25s,color .25s}
.product-external-link:hover{color:#0a0c08;border-color:#dfff00;background:linear-gradient(110deg,#dfff00,#efff63 50%,#c8f500);transform:translateY(-3px);box-shadow:0 12px 34px #dfff0030,0 0 0 3px #dfff0012}
.product-external-link:hover::before{opacity:0}.product-external-link:hover::after{transform:translateX(140%)}.product-external-link:hover b{transform:translate(3px,-3px) rotate(5deg)}
.product-external-link:active{transform:translateY(0) scale(.98)}.product-external-link:focus-visible{outline:3px solid #fff;outline-offset:4px}
.chai-product-carousel{margin-top:6px;background:#101318;border-color:#ffffff25}
.chai-product-carousel .media-carousel-track{padding-top:18px}
.chai-product-carousel .media-carousel-image{background:#f3f4f5;border-color:#ffffff80;box-shadow:0 18px 48px #0008}
.chai-product-carousel .media-carousel-image img{object-fit:contain}
.product-video-board{position:relative;isolation:isolate;display:grid;place-items:center;min-height:clamp(280px,48vw,680px);aspect-ratio:16/9;overflow:hidden;border:1px solid #dfff0080;border-radius:16px;background:radial-gradient(circle at 70% 25%,#1543a633,transparent 26%),linear-gradient(145deg,#15191f,#080a0e 68%,#121920);box-shadow:0 22px 60px #0008}
.product-video-grid{position:absolute;inset:0;z-index:-1;opacity:.58;background-image:linear-gradient(#3b7cff1b 1px,transparent 1px),linear-gradient(90deg,#3b7cff1b 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(125deg,#000 8%,transparent 80%)}
.product-video-board::before{content:"";position:absolute;inset:6%;border:1px solid #ffffff1f;border-radius:10px;pointer-events:none}
.product-video-board::after{content:"";position:absolute;left:6%;right:6%;bottom:7%;height:2px;background:linear-gradient(90deg,#dfff00,transparent 48%,#1b5cff)}
.product-video-play{position:relative;z-index:1;display:grid;place-items:center;width:clamp(76px,9vw,116px);aspect-ratio:1;border:1px solid #dfff00;border-radius:50%;background:#dfff00;color:#090b08;cursor:pointer;box-shadow:0 0 0 12px #dfff0012,0 0 42px #dfff0040;transition:transform .25s,box-shadow .25s,background .25s}
.product-video-play span{font-size:clamp(1.3rem,2vw,2rem);margin-left:5px}
.product-video-play:hover{transform:scale(1.1);background:#f0ff5d;box-shadow:0 0 0 18px #dfff0018,0 0 62px #dfff0060}
.product-video-play:active{transform:scale(.96)}
.product-video-copy{position:absolute;left:8%;bottom:12%;display:grid;gap:8px;color:#eef0f4}.product-video-copy .film-label{color:#dfff00;letter-spacing:.12em;font-size:.75rem}.product-video-copy strong{font-size:clamp(1.25rem,2.3vw,2.1rem)}.product-video-copy p{margin:0;color:#aeb6c2;font-size:.92rem}.product-video-index{position:absolute;right:8%;top:12%;color:#dfff00;font-size:.8rem;letter-spacing:.12em}
@media(max-width:620px){.product-video-copy{left:9%;bottom:13%;right:9%}.product-video-copy p{font-size:.82rem}.product-video-index{right:9%;top:13%}}
@media(prefers-reduced-motion:reduce){.product-video-play{transition:none}.product-video-play:hover{transform:none}}
@media(max-width:760px){.product-panel-intro--ali .product-panel-main{justify-items:stretch}.product-ali-social-platforms .product-ali-social-card{min-height:auto}.product-external-link{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.product-external-link,.product-external-link::after,.product-external-link::before,.product-external-link b{transition:none}.product-external-link:hover{transform:none}}
.product-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.product-media-slot{margin:0;padding:14px;border:1px solid #ffffff20;border-radius:16px;background:#11141a;transition:transform .3s,border-color .3s,box-shadow .3s}
.product-media-slot:first-child{grid-column:1/-1}
.product-media-slot:hover{transform:translateY(-5px);border-color:#dfff006b;box-shadow:0 20px 50px #0007}
.product-media-slot figcaption{display:flex;justify-content:space-between;gap:18px;padding:15px 3px 3px;color:#9aa2ae;font-size:.875rem;line-height:1.6}
.product-media-slot figcaption strong{color:#eef0f4;font-weight:600}
@media(max-width:760px){.product-panel-intro{grid-template-columns:1fr;gap:18px}.product-media-grid{grid-template-columns:1fr}.product-media-slot:first-child{grid-column:auto}.product-media-slot{padding:10px}.product-media-slot figcaption{display:grid;gap:6px}}
@media(prefers-reduced-motion:reduce){.product-media-slot{transition:none}.product-media-slot:hover{transform:none}}

/* Unified secondary-page hero typography: match the Overseas project detail page. */
.detail-body{
  --detail-title-size:clamp(2.8rem,5vw,5rem);
  --detail-subtitle-size:1.1rem;
  --detail-subtitle-leading:1.8;
}
.detail-body :is(.case-intro h1,.project-opening .opening-copy h1,.profile-heading h1){
  font-size:var(--detail-title-size);
  line-height:1.2;
  letter-spacing:-.045em;
  margin-bottom:20px;
  white-space:nowrap;
}
.detail-body :is(.case-intro .case-subtitle,.project-opening .case-subtitle){
  font-size:var(--detail-subtitle-size);
  line-height:var(--detail-subtitle-leading);
  letter-spacing:0;
  margin:0 0 14px;
  white-space:nowrap;
}
.detail-body .profile-heading h1{margin:1.4rem 0 2rem}

@media(max-width:760px){
  .detail-body :is(.case-intro h1,.project-opening .opening-copy h1,.profile-heading h1){
    font-size:clamp(2.35rem,10vw,3.8rem);
    line-height:1.12;
    white-space:nowrap;
  }
  .detail-body :is(.case-intro .case-subtitle,.project-opening .case-subtitle){
    font-size:1rem;
    line-height:1.75;
    white-space:normal;
  }
}

/* Final shared type scale: keep every secondary page quieter and consistent. */
.detail-body{
  --detail-title-size:clamp(2.2rem,4vw,3.6rem);
  --detail-subtitle-size:clamp(.98rem,1.25vw,1.25rem);
  --detail-section-title-size:clamp(1.55rem,2.5vw,2.7rem);
  --detail-subsection-size:clamp(1.25rem,2vw,2.2rem);
}
.detail-body :is(.case-intro h1,.project-opening .opening-copy h1,.profile-heading h1,.common-ip-hero h1,.ali-hero h1){font-size:var(--detail-title-size);line-height:1.15;letter-spacing:-.035em}
.detail-body :is(.case-intro .case-subtitle,.project-opening .case-subtitle,.common-ip-hero>p:not(.case-kicker):not(.temple-hero-copy),.ali-intro>p,.temple-hero-subtitle){font-size:var(--detail-subtitle-size);line-height:1.7;letter-spacing:0}
.detail-body :is(.case-section-title h2,.chapter-heading h2,.project-name,.collection-title,.ali-wallpaper-heading h2,.ali-gallery-heading h2,.temple-section-intro h2,.product-panel-intro h3,.ip-panel-head h3){font-size:var(--detail-section-title-size);line-height:1.18;letter-spacing:-.03em}
.detail-body :is(.ali-wallpaper-copy h3,.media-carousel-head h3,.incubation-heading h3,.ali-story-lead h2){font-size:var(--detail-subsection-size);line-height:1.2;letter-spacing:-.025em}

/* Compact secondary / tertiary page openings.
   The header participates in normal document flow, so detail pages only need
   a short visual pause before the first useful navigation or headline. */
.detail-body .case-intro{
  padding-top:clamp(20px,2.2vw,30px);
}
.detail-body .case-topline{
  margin-bottom:clamp(22px,2.6vw,34px);
}
.detail-body .blvd-page{
  padding-top:clamp(26px,3vw,42px);
}
.detail-body .blvd-page>.project-opening{
  padding-top:0;
}
.detail-body .project-opening .back-link{
  margin-bottom:0;
}
.detail-body .project-opening .opening-copy>.eyebrow{
  margin-top:clamp(16px,1.8vw,24px);
}
.detail-body .ip-child-main{
  padding-top:clamp(34px,4vw,56px);
}
.detail-body .ip-child-main>:is(.common-ip-hero,.ali-hero)>.back-link{
  margin-bottom:clamp(18px,2vw,28px);
}
@media(max-width:760px){
  .detail-body .case-intro{padding-top:18px}
  .detail-body .case-topline{margin-bottom:22px}
  .detail-body .blvd-page{padding-top:24px}
  .detail-body .ip-child-main{padding-top:24px}
  .detail-body .ip-child-main>:is(.common-ip-hero,.ali-hero)>.back-link{margin-bottom:18px}
}
