


@font-face{
  font-family:Caprasimo;font-style:normal;font-weight:400;font-display:block;
  src:url(fonts/caprasimo-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2122,U+2212,U+FEFF,U+FFFD;
}

@font-face{
  font-family:Figtree;font-style:normal;font-weight:400 700;font-display:block;
  src:url(fonts/figtree-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2122,U+2212,U+FEFF,U+FFFD;
}


:root{
  
  --ground:#f3f1e6;
  --sunk:#ece7d8;
  --raised:#fdfbf3;
  --card:#FFFFFF;
  --hair:#dcd7c9;

  --ink:#16110d;
  --ink-2:#55504b;
  --ink-3:#6b665e;

  
  --band:#2c3524;
  --band-line:#46523a;
  --on-band:#a8b391;
  --on-band-2:#c8cfb8;
  --on-band-strong:#f3f1e6;

  
  --accent:#c2410c;
  --accent-deep:#9a3308;
  --on-accent:#f3f1e6;

  --display:Caprasimo,Georgia,serif;
  --sans:Figtree,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,monospace;

  

  
  --t-xs:12px;    
  --t-sm:14px;    
  --t-md:16px;    
  --t-lg:18px;    

  
  --h1:40px;      
  --h2:26px;      
  --h3:22px;      
  
  --h2-held:12px;

  
  --n-sm:22px;    
  --n-md:26px;    
  --n-lg:32px;    
  --n-xl:40px;    
  --n-bar:22px;   

  
  --brand:26px;
  --brand-sm:12px;   

  
  --track-caps:.12em;

  
  --r-btn:3px;    
  --r-card:4px;   
  --tap:48px;

  
  --s-0:2px;    
  --s-1:8px;   --s-2:14px;  --s-3:20px;
  --s-4:28px;  --s-5:44px;  --s-6:68px;

  
  --pad:18px;
  --nav:48px;

  
  --gutter:24px;
  --wrap:1200px;                                     
  --cols:12;
  
  --track:calc((var(--wrap) - 2 * var(--pad) - (var(--cols) - 1) * var(--gutter)) / var(--cols));   

  
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--ground);
  color:var(--ink);
  font:400 var(--t-md)/1.55 var(--sans);
}
[id]{scroll-margin-top:calc(var(--nav) + 14px)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.2;margin:0}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-btn)}

.wrap{max-width:560px;margin:0 auto}

.preview{
  background:var(--band);color:var(--on-band-2);border-bottom:1px solid var(--band-line);
  font:600 var(--t-xs)/1.4 var(--sans);letter-spacing:var(--track-caps);text-transform:uppercase;
  text-align:center;padding:var(--s-1) var(--pad);
}


.act{
  display:flex;align-items:center;justify-content:center;
  min-height:var(--tap);margin-top:var(--s-2);padding:0 var(--s-3);
  border:1px solid transparent;border-radius:var(--r-btn);
  background:var(--accent);color:var(--on-accent);
  font:600 var(--t-md)/1 var(--sans);text-decoration:none;text-align:center;
  transition:filter .12s,border-color .12s;
}
.act:hover{filter:brightness(1.07)}
.act:active{filter:brightness(.9)}


.act.ghost{background:none;color:var(--ink);border-color:var(--ink-3)}
.act.ghost:hover{filter:none;border-color:var(--ink)}

.act.ghost:active{filter:none;background:color-mix(in srgb,var(--ink) 14%,transparent)}


.act.ghost-cream{background:none;color:var(--ink);border-color:var(--hair)}
.act.ghost-cream:hover{filter:none;border-color:var(--ink)}
.act.ghost-cream:active{filter:none;background:color-mix(in srgb,var(--ink) 8%,transparent)}


.act.dark{background:var(--band);color:var(--on-band-strong)}


.acts{display:flex;flex-wrap:wrap;gap:var(--s-1)}
.acts .act{margin-top:0;flex:0 0 auto}


header{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);
  padding:var(--s-3) var(--pad) var(--s-2);
}
.mark{font-family:var(--display);font-weight:400;font-size:var(--brand)}
.mark a{text-decoration:none}

.hours{color:var(--ink-3);font-size:var(--t-sm);text-align:right;line-height:1.35}
.hours b{font-weight:600;color:var(--ink)}


