/* Open Studio: shared workshop, transparent help, portable work. */
.open-offer { margin: 0 0 3rem; }
.offer-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid currentColor; margin:0 0 2.5rem; }
.offer-principles article { padding:1.4rem 1.8rem 1.5rem 0; }
.offer-principles article + article { border-left:1px solid currentColor; padding-left:1.8rem; }
.offer-principles .mono { font-size:.7rem; }
.offer-principles h3 { font-size:clamp(1.3rem,2vw,1.9rem); line-height:1.12; margin:1.2rem 0 .8rem; }
.offer-principles p { font-size:1rem; line-height:1.6; max-width:35ch; }
.approach-comparison { border-top:1px solid currentColor; border-bottom:1px solid currentColor; }
.approach-comparison summary { cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.3rem 0; font-size:clamp(1.25rem,2.5vw,2rem); font-weight:600; list-style:none; }
.approach-comparison summary::-webkit-details-marker { display:none; }
.approach-comparison summary .mono { font-size:.72rem; font-weight:400; }
.approach-comparison summary b { display:inline-block; font-size:1.2rem; margin-left:.7rem; }
.approach-comparison[open] summary b { transform:rotate(90deg); }
.approach-comparison summary:focus-visible, .comparison-scroll:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.comparison-scroll { overflow-x:auto; }
.comparison-scroll table { width:100%; border-collapse:collapse; text-align:left; font-size:.95rem; line-height:1.5; }
.comparison-scroll caption { text-align:left; padding:.5rem 0 1.2rem; }
.comparison-scroll th,.comparison-scroll td { padding:1rem; border-top:1px solid currentColor; vertical-align:top; }
.comparison-scroll th:first-child { padding-left:0; width:19%; }
.comparison-scroll thead { font-size:.8rem; }
.comparison-scroll .our-approach { background:#d8ff3e; color:#141410; }
.comparison-scroll .our-approach th { padding-left:1rem; }
.comparison-note { font-size:.87rem; line-height:1.6; max-width:85ch; padding:1.2rem 0; }
.offer-demo-intro { margin:2.5rem 0 0; font-size:.8rem; }
@media(max-width:700px) {
 .offer-principles { grid-template-columns:1fr; }
 .offer-principles article,.offer-principles article + article { border-left:0; padding:1.2rem 0; }
 .offer-principles article + article { border-top:1px solid currentColor; }
 .offer-principles p { max-width:none; }
 .approach-comparison summary { align-items:flex-start; flex-direction:column; }
 .comparison-scroll table { min-width:680px; }
 .comparison-scroll caption::after { content:' Scroll sideways to compare →'; display:block; margin-top:.5rem; }
}

.demo-project-picker{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0 0 28px}
.demo-project-picker button{border:1px solid currentColor;background:transparent;color:inherit;padding:12px 18px;font:inherit;cursor:pointer}
.demo-project-picker button[aria-pressed=true]{background:#d8ff3e;color:#141410}
.demo-project-picker button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.demo-project-picker p{flex-basis:100%;font-size:15px;line-height:1.5;margin:0}
.screen iframe[hidden]{display:none!important}

.demo-project-picker button[hidden]{display:none}
