/* OpalCare image categories: integrated artwork and readable captions. */
.opal-home #opal-categories{gap:20px}
.opal-home #opal-categories .category-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:0;min-height:240px;padding:0;overflow:hidden;border:1px solid #eadbd5;border-radius:20px;background:#f8e9e4;color:#422d31;box-shadow:0 5px 18px #56352f08;isolation:isolate;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.opal-home #opal-categories .category-card img{display:block;flex:none;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;align-self:stretch;border-radius:0;mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 72%,transparent 100%)}
.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){position:relative;display:flex;align-items:center;flex:1;min-height:68px;margin-top:-12px;padding:16px 20px 18px 60px;font-size:17px;font-weight:800;line-height:1.7;letter-spacing:0;color:#422d31}
.opal-home #opal-categories .category-card .opal-category-arrow{display:grid;place-items:center;position:absolute;top:auto;bottom:18px;left:18px;width:30px;height:30px;border:1px solid #d9bcb4;border-radius:50%;background:#ffffff80;color:#8b4e5d;font-size:18px;line-height:1}
.opal-home #opal-categories .category-card:hover{transform:translateY(-4px);background:#f8e9e4;border-color:#cfa69d;box-shadow:0 12px 28px #56352f14;text-decoration:none}
.opal-home #opal-categories .category-card:focus-visible{outline:3px solid #934d61;outline-offset:4px}
.opal-home #opal-categories .opal-category-number{padding:24px;color:#b98c80;font-size:30px}
@media(max-width:600px){.opal-home #opal-categories{gap:12px}.opal-home #opal-categories .category-card{min-height:0;border-radius:15px}.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){font-size:14px;min-height:66px;padding:12px 12px 14px 38px;margin-top:-6px}.opal-home #opal-categories .category-card .opal-category-arrow{left:10px;bottom:20px;width:23px;height:23px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.opal-home #opal-categories .category-card{transition:none}.opal-home #opal-categories .category-card:hover{transform:none}}
.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){font-family:Tahoma,Arial,sans-serif;font-weight:700}
/* Distinct caption boxes requested by the shop owner. */
.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){flex:0 0 auto;min-height:58px;margin:0 12px 12px;padding:12px 14px 12px 48px;background:#fffaf8;border:1px solid #dcbeb5;border-radius:12px;box-shadow:0 2px 5px #56352f06}
.opal-home #opal-categories .category-card .opal-category-arrow{bottom:26px;left:25px;width:26px;height:26px;background:#f8e9e4}
@media(max-width:600px){.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){margin:0 8px 8px;min-height:64px;padding:10px 9px 10px 32px;font-size:13px;border-radius:10px}.opal-home #opal-categories .category-card .opal-category-arrow{bottom:28px;left:16px;width:21px;height:21px}}
.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){align-self:center;width:fit-content;max-width:calc(100% - 24px);min-height:0;margin:0 12px 14px;padding:9px 16px;text-align:center;justify-content:center;font-size:14px;border-radius:10px}
.opal-home #opal-categories .category-card .opal-category-arrow{display:none}
.opal-mirror-promo{margin:32px auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px 44px;border-radius:26px;background:radial-gradient(ellipse at 15% 10%,#e9c7bd,transparent 65%),linear-gradient(120deg,#f7e7df,#f0ddd9);border:1px solid #e6cfc5;color:#56333f;text-decoration:none;overflow:hidden}
.opal-mirror-promo strong{display:block;font:700 clamp(24px,3vw,38px)/1.6 Tahoma,sans-serif}.opal-mirror-promo p{margin:10px 0 20px;line-height:1.9}.opal-mirror-promo .promo-cta{display:inline-block;padding:12px 23px;background:#934d61;color:white;border-radius:24px;font-weight:700}.opal-mirror-art{flex:none;display:grid;place-items:center;width:180px;height:210px;border:8px solid #ffffffb0;border-radius:90px 90px 70px 70px;background:linear-gradient(140deg,#fff7ed,#ddb1ab);box-shadow:0 12px 30px #934d6120;font:italic 38px Georgia;color:#934d61;text-align:center}.opal-mirror-art small{display:block;font:12px Tahoma;letter-spacing:3px}
@media(max-width:600px){.opal-home #opal-categories .category-card>span:not(.opal-category-arrow):not(.opal-category-number){font-size:12px;padding:8px 11px;margin-bottom:10px;max-width:calc(100% - 16px)}.opal-mirror-promo{padding:26px 20px;gap:12px;margin:24px 16px}.opal-mirror-art{width:85px;height:130px;border-width:5px;font-size:24px}.opal-mirror-art small{font-size:8px;letter-spacing:1px}.opal-mirror-promo p{font-size:13px}.opal-mirror-promo strong{font-size:22px}}
