/* D60 geometry v2. Copy and existing product/proof images are untouched.
   Library component provenance: geometry-manifest.json. No timing rules here. */

/* D05: three identical reading axes, real text-width underline, joined check. */
body.design-detail-v2 #cut-05 .reassurance { height:calc(500 * var(--unit)); }
body.design-detail-v2 #cut-05 .reassurance-question {
  font-size:calc(78 * var(--unit)); line-height:1.18;
  padding:calc(10 * var(--unit)) calc(24 * var(--unit));
  border-radius:calc(10 * var(--unit));
}
body.design-detail-v2 #cut-05 .orange-chevron {
  top:calc(161 * var(--unit)); left:50%;
  width:calc(94 * var(--unit)); height:calc(88 * var(--unit));
  transform:translateX(-50%); border-radius:50%;
}
body.design-detail-v2 #cut-05 .orange-chevron::before {
  left:calc(21 * var(--unit)); right:auto; top:calc(41 * var(--unit));
  width:calc(29 * var(--unit)); height:calc(9 * var(--unit));
  transform:rotate(45deg); border-radius:calc(5 * var(--unit));
}
body.design-detail-v2 #cut-05 .orange-chevron::after {
  left:calc(38 * var(--unit)); right:auto; top:calc(35 * var(--unit));
  width:calc(40 * var(--unit)); height:calc(9 * var(--unit));
  transform:rotate(-45deg); border-radius:calc(5 * var(--unit));
}
body.design-detail-v2 #cut-05 .reassurance-answer {
  top:calc(275 * var(--unit)); left:50%;
  width:max-content!important; max-width:calc(720 * var(--unit));
  padding-inline:calc(5 * var(--unit));
  font-size:calc(172 * var(--unit)); line-height:1.08;
  letter-spacing:-.045em!important;
  transform:translateX(-50%)!important;
}
body.design-detail-v2 #cut-05 .reassurance-answer::after {
  top:auto; bottom:calc(-19 * var(--unit));
  left:2%; right:2%; width:auto; height:calc(9 * var(--unit));
  transform:rotate(-1deg); border-radius:40% 25% 40% 30%;
}

/* D07: replace only the decorative unequal sign and separate triangle.
   149 / 5b3258... visual-5 is a single continuous stem+head down arrow. */
body.design-detail-v2 #cut-07::after { content:none!important; }
body.design-detail-v2 #cut-07 .d07-not-equal {
  top:calc(1005 * var(--unit)); left:50%;
  width:calc(178 * var(--unit)); height:calc(225 * var(--unit))!important;
  transform:translateX(-50%); overflow:visible;
}
body.design-detail-v2 #cut-07 .d07-not-equal svg { display:none; }
body.design-detail-v2 #cut-07 .d07-not-equal::before {
  content:""; position:absolute; inset:0;
  background:#b8ed54;
  clip-path:polygon(25% 0,75% 0,75% 32%,100% 32%,50% 100%,0 32%,25% 32%);
}
body.design-detail-v2 #cut-07 .d07-system-title {
  left:50%; width:max-content!important; max-width:calc(846 * var(--unit));
  font-size:calc(98 * var(--unit)); line-height:1.15;
  transform:translateX(-50%);
}
body.design-detail-v2 #cut-07 .d07-system-title::after {
  top:calc(100% + 16 * var(--unit)); left:1%; right:1%;
  width:auto; height:calc(8 * var(--unit));
  clip-path:polygon(0 35%,100% 0,96% 70%,4% 100%);
  transform:rotate(-1deg);
}
body.design-detail-v2 #cut-07 .d07-system-time {
  font-size:calc(51 * var(--unit)); line-height:1.35;
}
body.design-detail-v2 #cut-07 .d07-system-time em {
  font-size:calc(101 * var(--unit))!important; font-style:normal!important;
}
body.design-detail-v2 #cut-07 .d07-catch {
  left:50%; width:max-content!important; max-width:calc(820 * var(--unit));
  transform:translateX(-50%);
}
body.design-detail-v2 #cut-07 .d07-catch::after {
  top:calc(100% + 16 * var(--unit)); left:2%; right:2%;
  width:auto; height:calc(7 * var(--unit)); transform:rotate(-1deg);
}

/* Existing arrow silhouettes retain their position and timing, while their
   stroke padding and gradient color are shared across the whole D sequence. */
body.design-detail-v2 .poster-arrows { overflow:visible; }
body.design-detail-v2 .poster-arrows svg {
  overflow:visible; display:block; margin-inline:auto;
}
body.design-detail-v2 .poster-arrows svg path[stroke] {
  stroke-linecap:round; stroke-linejoin:round;
}
body.design-detail-v2 #cut-16 .poster-arrows svg path,
body.design-detail-v2 #cut-25 .poster-arrows svg path,
body.design-detail-v2 #cut-51 .poster-arrows svg path { stroke:#91ba47; }
body.design-detail-v2 #cut-25 .poster-arrows svg path:last-child,
body.design-detail-v2 #cut-51 .poster-arrows svg path:last-child { stroke:#b8ed54; }
body.design-detail-v2 #cut-53 .d53-down-arrow {
  height:calc(200 * var(--unit));
}
body.design-detail-v2 #cut-53 .d53-down-arrow svg {
  width:calc(170 * var(--unit))!important; height:calc(200 * var(--unit));
}
body.design-detail-v2 #cut-44 .poster-arrows stop,
body.design-detail-v2 #cut-53 .d53-down-arrow stop,
body.design-detail-v2 #cut-67 .d67-block-arrow stop,
body.design-detail-v2 #cut-68 #d68-block-arrow stop { stop-color:#b8ed54; }

/* Same long/short title rule: accents terminate beneath the text rather than
   extending to the edges of a 900-unit poster canvas. No new ornament added. */
body.design-detail-v2 #cut-20 .d20-comparison::after,
body.design-detail-v2 #cut-25 .d25-market-difficulty::after {
  left:50%; width:58%; max-width:calc(570 * var(--unit));
  transform:translateX(-50%) rotate(-1deg);
  height:calc(5 * var(--unit));
}
body.design-detail-v2 #cut-31 .d31-wordmark::after {
  left:50%; right:auto; width:77%; max-width:calc(672 * var(--unit));
  transform:translateX(-50%); height:calc(4 * var(--unit));
}
body.design-detail-v2 #cut-46 .d46-answer-main::after,
body.design-detail-v2 #cut-47 .d47-search::after,
body.design-detail-v2 #cut-54 .d54-opportunity::after,
body.design-detail-v2 #cut-55 .d55-growth::after {
  max-width:85%; height:calc(4 * var(--unit));
}
/* D47's two horizontal linking chevrons were already complete; protect their
   stroke footprint from clipping without enlarging the text panels. */
body.design-detail-v2 #cut-47 .d47-link-arrow,
body.design-detail-v2 #cut-47 .d47-link-arrow svg { overflow:visible; }
