:root { --black:#090a0b; --ink:#151619; --paper:#f6f5f1; --muted:#74756f; --gold:#f7b928; --gold-light:#ffda65; --line:#deded7; --white:#fff; --success:#4dc184; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,Arial,sans-serif; }
button,input,textarea,select { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
.topbar { height:34px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 clamp(24px,5vw,88px); background:var(--gold); color:#211806; font-size:11px; font-weight:800; letter-spacing:.035em; }
.topbar p { margin:0; }.topbar a { text-decoration:underline; text-underline-offset:3px; }
.site-header { height:80px; padding:0 clamp(24px,5vw,88px); display:flex; align-items:center; justify-content:space-between; gap:28px; background:#0a0b0c; color:var(--white); position:relative; z-index:5; }
.brand { display:block; flex:0 0 194px; }.brand img { display:block; width:100%; height:46px; object-fit:contain; object-position:left center; }
.main-nav { display:flex; gap:27px; align-items:center; margin-left:auto; }.main-nav a,.account-button { color:#c8c9c9; font-size:13px; font-weight:700; transition:color .2s; }.main-nav a:hover,.account-button:hover { color:var(--gold); }
.header-actions { display:flex; align-items:center; gap:19px; }.account-button { background:none; border:0; padding:8px 0; }.cart-button { padding:10px 14px; border:1px solid #404144; border-radius:3px; color:white; background:transparent; font-size:12px; font-weight:800; }.cart-button span { color:var(--gold); font-size:18px; vertical-align:-1px; margin-right:5px; }.cart-button b { color:#0a0b0c; background:var(--gold); border-radius:10px; font-size:10px; padding:2px 6px; margin-left:5px; }
.hero { min-height:591px; overflow:hidden; display:grid; grid-template-columns:1.1fr .9fr; position:relative; background:radial-gradient(circle at 79% 50%,#333139 0,#161619 23%,#0a0b0c 62%); color:var(--white); padding:clamp(60px,8vw,110px) clamp(24px,8vw,150px); }
.hero-content { z-index:2; max-width:660px; }.eyebrow { color:#9d9e9c; font-weight:800; font-size:11px; letter-spacing:.15em; margin:0 0 15px; }.hero .eyebrow { color:var(--gold-light); }.hero h1,.section-heading h2,.benefit-intro h2,.cta-section h2 { font-family:"Barlow Condensed",Impact,sans-serif; text-transform:uppercase; font-size:clamp(52px,6.2vw,91px); line-height:.86; letter-spacing:-.025em; margin:0; font-weight:800; }.hero h1 em,.section-heading h2 em,.benefit-intro h2 em,.cta-section h2 em { color:var(--gold); font-style:normal; }.hero-text { max-width:500px; color:#bfc0c1; font-size:15px; line-height:1.7; margin:28px 0 29px; }.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }.button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; padding:0 19px; font-size:12px; font-weight:800; letter-spacing:.01em; transition:transform .15s,background .15s; }.button:hover { transform:translateY(-2px); }.button span { margin-left:17px; font-size:18px; line-height:0; }.button-primary { background:var(--gold); color:#181307; }.button-primary:hover { background:var(--gold-light); }.button-ghost { color:#fff; background:transparent; border-color:#525357; }.button-ghost:hover { background:#25262a; }.button-full { width:100%; }
.proof-points { display:flex; gap:0; margin-top:52px; }.proof-points div { min-width:120px; padding-right:25px; margin-right:25px; border-right:1px solid #4a4b4d; display:flex; flex-direction:column; gap:4px; }.proof-points div:last-child { border:0; }.proof-points strong { color:#fff; font-size:15px; }.proof-points span { color:#a7a8a9; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.hero-visual { position:relative; min-height:335px; }.orb { position:absolute; border-radius:50%; border:1px solid rgba(247,185,40,.35); }.orb-one { width:440px; height:440px; right:-100px; top:-72px; box-shadow:0 0 100px rgba(247,185,40,.12),inset 0 0 60px rgba(247,185,40,.08); }.orb-two { width:300px; height:300px; right:-30px; top:-1px; border-color:rgba(255,255,255,.08); }.wheel-mark { position:absolute; right:-57px; top:96px; font-family:"Barlow Condensed"; font-weight:800; color:rgba(255,255,255,.07); font-size:84px; transform:rotate(-20deg); letter-spacing:-6px; }.wheel-mark span { color:rgba(247,185,40,.16); }.speed-line { height:2px; background:linear-gradient(90deg,transparent,var(--gold),transparent); position:absolute; transform:rotate(-22deg); opacity:.9; }.line-one { width:320px; top:74px; left:27px; }.line-two { width:205px; top:315px; right:-30px; }.hero-card { position:absolute; border:1px solid rgba(255,255,255,.18); background:rgba(23,24,27,.78); backdrop-filter:blur(12px); padding:19px; display:flex; flex-direction:column; gap:6px; box-shadow:0 18px 45px rgba(0,0,0,.25); }.hero-card span { font-size:9px; letter-spacing:.14em; color:#aeb0b1; font-weight:800; }.hero-card strong { font-family:"Barlow Condensed"; color:var(--gold); font-size:36px; line-height:1; }.hero-card small { color:#c0c1c2; font-size:10px; }.hero-card-main { top:161px; left:39px; transform:rotate(-3deg); }.hero-card-side { right:8px; top:274px; }.hero-card-side strong { color:#fff; font-family:Inter; font-size:14px; }.stock-online i { display:inline-block; width:8px; height:8px; background:var(--success); border-radius:50%; margin-right:4px; }
.category-strip { background:#17181a; color:#ededed; display:grid; grid-template-columns:repeat(5,1fr); padding:0 clamp(18px,8vw,150px); }.category-strip a { height:80px; border-left:1px solid #333438; display:flex; gap:10px; align-items:center; justify-content:center; font-size:12px; font-weight:800; transition:background .15s,color .15s; }.category-strip a:last-child { border-right:1px solid #333438; }.category-strip a:hover { color:var(--gold); background:#212225; }.category-strip span { color:var(--gold); font-size:19px; }
.catalog-section,.steps { padding:100px clamp(24px,8vw,150px); }.section-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:39px; }.section-heading h2,.benefit-intro h2,.cta-section h2 { color:var(--ink); font-size:clamp(45px,4.7vw,65px); }.section-heading > p { width:min(370px,100%); margin:0 0 4px; color:var(--muted); font-size:13px; line-height:1.7; }.catalog-tools { display:flex; justify-content:space-between; align-items:center; padding:17px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); gap:20px; }.search-box { width:292px; display:flex; align-items:center; gap:10px; color:#8f908b; }.search-box span { font-size:22px; }.search-box input { width:100%; border:0; outline:0; background:transparent; font-size:12px; color:var(--ink); }.search-box input::placeholder { color:#999a95; }.filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.filter { border:1px solid #d0d0c9; background:transparent; color:#656661; padding:8px 11px; border-radius:999px; font-size:10px; font-weight:800; }.filter.active,.filter:hover { border-color:var(--ink); background:var(--ink); color:#fff; }.catalog-count { color:#878781; font-size:11px; font-weight:700; margin:20px 0 14px; }.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.product { min-width:0; background:#fff; border:1px solid #e3e2dc; transition:transform .2s,box-shadow .2s; }.product:hover { transform:translateY(-4px); box-shadow:0 12px 25px rgba(27,27,25,.09); }.product-image { height:175px; position:relative; overflow:hidden; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#f1f1ec,#dfdfd7); }.product-image::before { content:""; width:100px; height:100px; border-radius:50%; border:17px solid #292b2d; box-shadow:0 0 0 3px #7b7d7f, inset 0 0 0 12px #111; }.product-image::after { content:""; position:absolute; width:145px; height:18px; background:linear-gradient(90deg,transparent,#f7b928,transparent); transform:rotate(-22deg); opacity:.72; }.product:nth-child(3n) .product-image::before { border-radius:13px; width:130px; height:74px; border:0; background:linear-gradient(135deg,#1d1e1f 40%,#777 41%,#1b1b1d 48%); box-shadow:0 9px 12px rgba(0,0,0,.2); }.product:nth-child(4n) .product-image::before { width:75px; height:125px; border-radius:42px 42px 15px 15px; border:11px solid #252628; background:#f7b928; }.product-tag { position:absolute; z-index:1; top:12px; left:12px; padding:5px 7px; background:#0d0e0f; color:#fff; font-size:8px; letter-spacing:.08em; font-weight:800; }.product-body { padding:15px 15px 16px; }.product-category { margin:0 0 6px; color:#898a85; text-transform:uppercase; font-size:9px; font-weight:800; letter-spacing:.1em; }.product h3 { min-height:35px; font-size:12px; line-height:1.45; margin:0; }.product-code { margin:7px 0 14px; font-size:10px; color:#92938d; }.product-price { display:flex; align-items:end; justify-content:space-between; gap:8px; }.product-price small { display:block; margin-bottom:4px; color:#7b7c76; font-size:9px; }.product-price strong { display:block; font-size:16px; color:#111; }.add-button { width:33px; height:33px; flex:0 0 33px; border:0; color:#151619; background:var(--gold); font-size:20px; font-weight:500; line-height:1; }.add-button:hover { background:var(--gold-light); }
.benefits { display:grid; grid-template-columns:.9fr 1.5fr; gap:80px; padding:95px clamp(24px,8vw,150px); background:#151618; color:#fff; }.benefit-intro h2 { color:#fff; }.benefit-intro > p:last-child { max-width:360px; color:#aeb0ae; line-height:1.7; font-size:13px; margin-top:26px; }.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:end; }.benefit-grid article { min-height:220px; padding:24px 20px; border-top:2px solid var(--gold); background:#202124; }.benefit-number { color:var(--gold); font-size:11px; font-weight:800; }.benefit-grid h3 { margin:38px 0 11px; font-family:"Barlow Condensed"; font-size:26px; text-transform:uppercase; }.benefit-grid p { color:#aeb0b0; font-size:11px; line-height:1.65; margin:0; }
.steps { background:#eae9e3; }.compact-heading { margin-bottom:44px; }.steps ol { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cfcfc8; }.steps li { padding:23px 25px 0 0; margin-right:20px; min-height:144px; border-right:1px solid #cfcfc8; display:flex; gap:15px; }.steps li:last-child { border:0; }.steps li>span { color:var(--gold); font-family:"Barlow Condensed"; font-size:31px; font-weight:700; line-height:.9; }.steps h3 { margin:0 0 8px; font-size:13px; }.steps p { color:#757670; margin:0; font-size:11px; line-height:1.6; }.cta-section { display:flex; justify-content:space-between; align-items:center; gap:60px; padding:86px clamp(24px,8vw,150px); background:var(--gold); }.cta-section .eyebrow { color:#725307; }.cta-section h2 { font-size:clamp(48px,5vw,69px); }.cta-section h2 em { color:#fff; }.cta-copy { width:min(420px,100%); }.cta-copy p { font-size:13px; line-height:1.7; margin:0 0 23px; color:#4b3a0d; }.cta-section .button-primary { background:#151619; color:#fff; }.cta-section .button-primary:hover { background:#313236; }
footer { min-height:146px; display:grid; grid-template-columns:1fr 1fr 1fr; gap:25px; align-items:center; padding:25px clamp(24px,8vw,150px); background:#0a0b0c; color:#989a99; font-size:10px; }.footer-brand { flex:auto; width:165px; }.footer-brand img { height:39px; } footer p { margin:0; } footer p:last-child { text-align:right; }
.overlay { position:fixed; inset:0; z-index:20; background:rgba(0,0,0,.48); opacity:0; visibility:hidden; transition:opacity .2s,visibility .2s; }.overlay.visible { opacity:1; visibility:visible; }.cart-drawer { position:fixed; z-index:25; top:0; right:0; width:min(440px,100%); height:100dvh; display:flex; flex-direction:column; padding:27px; background:#f8f7f3; transform:translateX(103%); transition:transform .25s ease; }.cart-drawer.open { transform:translateX(0); }.drawer-header { display:flex; align-items:start; justify-content:space-between; padding-bottom:22px; border-bottom:1px solid var(--line); }.drawer-header h2,.form-modal h2 { margin:0; font-family:"Barlow Condensed"; font-size:36px; line-height:1; text-transform:uppercase; }.close-button { border:0; background:transparent; color:#555; padding:0; font-size:30px; line-height:.7; }.cart-items { flex:1; overflow:auto; }.cart-empty { color:#777872; font-size:13px; line-height:1.6; padding:30px 0; }.cart-item { display:grid; grid-template-columns:1fr auto; gap:12px; padding:18px 0; border-bottom:1px solid var(--line); }.cart-item h3 { margin:0 0 5px; font-size:12px; }.cart-item p { color:#777872; margin:0; font-size:10px; }.quantity-controls { display:flex; align-items:center; gap:8px; margin-top:11px; }.quantity-controls button { border:1px solid #d2d2cc; width:22px; height:22px; background:white; }.quantity-controls span { font-size:11px; font-weight:800; }.cart-item-total { text-align:right; font-size:12px; font-weight:800; }.remove-button { margin-top:10px; border:0; background:none; color:#777872; font-size:10px; text-decoration:underline; }.cart-summary { padding-top:18px; border-top:1px solid var(--line); }.cart-summary>div { display:flex; justify-content:space-between; align-items:end; }.cart-summary span { font-size:12px; }.cart-summary strong { font-size:20px; }.cart-summary small { display:block; color:#777872; line-height:1.45; margin:12px 0 16px; font-size:9px; }
.form-modal { position:relative; width:min(570px,calc(100% - 32px)); border:0; padding:36px; color:var(--ink); background:#faf9f6; box-shadow:0 20px 60px rgba(0,0,0,.3); }.form-modal::backdrop { background:rgba(0,0,0,.55); }.modal-close { position:absolute; right:22px; top:22px; }.form-modal > div > p:not(.eyebrow),.form-modal form + p { color:#767771; font-size:12px; line-height:1.6; margin:12px 0 24px; }.form-modal form { display:grid; gap:15px; }.form-modal label { display:grid; gap:7px; font-size:10px; font-weight:800; color:#4d4e4a; }.form-modal input,.form-modal textarea,.form-modal select { width:100%; border:1px solid #d4d4cd; background:#fff; padding:12px; outline-color:var(--gold); font-size:12px; color:var(--ink); border-radius:0; }.form-modal textarea { min-height:74px; resize:vertical; }.form-two-columns { display:grid; grid-template-columns:1fr 1fr; gap:13px; }.form-footnote { margin-bottom:0!important; }.form-footnote button { background:none; border:0; padding:0; color:#7b5a05; text-decoration:underline; font-weight:800; }
@media (max-width:900px) { .main-nav { display:none; }.hero { grid-template-columns:1fr; }.hero-visual { display:none; }.product-grid { grid-template-columns:repeat(3,1fr); }.benefits { grid-template-columns:1fr; gap:40px; }.benefit-grid { max-width:760px; }.category-strip { padding:0 24px; }.catalog-section,.steps { padding:75px 24px; } }
@media (max-width:620px) { .topbar { height:auto; min-height:34px; padding:8px 16px; font-size:9px; }.topbar p { max-width:225px; }.site-header { height:66px; padding:0 16px; gap:10px; }.brand { flex-basis:141px; }.brand img { height:35px; }.account-button { display:none; }.header-actions { margin-left:auto; }.cart-button { padding:8px 10px; font-size:10px; }.hero { padding:68px 24px 58px; min-height:510px; }.hero h1 { font-size:58px; }.hero-text { font-size:13px; }.proof-points { margin-top:40px; }.proof-points div { min-width:auto; padding-right:13px; margin-right:13px; }.proof-points strong { font-size:13px; }.category-strip { grid-template-columns:repeat(3,1fr); padding:0; }.category-strip a { height:55px; font-size:10px; }.category-strip a:nth-child(n+4) { border-top:1px solid #333438; }.section-heading { display:block; }.section-heading>p { margin-top:18px; }.catalog-section { padding:63px 16px; }.catalog-tools { display:block; }.search-box { width:100%; padding-bottom:16px; }.filter-row { justify-content:flex-start; }.product-grid { grid-template-columns:repeat(2,1fr); gap:9px; }.product-image { height:130px; }.product-body { padding:12px; }.product h3 { font-size:11px; }.benefits { padding:62px 24px; }.benefit-grid { grid-template-columns:1fr; }.benefit-grid article { min-height:160px; }.benefit-grid h3 { margin-top:25px; }.steps { padding:60px 24px; }.steps ol { grid-template-columns:1fr 1fr; }.steps li { min-height:130px; margin-right:0; padding-right:14px; }.steps li:nth-child(2) { border-right:0; }.steps li:nth-child(n+3) { border-top:1px solid #cfcfc8; padding-top:22px; }.cta-section { padding:58px 24px; display:block; }.cta-copy { margin-top:25px; }.cta-section h2 { font-size:54px; } footer { grid-template-columns:1fr; padding:30px 24px; gap:13px; } footer p:last-child { text-align:left; }.form-modal { padding:30px 22px; }.form-two-columns { grid-template-columns:1fr; } }

/* Datos comerciales, escalas y catálogo ALFA */
.nav-policy { border:0; background:transparent; color:#c8c9c9; padding:0; font-size:13px; font-weight:700; transition:color .2s; }.nav-policy:hover { color:var(--gold); }
.stock-online i { background:var(--gold); }
.discount-panel { display:flex; align-items:center; gap:34px; padding:20px 22px; margin-bottom:18px; background:#17181a; color:#fff; }.discount-panel-heading { flex:0 0 212px; }.discount-panel-heading .eyebrow { color:var(--gold); margin-bottom:7px; }.discount-panel h3 { margin:0; font-family:"Barlow Condensed"; text-transform:uppercase; font-size:29px; line-height:.9; }.discount-panel-heading>p:last-child { color:#aaaca9; font-size:10px; line-height:1.5; margin:10px 0 0; }.discount-ladder { flex:1; display:grid; grid-template-columns:repeat(9,1fr); gap:4px; }.discount-ladder div { min-height:67px; display:flex; flex-direction:column; justify-content:center; padding:7px; border:1px solid #414246; color:#b5b6b5; transition:background .2s,color .2s,border .2s; }.discount-ladder strong { font-family:"Barlow Condensed"; font-size:25px; line-height:.85; }.discount-ladder span { margin-top:7px; font-size:8px; line-height:1.3; font-weight:700; }.discount-ladder .active { background:var(--gold); color:#171309; border-color:var(--gold); }
.catalog-meta { display:flex; align-items:center; justify-content:space-between; gap:20px; }.catalog-source { color:#878781; font-size:11px; font-weight:500; margin:20px 0 14px; text-align:right; }.product-stock { position:absolute; z-index:1; right:9px; bottom:9px; padding:5px 7px; background:rgba(255,255,255,.86); color:#6d570f; font-size:8px; letter-spacing:.08em; font-weight:800; }.product-category { height:24px; overflow:hidden; line-height:1.3; letter-spacing:.08em; }.product h3 { height:53px; overflow:hidden; }.product-code { height:25px; overflow:hidden; }.product-price strong { font-size:15px; }.load-more { display:block; margin:29px auto 0; border:1px solid #1b1c1e; background:transparent; color:#1b1c1e; padding:12px 18px; font-size:11px; font-weight:800; }.load-more:hover { background:#1b1c1e; color:#fff; }.load-more[hidden] { display:none; }
footer p { line-height:1.6; }.footer-policy { border:0; background:transparent; color:#e1e1dd; font-size:10px; padding:0; text-decoration:underline; text-underline-offset:3px; }
.cart-summary strong { font-size:15px; }.cart-summary .discount-line { margin-top:10px; color:#6c5611; }.cart-summary .discount-line strong { color:#6c5611; }.cart-summary .discount-line b { margin-left:4px; }.cart-summary .cart-total-line { margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }.cart-summary .cart-total-line strong { font-size:20px; color:#111; }
@media (max-width:900px) { .discount-panel { display:block; }.discount-panel-heading { margin-bottom:18px; } }
@media (max-width:620px) { .discount-panel { margin-left:0; margin-right:0; padding:18px 15px; }.discount-ladder { grid-template-columns:repeat(3,1fr); }.discount-ladder div { min-height:56px; }.catalog-meta { display:block; }.catalog-source { margin-top:-8px; text-align:left; } }

/* Fotografías reales de productos */
.product .product-image.has-photo { background:#fff; }.product .product-image.has-photo::before,.product .product-image.has-photo::after { display:none; }.product-photo { display:block; width:100%; height:100%; object-fit:contain; padding:10px; mix-blend-mode:multiply; }
.form-error { margin:0; color:#a0271a!important; font-size:11px!important; font-weight:700; }
