/* Business invitations sit between the collections and bestsellers. */
.home-business { scroll-margin-top:1.5rem; }
.home-business-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; padding:1.5rem; background:#faf7f9; }
.home-business-card { --business-color:#ce288f; --business-hover:#bd2181; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.875rem; min-width:0; min-height:9rem; padding:1.75rem 1.5rem; border-radius:.625rem; background:var(--business-color); color:#fff; text-align:center; text-decoration:none; transition:background-color .2s ease; }
.home-business-card--store { --business-color:#406484; --business-hover:#355773; }
.home-business-card h3 { margin:0; color:inherit; font-size:clamp(1.5rem,2.1vw,1.875rem); line-height:1.2; letter-spacing:-.025em; text-wrap:balance; }
.home-business-action { font-size:.9375rem; font-weight:400; line-height:1.5; text-decoration:underline; text-decoration-color:#ffffff80; text-decoration-thickness:1px; text-underline-offset:.35em; transition:text-decoration-color .2s ease; }
.home-business-card:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
@media(hover:hover) {
  .home-business-card:hover { background:var(--business-hover); color:#fff; }
  .home-business-card:hover .home-business-action { text-decoration-color:currentColor; }
}
#home-view .home-business + .section { padding-top:2rem; }
@media(max-width:760px) {
  .home-business-grid { grid-template-columns:minmax(0,1fr); grid-auto-rows:1fr; gap:.875rem; padding:.875rem; }
  .home-business-card { min-height:8rem; padding:1.5rem 1rem; gap:.75rem; }
  .home-business-card h3 { font-size:1.5rem; }
  .home-business-action { font-size:.875rem; }
  #home-view .home-business + .section { padding-top:1.5rem; }
}
@media(prefers-reduced-motion:reduce) {
  .home-business-card,.home-business-action { transition:none; }
}
.business-page { padding-block:1.5rem 3.5rem; }
.business-breadcrumb { display:flex; flex-wrap:wrap; gap:.65rem; font-size:.8125rem; color:var(--muted); margin-bottom:2rem; }
.business-breadcrumb a:hover { color:var(--accent-dark); }
.business-hero { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,4vw,4rem); align-items:start; padding-bottom:3.5rem; }
.business-copy h1 { font-size:clamp(2rem,3.2vw,3rem); line-height:1.15; margin:.875rem 0 1.25rem; max-width:none; text-wrap:balance; }
#wholesale-title { max-width:36rem; font-size:clamp(2rem,3vw,2.75rem); line-height:1.2; letter-spacing:-.025em; text-wrap:pretty; }
#wholesale-title em { font-weight:inherit; text-decoration:none; }
#wholesale-title .business-title-ending { white-space:nowrap; }
.business-copy h1 em { font-style:normal; text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:.055em; text-underline-offset:.12em; }
.business-copy > p,.business-description { color:var(--muted); font-size:1.0625rem; line-height:1.75; max-width:34rem; }
.business-description { display:grid; gap:1rem; }
.business-description p { margin:0; }
.business-description strong { color:var(--ink); font-weight:600; }
.business-jump { display:inline-flex; align-items:center; gap:1.25rem; min-height:2.75rem; margin-top:1.25rem; padding:.5rem 0; background:none; border:0; border-bottom:1px solid var(--accent); font:500 .9375rem var(--sans); }
.business-visual { margin:0; position:relative; overflow:hidden; background:#f8f2f5; }
.business-visual img { display:block; width:100%; height:20rem; object-fit:cover; object-position:70% 50%; }
.business-visual--wholesale { width:min(100%,24rem); justify-self:center; }
.wholesale-hero .business-visual--wholesale img { height:auto; aspect-ratio:3/2; object-fit:contain; object-position:center; }
@media(min-width:761px) {
  .business-hero.wholesale-hero { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(2rem,3vw,3rem); }
  .wholesale-hero .business-visual--wholesale { width:min(100%,36rem); justify-self:center; }
  .reseller-hero .reseller-video { justify-self:center; margin-top:1.5rem; }
}
.business-visual figcaption { padding:1rem 1.25rem; font-size:.8125rem; line-height:1.5; color:var(--muted); }
.business-hero.reseller-hero { padding-bottom:2.5rem; }
.reseller-hero .business-description { max-width:41rem; }
.reseller-video { width:min(100%,20rem); justify-self:center; }
.reseller-video video { display:block; width:100%; height:auto; aspect-ratio:9/16; object-fit:contain; background:#e2e4df; }
.reseller-video-play { position:absolute; inset:auto 50% 4.5rem auto; transform:translateX(50%); display:inline-flex; align-items:center; justify-content:center; gap:.5rem; width:max-content; max-width:calc(100% - 2rem); min-height:2.75rem; padding:.65rem 1rem; border:1px solid #ffffffb3; border-radius:2rem; background:#fffffff0; color:var(--ink); font:500 .875rem/1.3 var(--sans); box-shadow:0 2px 12px #0000001a; cursor:pointer; }
.reseller-video-play[hidden] { display:none; }
.reseller-video-play:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.reseller-benefits { display:grid; gap:.5rem; max-width:41rem; margin:1.5rem 0; padding:0; list-style:none; }
.reseller-benefits li { display:flex; align-items:baseline; gap:.875rem; font-size:1.0625rem; line-height:1.6; }
.reseller-benefit-icon { flex-shrink:0; font-size:1.375rem; line-height:1; }
.reseller-invitation { display:grid; gap:1rem; }
.reseller-community { max-width:41rem; font-size:1rem; line-height:1.8; }
.reseller-community p+p { margin-top:1rem; }
.reseller-invitation strong { color:var(--ink); font-weight:600; }
.reseller-next-step { border-left:2px solid var(--accent); padding-left:1.125rem; max-width:41rem; }
.reseller-next-step > p { font-size:1.0625rem; line-height:1.6; text-wrap:pretty; }
.business-information { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:start; gap:clamp(2rem,5vw,5rem); border-top:1px solid var(--line); padding-top:3rem; }
.business-information:is(.reseller-information,.wholesale-information) { grid-template-columns:minmax(0,850px); justify-content:center; gap:1.5rem; }
.business-intro h2 { max-width:36rem; font-size:clamp(1.5rem,2.2vw,2rem); line-height:1.3; letter-spacing:-.025em; text-wrap:balance; margin:.75rem 0 1rem; }
:is(.reseller-information,.wholesale-information) .business-intro h2 { max-width:none; }
.business-intro p { max-width:34rem; color:var(--muted); line-height:1.75; }
.business-topics { width:100%; min-width:0; min-height:0; }
.business-topics details { margin-bottom:.875rem; }
.business-topics summary { font-weight:500; }
.business-answer { padding:0 1.75rem 1.25rem; color:var(--muted); font-size:.9375rem; line-height:1.8; }
.business-topics .business-answer p { font-size:inherit; line-height:inherit; margin-top:0; }
.business-topics details > .business-answer { margin-bottom:0; }
.business-topics .business-answer p+p,.business-topics .business-answer ul+p { margin-top:1rem; }
.business-answer ul,.business-answer ol { padding-left:1.25rem; }
.business-answer strong { font-weight:500; color:var(--ink); }
.business-answer a { color:var(--accent-dark); }
.business-answer .text-link { display:inline-block; margin-top:.75rem; text-decoration:none; }
:is(.reseller-information,.wholesale-information) .text-link { border-bottom:0; text-decoration:underline; text-underline-offset:.2em; }
:is(.reseller-information,.wholesale-information) .business-answer { padding-top:1.25rem; }
:is(.reseller-information,.wholesale-information) .business-answer h3 { margin:0 0 .625rem; color:var(--ink); font-size:1rem; font-weight:600; line-height:1.5; letter-spacing:0; }
:is(.reseller-information,.wholesale-information) .business-answer > h3:first-child { font-size:1.0625rem; }
:is(.reseller-information,.wholesale-information) .reseller-steps { margin:1.5rem 0 0; padding-left:1.5rem; }
.reseller-steps li { padding-left:.25rem; }
.reseller-steps li::marker { color:var(--ink); font-weight:600; }
.reseller-steps h4 { margin:0 0 .375rem; color:var(--ink); font:600 1rem/1.5 var(--sans); }
:is(.reseller-information,.wholesale-information) .reseller-steps p+p { margin-top:.5rem; }
:is(.reseller-information,.wholesale-information) .reseller-steps li+li,:is(.reseller-information,.wholesale-information) .reseller-benefit-details li+li { margin-top:1.5rem; }
:is(.reseller-information,.wholesale-information) .reseller-benefit-details { list-style:none; margin:1.5rem 0 0; padding:0; }
.reseller-benefit-details h3 { display:flex; align-items:baseline; gap:.5rem; }
.reseller-benefit-details h3 span { flex-shrink:0; }
.reseller-answer-note { margin-top:1.5rem; padding-top:1.25rem; border-top:1px solid var(--line); }
:is(.reseller-information,.wholesale-information) .business-answer .reseller-contact-note { margin-top:1rem; }
.business-callout { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-top:2.5rem; padding:2rem 2.5rem; background:#f9f1f6; border:1px solid #f0e3eb; }
.business-callout h2 { font-size:1.625rem; line-height:1.25; margin-bottom:.5rem; }
.business-callout p { color:var(--muted); font-size:.9375rem; line-height:1.6; }
.business-callout-actions { display:flex; flex-direction:column; align-items:center; flex-shrink:0; gap:.875rem; }
.business-callout .button { text-align:center; display:flex; justify-content:center; align-items:center; gap:1rem; font-size:.875rem; min-height:3rem; }
.business-secondary { font-size:.8125rem; padding-block:.25rem; text-underline-offset:.2em; }
.business-secondary:hover { text-decoration:underline; }
.business-crosslink { text-align:center; font-size:.875rem; line-height:1.8; color:var(--muted); margin-top:1.75rem; }
.business-crosslink a { color:var(--ink); text-decoration:underline; text-underline-offset:.25em; }
.business-motto { display:flex; flex-wrap:wrap; justify-content:center; gap:0 .3em; max-width:48rem; margin:2rem auto 0; color:var(--muted); font-size:clamp(1.0625rem,1.3vw,1.25rem); font-weight:400; line-height:1.6; letter-spacing:0; text-align:center; text-wrap:balance; }
.business-page a:focus-visible,.business-page button:focus-visible { outline:2px solid var(--accent-dark); outline-offset:4px; }
.business-page details { scroll-margin-top:1rem; }
.about-page { padding-block:1.5rem clamp(3rem,6vw,5rem); }
.about-page > .business-breadcrumb { margin-bottom:clamp(2rem,3vw,3rem); }
.about-content { width:100%; max-width:68rem; margin-inline:auto; }
.about-intro { text-align:center; }
.about-intro .eyebrow { margin-bottom:.875rem; font-size:.875rem; letter-spacing:.12em; }
.about-intro h1 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.2; letter-spacing:-.025em; margin:0; text-wrap:balance; }
.about-intro h1 span { color:var(--accent-dark); font-weight:500; white-space:nowrap; }
.about-intro h1:focus { outline:none; }
.about-lead { max-width:40rem; margin:1.125rem auto 0; color:var(--ink); font-size:clamp(1.125rem,1.7vw,1.375rem); font-weight:500; line-height:1.5; text-wrap:balance; }
.about-story { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,4vw,4rem); margin-top:2.5rem; padding-top:2rem; border-top:1px solid var(--line); }
.about-story > section { min-width:0; }
.about-story h2 { margin:0 0 .875rem; color:var(--ink); font-size:1.125rem; font-weight:500; line-height:1.4; letter-spacing:-.01em; }
.about-story p { color:#514d54; font-size:1rem; line-height:1.85; text-wrap:pretty; }
.about-story p+p { margin-top:1.25rem; }
.about-story strong { color:var(--ink); font-weight:600; }
.about-community { margin-top:2.5rem; padding:2rem; border:1px solid #f0e3eb; background:#f9f1f6; text-align:center; }
.about-community h2 { max-width:44rem; margin:0 auto .75rem; font-size:clamp(1.25rem,1.8vw,1.625rem); font-weight:500; line-height:1.4; letter-spacing:-.015em; text-wrap:balance; }
.about-community h2 span { color:var(--accent-dark); white-space:nowrap; }
.about-community p { font-size:.9375rem; line-height:1.7; text-wrap:balance; }
.about-community p strong { font-weight:500; }
.lookbooks-page { padding-block:1.5rem 3.5rem; }
.lookbooks-page h1:focus { outline:none; }
.lookbooks-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:clamp(1.25rem,4vw,5rem); max-width:84rem; margin-inline:auto; }
.lookbook-card { display:block; width:100%; max-width:17.375rem; min-width:0; justify-self:center; text-align:center; }
.lookbook-card img { display:block; width:100%; height:auto; aspect-ratio:1490/2560; object-fit:contain; }
.lookbook-caption { display:block; padding-top:.5rem; color:var(--ink); font-size:.8125rem; line-height:1.5; }
.lookbook-caption strong { color:var(--accent); font-weight:400; white-space:nowrap; }
.lookbook-card:hover .lookbook-caption strong { color:var(--accent-dark); text-decoration:underline; text-underline-offset:.2em; }
.lookbook-card:focus-visible { outline:2px solid var(--accent-dark); outline-offset:6px; }
@media(max-width:1100px) {
  .lookbooks-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:40rem; }
}
@media(max-width:900px) {
  .business-information { grid-template-columns:1fr; gap:1.5rem; }
  .business-intro h2 { font-size:clamp(1.5rem,4vw,1.875rem); }
}
@media(max-width:760px) {
  .business-page { padding-block:1.25rem 2.5rem; }
  .business-breadcrumb { margin-bottom:1.5rem; }
  .business-hero { gap:1.75rem; grid-template-columns:1fr; padding-bottom:2rem; }
  .business-copy h1 { font-size:clamp(2rem,7vw,2.5rem); }
  #wholesale-title { font-size:clamp(2rem,7vw,2.5rem); }
  .business-copy > p,.business-description { font-size:1rem; }
  .business-visual img { height:clamp(12rem,45vw,20rem); }
  .business-visual figcaption { padding:.75rem 1rem; }
  .business-hero.reseller-hero { padding-bottom:1.75rem; }
  .reseller-hero .business-description { max-width:none; }
  .reseller-benefits li,.reseller-next-step > p { font-size:1rem; }
  .business-information { padding-top:2rem; }
  .business-answer { padding-inline:1rem; }
  .business-callout { flex-direction:column; align-items:stretch; padding:1.5rem; margin-top:1.75rem; gap:1.5rem; }
  .business-callout-actions { align-items:stretch; text-align:center; }
  .business-callout .button { white-space:normal; line-height:1.5; padding:.875rem 1rem; }
  .business-crosslink a { display:block; }
  .about-page { padding-top:1.25rem; }
  .about-page > .business-breadcrumb { margin-bottom:2rem; }
  .about-story { grid-template-columns:1fr; gap:1.25rem; padding-top:1.5rem; margin-top:1.75rem; }
  .about-story p { line-height:1.8; }
  .about-community { margin-top:1.75rem; padding:1.5rem 1.125rem; }
}
@media(max-width:640px) {
  .lookbooks-page { padding-block:1.25rem 2.5rem; }
  .lookbooks-grid { grid-template-columns:1fr; gap:2rem; }
}
