.twl-sub-service { --twl-accent: #00ff88; --twl-dark: #0a0a0a; --twl-text: #e0e0e0; --twl-muted: #888; color: var(--twl-text); }
.twl-sub-container { max-width: 900px; margin: 0 auto; padding: 0 1.5rem; }

/* Hero */
.twl-sub-hero { padding: 4rem 0 2rem; background: var(--twl-dark); }
.twl-sub-hero .twl-breadcrumb { font-size: 0.8rem; color: var(--twl-muted); margin-bottom: 1rem; }
.twl-sub-hero .twl-breadcrumb a { color: var(--twl-muted); text-decoration: none; }
.twl-sub-hero .twl-breadcrumb a:hover { color: var(--twl-accent); }
.twl-sub-hero__title { font-size: clamp(1.6rem, 4vw, 2.8rem); font-weight: 700; line-height: 1.15; color: #fff; }

/* Sections */
.twl-sub-section { padding: 3rem 0; }
.twl-sub-section h2 { font-size: clamp(1.3rem, 3vw, 2rem); margin-bottom: 1.5rem; color: #fff; }

/* Pricing */
.twl-sub-pricing__factors { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-bottom: 2rem; }
.twl-sub-pricing__factor { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 1.5rem; }
.twl-sub-pricing__factor h3 { font-size: 1rem; color: var(--twl-accent); margin-bottom: 0.5rem; }
.twl-sub-pricing__factor p { font-size: 0.9rem; color: var(--twl-muted); line-height: 1.5; }
.twl-sub-pricing__note { font-size: 0.85rem; color: var(--twl-muted); font-style: italic; margin-bottom: 2rem; }

/* Process steps */
.twl-sub-proceso__steps { list-style: none; padding: 0; counter-reset: none; }
.twl-sub-proceso__step { display: flex; gap: 1.25rem; align-items: flex-start; padding: 1.25rem 0; border-bottom: 1px solid rgba(255,255,255,0.06); }
.twl-sub-proceso__num { font-family: 'JetBrains Mono', monospace; font-size: 1.5rem; color: var(--twl-accent); font-weight: 700; flex-shrink: 0; width: 2.5rem; }
.twl-sub-proceso__step h3 { font-size: 1rem; color: #fff; margin-bottom: 0.3rem; }
.twl-sub-proceso__step p { font-size: 0.9rem; color: var(--twl-muted); line-height: 1.5; }

/* Gallery */
.twl-sub-gallery__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.25rem; margin-bottom: 2rem; }
.twl-sub-gallery__item { border-radius: 12px; overflow: hidden; background: rgba(255,255,255,0.03); }
.twl-sub-gallery__img { width: 100%; height: 220px; object-fit: cover; display: block; }
.twl-sub-gallery__caption { font-size: 0.85rem; padding: 0.75rem 1rem; color: var(--twl-muted); }

/* CTA block */
.twl-sub-cta-block { text-align: center; padding: 2rem 0; }
.twl-btn--primary { display: inline-block; padding: 0.9rem 2rem; background: var(--twl-accent); color: #000; font-weight: 700; text-decoration: none; border-radius: 6px; font-size: 0.95rem; transition: opacity 0.2s; }
.twl-btn--primary:hover { opacity: 0.85; }
