
/* Final release: modern, consistent contact icons and corrected spacing */
.contact-icon-link{display:inline-flex!important;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:9px!important;border-radius:13px!important;background:rgba(183,112,137,.09);color:#9f5c74!important;vertical-align:middle;transition:transform .2s ease,background .2s}
.contact-icon-link:hover{transform:translateY(-2px);background:#f3dfe6;color:#79394f!important}
.inline-brand-icon{width:22px!important;height:22px!important;display:inline-block;vertical-align:middle;fill:currentColor;flex:none}
.float-btn.whatsapp .inline-brand-icon{width:30px!important;height:30px!important}
#wa-menu .inline-brand-icon{width:21px!important;height:21px!important}
.float-menu{width:310px!important;min-width:310px!important;max-width:calc(100vw - 36px)}
.float-menu a{padding:12px 10px!important;min-height:59px}
.float-menu a .float-link-text b{font-size:.94rem!important;color:#5b3545}
.float-menu a .float-link-text small{font-size:.84rem!important;color:#8a6a75}
.float-menu>strong{font-size:.96rem!important;letter-spacing:.01em}
.location-actions{align-items:center;gap:10px!important}
.location-actions .contact-icon-link{width:44px;height:44px}
.stack-actions .contact-icon-link{min-height:48px;width:48px;border-radius:50%!important}
.consult-submit{display:inline-flex;align-items:center;justify-content:center;gap:12px!important}
.consult-submit svg{width:22px;height:22px}
/* An editorial story section that is aligned in the white card instead of touching edges */
.about-editorial{box-sizing:border-box;width:100%!important;max-width:unset!important;border-radius:36px;padding:clamp(30px,6vw,78px)!important;margin:0 auto 66px!important;background:linear-gradient(145deg,#fffefa,#fff7f5)!important;box-shadow:0 22px 54px rgba(89,48,64,.08);border:1px solid #f1e1e1!important}
.about-editorial .story-kicker{font-size:.77rem;letter-spacing:.25em;color:#ad627d;font-weight:800;display:flex;align-items:center;gap:16px;margin-bottom:24px}
.about-editorial .story-kicker span{width:38px;height:1px;background:#c88b9e}
.about-editorial h2{font-size:clamp(2.6rem,5vw,5.6rem)!important;max-width:980px;line-height:1.12;margin:0 0 36px!important;letter-spacing:-.04em;overflow-wrap:break-word}
.about-editorial h2 em{font-family:Georgia,serif;font-weight:400;font-style:italic;color:#b46f86}
.about-editorial .story-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,65px)}
.about-editorial .story-layout p{font-size:1.035rem;line-height:1.95!important;color:#6a525d!important;margin:0;max-width:none}
/* Instagram embeds: 3 reels, with follow CTA, lazy-loaded. Autoplay determined by Instagram/player */
.osj-reel-section{background:linear-gradient(135deg,#fff5f4,#fde6e4)!important}
.reels-heading{align-items:center!important}
.reels-right{text-align:right;max-width:440px;display:grid;gap:16px;justify-items:end}
.reels-right p{margin:0;color:#74545f;line-height:1.65}
.osj-follow-btn{display:inline-flex!important;align-items:center;gap:10px;border-radius:50px!important;padding:13px 23px!important;background:#b56b85!important;color:#fff!important;font-size:.95rem;white-space:nowrap}
.ig-follow-svg{width:19px;height:19px}
.osj-reels-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.osj-reel-card{border-radius:22px;background:#fff;overflow:hidden;border:1px solid #eddadd;box-shadow:0 16px 33px rgba(104,59,76,.09)}
.osj-reel-frame{position:relative;aspect-ratio:9/15.7;background:linear-gradient(150deg,#f8e7e8,#fffaf9);overflow:hidden}
.osj-reel-frame iframe{border:0;width:100%;height:100%;display:block}
.osj-reel-caption{padding:18px 18px 21px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.osj-reel-caption span{font-size:.65rem;color:#a57587;letter-spacing:.16em;font-weight:800}
.osj-reel-caption a{font-size:.87rem;color:#8e4560;font-weight:750;text-align:right}
.reels-help{font-size:.79rem;line-height:1.6;color:#806572;margin:17px 0 0;max-width:900px}
/* Keep requested treatment image compositions uncut, including device and hair subjects */
.service-card .service-thumb img,.treatment-shot img{object-fit:contain!important;object-position:center center!important}
.treatment-shot img{max-height:550px!important}
@media (max-width:940px){.about-editorial .story-layout{grid-template-columns:1fr;gap:18px}.osj-reels-grid{gap:12px}}
@media (max-width:740px){.about-editorial{padding:28px 23px!important;border-radius:25px}.about-editorial h2{font-size:clamp(2.3rem,10vw,3.6rem)!important}.reels-heading{display:grid!important;gap:20px}.reels-right{text-align:left;justify-items:start}.osj-reels-grid{grid-template-columns:1fr!important;gap:22px;max-width:440px;margin:auto}.osj-reel-frame{aspect-ratio:9/13.5}.osj-reel-card{max-width:100%}}
@media (prefers-reduced-motion:reduce){.contact-icon-link{transition:none}}

/* Show both women’s and men’s PRP photos without cropping either */
.treatment-visual:has(.secondary-photo){display:grid;grid-template-columns:1fr 1fr;gap:13px;background:transparent!important}
.treatment-visual:has(.secondary-photo) .treatment-shot{border:1px solid #efdfe1;border-radius:20px;overflow:hidden;background:#fffafb}
.treatment-visual:has(.secondary-photo) .treatment-shot img{width:100%;height:280px!important;max-height:280px!important;object-fit:contain!important}
.treatment-visual:has(.secondary-photo) .treatment-shot figcaption{font-size:.75rem;padding:9px 12px}
@media(max-width:700px){.treatment-visual:has(.secondary-photo){grid-template-columns:1fr 1fr;gap:8px}.treatment-visual:has(.secondary-photo) .treatment-shot img{height:195px!important}}
