/* Selected conversation mock. All rules are scoped to the page's middle. */
.proof-section.wrap,.studio-how>.wrap,.scene-wrap,.capabilities-wrap,.interior-followup>.wrap {
  width:min(1400px,calc(100% - 15.4vw));
}
.proof-section {
  grid-template-columns:minmax(0,.435fr) minmax(0,.565fr);
  grid-template-rows:auto 1fr;
  align-items:start;
  gap:0 clamp(35px,5vw,76px);
  padding-block:clamp(42px,4.6vw,70px) clamp(74px,8vw,118px);
}
.proof-heading { grid-column:1; grid-row:1; }
.proof-heading .eyebrow { margin-bottom:18px; }
.proof-heading h2 { font-size:clamp(36px,4vw,61px); font-weight:500; line-height:1.04; }
.proof-heading .section-lead { margin-top:17px; font-size:clamp(19px,1.9vw,28px); max-width:390px; }
.proof-copy { grid-column:1; grid-row:2; align-self:start; margin-top:25px; }
.proof-copy .prompt-example { background:transparent; border-radius:0; padding:0; margin:0; max-width:clamp(230px,24vw,350px); }
.proof-copy .prompt-label { font-size:clamp(14px,1.2vw,17px); margin-bottom:10px; }
.proof-copy .prompt-message { padding:16px 18px; border:0; border-left:2px solid var(--green); border-radius:0 10px 10px 0; gap:20px; background:#f6f7f8; }
.proof-copy .prompt-message p { font-size:clamp(15px,1.25vw,18px); line-height:1.4; }
.proof-copy .prompt-message img { width:28px; height:28px; }
.proof-copy .copy-request { margin-top:11px; font-size:clamp(14px,1.1vw,16px); }
.proof-video { grid-column:2; grid-row:1/3; }
.proof-video video { border-radius:9px; }

/* Reuses the established furniture-page dot grid, not a new texture asset. */
.studio-how {
  background-color:#08251e;
  background-image:radial-gradient(circle,rgba(18,216,98,.3) 1px,transparent 1.4px);
  background-size:18px 18px;
  color:#fff;
  border:0;
  padding:0;
}
.studio-how>.section { padding-block:clamp(29px,3vw,45px) clamp(31px,3.2vw,48px); }
.studio-how h2 { font-size:clamp(32px,3.4vw,51px); line-height:1.12; }
.studio-how .steps { gap:30px; margin-top:28px; }
.studio-how .steps li { gap:20px; padding-right:8px; }
.studio-how .steps li+li { border-left:1px solid #ffffff24; padding-left:28px; }
.studio-how .steps h3 { color:#fff; font-size:clamp(16px,1.4vw,21px); font-weight:500; line-height:1.3; }
.studio-how .steps p { color:#d8e4de; font-size:clamp(14px,1.15vw,17px); line-height:1.4; margin-top:7px; max-width:320px; }
.studio-how .step-number { width:clamp(36px,3.6vw,53px); height:clamp(36px,3.6vw,53px); font-size:clamp(20px,1.8vw,27px); }
.studio-how .setup-connect { margin-top:10px; font-size:clamp(13px,1.05vw,16px); min-height:44px; padding:11px 20px; white-space:nowrap; }
.studio-how a:focus-visible { outline-color:#a0ffc5; }

.studio-project { background:#fff; color:var(--ink); overflow:hidden; }
.scene-wrap { padding-top:clamp(30px,3vw,46px); }
.project-scene { position:relative; display:grid; grid-template-columns:minmax(0, .26fr) minmax(0, .74fr); column-gap:32px; padding-bottom:28px; }
.project-intro { grid-column:1/-1; grid-row:1; }
.project-intro { position:relative; z-index:2; width:68%; pointer-events:none; }
.studio-project .project-intro .eyebrow { color:#00833c; margin-bottom:12px; }
.studio-project .project-intro h2 { font-size:clamp(36px,3.9vw,59px); font-weight:500; line-height:1.06; }
.project-intro h2 span { display:block; }
.studio-project .project-intro .section-lead { margin-top:13px; font-size:clamp(12px,1.15vw,17px); line-height:1.45; color:var(--muted); max-width:clamp(280px,42vw,630px); }
.scene-source { position:relative; z-index:2; grid-column:1; grid-row:2; align-self:start; width:100%; max-width:300px; margin-top:32px; }
.plan-upload { background:#fff; border:1px solid #ebedef; border-radius:12px; padding:17px 16px 12px; box-shadow:0 7px 24px #162b300b; }
.plan-upload figcaption { display:flex; align-items:center; gap:9px; font-size:clamp(12px,1.05vw,15px); margin-bottom:15px; }
.plan-upload>img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.scene-request { display:flex; align-items:flex-start; gap:12px; }
.scene-request>img { flex-shrink:0; background:#fff; border:1px solid #edf0f1; border-radius:12px; padding:10px; width:46px; height:46px; box-shadow:0 3px 12px #132a3009; }
.scene-request>p { background:#f3f5f7; border:1px solid #ebeff1; border-radius:12px; padding:13px 17px; font-size:clamp(13px,1.05vw,16px); line-height:1.4; }
.scene-source .scene-request { margin-top:12px; gap:9px; }
.scene-source .scene-request>p { padding:12px; }
.scene-response { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.scene-progress { list-style:none; padding:0; margin:0 0 18px; display:grid; gap:10px; }
.scene-progress li { display:flex; align-items:center; gap:9px; color:#53615a; font-size:13px; line-height:1.4; }
.scene-progress li>img { width:17px; height:17px; flex-shrink:0; filter:invert(38%) sepia(89%) saturate(1013%) hue-rotate(111deg) brightness(92%) contrast(103%); }
.response-title { display:flex; align-items:center; gap:9px; font-size:18px; font-weight:600; letter-spacing:-.02em; line-height:1.3; }
.response-title>img { width:24px; height:24px; flex-shrink:0; }
.response-body { margin-top:7px; font-size:14px; color:var(--muted); line-height:1.5; }
@media(prefers-reduced-motion:no-preference) {
  .reveal-in .scene-progress li { animation:response-stage-in .4s ease both; }
  .reveal-in .scene-progress li:nth-child(2) { animation-delay:.12s; }
  .reveal-in .scene-progress li:nth-child(3) { animation-delay:.24s; }
  @keyframes response-stage-in { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
}
.scene-connector { display:none; }
.studio-workspace { position:relative; grid-column:2; grid-row:2/4; width:100%; min-width:0; padding-top:16px; }
.scene-tools { position:relative; z-index:3; display:flex; justify-content:space-between; align-items:center; gap:16px; padding-inline:20px; }
.scene-wordmark { width:clamp(116px,12vw,178px); height:auto; }
.studio-view-controls { display:flex; align-items:center; border:1px solid #edf0f1; border-radius:99px; background:#fff; padding:2px; }
.studio-view-controls button { border:0; border-radius:99px; padding:9px 24px; min-height:44px; background:transparent; font-size:clamp(13px,1vw,15px); transition:background .2s,color .2s; }
.studio-view-controls button[aria-pressed="true"] { background:#00c961; color:#052816; }
.studio-view-controls button:hover { background:#edf6f0; }
.studio-view-controls button[aria-pressed="true"]:hover { background:#00ed71; }
.studio-views { position:relative; width:100%; height:clamp(440px,43vw,680px); margin-top:20px; }
.studio-views figure { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; animation:scene-view-in .25s ease both; }
@keyframes scene-view-in { from { opacity:.6; transform:translateY(4px); } to { opacity:1; transform:none; } }
.studio-space img { width:100%; height:100%; object-fit:contain; }
.studio-plan img { display:block; width:auto; height:100%; max-width:100%; object-fit:contain; }
.studio-note { position:relative; margin-top:12px; font-size:clamp(10px,.8vw,12px); color:var(--muted); text-align:right; }
.scene-followup { position:relative; grid-column:1; grid-row:3; align-self:end; z-index:3; margin-top:22px; align-items:flex-start; }
.scene-followup>p { padding:12px 17px; white-space:normal; }

.interior-followup { position:relative; isolation:isolate; min-height:clamp(270px,27vw,415px); color:#fff; }
.interior-followup>img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:50% 52%; }
/* Same photographic legibility treatment as the retained closing CTA. */
.interior-followup::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(13,21,25,.92),rgba(13,21,25,.8) 28%,rgba(13,21,25,.12) 53%,transparent 76%); }
.interior-followup>.wrap { display:flex; align-items:center; min-height:inherit; padding-block:32px; }
.refinement-copy { width:32%; max-width:430px; text-shadow:0 1px 8px #000a; }
.refinement-copy h3 { font-size:clamp(28px,3vw,45px); font-weight:400; line-height:1.08; letter-spacing:-.045em; }
.refinement-copy>p { margin-top:14px; font-size:clamp(13px,1.1vw,16px); max-width:290px; line-height:1.4; }
.refinement-copy .scene-request { margin-top:20px; background:#f5f7f9; color:var(--ink); border-radius:12px; padding:13px; gap:12px; text-shadow:none; }
.refinement-copy .scene-request>img { padding:5px; border:0; box-shadow:none; width:33px; height:33px; }
.refinement-copy .scene-request>p { border:0; padding:0; background:transparent; font-size:clamp(13px,1.05vw,16px); }

.capabilities-wrap { padding-block:clamp(48px,5vw,80px) 28px; }
.capabilities-heading { max-width:760px; margin-bottom:38px; }
.capabilities-heading .eyebrow { color:#00833c; margin-bottom:14px; }
.capabilities-heading h2 { font-size:clamp(32px,3.3vw,48px); line-height:1.1; font-weight:500; }
.capabilities-heading>p:last-child { margin-top:16px; max-width:620px; color:var(--muted); font-size:18px; line-height:1.5; }
.studio-capabilities { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; border-top:1px solid var(--line); padding-top:28px; }
.studio-capabilities article { display:flex; flex-direction:column; gap:20px; min-width:0; }
.studio-capabilities article+article { border-left:1px solid var(--line); padding-left:28px; }
.studio-capabilities article>img { width:32px; height:32px; flex-shrink:0; }
.studio-capabilities article>div { min-width:0; }
.capability-index { display:block; color:#00833c; text-transform:uppercase; font-size:11px; font-weight:600; letter-spacing:.12em; margin-bottom:12px; }
.studio-capabilities h3 { font-size:clamp(19px,1.6vw,24px); font-weight:500; line-height:1.2; }
.studio-capabilities article>div>p { color:var(--muted); margin-top:14px; font-size:15px; line-height:1.55; }
.studio-capabilities article>div>.capability-prompt { border-left:2px solid #00c961; padding-left:12px; margin-top:20px; color:var(--ink); font-size:14px; }
.studio-capabilities .text-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; margin-top:12px; font-size:14px; color:#00843d; }

@media(max-width:1100px) and (min-width:761px) {
  .proof-section { gap:0 26px; padding-block:38px 66px; padding-right:3.3vw; }
  .proof-heading .eyebrow { font-size:11px; margin-bottom:10px; }
  .proof-heading h2 { font-size:clamp(31px,3.9vw,43px); }
  .proof-heading .section-lead { font-size:18px; margin-top:12px; max-width:300px; line-height:1.3; }
  .proof-copy { margin-top:12px; }
  .proof-copy .prompt-message { padding:13px 16px; gap:15px; }
  .studio-how .steps { gap:16px; margin-top:23px; }
  .studio-how .steps li { gap:12px; padding-right:0; }
  .studio-how .steps li+li { padding-left:17px; }
  .studio-how .setup-connect { padding-inline:17px; }
  .studio-project .project-intro .eyebrow { font-size:11px; }
  .project-scene { column-gap:20px; }
  .scene-tools { gap:9px; }
  .studio-view-controls button { padding-inline:19px; }
  .studio-capabilities { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .studio-capabilities article { gap:12px; }
  .studio-capabilities article+article { padding-left:18px; }
  .studio-capabilities article:nth-child(3) { border-left:0; padding-left:0; }
  .studio-capabilities article>img { width:30px; height:30px; }
}
@media(max-width:760px) {
  .proof-section.wrap,.studio-how>.wrap,.scene-wrap,.capabilities-wrap,.interior-followup>.wrap { width:calc(100% - 40px); }
  .proof-section { grid-template-columns:1fr; grid-template-rows:auto; gap:26px; padding-block:42px 66px; }
  .proof-heading,.proof-copy,.proof-video { grid-column:auto; grid-row:auto; }
  .proof-heading h2 { font-size:clamp(35px,7.5vw,50px); }
  .proof-heading .section-lead { max-width:450px; font-size:18px; }
  .proof-copy { margin-top:0; }
  .proof-copy .prompt-example { max-width:430px; }
  .proof-copy .prompt-message p { font-size:16px; }
  .proof-copy .copy-request { margin-top:5px; font-size:15px; }
  .studio-how>.section { padding-block:39px 42px; }
  .studio-how h2 { font-size:clamp(31px,7.5vw,45px); }
  .studio-how .steps { grid-template-columns:1fr; gap:25px; margin-top:29px; }
  .studio-how .steps li { gap:17px; padding:0; }
  .studio-how .steps li+li { border:0; padding:0; }
  .studio-how .steps h3 { font-size:19px; }
  .studio-how .steps p { font-size:16px; max-width:480px; }
  .studio-how .step-number { width:39px; height:39px; font-size:22px; }
  .studio-how .setup-connect { font-size:15px; padding:12px 20px; white-space:normal; }
  .scene-wrap { padding-top:36px; }
  .project-scene { min-height:0; display:flex; flex-direction:column; clip-path:none; }
  .project-intro { width:100%; }
  .studio-project .project-intro h2 { font-size:clamp(34px,7.3vw,50px); }
  .studio-project .project-intro .section-lead { font-size:16px; line-height:1.4; margin-top:16px; max-width:none; }
  .scene-source { position:static; display:grid; grid-template-columns:minmax(0,.46fr) minmax(0,.54fr); align-items:center; width:100%; max-width:none; gap:17px; margin-top:24px; }
  .plan-upload { width:100%; max-width:190px; flex-shrink:0; padding:12px; }
  .scene-response { grid-column:1/-1; margin-top:5px; padding-top:20px; }
  .scene-progress { gap:9px; margin-block:17px; }
  .scene-progress li { font-size:14px; }
  .response-body { max-width:420px; font-size:15px; }
  .plan-upload figcaption { font-size:12px; gap:7px; margin-bottom:10px; }
  .plan-upload figcaption img { width:16px; }
  .scene-source .scene-request { display:block; margin-top:0; max-width:220px; }
  .scene-source .scene-request>img { margin-bottom:10px; width:38px; height:38px; padding:7px; }
  .scene-source .scene-request>p { font-size:14px; padding:12px 13px; }
  .scene-connector { display:none; }
  .studio-workspace { position:relative; inset:auto; width:calc(100% + 30px); height:auto; align-self:center; padding-top:13px; margin-top:22px; }
  .scene-tools { position:static; flex-direction:row; align-items:center; justify-content:space-between; gap:12px; padding-inline:15px; }
  .scene-wordmark { width:117px; }
  .studio-view-controls button { padding:9px 20px; font-size:13px; }
  .studio-views { margin-top:9px; height:auto; aspect-ratio:1374/1145; }
  .studio-note { position:relative; right:auto; bottom:auto; margin-top:12px; padding:0 15px; font-size:10px; }
  .scene-followup { position:static; align-self:flex-start; margin:22px 0 27px; gap:10px; }
  .scene-followup>img { width:38px; height:38px; padding:7px; }
  .scene-followup>p { font-size:14px; white-space:normal; }
  .interior-followup { min-height:350px; }
  .interior-followup>img { object-position:35% center; }
  .interior-followup::before { background:#07130d80; }
  .interior-followup>.wrap { padding-block:35px; }
  .refinement-copy { width:100%; max-width:300px; }
  .refinement-copy h3 { font-size:34px; }
  .refinement-copy>p { font-size:15px; margin-top:16px; }
  .refinement-copy .scene-request { max-width:290px; margin-top:23px; }
  .refinement-copy .scene-request>p { font-size:14px; }
  .capabilities-wrap { padding-block:32px 14px; }
  .studio-capabilities { grid-template-columns:1fr; gap:23px; }
  .studio-capabilities article { gap:18px; }
  .studio-capabilities article+article { border-left:0; border-top:1px solid var(--line); padding:23px 0 0; }
  .studio-capabilities article>img { width:35px; height:35px; }
  .studio-capabilities h3 { font-size:21px; }
  .studio-capabilities article>div>p,.studio-capabilities .feature-details p { font-size:16px; }
  .studio-capabilities .feature-details summary { font-size:15px; min-height:44px; }
}
@media(max-width:380px) {
  .scene-source { gap:13px; }
  .plan-upload { padding:9px; }
  .scene-source .scene-request>p { font-size:13px; }
  .studio-project .project-intro h2 { font-size:32px; }
}
