/* Press Prospects: an exhibitor floor plan. Ground #eef2f4, ink #13212b, aisle teal #00626b, booth red #d0312d. */
@font-face{font-family:"Hanken Grotesk";src:url("fonts/hanken-grotesk-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url("fonts/hanken-grotesk-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url("fonts/hanken-grotesk-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url("fonts/hanken-grotesk-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}

:root{
  --ground:#eef2f4; --ink:#13212b; --teal:#00626b; --red:#d0312d; --on-red:#ffffff;
  --ink-2:#3b4a54; --hall:#ffffff; --lit:#fbe9e6; --grid:rgba(0,98,107,.08);
  --display:"Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;
  --text:"Hanken Grotesk", system-ui, sans-serif;
  --pad:clamp(1.25rem, 4vw, 3rem);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important} }
body{margin:0;background-color:var(--ground);
color:var(--ink);font:400 1.0625rem/1.55 var(--text);font-variant-numeric:lining-nums}
::selection{background:var(--red);color:var(--on-red)}
a{color:var(--teal);text-decoration-thickness:2px;text-underline-offset:.2em}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:800;color:var(--teal);letter-spacing:-.015em;line-height:1.08;margin:0 0 .6em}
h2{font-size:clamp(1.6rem,3.2vw,2.3rem)}
h3{font-size:1.25rem;font-weight:800}
p{margin:0 0 1em}
strong{font-weight:700}
img{max-width:100%;height:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--teal);color:#fff;padding:.5rem 1rem}
.skip:focus{left:1rem;z-index:9}
.skip:hover,.skip:focus{color:#fff}

/* masthead: the hall's sign */
.masthead{display:flex;align-items:center;justify-content:space-between;gap:.4rem 1rem;flex-wrap:wrap;
  padding:.6rem var(--pad);border-bottom:2px solid var(--teal);background:var(--ground)}
.brand img{display:block;width:clamp(150px,22vw,260px);height:auto}
.masthead ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0;font-family:var(--display);font-weight:600}
.masthead a{text-decoration:none;color:var(--ink)}
.masthead a:hover,.masthead a[aria-current]{color:var(--teal);text-decoration:underline}

main{display:block}
section{padding:clamp(1.4rem,3vw,2.2rem) var(--pad);max-width:1240px;margin:0 auto}

/* first screen */
.hero{display:grid;gap:1.6rem;padding-top:clamp(1rem,2vw,1.4rem);padding-bottom:1.2rem}
@media (min-width:960px){.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:3rem} }
.avatar{font-family:var(--display);font-weight:600;font-size:.875rem;letter-spacing:.02em;color:var(--ink-2);margin-bottom:.6rem;
  display:inline-block;border:2px solid var(--teal);padding:.15rem .55rem}
.hero h1{font-size:clamp(1.85rem,3.8vw,2.9rem);color:var(--ink);margin-bottom:.45em;max-width:20ch}
.sub{font-size:clamp(1.0625rem,1.6vw,1.25rem);max-width:56ch;color:var(--ink-2);margin-bottom:.7rem}
.value{font-family:var(--display);font-weight:600;font-size:clamp(1.2rem,2.1vw,1.45rem);line-height:1.3;margin-bottom:.5rem}
.value strong,.money strong{font-weight:800;color:var(--red);font-size:1.18em;white-space:nowrap}
.ticks{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.2rem}
.ticks li{position:relative;padding-left:1.7rem}
.ticks li::before{content:"";position:absolute;left:0;top:.38em;width:.85em;height:.85em;border:2.5px solid var(--teal)}
.ticks li::after{content:"";position:absolute;left:.3em;top:.6em;width:.4em;height:.4em;background:var(--red)}
.act{padding:.2rem 0 .1rem}
.vblock{font-weight:700;font-size:1.25rem;line-height:1.35;margin-bottom:.6rem;max-width:52ch}
.risk{font-size:1.0625rem;color:var(--ink);margin:.7rem 0 0;max-width:56ch}

/* the one action: a lit booth */
.go{font:800 1.25rem/1.3 var(--display);background:var(--red);color:var(--on-red);border:0;padding:.95rem 1.5rem;cursor:pointer;
  box-shadow:5px 5px 0 var(--ink);transition:transform .12s ease-out,box-shadow .12s ease-out}
.go:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
.go:active{transform:translate(5px,5px);box-shadow:0 0 0 var(--ink)}
.go.wide{width:100%;margin-top:1rem}
.quiet{font:600 1.0625rem/1.3 var(--display);background:transparent;color:var(--teal);border:2px solid var(--teal);padding:.7rem 1.1rem;cursor:pointer;margin-top:1rem}
.quiet:hover{background:var(--hall)}

