/*
Theme Name: Tecman Galicia - Diseño Idéntico
Theme URI: https://tecmancarretillas.com
Author: Tecman Galicia
Description: Portada visual idéntica con catálogo de maquinaria editable.
Version: 3.0.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: tecman-identico
*/
* { box-sizing: border-box; }
html, body { margin:0; padding:0; background:#fff; }
body { font-family:Arial,Helvetica,sans-serif; color:#171717; }
.tecman-page { position:relative; max-width:1024px; margin:0 auto; background:#fff; }
.tecman-page > img { display:block; width:100%; height:auto; }
.tecman-hotspot { position:absolute; z-index:10; display:block; background:transparent; border:0; text-indent:-9999px; overflow:hidden; }
.tecman-hotspot:focus { outline:3px solid #d71920; outline-offset:2px; }
.wa-top { left:84.3%; top:3.55%; width:12.7%; height:2.9%; }
.phone-top { left:48%; top:.1%; width:12%; height:2%; }
.mail-top { left:59%; top:.1%; width:17.5%; height:2%; }
.stock-all { left:31.9%; top:62.5%; width:13.6%; height:1.8%; }
.find-machine { left:75.5%; top:47%; width:15%; height:3%; }
.implements { left:4.7%; top:65.3%; width:32.2%; height:10.7%; }
.parts { left:38%; top:65.3%; width:27%; height:10.7%; }
.noblelift { left:66%; top:65.3%; width:30%; height:11.7%; }
.help-wa { left:66%; top:78.6%; width:30%; height:8.2%; }
.footer-wa { left:81%; top:93.7%; width:4%; height:3%; }
.footer-fb { left:85%; top:93.7%; width:4%; height:3%; }
.footer-ig { left:89.1%; top:93.7%; width:4%; height:3%; }

.machine-showcase { position:absolute; z-index:20; left:4.7%; top:40.65%; width:68.2%; height:21.95%; padding:5px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; background:#fff; }
.machine-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; color:#171717; background:#fff; border:1px solid #e3e3e3; border-radius:8px; text-decoration:none; box-shadow:0 4px 14px rgba(0,0,0,.12); transition:transform .2s,box-shadow .2s; }
.machine-card:hover { transform:translateY(-3px); box-shadow:0 9px 24px rgba(0,0,0,.2); }
.machine-card-photo { display:block; height:62%; overflow:hidden; background:#eee; }
.machine-card-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.machine-card-body { flex:1; min-height:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:5px 8px; text-align:center; line-height:1.12; }
.machine-card-body strong { font-size:16px; }
.machine-card-body span { margin-top:3px; font-size:11px; color:#555; }
.machine-card-body b { margin-top:4px; color:#d71920; font-size:20px; }
.machine-card-body small { margin-top:2px; font-size:10px; font-weight:700; color:#333; }

.mobile-bar { display:none; }
.seo-home-section { width:min(1024px,100%); margin:0 auto; padding:64px 48px 72px; background:#fff; }
.seo-eyebrow { margin:0 0 8px; color:#d71920; font-size:13px; font-weight:800; letter-spacing:.12em; }
.seo-home-section h1 { margin:0 0 16px; font-size:42px; line-height:1.08; }
.seo-home-section > h2 { margin:44px 0 18px; font-size:28px; }
.seo-intro { max-width:850px; margin:0; color:#4a4a4a; font-size:18px; line-height:1.65; }
.seo-services { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.seo-services article { padding:24px; border:1px solid #e5e5e5; border-radius:10px; background:#fafafa; }
.seo-services h2 { margin:0 0 9px; font-size:20px; }
.seo-services p { margin:0; color:#555; font-size:14px; line-height:1.55; }
.province-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.province-grid a { display:flex; flex-direction:column; gap:6px; padding:20px 16px; border-radius:9px; background:#171717; color:#fff; text-decoration:none; }
.province-grid a:hover { background:#d71920; }
.province-grid span { color:#ddd; font-size:12px; }
.seo-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:36px; padding:26px 28px; border-radius:12px; background:#d71920; color:#fff; }
.seo-cta div { display:flex; flex-direction:column; gap:5px; }
.seo-cta strong { font-size:21px; }
.seo-cta span { font-size:14px; }
.seo-cta a { flex:none; padding:13px 18px; border-radius:999px; background:#fff; color:#171717; text-decoration:none; font-weight:800; }
.machine-header { min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px max(22px,calc((100vw - 1180px)/2)); background:#151515; color:#fff; }
.machine-header a { color:#fff; text-decoration:none; font-weight:700; }
.machine-header a:last-child { padding:10px 16px; border-radius:999px; background:#1fa855; }
.machine-detail { width:min(1180px,calc(100% - 40px)); margin:42px auto 70px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr); gap:48px; }
.machine-main-photo { width:100%; aspect-ratio:4/3; object-fit:contain; background:#f1f1f1; border-radius:12px; }
.machine-thumbnails { display:grid; grid-template-columns:repeat(5,1fr); gap:9px; margin-top:10px; }
.machine-thumb { padding:0; border:3px solid transparent; border-radius:8px; overflow:hidden; background:#eee; cursor:pointer; }
.machine-thumb.active { border-color:#d71920; }
.machine-thumb img { display:block; width:100%; aspect-ratio:1; object-fit:cover; }
.machine-kicker { margin:4px 0 8px; color:#d71920; font-size:13px; font-weight:800; letter-spacing:.12em; }
.machine-info h1 { margin:0; font-size:44px; }
.machine-price { margin:8px 0 24px; color:#d71920; font-size:36px; font-weight:800; }
.machine-specs { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #ddd; }
.machine-specs div { display:flex; flex-direction:column; gap:4px; padding:13px 10px; border-bottom:1px solid #ddd; }
.machine-specs span { color:#666; font-size:12px; }
.machine-specs strong { font-size:15px; }
.machine-wa-button,.machine-call-button { display:block; margin-top:18px; padding:16px; border-radius:9px; text-align:center; text-decoration:none; font-weight:800; }
.machine-wa-button { background:#1fa855; color:#fff; }
.machine-call-button { margin-top:9px; background:#171717; color:#fff; }
.location-page { position:relative; width:min(1120px,calc(100% - 40px)); margin:50px auto 80px; padding-right:360px; }
.location-page > h1 { max-width:760px; margin:0 0 24px; font-size:46px; line-height:1.08; }
.location-content { color:#383838; font-size:17px; line-height:1.7; }
.location-content h2 { margin:38px 0 10px; color:#171717; font-size:28px; line-height:1.2; }
.location-content h3 { margin:28px 0 8px; color:#171717; font-size:21px; }
.location-content ul { padding-left:22px; }
.location-content a { color:#c41219; font-weight:700; }
.location-cta { position:absolute; top:0; right:0; width:310px; padding:26px; border-radius:12px; background:#171717; color:#fff; }
.location-cta h2 { margin:0 0 10px; }
.location-cta p { color:#ddd; line-height:1.5; }
.location-cta a { display:block; margin-top:10px; padding:13px; border-radius:8px; background:#d71920; color:#fff; text-align:center; text-decoration:none; font-weight:800; }
.location-cta a:last-child { background:#fff; color:#171717; }

@media (max-width:700px) {
  .tecman-page { width:100%; overflow:hidden; }
  .machine-showcase { gap:5px; padding:2px; }
  .machine-card { border-radius:4px; box-shadow:0 2px 6px rgba(0,0,0,.13); }
  .machine-card-photo { height:58%; }
  .machine-card-body { padding:2px; }
  .machine-card-body strong { font-size:clamp(7px,2.3vw,12px); }
  .machine-card-body span { font-size:clamp(5px,1.55vw,9px); margin-top:1px; }
  .machine-card-body b { font-size:clamp(9px,2.8vw,15px); margin-top:2px; }
  .machine-card-body small { font-size:clamp(5px,1.45vw,8px); margin-top:1px; }
  .mobile-bar { position:fixed; left:10px; right:10px; bottom:10px; display:flex; gap:8px; z-index:9999; }
  .mobile-bar a { flex:1; text-align:center; padding:13px 8px; border-radius:999px; text-decoration:none; font-weight:800; font-size:14px; box-shadow:0 8px 28px rgba(0,0,0,.22); }
  .mobile-call { background:#171717; color:#fff; }
  .mobile-wa { background:#1fa855; color:#fff; }
  .machine-header { padding:12px 14px; font-size:12px; }
  .machine-header strong { display:none; }
  .machine-detail { width:calc(100% - 24px); margin:18px auto 90px; display:block; }
  .machine-info { margin-top:24px; }
  .machine-info h1 { font-size:34px; }
  .machine-price { font-size:29px; }
  .machine-specs { grid-template-columns:1fr 1fr; }
  .seo-home-section { padding:42px 18px 90px; }
  .seo-home-section h1 { font-size:34px; }
  .seo-intro { font-size:16px; }
  .seo-services { grid-template-columns:1fr; }
  .province-grid { grid-template-columns:1fr 1fr; }
  .seo-cta { align-items:flex-start; flex-direction:column; }
  .location-page { width:calc(100% - 28px); margin:30px auto 100px; padding-right:0; }
  .location-page > h1 { font-size:35px; }
  .location-content { font-size:16px; }
  .location-cta { position:static; width:100%; margin-top:36px; }
}