nav{
  position:sticky;top:0;z-index:30;
  background:var(--ground);
  border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
  display:flex;align-items:stretch;
}
.links{
  display:flex;align-items:stretch;gap:var(--s-3);flex:1;min-width:0;
  padding-left:var(--pad);overflow-x:auto;scrollbar-width:none;
}
.links::-webkit-scrollbar{display:none}
.links a{
  display:flex;align-items:center;
  color:var(--ink);font-size:var(--t-sm);text-decoration:none;white-space:nowrap;
  border-bottom:2px solid transparent;transition:border-color .12s;
}
.links a:hover{border-bottom-color:var(--ink)}

.links a[aria-current="page"]{border-bottom-color:var(--ink)}
.links a[aria-current="true"]{border-bottom-color:var(--ink-3)}



.slot{
  background:var(--raised);
  background-image:repeating-linear-gradient(45deg,var(--hair) 0 1px,transparent 1px 9px);
  border:1px solid var(--hair);border-radius:var(--r-card);
  display:flex;align-items:flex-start;padding:var(--s-2);
  overflow:hidden;overflow-wrap:anywhere;
  font:400 var(--t-xs)/1.45 var(--mono);color:var(--ink-3);
}
.slot span{display:block;max-width:40ch}

.slot.on-cream{
  background:var(--sunk);
  background-image:repeating-linear-gradient(45deg,var(--hair) 0 1px,transparent 1px 7px);
  border-color:var(--hair);color:var(--ink-2);
}
.slot.tall{aspect-ratio:4/5}
.slot.portrait{aspect-ratio:3/4}
.slot.wide{aspect-ratio:16/9}
.slot.sq{width:76px;height:76px;flex:none;padding:var(--s-1);align-items:flex-end}


.shot{display:block;width:100%;height:auto;border-radius:var(--r-card);object-fit:cover}
.shot.tall{aspect-ratio:4/5}
.shot.portrait{aspect-ratio:3/4}
.shot.wide{aspect-ratio:16/9}

.shot.sq{width:76px;height:76px;flex:none;aspect-ratio:1}


.label{
  margin:0 var(--pad);padding:var(--s-5) 0 var(--s-2);
  border-bottom:1px solid var(--hair);
  font-size:var(--h2);color:var(--ink);
}

.label.quiet{
  font:600 var(--h2-held)/1 var(--sans);letter-spacing:var(--track-caps);
  text-transform:uppercase;color:var(--ink-3);
}


.hero{padding:var(--s-4) var(--pad) 0}
.hero h1{font-size:var(--h1);line-height:1.04}
.hero > p{margin-top:var(--s-2);color:var(--ink-2);max-width:52ch}
.heromain h1{text-wrap:pretty;max-width:15ch}

.heromain h1{max-width:19ch}
.herocred{margin-top:var(--s-3);font-size:var(--t-sm);color:var(--ink-3)}

.proof{list-style:none;margin:var(--s-4) 0 0;padding:0}
.proof li{padding:var(--s-1) 0;font-size:var(--t-lg);color:var(--ink-2)}
.proof li b{font:400 var(--n-sm)/1 var(--display);color:var(--ink);margin-right:var(--s-1)}
.heromain .acts{margin-top:var(--s-3)}

.herophoto{margin-top:var(--s-4)}

.lead{
  
  position:relative;margin:calc(-1 * var(--s-5)) var(--s-2) 0;
  background:var(--card);color:var(--ink);
  border-radius:var(--r-card);padding:var(--s-2);
  box-shadow:0 1px 0 rgba(0,0,0,.35),0 20px 34px -24px rgba(0,0,0,.85);
}
.leadtop{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-2)}
.leadlabel{font:600 var(--t-xs)/1 var(--sans);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-2)}
.leadprice{margin-top:var(--s-1);font:400 var(--n-xl)/1.05 var(--display);color:var(--accent-deep)}
.leadnote{margin-top:var(--s-1);font-size:var(--t-sm);color:var(--ink-2)}


.rail{background:var(--sunk);color:var(--ink);margin-top:var(--s-6);padding:var(--s-6) var(--pad)}
.railhead{display:grid;gap:var(--s-3)}
.rail h2{font-size:var(--h2)}
.rail .sub{margin-top:var(--s-1);color:var(--ink-2);font-size:var(--t-md);max-width:38ch}

