/* ===================== client intake survey ===================== */
/* several controls below set display explicitly, which would otherwise beat
   the [hidden] attribute — keep [hidden] authoritative. */
.svy [hidden],.map [hidden],.picked [hidden]{ display:none !important; }
.wrap--narrow{ max-width:940px; }
.svy{ padding-block:clamp(64px,9vw,116px) clamp(72px,10vw,130px); }
.svy__hd{ margin-bottom:clamp(32px,4vw,52px); }
.svy__hd h1{ font-size:clamp(2.4rem,6vw,4.4rem); margin-bottom:1.1rem; }
.svy__hd .lede{ max-width:62ch; }

/* ---------- progress ---------- */
.prog{ margin-bottom:clamp(28px,3.5vw,44px); }
.prog__list{ display:flex; gap:.35rem; list-style:none; margin:0 0 .85rem; padding:0;
  flex-wrap:wrap; }
.prog__i{ display:flex; align-items:center; gap:.45rem; padding:.3rem .7rem .3rem .5rem;
  border-radius:0; border:1px solid transparent; transition:border-color .3s,background .3s; }
.prog__d{ width:7px; height:7px; border-radius:0; background:var(--line-2); flex:none;
  transition:background .3s, box-shadow .3s; }
.prog__l{ font-family:var(--mono); font-size:.62rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--ink-4); transition:color .3s; }
.prog__i.is-done .prog__d{ background:var(--acc-bright); }
.prog__i.is-done .prog__l{ color:var(--ink-3); }
.prog__i.is-now{ border-color:var(--line-2); background:var(--glass); }
.prog__i.is-now .prog__d{ background:var(--acc-bright); }
.prog__i.is-now .prog__l{ color:var(--ink); }
.prog__bar{ height:2px; background:var(--line); border-radius:0; overflow:hidden; }
.prog__bar i{ display:block; height:100%; width:0; border-radius:0;
  background:var(--acc);
  transition:width .45s var(--ease); }
@media (max-width:680px){ .prog__l{ display:none; }
  .prog__i{ padding:.4rem; } .prog__list{ gap:.5rem; } }

/* ---------- step frame ---------- */
.step{ animation:stepIn .4s var(--ease) both; }
@keyframes stepIn{ from{ opacity:0; transform:translateY(10px);} to{ opacity:1; transform:none; } }
.step__eyebrow{ font-family:var(--mono); font-size:.63rem; letter-spacing:.18em;
  text-transform:uppercase; color:var(--acc-bright); margin-bottom:.7rem; }
.step__t{ font-size:clamp(1.6rem,3.2vw,2.4rem); letter-spacing:-.03em; margin-bottom:.6rem; }
.step__b{ color:var(--ink-3); max-width:64ch; margin-bottom:clamp(24px,3vw,36px); }
.step__body{ display:flex; flex-direction:column; gap:clamp(20px,2.6vw,30px); }

/* ---------- fields ---------- */
.fld{ display:flex; flex-direction:column; gap:.55rem; }
/* the field's own label stacks its hint underneath; option chips must not —
   :not(.opt) keeps this off the radio/checkbox labels nested inside a .fld */
.fld > label:not(.opt),.fld__lbl{ font-size:.92rem; font-weight:500; color:var(--ink);
  display:flex; flex-direction:column; gap:.28rem; }
.fld__hint{ font-size:.8rem; font-weight:400; color:var(--ink-4); line-height:1.5; }
.row{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(14px,1.8vw,22px); }
@media (max-width:620px){ .row{ grid-template-columns:1fr; } }

.fld input[type=text],.fld input[type=email],.fld input[type=tel],.fld input[type=url],
.fld input[type=number],.fld input[type=date],.fld textarea,.sel select,.rng input{
  width:100%; font:inherit; font-size:.94rem; color:var(--ink);
  background:var(--bg-1); border:1px solid var(--line); border-radius:0;
  padding:.7rem .85rem; transition:border-color .2s, background .2s, box-shadow .2s; }
