/* V2 interior pages: local, dependency-free design system. */
:root{--v2i-accent:#0169fa;--v2i-accent-2:#39d040;--v2i-ink:#0b1f33;--v2i-paper:#f7f6f2;--v2i-line:rgba(11,31,51,.12);--v2-brand-gradient:linear-gradient(105deg,#0169fa 0%,#39d040 68%,#fda604 100%);--v2-shadow:0 18px 50px rgba(15,35,60,.12)}
body.v2-interior-template{margin:0;background:var(--v2i-paper);color:var(--v2i-ink);overflow-x:hidden}
.v2i-skip{position:fixed;left:16px;top:-80px;z-index:9999;padding:12px 18px;border-radius:999px;background:#fff;color:#0b1f33;font-weight:800}.v2i-skip:focus{top:16px}
.v2i-main{min-height:70vh}.v2i-container{width:min(calc(100% - 40px),1180px);margin-inline:auto}
.v2i-hero{position:relative;isolation:isolate;min-height:760px;padding:176px 0 92px;display:grid;align-items:center;overflow:hidden;background:#0b1f33;color:#fff}
.v2i-hero::before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--v2i-accent) 42%,transparent),transparent 38%),linear-gradient(135deg,#0b1f33 10%,#102f4b 70%,#0b1f33)}
.v2i-hero::after{content:"";position:absolute;z-index:-1;width:500px;aspect-ratio:1;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-140px;top:120px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02)}
.v2i-hero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:clamp(44px,7vw,100px);align-items:center}
.v2i-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 28px;color:rgba(255,255,255,.72);font-size:.85rem}.v2i-breadcrumb a{color:inherit;text-decoration:none}.v2i-breadcrumb a:hover{color:#fff}.v2i-breadcrumb span+span::before,.v2i-breadcrumb a+span::before{content:"/";margin-right:8px;opacity:.55}
.v2i-kicker{margin:0 0 18px;color:var(--v2i-accent-2);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.v2i-hero h1{max-width:850px;margin:0;font-size:clamp(2.7rem,5.6vw,5.65rem);line-height:.96;letter-spacing:-.055em;text-wrap:balance}
.v2i-hero__lead{max-width:720px;margin:28px 0 0;color:rgba(255,255,255,.78);font-size:clamp(1.03rem,1.5vw,1.22rem);line-height:1.75}
.v2i-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.v2i-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 24px;border:1px solid transparent;border-radius:999px;background:var(--v2i-accent);color:#fff!important;text-decoration:none;font-weight:800;transition:transform .2s,background .2s}.v2i-button:hover{transform:translateY(-2px);background:#fff;color:#0b1f33!important}.v2i-button--ghost{border-color:rgba(255,255,255,.26);background:transparent}.v2i-button--ghost:hover{border-color:#fff}
.v2i-hero__media{position:relative;min-height:500px;display:grid;place-items:center}.v2i-hero__media::before{content:"";position:absolute;inset:10% 0 2%;border-radius:52% 48% 42% 58%/50% 41% 59% 50%;background:linear-gradient(145deg,color-mix(in srgb,var(--v2i-accent) 80%,#fff),var(--v2i-accent-2));filter:saturate(.9);opacity:.9}.v2i-hero__media img{position:relative;width:min(100%,480px);height:540px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 30px 32px rgba(0,0,0,.28))}
.v2i-definition{position:relative;margin-top:-48px;z-index:2}.v2i-definition__inner{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:30px 34px;border:1px solid var(--v2i-line);border-radius:24px;background:#fff;box-shadow:0 20px 60px rgba(11,31,51,.1)}.v2i-definition__mark{display:grid;place-items:center;width:50px;aspect-ratio:1;border-radius:15px;background:color-mix(in srgb,var(--v2i-accent) 13%,#fff);color:var(--v2i-accent);font-size:1.35rem;font-weight:900}.v2i-definition p{margin:0;font-size:1.07rem;line-height:1.75}.v2i-definition a{color:var(--v2i-accent);font-weight:800}.v2i-regulatory-note{margin:56px 0 0}.v2i-regulatory-note .v2i-definition__inner{box-shadow:none}
.v2i-section{padding:clamp(72px,9vw,128px) 0}.v2i-section:nth-of-type(even){background:#fff}.v2i-section__head{display:grid;grid-template-columns:minmax(0,.75fr) minmax(280px,.5fr);gap:40px;align-items:end;margin-bottom:42px}.v2i-section__head h2{margin:0;font-size:clamp(2rem,4vw,4rem);line-height:1.02;letter-spacing:-.045em;text-wrap:balance}.v2i-section__intro{margin:0;color:#536273;line-height:1.75}

/* Strict Hierarchical Typography System: H1 (Hero) > H2 (Sections) > H3 (Cards) */
.v2i-grid, .v2-services__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}
.v2-services__grid--3col{grid-template-columns:repeat(3,1fr)}

.v2i-hero h1, .v2-home-hero__title {
	font-family: var(--v2-font-heading, 'Syne', system-ui, sans-serif) !important;
	font-size: clamp(2.65rem, 3.35vw, 3.55rem) !important;
	line-height: 1.16 !important;
	letter-spacing: -.035em !important;
	font-weight: 700 !important;
}

.v2i-section__head h2, .v2-section-head h2, .v2-section h2 {
	font-family: var(--v2-font-heading, 'Syne', system-ui, sans-serif) !important;
	font-size: clamp(1.85rem, 2.5vw, 2.4rem) !important;
	line-height: 1.15 !important;
	letter-spacing: -.03em !important;
	font-weight: 700 !important;
}

.v2-eyebrow, .v2i-eyebrow {
	font-family: var(--v2-font-primary, 'Inter', system-ui, sans-serif) !important;
	font-size: .78rem !important;
	font-weight: 700 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	color: #0169fa !important;
	margin-bottom: 14px !important;
}

.v2i-card{position:relative;grid-column:span 4;min-height:260px;padding:34px;border:1px solid var(--v2i-line);border-radius:26px;background:#fff;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.v2i-card:hover{transform:translateY(-8px);border-color:color-mix(in srgb,var(--v2i-accent) 55%,transparent);box-shadow:0 20px 50px rgba(11,31,51,.12)}
.v2i-card__number{display:inline-block;margin-bottom:20px;padding:4px 12px;border-radius:999px;background:color-mix(in srgb,var(--v2i-accent) 12%,#fff);color:var(--v2i-accent);font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}

.v2i-card h3, .v2-service-card h3, .v2-section h3 {
	font-family: var(--v2-font-heading, 'Syne', system-ui, sans-serif) !important;
	font-size: clamp(1.2rem, 1.5vw, 1.45rem) !important;
	line-height: 1.25 !important;
	letter-spacing: -.025em !important;
	font-weight: 700 !important;
	margin: 0 0 12px !important;
}

.v2i-card p, .v2-service-card p{
	font-family: var(--v2-font-primary, 'Inter', system-ui, sans-serif) !important;
	font-size: 1rem !important;
	color: #4b5563 !important;
	line-height: 1.7 !important;
	margin: 0 !important;
}

.v2i-card img{display:block;width:100%;height:180px;object-fit:contain;margin-bottom:20px;border-radius:16px}
.v2i-card-arrow,.v2-card-arrow{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--v2-brand-gradient);color:#fff;font-size:20px;font-weight:800;transition:transform .35s ease,box-shadow .35s ease}
.v2i-card:hover .v2i-card-arrow,.v2i-card:hover .v2-card-arrow{transform:rotate(45deg);box-shadow:0 8px 24px rgba(1,105,250,.3)}

/* Official Home Page V2 Service Card with Organic Curved Corner Pocket Arrow (Exact 99px/74px sizes from Home) */
.v2-service-card{position:relative;display:flex;grid-column:span 4;min-height:470px;flex-direction:column;justify-content:space-between;overflow:hidden;padding:32px;border-radius:26px!important;background:#f1f4f7;color:#111827;text-decoration:none;transition:transform .35s ease, box-shadow .35s ease}
.v2-service-card:nth-child(1){border-radius:28px 28px 28px 8px!important}
.v2-service-card:nth-child(2){border-radius:8px 28px 28px 28px!important;background:linear-gradient(135deg,rgba(57,208,64,.3),rgba(1,105,250,.25))}
.v2-service-card:nth-child(3){border-radius:28px 8px 28px 28px!important}
.v2-service-card:hover{transform:translateY(-8px);box-shadow:var(--v2-shadow)}
.v2-service-card p{max-width:360px}
.v2-service-card img{width:100%;height:220px;object-fit:contain;margin-top:20px;transition:transform .35s ease}
.v2-service-card:hover img{transform:scale(1.04)}
.v2-service-card__action{position:absolute;right:0;bottom:0;z-index:2;display:block;box-sizing:border-box;width:99px;height:99px;padding:25px 0 0 25px;border-radius:26px 0 0;background:#fff}
.v2-service-card__action::before,.v2-service-card__action::after{content:"";position:absolute;z-index:-1;width:60px;height:60px;background:transparent;border-bottom-right-radius:26px;box-shadow:42px 0 0 #fff}
.v2-service-card__action::before{left:-60px;top:40px}
.v2-service-card__action::after{right:0;top:-60px}
.v2-service-card .v2-card-arrow{position:relative;right:auto;bottom:auto;width:74px;height:74px;font-size:28px;transition:transform .35s ease,background-position .45s ease}
.v2-service-card:hover .v2-card-arrow{transform:rotate(45deg);background-position:100% 50%}

/* Dark Process Section with Circular Icons */
.v2i-process-section{background:#071a2d!important;color:#fff;padding:96px 0}
.v2i-process-section .v2i-section__head h2{color:#fff}
.v2i-process-section .v2i-section__intro{color:rgba(255,255,255,.7)}
.v2i-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;z-index:1}
.v2i-process-step{position:relative;text-align:center;padding:24px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);transition:transform .35s ease}
.v2i-process-step:hover{transform:translateY(-6px);background:rgba(255,255,255,.07)}
.v2i-process-step__icon{display:grid;place-items:center;width:88px;height:88px;margin:0 auto 20px;border-radius:50%;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.2);color:#0169fa;font-size:1.8rem;font-weight:900}
.v2i-process-step span{color:var(--v2i-accent-2);font-weight:800;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase}
.v2i-process-step h3{margin:10px 0 8px;color:#fff;font-size:1.2rem}
.v2i-process-step p{margin:0;color:rgba(255,255,255,.7);font-size:.92rem;line-height:1.6}

/* Watermark FAQ Accordion Section */
.v2i-faq{background:#f7f8fa!important;color:#0b1f33}
.v2i-faq .v2i-section__head{align-items:start}
.v2i-faq__stroke,.v2-faq__stroke{display:block;margin-top:24px;color:transparent;font:900 clamp(4rem,7vw,7.5rem)/1 var(--v2-font-heading,'Syne',sans-serif);-webkit-text-stroke:1px rgba(11,31,51,.12);letter-spacing:-.04em}
.v2i-faq__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}
.v2i-faq__grid>header{position:sticky;top:130px}
.v2i-faq__list{display:grid;gap:14px}
.v2i-faq details{border:1px solid var(--v2i-line);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(11,31,51,.04);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.v2i-faq details:hover{transform:translateX(4px);box-shadow:0 12px 32px rgba(11,31,51,.08)}
.v2i-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;cursor:pointer;font-weight:800;font-size:1.05rem;color:#0b1f33;list-style:none}
.v2i-faq summary::-webkit-details-marker{display:none}
.v2i-faq summary::after{content:"+";display:grid;place-items:center;min-width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--v2i-accent) 12%,#fff);color:var(--v2i-accent);font-size:1.3rem;font-weight:900}
.v2i-faq details[open] summary::after{content:"−";background:var(--v2i-accent);color:#fff}
.v2i-faq details p{margin:0;padding:0 28px 24px;color:#536273;line-height:1.75;font-size:1rem}

/* Colorful High-Impact Primary Button */
.v2-button-gradient {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-height: 54px;
	padding: 10px 14px 10px 26px;
	border-radius: 999px;
	background: linear-gradient(100deg, #0169fa 0%, #39d040 70%, #fda604 100%);
	color: #ffffff !important;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: none;
	box-shadow: 0 12px 30px rgba(1, 105, 250, 0.35);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.v2-button-gradient span {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #ffffff;
	color: #0b1f33;
	font-size: 1rem;
	transition: transform 0.35s ease;
}

.v2-button-gradient:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 42px rgba(1, 105, 250, 0.5);
}

.v2-button-gradient:hover span {
	transform: rotate(45deg);
}

.v2-button-glass {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 54px;
	padding: 10px 26px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.35);
	color: #ffffff !important;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: none;
	backdrop-filter: blur(12px);
	transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.v2-button-glass:hover {
	transform: translateY(-3px);
	background: #ffffff;
	color: #0b1f33 !important;
	border-color: #ffffff;
	box-shadow: 0 14px 34px rgba(255, 255, 255, 0.2);
}

.v2-button-whatsapp {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: all 0.3s ease;
}

.v2-button-whatsapp:hover {
	background: #25D366 !important;
	color: #ffffff !important;
	border-color: #25D366 !important;
	box-shadow: 0 12px 30px rgba(37, 211, 102, 0.4) !important;
}

/* Floating CTA Banner Centered */
.v2i-cta-banner{padding:clamp(60px,8vw,100px) 0;background:var(--v2i-paper)}
.v2i-cta-banner__card--centered{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(48px,6vw,76px) clamp(24px,5vw,64px);border-radius:32px;background:radial-gradient(circle at 50% 0%,rgba(1,105,250,.35),transparent 60%),radial-gradient(circle at 90% 100%,rgba(57,208,64,.22),transparent 50%),linear-gradient(135deg,#071a2d 0%,#0b1f33 60%,#051422 100%);border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 80px rgba(11,31,51,.28);color:#fff}
.v2i-cta-banner__badge{display:inline-flex;align-items:center;gap:10px;padding:7px 18px;border-radius:999px;background:rgba(57,208,64,.16);border:1px solid rgba(57,208,64,.4);color:#39d040;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:22px}
.v2i-cta-banner__card--centered h2{font-family:var(--v2-font-heading,'Syne',sans-serif)!important;font-size:clamp(2rem,3.4vw,3.1rem)!important;line-height:1.15!important;letter-spacing:-.03em!important;color:#fff!important;margin:0 0 18px!important;font-weight:700!important}
.v2i-cta-banner__card--centered p{font-size:1.1rem;line-height:1.75;color:rgba(255,255,255,.85);margin:0 auto 34px;max-width:660px}
.v2i-cta-banner__card--centered .v2i-cta-banner__actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;margin-bottom:32px}
.v2i-cta-banner__features{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(16px,3vw,36px);padding-top:26px;border-top:1px solid rgba(255,255,255,.12);width:100%;max-width:780px}
.v2i-cta-banner__features span{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.8);font-size:.9rem;font-weight:600}
.v2i-cta-banner__features i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(57,208,64,.2);color:#39d040;font-size:.75rem;font-style:normal;font-weight:800}

/* Related Interlinking Pills */
.v2i-related{padding:76px 0;background:#f0f5fa;border-top:1px solid #e2e8f0;text-align:center}
.v2i-related h2{font-family:var(--v2-font-heading,'Syne',sans-serif)!important;font-size:clamp(1.65rem,2.4vw,2.25rem)!important;margin-bottom:28px!important;color:#0b1f33;font-weight:700}
.v2i-related__links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;max-width:1100px;margin:0 auto}
.v2i-related__links a{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:999px;background:#fff;border:1px solid #dbe4ee;color:#0b1f33;font-family:var(--v2-font-primary,'Inter',sans-serif);font-size:.92rem;font-weight:700;text-decoration:none;box-shadow:0 4px 14px rgba(15,35,60,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,color .25s ease}
.v2i-related__links a:hover{transform:translateY(-3px);border-color:#0169fa;color:#0169fa;box-shadow:0 12px 28px rgba(1,105,250,.18)}
.v2i-related__links a span{font-size:.9rem;transition:transform .25s ease}
.v2i-related__links a:hover span{transform:translate(2px,-2px)}

@media(max-width:900px){.v2i-hero{min-height:auto;padding-top:150px}.v2i-hero__grid{grid-template-columns:1fr}.v2i-hero__media{min-height:380px}.v2i-hero__media img{height:420px}.v2i-section__head{grid-template-columns:1fr}.v2i-card{grid-column:span 6}.v2i-process-grid{grid-template-columns:repeat(2,1fr)}.v2i-faq__grid{grid-template-columns:1fr;gap:36px}.v2i-faq__grid>header{position:static}}
@media(max-width:620px){.v2i-container{width:min(calc(100% - 28px),1180px)}.v2i-hero{padding:132px 0 74px}.v2i-hero__media{min-height:300px}.v2i-hero__media img{height:340px}.v2i-definition__inner{grid-template-columns:1fr;padding:24px}.v2i-card{grid-column:1/-1;min-height:0}.v2i-process-grid{grid-template-columns:1fr}.v2i-section{padding:70px 0}}
@media(prefers-reduced-motion:reduce){html.v2-body-html{scroll-behavior:auto}[data-v2i-reveal]{opacity:1;transform:none;transition:none}.v2i-card,.v2i-button{transition:none}}

/* =========================================================================
   FLAGSHIP 2-COLUMN GEOMETRIC CARD DESIGN (BLOG & TRABAJOS HUBS)
   ========================================================================= */
.v2-blog-grid,
.v2-portfolio-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
}

.v2-home-blog-card {
	background: #ffffff;
	border-radius: 28px;
	padding: 24px 26px;
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: 22px;
	align-items: start;
	transition: transform .3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow .3s cubic-bezier(0.16, 1, 0.3, 1);
	position: relative;
	box-sizing: border-box;
}

.v2-home-blog-card--warm {
	border: 1.5px solid rgba(251, 146, 60, 0.45);
}

.v2-home-blog-card--cool {
	border: 1.5px solid rgba(96, 165, 250, 0.45);
}

.v2-home-blog-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 42px rgba(1, 105, 250, 0.09);
}

.v2-home-blog-card__date {
	display: block;
	font-size: .86rem;
	color: #334155;
	font-weight: 600;
	margin-bottom: 12px;
}

.v2-home-blog-card__thumb {
	display: block;
	width: 100%;
	height: 210px;
	border-radius: 22px;
	overflow: hidden;
	background: #f1f5f9;
	position: relative;
}

.v2-home-blog-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.v2-home-blog-card:hover .v2-home-blog-card__thumb img {
	transform: scale(1.06);
}

.v2-home-blog-card__category {
	display: inline-block;
	padding: 4px 14px;
	border-radius: 999px;
	font-size: .78rem;
	font-weight: 700;
	margin-bottom: 14px;
	text-transform: uppercase;
	letter-spacing: .02em;
}

.v2-home-blog-pill--warm {
	border: 1.5px solid rgba(234, 88, 12, 0.45);
	color: #ea580c;
	background: rgba(234, 88, 12, 0.04);
}

.v2-home-blog-pill--cool {
	border: 1.5px solid rgba(1, 105, 250, 0.45);
	color: #0169fa;
	background: rgba(1, 105, 250, 0.04);
}

.v2-home-blog-card__title {
	font-family: var(--v2-font-heading, 'Syne', sans-serif);
	font-size: clamp(1.18rem, 1.4vw, 1.38rem);
	font-weight: 700;
	color: #0b1f33;
	line-height: 1.3;
	margin: 0 0 12px;
}

.v2-home-blog-card__title a {
	color: inherit;
	text-decoration: none;
	transition: color .2s ease;
}

.v2-home-blog-card__title a:hover {
	color: #0169fa;
}

.v2-home-blog-card__excerpt {
	font-size: .92rem;
	color: #64748b;
	line-height: 1.65;
	margin: 0;
}

.v2-work-card__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 14px;
}

.v2-work-chip {
	font-size: .75rem;
	padding: 3px 10px;
	border-radius: 6px;
	background: #f1f5f9;
	color: #475569;
	font-weight: 600;
}

@media (max-width: 1024px) {
	.v2-blog-grid,
	.v2-portfolio-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.v2-home-blog-card {
		grid-template-columns: 1fr;
		padding: 20px;
	}
	.v2-home-blog-card__thumb {
		height: 180px;
	}
}