.pricecards{display:grid;gap:var(--gutter);grid-template-columns:1fr;margin-top:var(--s-4)}
.pcard{
  display:flex;align-items:center;gap:var(--s-2);
  background:var(--card);border:1px solid var(--hair);border-radius:var(--r-card);
  padding:var(--s-2);box-shadow:0 1px 0 rgba(0,0,0,.06),0 20px 34px -28px rgba(0,0,0,.7);
}
.prow{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2)}
.pcard h3{font-size:var(--h3);line-height:1.1}
.pcard h3 em{font-style:normal;display:block;font:400 var(--t-sm)/1.4 var(--sans);color:var(--ink-2);margin-top:var(--s-0)}
.pcard .p{font:400 var(--n-md)/1 var(--display);color:var(--accent-deep);font-variant-numeric:tabular-nums;flex:0 0 auto}

.rail .note{margin-top:var(--s-2);font-size:var(--t-md);max-width:33ch}
.rail .more{
  display:inline-flex;align-items:center;width:fit-content;min-height:var(--tap);margin-top:var(--s-1);
  color:var(--ink);font-size:var(--t-md);text-decoration:none;
  box-shadow:inset 0 -1px 0 var(--hair);transition:box-shadow .12s;
}
.rail .more:hover{box-shadow:inset 0 -1px 0 var(--ink)}


.roster{padding:var(--s-4) var(--pad) 0;display:grid;gap:var(--gutter)}
.person{
  background:var(--raised);border:1px solid var(--hair);border-radius:var(--r-card);
  overflow:hidden;display:flex;flex-direction:column;
}
.person > .slot,.person > .shot{border-width:0;border-radius:0}
.person .body{border-top:1px solid var(--hair);padding:var(--s-2);display:flex;flex-direction:column;flex:1}
.person h3{font-size:var(--h3);line-height:1.1}

.person p:not(.ctanote){margin-top:var(--s-1);font-size:var(--t-md);color:var(--ink-2);line-height:1.45;flex:1}

.person h3 a.who{text-decoration:none;border-bottom:2px solid var(--ink-3);transition:border-color .12s}
.person h3 a.who:hover{border-bottom-color:var(--ink-2)}


.ctanote{margin-top:var(--s-1);font-size:var(--t-sm);line-height:1.4;color:var(--ink-2)}
.ctanote[data-state="closed"]{color:var(--ink-3)}

.lead .ctanote,.pricegroup .ctanote{color:var(--ink-2)}
.lead .ctanote[data-state="closed"],
.pricegroup .ctanote[data-state="closed"]{color:var(--ink-2)}


.more2{
  display:inline-flex;align-items:center;min-height:var(--tap);margin-top:var(--s-1);
  font-size:var(--t-sm);color:var(--ink-2);text-decoration:none;
  border-bottom:1px solid var(--ink-3);width:fit-content;
}
.more2:hover{color:var(--ink);border-bottom-color:var(--ink)}


.room{padding:var(--s-4) var(--pad) 0}


.street{padding:0 var(--pad)}
.street .slot{aspect-ratio:16/10}
.visit{padding:var(--s-4) var(--pad) var(--s-5)}
.visitblock{border:1px solid var(--hair);border-radius:var(--r-card);overflow:hidden}
.visitblock .slot{border-width:0;border-radius:0}
.visitbar{
  border-top:1px solid var(--hair);background:var(--raised);
  padding:var(--s-3);display:grid;gap:var(--s-2);align-items:center;
}
.addr{font:600 var(--t-lg)/1.4 var(--sans);color:var(--ink)}
.visit h2{font-size:var(--h2)}
.visit .meta{margin-top:var(--s-1);color:var(--ink-2);font-size:var(--t-md)}
.visit h3{font-size:var(--h3);margin-top:var(--s-4)}
.visit .body{margin-top:var(--s-3);color:var(--ink-2);font-size:var(--t-md);max-width:52ch}

