.beauty{border-top:1px solid var(--line)}.beauty .eyebrow{color:var(--berry)}.beauty-intro{max-width:650px;color:var(--muted);font-size:16px;line-height:1.85;margin:22px 0 28px}.beauty-filters{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:20px;padding:25px;background:#f0e9e1;margin:30px 0}.beauty-filters label{display:block;font-size:13px;line-height:1.8;color:var(--muted)}.beauty-filters input,.beauty-filters select{display:block;width:100%;margin-top:7px;border:1px solid #cfc4b8;background:var(--paper);font:16px/1.6 var(--sans);padding:12px;color:var(--ink);min-width:0;border-radius:0}.beauty-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 25px;flex-wrap:wrap}.beauty-toolbar p{font-size:14px;color:var(--muted)}.beauty-toolbar select{font:14px var(--sans);padding:10px;border:1px solid var(--line);background:transparent;color:var(--ink)}.beauty-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:start}.beauty-list{display:grid;gap:20px}.beauty-card{border:1px solid var(--line);padding:25px;background:#fdfaf5;position:relative}.beauty-card-head{display:flex;gap:18px;align-items:flex-start}.beauty-card-photo{width:95px;height:100px;object-fit:cover;flex-shrink:0}.beauty-card-symbol{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--rose);font:32px var(--serif);color:var(--berry);flex-shrink:0}.beauty-card h3{font-size:29px;line-height:1.2;letter-spacing:-.6px;margin:0 0 8px}.beauty-card h3 a{border:0;cursor:pointer}.beauty-card h3 a:hover{color:var(--berry)}.beauty-card .beauty-address,.beauty-card .beauty-services{font-size:14px;line-height:1.8;color:var(--muted)}.beauty-card .beauty-summary{font-size:15px;line-height:1.8;color:var(--muted);margin:18px 0}.beauty-rank{display:block;font-size:12px;line-height:1.8;color:var(--berry);margin-bottom:12px}.beauty-ad-label{display:inline-block;font-size:12px;line-height:1.6;text-transform:uppercase;letter-spacing:1px;background:var(--rose);padding:5px 10px;margin-bottom:15px;color:var(--berry)}.beauty-votes{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.beauty-votes button{display:inline-flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #cfc5bc;font:14px/1.5 var(--sans);min-height:44px;background:var(--paper)}.beauty-votes button[aria-pressed=true]{background:var(--berry);color:white;border-color:var(--berry)}.beauty-votes .beauty-score{font-size:13px;color:var(--muted)}.beauty-card-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:18px}.beauty-phone{display:inline-flex;align-items:center;gap:10px;font-size:15px;line-height:1.6;color:var(--berry);padding:10px 0;overflow-wrap:anywhere}.beauty-phone:hover{text-decoration:underline}.beauty-card .text-link{font-size:14px;gap:8px}.beauty-promoted{margin:30px 0}.beauty-promoted>h3{font-size:27px;margin-bottom:18px}.beauty-promoted-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.beauty-map-wrap{position:sticky;top:25px;border:1px solid var(--line);background:#eee8df;min-width:0}.beauty-map{height:550px;width:100%;z-index:0}.beauty-map:not(.leaflet-container){display:grid;place-content:center;padding:35px;text-align:center;background:radial-gradient(ellipse at top right,#e9dbd8,transparent 65%),#f0e9e1}.beauty-map h3{font-size:35px;line-height:1.25;margin-bottom:18px}.beauty-map p{font-size:14px;line-height:1.85;color:var(--muted);max-width:320px;margin:0 auto 20px}.beauty-map .button{margin:auto}.beauty-map-foot{font-size:12px;line-height:1.8;padding:15px 20px;background:var(--paper);color:var(--muted)}.beauty-map-foot a{text-decoration:underline}.beauty-map-pin{display:grid;place-items:center;width:34px;height:34px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--berry);color:white;border:2px solid var(--paper);box-shadow:0 3px 10px #34201944}.beauty-map-pin span{transform:rotate(45deg);font:14px/1 var(--sans)}.beauty-map .leaflet-popup-content{font:14px/1.7 var(--sans);min-width:160px}.beauty-map .leaflet-popup-content strong{display:block;font:23px/1.2 var(--serif);margin-bottom:8px}.beauty-map .leaflet-popup-content button{padding:8px 0;color:var(--berry);font:14px/1.7 var(--sans);text-decoration:underline}.beauty-map .leaflet-control-attribution{font-size:11px;line-height:1.6}.beauty-empty{padding:35px;border:1px dashed #cabeb1;background:#f2ece4;color:var(--muted);font-size:16px;line-height:1.85}.beauty-empty h3{font-size:31px;color:var(--ink);margin-bottom:15px}.beauty-rules{margin-top:28px;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:14px;line-height:1.85}.beauty-rules summary{cursor:pointer;color:var(--berry)}.beauty-rules p{margin-top:15px}.beauty-bottom{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}.beauty-message{font-size:14px;line-height:1.8;color:var(--berry);min-height:26px;margin-top:18px}.beauty-preview-note{font-size:13px;line-height:1.8;padding:12px 16px;background:var(--rose);color:var(--berry);margin:20px 0}.beauty-dialog{width:900px;padding:28px 38px}.beauty-profile h2{font-size:44px;line-height:1.2;margin:15px 0}.beauty-profile h3{font-size:28px;line-height:1.3;margin:26px 0 15px}.beauty-profile p,.beauty-profile li{font-size:16px;line-height:1.85}.beauty-profile-text{white-space:pre-wrap;color:var(--muted);overflow-wrap:anywhere}.beauty-profile-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:25px 0}.beauty-profile-gallery img{height:230px;width:100%;object-fit:cover}.beauty-profile dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.beauty-profile dt{font-size:12px;color:var(--muted);margin-bottom:8px}.beauty-profile dd{margin:0;font-size:16px;line-height:1.8}.beauty-profile .beauty-votes{border-block:1px solid var(--line);padding:20px 0}.beauty-profile .beauty-card-actions{margin:25px 0}.beauty-map .leaflet-control-zoom a{font-size:22px;width:36px;height:36px;line-height:36px}.beauty-profile .beauty-ad-label{margin-top:15px}
@media(max-width:1000px){.beauty-layout{grid-template-columns:1fr}.beauty-map-wrap{position:static}.beauty-map{height:420px}.beauty-filters{grid-template-columns:1fr 1fr}.beauty-filters label:last-child{grid-column:1/-1}.beauty-list{grid-template-columns:repeat(2,minmax(0,1fr))}.beauty-card-head{flex-wrap:wrap}.beauty-card-photo{width:100%;height:160px}}
@media(max-width:700px){.beauty-filters,.beauty-promoted-grid,.beauty-list{grid-template-columns:minmax(0,1fr)}.beauty-filters{padding:20px}.beauty-filters label:last-child{grid-column:auto}.beauty-card{padding:22px}.beauty-card-head{flex-wrap:nowrap}.beauty-card-photo{width:75px;height:90px}.beauty-card h3{font-size:28px}.beauty-map{height:380px}.beauty-map-wrap:not(.is-visible){display:none}.beauty-dialog{padding:23px}.beauty-profile h2{font-size:35px}.beauty-profile dl,.beauty-profile-gallery{grid-template-columns:minmax(0,1fr)}.beauty-profile-gallery img{height:250px}}
.beauty-card h3,.beauty-address,.beauty-services,.beauty-summary{overflow-wrap:anywhere}
@media(max-width:1350px){.desktop-nav{display:none}.mobile-toggle{display:grid}}
@media print{.beauty-map-wrap,.beauty-filters,.beauty-votes,.beauty-bottom{display:none!important}}

/* 1.4.1: zwarte wizytówki i głosowanie ikonami. */
.beauty-layout{grid-template-columns:1.35fr 1fr;gap:24px}
.beauty-list{gap:12px}
.beauty-card{padding:16px 18px}
.beauty-card-head{gap:12px;align-items:center}
.beauty-card-symbol{width:38px;height:38px;font-size:24px}
.beauty-card-photo{width:62px;height:66px}
.beauty-card h3{font-size:24px;line-height:1.2;margin-bottom:5px}
.beauty-card .beauty-address,.beauty-card .beauty-services{font-size:13px;line-height:1.65}
.beauty-rank{font-size:12px;margin-bottom:8px}
.beauty-ad-label{font-size:11px;padding:3px 8px;margin-bottom:10px}
.beauty-votes{gap:12px;margin:10px 0 0}
.beauty-votes .beauty-thumb{border:0;border-radius:24px;background:transparent;padding:8px 10px;min-width:54px;min-height:44px;gap:7px;font-size:14px;line-height:1.4}
.beauty-votes .beauty-thumb:hover{background:var(--rose)}
.beauty-votes .beauty-thumb[aria-pressed=true]{background:var(--berry);color:white}
.beauty-thumb svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.beauty-thumb-down svg{transform:rotate(180deg)}
.beauty-card .beauty-score{font-size:12px}
.beauty-card-actions{gap:20px;margin-top:3px}
.beauty-phone{font-size:14px;padding:5px 0}
.beauty-card .text-link{font-size:13px;padding-bottom:2px}
.beauty-promoted{margin:22px 0}
.beauty-promoted>h3{font-size:25px;margin-bottom:13px}
.beauty-promoted-grid{gap:14px}
.beauty-map{height:390px}
.beauty-map:not(.leaflet-container){padding:25px}
.beauty-map h3{font-size:29px;margin-bottom:14px}
.beauty-map-foot{padding:12px 16px}
.beauty-profile .beauty-votes{margin:20px 0;padding:15px 0}
.beauty-profile .beauty-card-actions{margin:20px 0}
@media(max-width:1000px){.beauty-layout{grid-template-columns:1fr}.beauty-list{grid-template-columns:repeat(2,minmax(0,1fr))}.beauty-card-head{flex-wrap:nowrap}.beauty-map{height:350px}}
@media(max-width:700px){.beauty-list{grid-template-columns:minmax(0,1fr)}.beauty-card{padding:15px}.beauty-card h3{font-size:24px}.beauty-card-photo{width:55px;height:62px}.beauty-votes{gap:8px}.beauty-map{height:330px}.beauty-card-actions{gap:16px}.beauty-phone{font-size:14px}}

/* 1.4.2 — reklama salonu z własną oprawą. */
.beauty-premium-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.beauty-premium-heading .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:8px}
.beauty-premium-heading h3{font-size:34px;line-height:1.15;margin:0;letter-spacing:-.6px}
.beauty-premium-heading>span{font:48px var(--serif);color:#9b7750}
.beauty-premium-card{--premium-wine:#492331;--premium-gold:#f3d6a5;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(110px,30%) minmax(0,1fr);overflow:hidden;min-width:0;min-height:238px;background:var(--premium-wine);color:#fff6ed;border:1px solid #ab8562;box-shadow:0 8px 24px #49233112;transition:box-shadow .25s,border-color .25s}
.beauty-premium-card::after{content:'';position:absolute;inset:6px;border:1px solid #e6c59b36;pointer-events:none;z-index:3}
.beauty-premium-card:hover,.beauty-premium-card:focus-within{border-color:#a27e48;box-shadow:0 12px 28px #49233125}
.beauty-premium-visual{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 0 0,#d8a97d8c,transparent 70%),linear-gradient(135deg,#82515b,#492331);min-height:100%}
.beauty-premium-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#26111ca8,transparent 60%);pointer-events:none}
.beauty-premium-visual img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;transition:transform .5s}
.beauty-premium-card:hover .beauty-premium-visual img{transform:scale(1.035)}
.beauty-premium-monogram{font:clamp(40px,5vw,76px)/1 var(--serif);letter-spacing:-5px;color:#f1d4ae;text-shadow:0 3px 22px #33151f55;position:relative;z-index:1;padding:20px}
.beauty-premium-ornament{position:absolute;top:-45px;right:-38px;color:#ebc7943d;font:200px var(--serif);transform:rotate(12deg)}
.beauty-premium-seal{position:absolute;left:12px;right:12px;bottom:18px;z-index:2;color:#fff5e3;text-align:center;font:24px/1.2 var(--serif)}
.beauty-premium-seal small{display:block;font:10px/1.5 var(--sans);letter-spacing:1px;margin-top:5px}
.beauty-premium-body{padding:22px 23px 23px;min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at top right,#96605a4d,transparent 75%)}
.beauty-premium-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--premium-gold);margin-bottom:15px}
.beauty-premium-label{font:10px/1.6 var(--sans);letter-spacing:1.1px;text-transform:uppercase;color:#f3d6a5;border:1px solid #e9c69b6b;border-radius:2px;display:inline-block;padding:3px 7px;width:fit-content}
.beauty-premium-topline>span:last-child{font-size:18px}
.beauty-premium-card .beauty-premium-location{font:11px/1.7 var(--sans);letter-spacing:.4px;color:#e1c8cb;margin:0 0 6px}
.beauty-premium-card h3{font:27px/1.12 var(--serif);letter-spacing:-.5px;color:#fff6ed;margin:0 0 10px;overflow-wrap:anywhere}
.beauty-premium-card h3 a,.beauty-premium-card h3 button{font:inherit;letter-spacing:inherit;text-align:left;color:inherit;padding:0;border:0;background:none;cursor:pointer;text-decoration:none}
.beauty-premium-card .beauty-premium-copy{font:13px/1.65 var(--sans);color:#f0dfe0;margin:0 0 17px;overflow-wrap:anywhere}
.beauty-premium-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:auto}
.beauty-premium-call{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#f2dbb5;color:#42202d;font:12px/1.5 var(--sans);padding:11px 13px;min-height:44px;border:1px solid #f5e5c9;cursor:pointer;transition:background .2s;text-decoration:none;text-align:center}
.beauty-premium-call:hover{background:#fff3dc}
.beauty-premium-call span{font-size:17px}
.beauty-premium-detail{font:12px/1.7 var(--sans);color:#fff3e4;text-decoration:underline;text-underline-offset:4px;padding:10px 0}
.beauty-premium-card :focus-visible,.beauty-business-invite :focus-visible{outline:2px solid #dcb783;outline-offset:4px}
.beauty-card-featured{border-color:#aa865c;box-shadow:inset 3px 0 #aa865c;background:linear-gradient(110deg,#f8f0e1,#fdfaf5 65%)}
.beauty-inline-ad{display:block;margin-top:8px;font:11px/1.6 var(--sans);color:#765031}
.beauty-card-featured .beauty-card-symbol{background:#eddec2;color:#6c4736}
.beauty-map-pin-premium{background:#f0d39f!important;color:#45232d!important;border-color:#654031!important;box-shadow:0 0 0 4px #ebd1a257,0 3px 10px #34201944!important}
.beauty-preview-showcase{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:35px;align-items:center;margin:30px 0;padding:26px;background:#f0e7df;border:1px solid #ddcfc0}
.beauty-preview-showcase>div>.eyebrow{font-size:10px;line-height:1.7;letter-spacing:1.4px;margin-bottom:12px}
.beauty-preview-showcase>div>h3{font:32px/1.15 var(--serif);letter-spacing:-.6px;margin:0 0 15px}
.beauty-preview-showcase>div>p:not(.eyebrow){font:13px/1.8 var(--sans);color:var(--muted);margin-bottom:17px}
.beauty-preview-showcase .text-link{font-size:13px}
.beauty-business-invite{display:flex;gap:20px;align-items:center;margin-top:30px;border:1px solid #d8c7af;background:linear-gradient(105deg,#f3e8d5,#f5eee6);padding:22px 25px}
.beauty-business-invite>span{font:44px var(--serif);color:#997044}
.beauty-business-invite>div{flex:1}
.beauty-business-invite .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:7px}
.beauty-business-invite h3{font:26px/1.2 var(--serif);letter-spacing:-.5px;margin:0}
.beauty-business-invite .text-link{font-size:13px;flex-shrink:0}
.beauty-premium-profile{display:grid;grid-template-columns:100px minmax(0,1fr);min-height:140px;background:radial-gradient(ellipse at top right,#835358,transparent),#492331;color:#fff6ed;position:relative;border:1px solid #ac8659;margin:10px 0 25px;overflow:hidden}
.beauty-premium-profile-art{display:grid;place-items:center;position:relative;overflow:hidden;background:#76434e}
.beauty-premium-profile-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.beauty-premium-profile-art .beauty-premium-monogram{font-size:44px;letter-spacing:-2px;padding:10px}
.beauty-premium-profile>div:last-child{padding:23px 25px;position:relative}
.beauty-premium-profile p{font:30px/1.15 var(--serif);letter-spacing:-.5px;color:#fff1e1;margin:15px 0 0;position:relative;z-index:1}
.beauty-premium-profile-star{position:absolute;right:20px;bottom:-22px;font:120px var(--serif);color:#d3a9723b;pointer-events:none}
.beauty-offer-intro{margin:5px 0 25px}
.beauty-offer-intro h2{font-size:clamp(34px,5vw,48px);letter-spacing:-1px}
.beauty-offer-intro>p:last-child{font-size:15px;color:var(--muted);margin-top:14px}
.beauty-profile .beauty-example-caption{font:12px/1.8 var(--sans);color:var(--muted);margin:12px 0 25px}
.beauty-offer-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:28px 0}
.beauty-offer-benefits>div{border-top:1px solid #d3b995;padding-top:14px}
.beauty-offer-benefits>div>span{font:12px var(--sans);color:#956e42}
.beauty-offer-benefits h3{font:23px/1.2 var(--serif);letter-spacing:-.4px;margin:12px 0}
.beauty-offer-benefits p{font:13px/1.8 var(--sans);color:var(--muted)}
.beauty-offer-footer{display:flex;align-items:center;gap:22px;padding-top:22px;border-top:1px solid var(--line)}
.beauty-offer-footer .button{font-size:13px;flex-shrink:0}
.beauty-offer-footer p{font:12px/1.8 var(--sans);color:var(--muted)}
@media(min-width:1001px){.beauty-promoted-grid>.beauty-premium-card:only-child{max-width:760px}}
@media(max-width:1000px){.beauty-promoted-grid{grid-template-columns:minmax(0,1fr)}.beauty-preview-showcase{grid-template-columns:minmax(0,1fr);gap:20px}.beauty-preview-showcase>div>h3 br{display:none}.beauty-premium-card{min-height:220px}.beauty-premium-card h3{font-size:29px}}
@media(max-width:700px){.beauty-premium-card{grid-template-columns:90px minmax(0,1fr);min-height:230px}.beauty-premium-body{padding:19px 17px}.beauty-premium-card h3{font-size:26px}.beauty-premium-card .beauty-premium-copy{font-size:12px}.beauty-premium-seal{left:7px;right:7px;bottom:18px}.beauty-premium-seal small{font-size:9px;letter-spacing:0}.beauty-premium-label{font-size:9px;letter-spacing:.6px}.beauty-premium-topline{margin-bottom:12px}.beauty-premium-topline>span:last-child{display:none}.beauty-premium-actions{gap:8px}.beauty-premium-call{font-size:11px;padding:9px 10px;gap:8px}.beauty-premium-monogram{font-size:44px;padding:8px;letter-spacing:-2px}.beauty-preview-showcase{padding:18px}.beauty-preview-showcase>div>h3{font-size:29px}.beauty-business-invite{flex-wrap:wrap;padding:20px;gap:12px}.beauty-business-invite>span{font-size:32px}.beauty-business-invite h3{font-size:24px}.beauty-business-invite .text-link{margin-left:42px}.beauty-offer-benefits{grid-template-columns:minmax(0,1fr);gap:18px}.beauty-offer-benefits h3{margin:8px 0}.beauty-offer-footer{flex-direction:column;align-items:flex-start;gap:12px}.beauty-premium-profile{grid-template-columns:75px minmax(0,1fr)}.beauty-premium-profile>div:last-child{padding:20px 16px}.beauty-premium-profile p{font-size:26px}.beauty-premium-profile-art .beauty-premium-monogram{font-size:36px}}
@media(prefers-reduced-motion:reduce){.beauty-premium-card,.beauty-premium-visual img,.beauty-premium-call{transition:none}.beauty-premium-card:hover .beauty-premium-visual img{transform:none}}
