/* RENOVA FAQ — return to the original Question Room with calmer motion. */
.q-simple-hero{
  --sq-paper:#f1efe9;
  --sq-ink:#191919;
  --sq-accent:#756850;
  --sq-sand:#b4a387;
  --sq-line:#c9c3b8;
  position:relative;
  min-height:100svh;
  padding-top:118px;
  overflow:hidden;
  isolation:isolate;
  background:var(--sq-paper);
  color:var(--sq-ink);
}
.q-simple-hero:before,
.q-simple-hero:after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
}
.q-simple-hero:before{
  top:118px;
  bottom:0;
  left:50%;
  width:1px;
  background:linear-gradient(to bottom,transparent,var(--sq-line) 16%,var(--sq-line) 84%,transparent);
  opacity:.42;
}
.q-simple-hero:after{
  right:var(--gutter);
  bottom:86px;
  width:clamp(84px,8vw,132px);
  height:1px;
  background:var(--sq-accent);
  opacity:.55;
}
.q-simple-hero .q-topline{
  position:relative;
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:19px 0 22px;
  border-top:1px solid var(--sq-line);
  border-bottom:1px solid var(--sq-line);
  font-size:9px;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.q-simple-hero .q-topline:before{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:44px;
  height:5px;
  background:var(--sq-accent);
}
.q-simple-hero .q-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);
  gap:clamp(40px,7vw,126px);
  align-items:center;
  min-height:calc(100svh - 260px);
  padding:clamp(38px,5.6vh,72px) 0 clamp(28px,4vh,54px);
}
.q-simple-hero .q-hero-copy{
  position:relative;
  z-index:4;
  align-self:center;
}
.q-simple-hero .q-hero-copy>.q-label{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 25px;
  color:var(--sq-accent);
  font-size:10px;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.q-simple-hero .q-hero-copy>.q-label:before{
  content:"";
  width:36px;
  height:1px;
  background:currentColor;
}
.q-simple-hero .q-hero-copy h1{
  max-width:760px;
  margin:0;
  padding:0;
  font-size:clamp(58px,6.3vw,106px);
  font-weight:400;
  line-height:.88;
  letter-spacing:-.062em;
}
.q-simple-hero .q-hero-copy h1 .q-title-line{display:block}
.q-simple-hero .q-hero-copy h1 em{
  display:block;
  margin-left:clamp(18px,4vw,68px);
  font-family:var(--serif);
  font-size:.68em;
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.035em;
  white-space:nowrap;
  color:var(--sq-accent);
}
.q-simple-hero .q-intro{
  max-width:465px;
  margin:34px 0 0 clamp(18px,4vw,68px);
  font-size:16px;
  line-height:1.7;
  color:var(--brand-text-soft);
}
.q-simple-hero .q-text-link{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  width:min(100%,315px);
  min-height:52px;
  margin:25px 0 0 clamp(18px,4vw,68px);
  padding:0;
  border:0;
  border-bottom:1px solid currentColor;
  font-size:11px;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.q-simple-hero .q-text-link .arrow-icon,
.q-simple-hero .q-hero-bottom .arrow-icon{width:20px;height:20px}

.q-simple-hero .q-sculpture{
  position:relative;
  display:block;
  width:100%;
  height:clamp(470px,57vw,680px);
  min-height:0;
  margin:0;
  overflow:visible;
  isolation:isolate;
}
.q-simple-hero .q-drafting-sculpture{
  display:grid;
  place-items:center;
}
.q-simple-hero .q-drawing-wrap{
  position:relative;
  width:auto;
  max-width:100%;
  height:100%;
  aspect-ratio:620/720;
}
.q-simple-hero .q-drawing{
  display:block;
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  overflow:visible;
}
.q-simple-hero .q-draft-guides{
  stroke:var(--sq-line);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
  opacity:.76;
}
.q-simple-hero .q-draft-guides>rect{stroke:rgba(117,104,80,.45)}
.q-simple-hero .q-draft-guides>circle{stroke-dasharray:3 7;opacity:.82}
.q-simple-hero .q-draft-dashed{stroke-dasharray:9 8;opacity:.7}
.q-simple-hero .q-draft-ticks{stroke:var(--sq-accent);opacity:.72}
.q-simple-hero .q-draft-labels{
  fill:var(--sq-accent);
  font-family:Arial,Helvetica,sans-serif;
  font-size:9px;
  font-weight:600;
  letter-spacing:1.7px;
}
.q-simple-hero .q-draft-mark{
  transform-box:view-box;
  transform-origin:326px 221px;
  will-change:transform;
  animation:q-question-clock 11s steps(3,end) infinite;
}
.q-simple-hero.is-paused .q-draft-mark{animation-play-state:paused}
.q-simple-hero .q-draft-mark-body{
  fill:url(#q-draft-hatch);
  stroke:none;
  stroke-width:1.25;
  vector-effect:non-scaling-stroke;
}
.q-simple-hero .q-draft-centerline{
  fill:none;
  stroke:rgba(117,104,80,.62);
  stroke-width:1.25;
  stroke-dasharray:12 8 2 8;
  vector-effect:non-scaling-stroke;
}
.q-simple-hero .q-plan-notation{
  stroke:var(--sq-accent);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
  opacity:.76;
}
.q-simple-hero .q-plan-radius-arc{
  stroke-width:1.2;
  stroke-dasharray:11 7 2 7;
  animation:q-plan-line-travel 24s linear infinite;
}
.q-simple-hero .q-plan-dimension{
  opacity:.82;
  animation:q-plan-dimension-breathe 10s ease-in-out infinite;
}
.q-simple-hero .q-plan-section-line{
  stroke-width:1.35;
  stroke-dasharray:12 4 2 4;
  animation:q-plan-line-travel 28s linear infinite reverse;
}
.q-simple-hero .q-plan-section-arrow{stroke-width:1.4}
.q-simple-hero .q-plan-gridline{
  stroke-dasharray:3 5;
  opacity:.6;
  animation:q-plan-line-travel 32s linear infinite;
}
.q-simple-hero .q-plan-bubble,
.q-simple-hero .q-plan-detail-ring{fill:var(--sq-paper)}
.q-simple-hero .q-plan-detail-ring{
  stroke-width:1.2;
}
.q-simple-hero .q-plan-detail-rings{
  transform-box:fill-box;
  transform-origin:center;
  animation:q-plan-detail-flip 5s cubic-bezier(.65,0,.35,1) infinite;
}
.q-simple-hero .q-plan-labels{font-size:7px;letter-spacing:1.05px}
.q-simple-hero .q-plan-labels text:nth-last-child(-n+4){font-size:6px;letter-spacing:.75px}
.q-simple-hero .q-draft-callouts{
  stroke:var(--sq-accent);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
}
.q-simple-hero .q-draft-callouts circle{fill:var(--sq-accent)}
.q-simple-hero .q-draft-callouts circle{animation:q-plan-point-breathe 7s ease-in-out infinite}
.q-simple-hero .q-draft-callout-labels{font-size:8px;letter-spacing:1.35px}
.q-simple-hero .q-blueprint-draw{
  stroke-dasharray:1;
  stroke-dashoffset:1;
  opacity:0;
  will-change:stroke-dashoffset,opacity;
  animation:q-blueprint-line-draw 15s cubic-bezier(.55,.05,.18,1) infinite both;
}
.q-simple-hero .q-blueprint-draw-1{animation-delay:0s}
.q-simple-hero .q-blueprint-draw-2{animation-delay:2.35s}
.q-simple-hero .q-blueprint-draw-3{animation-delay:4.7s}
.q-simple-hero .q-blueprint-draw-4{animation-delay:7.05s}
.q-simple-hero.is-paused .q-blueprint-draw{animation-play-state:paused}
.q-simple-hero .q-draft-material path{
  fill:none;
  stroke:var(--sq-accent);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
}
.q-simple-hero .q-draft-material text{
  fill:var(--sq-accent);
  font-family:Arial,Helvetica,sans-serif;
  font-size:8px;
  font-weight:600;
  letter-spacing:1.4px;
}
.q-simple-hero .q-sphere-video{
  position:absolute;
  z-index:3;
  top:75.7%;
  left:41.625%;
  display:block;
  width:21.85%;
  transform:translateY(-6.521739%);
  height:auto;
  aspect-ratio:1;
  object-fit:contain;
  clip-path:circle(49.8% at 50% 50%);
  pointer-events:none;
  background:transparent;
}
.q-simple-hero .q-drawing-wrap:after{
  content:"";
  position:absolute;
  z-index:2;
  top:88.8%;
  left:42.8%;
  width:19.5%;
  height:4.1%;
  border-radius:50%;
  background:rgba(42,36,29,.31);
  filter:blur(9px);
  pointer-events:none;
}
@keyframes q-plan-line-travel{
  to{stroke-dashoffset:-120}
}
@keyframes q-plan-dimension-breathe{
  0%,100%{opacity:.58}
  50%{opacity:.9}
}
@keyframes q-plan-detail-flip{
  0%,74%,100%{transform:scaleX(1);stroke-opacity:1}
  86%{transform:scaleX(.08);stroke-opacity:.62}
}


@keyframes q-plan-point-breathe{
  0%,100%{opacity:.58}
  50%{opacity:1}
}
@keyframes q-question-clock{
  0%{transform:rotate(0deg)}
  18.182%{transform:rotate(90deg)}
  36.364%,100%{transform:rotate(0deg)}
}
@keyframes q-blueprint-line-draw{
  0%,8%{stroke-dashoffset:1;opacity:0}
  11%{opacity:.16}
  28%,78%{stroke-dashoffset:0;opacity:.92}
  92%,100%{stroke-dashoffset:0;opacity:0}
}
.q-simple-hero .q-hero-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  min-height:72px;
  padding:17px 0;
  border-top:1px solid var(--sq-line);
  color:var(--brand-text-soft);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.q-simple-hero .q-hero-bottom>a{
  display:inline-flex;
  align-items:center;
  gap:18px;
  min-height:44px;
  color:var(--sq-ink);
}
@media(max-width:1100px){
  .q-simple-hero .q-hero-grid{grid-template-columns:minmax(0,.86fr) minmax(400px,1.14fr);gap:30px}
  .q-simple-hero .q-hero-copy h1{font-size:clamp(55px,6.7vw,82px)}
}
@media(max-width:760px){
  .q-simple-hero{min-height:0;padding-top:94px}
  .q-simple-hero:before{top:94px;left:20px;bottom:72px}
  .q-simple-hero:after{right:20px;bottom:74px;width:62px}
  .q-simple-hero .q-topline{padding:14px 0 16px;font-size:8px}
  .q-simple-hero .q-topline>span:last-child{display:none}
  .q-simple-hero .q-topline:before{width:32px;height:4px}
  .q-simple-hero .q-hero-grid{display:flex;flex-direction:column;gap:24px;min-height:0;padding:26px 0 36px}
  .q-simple-hero .q-sculpture{order:-1;width:100%;height:clamp(360px,96vw,455px)}
  .q-simple-hero .q-drawing-wrap{height:100%;max-width:430px}
  .q-simple-hero .q-hero-copy{width:100%}
  .q-simple-hero .q-hero-copy>.q-label{margin-bottom:18px;font-size:9px}
  .q-simple-hero .q-hero-copy h1{font-size:clamp(52px,14vw,70px);line-height:.91}
  .q-simple-hero .q-hero-copy h1 em{margin-left:0;font-size:.64em}
  .q-simple-hero .q-intro,.q-simple-hero .q-text-link{margin-left:0}
  .q-simple-hero .q-intro{margin-top:24px;font-size:15px}
  .q-simple-hero .q-text-link{margin-top:20px;width:min(100%,290px)}
  .q-simple-hero .q-hero-bottom{min-height:65px;gap:18px;font-size:8px;line-height:1.45}
  .q-simple-hero .q-hero-bottom>a{gap:10px;text-align:right}
}
@media(max-width:390px){
  .q-simple-hero .q-sculpture{height:345px}
  .q-simple-hero .q-hero-bottom>span{max-width:125px}
}
@media(prefers-reduced-motion:reduce){
  .q-simple-hero .q-draft-sphere-motion,
  .q-simple-hero .q-draft-mark,
  .q-simple-hero .q-plan-radius-arc,
  .q-simple-hero .q-plan-dimension,
  .q-simple-hero .q-plan-section-line,
  .q-simple-hero .q-plan-gridline,
  .q-simple-hero .q-plan-detail-rings,
  .q-simple-hero .q-blueprint-draw,
  .q-simple-hero .q-draft-callouts circle{animation:none;transform:none}
  .q-simple-hero .q-blueprint-draw{stroke-dasharray:none;stroke-dashoffset:0;opacity:.76}
}

/* Floor-plan wall returns and openings, taken from the approved curved reference. */
.q-simple-hero .q-plan-interior{stroke:var(--sq-ink);stroke-width:1.1;stroke-linejoin:miter;vector-effect:non-scaling-stroke}
.q-simple-hero .q-plan-opening{fill:var(--sq-paper);stroke:none}
.q-simple-hero .q-plan-door-swing{stroke:var(--sq-accent);stroke-width:.8;opacity:.75}
.q-simple-hero .q-plan-door-leaf,.q-simple-hero .q-plan-door-jamb{stroke-width:1.15}
.q-simple-hero .q-plan-glazing{stroke-width:.8;opacity:.85}
.q-simple-hero .q-plan-recess{stroke-width:.9;opacity:.8}

/* Drafting callouts draw gently while labels scroll within their circle. */
.q-simple-hero .q-badge-guide{stroke-opacity:.25}
.q-simple-hero .q-badge-ring{
  fill:none;stroke:var(--sq-accent);stroke-width:1.15;stroke-linecap:round;
  stroke-dasharray:1;stroke-dashoffset:0;
  animation:q-badge-draw 12s ease-in-out var(--badge-delay,0s) infinite;
}
.q-simple-hero .q-badge-track{
  stroke:none;fill:var(--sq-accent);letter-spacing:0;
  animation:q-badge-scroll 12s cubic-bezier(.65,0,.35,1) var(--badge-delay,0s) infinite;
}
.q-simple-hero.is-paused .q-badge-ring,
.q-simple-hero.is-paused .q-badge-track{animation-play-state:paused}
@keyframes q-badge-draw{
  0%,100%{stroke-dashoffset:1}
  13%,83%{stroke-dashoffset:0}
  94%{stroke-dashoffset:1}
}
@keyframes q-badge-scroll{
  0%,28%{transform:translateY(0)}
  33.333%,61.333%{transform:translateY(-20px)}
  66.667%,94.667%{transform:translateY(-40px)}
  100%{transform:translateY(-60px)}
}
@media(prefers-reduced-motion:reduce){
  .q-simple-hero .q-badge-ring{animation:none;stroke-dashoffset:0}
  .q-simple-hero .q-badge-track{animation:none;transform:none}
}
@media print{
  .q-simple-hero .q-badge-ring{animation:none;stroke-dashoffset:0}
  .q-simple-hero .q-badge-track{animation:none;transform:none}
}

/* One perimeter line; the angled interior returns remain separate plan details. */
.q-simple-hero [data-type-note],.q-simple-hero [data-type-note] tspan{animation:none;transition:none}
@media(prefers-reduced-motion:reduce){
  .q-simple-hero [data-type-note] tspan{visibility:visible!important}
}
@media print{
  .q-simple-hero [data-type-note] tspan{visibility:visible!important}
}
.q-simple-hero .q-plan-outline{fill:none;stroke:var(--sq-ink);stroke-width:1.25;vector-effect:non-scaling-stroke}

/* Complete faint guide remains visible; the JS controller drafts whole strokes.
   Real stroke lengths avoid browser differences in normalized SVG dash units. */
.q-simple-hero .q-draft-material .q-material-line,
.q-simple-hero .q-draft-material .q-material-guide{fill:none;stroke:#8f8069;stroke-linecap:butt;vector-effect:none}
.q-simple-hero .q-draft-material .q-material-line-a{stroke-width:1.5;opacity:.78}
.q-simple-hero .q-draft-material .q-material-line-b{stroke-width:.9;opacity:.48}
.q-simple-hero .q-draft-material .q-material-guide-a{stroke-width:1.5;opacity:.14}
.q-simple-hero .q-draft-material .q-material-guide-b{stroke-width:.9;opacity:.09}
@media(prefers-reduced-motion:reduce){
 .q-simple-hero .q-material-line{stroke-dasharray:none!important;stroke-dashoffset:0!important}
 .q-simple-hero .q-material-ink{opacity:1!important}
}
@media print{
 .q-simple-hero .q-material-line{stroke-dasharray:none!important;stroke-dashoffset:0!important}
 .q-simple-hero .q-material-ink{opacity:1!important}
}

/* Circular outline around the closing contact arrow. */
.faq-page .q-close>a>span{
  --q-arrow-size:clamp(68px,13vw,176px);
  display:grid;place-items:center;flex:none;
  width:var(--q-arrow-size);height:var(--q-arrow-size);
  border:1px solid currentColor;border-radius:50%;line-height:1;
}
.faq-page .q-close>a>span>.arrow-icon{display:block;width:56%;height:56%}