footer{
  padding:var(--s-3) var(--pad);border-top:1px solid var(--hair);
  color:var(--ink-2);font-size:var(--t-sm);
  
  
  padding-bottom:calc(var(--s-6) + var(--s-4) + env(safe-area-inset-bottom));
}


.callbar{
  position:fixed;left:0;right:0;bottom:0;z-index:40;
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);
  padding:var(--s-1) var(--pad);
  padding-bottom:calc(var(--s-1) + env(safe-area-inset-bottom));
  background:var(--raised);border-top:1px solid var(--hair);
}
.cbtext{min-width:0}

.cbmark{display:none;font:600 var(--brand-sm)/1.4 var(--sans);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-3)}

.cbprice{font:400 var(--n-bar)/1.15 var(--display);color:var(--accent)}
.cbprice span{color:var(--ink-2)}
.cbacts{display:flex;gap:var(--s-1);flex:0 0 auto}
.cbacts .act{margin-top:0;min-height:44px;padding:0 var(--s-2);font-size:var(--t-sm)}


@media (min-width:820px), print{
  
  
  
  :root{ --h1:60px; --h2:42px; --h3:32px; --n-bar:26px;
         --n-lg:44px; --n-xl:52px; --n-md:34px; --brand:34px; }

  .wrap{max-width:1200px}

  .hero{padding:var(--s-5) var(--pad) 0}
  .heromain{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--gutter);align-items:start}
  
  .heromain .herotext{grid-column:1;grid-row:1}
  .heromain .proof{grid-column:1;grid-row:2}
  .heromain .herophoto{grid-column:2;grid-row:1 / span 2}
  .heromain h1{max-width:14ch}
  .heromain .herophoto{margin-top:0}
  
  
  .heromain .slot.tall,.heromain .shot.tall{max-height:520px}
  .slot.wide{max-width:calc(9 * var(--track) + 8 * var(--gutter))}
  .street .slot{max-width:calc(8 * var(--track) + 7 * var(--gutter))}
  .lead{margin-left:var(--s-3);margin-right:var(--s-3)}

  .railhead{grid-template-columns:1fr auto;align-items:end;gap:var(--gutter)}
  .pricecards{grid-template-columns:repeat(2,1fr)}
  .roster{grid-template-columns:repeat(3,1fr)}
  .visitbar{grid-template-columns:1fr auto;gap:var(--gutter)}
  .cbmark{display:block}
}


.crumb{padding:var(--s-3) var(--pad) 0}
.crumb a{color:var(--ink-2);font-size:var(--t-sm);text-decoration:none;border-bottom:1px solid var(--hair);padding-bottom:var(--s-0)}
.crumb a:hover{color:var(--ink);border-bottom-color:var(--ink)}


.pro{padding:var(--s-3) var(--pad) var(--s-4)}
.pro .card{
  background:var(--raised);color:var(--ink);
  border:1px solid var(--hair);border-radius:var(--r-card);
  overflow:hidden;max-width:460px;
}
.pro .slot,.pro .shot{width:100%;aspect-ratio:3/4;border-radius:0;border-width:0}
.pro .card .inner{border-top:1px solid var(--hair);padding:var(--s-3)}
.pro h1{font-size:var(--h1);line-height:1.06;color:var(--ink)}
.pro .known{margin-top:var(--s-1);color:var(--ink-3);font:600 var(--t-xs)/1 var(--sans);letter-spacing:var(--track-caps);text-transform:uppercase}
.pro .lede{margin-top:var(--s-2);font-size:var(--t-md);color:var(--ink-2);line-height:1.55}

.does{padding:0 var(--pad) var(--s-4)}
.does > .label,.also > .label{margin-left:0;margin-right:0}
.does .rows{background:var(--raised);border-radius:var(--r-card);padding:var(--s-1) var(--s-3) var(--s-2);max-width:460px}
.does .rows .row .s em{color:var(--ink-2)}
.does .row{border-top-color:var(--hair)}

.does .row .p{color:var(--ink)}
.does .foot{margin-top:var(--s-2);color:var(--ink-2);font-size:var(--t-sm);max-width:44ch}

