/* Home (#/) and foundation pages: hero, search, looks strip, openings + map, stylist band, policies, sign in. */
.hero{padding:40px 0 72px}
.hero .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:center}
.hero-copy{grid-column:1 / 8;padding-right:40px;min-width:0}
.hero-media{grid-column:8 / 13;min-width:0}
.kicker{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--steel);margin:0 0 22px}
.kicker .dot{width:7px;height:7px;border-radius:50%;background:var(--clip)}
.hero h1{font-variation-settings:"opsz" 96;font-weight:740;font-size:clamp(44px, 5.6vw, 80px);line-height:.98;letter-spacing:-.032em}
.hero h1 .u{position:relative;display:inline-block;white-space:nowrap}
.hero h1 .u .pl{position:absolute;left:-1%;right:-1%;bottom:-.1em;width:102%;height:.24em}
.hero h1 .u .pl path{stroke-width:3.5}
.sub{font-size:18px;line-height:1.55;color:var(--steel);margin:26px 0 34px;max-width:33em;text-wrap:pretty}
.tries{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:20px;font-size:14px;color:var(--steel)}
.tries a{color:var(--ink);font-weight:500;border-bottom:1px solid var(--line-strong);padding-bottom:1px;transition:border-color .15s}
.tries a:hover{border-color:var(--ink)}
.hero-fig{position:relative;margin:0;aspect-ratio:4/5;border-radius:24px}
.hero-fig .cap{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg);border-radius:16px;padding:12px 12px 12px 16px;box-shadow:var(--shadow)}
.cap .who{min-width:0}
.cap .who b{display:block;font-weight:600;font-size:15px;line-height:1.3}
.cap .who span{display:block;font-size:13px;color:var(--steel);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.sec{padding:56px 0 24px}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.sec-head p{margin:8px 0 0;color:var(--steel);font-size:15.5px;max-width:40em}
.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:start}
.split > .list{grid-column:1 / 8}
.mapcol{grid-column:8 / 13;position:sticky;top:96px;min-width:0}
.nearby-inline{display:none;font-size:13.5px;color:var(--steel);margin-top:10px}
.nearby-inline b{color:var(--ink);font-weight:600}
.query{display:block;font-size:13.5px;font-weight:500;color:var(--steel);margin-top:10px}
.query b{color:var(--ink);font-weight:600}

.band{position:relative;margin:56px 0 0;padding:0}
.band .inner{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:center;background:var(--surface);border-radius:28px;overflow:hidden}
.band-copy{position:relative;grid-column:1 / 6;padding:56px 0 56px 56px;min-width:0}
.band-copy .eyebrow{margin:0 0 14px}
.band-copy h2{font-size:44px;line-height:1.02;letter-spacing:-.035em}
.band-copy p{color:var(--steel);font-size:16.5px;margin:18px 0 0;max-width:28em}
.week{background:var(--bg);border-radius:18px;padding:16px 18px 14px;margin:26px 0 28px;box-shadow:var(--shadow);max-width:460px}
.week-head{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;margin-bottom:12px}
.week-head b{font-weight:650}
.week-head span{color:var(--steel)}
.week-req{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:13.5px;color:var(--steel)}
.week-req b{color:var(--ink);font-weight:600}
.band-fig{position:relative;grid-column:6 / 13;margin:0;aspect-ratio:5/4;align-self:stretch}
.band-fig img{object-position:100% 50%}

/* sign in, policies, help */
.auth-card{max-width:440px;margin:0 auto}
.auth-card form{display:flex;flex-direction:column;gap:16px;margin-top:28px}
.auth-card .segd{width:100%}
.auth-card .segd label{flex:1}
.auth-card .segd span{justify-content:center}
.auth-alt{margin-top:20px;font-size:14.5px;color:var(--steel)}
.auth-alt a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.prose-list{list-style:none;margin:32px 0 0;padding:0}
.prose-list li{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:22px 0;border-top:1px solid var(--line)}
.prose-list h3{font-size:18px}
.prose-list p{color:var(--steel);font-size:15.5px}
.prose-list p + p{margin-top:8px}
.prose-list b{color:var(--ink);font-weight:600}

@media (max-width: 1100px){
  .nearby-inline{display:block}
  .split > .list{grid-column:1 / -1}
  .mapcol{display:none}
  .band-copy{grid-column:1 / 7;padding:48px 0 48px 40px}
  .band-fig{grid-column:7 / 13}
}
@media (max-width: 900px){
  .hero-copy{grid-column:1 / -1;padding-right:0}
  .hero-media{grid-column:1 / -1;margin-top:40px}
  .hero-fig{aspect-ratio:4/5;max-width:520px}
}
@media (max-width: 640px){
  .hero{padding:24px 0 40px}
  .kicker{margin-bottom:16px;font-size:13.5px}
  .hero h1{font-size:44px;line-height:1;letter-spacing:-.034em}
  .hero h1 .u .pl path{stroke-width:2.5}
  .sub{font-size:16px;margin:16px 0 22px}
  .search{flex-direction:column;border-radius:20px;padding:6px}
  .seg,.seg.what{flex:none;flex-direction:column;position:relative}
  .seg + .seg .field::before{left:16px;right:16px;top:0;bottom:auto;width:auto;height:1px}
  .field{padding:12px 16px 14px}
  .field .pl{bottom:4px}
  .go{width:100%;margin:6px 0 0;height:52px;border-radius:14px}
  .panel{position:static;width:auto;box-shadow:none;border:0;border-radius:0;padding:14px 10px 6px;display:none;transform:none;opacity:1;visibility:visible}
  .seg.on .panel{display:block}
  .opts{gap:6px;margin-bottom:18px}
  .opt{height:34px;padding:0 12px;font-size:13.5px}
  .days{grid-template-columns:repeat(4,1fr)}
  .cities{grid-template-columns:1fr}
  .tries{margin-top:16px;font-size:13.5px;gap:6px 14px}
  .hero-media{margin-top:28px}
  .hero-fig{border-radius:20px;max-width:none}
  .hero-fig .cap{left:10px;right:10px;bottom:10px;padding:10px 10px 10px 14px;border-radius:14px}
  .cap .chip{display:none}

  .sec{padding:36px 0 8px}
  .sec-head{margin-bottom:18px;align-items:flex-end}
  .sec-head p{font-size:14.5px}
  .looks{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px;padding:0 16px 4px;scroll-padding-left:16px}
  .looks::-webkit-scrollbar{display:none}
  .look{flex:0 0 156px;scroll-snap-align:start}
  .look .svc{font-size:14px}
  .look .by{font-size:12.5px}
  .book-note{grid-column:1;margin-top:0}

  .band{margin-top:40px}
  .band .wrap{width:100%}
  .band .inner{grid-template-columns:1fr;border-radius:0}
  .band-copy{grid-column:1;padding:40px 16px 32px}
  .band-copy h2{font-size:32px}
  .band-copy p{font-size:15.5px}
  .band-fig{grid-column:1;aspect-ratio:16/9}
  .band-fig img{object-position:70% 50%}
  .week{padding:14px 14px 12px}
  .band-copy .btn{width:100%;height:48px}
  .prose-list li{grid-template-columns:1fr;gap:6px}
}
@media (prefers-reduced-motion: reduce){
  .panel{transition-property:opacity !important}
}
