/*
Theme Name: SoapFruit Fruitful
Theme URI: https://soapfruit.com/
Author: SoapFruit
Description: Colourful, premium WooCommerce-ready theme featuring fruit-shaped handmade soap photography.
Version: 4.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: soapfruit-fruitful
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--green:#245b35;--deep:#123d21;--pink:#df285d;--gold:#e9a11b;--ink:#27251f;--cream:#fffaf3;--muted:#68665e;--line:#eee6da;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font:15px/1.65 var(--sans)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(1200px,92%);margin:auto}
.announcement{background:#10441f;color:#fff;text-align:center;padding:8px 12px;font-size:11px;letter-spacing:.1em}.announcement span{padding:0 20px}
.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 12px #00000008}.header-inner{min-height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px}.brand{font:700 34px var(--serif);letter-spacing:-1.5px;color:var(--green)}.brand b{color:var(--pink)}.brand small{display:block;font:600 9px var(--sans);letter-spacing:.28em;color:#53634f;margin-top:-7px}.main-nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}.main-nav a:hover{color:var(--pink)}.header-actions{justify-self:end;display:flex;gap:18px;font-size:13px}.menu-toggle{display:none;border:0;background:none;font-size:24px}
.hero{background:linear-gradient(110deg,#fff4ef 0%,#fffaf3 45%,#f6f1e8 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:.83fr 1.17fr;min-height:510px;align-items:center}.hero-copy{padding:50px 0}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);font-weight:700}.hero h1{font:700 clamp(46px,5.8vw,76px)/.99 var(--serif);letter-spacing:-2px;margin:18px 0 15px}.hero h1 em{color:var(--green);font-weight:600}.hero-ribbon{display:inline-block;background:var(--pink);color:#fff;border-radius:30px;padding:6px 20px;font:italic 20px var(--serif);transform:rotate(-2deg);margin:4px 0 12px}.hero p{max-width:430px;color:#56554e;font-size:16px}.btn{display:inline-flex;background:var(--green);color:#fff;padding:13px 25px;border-radius:30px;font-size:13px;font-weight:700;transition:.2s;margin-top:15px}.btn:hover{background:var(--pink);color:#fff;transform:translateY(-2px)}.hero-photo{height:510px;overflow:hidden;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-trust{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;font-size:11px;color:var(--green);font-weight:600}.hero-trust span:before{content:"✓";font-weight:bold;margin-right:6px}
.section{padding:72px 0}.section-head{text-align:center;margin:0 auto 34px;max-width:700px}.section-head h2{font:600 clamp(32px,4vw,46px)/1.15 var(--serif);margin:8px 0}.section-head p{color:var(--muted);margin:0}.section-kicker{font-size:11px;color:var(--pink);letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.collection-card{border-radius:22px;overflow:hidden;text-align:center;padding:0 0 22px;transition:.25s}.collection-card:hover{transform:translateY(-6px);box-shadow:0 15px 32px #1b321c18}.collection-card:nth-child(1){background:#ffe5e9}.collection-card:nth-child(2){background:#fff0cf}.collection-card:nth-child(3){background:#f4e8fa}.collection-card:nth-child(4){background:#fbe8dc}.collection-card img{width:100%;height:180px;object-fit:cover;object-position:center}.collection-card h3{font:600 22px var(--serif);margin:5px 0 0}.collection-card p{font-size:12px;margin:0 0 10px;color:#555}.collection-card .btn{margin-top:4px;padding:10px 20px;font-size:11px}.collection-card:nth-child(1) .btn{background:var(--pink)}.collection-card:nth-child(2) .btn{background:#e99100}.collection-card:nth-child(3) .btn{background:#7826a0}.collection-card:nth-child(4) .btn{background:var(--green)}
.promise{background:#f5f8f1;padding:25px 0}.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;text-align:center}.promise-grid div{font-size:12px;font-weight:700;color:var(--green)}.promise-grid b{display:block;font-size:24px;margin-bottom:3px}
.products{background:#fffaf4}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{border:1px solid var(--line);padding:12px;background:#fff;border-radius:14px}.product-card .product-photo{height:210px;background:#f7f1e9;display:grid;place-items:center;overflow:hidden;border-radius:9px}.product-card .product-photo img{width:100%;height:100%;object-fit:cover}.product-card h3{font:600 20px var(--serif);margin:12px 0 2px}.product-card p{font-size:12px;color:var(--muted);margin:0}.product-card .price{color:var(--green);font-weight:700;margin-top:8px}.view-all{text-align:center;margin-top:30px}
.story{background:#eaf2e5}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.story-image{border-radius:24px;overflow:hidden}.story-image img{width:100%;height:370px;object-fit:cover}.story h2{font:600 clamp(34px,4vw,48px)/1.12 var(--serif);margin:12px 0}.story p{color:#5e695e}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center}.benefit{padding:20px}.benefit .icon{font-size:34px}.benefit h3{font:600 22px var(--serif);margin:7px 0}.benefit p{color:var(--muted);font-size:13px}
.newsletter{background:#fff0e8;text-align:center;padding:60px 20px}.newsletter h2{font:600 38px var(--serif);margin:8px}.newsletter p{color:var(--muted)}.newsletter form{display:flex;max-width:470px;margin:22px auto}.newsletter input{flex:1;min-width:0;padding:14px;border:1px solid #ead9ce;border-radius:30px 0 0 30px}.newsletter button{border:0;background:var(--pink);color:#fff;padding:0 22px;border-radius:0 30px 30px 0;font-weight:700}
.site-footer{background:#123d21;color:#fff;padding:50px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.site-footer p,.site-footer a{color:#dce9dc;font-size:13px}.site-footer h3{font:600 20px var(--serif)}.copyright{border-top:1px solid #ffffff2b;margin-top:30px;padding-top:17px;color:#cfddce;font-size:11px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;background:#fff;padding:12px;border:1px solid var(--line);border-radius:12px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--green);color:#fff;border-radius:30px}.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--pink);color:#fff}
@media(max-width:850px){.header-inner{grid-template-columns:1fr auto auto}.main-nav{gap:15px}.hero-grid{grid-template-columns:1fr 1fr}.hero-photo{height:430px}.collection-grid,.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.announcement span{padding:0 5px}.header-inner{min-height:70px}.menu-toggle{display:block;grid-column:1}.brand{grid-column:2;font-size:28px}.header-actions{grid-column:3;font-size:11px;gap:8px}.main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:20px;flex-direction:column}.main-nav.open{display:flex}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:45px 0 20px}.hero h1{font-size:50px}.hero-photo{height:300px}.section{padding:55px 0}.collection-grid{gap:10px}.collection-card img{height:125px}.collection-card h3{font-size:18px}.collection-card p{font-size:11px}.collection-card .btn{padding:9px 12px}.promise-grid{grid-template-columns:repeat(2,1fr)}.product-card .product-photo{height:145px}.story-grid{grid-template-columns:1fr;gap:25px}.story-image img{height:260px}.benefits{grid-template-columns:1fr;gap:5px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.newsletter form{flex-direction:column;gap:8px}.newsletter input,.newsletter button{border-radius:30px;padding:14px}}


/* ===== SoapFruit Luxe refinement – Version 2 ===== */
:root{--green:#174c2b;--deep:#0d351c;--pink:#d92861;--gold:#c99a45;--cream:#fbf7ef;--ink:#25241f;--muted:#77736b;--line:#e9e2d7}
body{font-size:15px;letter-spacing:.005em}
.announcement{font-size:10px;letter-spacing:.16em;padding:10px 12px;background:linear-gradient(90deg,#0d351c,#245d34,#0d351c)}
.site-header{box-shadow:0 5px 24px rgba(28,43,27,.06);border-bottom:1px solid #f1ece4}
.header-inner{min-height:94px}
.brand{font-size:38px;letter-spacing:-2px}
.brand small{font-size:8px;letter-spacing:.32em}
.main-nav{gap:34px;text-transform:uppercase;font-size:11px;letter-spacing:.1em}
.main-nav a{position:relative;padding:12px 0}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--pink);transition:.25s}
.main-nav a:hover:after{right:0}
.hero{background:radial-gradient(circle at 15% 45%,#fff 0,#fff8f3 45%,#f4eee3 100%)}
.hero-grid{min-height:560px;grid-template-columns:.78fr 1.22fr;gap:20px}
.hero-copy{padding:60px 0 48px}
.eyebrow{font-size:10px;letter-spacing:.24em}
.hero h1{font-size:clamp(52px,6vw,82px);line-height:.94;letter-spacing:-2.8px;color:#34251f}
.hero h1 em{color:var(--green)}
.hero-ribbon{font-size:19px;padding:7px 23px;box-shadow:0 7px 20px #d9286125}
.hero p{font-size:15px;line-height:1.8;max-width:390px}
.btn{padding:14px 28px;letter-spacing:.04em;box-shadow:0 8px 18px #174c2b1a}
.hero-photo{height:560px;border-radius:0 0 0 105px;box-shadow:-18px 18px 40px #473a2412}
.hero-photo img{object-position:center;filter:saturate(1.04)}
.hero-trust{gap:24px;font-size:10px;letter-spacing:.03em}
.promise{background:#f4f7f0;border-top:1px solid #e9eee4;border-bottom:1px solid #e9eee4;padding:28px 0}
.promise-grid div{font-size:11px;letter-spacing:.04em}
.promise-grid b{font-size:25px}
.section{padding:86px 0}
.section-head{margin-bottom:42px}
.section-head h2{font-size:clamp(34px,4vw,49px);letter-spacing:-1px}
.section-kicker{font-size:10px;letter-spacing:.22em}
.collection-grid{gap:20px}
.collection-card{padding-bottom:25px;border:1px solid #ffffffb5;box-shadow:0 9px 26px #4c3a2010}
.collection-card img{height:195px;transition:transform .45s}
.collection-card:hover img{transform:scale(1.045)}
.collection-card h3{font-size:23px;margin-top:12px}
.collection-card p{font-size:11px;letter-spacing:.04em}
.collection-card .btn{box-shadow:none}
.products{background:linear-gradient(180deg,#fbf8f2,#fff)}
.product-card{border:1px solid #eee7dd;border-radius:17px;padding:13px;transition:.25s}
.product-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px #213b2412}
.product-card .product-photo{height:225px;border-radius:12px;background:#faf5ed}
.product-card h3{font-size:21px}
.story{padding:78px 0;background:linear-gradient(120deg,#eef4e9,#f7f7ef)}
.story-grid{gap:70px}
.story-image{box-shadow:0 18px 45px #1b3b211b;border:8px solid #fff}
.story h2{font-size:clamp(36px,4vw,52px);letter-spacing:-1px}
.story p{line-height:1.9}
.benefit{padding:28px 20px;border:1px solid #f0ebe2;border-radius:16px;background:#fff}
.benefit .icon{font-size:31px}
.benefit h3{font-size:23px}
.newsletter{background:linear-gradient(120deg,#fff0eb,#fff8ed);padding:75px 20px}
.newsletter h2{font-size:clamp(34px,4vw,45px)}
.newsletter form{background:#fff;padding:5px;border-radius:40px;box-shadow:0 8px 28px #7e483012}
.newsletter input{border:0;padding-left:20px;outline:0}
.newsletter button{border-radius:30px;padding:0 26px}
.site-footer{background:linear-gradient(120deg,#0d351c,#174c2b);padding:62px 0 22px}
.site-footer h3{font-size:22px;color:#fff}
.site-footer a:hover{color:#ffb2c5}
.copyright{font-size:10px;letter-spacing:.06em}
.woocommerce ul.products li.product{box-shadow:0 7px 24px #1b321c0a}
.woocommerce span.onsale{background:var(--pink);min-height:3em;min-width:3em;line-height:3em}
@media(max-width:850px){.header-inner{min-height:82px}.main-nav{gap:18px}.hero-grid{min-height:450px}.hero-photo{height:450px;border-radius:0 0 0 65px}}
@media(max-width:650px){.announcement{font-size:8px;letter-spacing:.08em}.header-inner{min-height:72px}.brand{font-size:29px}.brand small{font-size:7px}.hero-copy{padding:42px 0 25px}.hero h1{font-size:52px}.hero-photo{height:285px;border-radius:0 0 0 48px}.section{padding:58px 0}.collection-card img{height:135px}.collection-card h3{font-size:18px}.product-card .product-photo{height:155px}.story{padding:55px 0}.story-grid{gap:28px}.benefit{padding:20px 14px}}

/* SoapFruit Buy-Me-Now experience – v3 */
.hero{background:linear-gradient(110deg,#fff4ef,#fffaf3 44%,#f4efe4)}
.hero-grid{grid-template-columns:.78fr 1.22fr;min-height:460px}
.hero-photo{height:460px;border-radius:0 0 0 78px}
.hero h1{color:#174c2b}
.hero-ribbon{background:#df285d}
.hero-copy .btn{background:#df285d;box-shadow:0 9px 22px #df285d30}
.hero-copy .btn:hover{background:#174c2b}
.collection-card{padding-bottom:22px}
.collection-card img{height:165px}
.collection-card h3{margin-top:12px}
.collection-card .btn{font-size:10px;padding:11px 18px}
.product-card{display:flex;flex-direction:column}
.product-card>a:first-child{display:block}
.product-card .product-cta{align-self:flex-start;margin-top:auto}
.product-card .price{font-size:17px}
.product-cta{background:#df285d}
.product-cta:hover{background:#174c2b}
.empty-products{text-align:center;background:#fff;border:1px dashed #d8cdbd;border-radius:18px;padding:36px 20px}
.gift-banner{padding:58px 0;background:linear-gradient(110deg,#fff0ee,#fff7e9)}
.gift-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.gift-inner>img{width:100%;height:300px;object-fit:cover;border-radius:24px;box-shadow:0 16px 35px #6a37201c}
.gift-inner h2{font:600 clamp(32px,4vw,47px)/1.12 var(--serif);margin:10px 0}
.gift-inner p{color:var(--muted);line-height:1.8}
.gift-inner .btn{background:#df285d}
@media(max-width:650px){.hero-grid{grid-template-columns:1fr}.hero-photo{height:260px;border-radius:0 0 0 42px}.collection-card img{height:120px}.gift-inner{grid-template-columns:1fr;gap:22px}.gift-inner>img{height:230px}}

/* SoapFruit Signature storefront – v4 */
:root{--pink:#d51d59;--green:#164b28;--gold:#d6a34a;--cream:#fff8ef}
body{background:#fff;color:#28251f}
.announcement{background:linear-gradient(90deg,#103b1d,#246334,#103b1d);font-size:10px;letter-spacing:.1em}
.site-header{border-bottom:1px solid #f0e9df;box-shadow:0 5px 22px #153c1b0b}
.header-inner{min-height:88px}
.brand{font-size:37px}
.main-nav{font-size:11px;text-transform:uppercase;letter-spacing:.07em;gap:27px}
.hero{background:linear-gradient(105deg,#fff0eb 0%,#fffaf4 45%,#f3f0e5 100%)}
.hero-grid{grid-template-columns:.78fr 1.22fr;min-height:430px}
.hero-copy{padding:45px 0}
.hero h1{font-size:clamp(48px,5.5vw,72px);line-height:.96;color:#164b28;letter-spacing:-2px}
.hero h1 em{color:#d51d59}
.hero-ribbon{background:#d51d59;font-size:18px;padding:8px 20px;box-shadow:0 7px 18px #d51d5928}
.hero p{line-height:1.8;font-size:15px}
.hero-copy .btn,.gift-inner .btn{background:#d51d59;box-shadow:0 9px 22px #d51d5928}
.hero-copy .btn:hover,.gift-inner .btn:hover{background:#164b28}
.hero-photo{height:430px;border-radius:0 0 0 75px;box-shadow:-14px 18px 38px #40311c16}
.hero-photo img{object-position:center}
.hero-trust{gap:20px}
.promise{background:#f4f7ef;border-block:1px solid #e7eddf;padding:22px 0}
.promise-grid div{font-size:11px;letter-spacing:.03em}
.section{padding:72px 0}
.section-head h2{font-size:clamp(32px,3.7vw,45px)}
.section-kicker{color:#c72b5a;letter-spacing:.2em;font-size:10px}
.collections{background:#fff}
.collection-grid{gap:16px}
.collection-card{padding-bottom:20px;border-radius:18px;box-shadow:0 7px 22px #2b3b210c;border:1px solid #fff}
.collection-card img{height:155px}
.collection-card h3{font-size:21px;margin-top:11px}
.collection-card p{font-size:11px}
.collection-card .btn{font-size:10px;padding:10px 16px;box-shadow:none}
.collection-card:nth-child(1){background:#ffe8ec}
.collection-card:nth-child(2){background:#fff1d4}
.collection-card:nth-child(3){background:#f4eafa}
.collection-card:nth-child(4){background:#fff0e5}
.collection-card:nth-child(1) .btn{background:#d51d59}
.collection-card:nth-child(2) .btn{background:#e79a12}
.collection-card:nth-child(3) .btn{background:#7829a0}
.collection-card:nth-child(4) .btn{background:#164b28}
.products{background:linear-gradient(180deg,#fffaf4,#fff)}
.product-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;text-align:left;max-width:none}
.product-heading .section-head{margin:0}
.text-link{font-size:12px;font-weight:700;color:#d51d59;white-space:nowrap}
.product-grid{gap:17px}
.product-card{border-radius:17px;padding:11px;border:1px solid #eee5da;box-shadow:0 6px 20px #2c291b0a;transition:.25s}
.product-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #2c291b15}
.product-card .product-photo{height:190px;border-radius:12px;background:#f9f3eb}
.product-card h3{font-size:19px}
.product-card p{font-size:11px;line-height:1.5}
.product-card .price{font-size:17px;color:#164b28}
.product-cta{background:#d51d59;box-shadow:none;padding:10px 17px;font-size:10px}
.product-cta:hover{background:#164b28}
.lifestyle{background:#f5f7ee;padding:65px 0}
.lifestyle-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center}
.lifestyle-photo{overflow:hidden;border-radius:22px;border:7px solid #fff;box-shadow:0 15px 38px #26351d1a}
.lifestyle-photo img{width:100%;height:310px;object-fit:cover}
.lifestyle h2,.gift-inner h2{font:600 clamp(34px,4vw,48px)/1.1 var(--serif);margin:10px 0}
.lifestyle p,.gift-inner p{color:#66645c;line-height:1.8}
.lifestyle ul{padding-left:20px;color:#40523e;font-size:13px;line-height:2}
.gift-banner{padding:55px 0;background:linear-gradient(110deg,#fff0f1,#fff8ed)}
.gift-inner{grid-template-columns:1.05fr 1fr;gap:45px}
.gift-inner>img{height:255px;object-fit:cover;border-radius:20px;box-shadow:0 14px 34px #743c301a}
.benefit{border:1px solid #eee8df;box-shadow:0 6px 18px #22210c08}
.faq-section{background:#fffaf4;padding:65px 0}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.faq-grid details{background:#fff;border:1px solid #eee5da;border-radius:12px;padding:17px 18px}
.faq-grid summary{font-weight:700;font-size:13px;color:#174c2b;cursor:pointer}
.faq-grid details p{font-size:12px;color:#6c6a63;margin-bottom:0}
.newsletter{background:linear-gradient(120deg,#fff0ed,#fff7e9);padding:65px 20px}
.newsletter form{background:#fff;padding:5px;border-radius:35px;box-shadow:0 7px 25px #743c3010}
.newsletter input{border:0;padding-left:18px;outline:0}
.newsletter button{background:#d51d59;border-radius:30px;padding:0 24px}
.site-footer{background:linear-gradient(115deg,#0c351b,#1a542e)}
@media(max-width:850px){.hero-grid{min-height:390px}.hero-photo{height:390px}.collection-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.lifestyle-grid{gap:25px}}
@media(max-width:650px){.hero-grid{grid-template-columns:1fr}.hero-copy{padding:40px 0 22px}.hero h1{font-size:49px}.hero-photo{height:250px;border-radius:0 0 0 45px}.section{padding:55px 0}.collection-grid{gap:10px}.collection-card img{height:115px}.collection-card h3{font-size:17px}.collection-card .btn{padding:9px 10px}.product-heading{display:block;text-align:center}.text-link{display:inline-block;margin-top:12px}.product-grid{gap:10px}.product-card .product-photo{height:140px}.product-card h3{font-size:16px}.product-card .product-cta{font-size:9px;padding:9px 11px}.lifestyle-grid{grid-template-columns:1fr;gap:24px}.lifestyle-photo img{height:230px}.gift-inner{grid-template-columns:1fr;gap:20px}.gift-inner>img{height:210px}.faq-grid{grid-template-columns:1fr}.newsletter form{display:flex;flex-direction:column;gap:8px}.newsletter input,.newsletter button{border-radius:30px;padding:13px}}
