@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
.jfa-home{--wine:#401c2d;--plum:#2b1523;--cream:#f7f2ec;--rose:#e6b8ab;--ink:#2d2528;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.5;overflow:hidden}.jfa-home *{box-sizing:border-box}.jfa-home a{text-decoration:none;color:inherit}.jfa-home h1,.jfa-home h2,.jfa-home p{margin:0}.jfa-home h1,.jfa-home h2,.jfa-quote p{font-family:'DM Serif Display',Georgia,serif;font-weight:400}.jfa-home em{font-weight:400}.jfa-announcement{height:31px;background:#d7a89d;text-align:center;font-size:10px;letter-spacing:.16em;font-weight:700;padding:7px;text-transform:uppercase;color:#371b29}.jfa-announcement span{padding:0 12px}.jfa-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(5%,calc((100% - 1360px)/2));background:#faf7f2}.jfa-logo{white-space:nowrap;font-weight:700;letter-spacing:.09em;font-size:19px;color:#311722!important}.jfa-logo em{font-family:'DM Serif Display',Georgia,serif;font-size:20px;letter-spacing:0}.jfa-logo span{color:#bd867e}.jfa-header nav{display:flex;gap:30px;font-size:12px;font-weight:600}.jfa-header nav a:hover,.jfa-all-link:hover{color:#b77e77}.jfa-header-cta{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding:8px 0}.jfa-header-cta span{margin-left:14px}.jfa-hero{min-height:650px;background:var(--wine);color:#faf2eb;display:grid;grid-template-columns:54% 46%;position:relative}.jfa-hero-copy{padding:108px 4% 100px max(9%,calc((100vw - 1180px)/2));position:relative;z-index:2}.jfa-eyebrow,.jfa-kicker{font-size:10px;letter-spacing:.2em;font-weight:700}.jfa-eyebrow i{display:inline-block;width:7px;height:7px;background:#e6b9a5;border-radius:50%;margin-right:8px}.jfa-hero h1{font-size:clamp(72px,8vw,124px);line-height:.97;letter-spacing:-.055em;margin:34px 0 25px}.jfa-hero h1 em{color:#e1b3a9}.jfa-hero-copy>p{font-size:15px;line-height:1.85;max-width:400px;color:#e9d9da}.jfa-hero-actions{display:flex;gap:28px;align-items:center;margin-top:38px}.jfa-button{display:inline-flex;gap:36px;align-items:center;justify-content:space-between;font-weight:700;font-size:12px;padding:17px 22px;min-width:185px;transition:transform .2s}.jfa-button:hover{transform:translateY(-3px)}.jfa-button-light{background:#f3e9df;color:#351c29!important}.jfa-text-link{font-size:12px;border-bottom:1px solid #cba8a7;padding-bottom:5px}.jfa-text-link span{margin-left:8px}.jfa-hero-note{margin-top:80px;font-size:10px;letter-spacing:.08em;color:#caa9ac}.jfa-hero-art{position:relative;overflow:hidden;background:radial-gradient(circle at 45% 44%,#a96e75 0,#6f4053 36%,#401c2d 72%)}.jfa-orbit{position:absolute;border:1px solid rgba(255,231,214,.18);border-radius:50%;width:580px;height:580px;left:4%;top:8%}.orbit-two{width:420px;height:420px;left:19%;top:20%}.jfa-sculpture{position:absolute;display:block;box-shadow:inset 24px 0 37px rgba(255,255,255,.17),inset -24px 0 34px rgba(35,11,27,.28),24px 35px 55px rgba(38,12,26,.34)}.sculpture-back{width:180px;height:490px;border-radius:110px;transform:rotate(38deg);top:10%;left:39%;background:linear-gradient(100deg,#d49a93,#b97b7b 48%,#784553)}.sculpture-front{width:190px;height:420px;border-radius:120px;transform:rotate(-34deg);top:30%;left:38%;background:linear-gradient(100deg,#f0c7b5,#c48c89 48%,#895362)}.jfa-hero-art-label{position:absolute;right:9%;top:13%;font-size:11px;line-height:1.55;letter-spacing:.2em;font-weight:700;color:#f9e7df}.jfa-art-spark{position:absolute;bottom:15%;left:12%;font-size:38px;color:#e8b8a8}.jfa-hero-index{position:absolute;bottom:35px;right:6%;font-size:9px;letter-spacing:.16em;color:#efd5d0}.jfa-benefits{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #dfd5ce;background:#f7f2ec;padding:26px max(5%,calc((100% - 1180px)/2));gap:18px;font-size:11px;font-weight:600;text-align:center;letter-spacing:.02em}.jfa-section{max-width:1180px;margin:auto;padding:104px 24px}.jfa-section-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.jfa-kicker{color:#995b66}.jfa-small-copy{font-family:'DM Serif Display',Georgia,serif;font-style:italic;color:#927b7d;font-size:16px}.jfa-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.jfa-section-heading h2{font-size:clamp(43px,5vw,70px);line-height:1.05;letter-spacing:-.045em;max-width:690px}.jfa-section-heading h2 em{color:#ad7175}.jfa-section-heading p{font-size:13px;color:#806f73;max-width:245px;line-height:1.7}.jfa-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.jfa-category{position:relative;min-height:345px;overflow:hidden;padding:22px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s}.jfa-category:hover{transform:translateY(-5px)}.card-toys{background:#e7c9be}.card-together{background:#cfc0c6}.card-lingerie{background:#d7b6b3}.card-care{background:#e7d9c4}.jfa-card-count{position:relative;z-index:2;font-size:9px;letter-spacing:.17em;font-weight:700}.jfa-card-bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between}.jfa-card-bottom strong{font-family:'DM Serif Display',Georgia,serif;font-size:30px;font-weight:400}.jfa-card-bottom b{font-size:20px;font-weight:400}.jfa-category-art{position:absolute;display:block;filter:drop-shadow(15px 22px 16px rgba(70,30,40,.18))}.art-toys{width:90px;height:205px;border-radius:50px;background:linear-gradient(90deg,#773a4a,#b5767e 55%,#e2a6a4);top:60px;left:38%;transform:rotate(28deg)}.art-together{width:190px;height:190px;border:50px solid #874b60;border-radius:50%;top:76px;left:18%;transform:rotate(-25deg);box-shadow:inset 8px 7px 12px #53273b}.art-lingerie{width:165px;height:190px;border-radius:22% 22% 48% 48%;border:28px solid #763644;border-top:0;top:65px;left:20%;transform:rotate(-13deg)}.art-care{width:110px;height:175px;border-radius:23px 23px 35px 35px;background:linear-gradient(90deg,#876653,#cba98b 55%,#eee0bf);top:80px;left:35%;transform:rotate(12deg)}.art-care:before{content:'';position:absolute;width:66px;height:25px;top:-23px;left:22px;border-radius:7px 7px 0 0;background:#7c6255}.jfa-quote{background:#f1e8e1;text-align:center;padding:85px 24px}.jfa-quote-mark{font-family:Georgia,serif;font-size:75px;line-height:.6;color:#b67f7e}.jfa-quote p{font-size:clamp(28px,3.2vw,46px);max-width:790px;margin:20px auto 25px;line-height:1.22}.jfa-quote em{color:#ad7175}.jfa-quote-caption{font-size:9px;letter-spacing:.19em;font-weight:700;color:#9f7479}.jfa-favorites{padding-bottom:115px}.jfa-all-link{font-size:12px;font-weight:700;border-bottom:1px solid;padding-bottom:4px}.jfa-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.jfa-product{display:flex;flex-direction:column;gap:7px}.jfa-product-image{height:260px;background:#efe7e1;display:flex;align-items:center;justify-content:center;padding:18px}.jfa-product-image img{width:100%;height:100%;object-fit:contain}.jfa-product-name{font-size:12px;font-weight:600;line-height:1.5;margin-top:8px}.jfa-product-price{font-size:12px;color:#935d68}.jfa-products-placeholder{background:#efe7e1;text-align:center;padding:80px 20px;color:#806e70;font-family:'DM Serif Display',Georgia,serif;font-size:24px}.jfa-bottom-banner{background:#dfb1a6;min-height:390px;padding:60px max(8%,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;overflow:hidden}.jfa-bottom-banner .jfa-kicker{color:#713c4d}.jfa-bottom-banner h2{font-size:clamp(54px,6vw,88px);line-height:1;letter-spacing:-.045em;margin:18px 0}.jfa-bottom-banner h2 em{color:#fff5ee}.jfa-bottom-banner p{font-size:13px;margin-bottom:25px}.jfa-button-dark{background:#411c2c;color:#fff!important}.jfa-banner-decor{font-size:340px;line-height:1;color:#f2d0c6;transform:rotate(-20deg);opacity:.55}.jfa-footer{background:#2d1925;color:#f8ece5;padding:46px max(5%,calc((100% - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.jfa-footer .jfa-logo{color:#f8ece5!important}.jfa-footer>span{font-size:11px;color:#cfb9bc}@media(max-width:900px){.jfa-header nav{display:none}.jfa-hero{grid-template-columns:1fr}.jfa-hero-copy{padding:80px 7% 65px}.jfa-hero-art{height:390px}.jfa-hero-note{margin-top:50px}.jfa-category-grid,.jfa-product-grid{grid-template-columns:repeat(2,1fr)}.jfa-benefits{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.jfa-header{height:68px;padding:0 6%}.jfa-logo{font-size:14px}.jfa-logo em{font-size:15px}.jfa-header-cta{font-size:10px}.jfa-hero h1{font-size:70px}.jfa-hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.jfa-section{padding:72px 20px}.jfa-section-heading{display:block}.jfa-section-heading p{margin-top:15px}.jfa-category-grid{gap:10px}.jfa-category{min-height:260px;padding:14px}.jfa-card-bottom strong{font-size:23px}.jfa-category-art{transform:scale(.73)}.jfa-product-grid{gap:12px}.jfa-product-image{height:180px}.jfa-bottom-banner{padding:65px 7%}.jfa-banner-decor{display:none}.jfa-footer{display:block}.jfa-footer>span{display:block;margin-top:20px}.jfa-benefits{font-size:10px;padding:22px 5%}}

/* Category cards with WooCommerce category or product images */
.jfa-home .jfa-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.jfa-home .jfa-category{min-height:330px;isolation:isolate}
.jfa-home .jfa-category-picture{position:absolute;inset:0;display:block;overflow:hidden;z-index:0}
.jfa-home .jfa-category-picture:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(38,15,27,.08),transparent 34%,rgba(38,15,27,.55));pointer-events:none}
.jfa-home .jfa-category-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.jfa-home .jfa-category-product-image{object-fit:contain;padding:30px 30px 72px}
.jfa-home .jfa-category:hover .jfa-category-image{transform:scale(1.055)}
.jfa-home .jfa-category .jfa-card-count,.jfa-home .jfa-category .jfa-card-bottom{color:#fffaf6;text-shadow:0 2px 12px rgba(34,12,22,.5)}
.jfa-home .card-bdsm{background:#604053}.jfa-home .card-gifts{background:#c89588}
@media(max-width:900px){.jfa-home .jfa-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.jfa-home .jfa-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jfa-home .jfa-category{min-height:245px;padding:15px}.jfa-home .jfa-category-product-image{padding:15px 15px 65px}}
/* Product gallery */
.jfa-home .jfa-product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 16px}
.jfa-home .jfa-product{background:#fffaf5;overflow:hidden;border-radius:8px;box-shadow:0 1px 0 rgba(49,23,34,.06);transition:transform .2s,box-shadow .2s}
.jfa-home .jfa-product:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(66,29,46,.12)}
.jfa-home .jfa-product-image{height:245px;background:#f0e8e2;padding:18px}
.jfa-home .jfa-product-image img{transition:transform .3s}
.jfa-home .jfa-product:hover .jfa-product-image img{transform:scale(1.045)}
.jfa-home .jfa-product-info{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}
.jfa-home .jfa-product-name{margin:0;font-size:13px;min-height:40px}
.jfa-home .jfa-product-price{margin-top:8px;font-size:14px;font-weight:700;color:#704254}
.jfa-home .jfa-product-view{margin-top:14px;border-top:1px solid #eee2da;padding-top:12px;display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.03em;color:#774359}
.jfa-home .jfa-gallery-fallback{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.jfa-home .jfa-gallery-fallback a{position:relative;overflow:hidden;background:#ead6cd;border-radius:8px;min-height:220px}
.jfa-home .jfa-gallery-fallback img{width:100%;height:240px;object-fit:cover;display:block}
.jfa-home .jfa-gallery-fallback span{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 15px;background:linear-gradient(transparent,rgba(42,18,31,.65));color:#fff;font-family:'DM Serif Display',Georgia,serif;font-size:24px}
@media(max-width:900px){.jfa-home .jfa-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.jfa-home .jfa-product-grid{gap:10px}.jfa-home .jfa-product-image{height:175px;padding:10px}.jfa-home .jfa-product-info{padding:10px}.jfa-home .jfa-product-name{font-size:11px}.jfa-home .jfa-gallery-fallback{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jfa-home .jfa-gallery-fallback img{height:175px}.jfa-home .jfa-gallery-fallback span{font-size:20px}}
