/* Shared case-study type scale and alignment. Loaded after case-specific media styles. */
.wycf-flagship {
 --case-margin:4.444vw;
 --case-title:clamp(42px,5vw,90px);
 --case-body:clamp(16px,1.25vw,22px);
 --case-stat:clamp(36px,3.6vw,58px);
 --case-copy-bottom:12%;
}
.wycf-flagship .flagship-copy h2 {
 font-family:var(--brand-font-editorial,'PP Editorial New',serif);
 font-size:var(--case-title);font-weight:400;font-style:normal;
 line-height:1.05;letter-spacing:-.05em;margin:0;max-width:1120px;
 text-wrap:balance;
}
.wycf-flagship .flagship-copy>p {
 font-size:var(--case-body);line-height:1.45;letter-spacing:normal;
 max-width:800px;margin:24px 0 0;
}
.wycf-flagship .flagship-copy>p br {display:none}
.wycf-flagship:not(.is-impact):not(.is-title-only) .flagship-copy {
 position:absolute;left:var(--case-margin);right:var(--case-margin);
 top:auto;bottom:var(--case-copy-bottom);max-width:1120px;
 margin:0;padding:0;
}
.wycf-flagship.is-title-only .flagship-copy h2 {max-width:1120px}
.wycf-flagship .flagship-contact {
 font-size:15px;line-height:1.4;margin-top:28px;
 min-height:48px;padding:12px 22px;border-radius:8px;
}
.wycf-flagship :is(.flagship-metrics,.sol-metrics) {gap:16px}
.wycf-flagship :is(.flagship-metrics,.sol-metrics)>div {
 padding:20px 24px 22px;border-radius:10px;
}
.wycf-flagship :is(.flagship-metrics,.sol-metrics) dt {
 font-size:var(--case-stat);line-height:1.15;letter-spacing:-.04em;
}
.wycf-flagship :is(.flagship-metrics,.sol-metrics) dd {
 font-size:13px;line-height:1.4;margin:12px 0 0;max-width:260px;
}
/* A slightly larger opening film, still above the narrative. */
.sol-case[data-chapter="0"] .flagship-bg {top:4%;width:84%;height:65%}
@media(max-width:700px){
 .wycf-flagship {--case-margin:24px;--case-title:clamp(36px,9vw,55px);--case-body:16px;--case-stat:28px;--case-copy-bottom:100px}
 .wycf-flagship .flagship-copy h2 br {display:none}
 .wycf-flagship .flagship-copy>p {margin-top:20px}
 .wycf-flagship :is(.flagship-metrics,.sol-metrics) {gap:8px}
 .wycf-flagship :is(.flagship-metrics,.sol-metrics)>div {padding:15px 10px;border-radius:8px}
 .wycf-flagship :is(.flagship-metrics,.sol-metrics) dd {font-size:10px;margin-top:10px}
 .sol-case[data-chapter="0"] .flagship-bg {top:8%;width:96%;height:46%}
}
@media(max-height:600px) and (min-width:701px){
 .wycf-flagship {--case-title:36px;--case-body:14px;--case-stat:36px;--case-copy-bottom:70px}
 .wycf-flagship .flagship-copy>p {margin-top:16px}
}

/* Mobile films keep the complete horizontal frame above the narrative. */
@media(max-width:700px){
 .wycf-flagship .flagship-stage:has(video){background:#000}
 .wycf-flagship .flagship-stage:has(video) .flagship-bg{
  inset:0;transform:none;width:100%;height:58%;aspect-ratio:auto;
  object-fit:contain;object-position:center;background:#000;filter:none;
 }
 .wycf-flagship .flagship-stage:has(video) .flagship-shade,
 .wycf-flagship .flagship-stage:has(video)::after{display:none}
 .wycf-flagship.sol-case[data-chapter="0"]{color:#edeae2}
 .wycf-flagship.sol-case[data-chapter="0"] .flagship-close{color:#edeae2}
 .wycf-flagship.sol-case[data-chapter="5"] .sol-metrics{top:42%;left:24px;right:24px}
}

/* Mobile case viewers share a white editorial canvas. */
@media(max-width:700px){
 .wycf-flagship,
 .wycf-flagship.sol-case[data-chapter]{background:#fff;color:#1a1815}
 .wycf-flagship .flagship-stage:has(video){background:#fff}
 .wycf-flagship .flagship-stage:has(video) .flagship-bg{background:#fff}
 .wycf-flagship .flagship-stage:not(:has(video)) .flagship-bg{
  inset:0;transform:none;width:100%;height:54%;object-fit:cover;
 }
 .wycf-flagship .flagship-stage .flagship-shade,
 .wycf-flagship .flagship-stage::after{display:none}
 .wycf-flagship.sol-case[data-chapter] .flagship-close,
 .wycf-flagship.sol-case[data-chapter] .flagship-controls>button{color:#1a1815}
 .wycf-flagship .flagship-close,
 .wycf-flagship .flagship-controls>.flagship-prev,
 .wycf-flagship .flagship-controls>.flagship-next{
  background:rgba(255,255,255,.7);border-color:rgba(26,24,21,.12);
  box-shadow:inset 0 1px 0 #fff,0 2px 10px rgba(26,24,21,.06);
 }
 .wycf-flagship .sol-metrics>div{
  background:rgba(255,255,255,.88);border-color:#ded9d0;
  box-shadow:inset 0 1px 0 #fff;color:#1a1815;
 }
 .wycf-flagship .flagship-contact{background:#1a1815;color:#fff;border-color:#1a1815}
 .wycf-flagship .flagship-contact:hover{background:#38342e}
 .wycf-flagship.sol-case[data-chapter="6"] .flagship-bg{
  top:8%;height:46%;object-fit:contain;filter:none;background:#fff;
 }
}