/* the win */
.win{margin:0;background:var(--hall);border:3px solid var(--teal)}
.win svg{display:block;width:100%;height:auto}
.w-k{font:800 22px var(--display);fill:#00626b}
.w-n{font:600 19px var(--display);fill:#13212b}
.w-a{font:800 21px var(--display);fill:#13212b}
.w-us{fill:#d0312d}

/* comparison: our column is the lit booth */
.tablewrap{overflow-x:auto;padding:.4rem .6rem;border:3px solid var(--teal);background:var(--hall)}
table{border-collapse:collapse;width:100%;min-width:38rem;font-size:1.0625rem}
th,td{text-align:left;vertical-align:top;padding:.55rem 1rem;border-bottom:1px solid rgba(0,98,107,.25)}
thead th{font:800 1.0625rem/1.3 var(--display);color:var(--ink);border-bottom:2px solid var(--teal)}
tbody th{font-family:var(--display);font-weight:600;color:var(--teal);width:22%}
.us{background:var(--lit)}
thead .us{background:var(--red);color:var(--on-red)}
tbody tr:last-child td{border-bottom:0}
.money td{font-family:var(--display);font-weight:600;font-size:1.25rem}

/* offer card: the exhibitor listing */
.offer{display:grid;gap:2rem}
@media (min-width:960px){.offer{grid-template-columns:1.35fr .65fr;align-items:start} }
.booth{background:var(--hall);border:3px solid var(--teal);padding:clamp(1.25rem,3vw,2rem);position:relative}
.booth::before{content:"";position:absolute;right:-3px;top:-3px;width:28px;height:28px;background:var(--red)}
.lede{font-size:1.25rem;max-width:62ch}
.stack{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.7rem}
.stack li{border-top:2px solid rgba(0,98,107,.35);padding-top:.8rem}
.stack h3{margin-bottom:.25rem}
.stack p{margin:0}
.promise{border:2px dashed var(--red);padding:1rem 1.2rem;background:var(--lit)}
.promise h3{color:var(--ink)}
.promise p:last-child{margin:0}
.objections{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.objections li{border-top:2px solid var(--teal);padding-top:.7rem}

/* free list */
.free-grid{display:grid;gap:2rem}
@media (min-width:960px){.free-grid{grid-template-columns:1fr 1fr} }
.listing{background:var(--hall);border:3px solid var(--teal);padding:1.2rem 1.4rem}
.listing-h{font-weight:700}
.booths{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.booths li{display:grid;grid-template-columns:1.1rem 1fr;gap:.7rem;align-items:start}
.booths li::before{content:"";width:1.1rem;height:1.1rem;margin-top:.2em;border:2.5px solid var(--teal)}
.booths li:first-child::before{background:var(--red);border-color:var(--red)}

/* route: dashed aisle between booths */
.steps{list-style:none;padding:0;margin:0;display:grid;gap:1.4rem;counter-reset:s}
@media (min-width:960px){.steps{grid-template-columns:repeat(4,1fr)} }
.steps li{position:relative;padding-top:2.2rem;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;top:0;left:0;width:1.7rem;height:1.7rem;display:grid;place-items:center;
  font:800 .875rem/1.4 var(--display);background:var(--teal);color:#fff}
.steps li::after{content:"";position:absolute;top:.85rem;left:2.2rem;right:-.6rem;border-top:3px dashed var(--teal)}
.steps li:last-child::before{background:var(--red)}
.steps li:last-child::after{display:none}
.steps p{margin:0;color:var(--ink-2)}

/* price */
.price{border-top:2px solid var(--teal)}
.prices{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.6rem;max-width:72ch}
.prices li.lead{font-family:var(--display);font-weight:600;font-size:1.5rem;line-height:1.3}
.prices strong{font-weight:800}
.anchor{max-width:72ch}
.terms-line{max-width:72ch}
.out{list-style:none;padding:0;margin:.6rem 0 0;display:grid;gap:.4rem}
.out li{position:relative;padding-left:1.7rem}
.out li::before,.out li::after{content:"";position:absolute;left:.1rem;top:.75em;width:1rem;height:2.5px;background:var(--ink-2);transform:rotate(45deg)}
.out li::after{transform:rotate(-45deg)}

/* close: the teal hall sign */
.close{background:var(--teal);color:#fff;max-width:none;text-align:left}
.close>*{max-width:1144px;margin-left:auto;margin-right:auto}
.close h2{color:#fff}
.close a,.close a:hover{color:#fff}
.close .vblock{max-width:1144px}
.close .go{box-shadow:5px 5px 0 var(--ink);margin-left:max(0px,calc((100% - 1144px)/2))}
.band-q{padding-top:2rem;padding-bottom:1rem}
.band-q h2{font-size:1.5rem}
.note{font-size:.875rem;color:var(--ink-2);max-width:1240px;margin:0 auto;padding:1rem var(--pad) 2rem}

/* overlays */
.sheet{background:var(--hall);color:var(--ink);border:3px solid var(--teal);padding:1.4rem;margin:1rem 0;max-width:440px;position:relative}
@supports selector(:popover-open){
  .sheet{position:fixed;inset:0;margin:auto;width:calc(100% - 2rem);height:fit-content;max-height:calc(100% - 2rem);overflow:auto;box-shadow:8px 8px 0 var(--ink)}
  .sheet::backdrop{background:rgba(19,33,43,.6)}
}
.sheet-h{font-size:1.25rem;line-height:1.3;color:var(--ink);padding-right:4.5rem;margin-bottom:1rem}
.sheet label{display:block;font:600 1.0625rem/1.4 var(--display);margin:.8rem 0 .3rem}
.sheet input{width:100%;font:400 1.0625rem/1.4 var(--text);padding:.7rem .8rem;border:2px solid var(--teal);background:#fff;color:var(--ink);border-radius:0}
.sheet input:focus-visible{outline:3px solid var(--red);outline-offset:1px}
.hint{font-size:.875rem;color:var(--ink-2);margin:.3rem 0 0}
.small{font-size:.875rem;margin:.8rem 0 0}
.assent{font-size:1.0625rem;color:var(--ink);margin:.8rem 0 0}
.assent a{text-decoration:underline}
.x{position:absolute;top:.8rem;right:.8rem;font:600 .875rem/1.4 var(--display);background:none;border:2px solid var(--teal);color:var(--teal);padding:.3rem .6rem;cursor:pointer}
@media (max-width:600px){
  @supports selector(:popover-open){
    .sheet{width:100%;height:100%;max-height:none;max-width:none;inset:0;margin:0;border:0;box-shadow:none}
  }
}

/* confirmation banners */
.banner{display:none;position:fixed;top:0;left:0;right:0;z-index:20;background:var(--teal);color:#fff;padding:1rem var(--pad);box-shadow:0 6px 0 var(--red)}
.banner:target{display:block}
.banner h2{color:#fff;font-size:1.5rem;margin:0 0 .2rem}
.banner p{margin:0}
.banner a{color:#fff}

/* inner pages */
.page{max-width:1240px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) var(--pad)}
.page h1{font-size:2.25rem;color:var(--ink)}
.faq{margin:0;display:grid;gap:1rem;max-width:75ch}
.qa{background:var(--hall);border:2px solid rgba(0,98,107,.45);padding:1rem 1.2rem}
.qa dt{font:800 1.25rem/1.35 var(--display);color:var(--ink);margin-bottom:.3rem}
.qa dd{margin:0}
.mailbig{font:800 clamp(1.3rem,4vw,2rem)/1.3 var(--display);word-break:break-word}

/* long reading: policy pages and updates */
.read article{max-width:70ch;background:var(--hall);border:2px solid var(--teal);padding:clamp(1.25rem,4vw,2.75rem)}
.read h2{font-size:1.5rem;margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(0,98,107,.3)}
.read h3{font-size:1.25rem;margin-top:1.5rem;color:var(--ink)}
.read ul{padding-left:1.2rem}
.read time{font-family:var(--display);font-weight:600;color:var(--ink-2)}

/* footer */
.foot{border-top:2px solid var(--teal);background:var(--hall);padding:1.6rem var(--pad);margin-top:1rem}
.foot-in{max-width:1240px;margin:0 auto;display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;align-items:center}
.foot p{margin:0}
.foot ul{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin:0;padding:0}
.foot-mark{width:28px;height:28px}
.objections .q{font-family:var(--display);font-weight:800;color:var(--ink);margin-bottom:.2rem}
.objections p:last-child{margin:0}

@media (max-width:600px){
  .masthead ul{gap:1rem;font-size:.875rem}
  .avatar{font-size:.875rem}
  .ticks{gap:0}
}

@media (min-width:900px){
.page h1{font-size:3rem}
}
