/*
Theme Name: Forjado Industrial
Theme URI: https://forjadoenplastico.es/
Author: Forjado en Plástico
Description: Tema original industrial para Forjado en Plástico. Portada, catálogo WooCommerce y encargos mediante plugin complementario.
Version: 1.3.8
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: forjado-industrial
Tags: e-commerce, custom-logo, custom-menu, featured-images, wide-blocks
*/
:root{--bg:#171b1e;--panel:#202528;--line:#3e464b;--ink:#f4f1eb;--muted:#bdc3c5;--accent:#efaa77;--dark:#15191b;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}img{max-width:100%;height:auto;vertical-align:middle}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{cursor:pointer}.container{width:min(var(--max),calc(100% - 80px));margin-inline:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.5vw,5.2rem);font-weight:680}h2{font-size:clamp(2rem,3.3vw,3rem);font-weight:650}h3{font-size:1.4rem;font-weight:600}p{max-width:70ch}a,button{transition:background-color .16s,color .16s}a:hover{color:var(--accent)}.button,button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-element-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--accent);color:var(--dark);border:1px solid var(--accent);border-radius:3px;padding:14px 22px;text-decoration:none;font-weight:650;line-height:1.4;min-height:48px;white-space:normal}.button:hover,button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.wp-element-button:hover{background:#f9c39a;color:#15191b}.compact{padding:11px 16px;gap:12px;font-size:.9rem}.text-link{font-weight:600;text-decoration:none;border-bottom:1px solid #747b7e;padding-block:6px}.copper{color:var(--accent)}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:650;color:var(--accent);margin-bottom:24px}.topline{background:#101416;border-bottom:1px solid var(--line);font-size:.7rem;letter-spacing:.06em;color:var(--muted)}.topline .container{display:flex;justify-content:space-between;padding-block:9px}.site-header{border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:104px}.brand a{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.2rem;font-weight:800;letter-spacing:.07em;line-height:1.1}.brand small{display:block;font-size:.65rem;letter-spacing:.24em;margin-top:7px}.brand-icon{font-size:2.5rem;position:relative;color:var(--accent);line-height:1}.brand-icon span{font-size:1rem}.custom-logo{max-height:65px;width:auto;max-width:220px}nav ul{list-style:none;margin:0;padding:0}#primary-nav>ul,#primary-nav>div>ul{display:flex;gap:26px}#primary-nav a{display:block;text-decoration:none;font-size:.85rem;padding:10px 0}#primary-nav li{position:relative}#primary-nav .sub-menu{display:none;position:absolute;z-index:10;min-width:210px;background:var(--panel);padding:12px 20px;border:1px solid var(--line)}#primary-nav li:hover>.sub-menu,#primary-nav li:focus-within>.sub-menu{display:block}.header-actions{display:flex;gap:18px;align-items:center;font-size:.8rem}.header-actions>a:not(.button){text-decoration:none}.cart-link span{color:var(--accent)}.menu-toggle[hidden]{display:none}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center;padding-block:60px}.hero h1{max-width:10ch;margin-bottom:30px}.hero-description{font-size:1.05rem;color:var(--muted);max-width:44ch;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:28px;align-items:center;margin-top:34px}.hero-note{border-top:1px solid var(--line);padding-top:25px;margin-top:46px;font-size:.75rem;color:var(--muted)}.hero-note span{font-size:1.5rem;color:var(--accent);margin-right:12px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px}.hero-visual{position:relative;overflow:hidden;min-width:0;background:var(--panel)}.hero-visual>img{display:block;width:100%;aspect-ratio: .95;object-fit:cover}.visual-caption{position:absolute;bottom:58px;left:24px;font-size:.55rem;letter-spacing:.12em;color:#e0b99b}.visual-label{position:absolute;right:22px;bottom:22px;font-size:.65rem;letter-spacing:.1em;padding:10px 13px;background:#15191bed;border-left:2px solid var(--accent)}.process-strip{border-block:1px solid var(--line);color:var(--muted)}.process-strip .container{display:flex;justify-content:space-between;padding-block:20px;font-size:.73rem;letter-spacing:.08em}.process-strip span:last-child{color:var(--accent)}.section{padding-block:88px}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:36px}.section-heading h2{margin-bottom:0;max-width:24ch}.section-heading .eyebrow{margin-bottom:16px}.section-heading>a{flex-shrink:0;font-size:.85rem}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.category-card{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;min-width:0}.category-card:hover{background:var(--panel)}.category-top{display:flex;justify-content:space-between;color:var(--accent);font-size:.85rem;margin-bottom:44px}.category-card h3{font-size:1.45rem;margin-bottom:12px}.category-card p{color:var(--muted);font-size:.85rem;margin:0}.products-section{background:#f4f1eb;color:#171b1e}.products-section .eyebrow,.products-section .copper{color:#8b491f}.products-section .text-link:hover{color:#80431e}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto!important;margin:0!important;min-width:0}.woocommerce ul.products,.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;clear:both}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product a img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:3px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem;letter-spacing:-.01em;line-height:1.45}.woocommerce ul.products li.product .price{font-size:1rem;color:inherit}.woocommerce ul.products li.product .button{font-size:.82rem;padding:10px 14px;min-height:44px}.woocommerce span.onsale{background:#925125;color:white;border-radius:3px;padding:3px 10px;min-height:0;line-height:1.8}.woocommerce .star-rating{color:#925125}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--accent)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.project a{text-decoration:none}.project img{aspect-ratio:1.25;object-fit:cover;width:100%;margin-bottom:22px}.project h3{font-size:1.3rem;line-height:1.3}.project p{color:var(--muted);font-size:.9rem}.work-empty{border-block:1px solid var(--line);padding:32px 0;display:grid;grid-template-columns:1fr 1.4fr;gap:12px 48px}.work-empty>p:first-child{font-size:1.7rem;line-height:1.25}.work-empty>p:nth-child(2){color:var(--muted)}.work-empty>a{justify-self:start}.approach{background:var(--panel);border-block:1px solid var(--line)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.steps{list-style:none;counter-reset:steps;padding:0;margin:0}.steps li{counter-increment:steps;position:relative;padding:0 0 26px 56px;border-bottom:1px solid var(--line);margin-bottom:26px}.steps li:last-child{margin-bottom:0}.steps li::before{content:'0' counter(steps);position:absolute;left:0;top:0;color:var(--accent);font-size:.8rem}.steps h3{font-size:1.2rem;letter-spacing:-.02em}.steps p{font-size:.9rem;color:var(--muted);margin-bottom:0}.enquiry-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.enquiry-grid h2{max-width:9ch;font-size:clamp(2.7rem,4.3vw,4.2rem)}.enquiry-grid>.muted{font-size:.9rem}.enquiry-panel{background:var(--panel);padding:32px;border:1px solid var(--line);border-radius:4px}.fep-form label{display:block;font-size:.85rem;font-weight:550;margin-bottom:18px}.fep-form input:not([type=checkbox]),.fep-form textarea,.fep-form select{display:block;width:100%;margin-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select{background:#101416;color:var(--ink);border:1px solid #687278;border-radius:3px;padding:12px;max-width:100%;min-height:48px}textarea{resize:vertical}.fep-form small{font-size:.75rem;color:var(--muted);display:block;font-weight:400;margin-top:6px}.fep-form .consent{font-size:.75rem;font-weight:400;line-height:1.65}.consent input{width:20px;height:20px;vertical-align:middle;margin-right:6px;accent-color:var(--accent)}.fep-form button{width:100%}.fep-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-notice{padding:16px;border:1px solid var(--accent);margin-bottom:24px}.site-footer{border-top:1px solid var(--line);background:#101416;font-size:.85rem}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-block:55px;color:var(--muted)}.wordmark{color:var(--ink);font-weight:800;letter-spacing:.04em}.site-footer h2{font-size:1.1rem;letter-spacing:-.02em;color:var(--ink)}.site-footer nav li{margin-bottom:10px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-block:22px;font-size:.7rem;color:var(--muted)}.page-content{max-width:900px;min-height:50vh;overflow-wrap:anywhere}.page-content h1{font-size:clamp(2.4rem,5vw,4rem)}.page-content h2{font-size:2rem}.page-content h3{font-size:1.4rem}.page-content .entry{padding-block:30px;border-bottom:1px solid var(--line)}.page-content .entry a{text-decoration:none}.page-content img{height:auto}.alignwide{max-width:100%}.alignfull{width:100%;margin-inline:0}.shop-main{padding-block:50px;min-height:60vh}.woocommerce .woocommerce-breadcrumb{color:var(--muted)}.woocommerce .woocommerce-breadcrumb a{color:var(--ink)}.woocommerce .woocommerce-result-count{color:var(--muted)}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--panel);border-color:var(--line);color:var(--ink)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--bg);color:var(--ink)}.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--line)}.woocommerce div.product div.images img{background:white}.woocommerce div.product .stock{color:#b9e1b2}.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--panel);color:var(--ink)}.woocommerce table.shop_table{border-color:var(--line)}.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--line)}.woocommerce .quantity .qty{min-width:70px}.woocommerce form .form-row label{line-height:1.5}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{line-height:1.5}.woocommerce-cart #payment,.woocommerce-checkout #payment{background:var(--panel)}.woocommerce-checkout #payment div.payment_box{background:#31393e;color:var(--ink)}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#31393e}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{overflow-wrap:anywhere}.select2-container--default .select2-selection--single{background:#101416;min-height:48px;border:1px solid #687278}.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ink);padding-top:8px}.select2-dropdown{background:#202528;color:var(--ink)}.select2-search__field{color:var(--ink)}.select2-container--default .select2-results__option[data-selected=true]{background:#3e464b}.select2-container--default .select2-results__option--highlighted[data-selected]{background:#efaa77;color:#15191b}.woocommerce a.remove{color:#ffb4a8!important}.wc-block-components-product-price{color:inherit}.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input{background:white!important;color:#171b1e!important}.wc-block-components-text-input label{color:#4b5155!important}.wc-block-components-checkout-step,.wc-block-cart{color:inherit}.wc-block-components-button{background:var(--accent);color:var(--dark);border-radius:3px}.wc-block-components-notice-banner{color:#171b1e}.wc-block-components-order-summary .wc-block-components-product-name{color:var(--ink)}.wp-block-table{overflow-x:auto}table{border-collapse:collapse;max-width:100%}th,td{padding:12px;border:1px solid var(--line)}.search-row{display:flex;gap:10px}.search-row input{flex:1;min-width:0}.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.skip-link:focus{position:fixed;top:15px;left:15px;background:var(--accent);color:#15191b;padding:15px;z-index:10000}.comments-area{margin-top:60px}.comment-form label{display:block}.comment-form input,.comment-form textarea{max-width:100%}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:44px;min-height:44px;padding:12px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--accent);color:var(--dark)}
@media(min-width:1001px){.menu-toggle{display:none!important}}
@media(max-width:1150px){.header-actions .account-link{display:none}.header-row{gap:18px}#primary-nav>ul,#primary-nav>div>ul{gap:18px}}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.header-row{flex-wrap:wrap;min-height:90px;padding-block:20px}.has-menu-js .menu-toggle{display:inline-flex;order:2;padding:8px 14px;min-height:44px}.header-actions{margin-left:auto;order:1}#primary-nav{width:100%;order:3}.has-menu-js .menu-toggle[aria-expanded=false]~#primary-nav{display:none}#primary-nav>ul,#primary-nav>div>ul{flex-wrap:wrap}#primary-nav .sub-menu{position:static;display:block;min-width:0;border:0;padding:0 0 0 16px}.hero{gap:5%;padding-block:40px}.hero h1{font-size:clamp(2.8rem,5.6vw,4rem)}.hero-note{margin-top:28px}.hero-actions{gap:16px}.hero-visual>img{aspect-ratio:.76}.hero-description{font-size:.95rem}.category-card{padding:24px}.section{padding-block:64px}.enquiry-grid{gap:5%}.enquiry-panel{padding:24px}.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.container{width:calc(100% - 36px)}.topline span{display:none}.header-row{gap:16px}.brand a{font-size:1rem}.brand small{font-size:.54rem}.brand-icon{font-size:2rem}.header-actions .button{display:none}.header-actions{font-size:.8rem}.hero{grid-template-columns:1fr;padding-block:38px;gap:32px}.hero h1{font-size:3.35rem;max-width:11ch;margin-bottom:24px}.hero-description{font-size:1rem}.hero-visual>img{aspect-ratio:1.12}.hero-note{margin-top:32px;padding-top:18px}.hero .eyebrow{font-size:.65rem}.process-strip .container{flex-wrap:wrap;gap:10px;font-size:.65rem}.process-strip span:last-child{display:none}.section{padding-block:52px}.section-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:28px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-card{padding:20px 16px}.category-top{margin-bottom:28px}.category-card h3{font-size:1.15rem;letter-spacing:-.025em;overflow-wrap:anywhere}.category-card p{font-size:.75rem}.woocommerce ul.products,.woocommerce-page ul.products{gap:22px 16px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.9rem}.woocommerce ul.products li.product .button{font-size:.75rem}.project-grid,.approach-grid,.enquiry-grid,.work-empty{grid-template-columns:1fr}.project-grid{gap:28px}.approach-grid,.enquiry-grid{gap:32px}.enquiry-grid h2{max-width:11ch}.enquiry-panel{padding:22px 18px}.form-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr;gap:26px;padding-block:40px}.footer-bottom{flex-direction:column;gap:10px}.shop-main{padding-block:30px}.woocommerce div.product .product_title{font-size:2.3rem}.page-content h1{font-size:2.5rem}.search-row{flex-wrap:wrap}.search-row input{width:100%}.custom-logo{max-width:170px}.woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{float:none;display:block}#primary-nav>ul,#primary-nav>div>ul{gap:10px 24px}.woocommerce table.shop_table_responsive tr:nth-child(2n) td,.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td{background:var(--panel)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Compact titles on single-product pages. */
.woocommerce.single-product div.product .product_title{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.25;letter-spacing:-.025em;margin-bottom:20px;overflow-wrap:anywhere}

/* Square single-product photo frame; retain original proportions and full-size lightbox. */
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image > a{display:block;aspect-ratio:1/1;background:#fff;cursor:zoom-in}
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image > a > img,
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image--placeholder > img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;object-position:center;background:#fff}
/* Match unused gallery frame space to the page background. */
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image > a,
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image > a > img,
.woocommerce.single-product div.product div.images .woocommerce-product-gallery__image--placeholder > img{background:var(--bg)}
/* Equal-height homepage product cards, with purchase actions aligned per row. */
.products-section .woocommerce ul.products{align-items:stretch}
.products-section .woocommerce ul.products li.product{display:flex;flex-direction:column;align-items:flex-start;position:relative}
.products-section .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;width:100%;flex:1}
.products-section .woocommerce ul.products li.product .woocommerce-loop-product__title{flex:1}
.products-section .woocommerce ul.products li.product .price{margin-top:auto}
.products-section .woocommerce ul.products li.product > .button{margin-top:16px}
.products-section .woocommerce ul.products li.product > .added_to_cart{min-height:44px;padding-top:10px}
/* Integrate the original black-on-cream logo through a reversible header treatment. */
.site-header .brand .custom-logo-link{display:flex;align-items:center;line-height:1}
.site-header .brand .custom-logo{display:block;width:84px;height:84px;max-width:none;max-height:none;object-fit:contain;filter:grayscale(1) contrast(3) invert(1) sepia(1) saturate(3) hue-rotate(333deg);mix-blend-mode:screen}
@media(max-width:680px){.site-header .brand .custom-logo{width:70px;height:70px}}
/* Remove light logo background at rendering time; preserve original source asset. */
.site-header .brand .custom-logo{width:104px;height:104px;filter:url(#fep-logo-copper);mix-blend-mode:normal}
@media(max-width:680px){.site-header .brand .custom-logo{width:84px;height:84px}}

/* Refined category and information dropdowns. */
#primary-nav > ul > .menu-item-has-children > a::after{content:'⌄';display:inline-block;color:var(--accent);margin-left:8px;font-size:.9rem}
#primary-nav .sub-menu{min-width:290px;padding:10px;background:#202528;border:1px solid #465057;border-top:2px solid var(--accent);border-radius:0 0 5px 5px;box-shadow:0 18px 36px #0005}
#primary-nav .sub-menu li + li{border-top:1px solid #ffffff0d}
#primary-nav .sub-menu a{padding:12px 14px;min-height:44px;font-size:.85rem;line-height:1.45;border-radius:3px;white-space:normal}
#primary-nav .sub-menu a:hover,#primary-nav .sub-menu a:focus-visible{background:#efaa7712;color:var(--accent)}
#primary-nav .sub-menu .current-menu-item > a{color:var(--accent);background:#efaa770c}
#primary-nav > ul > li:last-child > .sub-menu{right:0}
@media(max-width:1000px){#primary-nav .sub-menu{min-width:0;max-width:100%;padding:6px 0 6px 12px;border:0;border-left:2px solid #efaa7766;box-shadow:none;background:transparent;border-radius:0}#primary-nav .sub-menu a{padding:10px 12px}}
@media(max-width:680px){#primary-nav>ul,#primary-nav>div>ul{display:block}#primary-nav>ul>li>a{min-height:44px;font-size:.95rem}#primary-nav>ul>li{margin-bottom:8px}}
/* Dedicated contact layout, with compact brand-colour channel icons. */
.fep-contact-heading{max-width:800px;margin-bottom:52px}.fep-contact-heading h1{font-size:clamp(2.5rem,4.5vw,4.2rem);margin-bottom:24px}.fep-contact-heading>p:last-child{max-width:60ch;color:var(--muted);font-size:1.05rem}.fep-contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;align-items:start}.fep-contact-channels>h2{font-size:1.65rem;letter-spacing:-.025em;margin-bottom:24px}.fep-contact-card{display:flex;align-items:center;gap:18px;padding:22px 20px;border:1px solid var(--line);border-radius:4px;margin-bottom:14px;background:var(--panel);text-decoration:none;min-width:0}.fep-contact-card:hover{border-color:var(--accent);background:#282e32}.fep-contact-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;color:var(--accent)}.fep-contact-icon svg{display:block;width:28px;height:28px;max-width:30px;flex-shrink:0}.fep-contact-instagram svg{width:30px;height:30px}.fep-contact-whatsapp{color:#25d366}.fep-contact-card>span:nth-child(2){min-width:0;flex:1}.fep-contact-card strong,.fep-contact-card>span:nth-child(2)>span,.fep-contact-card small{display:block}.fep-contact-card strong{font-size:1rem;margin-bottom:2px;color:var(--ink)}.fep-contact-card>span:nth-child(2)>span{font-size:.9rem;color:var(--accent);overflow-wrap:anywhere}.fep-contact-card small{font-size:.75rem;color:var(--muted);margin-top:4px}.fep-contact-arrow{color:var(--accent);font-size:1.2rem}.fep-contact-location{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}.fep-contact-location .eyebrow{margin-bottom:12px}.fep-contact-location h3{font-size:1.4rem}.fep-contact-location p:not(.eyebrow){color:var(--muted);font-size:.9rem}.fep-contact-location a{font-size:.85rem}.fep-contact-form>h2{font-size:1.8rem}.fep-contact-form>p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.fep-contact-form .eyebrow{margin-bottom:14px}@media(max-width:800px){.fep-contact-layout{grid-template-columns:1fr;gap:36px}.fep-contact-heading{margin-bottom:36px}}@media(max-width:420px){.fep-contact-card{padding:18px 12px;gap:10px}.fep-contact-icon{flex-basis:34px;width:34px}.fep-contact-card>span:nth-child(2)>span{font-size:.8rem}.fep-contact-card small{font-size:.7rem}}
/* About the workshop: editorial story, principles and project invitation. */
.fep-about-hero{max-width:1000px;padding-bottom:52px;border-bottom:1px solid var(--line)}.fep-about-hero h1{font-size:clamp(2.5rem,4.6vw,4.5rem);max-width:22ch;margin-bottom:28px}.fep-about-hero>p:last-child{font-size:1.15rem;line-height:1.8;color:var(--muted);max-width:64ch;margin-bottom:0}.fep-about-story{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center;padding-block:70px}.fep-about-story h2{font-size:clamp(1.9rem,3vw,2.6rem);max-width:18ch}.fep-about-story p:not(.eyebrow){color:var(--muted)}.fep-about-statement{padding:40px 32px;background:var(--panel);border-left:2px solid var(--accent)}.fep-about-statement>span{font-size:48px;color:var(--accent);line-height:1}.fep-about-statement p{font-size:1.65rem!important;line-height:1.5;color:var(--ink)!important;margin-top:30px;letter-spacing:-.025em}.fep-about-statement strong{font-weight:600;color:var(--accent)}.fep-about-statement small{font-size:.6rem;letter-spacing:.1em;color:var(--muted)}.fep-about-values{padding-block:60px;border-block:1px solid var(--line)}.fep-about-values>h2{font-size:clamp(1.9rem,3vw,2.8rem);margin-bottom:36px}.fep-about-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.fep-about-value-grid article>span{font-size:.75rem;color:var(--accent)}.fep-about-value-grid h3{font-size:1.35rem;line-height:1.3;margin-top:20px}.fep-about-value-grid p{font-size:.9rem;color:var(--muted);margin-bottom:0}.fep-about-range{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;padding-block:70px}.fep-about-range h2{font-size:clamp(1.9rem,3vw,2.8rem)}.fep-about-range>div:last-child>p{color:var(--muted)}.fep-about-cta{padding:48px;background:var(--panel);border:1px solid var(--line);border-radius:4px}.fep-about-cta h2{font-size:clamp(2rem,3vw,2.8rem)}.fep-about-cta>p:not(.eyebrow){color:var(--muted)}.fep-about-cta .button{margin-top:10px}@media(max-width:800px){.fep-about-story,.fep-about-range{grid-template-columns:1fr;gap:28px;padding-block:44px}.fep-about-value-grid{grid-template-columns:1fr;gap:28px}.fep-about-values{padding-block:44px}.fep-about-statement{padding:28px}.fep-about-cta{padding:30px 24px}.fep-about-hero{padding-bottom:36px}.fep-about-hero>p:last-child{font-size:1rem}}
/* Accessible FAQ: native expandable answers and a compact topic index. */
.fep-faq-heading{max-width:900px;margin-bottom:60px}.fep-faq-heading h1{font-size:clamp(2.5rem,4.6vw,4.3rem);margin-bottom:26px}.fep-faq-heading>p:last-child{color:var(--muted);font-size:1.05rem;max-width:60ch}.fep-faq-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:7%;align-items:start}.fep-faq-index{position:sticky;top:30px}.fep-faq-index>.eyebrow{font-size:.65rem}.fep-faq-index>a{display:flex;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:.9rem;line-height:1.5}.fep-faq-index>a>span{color:var(--accent);font-size:.7rem}.fep-faq-index-note{margin-top:28px;padding:22px;background:var(--panel);border-left:2px solid var(--accent)}.fep-faq-index-note p{font-size:.85rem;color:var(--muted)}.fep-faq-index-note a{font-size:.85rem}.fep-faq-group{margin-bottom:52px;scroll-margin-top:32px}.fep-faq-group h2{font-size:clamp(1.55rem,2.5vw,2rem);letter-spacing:-.03em;line-height:1.25;margin-bottom:12px}.fep-faq-group>p{font-size:.85rem;color:var(--muted);margin-bottom:24px}.fep-faq-questions{border-top:1px solid var(--line)}.fep-faq-item{border-bottom:1px solid var(--line)}.fep-faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:22px 16px;font-size:.98rem;font-weight:550;line-height:1.5;border-radius:2px}.fep-faq-item summary::-webkit-details-marker{display:none}.fep-faq-item summary>span{color:var(--accent);font-size:1.5rem;font-weight:400;flex:0 0 20px;text-align:center}.fep-faq-item summary:hover,.fep-faq-item[open] summary{background:var(--panel);color:var(--accent)}.fep-faq-item[open] summary>span{transform:rotate(45deg)}.fep-faq-item summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.fep-faq-answer{padding:4px 48px 24px 16px;background:var(--panel)}.fep-faq-answer p{font-size:.9rem;color:var(--muted);margin:0;line-height:1.85}.fep-faq-answer a{color:var(--accent)}.fep-faq-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:40px;background:var(--panel);border:1px solid var(--line);border-radius:4px;margin-top:16px}.fep-faq-cta h2{font-size:clamp(1.7rem,2.8vw,2.3rem)}.fep-faq-cta p:not(.eyebrow){color:var(--muted);margin-bottom:0}.fep-faq-cta>.button{flex-shrink:0}.fep-faq-cta .eyebrow{margin-bottom:14px}@media(max-width:900px){.fep-faq-layout{grid-template-columns:1fr;gap:36px}.fep-faq-index{position:static}.fep-faq-index-note{display:none}.fep-faq-index>a{padding:12px 0}.fep-faq-heading{margin-bottom:32px}.fep-faq-cta{flex-direction:column;align-items:start;padding:28px 24px}}@media(max-width:540px){.fep-faq-item summary{padding:18px 10px;font-size:.9rem;gap:12px}.fep-faq-answer{padding:4px 16px 22px 10px}.fep-faq-group{margin-bottom:36px}}
/* Readable legal pages with an explicit draft status during local preparation. */
.fep-legal{max-width:1040px}.fep-legal-heading{max-width:860px;margin-bottom:32px}.fep-legal-heading h1{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.15;margin-bottom:24px}.fep-legal-heading>p:last-child{color:var(--muted);font-size:1.05rem;max-width:62ch}.fep-legal-draft{padding:20px 24px;border:1px solid #efaa7777;border-left:3px solid var(--accent);background:#efaa7709;font-size:.85rem;color:var(--muted);margin-bottom:44px}.fep-legal-draft strong{display:block;color:var(--accent);margin-bottom:6px}.fep-legal-body{max-width:800px}.fep-legal-body>section{padding-block:26px;border-bottom:1px solid var(--line)}.fep-legal-body>section:first-child{padding-top:0}.fep-legal-body h2{font-size:1.6rem;line-height:1.3;letter-spacing:-.025em;margin-bottom:20px}.fep-legal-body p{font-size:.95rem;line-height:1.9;color:var(--muted);overflow-wrap:anywhere}.fep-legal-body a:not(.button){color:var(--accent)}.fep-legal-body .fep-legal-help{padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:4px;margin-top:32px}.fep-legal-body .fep-legal-source{font-size:.75rem;margin-top:26px}.fep-legal-body .button{margin-top:10px}@media(max-width:600px){.fep-legal-body h2{font-size:1.35rem}.fep-legal-draft{padding:18px}.fep-legal-body .fep-legal-help{padding:24px 20px}}
/* Audit corrections: native commerce pages and clearly visible focused links. */
.commerce-page{min-height:60vh}.commerce-page>h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:38px}
.commerce-page .woocommerce{max-width:100%}.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon{border-color:var(--line);background:var(--panel)}
.woocommerce div.product .woocommerce-tabs .panel{overflow-wrap:anywhere}.woocommerce div.product .summary .fpf-fields{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:4px;margin-block:24px}
.woocommerce div.product .summary .fpf-fields:empty{display:none}.woocommerce .fpf-fields .form-row{display:block;margin-bottom:16px;padding:0}.woocommerce .fpf-fields label{display:block;font-size:.9rem;margin-bottom:8px}
.woocommerce .fpf-fields input.input-text,.woocommerce .fpf-fields textarea,.woocommerce .fpf-fields select{width:100%;max-width:100%;min-height:48px}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--accent);color:var(--dark)}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background:#f9c39a;color:var(--dark)}
.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;border:1px solid var(--line);border-radius:4px}.woocommerce .woocommerce-MyAccount-navigation li+li{border-top:1px solid var(--line)}.woocommerce .woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;min-height:44px;text-decoration:none}.woocommerce .woocommerce-MyAccount-navigation .is-active a{background:var(--panel);color:var(--accent)}
.woocommerce .woocommerce-customer-details address{border-color:var(--line)}.woocommerce-checkout .woocommerce-checkout-review-order-table{background:var(--panel)}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{min-width:44px;min-height:44px}
body:not(.fep-copper-logo) .site-header .brand .custom-logo{filter:none}
@media(max-width:680px){.woocommerce table.shop_table_responsive tr td::before{max-width:48%;overflow-wrap:anywhere}.commerce-page .coupon{display:flex;gap:8px;flex-wrap:wrap}.commerce-page .coupon input.input-text{flex:1;width:100%!important;min-width:0}.woocommerce table.shop_table td.product-name{overflow-wrap:anywhere}}