.also{padding:0 var(--pad) var(--s-4)}
.also .list{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-top:var(--s-2)}
.also .list a{
  display:flex;align-items:center;gap:var(--s-1);text-decoration:none;
  background:var(--raised);border:1px solid var(--hair);border-radius:var(--r-card);
  padding:var(--s-1) var(--s-3);min-height:var(--tap);transition:border-color .12s;
}
.also .list a:hover{border-color:var(--ink)}
.also .list b{font:400 var(--t-md)/1 var(--display)}
.also .list span{color:var(--ink-2);font-size:var(--t-sm)}

@media (min-width:820px), print{
  
  .personpage{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--gutter);align-items:start}
  .personpage > .crumb{grid-column:1 / -1}
  .personpage > .pro{grid-column:1 / span 4}
  .personpage > .prorest{grid-column:5 / span 8;padding-top:var(--s-4)}
  .personpage > .visit{grid-column:1 / -1}

  .pro{display:block;padding:var(--s-4) 0 var(--s-4) var(--pad)}
  
  .prorest > .does,.prorest > .also{padding-left:0;padding-right:var(--pad)}
  .does .rows{max-width:520px}
}


.row{
  display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2);
  padding:var(--s-2) 0;border-top:1px solid var(--hair);
}
.row .s{font-size:var(--t-md)}
.row .s em{font-style:normal;display:block;font:400 var(--t-sm)/1.4 var(--sans);color:var(--ink-2);margin-top:var(--s-0)}
.row .p{
  font:400 var(--n-sm)/1 var(--display);color:var(--accent-deep);
  font-variant-numeric:tabular-nums;flex:0 0 auto;
}


.pricepage, .visitpage, .personpage{padding:0 var(--pad) var(--s-1)}

.pricegroup{
  background:var(--sunk);color:var(--ink);
  border-radius:var(--r-card);padding:var(--s-3);margin-bottom:var(--s-2);
}
.pricegroup h2{font-size:var(--h2);margin-bottom:var(--s-2)}
.pricegroup .row:first-of-type{border-top:0}

.svc{display:flex;flex-wrap:wrap;gap:var(--s-1);margin-top:var(--s-1);padding:0;list-style:none}
.svc li{
  background:var(--sunk);border:1px solid var(--hair);border-radius:var(--r-btn);
  padding:var(--s-1) var(--s-2);font-size:var(--t-sm);color:var(--ink);
}

.gnote{margin-top:var(--s-2);font-size:var(--t-md);line-height:1.55;color:var(--ink-2);max-width:46ch}
.pricegroup .act{margin-top:var(--s-3);max-width:280px}
.pricegroup.last{margin-bottom:0}

.pricegroup.wide{grid-column:1 / -1}


.hoursblock .hstatus{font-size:var(--t-md);color:var(--ink-2)}
.hoursblock .hstatus .on{color:var(--ink);font-weight:600}
.hoursblock .hstatus .off{color:var(--ink-2);font-weight:600}
.hoursblock .hlabel{
  margin-top:var(--s-2);font:600 var(--t-xs)/1 var(--sans);
  letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-2);
}
.hoursblock .hbig{margin-top:var(--s-1);font:400 var(--n-lg)/1 var(--display);color:var(--ink)}
.hweek{
  display:grid;grid-template-columns:1fr;gap:var(--s-0) var(--s-2);
  margin:var(--s-3) 0 0;padding:var(--s-2) 0 0;list-style:none;
  border-top:1px solid var(--hair);
}
.hweek li{display:flex;justify-content:space-between;gap:var(--s-1);padding:var(--s-1) 0;font-size:var(--t-sm)}
.hweek li b{font-weight:400;color:var(--ink-2)}
.hweek li span{font-variant-numeric:tabular-nums}
.hweek li[aria-current]{color:var(--ink)}
.hweek li[aria-current] b{color:var(--ink);font-weight:600}
.hoursblock .gnote{border-top:1px solid var(--hair);padding-top:var(--s-2)}

.closer{padding:var(--s-4) var(--pad) var(--s-5);border-top:1px solid var(--hair);margin-top:var(--s-4)}
.closer h2{font-size:var(--h2)}
.closer p{margin-top:var(--s-1);color:var(--ink-2);font-size:var(--t-md);max-width:38ch}
.closer .act{margin-top:var(--s-2);max-width:300px}