.fld textarea{ resize:vertical; line-height:1.6; }
.fld input:focus,.fld textarea:focus,.sel select:focus,.rng input:focus{
  outline:none; border-color:var(--acc); background:var(--bg-2); }
.fld input::placeholder,.fld textarea::placeholder{ color:var(--ink-4); opacity:.75; }
.fld input[type=date]{ color-scheme:dark; }

.sel{ position:relative; }
.sel::after{ content:""; position:absolute; right:.95rem; top:50%; width:7px; height:7px;
  border-right:1.6px solid var(--ink-4); border-bottom:1.6px solid var(--ink-4);
  transform:translateY(-70%) rotate(45deg); pointer-events:none; }
.sel select{ appearance:none; padding-right:2.2rem; cursor:pointer; }

.rng{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:.7rem; }
.rng__d{ font-family:var(--mono); font-size:.7rem; color:var(--ink-4);
  text-transform:uppercase; letter-spacing:.1em; }

/* ---------- option chips ---------- */
.opts{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.opts--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:760px){ .opts,.opts--3{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:480px){ .opts,.opts--3{ grid-template-columns:1fr; } }
.fld .opt,.opt{ display:flex; flex-direction:row; align-items:flex-start; gap:.6rem; padding:.6rem .8rem;
  border:1px solid var(--line); border-radius:0; background:var(--bg-1);
  cursor:pointer; font-size:.88rem; line-height:1.45; color:var(--ink-2);
  transition:border-color .2s, background .2s, color .2s; }
.opt:hover{ border-color:var(--line-2); background:var(--bg-2); color:var(--ink); }
.opt input{ appearance:none; width:16px; height:16px; margin-top:.12rem; flex:none;
  border:1.5px solid var(--line-2); background:transparent; cursor:pointer;
  transition:border-color .2s, background .2s; }
.opt input[type=radio]{ border-radius:50%; }   /* radios stay round so they read as radios */
.opt input[type=checkbox]{ border-radius:0; }
.opt input:checked{ border-color:var(--acc); background:var(--acc); }
.opt input:checked::after{ content:""; display:block; width:100%; height:100%;
  background:no-repeat center/70% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 7'/%3E%3C/svg%3E"); }
.opt input[type=radio]:checked::after{ background:none;
  box-shadow:inset 0 0 0 4px var(--bg); border-radius:50%; }
.opt:has(input:checked){ border-color:var(--acc); background:var(--acc-dim); color:var(--ink); }
.opt input:focus-visible{ outline:2px solid var(--acc-bright); outline-offset:2px; }
.fld .opt--inline,.opt--inline{ display:inline-flex; align-self:flex-start; }
.consent{ margin-top:.4rem; }

/* ---------- type cards ---------- */
.tcards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; }
@media (max-width:820px){ .tcards{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:520px){ .tcards{ grid-template-columns:1fr; } }
.tcard input{ position:absolute; opacity:0; pointer-events:none; }
.tcard__in{ display:flex; flex-direction:column; gap:.4rem; height:100%;
  padding:1.1rem 1.15rem 1.2rem; border:1px solid var(--line); border-radius:0;
  background:var(--bg-1); cursor:pointer;
  transition:border-color .25s, background .25s, transform .25s var(--ease); }
.tcard__in:hover{ border-color:var(--line-2); background:var(--bg-2); transform:translateY(-2px); }
.tcard__t{ font-family:var(--display); font-size:1.05rem; font-weight:600; letter-spacing:-.02em; }
.tcard__d{ font-size:.83rem; color:var(--ink-3); line-height:1.5; }
.tcard input:checked+.tcard__in{ border-color:var(--acc); background:var(--acc-dim); }
.tcard input:focus-visible+.tcard__in{ outline:2px solid var(--acc-bright); outline-offset:2px; }

/* ---------- floor-plan cards ---------- */
.fpcards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; }
@media (max-width:820px){ .fpcards{ grid-template-columns:1fr; } }
.fpcard input{ position:absolute; opacity:0; pointer-events:none; }
.fpcard__in{ display:flex; flex-direction:column; gap:.45rem; height:100%;
  padding:.8rem .85rem 1rem; border:1px solid var(--line); border-radius:0;
  background:var(--bg-1); cursor:pointer;
  transition:border-color .25s, background .25s, transform .25s var(--ease); }
.fpcard__in:hover{ border-color:var(--line-2); transform:translateY(-2px); }
.fpcard input:checked+.fpcard__in{ border-color:var(--acc); background:var(--acc-dim); }
.fpcard input:focus-visible+.fpcard__in{ outline:2px solid var(--acc-bright); outline-offset:2px; }
.fpcard__art{ display:block; border-radius:0; overflow:hidden; background:var(--bg-2);
  border:1px solid var(--line); }
.fpcard__t{ font-family:var(--display); font-size:.95rem; font-weight:600; letter-spacing:-.02em; }
.fpcard__d{ font-size:.8rem; color:var(--ink-3); line-height:1.5; }

.fp{ display:block; width:100%; height:auto; }
.fp .fp-wall{ fill:none; stroke:var(--ink-4); stroke-width:2.4; }
.fp .fp-room{ fill:rgba(255,255,255,.035); stroke:var(--line-2); stroke-width:1.1; }
.fp .fp-core{ fill:rgba(255,255,255,.07); stroke:var(--line-2); stroke-width:1.1; }
.fp .fp-desk{ fill:rgba(236,48,19,.42); stroke:none; }
.fp .fp-lbl{ font-family:var(--mono); font-size:7px; letter-spacing:.08em;
  fill:var(--ink-4); text-anchor:middle; }
.fp .fp-lbl--dim{ fill:var(--ink-4); opacity:.7; }
.fpcard input:checked+.fpcard__in .fp-desk{ fill:rgba(236,48,19,.72); }

/* ---------- map ---------- */
.map{ border:1px solid var(--line); border-radius:0; overflow:hidden;
  background:var(--bg-1); }
.map__bar{ display:flex; gap:.7rem; padding:.7rem; border-bottom:1px solid var(--line);
  align-items:center; flex-wrap:wrap; }
.map__search{ position:relative; flex:1; min-width:220px; display:flex; align-items:center; }
.map__search svg{ position:absolute; left:.8rem; width:15px; height:15px; stroke:var(--ink-4);
  fill:none; stroke-width:1.9; stroke-linecap:round; pointer-events:none; }
.map__search input{ width:100%; font:inherit; font-size:.9rem; color:var(--ink);
  background:var(--bg-2); border:1px solid var(--line); border-radius:0;
  padding:.6rem .8rem .6rem 2.2rem; transition:border-color .2s, box-shadow .2s; }
.map__search input:focus{ outline:none; border-color:var(--acc); }
.map__clear{ position:absolute; right:.5rem; width:22px; height:22px; border:0;
  border-radius:0; background:var(--line); color:var(--ink-2); cursor:pointer;
  font-size:15px; line-height:1; display:grid; place-items:center; }
.map__clear:hover{ background:var(--line-2); color:var(--ink); }
.map__results{ position:absolute; top:calc(100% + 6px); left:0; right:0; z-index:1200;
  background:var(--bg-2); border:1px solid var(--line-2); border-radius:0;
  overflow:hidden; max-height:260px; overflow-y:auto; }
.map__results button{ display:block; width:100%; text-align:left; padding:.6rem .8rem;
  background:none; border:0; border-bottom:1px solid var(--line); color:var(--ink-2);
  font:inherit; font-size:.86rem; cursor:pointer; line-height:1.4; }
.map__results button:last-child{ border-bottom:0; }
.map__results button:hover,.map__results button:focus{ background:var(--acc-dim);
  color:var(--ink); outline:none; }
.map__results .none{ padding:.7rem .8rem; font-size:.86rem; color:var(--ink-4); }

.map__tools{ display:flex; gap:.3rem; background:var(--bg-2); border:1px solid var(--line);
  border-radius:0; padding:.22rem; }
.tool{ font-family:var(--mono); font-size:.63rem; letter-spacing:.1em; text-transform:uppercase;
  padding:.45rem .7rem; border:0; border-radius:0; background:none; color:var(--ink-4);
  cursor:pointer; transition:background .2s, color .2s; white-space:nowrap; }
.tool:hover{ color:var(--ink-2); }
.tool.is-on{ background:var(--acc); color:#fff; }

.map__canvas{ height:clamp(340px,52vh,520px); background:var(--bg-1); }
.map__hint{ padding:.6rem .8rem; margin:0; font-size:.8rem; color:var(--ink-4);
  border-top:1px solid var(--line); background:var(--bg); }

/* leaflet re-skin */
.leaflet-container{ background:var(--bg-1); font-family:var(--body); }
.leaflet-tile{ filter:grayscale(1) invert(1) brightness(.86) contrast(1.05) hue-rotate(180deg); }
.leaflet-control-zoom a{ background:var(--bg-2)!important; color:var(--ink-2)!important;
  border-color:var(--line)!important; }
.leaflet-control-zoom a:hover{ background:var(--acc)!important; color:#fff!important; }
.leaflet-control-attribution{ background:rgba(32,30,29,.8)!important; color:var(--ink-4)!important;
  font-size:9px!important; }
.leaflet-control-attribution a{ color:var(--ink-3)!important; }
.leaflet-tooltip.sm-tip{ background:var(--bg-2); border:1px solid var(--line-2);
  color:var(--ink); font-family:var(--mono); font-size:.62rem; letter-spacing:.1em;
  text-transform:uppercase; padding:.28rem .5rem; }
.leaflet-tooltip.sm-tip::before{ display:none; }
.map--draw .leaflet-container{ cursor:crosshair; }

/* ---------- picked areas ---------- */
.picked__hd{ display:flex; align-items:center; justify-content:space-between; gap:1rem;
  margin-bottom:.7rem; }
.picked__n{ display:inline-grid; place-items:center; min-width:20px; height:20px; padding:0 .4rem;
  border-radius:0; background:var(--acc); color:#fff; font-family:var(--mono);
  font-size:.62rem; margin-left:.45rem; }
.picked__clear{ font-family:var(--mono); font-size:.62rem; letter-spacing:.1em;
  text-transform:uppercase; background:none; border:0; color:var(--ink-4); cursor:pointer; }
.picked__clear:hover{ color:var(--acc-bright); }
.picked__list{ display:flex; flex-wrap:wrap; gap:.45rem; }
.picked__empty{ font-size:.86rem; color:var(--ink-4); margin:0; line-height:1.55; }
.chip{ display:inline-flex; align-items:center; gap:.5rem; padding:.42rem .5rem .42rem .75rem;
  border:1px solid var(--line-2); border-radius:0; background:var(--glass);
  font-size:.84rem; color:var(--ink); }
.chip__k{ font-family:var(--mono); font-size:.58rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--acc-bright); }
.chip__x{ width:18px; height:18px; border:0; border-radius:0; background:var(--line);
  color:var(--ink-3); cursor:pointer; font-size:13px; line-height:1; display:grid;
  place-items:center; flex:none; }
.chip__x:hover{ background:var(--acc); color:#fff; }
.chip--approx .chip__k{ color:var(--ink-4); }

/* ---------- nav / review / done ---------- */
.svy__nav{ display:flex; align-items:center; gap:.6rem; margin-top:clamp(28px,3.5vw,42px);
  padding-top:clamp(20px,2.5vw,28px); border-top:1px solid var(--line); flex-wrap:wrap; }
.svy__spacer{ flex:1; }
#svy-skip{ font-size:.8rem; opacity:.7; }
#svy-skip:hover{ opacity:1; }
.svy__err{ margin-top:.9rem; font-size:.86rem; color:#fca5a5;
  background:rgba(248,113,113,.1); border:1px solid rgba(248,113,113,.3);
  border-radius:0; padding:.65rem .85rem; }

.review{ display:flex; flex-direction:column; gap:.2rem; }
.rev__grp{ border:1px solid var(--line); border-radius:0; overflow:hidden;
  background:var(--bg-1); margin-bottom:.6rem; }
.rev__hd{ display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.75rem 1rem; background:var(--glass); border-bottom:1px solid var(--line); }
.rev__hd h3{ font-family:var(--mono); font-size:.63rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--acc-bright); margin:0; }
.rev__edit{ font-family:var(--mono); font-size:.6rem; letter-spacing:.1em;
  text-transform:uppercase; background:none; border:0; color:var(--ink-4); cursor:pointer; }
.rev__edit:hover{ color:var(--acc-bright); }
.rev__rows{ padding:.5rem 1rem .8rem; }
.rev__r{ display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:1rem;
  padding:.45rem 0; border-bottom:1px solid var(--line); font-size:.87rem; }
.rev__r:last-child{ border-bottom:0; }
.rev__k{ color:var(--ink-4); }
.rev__v{ color:var(--ink); word-break:break-word; }
.rev__none{ padding:.6rem 1rem .9rem; font-size:.85rem; color:var(--ink-4); }
@media (max-width:560px){ .rev__r{ grid-template-columns:1fr; gap:.15rem; } }
.review__note{ font-size:.82rem; color:var(--ink-4); margin-top:.9rem; }

.svy__done{ text-align:center; padding:clamp(40px,7vw,80px) 0; }
.svy__check{ width:60px; height:60px; margin:0 auto 1.5rem; border-radius:0;
  display:grid; place-items:center; background:var(--acc-dim);
  border:1px solid rgba(236,48,19,.4); }
.svy__check svg{ width:26px; height:26px; stroke:var(--acc-bright); fill:none;
  stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.svy__done h2{ font-size:clamp(1.7rem,3.4vw,2.5rem); margin-bottom:.7rem; }
.svy__done p{ color:var(--ink-3); max-width:52ch; margin:0 auto 1.8rem; }
.svy__doneacts{ display:flex; gap:.6rem; justify-content:center; flex-wrap:wrap; }

/* ---------- area picker: CoStar list beside the map ---------- */
.geo{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:1rem;
  align-items:start; margin-bottom:1.2rem; }
@media (max-width:900px){ .geo{ grid-template-columns:1fr; } }
.geo [hidden]{ display:none !important; }
.geo .map{ margin:0; }

.geo__pick{ border:1px solid var(--line); border-radius:0; background:var(--bg-1);
  display:flex; flex-direction:column; overflow:hidden;
  height:calc(clamp(340px,52vh,520px) + 98px); }
@media (max-width:900px){ .geo__pick{ height:auto; } .geo__tree{ max-height:440px; } }
.geo__filter{ position:relative; padding:.7rem; border-bottom:1px solid var(--line); }
.geo__filter svg{ position:absolute; left:1.5rem; top:50%; transform:translateY(-50%);
  width:15px; height:15px; stroke:var(--ink-4); fill:none; stroke-width:2; }
.geo__filter input{ width:100%; font:inherit; font-size:.9rem; color:var(--ink);
  background:var(--bg-2); border:1px solid var(--line); border-radius:0;
  padding:.62rem .8rem .62rem 2.25rem; }
.geo__filter input:focus{ outline:none; border-color:var(--acc); }
.geo__for{ margin:0; padding:.55rem .95rem; font-size:.76rem; line-height:1.45;
  color:var(--ink-4); border-bottom:1px solid var(--line); }
.geo__for.is-note{ color:var(--acc-bright); }
.geo__tree{ flex:1; overflow-y:auto; overscroll-behavior:contain; padding:.2rem .5rem .8rem; }
.geo__none{ font-size:.85rem; color:var(--ink-4); margin:.9rem .5rem; line-height:1.5; }

.mkt__t{ position:sticky; top:0; z-index:2; margin:0; padding:.7rem .45rem .4rem;
  background:var(--bg-1); font-family:var(--mono); font-size:.62rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--acc-bright); }
.cl{ border-radius:0; transition:background .2s; }
.cl + .cl{ margin-top:1px; }
.cl.has-on{ background:rgba(236,48,19,.07); }
.cl__hd{ display:flex; align-items:center; gap:.4rem; padding:0 .25rem 0 .45rem; }
.cl__all{ display:flex; align-items:center; gap:.6rem; flex:1; min-width:0;
  padding:.5rem 0; cursor:pointer; }
.cl__name{ font-size:.9rem; font-weight:500; color:var(--ink); line-height:1.3; }
.cl__tog{ display:inline-flex; align-items:center; gap:.35rem; flex:none; border:0;
  background:none; cursor:pointer; color:var(--ink-4); font-family:var(--mono);
  font-size:.6rem; letter-spacing:.08em; text-transform:uppercase; padding:.42rem .5rem;
  border-radius:0; white-space:nowrap; }
.cl__tog:hover{ color:var(--ink-2); background:var(--glass-2); }
.cl__tog svg{ width:12px; height:12px; stroke:currentColor; fill:none; stroke-width:2;
  transition:transform .2s; }
.cl.is-open .cl__tog svg{ transform:rotate(180deg); }
.cl.has-on .cl__n{ color:var(--acc-bright); }
.cl__subs{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 .6rem;
  padding:0 .5rem .55rem 2.05rem; }
@media (max-width:520px){ .cl__subs{ grid-template-columns:1fr; } }
.sub{ display:flex; align-items:flex-start; gap:.55rem; padding:.34rem 0; cursor:pointer;
  font-size:.84rem; line-height:1.35; color:var(--ink-2); }
.sub:hover{ color:var(--ink); }

.geo input[type="checkbox"]{ -webkit-appearance:none; appearance:none; flex:none;
  width:16px; height:16px; margin:.08rem 0 0; display:grid; place-items:center;
  border:1.5px solid var(--line-2); border-radius:0; background:var(--bg-2); cursor:pointer;
  transition:background .15s, border-color .15s; }
.geo input[type="checkbox"]:hover{ border-color:var(--acc-bright); }
.geo input[type="checkbox"]:checked,
.geo input[type="checkbox"]:indeterminate{ background:var(--acc); border-color:var(--acc); }
.geo input[type="checkbox"]:checked::after{ content:""; width:11px; height:11px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 7'/%3E%3C/svg%3E") center / contain no-repeat; }
.geo input[type="checkbox"]:indeterminate::after{ content:""; width:8px; height:2px;
  border-radius:0; background:#fff; }
.geo input[type="checkbox"]:focus-visible{ outline:2px solid var(--acc-bright); outline-offset:2px; }

/* ---------- required fields ---------- */
/* the asterisk is drawn here, not typed into the label, so it never shows up in the
   summary email or the "Please complete…" message */
.is-req::after{ content:"*"; margin-left:.22em; color:var(--acc-bright); font-weight:600; }
.req-mark{ color:var(--acc-bright); font-weight:600; }
.svy__req{ margin:calc(-1 * clamp(14px,2vw,26px)) 0 clamp(18px,2.4vw,28px);
  font-size:.8rem; color:var(--ink-4); }
.tcards__lbl{ display:block; margin-bottom:-.55rem; }   /* sits closer to its cards than the step's 20px spacing */

/* ---------- saved-draft notice ---------- */
.svy__draft{ margin:0 0 clamp(18px,2.4vw,28px); padding:.7rem .9rem; font-size:.86rem;
  color:var(--ink-2); border:1px solid var(--line-2); border-left:3px solid var(--acc);
  background:var(--bg-1); display:flex; flex-wrap:wrap; align-items:center; gap:.4rem .9rem; }
.svy__restart{ background:none; border:0; padding:0; font:inherit; font-weight:600;
  color:var(--acc-bright); cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.svy__restart:hover{ color:#FFFFFF; }

/* ---------- "rather talk first" link under the survey intro ---------- */
.svy__alt{ margin-top:1rem; font-size:.95rem; color:var(--ink-3); }
.svy__alt a{ color:var(--acc-bright); font-weight:600; text-decoration:underline;
  text-underline-offset:3px; }
.svy__alt a:hover{ color:#FFFFFF; }