/* Order-specific photo upload, separate from contact attachments. */
.fep-product-photo{clear:both;border:1px solid var(--line);border-radius:4px;background:var(--panel);padding:22px;margin-block:24px}.fep-product-photo>label{display:block;font-weight:600;margin-bottom:14px;font-size:.95rem}.fep-product-photo>label>span{color:var(--accent)}.fep-product-photo input[type=file]{display:block;width:100%;max-width:100%;font-size:.8rem;min-height:48px}.fep-product-photo p{font-size:.8rem;line-height:1.7;color:var(--muted);margin-top:12px;margin-bottom:0}.fep-product-photo a{color:var(--accent)}.fep-product-photo .fep-local-photo-note{border-top:1px solid var(--line);padding-top:12px;color:var(--accent)}
/* Optional account, sign-in and guest choices before the cart. */
.fep-cart-account{margin-bottom:42px;padding:28px;border:1px solid var(--line);border-radius:5px;background:var(--panel)}.fep-cart-account-heading h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:14px}.fep-cart-account-heading>.eyebrow{margin-bottom:14px}.fep-cart-account-heading>p:last-child{font-size:.9rem;color:var(--muted);margin-bottom:26px}.fep-cart-account-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fep-cart-account-options article{display:flex;flex-direction:column;align-items:start;padding:24px 20px;border:1px solid var(--line);background:var(--bg);border-radius:4px;min-width:0}.fep-cart-account-number{font-size:.7rem;color:var(--accent);margin-bottom:22px}.fep-cart-account-options h3{font-size:1.2rem;line-height:1.3;margin-bottom:14px}.fep-cart-account-options p{font-size:.83rem;color:var(--muted);line-height:1.7;flex:1;margin-bottom:24px}.fep-cart-account-options .button{width:100%;font-size:.8rem;padding:12px 14px;text-align:center;gap:8px}.fep-cart-account-options .fep-cart-account-secondary{background:transparent;color:var(--ink);border-color:#687278}.fep-cart-account-options .fep-cart-account-secondary:hover{background:#efaa7712;color:var(--accent);border-color:var(--accent)}.fep-cart-login{margin-top:20px;border:1px solid var(--line);border-radius:4px}.fep-cart-login>summary{padding:16px 20px;cursor:pointer;font-size:.9rem;color:var(--accent);min-height:48px}.fep-cart-login-body{padding:0 20px 20px}.fep-cart-login-body .woocommerce-form-login{margin:0!important;padding:20px!important;background:var(--bg)!important}.fep-cart-account .fep-cart-account-note{font-size:.72rem;color:var(--muted);margin:20px 0 0}.fep-cart-account-connected{border-left:3px solid var(--accent);padding:18px 22px;margin-bottom:28px;background:var(--panel);font-size:.9rem}.fep-cart-account-connected strong{color:var(--accent)}.fep-cart-account-connected a{color:var(--accent)}.woocommerce-account #customer_login h2{font-size:1.75rem}.woocommerce-account #customer_login .form-row{display:block}.woocommerce-account #customer_login input.input-text{width:100%}.woocommerce-account #customer_login .woocommerce-privacy-policy-text{font-size:.85rem;color:var(--muted)}@media(max-width:800px){.fep-cart-account-options{grid-template-columns:1fr}.fep-cart-account{padding:22px 18px}.fep-cart-account-number{margin-bottom:12px}.fep-cart-account-options article{padding:20px}.fep-cart-login-body{padding:0 12px 12px}}
/* Account/checkout fields must not inherit the contact form's two-column row layout. */
.woocommerce form .form-row{display:block;grid-template-columns:none;min-width:0}
.woocommerce form .form-row label:not(.woocommerce-form__label-for-checkbox){display:block;margin-bottom:8px;line-height:1.5}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.woocommerce form .form-row .woocommerce-input-wrapper{display:block;width:100%;min-width:0}
.woocommerce form .password-input{position:relative;display:block;width:100%;min-width:0}
.woocommerce form .password-input input[type=password],.woocommerce form .password-input input[type=text]{width:100%;min-height:48px;padding-right:56px}
.woocommerce form .show-password-input{position:absolute;display:flex;align-items:center;justify-content:center;inset:0 2px auto auto;width:44px;height:48px;min-width:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:2px;background:transparent;color:var(--accent);box-shadow:none;cursor:pointer;transform:none;gap:0;line-height:1}
.woocommerce form .show-password-input:hover{background:#efaa7712;color:var(--accent)}
.woocommerce form .show-password-input::before,.woocommerce form .show-password-input::after{margin:0}
.woocommerce #customer_login{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:36px;max-width:1100px;margin-inline:auto}
.woocommerce #customer_login::before,.woocommerce #customer_login::after{display:none}
.woocommerce #customer_login>.u-column1,.woocommerce #customer_login>.u-column2{float:none;width:auto;min-width:0;max-width:100%}
.woocommerce #customer_login h2{font-size:1.75rem;margin-bottom:20px;line-height:1.2}
.woocommerce #customer_login form{padding:28px;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:5px}
.woocommerce #customer_login .form-row{float:none;width:100%;padding:0;margin:0 0 22px}
.woocommerce #customer_login .woocommerce-privacy-policy-text{margin-block:20px;font-size:.83rem;line-height:1.7}
.woocommerce #customer_login .woocommerce-privacy-policy-text p{margin-bottom:0}
.woocommerce #customer_login .woocommerce-form__label-for-checkbox{display:flex;align-items:center;gap:8px;margin-bottom:18px;line-height:1.5}
.woocommerce #customer_login .woocommerce-form__input-checkbox{margin:0;width:18px;height:18px;flex-shrink:0}
.woocommerce #customer_login button[type=submit]{float:none;display:flex;width:100%;min-height:48px;margin:0;justify-content:center}
.woocommerce #customer_login .lost_password{font-size:.85rem;margin-top:20px;margin-bottom:0}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>.form-row,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper>.form-row{float:none;width:100%;max-width:100%;padding:0;margin:0;min-width:0}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>.form-row-wide,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper>.form-row-wide{grid-column:1/-1}
.woocommerce-checkout .woocommerce-account-fields{clear:both;padding-block:22px}
.woocommerce-checkout .woocommerce-account-fields .create-account .form-row{float:none;width:100%;padding:0;margin:0 0 18px}
.woocommerce-checkout .woocommerce-account-fields>p.create-account{margin:0 0 18px}
.woocommerce-checkout .woocommerce-account-fields label.checkbox{display:flex;align-items:center;gap:10px}
.woocommerce-checkout .woocommerce-account-fields label.checkbox>input{margin:0;width:18px;height:18px;flex-shrink:0}
.woocommerce-checkout .woocommerce-account-fields div.create-account{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:4px}
.woocommerce .woocommerce-password-strength,.woocommerce .woocommerce-password-hint{display:block;clear:both;font-size:.8rem;line-height:1.6;margin-top:10px;overflow-wrap:anywhere}
@media(max-width:800px){.woocommerce #customer_login{grid-template-columns:1fr;gap:32px}.woocommerce #customer_login form{padding:24px}.woocommerce-checkout #customer_details>.col-1,.woocommerce-checkout #customer_details>.col-2{float:none;width:100%;min-width:0}}
@media(max-width:540px){.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr;gap:18px}.woocommerce #customer_login form{padding:22px 18px}.woocommerce-checkout .woocommerce-account-fields div.create-account{padding:20px 16px}}
/* Readable text on the light password-strength and guidance backgrounds. */
.woocommerce .woocommerce-password-strength{color:#171b1e!important;font-weight:600;padding:10px 12px;border-radius:3px}
.woocommerce .woocommerce-password-hint{color:#171b1e!important;background:#f4f1eb;padding:12px 14px;border-radius:3px;font-size:.8rem;line-height:1.65}
/* Order confirmation: PDF summary and return-home actions. */
.fep-order-actions{clear:both;margin-top:40px;padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:5px}.fep-order-actions h2{font-size:clamp(1.4rem,2.5vw,1.9rem);line-height:1.3;margin-bottom:14px}.fep-order-actions p{color:var(--muted);font-size:.9rem;max-width:70ch;margin-bottom:24px}.fep-order-actions-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.woocommerce .fep-order-actions-buttons .button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:14px 20px}.woocommerce .fep-order-actions-buttons .fep-order-home{background:transparent;color:var(--ink);border:1px solid #687278}.woocommerce .fep-order-actions-buttons .fep-order-home:hover{background:#efaa7712;color:var(--accent);border-color:var(--accent)}@media(max-width:540px){.fep-order-actions{padding:24px 18px}.fep-order-actions-buttons{display:grid;grid-template-columns:1fr}.fep-order-actions-buttons .button{width:100%}}
@media (max-width: 380px) {
    .commerce-page .woocommerce-cart-form .coupon {
        flex-direction: column;
        width: 100%;
    }
}
/* Keep the native page palette above inherited global WordPress styles. */
body.fep-native-layout,
body.fep-native-layout .site-header,
body.fep-native-layout > main {
    background-color: var(--bg);
    color: var(--ink);
}

body.fep-native-layout :is(h1, h2, h3) {
    color: inherit;
}

body.fep-native-layout a:where(:not(.button, .wp-element-button)) {
    color: inherit;
}

body.fep-native-layout a:where(:not(.button, .wp-element-button)):hover {
    color: var(--accent);
}
/* Flexible Product Fields can render wrappers with only a hidden ID and empty totals. */
.woocommerce div.product .summary .fpf-fields:not(:has(.form-row, input:not([type="hidden"]), select, textarea, .fpf-totals dl > *)) {
    display: none;
}
