/* Light, reusable SHAPE conversation over the existing sunrise. */
.shape-intro {
  --shape-red:#d92632;
  --shape-ink:#101718;
  min-height:100svh;
  display:grid;
  place-items:center;
  padding:clamp(5rem,9vh,7rem) clamp(1rem,4vw,4rem) clamp(8rem,16vh,12rem);
  color:var(--shape-ink);
  background:#010202 url("../images/section5/section5-bg.png") center/cover no-repeat;
}
.shape-intro__inner { width:min(100%,54rem); margin:0 auto; }
.shape-intro__prompt { margin:0 0 26px; color:#fff; text-align:center; font:800 .78rem/1.3 'Plus Jakarta Sans',sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.shape-intro__prompt span { display:inline-block; margin-left:.35rem; font-size:1rem; transition:transform .2s ease; }
.shape-intro__inner:hover .shape-intro__prompt span { transform:translateY(2px); }
.shape-questionnaire {
  position:relative;
  overflow:hidden;
  width:100%;
  padding:clamp(2rem,5vw,4.25rem);
  border:1px solid rgba(255,255,255,.17);
  border-radius:clamp(1.5rem,3vw,2.4rem);
  background:rgba(235,244,249,.3);
  box-shadow:none;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  transition:height .38s cubic-bezier(.22,1,.36,1);
}
.shape-questionnaire__stage { transition:opacity .18s ease,transform .24s ease; }
.shape-questionnaire__stage.is-leaving { opacity:0; transform:translateY(-8px); }
.shape-questionnaire__stage.is-entering { opacity:0; transform:translateY(10px); }
.shape-questionnaire.is-name-step { overflow:visible; padding:0; border-color:transparent; background:transparent; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
.shape-questionnaire.is-contact-step { width:min(100%,44rem); margin-inline:auto; }
.shape-questionnaire__name-card { padding:clamp(2rem,5vw,4.25rem); border:1px solid rgba(255,255,255,.17); border-radius:clamp(1.5rem,3vw,2.4rem); background:rgba(235,244,249,.3); box-shadow:none; -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
.shape-questionnaire__progress-wrap {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.7rem;
  margin-bottom:clamp(2.2rem,5vw,3.6rem);
  color:rgba(16,23,24,.48);
  font:700 .72rem/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.06em;
}
.shape-questionnaire__progress { display:grid; grid-template-columns:11px minmax(24px,48px) 11px minmax(24px,48px) 11px minmax(24px,48px) 11px minmax(24px,48px) 11px; align-items:center; width:min(100%,280px); }
.shape-questionnaire__marker { width:11px; height:11px; border-radius:50%; background:rgba(16,23,24,.2); box-shadow:inset 0 0 0 1px rgba(16,23,24,.08); transition:background .3s ease,box-shadow .3s ease,transform .3s ease; }
.shape-questionnaire__marker.is-complete,.shape-questionnaire__marker.is-current { background:var(--shape-red); box-shadow:0 0 0 4px rgba(217,38,50,.09); }
.shape-questionnaire__marker.is-current { transform:scale(1.08); }
.shape-questionnaire__connector { height:2px; background:rgba(16,23,24,.16); transition:background .3s ease; }
.shape-questionnaire__connector.is-complete { background:var(--shape-red); }
.shape-questionnaire__progress-count { color:rgba(16,23,24,.43); }
.shape-questionnaire__intro { display:flex; align-items:center; gap:.65rem; margin:0 0 1rem; color:rgba(16,23,24,.58); font:700 clamp(.9rem,1.5vw,1.05rem)/1.35 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__wave { width:2rem; height:2rem; flex:0 0 auto; fill:none; stroke:#263032; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.shape-questionnaire__wave .accent { stroke:var(--shape-red); }
.shape-questionnaire__heading { max-width:24ch; margin:0; color:var(--shape-ink); font:700 clamp(2rem,4.4vw,3.35rem)/1.08 'Plus Jakarta Sans',sans-serif; letter-spacing:-.045em; }
.shape-questionnaire__heading--contact { max-width:19ch; font-size:clamp(1.8rem,3.7vw,2.85rem); }
.shape-questionnaire__contact-copy { max-width:54ch; margin:1.15rem 0 0; color:rgba(16,23,24,.58); font:500 clamp(.9rem,1.5vw,1rem)/1.55 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__answers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:clamp(2rem,4.5vw,3rem); }
.shape-questionnaire__answer {
  position:relative;
  min-height:10rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1rem;
  padding:1.35rem 1.2rem;
  border:1px solid rgba(34,45,48,.11);
  border-radius:1rem;
  background:rgba(255,253,249,.82);
  box-shadow:0 8px 22px -20px rgba(15,30,50,.32),inset 0 1px 0 rgba(255,255,255,.5);
  color:var(--shape-ink);
  text-align:center;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.shape-questionnaire__answer::after { content:"✓"; position:absolute; top:.8rem; right:.8rem; width:1.4rem; height:1.4rem; display:grid; place-items:center; border-radius:50%; background:var(--shape-red); color:#fff; font:800 .75rem/1 'Plus Jakarta Sans',sans-serif; opacity:0; transform:scale(.65); transition:opacity .2s ease,transform .2s ease; }
.shape-questionnaire__answer-title { display:block; font:700 clamp(.98rem,1.6vw,1.12rem)/1.3 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__icon { display:block; width:92px; height:92px; object-fit:contain; flex:0 0 auto; transition:transform .25s cubic-bezier(.22,1,.36,1),filter .25s ease; }
.shape-questionnaire__icon .accent { stroke:var(--shape-red); }
.shape-questionnaire__answer:hover,.shape-questionnaire__answer:focus-visible { transform:translateY(-4px); border-color:rgba(217,38,50,.48); background:rgba(255,254,251,.94); box-shadow:0 14px 30px -22px rgba(15,30,50,.38),inset 0 1px 0 rgba(255,255,255,.7); outline:none; }
.shape-questionnaire__answer:hover .shape-questionnaire__icon,.shape-questionnaire__answer:focus-visible .shape-questionnaire__icon { transform:translateY(-2px); }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--rocket { transform:translateY(-5px) rotate(1deg); }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--growth { transform:translate(2px,-3px); }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--idea .icon-motion { filter:drop-shadow(0 0 3px rgba(217,38,50,.55)); }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--website .icon-motion,.shape-questionnaire__answer:hover .shape-questionnaire__icon--landing .icon-motion { transform:translateY(-1px); }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--enquiry .icon-motion { transform:scale(1.08); transform-origin:center; }
.shape-questionnaire__answer:hover .shape-questionnaire__icon--polish .icon-motion,.shape-questionnaire__answer:hover .shape-questionnaire__icon--else .icon-motion { filter:drop-shadow(0 0 2px rgba(217,38,50,.6)); transform:scale(1.04); transform-origin:center; }
.shape-questionnaire__icon .icon-motion { transition:transform .22s ease,filter .22s ease; }
.shape-questionnaire__answer.is-selected { transform:translateY(-1px); border-color:var(--shape-red); background:rgba(255,248,246,.9); box-shadow:0 0 0 1px rgba(217,38,50,.08); }
.shape-questionnaire__answer.is-selected::after { opacity:1; transform:scale(1); box-shadow:0 0 0 4px rgba(217,38,50,.1); }
.shape-questionnaire__form { margin-top:clamp(2rem,4.5vw,3rem); }
.shape-questionnaire__personal-intro { margin:0 0 1rem; color:var(--shape-red); font:700 clamp(.9rem,1.5vw,1.05rem)/1.35 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__name-form { width:100%; max-width:none; margin-top:clamp(2rem,4vw,2.75rem); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; align-items:end; }
.shape-questionnaire__submit--name { width:100%; min-width:0; height:3.25rem; margin-top:0; }
.shape-questionnaire__fields { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.shape-questionnaire__field--wide { grid-column:1 / -1; }
.shape-questionnaire__field label { display:block; margin:0 0 .55rem; color:rgba(16,23,24,.7); font:700 .78rem/1.2 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__optional { color:rgba(16,23,24,.4); font-weight:500; }
.shape-questionnaire__field input { width:100%; border:1px solid rgba(16,23,24,.14); border-radius:.9rem; background:rgba(255,253,249,.84); padding:1rem 1.05rem; color:var(--shape-ink); font:500 1rem/1.2 'Plus Jakarta Sans',sans-serif; outline:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.48); transition:border-color .2s ease,box-shadow .2s ease; }
.shape-questionnaire__field textarea { width:100%; min-height:135px; resize:vertical; border:1px solid rgba(16,23,24,.14); border-radius:.9rem; background:rgba(255,253,249,.84); padding:1rem 1.05rem; color:var(--shape-ink); font:500 1rem/1.45 'Plus Jakarta Sans',sans-serif; outline:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.48); transition:border-color .2s ease,box-shadow .2s ease; }
.shape-questionnaire.is-contact-step .shape-questionnaire__heading--contact { max-width:34rem; }
.shape-questionnaire.is-contact-step .shape-questionnaire__fields { display:flex; flex-direction:column; align-items:flex-start; }
.shape-questionnaire.is-contact-step .shape-questionnaire__field { width:min(100%,25rem); }
.shape-questionnaire.is-contact-step .shape-questionnaire__field--message { width:min(100%,34rem); }
.shape-questionnaire__field input::placeholder,.shape-questionnaire__field textarea::placeholder { color:rgba(16,23,24,.36); }
.shape-questionnaire__field input:focus,.shape-questionnaire__field textarea:focus { border-color:var(--shape-red); box-shadow:0 0 0 3px rgba(217,38,50,.1); }
.shape-questionnaire__submit { width:100%; margin-top:1.25rem; border:0; border-radius:.9rem; padding:1.05rem 1.25rem; background:var(--shape-red); color:#fff; cursor:pointer; font:700 1rem/1.2 'Plus Jakarta Sans',sans-serif; box-shadow:0 13px 28px -18px rgba(217,38,50,.8); transition:transform .2s ease,background .2s ease; }
.shape-questionnaire__submit:hover { transform:translateY(-2px); background:#eb303d; }
.shape-questionnaire__submit:disabled { cursor:wait; opacity:.72; transform:none; }
.shape-questionnaire__error { margin:1rem 0 -.35rem; color:#8f1f27; font:700 .83rem/1.45 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__error[hidden] { display:none; }
.shape-questionnaire__reassurance { margin:.9rem 0 0; color:rgba(16,23,24,.48); text-align:center; font:500 .8rem/1.4 'Plus Jakarta Sans',sans-serif; }
.shape-questionnaire__outcomes { margin-top:clamp(4rem,8vw,6rem); padding:clamp(1.2rem,2.5vw,1.75rem); border:1px solid rgba(255,255,255,.42); border-radius:1.5rem; background:rgba(255,252,247,.18); box-shadow:0 24px 60px -42px rgba(25,36,42,.45); -webkit-backdrop-filter:blur(10px) saturate(1.04); backdrop-filter:blur(10px) saturate(1.04); }
.shape-questionnaire__outcomes h3 { max-width:34rem; margin:0; color:var(--shape-red); font:800 clamp(.78rem,1.35vw,.9rem)/1.45 'Plus Jakarta Sans',sans-serif; letter-spacing:.11em; }
.shape-questionnaire__outcome-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; margin-top:1.4rem; }
.shape-questionnaire__outcome { display:flex; align-items:center; gap:.8rem; min-height:4.6rem; padding:.9rem 1rem; border:1px solid rgba(16,23,24,.1); border-radius:1rem; background:rgba(255,255,255,.38); color:var(--shape-ink); }
.shape-questionnaire__outcome svg { flex:0 0 auto; width:1.65rem; height:1.65rem; fill:none; stroke:var(--shape-red); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.shape-questionnaire__outcome svg.shape-questionnaire__outcome-dot { fill:var(--shape-red); stroke:none; }
.shape-questionnaire__outcome span { font:700 clamp(.88rem,1.45vw,1rem)/1.35 'Plus Jakarta Sans',sans-serif; letter-spacing:-.01em; }
.shape-questionnaire__success { padding-block:clamp(1rem,3vw,2rem); text-align:center; }
.shape-questionnaire__success .shape-questionnaire__heading { margin-inline:auto; }
.shape-questionnaire__success-note { margin:1.5rem 0 0; color:rgba(16,23,24,.55); font:500 clamp(.9rem,1.5vw,1rem)/1.5 'Plus Jakarta Sans',sans-serif; }
@media (min-width:769px) and (max-width:1366px) {
  .shape-questionnaire.is-contact-step .shape-questionnaire__form {
    margin-top:clamp(1rem,2vw,1.25rem);
  }
  .shape-questionnaire.is-contact-step .shape-questionnaire__field--message textarea {
    height:68px;
    min-height:68px;
  }
}
@media (max-width:39rem) {
  .shape-intro { place-items:start center; padding:5rem .75rem 7rem; }
  .shape-questionnaire { padding:1.6rem 1.1rem 1.8rem; border-radius:1.35rem; }
  .shape-questionnaire.is-name-step { padding:0; }
  .shape-questionnaire__name-card { padding:1.6rem 1.1rem 1.8rem; border-radius:1.35rem; }
  .shape-questionnaire__progress-wrap { margin-bottom:2rem; }
  .shape-questionnaire__answers { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; margin-top:1.5rem; }
  .shape-questionnaire__answer { min-height:7.8rem; gap:.65rem; padding:.9rem .65rem; }
  .shape-questionnaire__icon { width:76px; height:76px; }
  .shape-questionnaire__fields { grid-template-columns:1fr; }
  .shape-questionnaire__field--wide { grid-column:auto; }
  .shape-questionnaire__name-form { grid-template-columns:1fr; }
  .shape-questionnaire__outcomes { margin-top:3rem; padding:1rem; }
  .shape-questionnaire__outcome-grid { grid-template-columns:1fr; gap:.75rem; }
  .shape-questionnaire__outcome { min-height:4.4rem; padding:.85rem .95rem; }
}
@media (prefers-reduced-motion:reduce) {
  .shape-questionnaire,.shape-questionnaire *,.shape-questionnaire *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; }
}