@media (min-width:820px), print{
  .pricepage, .visitpage{display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter);align-items:start}
  .pricegroup.last{grid-column:1 / -1}
  .visitpage .pricegroup.last{grid-column:1 / -1}
}



.anno{
  background:var(--band);
  border-top:1px solid var(--band-line);border-bottom:1px solid var(--band-line);
  margin:var(--s-3) 0;padding:var(--s-2) var(--pad);
  font:400 var(--t-xs)/1.5 var(--mono);color:var(--on-band);
}
.anno b{
  display:block;margin-bottom:var(--s-1);
  font:600 var(--t-xs)/1 var(--sans);letter-spacing:var(--track-caps);
  text-transform:uppercase;color:var(--on-band-2);
}
.anno a{color:var(--on-band-strong)}
.addon{padding:0 var(--pad)}
.addon .anno{padding-left:0;padding-right:0}

.booker{
  background:var(--raised);border:1px solid var(--hair);border-radius:var(--r-card);
  padding:var(--s-3);display:grid;gap:var(--s-3);
}
.bhead{
  font:600 var(--t-xs)/1.4 var(--sans);letter-spacing:var(--track-caps);
  text-transform:uppercase;color:var(--ink-3);
  border-bottom:1px solid var(--hair);padding-bottom:var(--s-2);
}
.bstep{display:grid;gap:var(--s-1)}
.blabel{
  font:600 var(--t-xs)/1 var(--sans);letter-spacing:var(--track-caps);
  text-transform:uppercase;color:var(--ink-3);
}
.chips{display:flex;flex-wrap:wrap;gap:var(--s-1);margin:0;padding:0;list-style:none}
.chips li{
  border:1px solid var(--hair);border-radius:var(--r-btn);
  padding:var(--s-1) var(--s-2);font-size:var(--t-sm);color:var(--ink-2);
}
.chips li span{color:var(--ink-3)}

.chips li.on{border-color:var(--ink);color:var(--ink);font-weight:600}
.chips li.on span{color:var(--ink)}
.bconfirm{
  display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:var(--tap);padding:0 var(--s-3);border-radius:var(--r-btn);
  background:var(--accent);color:var(--on-accent);
  font:600 var(--t-md)/1.2 var(--sans);
}



.points{margin:0;padding:0;list-style:none}
.points li{padding:var(--s-2) 0;border-top:1px solid var(--hair);font-size:var(--t-md);line-height:1.5}
.points li:first-child{border-top:0;padding-top:0}
.points b{font-weight:600}


ol.points{counter-reset:step}

ol.points li{counter-increment:step;position:relative;padding-left:var(--s-4)}
ol.points li::before{
  content:counter(step) ".";position:absolute;left:0;top:14px;
  font-weight:600;color:var(--ink-2);
}
ol.points li:first-child::before{top:0}

@media (min-width:820px), print{
  .booker{grid-template-columns:repeat(3,1fr);align-items:start}
  .bconfirm{grid-column:1 / -1}
}


@media print{
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{margin:.45in}

  nav{position:static}
  .callbar{position:static;margin-top:var(--s-4);padding-bottom:var(--s-1)}
  footer{padding-bottom:var(--s-3)}
  .wrap{max-width:none}

  
  .person,.pcard,.lead,.herophoto,.visitblock,.pricegroup,
  .hoursblock,.also .list a,.does .rows{break-inside:avoid}
  
  h1,h2,h3,.label{break-after:avoid}

  
  .slot.tall,.shot.tall{max-height:4.4in}
  .slot.portrait,.shot.portrait{max-height:3in}
  .slot.wide,.shot.wide{max-height:2.8in}
  .pro .slot,.pro .shot{max-height:3.4in}

  
  a{text-decoration:none}
}


.roster{
  display:flex;gap:var(--s-2);overflow-x:auto;
  scroll-snap-type:x mandatory;scroll-padding-left:var(--pad);
  
  padding-bottom:var(--s-2);
}
.person{flex:0 0 82%;scroll-snap-align:start}
.roster::after{content:"";flex:0 0 calc(var(--pad) - 14px)}


@media (min-width:820px), print{
  .roster{display:grid;grid-template-columns:repeat(3,1fr);overflow-x:visible;padding-bottom:0}
  .person{flex:initial}
  .roster::after{content:none}
}
