.vendor-breadcrumb{padding:20px 0 0;background:var(--cream)}.vendor-breadcrumb .wrap{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #c9cec9;padding-bottom:14px;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.vendor-breadcrumb a{color:inherit;text-decoration:none}.vendor-breadcrumb a:hover{text-decoration:underline}.vendor-hero{padding:42px 0 42px}.vendor-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}.vendor-kicker{display:flex;align-items:center;gap:10px;margin-bottom:18px}.vendor-kicker img{width:18px;height:18px}.vendor-title{font-size:clamp(4.2rem,8.5vw,8rem);line-height:.84;max-width:850px}.vendor-dek{font-size:clamp(1.08rem,2vw,1.34rem);max-width:700px;color:#46534d;margin:24px 0}.vendor-badges{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}.vendor-seal{width:112px;height:112px;object-fit:contain;transform:rotate(-6deg);filter:drop-shadow(5px 5px 0 #dc5a38)}.vendor-hero-media{position:relative;min-height:470px}.vendor-hero-media img,.vendor-photo-placeholder{width:100%;height:470px;object-fit:cover;border:2px solid var(--ink);clip-path:polygon(4% 0,100% 4%,96% 100%,0 95%);box-shadow:12px 12px 0 var(--blue);background:#ddd}.vendor-photo-placeholder{display:grid;place-items:center;font-size:.72rem;font-weight:900;letter-spacing:.16em;color:#59645f}.vendor-subnav{position:sticky;top:0;z-index:12;background:var(--ink);color:#fff;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.vendor-subnav .wrap{display:flex;gap:26px;overflow-x:auto;scrollbar-width:none}.vendor-subnav .wrap::-webkit-scrollbar{display:none}.vendor-subnav a{color:#fff;text-decoration:none;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:15px 0;white-space:nowrap}.vendor-subnav a:hover{color:var(--pink)}.vendor-main{padding:62px 0 88px}.vendor-editorial-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:54px;align-items:start}.vendor-story h2{font-size:clamp(2.6rem,5vw,4.8rem);line-height:.95;margin:10px 0 18px}.vendor-story p{font-size:1.08rem;line-height:1.6;color:#435049;max-width:760px}.vendor-section-anchor{scroll-margin-top:72px;margin-bottom:70px}.vendor-section-anchor:last-child{margin-bottom:0}.vendor-quote{font-family:Georgia,serif;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.08;border-left:8px solid var(--pink);padding-left:22px;margin:28px 0 0}.vendor-side{display:grid;gap:16px;position:sticky;top:70px;scroll-margin-top:72px}.vendor-side .info-card{box-shadow:5px 5px 0 rgba(23,33,30,.14)}.vendor-side .info-card:nth-child(1){background:#dfe8d5}.vendor-side .info-card:nth-child(2){background:#dcecf4}.vendor-side .info-card:nth-child(3){background:#f5e4b4}.vendor-side .info-card:nth-child(4){background:#f5d4e0}.vendor-side .info-card p{line-height:1.45}.vendor-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.vendor-gallery{padding:72px 0;background:#f7d7e4;border-top:2px solid var(--ink);scroll-margin-top:50px}.vendor-gallery h2{font-size:clamp(2.5rem,5vw,4.5rem);margin:8px 0 28px}.vendor-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.vendor-gallery figure{margin:0;min-height:260px}.vendor-gallery figure:nth-child(3n+1){grid-column:span 7}.vendor-gallery figure:nth-child(3n+2){grid-column:span 5}.vendor-gallery figure:nth-child(3n){grid-column:span 12}.vendor-gallery img{width:100%;height:100%;min-height:300px;max-height:620px;object-fit:cover;border:2px solid var(--ink)}.vendor-bottom{background:var(--ink);color:#fff;padding:68px 0}.vendor-bottom-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:54px;align-items:center}.vendor-bottom .vendor-seal{width:min(240px,60vw)}.vendor-bottom h2{font-size:clamp(2.7rem,6vw,5.4rem)}.vendor-bottom p{color:#d7dedb;max-width:650px}.vendor-bottom .btn{background:var(--paper);color:var(--ink)}@media(max-width:900px){.vendor-hero-grid,.vendor-editorial-grid,.vendor-bottom-grid{grid-template-columns:1fr}.vendor-side{position:static}.vendor-hero-media{min-height:360px}.vendor-hero-media img,.vendor-photo-placeholder{height:360px}.vendor-gallery figure{grid-column:span 12!important}}@media(max-width:620px){.vendor-breadcrumb{padding-top:14px}.vendor-breadcrumb .wrap{font-size:.62rem}.vendor-hero{padding:34px 0 28px}.vendor-title{font-size:clamp(3.4rem,17vw,5.3rem)}.vendor-seal{width:88px;height:88px}.vendor-hero-media{min-height:280px}.vendor-hero-media img,.vendor-photo-placeholder{height:280px;box-shadow:7px 7px 0 var(--blue)}.vendor-subnav .wrap{gap:20px}.vendor-subnav a{font-size:.68rem;padding:13px 0}.vendor-main{padding:46px 0 58px}.vendor-editorial-grid{gap:34px}.vendor-section-anchor{margin-bottom:48px}.vendor-quote{padding-left:16px;border-left-width:6px}.vendor-gallery{padding:54px 0}.vendor-gallery-grid{display:block}.vendor-gallery figure{margin-bottom:14px;min-height:220px}.vendor-gallery img{min-height:220px}.vendor-bottom{padding:54px 0}}

/* Public profile and admin preview share the same editorial composition. */
.public-preview-editorial{background:#fff;border:1px solid #e7e0d8;overflow:hidden;margin:34px 0 80px}
.public-preview-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);min-height:450px;background:#f7f2eb}
.public-preview-hero-copy{padding:clamp(28px,5vw,70px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.public-preview-hero-copy h1{font-size:clamp(2.8rem,5vw,5rem);line-height:.95;letter-spacing:-.055em;margin:16px 0 25px;overflow-wrap:normal;word-break:normal;hyphens:none}
.public-preview-hero-copy .vendor-dek{font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.5;margin:0;color:#33453d}
.public-preview-hero-copy .vendor-links{margin-top:26px}
.public-preview-hero-media{min-width:0;background:#eae5df;display:flex;align-items:center;justify-content:center;overflow:hidden}
.public-preview-hero-media img{display:block;width:100%;height:100%;min-height:450px;max-height:650px;object-fit:contain;object-position:center}
.public-preview-body{padding:clamp(25px,5vw,70px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(240px,.8fr);gap:clamp(24px,5vw,75px)}
.public-preview-body h2{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;margin:0 0 14px}
.public-preview-body p{line-height:1.75;white-space:pre-line;overflow-wrap:break-word}
.public-preview-body .preview-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.public-preview-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:clamp(55px,6vw,96px);grid-auto-flow:row dense;gap:9px;padding:0 clamp(25px,5vw,70px) clamp(25px,5vw,70px)}
.public-preview-gallery figure{margin:0;min-width:0;min-height:0;overflow:hidden;background:transparent;grid-column:span 3;grid-row:span 3}
.public-preview-gallery img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;background:transparent}
.public-preview-gallery figure:nth-child(6n+1){grid-column:span 4;grid-row:span 4}
.public-preview-gallery figure:nth-child(6n+2){grid-column:span 2;grid-row:span 4}
.public-preview-gallery figure:nth-child(6n+3){grid-column:span 2;grid-row:span 3}
.public-preview-gallery figure:nth-child(6n+4){grid-column:span 4;grid-row:span 3}
@media(max-width:760px){.public-preview-hero{grid-template-columns:1fr}.public-preview-hero-media img{min-height:320px;max-height:470px}.public-preview-body{grid-template-columns:1fr}.public-preview-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(80px,20vw,140px);gap:7px}.public-preview-gallery figure:nth-child(n){grid-column:span 1;grid-row:span 2}.public-preview-gallery figure:nth-child(4n+1){grid-column:span 2;grid-row:span 3}}

/* Let the cover photograph sit cleanly in the layout, without a tinted frame. */
.public-preview-hero-media{background:transparent}
.public-preview-hero-media img{background:transparent;min-height:0;max-height:none;height:auto;object-fit:contain}

/* Inclusion tags span the full profile width above the About / Inclusion columns. */
.public-preview-body:has(.preview-tags){position:relative;padding-top:clamp(95px,11vw,145px)}
.public-preview-body .preview-tags{position:absolute;top:clamp(25px,5vw,55px);left:clamp(25px,5vw,70px);right:clamp(25px,5vw,70px);display:flex;flex-wrap:wrap;gap:10px;align-items:center}
@media(max-width:760px){.public-preview-body:has(.preview-tags){padding-top:125px}.public-preview-body .preview-tags{top:25px}}

/* BELOVED is an editorial verification mark, not an inclusion tag. */
.public-beloved-mark{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;margin:5px 0 18px;padding:7px 11px;border:1px solid #203d31;border-radius:4px;color:#203d31;font-size:12px;font-weight:900;letter-spacing:.11em;line-height:1.4}
.public-beloved-symbol{font-size:17px;line-height:1}.public-beloved-verified{border-left:1px solid #b7c7b8;padding-left:9px;margin-left:3px;font-size:10px;font-weight:600;letter-spacing:.025em}

.review-preview-banner{background:#203d31;color:#fff;text-align:center;padding:13px 20px;font-size:12px;font-weight:700;letter-spacing:.035em;line-height:1.6}

.vendor-lightbox{position:fixed;inset:0;margin:auto;width:min(96vw,1100px);height:min(94vh,850px);max-width:none;max-height:none;border:0;border-radius:12px;padding:45px 60px;background:#171c19;color:white;overflow:hidden}.vendor-lightbox::backdrop{background:rgba(0,0,0,.87)}.vendor-lightbox>img{width:100%;height:100%;object-fit:contain}.vendor-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.14);color:white;cursor:pointer;border-radius:50%;width:38px;height:38px;font-size:28px;display:grid;place-items:center}.vendor-lightbox-close{right:10px;top:10px}.vendor-lightbox-prev{left:10px;top:50%}.vendor-lightbox-next{right:10px;top:50%}.vendor-lightbox-count{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:13px}@media(max-width:650px){.vendor-lightbox{padding:45px 38px}.vendor-lightbox button{width:32px;height:32px}}

.vendor-hero-carousel{position:relative;width:100%;height:100%;min-height:300px}.vendor-hero-carousel>img{width:100%;height:100%;object-fit:cover;display:block}.vendor-hero-carousel>button{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#203d31;font-size:30px;line-height:1;cursor:pointer;z-index:2}.vendor-hero-prev{left:12px}.vendor-hero-next{right:12px}.vendor-hero-count{position:absolute;bottom:12px;right:12px;background:rgba(20,30,25,.78);color:white;border-radius:30px;padding:5px 11px;font-size:12px;z-index:2}

.public-beloved-mark{display:block;width:112px;height:112px;padding:0;margin:8px 0 20px;border:0;border-radius:50%;background:transparent url('/assets/beloved-verified-stamp.svg') center/contain no-repeat;font-size:0;letter-spacing:0;overflow:hidden}.public-beloved-mark .public-beloved-symbol,.public-beloved-mark .public-beloved-verified{display:none}

/* Keep inclusion badges in their own wrapping row, never over profile copy. */
.public-preview-hero-copy .preview-tags.preview-tags-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:8px;margin:4px 0 18px;max-width:100%;min-width:0}
.public-preview-hero-copy .preview-tags.preview-tags-top .tag{display:inline-flex;align-items:center;flex:0 1 auto;width:auto;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:break-word;line-height:1.35;padding:7px 11px;border-radius:999px;font-size:12px}
.public-preview-hero-copy .vendor-dek{clear:both;margin-top:4px}
@media(max-width:760px){.public-preview-hero-copy .preview-tags.preview-tags-top{gap:7px}.public-preview-hero-copy .preview-tags.preview-tags-top .tag{font-size:11px}}

/* Discreet per-image photographer attribution */
.photo-credit{font-size:10px;line-height:1.4;font-weight:400;letter-spacing:.01em;opacity:.66;margin-top:4px;text-align:right}.vendor-cover-photo{margin:0;position:relative}.vendor-cover-photo>img{display:block;width:100%;height:100%;object-fit:cover}.vendor-cover-photo>.photo-credit{position:absolute;right:9px;bottom:7px;margin:0;color:white;text-shadow:0 1px 5px rgba(0,0,0,.8);opacity:.85;font-size:10px}

/* Public editorial gallery: credits stay on top of cropped photos */
#vendorProfile .public-preview-gallery figure,#vendorProfile .vendor-gallery-grid figure{position:relative!important}
#vendorProfile .public-preview-gallery figure .photo-credit,#vendorProfile .vendor-gallery-grid figure .photo-credit{position:absolute!important;bottom:6px!important;right:7px!important;margin:0!important;padding:2px 4px!important;color:#fff!important;background:rgba(0,0,0,.25)!important;font:400 10px/1.3 Arial,sans-serif!important;text-shadow:0 1px 3px #000!important;opacity:1!important;z-index:5!important;pointer-events:none}
#vendorProfile .vendor-hero-carousel{position:relative}
#vendorProfile .vendor-carousel-credit{position:absolute;right:9px;bottom:9px;color:#fff;background:rgba(0,0,0,.35);padding:2px 5px;border-radius:2px;font:400 10px/1.3 Arial,sans-serif;text-shadow:0 1px 3px #000;opacity:1;z-index:5;pointer-events:none}

/* Keep carousel count separate from bottom-right photo attribution */
#vendorProfile .vendor-hero-carousel .vendor-hero-count{top:12px!important;right:12px!important;bottom:auto!important;left:auto!important;transform:none!important}

/* Logo-based vendor imagery must not be cropped like photography. */
#vendorProfile.vendor-logo-artwork .public-preview-hero-media img,#vendorProfile.vendor-logo-artwork .vendor-hero-carousel>img,#vendorProfile.vendor-logo-artwork .vendor-gallery img{object-fit:contain!important;object-position:center!important;background:#fff}

/* GirlOnWax portfolio: show entire portrait photos without cropping faces. */
#vendorProfile.vendor-girl-on-wax .public-preview-gallery figure{background:#f2eee9}
#vendorProfile.vendor-girl-on-wax .public-preview-gallery img{object-fit:contain;object-position:center}

/* Kelly Schuster's editorial photography must retain its full composition. */
#vendorProfile.vendor-kelly-schuster .public-preview-gallery figure{background:#f2eee9}
#vendorProfile.vendor-kelly-schuster .public-preview-gallery img{object-fit:contain;object-position:center}
