/* FarrWest product page (generic template) — spec docs/superpowers/specs/2026-10-16-product-page-redesign-design.md.
   Scoped to .fwpp-* (render.php markup) and the template's Elementor sections .fwpp-el-*.
   One container: 1522px content + 15px gutters = the header nav row (340df320) at every desktop width. */
:root{--fwpp-max:1552px;--fwpp-pad:15px;--fwpp-g:#336633;--fwpp-g2:#2a552a;--fwpp-ink:#1d221d;--fwpp-mut:#5f665f;--fwpp-line:#dcd8cc;--fwpp-cr2:#efece3;--fwpp-dk:#151a15;--fwpp-top:0px}
@media (max-width:767px){:root{--fwpp-pad:16px}}

/* container: Elementor sections + render.php wraps share one width */
.fwpp-el-sec:not(.fwpp-el-full)>.elementor-container,.fwpp-wrap{max-width:var(--fwpp-max)!important;margin-left:auto!important;margin-right:auto!important;padding-left:var(--fwpp-pad)!important;padding-right:var(--fwpp-pad)!important;box-sizing:border-box;width:100%}
.fwpp-el-full>.elementor-container{max-width:none!important;padding:0!important}
.fwpp-el-sec .elementor-column>.elementor-widget-wrap{padding:0!important}
.fwpp-el-sec .elementor-widget:not(:last-child){margin-bottom:0}
.fwpp-el-top>.elementor-container{display:grid!important;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:start;padding-bottom:48px!important}
.fwpp-el-top>.elementor-container>.elementor-column{width:auto!important;max-width:none!important}
@media (max-width:1024px){.fwpp-el-top>.elementor-container{grid-template-columns:minmax(0,1fr);gap:24px}}

/* breadcrumb + buy box */
.fwpp-crumbs{font-size:13px;color:var(--fwpp-mut);padding:16px 0 12px;display:flex;flex-wrap:wrap;gap:6px;line-height:1.5}
.fwpp-crumbs a{color:inherit;text-decoration:none}.fwpp-crumbs a:hover{text-decoration:underline;color:var(--fwpp-g)}
.fwpp-brand{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fwpp-g)!important;text-decoration:none}
.fwpp-title{font-size:clamp(26px,2.4vw,36px)!important;line-height:1.15!important;margin:4px 0 8px!important;font-weight:700!important;color:var(--fwpp-ink)!important;text-transform:none!important;letter-spacing:0!important}
.fwpp-ids{font-size:13px;color:var(--fwpp-mut);margin-bottom:12px}.fwpp-ids b{color:var(--fwpp-ink)}
.fwpp-short{font-size:15px;line-height:1.6;color:#333;margin-bottom:16px}.fwpp-short p{margin:0 0 8px}
.fwpp-price{margin:0 0 12px}
.fwpp-price__amt{font-size:26px;font-weight:700;color:var(--fwpp-ink);line-height:1.2}.fwpp-price__amt--quote{font-size:22px}
.fwpp-price__note{font-size:13px;color:var(--fwpp-g2);margin-top:2px}
.fwpp-trust{list-style:none;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--fwpp-line);display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;font-size:13px;color:var(--fwpp-ink)}
.fwpp-trust li{margin:0;padding-left:20px;position:relative;list-style:none}
.fwpp-trust li::before{content:"";position:absolute;left:1px;top:4px;width:10px;height:5px;border-left:2px solid var(--fwpp-g);border-bottom:2px solid var(--fwpp-g);transform:rotate(-45deg)}
.fwpp-trust a{color:inherit;text-decoration:underline;text-decoration-color:var(--fwpp-line);text-underline-offset:2px}
.fwpp-help{margin-top:16px;background:#fff;border:1px solid var(--fwpp-line);border-radius:6px;padding:12px 14px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;font-size:14px;color:var(--fwpp-ink)}
.fwpp-help b{color:var(--fwpp-g)}.fwpp-help a{color:var(--fwpp-ink);font-weight:700;text-decoration:none}
@media (max-width:480px){.fwpp-trust{grid-template-columns:1fr}}

/* jump bar (JS-pinned: position:sticky is dead inside XStore .template-container) */
.fwpp-jump{background:#fff;border-top:1px solid var(--fwpp-line);border-bottom:1px solid var(--fwpp-line);z-index:90}
.fwpp-jump .fwpp-wrap{display:flex;align-items:center;gap:16px;min-height:52px}
.fwpp-jump ul{list-style:none;margin:0;padding:0;display:flex;gap:24px;overflow-x:auto;scrollbar-width:none;flex:1 1 auto}
.fwpp-jump ul::-webkit-scrollbar{display:none}
.fwpp-jump li{margin:0;white-space:nowrap;list-style:none}
.fwpp-jump ul a{display:block;padding:16px 0 14px;font-size:14px;color:var(--fwpp-mut);text-decoration:none;border-bottom:2px solid transparent}
.fwpp-jump ul a.is-active,.fwpp-jump ul a:hover{color:var(--fwpp-g);border-bottom-color:var(--fwpp-g)}
.fwpp-jump__cta{flex:0 0 auto;background:var(--fwpp-g);color:#fff!important;border:0;border-radius:4px;padding:10px 16px;font-family:inherit;font-weight:700;font-size:13px;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;text-decoration:none!important;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility .15s}
.fwpp-jump__cta:hover{background:var(--fwpp-g2)}
.fwpp-jump.is-fixed{position:fixed;top:var(--fwpp-top);left:0;right:0;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.fwpp-jump.is-fixed .fwpp-jump__cta{opacity:1;visibility:visible;pointer-events:auto}
.fwpp-jump ul a:focus-visible,.fwpp-jump__cta:focus-visible{outline:2px solid var(--fwpp-g);outline-offset:2px}
.fwpp-jump__cta:focus-visible{outline-color:#fff;box-shadow:0 0 0 2px var(--fwpp-g)}
.fwpp-jump-sentinel{overflow-anchor:none}
@media (max-width:767px){
	.fwpp-jump:not(.is-fixed){display:none}
	.fwpp-jump ul{display:none}
	.fwpp-jump.is-fixed{top:auto;bottom:0;padding:10px 0 calc(10px + env(safe-area-inset-bottom));border-bottom:0;box-shadow:0 -2px 10px rgba(0,0,0,.1)}
	.fwpp-jump .fwpp-wrap{min-height:0}
	.fwpp-jump.is-fixed .fwpp-jump__cta{flex:1 1 auto;text-align:center;padding:14px 16px}
	body.fwpp-bar-on{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}

/* key-spec band */
.fwpp-band{background:var(--fwpp-dk);color:#fff;padding:28px 0}
.fwpp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:0}
.fwpp-tile{display:flex;flex-direction:column-reverse;border-left:3px solid #6aa36a;padding:2px 0 2px 14px;margin:0}
.fwpp-tile dd{margin:0;font-size:clamp(20px,2vw,28px);font-weight:700;line-height:1.15;color:#fff}
.fwpp-tile dt{margin:4px 0 0;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#aab5aa;font-weight:700}
@media (max-width:767px){.fwpp-tiles{grid-template-columns:1fr 1fr}}

/* sections */
.fwpp-sec{padding:48px 0;border-bottom:1px solid var(--fwpp-line);scroll-margin-top:calc(var(--fwpp-top) + 64px)}
.fwpp-sec:last-child{border-bottom:0;padding-bottom:72px}
.fwpp-h2,.fwpp-svc__h{font-size:24px!important;line-height:1.25!important;font-weight:700!important;margin:0 0 20px!important;color:var(--fwpp-ink);text-transform:none!important;letter-spacing:0!important}
.fwpp-h2 small{font-size:14px;font-weight:400;color:var(--fwpp-mut);margin-left:6px}
.fwpp-body [hidden]{display:none!important}
.fwpp-ov{display:grid;grid-template-columns:minmax(0,720px) minmax(0,1fr);gap:48px;align-items:start}
.fwpp-ov--one{grid-template-columns:minmax(0,720px)}
.fwpp-ov__text,.fwpp-prose{font-size:16px;line-height:1.7;color:#333;max-width:720px}
.fwpp-ov__text p,.fwpp-prose p{margin:0 0 12px}
.fwpp-prose iframe,.fwpp-prose video{max-width:100%}
.fwpp-ov__text,.fwpp-prose{overflow-wrap:anywhere}
.fwpp-ov__text img,.fwpp-prose img{max-width:100%;height:auto}
.fwpp-ov__text table,.fwpp-prose table{display:block;max-width:100%;overflow-x:auto}
.fwpp-hl{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fwpp-hl li{margin:0;list-style:none;background:#fff;border:1px solid var(--fwpp-line);border-left:3px solid var(--fwpp-g);border-radius:6px;padding:12px 14px;font-size:15px;line-height:1.45;font-weight:600;color:var(--fwpp-ink)}
.fwpp-toggle{margin-top:12px;background:none!important;border:0!important;padding:0!important;color:var(--fwpp-g)!important;font-weight:700;font-size:14px;cursor:pointer;text-decoration:underline;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}
@media (max-width:1024px){.fwpp-ov{grid-template-columns:minmax(0,1fr);gap:24px}}

.fwpp-spec{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--fwpp-line);font-size:15px;margin:0}
.fwpp-spec td{overflow-wrap:anywhere;padding:10px 14px;border:0;border-bottom:1px solid #ece9e0;vertical-align:top;color:var(--fwpp-ink);text-align:left}
.fwpp-spec tbody tr:nth-child(even) td{background:#faf9f5}
.fwpp-spec td.fwpp-spec__l{width:36%;color:var(--fwpp-mut)}
.fwpp-spec .fwpp-spec__g td{background:var(--fwpp-cr2)!important;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fwpp-ink)}
@media (max-width:767px){.fwpp-spec td.fwpp-spec__l{width:44%}.fwpp-spec{font-size:14px}}

.fwpp-docs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.fwpp-docs li{margin:0;list-style:none}
.fwpp-docs a{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--fwpp-line);border-radius:6px;padding:14px;text-decoration:none;color:var(--fwpp-ink);height:100%;box-sizing:border-box}
.fwpp-docs a:hover{border-color:var(--fwpp-g)}
.fwpp-docs__ic{flex:0 0 auto;background:#b3261e;color:#fff;font-size:11px;font-weight:700;padding:8px 6px;border-radius:4px;letter-spacing:.04em}
.fwpp-docs b{display:block;font-size:15px;line-height:1.3}.fwpp-docs small{display:block;font-size:12px;color:var(--fwpp-mut);margin-top:2px}

.fwpp-svc{background:var(--fwpp-g);color:#fff;border-radius:8px;padding:28px;display:grid;grid-template-columns:minmax(0,1.6fr) repeat(auto-fit,minmax(170px,1fr));gap:20px 28px;align-items:start}
.fwpp-svc .fwpp-svc__h{color:#fff!important;font-size:20px!important;margin:0 0 6px!important}
.fwpp-svc p{margin:0;font-size:15px;line-height:1.55;color:#e4efe4}
.fwpp-svc__link{display:block;color:#fff!important;text-decoration:none;border-top:1px solid rgba(255,255,255,.3);padding-top:12px}
.fwpp-svc__link b{display:block;font-size:15px}.fwpp-svc__link span{display:block;font-size:13px;color:#d6e6d6;margin-top:2px}
.fwpp-svc__link:hover b{text-decoration:underline}
@media (max-width:767px){.fwpp-svc{grid-template-columns:1fr;padding:22px}}

.fwpp-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1024px){.fwpp-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.fwpp-card{margin:0;list-style:none;background:#fff;border:1px solid var(--fwpp-line);border-radius:6px;display:flex;flex-direction:column;overflow:hidden}
.fwpp-card__img{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#fff;padding:12px}
.fwpp-card__img img{max-width:100%;max-height:100%;object-fit:contain;width:auto;height:auto}
.fwpp-card__body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.fwpp-card__name{font-size:15px;font-weight:700;color:var(--fwpp-ink)!important;text-decoration:none;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fwpp-card__sku{font-size:12px;color:var(--fwpp-mut)}.fwpp-card__price{font-size:15px;font-weight:700;color:var(--fwpp-ink)}
.fwpp-card__actions{margin-top:auto;padding-top:10px;display:flex;flex-direction:column;gap:6px}
.fwpp-card .fw-btn{display:block;text-align:center;border-radius:4px;padding:9px 10px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none!important;margin:0!important;line-height:1.2;width:auto;min-height:0}
.fwpp-card .fw-btn--cart{background:var(--fwpp-g)!important;color:#fff!important;border:1px solid var(--fwpp-g)!important}
.fwpp-card .fw-btn--quote{background:#fff!important;color:var(--fwpp-g)!important;border:1px solid var(--fwpp-g)!important}
.fwpp-card .added_to_cart{display:none!important}

/* --- Task 11 fix round 1 --- */
/* Quote-only ($0): mirror the child theme's hide-cart script, which keys off .price (absent in this layout). */
.elementor-widget-wrap:has(.fwpp-price__amt--quote) form.cart .quantity,
.elementor-widget-wrap:has(.fwpp-price__amt--quote) form.cart .single_add_to_cart_button:not([class*=afrfqbt]),
.elementor-widget-wrap:has(.fwpp-price__amt--quote) .et-single-buy-now{display:none!important}
/* Beat XStore's nested `.type-product ul,ol{padding-left:20px;margin-bottom:1.43em}` and its li rules (specificity 0,1,1). */
.fwpp-hl.fwpp-hl,.fwpp-docs.fwpp-docs,.fwpp-cards.fwpp-cards,.fwpp-trust.fwpp-trust{padding-left:0;margin-bottom:0}
.fwpp-docs.fwpp-docs li,.fwpp-cards.fwpp-cards li,.fwpp-trust.fwpp-trust li{margin-bottom:0;line-height:inherit;font-size:inherit}
/* Legacy YIKES markup inside prose */
.fwpp-prose .descsubtitle,.fwpp-prose .desctitle{color:var(--fwpp-ink)}
.fwpp-prose .row{display:block;margin:0}
.fwpp-prose [class*="col-"]{width:100%;float:none;padding:0}
.fwpp-prose iframe{max-width:100%}
.fwpp-prose iframe[src*="youtube"],.fwpp-prose iframe[src*="youtu.be"],.fwpp-prose iframe[src*="vimeo"]{width:100%;aspect-ratio:16/9;height:auto}
