/* New editorial pages from the supplied 15 October mockups; no global header/footer rules. */
body.page-id-27 #content,body.page-id-30 #content,body.page-id-615 #content,body.error404 { background:#120e0b; }
.elementor .e-con.pb-editorial,.pb-editorial {
 box-sizing:border-box; display:block; width:calc(100% - 64px); max-width:1200px;
 margin-inline:auto; padding:0; color:#efe7da; font-family:'Figtree',system-ui,sans-serif; font-size:16px; line-height:1.55;
}
.elementor .e-con.pb-editorial { width:calc(100% - 64px)!important; padding:0!important; margin-inline:auto!important; }
.pb-editorial * { box-sizing:border-box; }
.pb-editorial > .elementor-element,.pb-editorial .elementor-widget-html { width:100%; min-width:0; margin:0; }
.pb-editorial .elementor-widget-html > section[style*="max-width: 1200px"],
.pb-editorial .elementor-widget-html > section > div[style*="max-width: 1200px"] { padding-inline:0!important; }
.pb-editorial h1 { color:#efe7da; font-family:'Fraunces',Georgia,serif; font-size:clamp(32px,3.5vw,50px)!important; text-wrap:balance; }
.pb-editorial h2 { color:#efe7da; font-family:'Fraunces',Georgia,serif; font-size:clamp(26px,2.6vw,36px)!important; }
.pb-editorial p { line-height:1.65; }
.pb-editorial a { color:#f5c45c; text-underline-offset:4px; }
.pb-editorial a:hover { color:#ffd98a; }
.pb-editorial a:focus-visible,.pb-editorial button:focus-visible,.pb-editorial input:focus-visible,.pb-editorial textarea:focus-visible,.pb-editorial select:focus-visible { outline:3px solid #f5c45c!important; outline-offset:4px; }
.pb-editorial img { display:block; max-width:100%; height:auto; }
.pb-editorial svg { flex-shrink:0; }
.pb-editorial section[id] { scroll-margin-top:120px; }
.pb-editorial #tarifas article { background:#1c1611; border:1px solid #3a2e22; border-radius:16px; padding:24px; }
.pb-editorial #tarifas article h3 { font-family:'Figtree',system-ui,sans-serif; font-size:18px; line-height:1.4; color:#efe7da; margin:0 0 8px; }
.pb-editorial #tarifas article .pb-editorial-price { font-family:'Fraunces',Georgia,serif; font-size:30px; color:#f5c45c; margin:16px 0; }
.pb-editorial #tarifas article p,.pb-editorial #tarifas article ul { font-size:14px; color:#b9ac98; }
.pb-editorial #tarifas article ul { padding-inline-start:20px; line-height:1.65; }
@media(min-width:1024px) { .pb-editorial #tarifas div[style*="grid-template-columns"] { grid-template-columns:repeat(3,minmax(0,1fr))!important; } }
.pb-editorial .pb-editorial-portraits { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
.pb-editorial .pb-editorial-portraits img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.pb-editorial-contact-intro { padding:56px 0 0; }
.pb-editorial .pb-editorial-contact-grid { display:grid!important; grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr); gap:32px; padding:0 0 72px; }
.pb-editorial .pb-editorial-contact-form { min-width:0; width:100%; padding:28px; border:1px solid #3a2e22; border-radius:20px; background:#1c1611; }
.elementor-27 .pb-editorial-contact-form .elementor-form-fields-wrapper { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0!important; }
.elementor-27 .pb-editorial-contact-form .elementor-field-group { min-width:0; width:100%!important; padding:0!important; margin:0!important; }
.elementor-27 .pb-editorial-contact-form .elementor-field-type-textarea,
.elementor-27 .pb-editorial-contact-form .elementor-field-type-upload,
.elementor-27 .pb-editorial-contact-form .elementor-field-type-submit { grid-column:1/-1; }
.elementor-27 .pb-editorial-contact-form .elementor-field-label { color:#efe7da!important; font:600 14px/1.5 'Figtree',system-ui,sans-serif; padding-bottom:6px; }
.elementor-27 .pb-editorial-contact-form .elementor-field-textual { width:100%; min-width:0; min-height:48px; padding:12px 14px!important; border:1px solid #3a2e22!important; border-radius:12px!important; color:#efe7da!important; background:#120e0b!important; font:400 16px/1.5 'Figtree',system-ui,sans-serif; }
.elementor-27 .pb-editorial-contact-form textarea { min-height:160px; resize:vertical; }
.elementor-27 .pb-editorial-contact-form input[type=file] { max-width:100%; color:#b9ac98; font-size:13px; }
.elementor-27 .pb-editorial-contact-form input[type=file]::file-selector-button { min-height:44px; max-width:100%; border:1px solid #5a4528; border-radius:10px; padding:8px 12px; margin:0 12px 8px 0; color:#efe7da; background:#2a2118; }
.elementor-27 .pb-editorial-contact-form button[type=submit] { min-height:50px; background:#f5c45c!important; color:#1a120a!important; border:0; border-radius:999px!important; font-family:'Figtree',system-ui,sans-serif; font-weight:700; }
.pb-editorial-privacy { margin:14px 0 0; font-size:13px; }
.pb-editorial-privacy a { display:inline-flex; align-items:center; min-height:44px; }
.pb-editorial-error { padding:56px 0 72px; }
.pb-editorial-error__intro { max-width:760px; margin:0 auto 56px; text-align:center; }
.pb-editorial-error__code { display:block; font:700 90px/1 'Fraunces',Georgia,serif; color:#f5c45c; }
.pb-editorial-error h1 { margin:20px 0; }
.pb-editorial-error h2 { margin-bottom:28px; }
.pb-editorial-error .pb-paint-card h3 { font-size:19px; color:#efe7da; }
.pb-editorial-error__links { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:20px; }
.pb-editorial-error__links a { display:inline-flex; align-items:center; min-height:44px; padding:10px 20px; border:1px solid #5a4528; border-radius:999px; text-decoration:none; }
.pb-editorial-search { display:flex; gap:10px; margin:28px auto 0; max-width:620px; }
.pb-editorial-search input { min-width:0; flex:1; min-height:48px; padding:12px 14px; background:#1c1611; color:#efe7da; border:1px solid #5a4528; border-radius:12px; }
.pb-editorial-search button { min-height:48px; padding:12px 22px; border-radius:999px; border:0; background:#f5c45c; color:#1a120a; font-weight:700; }
/* Native archive and checkout components, using the supplied warm workshop palette. */
body.woocommerce-shop,body.tax-product_cat,body.woocommerce-checkout { background:#120e0b; }
.woocommerce-shop .pb-catalog-page,.tax-product_cat .pb-catalog-page { background:#120e0b!important; padding:32px 0 64px!important; }
.woocommerce-shop .pb-catalog-results,.tax-product_cat .pb-catalog-results { width:calc(100% - 64px)!important; max-width:1200px!important; margin-inline:auto!important; padding:0!important; background:none!important; }
.pb-catalog-results > .e-con-inner { max-width:100%!important; }
.pb-shop-browser,.pb-catalog-results { font-family:'Figtree',system-ui,sans-serif; }
.pb-shop-browser__header h1 { font-family:'Fraunces',Georgia,serif!important; font-size:clamp(32px,3.5vw,46px)!important; color:#efe7da; }
.pb-shop-browser__header p { font-size:17px; color:#b9ac98; max-width:680px; }
.pb-shop-category { min-height:44px!important; border-radius:999px!important; border:1px solid #3a2e22!important; background:#1c1611!important; color:#efe7da!important; }
.pb-shop-category.is-active { background:#f5c45c!important; color:#1a120a!important; }
.pb-catalog-results ul.products { gap:20px!important; }
.pb-catalog-results ul.products li.product { background:#1c1611!important; border:1px solid #3a2e22!important; border-radius:16px!important; box-shadow:none!important; overflow:hidden; }
.pb-catalog-results ul.products li.product .woocommerce-loop-product__title { font-family:'Fraunces',Georgia,serif!important; font-size:20px!important; line-height:1.3!important; padding-inline:16px!important; color:#efe7da!important; }
.pb-catalog-results ul.products li.product .price,.pb-catalog-results ul.products li.product .pb-product-finish-label { margin-inline:16px; }
.pb-catalog-results .pb-product-search input[type=search],.pb-catalog-results .woocommerce-ordering select { min-height:44px; background:#1c1611!important; color:#efe7da!important; border:1px solid #5a4528!important; border-radius:12px!important; }
.pb-catalog-results .pb-product-search button { background:#f5c45c!important; color:#1a120a!important; min-height:44px; border-radius:999px!important; }
.pb-catalog-results a:focus-visible,.pb-catalog-results select:focus-visible { outline:3px solid #f5c45c; outline-offset:3px; }
.woocommerce-checkout .pb-checkout-page { background:#120e0b!important; color:#efe7da!important; font-family:'Figtree',system-ui,sans-serif; }
.woocommerce-checkout .pb-checkout-shell { width:calc(100% - 64px)!important; max-width:1200px!important; margin-inline:auto!important; padding:40px 0 64px!important; }
.woocommerce-checkout .pb-checkout-hero,.woocommerce-checkout .pb-checkout-main { background:none!important; border:0!important; box-shadow:none!important; padding-inline:0!important; }
.woocommerce-checkout .pb-checkout-hero { display:flex; flex-direction:column; align-items:flex-start; gap:16px; padding-block:0!important; text-align:left!important; }
.woocommerce-checkout .pb-checkout-hero > * { margin:0!important; }
.woocommerce-checkout .pb-checkout-actions,.woocommerce-checkout .pb-checkout-help { justify-content:flex-start!important; gap:8px!important; }
.woocommerce-checkout .pb-checkout-help { margin-block:24px!important; }
.woocommerce-checkout .pb-checkout-title { font-family:'Fraunces',Georgia,serif!important; font-size:clamp(32px,3.5vw,46px)!important; color:#efe7da!important; }
.woocommerce-checkout .wc-block-components-checkout-step { border:1px solid #3a2e22!important; border-radius:16px!important; background:#1c1611!important; padding:24px!important; margin-bottom:20px!important; }
.woocommerce-checkout .wc-block-components-checkout-step__heading { margin-top:0!important; }
.woocommerce-checkout .wc-block-components-checkout-step__title { color:#efe7da!important; font-size:20px!important; }
.woocommerce-checkout .wc-block-components-text-input input,.woocommerce-checkout .wc-block-components-combobox input,.woocommerce-checkout .wc-blocks-components-select__select,.woocommerce-checkout select.pb-commune-select { background:#120e0b!important; border:1px solid #5a4528!important; border-radius:10px!important; color:#efe7da!important; }
.woocommerce-checkout .wc-block-components-checkout-place-order-button { min-height:52px!important; border-radius:999px!important; background:#f5c45c!important; color:#1a120a!important; font-weight:700!important; }
/* The former inline summary lives inside hidden action-source markup. Keep the
   real Woo sidebar visible; no cloned totals or new order-submission controls. */
.woocommerce-checkout .wc-block-checkout.pb-checkout-has-inline-summary > .wc-block-checkout__sidebar { display:block!important; width:100%!important; max-width:none!important; margin:0!important; padding:20px!important; border:1px solid #3a2e22; border-radius:16px; background:#1c1611; }
.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout { display:grid!important; grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr); gap:28px!important; }
.woocommerce-checkout .wc-block-checkout__main { width:100%!important; min-width:0; padding:0!important; }
.woocommerce-checkout .wc-block-checkout__sidebar { align-self:start; }
@media(min-width:768px) {
 body.woocommerce-checkout #content .pb-checkout-page .pb-checkout-shell > .pb-checkout-main { max-width:1200px!important; }
 body.woocommerce-checkout #content .pb-checkout-page .wc-block-components-sidebar-layout.wc-block-checkout { grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr)!important; gap:28px!important; }
 body.woocommerce-checkout #content .pb-checkout-page .wc-block-checkout__main { grid-column:1!important; grid-row:1!important; }
 body.woocommerce-checkout #content .pb-checkout-page .wc-block-checkout__sidebar { grid-column:2!important; grid-row:1!important; }
 body.woocommerce-checkout #content .pb-checkout-page .pb-checkout-actions-after-summary { grid-column:1/-1!important; }
}
@media(max-width:767px) {
 .elementor .e-con.pb-editorial,.pb-editorial { width:calc(100% - 32px)!important; }
 .pb-editorial .elementor-widget-html > section { padding-block:32px!important; }
 .pb-editorial .elementor-widget-html > section > div[style*="max-width: 1200px"] { padding-block:32px!important; }
 .pb-editorial .pb-editorial-portraits { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px!important; }
 .pb-editorial-contact-intro { padding-top:32px; }
 .pb-editorial .pb-editorial-contact-grid { grid-template-columns:minmax(0,1fr); gap:24px; padding-bottom:40px; }
 .pb-editorial .pb-editorial-contact-form { padding:18px; }
 .elementor-27 .pb-editorial-contact-form .elementor-form-fields-wrapper { grid-template-columns:minmax(0,1fr); }
 .pb-editorial-error { padding-block:40px; }
 .pb-editorial-search { flex-wrap:wrap; }
 .woocommerce-shop .pb-catalog-results,.tax-product_cat .pb-catalog-results,.woocommerce-checkout .pb-checkout-shell { width:calc(100% - 32px)!important; }
 .pb-catalog-results ul.products { gap:12px!important; }
 .pb-catalog-results ul.products li.product .woocommerce-loop-product__title { font-size:17px!important; padding-inline:10px!important; }
 .woocommerce-checkout .pb-checkout-shell { padding-top:28px!important; }
 .woocommerce-checkout .wc-block-components-checkout-step { padding:18px!important; }
 .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout { grid-template-columns:minmax(0,1fr); gap:24px!important; }
 .woocommerce-checkout .wc-block-checkout__sidebar { order:-1; position:static!important; }
 body.woocommerce-checkout #content .pb-checkout-page .wc-block-checkout__sidebar { order:0!important; }
}

/* Order confirmation only: remove stacked checkout/theme spacers. */
body.woocommerce-order-received .pb-checkout-shell > .pb-checkout-main {
 margin-block-start:0!important; padding-block:0!important;
}
body.woocommerce-order-received .pb-checkout-main > .woocommerce {
 padding:0!important; width:100%; max-width:none; box-sizing:border-box;
}
body.woocommerce-order-received .pb-checkout-help { margin-block:20px 24px!important; }

/* Active checkout only. Keep the actual form, totals and payment controls native. */
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-page { padding-top:0!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-shell { padding-top:24px!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-hero { gap:10px; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-title { font-size:clamp(30px,3vw,40px)!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-actions a[href$="/tienda/"] { display:none!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-help { margin-block:16px!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-main { padding-block:0!important; margin-top:0!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-main > .wp-block-woocommerce-checkout { padding-top:12px!important; }
body.woocommerce-checkout .wc-block-components-address-form > :is(.wc-block-components-address-form__state,.wc-block-components-address-form__city) { grid-column:1 / -1!important; width:100%!important; }
@media(max-width:767px) {
 body.woocommerce-checkout:not(.woocommerce-order-received) #content .pb-checkout-page .wc-block-checkout__main { grid-column:1!important; grid-row:1!important; }
 body.woocommerce-checkout:not(.woocommerce-order-received) #content .pb-checkout-page .wc-block-checkout__sidebar { grid-column:1!important; grid-row:2!important; }
 body.woocommerce-checkout:not(.woocommerce-order-received) .pb-checkout-help { margin-block:8px!important; }
}
