/*
Theme Name: MOFT Editable Store
Theme URI: https://example.com/
Author: OpenAI
Description: A responsive, editable storefront theme inspired by the supplied MOFT screenshot. Supports WooCommerce, Gutenberg, menus, widgets and Customizer settings.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: moft-editable
*/
:root{--moft-orange:#e8783d;--moft-green:#009c70;--moft-black:#090909;--moft-soft:#f4f4f4;--moft-content:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--moft-black);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--moft-orange)}button,input,textarea,select{font:inherit}.site-announcement{background:#050505;color:#fff;text-align:center;font-size:11px;padding:7px 15px}.site-header{background:#fff;border-bottom:1px solid #eee;position:relative;z-index:20}.header-inner{max-width:var(--moft-content);margin:auto;min-height:72px;padding:12px 24px;display:flex;align-items:center;gap:32px}.custom-logo{max-width:125px;max-height:55px;width:auto}.site-title{font-weight:900;font-size:27px;letter-spacing:-1.5px;margin:0}.site-title a:hover{color:inherit}.main-navigation{flex:1}.main-navigation ul{list-style:none;display:flex;gap:22px;align-items:center;margin:0;padding:0}.main-navigation a{font-size:12px;white-space:nowrap}.header-tools{display:flex;gap:14px;font-size:18px;align-items:center}.menu-toggle{display:none;border:0;background:transparent;font-size:23px}.hero{position:relative;min-height:420px;background:#f4f4f4;overflow:hidden;display:flex;align-items:center}.hero-inner{width:100%;max-width:var(--moft-content);margin:auto;padding:65px 6%;position:relative;z-index:2}.hero-copy{max-width:43%}.hero h1{font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-1.5px;margin:0 0 18px}.hero p{font-size:18px;margin:0 0 26px}.hero-media{position:absolute;right:7%;top:4%;width:43%;height:92%;object-fit:contain;mix-blend-mode:multiply}.moft-button{display:inline-block;background:var(--moft-orange);color:#fff!important;border:0;border-radius:30px;padding:10px 22px;font-size:12px;line-height:1.2}.moft-button:hover{opacity:.85}.coffee-hero{position:relative;min-height:390px;display:flex;align-items:center;color:white;background:#333;overflow:hidden}.coffee-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0008,transparent 75%)}.coffee-hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.coffee-copy{position:relative;z-index:1;max-width:var(--moft-content);width:100%;margin:auto;padding:60px 6%}.coffee-copy h2{font-size:clamp(30px,3.5vw,48px);line-height:1.05;margin:0 0 10px}.coffee-copy p{max-width:430px;margin:0 0 20px}.moft-button.green{background:var(--moft-green)}.section-wrap{max-width:var(--moft-content);margin:auto;padding:50px 24px}.section-heading{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:24px}.section-heading h2{color:var(--moft-orange);font-size:clamp(22px,2.5vw,32px);margin:0}.category-links{display:flex;gap:18px;flex-wrap:wrap;font-size:12px}.category-links a:hover{color:var(--moft-orange)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 2px 16px #00000008}.product-card>a>img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#f6f6f6}.product-card-content{padding:14px}.product-card h3{font-size:13px;font-weight:500;margin:0 0 7px}.product-card .price{font-size:13px;margin-bottom:8px}.product-card .button{background:var(--moft-orange);color:#fff;border-radius:20px;padding:7px 14px;font-size:11px}.product-placeholder{aspect-ratio:1/1;background:#f2f2f2;display:grid;place-items:center;color:#999}.promo-list{max-width:var(--moft-content);margin:auto;padding:55px 24px 80px}.promo-row{display:grid;grid-template-columns:1fr 1fr;min-height:330px;border-radius:12px;overflow:hidden;background:#f3f3f3;margin-bottom:16px}.promo-row:nth-child(even) .promo-image{order:2}.promo-image img{width:100%;height:100%;min-height:330px;object-fit:cover}.promo-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:45px clamp(25px,6vw,85px)}.promo-copy h2{font-size:clamp(24px,2.5vw,36px);line-height:1.08;letter-spacing:-.5px;margin:0 0 12px}.promo-copy p{margin:0 0 18px}.stories{background:#f7f8f8}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.story-card{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:1/1}.story-card img{width:100%;height:100%;object-fit:cover}.story-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#0008)}.story-card h3{position:absolute;z-index:1;left:18px;right:18px;bottom:16px;color:white;font-size:14px;line-height:1.35;margin:0}.press-quote{text-align:center;padding:65px 20px}.press-quote blockquote{margin:0 auto 18px;font-size:15px}.press-quote strong{color:#7b8ea7;letter-spacing:1px;font-size:13px}.benefits{display:flex;justify-content:center;gap:clamp(25px,7vw,100px);padding:20px 20px 65px;text-align:center}.benefit-icon{color:var(--moft-orange);font-size:30px;line-height:1.2}.benefit p{font-size:11px;margin:7px 0 0}.site-footer{background:#080808;color:#fff;padding:45px 24px 18px}.footer-inner{max-width:var(--moft-content);margin:auto;display:grid;grid-template-columns:1fr 2fr 1fr;gap:40px}.footer-brand .site-title{font-size:30px}.footer-brand p{margin:3px 0}.social-links{display:flex;gap:12px;margin-top:14px}.footer-signup h2{font-size:14px;font-weight:500;letter-spacing:.6px;margin:0 0 12px}.footer-signup p{color:#ccc;font-size:12px;max-width:390px}.signup-form{display:flex;max-width:500px;margin-top:16px}.signup-form input{width:100%;min-width:0;padding:12px;border:0;background:#eee}.signup-form button{border:0;background:#eee;padding:0 16px}.footer-menu ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.footer-menu a{font-size:12px}.copyright{max-width:var(--moft-content);margin:40px auto 0;font-size:10px;color:#bbb}.entry-content{max-width:var(--moft-content);margin:0 auto;padding:30px 24px}.entry-content>*{max-width:100%}.woocommerce .woocommerce-breadcrumb{padding:20px 24px}.woocommerce ul.products li.product{border-radius:8px;overflow:hidden;background:#fafafa;padding-bottom:15px}.woocommerce ul.products li.product a img{margin:0 0 12px}.woocommerce ul.products li.product .button{background:var(--moft-orange);color:white;border-radius:20px}.woocommerce div.product .single_add_to_cart_button{background:var(--moft-orange)!important}.widget-area{padding:25px}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.header-inner{gap:16px}.main-navigation ul{gap:12px}.main-navigation a{font-size:11px}.hero{min-height:340px}.hero-copy{max-width:48%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-row{min-height:270px}.promo-image img{min-height:270px}.footer-inner{grid-template-columns:1fr 1.5fr}.footer-menu{grid-column:1/-1}.footer-menu ul{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.site-announcement{font-size:10px}.header-inner{min-height:60px;padding:10px 16px;justify-content:space-between}.site-title{font-size:23px}.custom-logo{max-width:100px}.menu-toggle{display:block}.main-navigation{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:15px 22px;box-shadow:0 10px 15px #0001}.main-navigation.is-open{display:block}.main-navigation ul{display:grid;gap:0}.main-navigation li{padding:10px 0;border-bottom:1px solid #eee}.main-navigation a{font-size:14px}.header-tools{gap:10px;font-size:16px}.hero{min-height:280px}.hero-inner{padding:40px 22px}.hero-copy{max-width:55%}.hero h1{font-size:clamp(24px,7vw,36px)}.hero p{font-size:13px;margin-bottom:18px}.hero-media{right:-5%;width:53%;height:88%}.moft-button{font-size:10px;padding:9px 16px}.coffee-hero{min-height:280px}.coffee-copy{padding:35px 22px;max-width:none}.coffee-copy p{max-width:65%;font-size:12px}.section-wrap{padding:32px 16px}.section-heading{gap:10px;margin-bottom:16px}.section-heading h2{font-size:22px}.category-links{gap:12px;font-size:11px}.product-grid{gap:10px}.product-card-content{padding:10px}.product-card h3,.product-card .price{font-size:11px}.product-card .button{font-size:10px;padding:7px 10px}.promo-list{padding:30px 14px 40px}.promo-row{grid-template-columns:1fr 1fr;min-height:190px;margin-bottom:10px}.promo-image img{min-height:190px}.promo-copy{padding:18px 14px}.promo-copy h2{font-size:17px}.promo-copy p{font-size:11px;margin-bottom:10px}.story-grid{gap:8px}.story-card h3{font-size:10px;left:8px;right:8px;bottom:8px}.press-quote{padding:38px 18px}.press-quote blockquote{font-size:12px}.benefits{gap:18px;padding:15px 10px 35px}.benefit-icon{font-size:23px}.benefit p{font-size:8px}.footer-inner{grid-template-columns:1fr;gap:25px}.footer-menu{grid-column:auto}.footer-menu ul{grid-template-columns:repeat(2,1fr)}.site-footer{padding:30px 20px 15px}.copyright{margin-top:28px}}

/* Elementor compatibility: let Elementor control container widths and full-width sections. */
body.elementor-page .entry-content, body.elementor-page .entry-content > *,
body.elementor-page .site-main, body.elementor-page main#primary {max-width:none;width:100%;margin-left:0;margin-right:0;padding-left:0;padding-right:0}
body.elementor-page .elementor-section.elementor-section-boxed > .elementor-container {max-width:var(--container-max-width,1140px)}
body.elementor-page .elementor-section.elementor-section-stretched {width:100%}
body.elementor-page .elementor .elementor-widget:not(:last-child){margin-bottom:0}

/* Header/footer visibility and navigation defaults */
.site-header{display:block!important;width:100%;background:#fff;position:relative;z-index:99}
.site-header .header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1200px;width:100%;margin:0 auto;padding:14px 24px;min-height:72px}
.site-header .brand{flex:0 0 auto}.site-header .site-title{margin:0;padding:0;font-size:28px;line-height:1.1;font-weight:900;letter-spacing:-1.5px}
.site-header .site-title a{color:#090909;text-decoration:none}.site-header .custom-logo-link{display:inline-block}.site-header .custom-logo{display:block;max-width:140px;max-height:54px;width:auto;height:auto}
.site-header .main-navigation{display:block!important;flex:1;margin:0 25px}
.site-header .main-navigation ul{display:flex;align-items:center;justify-content:center;gap:20px;list-style:none;margin:0;padding:0}
.site-header .main-navigation li{margin:0;padding:0;list-style:none}
.site-header .main-navigation a{display:block;color:#111;text-decoration:none;font-size:12px;white-space:nowrap;padding:8px 0}
.site-header .main-navigation a:hover,.footer-menu a:hover{color:var(--moft-orange)}
.site-header .header-tools{display:flex;align-items:center;gap:13px;flex:0 0 auto}.site-header .header-tools a{font-size:19px;text-decoration:none;color:#111}
.site-header .menu-toggle{display:none}
.site-footer{display:block!important;width:100%;background:#080808;color:#fff;padding:42px 24px 18px}
.site-footer .footer-inner{max-width:1200px;width:100%;margin:0 auto;display:grid;grid-template-columns:1fr 2fr 1fr;gap:40px}
.site-footer .footer-brand .site-title{margin:0;font-size:30px;font-weight:900}.site-footer .footer-brand .site-title a{color:#fff}
.site-footer .footer-brand p{color:#fff}.site-footer .social-links{display:flex;gap:14px;margin-top:14px}
.site-footer .social-links a{color:#fff;text-decoration:none;font-size:16px}
.site-footer .footer-signup h2{font-size:14px;font-weight:500;letter-spacing:.6px;margin:0 0 12px;color:#fff}
.site-footer .footer-signup p{color:#ccc;font-size:12px}
.site-footer .signup-form{display:flex;max-width:500px;margin-top:16px}.site-footer .signup-form input{width:100%;min-width:0;padding:12px;border:0;background:#eee;color:#111}.site-footer .signup-form button{border:0;background:#eee;color:#111;padding:0 16px}
.site-footer .footer-menu ul{display:grid;grid-template-columns:1fr;gap:10px;list-style:none;margin:0;padding:0}.site-footer .footer-menu li{list-style:none;margin:0;padding:0}
.site-footer .footer-menu a{color:#fff;text-decoration:none;font-size:12px}
.site-footer .copyright{max-width:1200px;margin:35px auto 0;color:#bbb;font-size:10px}
@media(max-width:767px){
 .site-header .header-inner{min-height:60px;padding:10px 16px;gap:12px}
 .site-header .menu-toggle{display:block;background:none;border:0;color:#111;font-size:23px}
 .site-header .main-navigation{display:none!important;position:absolute;top:100%;left:0;right:0;background:#fff;padding:14px 22px;margin:0;box-shadow:0 10px 15px #0001}
 .site-header .main-navigation.is-open{display:block!important}
 .site-header .main-navigation ul{display:grid;gap:0}
 .site-header .main-navigation li{padding:9px 0;border-bottom:1px solid #eee}
 .site-header .main-navigation a{font-size:14px}
 .site-header .header-tools{gap:8px}.site-header .header-tools a{font-size:16px}
 .site-footer .footer-inner{grid-template-columns:1fr;gap:25px}
 .site-footer .footer-menu ul{grid-template-columns:repeat(2,1fr)}
}


/* MOFT reference-style, full-width dynamic header */
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e9e9e9;z-index:999}
.header-inner{max-width:none;width:100%;min-height:82px;padding:10px clamp(22px,3.9vw,76px);gap:clamp(20px,3.2vw,58px)}
.brand{flex:0 0 auto;min-width:150px}
.brand .custom-logo{max-width:140px;max-height:54px;object-fit:contain}
.brand .site-title{font-size:clamp(30px,2.7vw,44px);font-weight:900;letter-spacing:-2px;line-height:1}
.main-navigation{flex:1;min-width:0}
.main-navigation .moft-primary-menu{display:flex;justify-content:center;gap:clamp(15px,2vw,38px);align-items:center;margin:0;padding:0;list-style:none}
.main-navigation .moft-primary-menu>li{position:relative;flex:0 0 auto;margin:0;padding:0}
.main-navigation .moft-primary-menu>li>a{display:flex;align-items:center;gap:7px;padding:13px 0 10px;color:#080808;font-size:clamp(12px,.99vw,16px);font-weight:500;white-space:nowrap;border-bottom:3px solid transparent}
.main-navigation .moft-primary-menu>li.current-menu-item>a,.main-navigation .moft-primary-menu>li.current-menu-ancestor>a,.main-navigation .moft-primary-menu>li>a:hover{border-bottom-color:#111;color:#080808}
.main-navigation .moft-primary-menu>li.menu-item-new>a:after,.main-navigation .moft-primary-menu>li.menu-item-has-badge>a:after{content:"NEW";font-size:9px;line-height:1;background:#d94b20;color:#fff;border-radius:12px;padding:4px 8px;font-weight:700}
.header-tools{flex:0 0 auto;display:flex;align-items:center;gap:clamp(12px,1.35vw,25px);font-size:0}
.header-tools>a{position:relative;display:flex;align-items:center;justify-content:center;width:27px;height:34px;color:#111}
.header-tools svg{display:block;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.header-tools .tool-heart svg{width:34px;height:34px;stroke-width:1.4}
.header-tools .tool-region svg{width:28px;height:28px}
.cart-count{position:absolute;top:-1px;right:-7px;min-width:16px;height:16px;border-radius:50%;background:#080808;color:white;font-size:10px;line-height:16px;text-align:center}
.menu-toggle{display:none}
@media(max-width:1250px){.header-inner{gap:22px;padding-left:24px;padding-right:24px}.brand{min-width:auto}.main-navigation .moft-primary-menu{gap:16px}.main-navigation .moft-primary-menu>li>a{font-size:12px}.header-tools{gap:12px}}
@media(max-width:980px){.header-inner{min-height:70px;flex-wrap:wrap;gap:15px}.brand{margin-right:auto}.menu-toggle{display:flex;flex-direction:column;gap:5px;order:3;padding:9px;border:0;background:transparent}.menu-toggle span{display:block;width:23px;height:2px;background:#111}.main-navigation{display:none;order:4;flex:0 0 100%;width:100%}.main-navigation.is-open{display:block}.main-navigation .moft-primary-menu{align-items:stretch;flex-direction:column;gap:0}.main-navigation .moft-primary-menu>li>a{padding:13px 2px;border-bottom:1px solid #eee;font-size:15px}.header-tools{gap:12px}.header-tools>a{width:23px}.header-tools svg{width:23px;height:23px}}
@media(max-width:480px){.header-inner{padding:10px 15px;gap:10px}.brand .site-title{font-size:29px}.brand .custom-logo{max-width:105px}.header-tools{gap:9px}.header-tools>a{width:20px}.header-tools svg{width:21px;height:21px}.header-tools .tool-heart svg{width:25px;height:25px}.header-tools .tool-region{display:none}}
