/* The homepage #start form (index.html), shared by the SAT, math and
   admissions pages so every page takes a lead the same way. Rules copied
   in the homepage's order; if the homepage form is restyled, restyle it here. */
:root{--spring:cubic-bezier(.34,1.4,.64,1)}
.bookcard .ff{margin-bottom:.9rem}
.bookcard .ff[hidden]{display:none!important}
.bookcard .frow{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
@media (max-width:560px){
  .bookcard .frow{grid-template-columns:1fr}
}
.bookcard .fl{display:block;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
.bookcard .fl em{font-style:normal;text-transform:none;letter-spacing:.02em;font-weight:400}
.bookcard .fi{width:100%;padding:.82rem .9rem;font:inherit;font-size:.92rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:3px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.bookcard .fi:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(176,39,28,.12)}
.bookcard .fsub{margin-top:.4rem}
.bookcard .fnote{margin-top:.7rem;font-size:.73rem;color:var(--muted);text-align:center}
.uline{position:relative;display:inline-block;white-space:nowrap}
.uline-svg{position:absolute;left:-3%;right:-3%;bottom:-.34em;width:106%;height:.42em;overflow:visible;pointer-events:none}
.uline-svg path{fill:none;stroke:var(--red-lift);stroke-width:3.4;stroke-linecap:round;stroke-dasharray:var(--len,200);stroke-dashoffset:var(--len,200)}
.capture.drawn .uline-svg .u1{animation:ulineDraw .62s var(--ease) .15s forwards}
.capture.drawn .uline-svg .u2{animation:ulineDraw .58s var(--ease) .52s forwards}
@keyframes ulineDraw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){
  .uline-svg path{stroke-dashoffset:0;animation:none}
}
.fsub{transition:background .25s var(--ease),transform .35s var(--spring)}
.fsub:hover{transform:translateY(-2px)}
.fsub:active{transform:translateY(0) scale(.99)}
.capture{background:#000;color:#EDE7E5;border-bottom:none;position:relative;overflow:hidden;border-top:1px solid rgba(255,255,255,.08)}
.capture::before{content:"";position:absolute;left:-14%;bottom:-38%;width:64vw;aspect-ratio:1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(176,39,28,.24) 0%,rgba(176,39,28,.07) 44%,transparent 70%)}
.capture{min-height:calc(100svh - 64px);display:flex;align-items:center;padding:0}
.capture .shell{position:relative;z-index:1;max-width:none;width:100%;padding:clamp(.8rem,1.8vh,1.6rem) clamp(1.25rem,3vw,2.8rem)}
@media (max-height:880px){
  .capture h2{font-size:clamp(1.32rem,2.2vw,1.78rem)}
  .capintro{margin-bottom:.8rem}
  .capintro .lead{font-size:.86rem;margin-top:.55rem}
  .capture .bookcard{padding:.95rem 1.1rem}
  .capture .bookcard .ff{margin-bottom:.48rem}
  .capture .bookcard .fi{padding:.5rem .7rem;font-size:.85rem}
  .capture .bookcard .fsub{padding:.78rem}
}
@media (max-height:800px){
  .capture .shell{padding-top:.5rem;padding-bottom:.5rem}
  .capintro{margin-bottom:.55rem}
  .capture h2{font-size:1.22rem}
  .capintro .lead{font-size:.79rem;margin-top:.4rem;line-height:1.45}
  .capture .bookcard{padding:.78rem .95rem}
  .capture .bookcard .ff{margin-bottom:.36rem}
  .capture .bookcard .fl{font-size:.57rem;margin-bottom:.18rem}
  .capture .bookcard .fi{padding:.4rem .65rem;font-size:.82rem}
  .capture .bookcard textarea.fi{height:46px}
  .capture .bookcard .fsub{padding:.62rem;font-size:.7rem}
  .capture .bookcard .fnote{margin-top:.32rem;font-size:.66rem}
  .capphone{margin-top:.55rem;font-size:.72rem}
}
.capintro{max-width:46ch;margin:0 auto clamp(1rem,2.2vh,1.7rem);text-align:center}
.capture h2{font-family:var(--display);font-weight:700;letter-spacing:-.022em;font-size:clamp(1.5rem,2.7vw,2.2rem);line-height:1.12;color:#fff;margin-top:.55rem}
.capintro .lead{margin-top:.7rem;font-size:clamp(.88rem,1.02vw,.97rem);line-height:1.55;color:rgba(237,231,229,.7)}
.capdate{margin:clamp(.7rem,1.4vh,1.1rem) auto 0;font-size:.79rem;line-height:1.5;color:rgba(237,231,229,.62)}
.capdate .cdk{font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--red-lift);margin-right:.45rem}
.capdate b{color:#fff;font-weight:600}
.capdate a{margin-left:.5rem;color:rgba(237,231,229,.8);border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:1px;transition:color .25s var(--ease),border-color .25s var(--ease)}
.capdate a:hover{color:#fff;border-bottom-color:#fff}
.capphone{margin:clamp(.8rem,1.6vh,1.2rem) auto 0;text-align:center;font-size:.76rem;letter-spacing:.06em;color:rgba(237,231,229,.5)}
.capphone a{margin-left:.5rem;font-family:var(--display);font-weight:700;font-size:1.06rem;letter-spacing:-.01em;color:#fff;transition:color .25s var(--ease)}
.capphone a:hover{color:var(--red-lift)}
.capture .bookcard{max-width:600px;margin:0 auto;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.13);border-radius:6px;padding:clamp(1.05rem,1.9vw,1.55rem);backdrop-filter:blur(6px)}
.capture .bookcard .ff{margin-bottom:.6rem}
.capture .bookcard .frow{gap:.6rem}
.capture .bookcard .fl{font-size:.63rem;margin-bottom:.26rem}
.capture .bookcard .fi{padding:.6rem .78rem;font-size:.88rem}
.capture .bookcard textarea.fi{min-height:0}
.capture .bookcard .frow .ff{display:flex;flex-direction:column;justify-content:flex-end}
.capture .bookcard .fnote{margin-top:.5rem;font-size:.7rem}
.capture .bookcard .fl{color:rgba(237,231,229,.6)}
.capture .bookcard .fi{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.17);color:#fff}
.capture .bookcard .fi::placeholder{color:rgba(237,231,229,.34)}
.capture .bookcard .fi:focus{background:rgba(255,255,255,.08);border-color:var(--red-lift);box-shadow:0 0 0 3px rgba(210,66,52,.2)}
.capture .bookcard select.fi option{color:#111;background:#fff}
.capture .bookcard .fsub{padding:.88rem;font-size:.74rem;letter-spacing:.13em;border-radius:3px;margin-top:.2rem}
.capture .bookcard .fsub:hover{background:var(--red-lift)}
.capture .bookcard .fnote{color:rgba(237,231,229,.5)}
.capture .bookcard .fchoice{margin-bottom:.6rem}
.capture .fchoice-opts{gap:.5rem}
.capture .fchoice-opts span{padding:.5rem .72rem;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.17)}
.capture .fchoice-opts b{color:#fff;font-size:.82rem}
.capture .fchoice-opts i{color:rgba(237,231,229,.5);font-size:.7rem}
.capture .fchoice-opts label:hover span{border-color:rgba(255,255,255,.4)}
.capture .fchoice-opts input:checked+span{background:rgba(210,66,52,.14);border-color:var(--red-lift);box-shadow:inset 0 0 0 1px var(--red-lift)}
.capture .fchoice-opts input:focus-visible+span{outline-color:var(--red-lift)}
@media (max-height:800px){
  .capture .fchoice-opts i{display:none}
  .capture .fchoice-opts span{padding:.4rem .65rem}
}
@media (max-width:900px){
  .capture .shell{grid-template-columns:1fr}
}
.capture .lbl{color:rgba(237,231,229,.5)!important}
.capture .lbl::before{color:var(--red-lift)}
.capture h2{font-family:var(--display);font-size:clamp(1.75rem,3.4vw,2.5rem);color:#fff;line-height:1.14;margin-top:.7rem}
.capture .lead{margin-top:1rem;font-size:.98rem;max-width:42ch;color:rgba(237,231,229,.72)}
.bookcard{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:clamp(1.5rem,2.8vw,2.1rem);box-shadow:0 1px 2px rgba(17,17,17,.03),0 22px 50px -34px rgba(17,17,17,.4)}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ff{margin-bottom:.95rem}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
@media (max-width:560px){
  .frow{grid-template-columns:1fr}
}
.fl{display:block;font-size:.63rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
.fl em{font-style:normal;font-weight:400;letter-spacing:.02em;text-transform:none;color:var(--muted)}
.fi{width:100%;padding:.82rem .9rem;background:var(--paper);border:1px solid var(--line);border-radius:2px;color:var(--ink);font-family:var(--sans);font-size:.9rem;font-weight:300;transition:border-color .2s,background .2s}
.fi:focus{outline:none;border-color:var(--red);background:#fff}
textarea.fi{resize:vertical;min-height:76px}
.fchoice{border:0;padding:0;margin:0 0 .95rem;min-width:0}
.fchoice .fl{padding:0}
.fchoice-opts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.fchoice-opts label{position:relative;cursor:pointer;display:block}
.fchoice-opts input{position:absolute;opacity:0;width:1px;height:1px}
.fchoice-opts span{display:grid;gap:.1rem;height:100%;padding:.7rem .8rem;border:1px solid var(--line);border-radius:2px;background:var(--paper);transition:border-color .2s,background .2s,box-shadow .2s}
.fchoice-opts b{font-size:.84rem;font-weight:600;color:var(--ink)}
.fchoice-opts i{font-style:normal;font-size:.72rem;color:var(--muted)}
.fchoice-opts label:hover span{border-color:var(--muted)}
.fchoice-opts input:checked+span{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red);background:#fff}
.fchoice-opts input:focus-visible+span{outline:2px solid var(--red);outline-offset:2px}
@media (max-width:360px){
  .fchoice-opts{grid-template-columns:1fr}
}
.fsub{width:100%;margin-top:.4rem;padding:1.02rem;background:var(--red);color:#fff;border:none;border-radius:2px;font-family:var(--sans);font-size:.76rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:background .22s var(--ease)}
.fsub:hover{background:var(--ink)}
.fsub:disabled{opacity:.6;cursor:default}
.fnote{margin-top:.7rem;font-size:.72rem;color:var(--muted);text-align:center}
.fmsg{display:none;margin-top:.7rem;font-size:.78rem;line-height:1.6}
.fmsg.ok{color:var(--gold-deep)}
.fmsg.err{color:var(--red)}
.fi[aria-invalid="true"]{border-color:var(--red)}
.capture .bookcard .fmsg.err{color:var(--red-lift)}
.capture .bookcard .fi[aria-invalid="true"]{border-color:var(--red-lift)}

/* Phones zoom into any field under 16px when it is tapped: keep them at 16px there. */
@media(max-width:600px){.bookcard .fi,.capture .bookcard .fi{font-size:16px}}
